llm-simple-router 0.11.4 → 0.11.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/retry-rules.js +79 -5
- package/frontend-dist/assets/{CardContent-B88j9H0z.js → CardContent-POdM9knm.js} +1 -1
- package/frontend-dist/assets/{CardTitle-B8a97nPD.js → CardTitle-mi00cvHk.js} +1 -1
- package/frontend-dist/assets/{CascadingModelSelect-C0yNZoXy.js → CascadingModelSelect-CubFNL5Z.js} +1 -1
- package/frontend-dist/assets/{Checkbox-BqTMZz2v.js → Checkbox-BcnVK5BE.js} +1 -1
- package/frontend-dist/assets/{CollapsibleContent-96COn5t_.js → CollapsibleContent-CMuY_0ps.js} +1 -1
- package/frontend-dist/assets/{CollapsibleTrigger-BhoqUmdk.js → CollapsibleTrigger-KRXgNeSC.js} +1 -1
- package/frontend-dist/assets/{Dashboard-DS1huRbF.js → Dashboard-Bh4nXWLM.js} +1 -1
- package/frontend-dist/assets/{Input-Bu0i-HPR.js → Input-CQAFlthI.js} +1 -1
- package/frontend-dist/assets/{Label-67a8eQwX.js → Label-_o2ZnCRD.js} +1 -1
- package/frontend-dist/assets/{Login-DuJrav5s.js → Login-BPqzTIaZ.js} +1 -1
- package/frontend-dist/assets/{Logs-Di2rtHWg.js → Logs-ZJszhjOb.js} +1 -1
- package/frontend-dist/assets/{MappingEntryEditor-C_wjxov1.js → MappingEntryEditor--Icmf_he.js} +1 -1
- package/frontend-dist/assets/{ModelMappings-CJKFlKoo.js → ModelMappings-Bj32YLQZ.js} +1 -1
- package/frontend-dist/assets/{Monitor-C_KYa39G.js → Monitor-SBlmRPTQ.js} +1 -1
- package/frontend-dist/assets/{Providers-OSQlM_k9.js → Providers-Biuxv2W9.js} +1 -1
- package/frontend-dist/assets/{ProxyEnhancement-Cj7_GBQe.js → ProxyEnhancement-BTUqx-hj.js} +1 -1
- package/frontend-dist/assets/{QuickSetup-_dHnO9A_.js → QuickSetup-B8-u2sZa.js} +1 -1
- package/frontend-dist/assets/{RetryRules-D1wNRCPz.js → RetryRules-C8mGFYBh.js} +1 -1
- package/frontend-dist/assets/{RouterKeys-CZ2Vw6vB.js → RouterKeys-DgzXJsL8.js} +1 -1
- package/frontend-dist/assets/{RovingFocusItem-tLhdCrJ2.js → RovingFocusItem-Dg-GYaYf.js} +1 -1
- package/frontend-dist/assets/{Schedules-BBBE5rzH.js → Schedules-CQQX55LC.js} +1 -1
- package/frontend-dist/assets/{Settings-CNEWKmas.js → Settings-B7-f_Pei.js} +1 -1
- package/frontend-dist/assets/{Setup-BJy7Hluo.js → Setup-aJfZU8RD.js} +1 -1
- package/frontend-dist/assets/{Switch-B2K6kTfF.js → Switch-CqF_csS2.js} +1 -1
- package/frontend-dist/assets/{TooltipTrigger-qc84ev_b.js → TooltipTrigger-CpHXgQxI.js} +1 -1
- package/frontend-dist/assets/{TransformRulesForm-DdSMMv3Z.js → TransformRulesForm-C0elmJO6.js} +1 -1
- package/frontend-dist/assets/{UnifiedRequestDialog-BtsWE0wO.js → UnifiedRequestDialog-DWUXdfWY.js} +1 -1
- package/frontend-dist/assets/{VisuallyHiddenInput-C6J7cjvG.js → VisuallyHiddenInput-HnGHuxTe.js} +1 -1
- package/frontend-dist/assets/{button-CSFUPP0s.js → button-BaNRw0cF.js} +2 -2
- package/frontend-dist/assets/{copy-C9YdGmGg.js → copy-Dbl7J0Cg.js} +1 -1
- package/frontend-dist/assets/{dialog-Dvd1Jkzx.js → dialog-D_OkVkI9.js} +1 -1
- package/frontend-dist/assets/{index-BXsU7o6J.js → index-COoySiAr.js} +2 -2
- package/frontend-dist/assets/{model-patches-C_Vq5bRS.js → model-patches-D5Tyous2.js} +1 -1
- package/frontend-dist/assets/{sparkles-C6fYCgIz.js → sparkles-D3u86oss.js} +1 -1
- package/frontend-dist/assets/{trash-2-2cawWyKR.js → trash-2-DvEWr8UB.js} +1 -1
- package/frontend-dist/assets/{useClipboard-Bk__77zn.js → useClipboard-D_jpOvnE.js} +1 -1
- package/frontend-dist/assets/{useLogRetention-BhmlsZRl.js → useLogRetention-DnSxnecs.js} +1 -1
- package/frontend-dist/index.html +2 -2
- package/package.json +2 -2
package/frontend-dist/assets/{UnifiedRequestDialog-BtsWE0wO.js → UnifiedRequestDialog-DWUXdfWY.js}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{$ as e,A as t,D as n,Et as r,G as i,I as a,It as o,Jt as s,K as c,Kt as l,Mt as u,Ot as d,Q as f,R as p,Rt as m,T as h,Tt as g,V as _,Vt as v,W as y,Wt as b,X as x,Y as S,Yt as C,Z as w,_t as T,at as ee,bt as E,dt as D,ht as O,i as k,k as te,kt as ne,m as A,mt as j,n as M,nt as N,o as P,p as F,pt as I,q as L,qt as re,r as R,rt as z,tt as B,ut as V,vt as H,x as U}from"./button-CSFUPP0s.js";import{t as ie}from"./copy-C9YdGmGg.js";import{t as ae}from"./sparkles-C6fYCgIz.js";import{n as oe,t as se}from"./CollapsibleContent-96COn5t_.js";import{t as ce}from"./CollapsibleTrigger-BhoqUmdk.js";import{a as le,i as ue,n as de,o as fe,r as pe,t as me}from"./dialog-Dvd1Jkzx.js";import{n as he,t as ge}from"./RovingFocusItem-tLhdCrJ2.js";import{t as W}from"./Label-67a8eQwX.js";import{t as _e}from"./Switch-B2K6kTfF.js";import{B as ve,H as ye,J as G,R as be,S as xe,V as Se,W as Ce,Y as we,_ as Te,dt as Ee,ft as De,g as Oe,h as ke,i as K,m as Ae,p as je,pt as Me,ut as Ne,x as q,z as Pe}from"./index-BXsU7o6J.js";import{t as J}from"./Input-Bu0i-HPR.js";import{t as Fe}from"./useClipboard-Bk__77zn.js";var Ie=a(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),Le=a(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),Re=a(`circle-check-big`,[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),ze=a(`file-braces`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]]),Be=a(`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`}]]),Ve=a(`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`}]]),[Y,He]=G(`ScrollAreaRoot`),Ue=z({__name:`ScrollAreaRoot`,props:{type:{type:String,required:!1,default:`hover`},dir:{type:String,required:!1},scrollHideDelay:{type:Number,required:!1,default:600},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e,{expose:t}){let n=e,r=o(0),i=o(0),a=o(),c=o(),l=o(),u=o(),f=o(!1),p=o(!1),{type:m,dir:h,scrollHideDelay:g}=v(n),_=Ce(h);function y(){a.value?.scrollTo({top:0})}function x(){a.value?.scrollTo({top:0,left:0})}t({viewport:a,scrollTop:y,scrollTopLeft:x});let{forwardRef:S,currentElement:C}=P();return He({type:m,dir:_,scrollHideDelay:g,scrollArea:C,viewport:a,onViewportChange:e=>{a.value=e||void 0},content:c,onContentChange:e=>{c.value=e},scrollbarX:l,scrollbarXEnabled:f,scrollbarY:u,scrollbarYEnabled:p,onScrollbarXChange:e=>{l.value=e||void 0},onScrollbarYChange:e=>{u.value=e||void 0},onScrollbarXEnabledChange:e=>{f.value=e},onScrollbarYEnabledChange:e=>{p.value=e},onCornerWidthChange:e=>{r.value=e},onCornerHeightChange:e=>{i.value=e}}),(e,t)=>(O(),w(b(k),{ref:b(S),"as-child":n.asChild,as:e.as,dir:b(_),style:s({position:`relative`,"--reka-scroll-area-corner-width":`${r.value}px`,"--reka-scroll-area-corner-height":`${i.value}px`})},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`dir`,`style`]))}}),We=z({__name:`ScrollAreaCornerImpl`,setup(e){let t=Y(),n=o(0),r=o(0),i=S(()=>!!n.value&&!!r.value);function a(){let e=t.scrollbarX.value?.offsetHeight||0;t.onCornerHeightChange(e),r.value=e}function s(){let e=t.scrollbarY.value?.offsetWidth||0;t.onCornerWidthChange(e),n.value=e}return F(t.scrollbarX.value,a),F(t.scrollbarY.value,s),g(()=>t.scrollbarX.value,a),g(()=>t.scrollbarY.value,s),(e,a)=>i.value?(O(),w(b(k),V({key:0,style:{width:`${n.value}px`,height:`${r.value}px`,position:`absolute`,right:b(t).dir.value===`ltr`?0:void 0,left:b(t).dir.value===`rtl`?0:void 0,bottom:0}},e.$parent?.$props),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`style`])):f(`v-if`,!0)}}),Ge=z({__name:`ScrollAreaCorner`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{forwardRef:n}=P(),r=Y(),i=S(()=>!!r.scrollbarX.value&&!!r.scrollbarY.value),a=S(()=>r.type.value!==`scroll`&&i.value);return(e,r)=>a.value?(O(),w(We,V({key:0},t,{ref:b(n)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16)):f(`v-if`,!0)}});function Ke(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function X(e){let t=qe(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function qe(e,t){let n=e/t;return Number.isNaN(n)?0:n}function Je(e,t=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},r=0;return(function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(r)}function Ye(e,t,n=`ltr`){let r=X(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=n===`ltr`?[0,o]:[o*-1,0],l=we(e,c[0],c[1]);return Ke([0,o],[0,s])(l)}function Z(e){return e?Number.parseInt(e,10):0}function Xe(e,t,n,r=`ltr`){let i=X(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return Ke([c,l],d)(e)}function Ze(e,t){return e>0&&e<t}var Qe=z({__name:`ScrollAreaScrollbarX`,setup(e){let t=Y(),n=ot(),{forwardRef:r,currentElement:i}=P();I(()=>{i.value&&t.onScrollbarXChange(i.value)});let a=S(()=>n.sizes.value);return(e,i)=>(O(),w(lt,{ref:b(r),"is-horizontal":!0,"data-orientation":`horizontal`,style:s({bottom:0,left:b(t).dir.value===`rtl`?`var(--reka-scroll-area-corner-width)`:0,right:b(t).dir.value===`ltr`?`var(--reka-scroll-area-corner-width)`:0,"--reka-scroll-area-thumb-width":a.value?`${b(X)(a.value)}px`:void 0}),onOnDragScroll:i[0]||=e=>b(n).onDragScroll(e.x)},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`style`]))}}),$e=z({__name:`ScrollAreaScrollbarY`,setup(e){let t=Y(),n=ot(),{forwardRef:r,currentElement:i}=P();I(()=>{i.value&&t.onScrollbarYChange(i.value)});let a=S(()=>n.sizes.value);return(e,i)=>(O(),w(lt,{ref:b(r),"is-horizontal":!1,"data-orientation":`vertical`,style:s({top:0,right:b(t).dir.value===`ltr`?0:void 0,left:b(t).dir.value===`rtl`?0:void 0,bottom:`var(--reka-scroll-area-corner-height)`,"--reka-scroll-area-thumb-height":a.value?`${b(X)(a.value)}px`:void 0}),onOnDragScroll:i[0]||=e=>b(n).onDragScroll(e.y)},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`style`]))}}),et=z({__name:`ScrollAreaScrollbarAuto`,props:{forceMount:{type:Boolean,required:!1}},setup(e){let t=Y(),n=Q(),{forwardRef:r}=P(),i=o(!1),a=h(()=>{if(t.viewport.value){let e=t.viewport.value.offsetWidth<t.viewport.value.scrollWidth,r=t.viewport.value.offsetHeight<t.viewport.value.scrollHeight;i.value=n.isHorizontal.value?e:r}},10);return I(()=>a()),F(t.viewport,a),F(t.content,a),(e,t)=>(O(),w(b(be),{present:e.forceMount||i.value},{default:d(()=>[N(ct,V(e.$attrs,{ref:b(r),"data-state":i.value?`visible`:`hidden`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),tt=z({inheritAttrs:!1,__name:`ScrollAreaScrollbarGlimpse`,props:{forceMount:{type:Boolean,required:!1}},setup(e){let t=Y(),n=Q(),{forwardRef:i}=P(),{state:a,dispatch:o}=Pe(`hidden`,{hidden:{POINTER_ENTER:`glimpse`,SCROLL:`scrolling`},glimpse:{HIDE:`hidden`,POINTER_LEAVE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`glimpse`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}}),s=S(()=>a.value!==`hidden`);function c(){o(`POINTER_ENTER`)}function l(){o(`POINTER_LEAVE`)}let u=h(()=>o(`SCROLL_END`),100);return r(e=>{if(a.value===`glimpse`){let n=window.setTimeout(o,t.scrollHideDelay.value,`HIDE`);e(()=>{window.clearTimeout(n)})}}),r(e=>{if(a.value===`idle`){let n=window.setTimeout(o,t.scrollHideDelay.value,`HIDE`);e(()=>{window.clearTimeout(n)})}}),r(e=>{let r=t.viewport.value,i=n.isHorizontal.value?`scrollLeft`:`scrollTop`;if(r){let t=r[i],n=()=>{let e=r[i];t!==e&&(o(`SCROLL`),u()),t=e};r.addEventListener(`scroll`,n),e(()=>{r.removeEventListener(`scroll`,n)})}}),I(()=>{let e=t.scrollArea.value;e&&(e.addEventListener(`pointerenter`,c),e.addEventListener(`pointerleave`,l))}),j(()=>{let e=t.scrollArea.value;e&&(e.removeEventListener(`pointerenter`,c),e.removeEventListener(`pointerleave`,l))}),(e,t)=>(O(),w(b(be),{present:e.forceMount||s.value},{default:d(()=>[N(et,V(e.$attrs,{ref:b(i),"data-state":s.value?`visible`:`hidden`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),nt=z({inheritAttrs:!1,__name:`ScrollAreaScrollbarHover`,props:{forceMount:{type:Boolean,required:!1}},setup(e){let t=Y(),{forwardRef:n}=P(),r,i=o(!1);function a(){window.clearTimeout(r),i.value=!0}function s(){r=window.setTimeout(()=>{i.value=!1},t.scrollHideDelay.value)}return I(()=>{let e=t.scrollArea.value;e&&(e.addEventListener(`pointerenter`,a),e.addEventListener(`pointerleave`,s))}),j(()=>{let e=t.scrollArea.value;e&&(window.clearTimeout(r),e.removeEventListener(`pointerenter`,a),e.removeEventListener(`pointerleave`,s))}),(e,t)=>(O(),w(b(be),{present:e.forceMount||i.value},{default:d(()=>[N(et,V(e.$attrs,{ref:b(n),"data-state":i.value?`visible`:`hidden`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),rt=z({__name:`ScrollAreaScrollbarScroll`,props:{forceMount:{type:Boolean,required:!1}},setup(e){let t=Y(),n=Q(),{forwardRef:i}=P(),{state:a,dispatch:o}=Pe(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}}),s=S(()=>a.value!==`hidden`);r(e=>{if(a.value===`idle`){let n=window.setTimeout(o,t.scrollHideDelay.value,`HIDE`);e(()=>{window.clearTimeout(n)})}});let c=h(()=>o(`SCROLL_END`),100);return r(e=>{let r=t.viewport.value,i=n.isHorizontal.value?`scrollLeft`:`scrollTop`;if(r){let t=r[i],n=()=>{let e=r[i];t!==e&&(o(`SCROLL`),c()),t=e};r.addEventListener(`scroll`,n),e(()=>{r.removeEventListener(`scroll`,n)})}}),(e,t)=>(O(),w(b(be),{present:e.forceMount||s.value},{default:d(()=>[N(ct,V(e.$attrs,{ref:b(i),"data-state":s.value?`visible`:`hidden`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),[Q,it]=G(`ScrollAreaScrollbar`),at=z({inheritAttrs:!1,__name:`ScrollAreaScrollbar`,props:{orientation:{type:String,required:!1,default:`vertical`},forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`div`}},setup(e){let t=e,{forwardRef:n}=P(),r=Y(),i=S(()=>t.orientation===`horizontal`);g(i,()=>{i.value?r.onScrollbarXEnabledChange(!0):r.onScrollbarYEnabledChange(!0)},{immediate:!0}),j(()=>{r.onScrollbarXEnabledChange(!1),r.onScrollbarYEnabledChange(!1)});let{orientation:a,forceMount:o,asChild:s,as:c}=v(t);return it({orientation:a,forceMount:o,isHorizontal:i,as:c,asChild:s}),(e,t)=>b(r).type.value===`hover`?(O(),w(nt,V({key:0},e.$attrs,{ref:b(n),"force-mount":b(o)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`force-mount`])):b(r).type.value===`scroll`?(O(),w(rt,V({key:1},e.$attrs,{ref:b(n),"force-mount":b(o)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`force-mount`])):b(r).type.value===`glimpse`?(O(),w(tt,V({key:2},e.$attrs,{ref:b(n),"force-mount":b(o)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`force-mount`])):b(r).type.value===`auto`?(O(),w(et,V({key:3},e.$attrs,{ref:b(n),"force-mount":b(o)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`force-mount`])):b(r).type.value===`always`?(O(),w(ct,V({key:4},e.$attrs,{ref:b(n),"data-state":`visible`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16)):f(`v-if`,!0)}}),[ot,st]=G(`ScrollAreaScrollbarVisible`),ct=z({__name:`ScrollAreaScrollbarVisible`,setup(e){let t=Y(),n=Q(),{forwardRef:r}=P(),i=o({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),a=S(()=>{let e=qe(i.value.viewport,i.value.content);return e>0&&e<1}),s=o(),c=o(0);function l(e,n){if(h.value){let r=t.viewport.value.scrollLeft+e.deltaY;t.viewport.value.scrollLeft=r,Ze(r,n)&&e.preventDefault()}else{let r=t.viewport.value.scrollTop+e.deltaY;t.viewport.value.scrollTop=r,Ze(r,n)&&e.preventDefault()}}function u(e,t){h.value?c.value=t.x:c.value=t.y}function f(e){c.value=0}function p(e){i.value=e}function m(e,t){return Xe(e,c.value,i.value,t)}let h=S(()=>n.isHorizontal.value);function g(e){h.value?t.viewport.value.scrollLeft=m(e,t.dir.value):t.viewport.value.scrollTop=m(e)}function _(){if(h.value){if(t.viewport.value&&s.value){let e=t.viewport.value.scrollLeft,n=Ye(e,i.value,t.dir.value);s.value.style.transform=`translate3d(${n}px, 0, 0)`}}else if(t.viewport.value&&s.value){let e=t.viewport.value.scrollTop,n=Ye(e,i.value);s.value.style.transform=`translate3d(0, ${n}px, 0)`}}function v(e){s.value=e}return st({sizes:i,hasThumb:a,handleWheelScroll:l,handleThumbDown:u,handleThumbUp:f,handleSizeChange:p,onThumbPositionChange:_,onThumbChange:v,onDragScroll:g}),(e,t)=>h.value?(O(),w(Qe,V({key:0},e.$attrs,{ref:b(r)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16)):(O(),w($e,V({key:1},e.$attrs,{ref:b(r)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16))}}),lt=z({__name:`ScrollAreaScrollbarImpl`,props:{isHorizontal:{type:Boolean,required:!0}},emits:[`onDragScroll`,`onWheelScroll`,`onThumbPointerDown`],setup(e,{emit:t}){let n=e,r=t,i=Y(),a=ot(),s=Q(),{forwardRef:c,currentElement:l}=P(),u=o(``),f=o();function p(e){f.value&&r(`onDragScroll`,{x:e.clientX-f.value?.left,y:e.clientY-f.value?.top})}function m(e){e.button===0&&(e.target.setPointerCapture(e.pointerId),f.value=l.value.getBoundingClientRect(),u.value=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,i.viewport&&(i.viewport.value.style.scrollBehavior=`auto`),p(e))}function h(e){p(e)}function g(e){let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=u.value,i.viewport&&(i.viewport.value.style.scrollBehavior=``),f.value=void 0}function _(e){let t=e.target,n=l.value?.contains(t),r=a.sizes.value.content-a.sizes.value.viewport;n&&a.handleWheelScroll(e,r)}I(()=>{document.addEventListener(`wheel`,_,{passive:!1})}),j(()=>{document.removeEventListener(`wheel`,_)});function v(){l.value&&(n.isHorizontal?a.handleSizeChange({content:i.viewport.value?.scrollWidth??0,viewport:i.viewport.value?.offsetWidth??0,scrollbar:{size:l.value.clientWidth??0,paddingStart:Z(getComputedStyle(l.value).paddingLeft),paddingEnd:Z(getComputedStyle(l.value).paddingRight)}}):a.handleSizeChange({content:i.viewport.value?.scrollHeight??0,viewport:i.viewport.value?.offsetHeight??0,scrollbar:{size:l.value?.clientHeight??0,paddingStart:Z(getComputedStyle(l.value).paddingTop),paddingEnd:Z(getComputedStyle(l.value).paddingBottom)}}),a.onThumbPositionChange())}return F(l,v),F(i.content,v),(e,t)=>(O(),w(b(k),{ref:b(c),style:{position:`absolute`},"data-scrollbarimpl":``,as:b(s).as.value,"as-child":b(s).asChild.value,onPointerdown:m,onPointermove:h,onPointerup:g},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}}),ut=z({__name:`ScrollAreaThumb`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,r=Y(),i=ot();function a(e){let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;i.handleThumbDown(e,{x:n,y:r})}function s(e){i.handleThumbUp(e)}let{forwardRef:c,currentElement:l}=P(),u=o(),f=S(()=>r.viewport.value);function p(){u.value||(u.value=Je(f.value,i.onThumbPositionChange),i.onThumbPositionChange())}return n(S(()=>i.sizes.value),()=>{i.onThumbChange(l.value),f.value&&(i.onThumbPositionChange(),f.value.addEventListener(`scroll`,p))}),j(()=>{f.value.removeEventListener(`scroll`,p),r.viewport.value?.removeEventListener(`scroll`,p)}),(e,n)=>(O(),w(b(k),{ref:b(c),"data-state":b(i).hasThumb?`visible`:`hidden`,style:{width:`var(--reka-scroll-area-thumb-width)`,height:`var(--reka-scroll-area-thumb-height)`},"as-child":t.asChild,as:e.as,onPointerdown:a,onPointerup:s},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`data-state`,`as-child`,`as`]))}}),dt=z({inheritAttrs:!1,__name:`ScrollAreaViewport`,props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(t,{expose:n}){let r=t,{nonce:i}=v(r),a=xe(i),c=Y(),l=o();I(()=>{c.onViewportChange(l.value),c.onContentChange(f.value)}),n({viewportElement:l});let{forwardRef:u,currentElement:f}=P();return(t,n)=>(O(),e(L,null,[x(`div`,V({ref_key:`viewportElement`,ref:l,"data-reka-scroll-area-viewport":``,style:{overflowX:b(c).scrollbarXEnabled.value?`scroll`:`hidden`,overflowY:b(c).scrollbarYEnabled.value?`scroll`:`hidden`}},t.$attrs,{tabindex:0}),[N(b(k),{ref:b(u),style:s({minWidth:b(c).scrollbarXEnabled.value?`fit-content`:void 0}),"as-child":r.asChild,as:t.as},{default:d(()=>[H(t.$slots,`default`)]),_:3},8,[`style`,`as-child`,`as`])],16),N(b(k),{as:`style`,nonce:b(a)},{default:d(()=>n[0]||=[B(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-scroll-area-viewport] { scrollbar-width:none; -ms-overflow-style:none; -webkit-overflow-scrolling:touch; } [data-reka-scroll-area-viewport]::-webkit-scrollbar { display:none; } `)]),_:1,__:[0]},8,[`nonce`])],64))}}),ft=z({__name:`BaseSeparator`,props:{orientation:{type:String,required:!1,default:`horizontal`},decorative:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,n=[`horizontal`,`vertical`];function r(e){return n.includes(e)}let i=S(()=>r(t.orientation)?t.orientation:`horizontal`),a=S(()=>i.value===`vertical`?t.orientation:void 0),o=S(()=>t.decorative?{role:`none`}:{"aria-orientation":a.value,role:`separator`});return(e,t)=>(O(),w(b(k),V({as:e.as,"as-child":e.asChild,"data-orientation":i.value},o.value),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`data-orientation`]))}}),pt=z({__name:`Separator`,props:{orientation:{type:String,required:!1,default:`horizontal`},decorative:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e;return(e,n)=>(O(),w(ft,re(ee(t)),{default:d(()=>[H(e.$slots,`default`)]),_:3},16))}}),[mt,ht]=G(`TabsRoot`),gt=z({__name:`TabsRoot`,props:{defaultValue:{type:null,required:!1},orientation:{type:String,required:!1,default:`horizontal`},dir:{type:String,required:!1},activationMode:{type:String,required:!1,default:`automatic`},modelValue:{type:null,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{orientation:i,unmountOnHide:a,dir:s}=v(n),c=Ce(s);P();let l=A(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),u=o(),f=m(new Set);return ht({modelValue:l,changeModelValue:e=>{l.value=e},orientation:i,dir:c,unmountOnHide:a,activationMode:n.activationMode,baseId:ve(void 0,`reka-tabs`),tabsList:u,contentIds:f,registerContent:e=>{f.value=new Set([...f.value,e])},unregisterContent:e=>{let t=new Set(f.value);t.delete(e),f.value=t}}),(e,t)=>(O(),w(b(k),{dir:b(c),"data-orientation":b(i),"as-child":e.asChild,as:e.as},{default:d(()=>[H(e.$slots,`default`,{modelValue:b(l)})]),_:3},8,[`dir`,`data-orientation`,`as-child`,`as`]))}});function _t(e,t){return`${e}-trigger-${t}`}function vt(e,t){return`${e}-content-${t}`}var yt=z({__name:`TabsList`,props:{loop:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{loop:t}=v(e),{forwardRef:n,currentElement:r}=P(),i=mt();return i.tabsList=r,(e,r)=>(O(),w(b(he),{"as-child":``,orientation:b(i).orientation.value,dir:b(i).dir.value,loop:b(t)},{default:d(()=>[N(b(k),{ref:b(n),role:`tablist`,"as-child":e.asChild,as:e.as,"aria-orientation":b(i).orientation.value},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`aria-orientation`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),bt=z({__name:`TabsTrigger`,props:{value:{type:[String,Number],required:!0},disabled:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,{forwardRef:n}=P(),r=mt(),a=S(()=>_t(r.baseId,t.value)),o=S(()=>r.contentIds.value.has(t.value)?vt(r.baseId,t.value):void 0),s=S(()=>t.value===r.modelValue.value);return(e,t)=>(O(),w(b(ge),{"as-child":``,focusable:!e.disabled,active:s.value},{default:d(()=>[N(b(k),{id:a.value,ref:b(n),role:`tab`,type:e.as===`button`?`button`:void 0,as:e.as,"as-child":e.asChild,"aria-selected":s.value?`true`:`false`,"aria-controls":o.value,"data-state":s.value?`active`:`inactive`,disabled:e.disabled,"data-disabled":e.disabled?``:void 0,"data-orientation":b(r).orientation.value,onMousedown:t[0]||=c(t=>{!e.disabled&&t.ctrlKey===!1?b(r).changeModelValue(e.value):t.preventDefault()},[`left`]),onKeydown:t[1]||=i(t=>b(r).changeModelValue(e.value),[`enter`,`space`]),onFocus:t[2]||=()=>{let t=b(r).activationMode!==`manual`;!s.value&&!e.disabled&&t&&b(r).changeModelValue(e.value)}},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`id`,`type`,`as`,`as-child`,`aria-selected`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`data-orientation`])]),_:3},8,[`focusable`,`active`]))}}),xt=z({__name:`Separator`,props:{orientation:{default:`horizontal`},decorative:{type:Boolean,default:!0},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e,n=U(t,`class`);return(e,r)=>(O(),w(b(pt),V({"data-slot":`separator`},b(n),{class:b(R)(`shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px data-[orientation=vertical]:self-stretch`,t.class)}),null,16,[`class`]))}}),St=z({__name:`Tabs`,props:{defaultValue:{},orientation:{},dir:{},activationMode:{},modelValue:{},unmountOnHide:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,i=Se(U(n,`class`),r);return(e,t)=>(O(),w(b(gt),V({"data-slot":`tabs`,"data-orientation":b(i).orientation||`horizontal`},b(i),{class:b(R)(`gap-2 group/tabs flex data-[orientation=horizontal]:flex-col`,n.class)}),{default:d(t=>[H(e.$slots,`default`,re(ee(t)))]),_:3},16,[`data-orientation`,`class`]))}}),Ct=z({__name:`TabsList`,props:{loop:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]},variant:{default:`default`}},setup(e){let t=e,n=U(t,`class`,`variant`);return(r,i)=>(O(),w(b(yt),V({"data-slot":`tabs-list`,"data-variant":e.variant},b(n),{class:b(R)(`rounded-lg p-[3px] group-data-[orientation=horizontal]/tabs:h-8 data-[variant=line]:rounded-none group/tabs-list inline-flex w-fit items-center justify-center text-muted-foreground group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col`,e.variant===`default`&&`bg-muted`,e.variant===`line`&&`gap-1 bg-transparent`,t.class)}),{default:d(()=>[H(r.$slots,`default`)]),_:3},16,[`data-variant`,`class`]))}}),wt=z({__name:`TabsTrigger`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e,n=ye(U(t,`class`));return(e,r)=>(O(),w(b(bt),V({"data-slot":`tabs-trigger`,class:b(R)(`gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none [&_svg:not([class*=size-])]:size-4 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center whitespace-nowrap text-foreground/60 transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 dark:text-muted-foreground dark:hover:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0`,`group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent`,`data-[state=active]:bg-background data-[state=active]:text-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 dark:data-[state=active]:text-foreground`,`after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100`,t.class)},b(n)),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`class`]))}}),Tt=z({__name:`Textarea`,props:{class:{type:[Boolean,null,String,Object,Array]},defaultValue:{},modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:n}){let r=t,i=A(r,`modelValue`,n,{passive:!0,defaultValue:r.defaultValue});return(t,n)=>ne((O(),e(`textarea`,{"onUpdate:modelValue":n[0]||=e=>u(i)?i.value=e:null,"data-slot":`textarea`,class:l(b(R)(`border-input dark:bg-input/30 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-input/50 dark:disabled:bg-input/80 rounded-lg border bg-transparent px-2.5 py-2 text-base transition-colors focus-visible:ring-3 aria-invalid:ring-3 md:text-sm flex field-sizing-content min-h-16 w-full outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50`,r.class))},null,2)),[[y,b(i)]])}}),Et={class:`flex items-center gap-2`},Dt={key:0,class:`rounded-lg border border-success/20 bg-success/5 px-3 py-2.5 flex items-start gap-2.5`},Ot={class:`flex h-5 w-5 shrink-0 items-center justify-center rounded-full bg-success/10 mt-0.5`},kt={class:`text-sm text-success-foreground leading-relaxed`},At={class:`space-y-4`},jt={class:`space-y-3`},Mt={class:`rounded-lg border bg-muted/30 p-3 space-y-3`},Nt={class:`text-xs font-medium text-muted-foreground uppercase tracking-wide`},Pt={class:`grid grid-cols-2 gap-3`},Ft={class:`rounded-lg border bg-muted/30 p-3 space-y-3`},It={class:`text-xs font-medium text-muted-foreground uppercase tracking-wide`},Lt={class:`grid grid-cols-2 gap-3`},Rt={key:0},zt={class:`flex items-center gap-2.5 pt-1`},Bt=100,Vt=599,Ht=100,Ut=100,Wt=z({__name:`AiRulePreviewDialog`,props:{open:{type:Boolean},rule:{},summary:{}},emits:[`update:open`,`saved`],setup(n,{emit:r}){let{t:i}=_(),a=n,s=r;function c(){return{name:``,status_code:429,body_pattern:``,retry_strategy:`exponential`,retry_delay_ms:5e3,max_retries:10,max_delay_ms:6e4,is_active:!0}}let l=o(c());g([()=>a.open,()=>a.rule],([e,t])=>{e&&t&&(l.value={...t,is_active:!0},u.value=!1)},{immediate:!0});let u=o(!1);async function p(){if(u.value)return;let e=[];l.value.name.trim()||e.push(i(`retryRules.messages.nameRequired`));let n=l.value.status_code;(typeof n!=`number`||isNaN(n)||n<Bt||n>Vt)&&e.push(i(`retryRules.messages.statusCodeRange`));try{new RegExp(l.value.body_pattern)}catch{e.push(i(`retryRules.messages.bodyPatternInvalid`))}l.value.body_pattern.trim()||e.push(i(`retryRules.messages.bodyPatternInvalid`));let r=l.value.retry_delay_ms;(typeof r!=`number`||isNaN(r)||r<Ht)&&e.push(i(`retryRules.messages.delayMin`));let a=l.value.max_retries;(typeof a!=`number`||isNaN(a)||a<0||a>Ut)&&e.push(i(`retryRules.messages.retriesRange`));let o=l.value.max_delay_ms;if(l.value.retry_strategy===`exponential`&&(typeof o!=`number`||isNaN(o)||o<Ht)&&e.push(i(`retryRules.messages.delayMin`)),e.length>0){K.error(e.join(`; `));return}u.value=!0;try{await te.createRetryRule({name:l.value.name,status_code:Number(l.value.status_code),body_pattern:l.value.body_pattern,is_active:+!!l.value.is_active,retry_strategy:l.value.retry_strategy,retry_delay_ms:Number(l.value.retry_delay_ms),max_retries:Number(l.value.max_retries),max_delay_ms:l.value.retry_strategy===`exponential`?Number(l.value.max_delay_ms):void 0}),K.success(i(`retryRules.messages.saveCompleted`)),s(`saved`),s(`update:open`,!1)}catch(e){console.error(`AiRulePreviewDialog.handleSave:`,e),K.error(t(e,i(`retryRules.messages.saveFailed`)))}finally{u.value=!1}}return(t,r)=>(O(),w(b(fe),{open:n.open,"onUpdate:open":r[9]||=e=>s(`update:open`,e)},{default:d(()=>[N(b(le),{class:`sm:max-w-xl`},{default:d(()=>[N(b(de),{class:`gap-1.5`},{default:d(()=>[x(`div`,Et,[N(b(ae),{class:`h-4 w-4 text-primary shrink-0`}),N(b(me),null,{default:d(()=>[B(C(b(i)(`logs.aiGeneratedRule`)),1)]),_:1})]),N(b(q),{variant:`secondary`,class:`w-fit text-[10px]`},{default:d(()=>[B(C(b(i)(`logs.aiGenerated`)),1)]),_:1})]),_:1}),n.summary?(O(),e(`div`,Dt,[x(`div`,Ot,[N(b(Ee),{class:`h-3 w-3 text-success`})]),x(`p`,kt,C(n.summary),1)])):f(``,!0),x(`div`,At,[x(`div`,jt,[x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.name`)),1)]),_:1}),N(b(J),{modelValue:l.value.name,"onUpdate:modelValue":r[0]||=e=>l.value.name=e,type:`text`,class:`mt-1`},null,8,[`modelValue`])])]),x(`div`,Mt,[x(`p`,Nt,C(b(i)(`logs.matchConditions`)),1),x(`div`,Pt,[x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.statusCode`)),1)]),_:1}),N(b(J),{modelValue:l.value.status_code,"onUpdate:modelValue":r[1]||=e=>l.value.status_code=e,modelModifiers:{number:!0},type:`number`,class:`mt-1`},null,8,[`modelValue`])]),x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.retryStrategy`)),1)]),_:1}),N(b(Te),{modelValue:l.value.retry_strategy,"onUpdate:modelValue":r[2]||=e=>l.value.retry_strategy=e},{default:d(()=>[N(b(Ae),{class:`mt-1`},{default:d(()=>[N(b(je))]),_:1}),N(b(Oe),null,{default:d(()=>[N(b(ke),{value:`exponential`},{default:d(()=>[B(C(b(i)(`retryRules.strategy.exponential`)),1)]),_:1}),N(b(ke),{value:`fixed`},{default:d(()=>[B(C(b(i)(`retryRules.strategy.fixed`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`])])]),x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.bodyPattern`)),1)]),_:1}),N(b(Tt),{modelValue:l.value.body_pattern,"onUpdate:modelValue":r[3]||=e=>l.value.body_pattern=e,class:`font-mono mt-1`,rows:2},null,8,[`modelValue`])])]),x(`div`,Ft,[x(`p`,It,C(b(i)(`logs.retryParams`)),1),x(`div`,Lt,[x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(l.value.retry_strategy===`fixed`?b(i)(`retryRules.dialog.intervalMs`):b(i)(`retryRules.dialog.initialDelayMs`)),1)]),_:1}),N(b(J),{modelValue:l.value.retry_delay_ms,"onUpdate:modelValue":r[4]||=e=>l.value.retry_delay_ms=e,modelModifiers:{number:!0},type:`number`,class:`mt-1`},null,8,[`modelValue`])]),x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.maxRetries`)),1)]),_:1}),N(b(J),{modelValue:l.value.max_retries,"onUpdate:modelValue":r[5]||=e=>l.value.max_retries=e,modelModifiers:{number:!0},type:`number`,class:`mt-1`},null,8,[`modelValue`])])]),l.value.retry_strategy===`exponential`?(O(),e(`div`,Rt,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.maxDelayMs`)),1)]),_:1}),N(b(J),{modelValue:l.value.max_delay_ms,"onUpdate:modelValue":r[6]||=e=>l.value.max_delay_ms=e,modelModifiers:{number:!0},type:`number`,class:`mt-1`},null,8,[`modelValue`])])):f(``,!0)]),x(`div`,zt,[N(b(_e),{checked:l.value.is_active,"onUpdate:checked":r[7]||=e=>l.value.is_active=e,id:`rule-active`},null,8,[`checked`]),N(b(W),{for:`rule-active`,class:`text-sm text-foreground cursor-pointer`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.enable`)),1)]),_:1})])]),N(b(pe),{class:`border-t pt-4 mt-2`},{default:d(()=>[N(b(M),{variant:`outline`,onClick:r[8]||=e=>s(`update:open`,!1)},{default:d(()=>[B(C(b(i)(`common.cancel`)),1)]),_:1}),N(b(M),{disabled:u.value,onClick:p},{default:d(()=>[B(C(b(i)(`logs.saveRule`)),1)]),_:1},8,[`disabled`])]),_:1})]),_:1})]),_:1},8,[`open`]))}}),$=1e3;function Gt(e,t){let n=e.attempts.length>0?e.attempts[e.attempts.length-1]:void 0,r=e.streamMetrics,i=r?.tokensPerSecond??null;if(!i&&r&&r.outputTokens&&r.ttftMs&&e.completedAt){let t=(e.completedAt-e.startTime-r.ttftMs)/$;t>0&&(i=r.outputTokens/t)}return{id:e.id,model:e.model,backendModel:null,originalModel:null,statusCode:e.status===`completed`?n?.statusCode??null:null,isStream:e.isStream,apiType:e.apiType,providerName:e.providerName,clientIp:e.clientIp,sessionId:e.sessionId??null,latencyMs:e.completedAt?e.completedAt-e.startTime:null,ttftMs:r?.ttftMs??null,inputTokens:r?.inputTokens??null,outputTokens:r?.outputTokens??null,tokensPerSecond:i,cacheReadTokens:r?.cacheReadTokens??null,cacheWriteTokens:null,stopReason:r?.stopReason??null,isComplete:r?.isComplete??!1,attempts:e.attempts.map(e=>({statusCode:e.statusCode,error:e.error,latencyMs:e.latencyMs,providerId:e.providerId})),status:e.status,clientRequest:e.clientRequest??null,upstreamRequest:e.upstreamRequest??null,responseBody:t??null,upstreamResponse:null,errorMessage:null,createdAt:null,inputTokensEstimated:!1,clientType:null,cacheReadTokensEstimated:r?.cacheReadTokensEstimated??null,mappingReason:e.mappingReason}}function Kt(e){if(!e)return null;try{let t=JSON.parse(e);return typeof t.statusCode==`number`&&t.headers&&!t.content&&!t.choices?typeof t.body==`string`?t.body:null:e}catch{return e}}var qt=[`stream_error: upstream returned 200 but body contains error`],Jt=new Set([`direct_format`,`group_base_rule`,`group_schedule`,`fallback_provider`,`overflow_redirect`,`failover_retry`]);function Yt(e){if(e)try{let t=JSON.parse(e),n=Array.isArray(t)?t:[];if(n.length===0)return;for(let e of n)if(e.stage===`overflow`&&e.triggered===!0)return`overflow_redirect`;for(let e of n)if(e.stage===`routing`&&typeof e.mapping_reason==`string`)return Jt.has(e.mapping_reason)?e.mapping_reason:void 0;return}catch{return}}function Xt(e){return e?qt.some(t=>e.startsWith(t)):!1}function Zt(e){let t=e.input_tokens??null,n=e.output_tokens??null,r=e.ttft_ms??null,i=e.tokens_per_second??null;if(!i&&n&&r&&e.latency_ms){let t=(e.latency_ms-r)/$;t>0&&(i=n/t)}let a=Kt(e.upstream_response)??e.stream_text_content??null;return{id:e.id,model:e.original_model??e.model??`unknown`,backendModel:e.backend_model,originalModel:e.original_model,statusCode:e.status_code,isStream:!!e.is_stream,apiType:e.api_type===`openai`||e.api_type===`anthropic`?e.api_type:`openai`,providerName:e.provider_name,clientIp:void 0,sessionId:e.session_id??null,latencyMs:e.latency_ms,ttftMs:r,inputTokens:t,outputTokens:n,tokensPerSecond:i,cacheReadTokens:e.cache_read_tokens??null,cacheWriteTokens:null,stopReason:e.stop_reason??null,isComplete:!!e.metrics_complete,attempts:[],status:(e.status_code??0)>=400?`failed`:`completed`,clientRequest:e.client_request,upstreamRequest:e.upstream_request,responseBody:a,upstreamResponse:e.upstream_response,errorMessage:Xt(e.error_message)?null:e.error_message,createdAt:e.created_at,inputTokensEstimated:e.input_tokens_estimated===1,clientType:e.client_type??null,cacheReadTokensEstimated:e.cache_read_tokens_estimated??null,mappingReason:Yt(e.pipeline_snapshot)}}var Qt=z({__name:`ScrollBar`,props:{orientation:{default:`vertical`},forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e,n=U(t,`class`);return(r,i)=>(O(),w(b(at),V({"data-slot":`scroll-area-scrollbar`,"data-orientation":e.orientation},b(n),{class:b(R)(`data-[orientation=horizontal]:h-2.5 data-[orientation=horizontal]:flex-col data-[orientation=horizontal]:border-t data-[orientation=horizontal]:border-t-transparent data-[orientation=vertical]:h-full data-[orientation=vertical]:w-2.5 data-[orientation=vertical]:border-l data-[orientation=vertical]:border-l-transparent flex touch-none p-px transition-colors select-none`,t.class)}),{default:d(()=>[N(b(ut),{"data-slot":`scroll-area-thumb`,class:`rounded-full relative flex-1 bg-border`})]),_:1},16,[`data-orientation`,`class`]))}}),$t=z({__name:`ScrollArea`,props:{type:{},dir:{},scrollHideDelay:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e,n=U(t,`class`);return(e,r)=>(O(),w(b(Ue),V({"data-slot":`scroll-area`},b(n),{class:b(R)(`relative`,t.class)}),{default:d(()=>[N(b(dt),{"data-slot":`scroll-area-viewport`,class:`size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1`},{default:d(()=>[H(e.$slots,`default`)]),_:3}),N(Qt),N(b(Ge))]),_:3},16,[`class`]))}});function en(e,t){if(!e)return t||``;try{let n=JSON.parse(e);return typeof n.statusCode==`number`&&(n.headers||n.body!==void 0)?n.body===null&&t?JSON.stringify({...n,body:t},null,tn):JSON.stringify(n,null,tn):e}catch{return e}}var tn=2,nn=new Set([`choices`,`content`]);function rn(e,t){if(!e&&!t)return``;let n=an(e),r=n?.headers,i=n?.body??t;if(r){let e={headers:r};return i&&(e.body=on(i)),JSON.stringify(e,null,tn)}if(i){let e=on(i);return JSON.stringify(e,null,tn)}return``}function an(e){if(!e)return null;try{let t=JSON.parse(e);return typeof t.statusCode==`number`&&(t.headers||t.body!==void 0)?{headers:t.headers??{},body:typeof t.body==`string`?t.body:t.body==null?null:JSON.stringify(t.body)}:null}catch{return null}}function on(e){try{let t=JSON.parse(e);if(typeof t==`object`&&t){let e={};for(let[n,r]of Object.entries(t))nn.has(n)||(e[n]=r);return e}return e}catch{return e}}var sn={class:`space-y-3`},cn={class:`flex items-center justify-between`},ln={class:`text-xs font-medium text-muted-foreground`},un={class:`p-3 text-[11px] whitespace-pre-wrap break-words`},dn={class:`flex items-baseline gap-1 min-w-0`},fn={class:`font-mono text-[11px] font-semibold truncate min-w-0`},pn={class:`text-[10px] text-muted-foreground flex-shrink-0`},mn={key:0,class:`flex items-center gap-1.5`},hn={class:`flex items-center gap-1.5`},gn={key:1,class:`flex items-center gap-1.5`},_n={class:`font-mono text-[11px] text-muted-foreground truncate`},vn={class:`grid grid-cols-2 gap-1.5`},yn={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},bn={class:`text-[10px] text-muted-foreground`},xn={class:`text-sm font-semibold truncate`},Sn={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},Cn={class:`text-[10px] text-muted-foreground`},wn={class:`text-sm font-semibold truncate`},Tn={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},En={class:`text-[10px] text-muted-foreground`},Dn={class:`text-sm font-semibold truncate`},On={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},kn={class:`text-[10px] text-muted-foreground`},An={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},jn={class:`text-[10px] text-muted-foreground`},Mn={class:`text-sm font-semibold truncate`},Nn={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},Pn={class:`text-[10px] text-muted-foreground`},Fn={class:`text-sm font-semibold truncate`},In={key:2,class:`rounded-md px-2 py-1.5 bg-muted/50`},Ln={class:`text-[10px] text-muted-foreground`},Rn={key:0,class:`text-[11px] font-semibold text-success-dark`},zn={key:1,class:`text-[11px] font-semibold text-warning-dark`},Bn={class:`space-y-1.5`},Vn={class:`text-[10px] text-muted-foreground uppercase tracking-wider`},Hn={key:0,class:`text-[11px] text-muted-foreground`},Un={class:`text-muted-foreground`},Wn={class:`text-muted-foreground`},Gn={class:`space-y-1`},Kn={key:0,class:`flex items-center justify-between text-[11px]`},qn={class:`text-muted-foreground`},Jn={class:`font-mono`},Yn={key:1,class:`flex items-center justify-between text-[11px]`},Xn={class:`text-muted-foreground`},Zn={class:`font-mono`},Qn={key:2,class:`flex items-center justify-between text-[11px]`},$n={class:`text-muted-foreground`},er={class:`font-mono truncate max-w-[160px]`},tr=2,nr=z({__name:`RequestOverviewPanel`,props:{overview:{}},setup(t){let{t:n}=_(),r=t,i=o(!1),a=S(()=>{let e=r.overview.clientType;return e===`claude-code`?`Claude Code`:e===`codex`?`Codex CLI`:e===`pi`?`Pi`:e===`openai-sdk`?`OpenAI SDK`:e===`anthropic-sdk`?`Anthropic SDK`:e??`Unknown`}),s=S(()=>rn(r.overview.upstreamResponse,r.overview.responseBody)||JSON.stringify({latencyMs:r.overview.latencyMs,ttftMs:r.overview.ttftMs,inputTokens:r.overview.inputTokens,outputTokens:r.overview.outputTokens,tokensPerSecond:r.overview.tokensPerSecond,cacheReadTokens:r.overview.cacheReadTokens,cacheWriteTokens:r.overview.cacheWriteTokens,stopReason:r.overview.stopReason,statusCode:r.overview.statusCode},null,tr)),c=S(()=>{if(r.overview.status===`pending`)return`pending`;let e=r.overview.statusCode;return r.overview.status===`failed`||e!=null&&e>=400?`error`:`success`}),u=S(()=>r.overview.status===`pending`&&r.overview.outputTokens!=null),p=S(()=>{let e=r.overview.outputTokens;return e==null?`--`:u.value?`+${e}`:`${e}`}),m=S(()=>r.overview.status===`pending`&&r.overview.latencyMs==null?`...`:r.overview.latencyMs==null?`--`:`${(r.overview.latencyMs/$).toFixed(1)}s`),h=S(()=>{if(r.overview.tokensPerSecond!=null)return`${r.overview.tokensPerSecond.toFixed(1)}`;let{outputTokens:e,latencyMs:t}=r.overview;return e&&t?`${(e/t*$).toFixed(1)}`:`--`});function g(e){return e!=null&&e>=400}return(r,o)=>(O(),e(`div`,sn,[x(`div`,cn,[x(`span`,ln,C(b(n)(`requestDetail.overviewTitle`)),1),N(b(M),{size:`sm`,variant:`outline`,class:`h-6 gap-1 text-xs`,onClick:o[0]||=e=>i.value=!i.value},{default:d(()=>[(O(),w(E(i.value?b(Ne):b(ze)),{class:`h-3 w-3`})),B(` `+C(i.value?b(n)(`requestDetail.structured`):b(n)(`requestDetail.rawData`)),1)]),_:1})]),i.value?(O(),w(b($t),{key:0,class:`rounded-md border flex-1`},{default:d(()=>[x(`pre`,un,C(s.value),1)]),_:1})):f(``,!0),i.value?f(``,!0):(O(),e(L,{key:1},[x(`div`,dn,[x(`span`,fn,C(t.overview.model),1),x(`span`,pn,`@ `+C(t.overview.providerName||b(n)(`requestDetail.unknownProvider`)),1)]),t.overview.mappingReason?(O(),e(`div`,mn,[N(b(q),{variant:`secondary`,class:`text-[10px]`},{default:d(()=>[B(C(b(n)(`requestDetail.mappingReason.${t.overview.mappingReason}`)),1)]),_:1})])):f(``,!0),x(`div`,hn,[c.value===`pending`?(O(),w(b(q),{key:0,variant:`outline`,class:`border-warning/30 bg-warning-light text-warning-dark`},{default:d(()=>[o[1]||=x(`span`,{class:`w-1.5 h-1.5 rounded-full bg-warning animate-pulse`},null,-1),B(` `+C(b(n)(`requestDetail.pending`)),1)]),_:1})):c.value===`error`?(O(),w(b(q),{key:1,variant:`outline`,class:`border-danger/30 bg-danger-light text-danger-dark`},{default:d(()=>[B(C(t.overview.statusCode??b(n)(`requestDetail.failed`)),1)]),_:1})):(O(),w(b(q),{key:2,variant:`outline`,class:`border-success/30 bg-success-light text-success-dark`},{default:d(()=>[o[2]||=x(`span`,{class:`w-1.5 h-1.5 rounded-full bg-success`},null,-1),B(` `+C(b(n)(`requestDetail.completed`)),1)]),_:1})),N(b(q),{variant:`outline`},{default:d(()=>[B(C(t.overview.isStream?`SSE`:b(n)(`requestDetail.nonStream`)),1)]),_:1}),N(b(q),{variant:`outline`},{default:d(()=>[B(C(t.overview.apiType),1)]),_:1})]),t.overview.sessionId?(O(),e(`div`,gn,[N(b(q),{variant:`secondary`,class:`text-[10px]`},{default:d(()=>[...o[3]||=[B(`Session`,-1)]]),_:1}),x(`span`,_n,C(t.overview.sessionId.slice(0,8)),1)])):f(``,!0),x(`div`,vn,[x(`div`,yn,[x(`div`,bn,C(b(n)(`requestDetail.latency`)),1),x(`div`,xn,C(m.value),1)]),x(`div`,Sn,[x(`div`,Cn,C(b(n)(`requestDetail.ttft`)),1),x(`div`,wn,C(t.overview.ttftMs==null?`--`:`${t.overview.ttftMs}ms`),1)]),x(`div`,Tn,[x(`div`,En,C(t.overview.inputTokensEstimated?b(n)(`requestDetail.estInputTokens`):b(n)(`requestDetail.inputTokens`)),1),x(`div`,Dn,C(t.overview.inputTokens==null?`--`:t.overview.inputTokens),1)]),x(`div`,On,[x(`div`,kn,C(b(n)(`requestDetail.outputTokens`)),1),x(`div`,{class:l([`text-sm font-semibold truncate`,u.value?`diff-added`:``])},C(p.value),3)]),x(`div`,An,[x(`div`,jn,C(b(n)(`requestDetail.speed`)),1),x(`div`,Mn,C(h.value),1)]),x(`div`,Nn,[x(`div`,Pn,C(b(n)(`requestDetail.cacheRead`)),1),x(`div`,Fn,C(t.overview.cacheReadTokens==null?`--`:t.overview.cacheReadTokens),1)])]),t.overview.cacheReadTokens!=null&&t.overview.cacheReadTokens>0?(O(),e(`div`,In,[x(`div`,Ln,C(b(n)(`requestDetail.cacheSource`)),1),t.overview.cacheReadTokensEstimated===0?(O(),e(`div`,Rn,C(b(n)(`requestDetail.cacheSourceApi`)),1)):(O(),e(`div`,zn,C(b(n)(`requestDetail.cacheSourceEstimated`)),1))])):f(``,!0),N(b(xt)),x(`div`,Bn,[x(`span`,Vn,C(b(n)(`requestDetail.attemptHistory`)),1),t.overview.attempts.length===0?(O(),e(`div`,Hn,C(b(n)(`requestDetail.noRetry`)),1)):f(``,!0),(O(!0),e(L,null,T(t.overview.attempts,(t,n)=>(O(),e(`div`,{key:n,class:`flex items-center gap-1 text-[11px]`},[x(`span`,Un,`#`+C(n+1),1),x(`span`,{class:l(g(t.statusCode)?`diff-removed`:`diff-added`)},C(t.statusCode??`--`),3),x(`span`,Wn,C((t.latencyMs/b($)).toFixed(1))+`s`,1)]))),128))]),N(b(xt)),x(`div`,Gn,[t.overview.clientType==null?f(``,!0):(O(),e(`div`,Kn,[x(`span`,qn,C(b(n)(`requestDetail.clientType`)),1),x(`span`,Jn,C(a.value),1)])),t.overview.statusCode==null?f(``,!0):(O(),e(`div`,Yn,[x(`span`,Xn,C(b(n)(`requestDetail.statusCodeLabel`)),1),x(`span`,Zn,C(t.overview.statusCode),1)])),t.overview.clientIp?(O(),e(`div`,Qn,[x(`span`,$n,C(b(n)(`requestDetail.clientIp`)),1),x(`span`,er,C(t.overview.clientIp),1)])):f(``,!0)])],64))]))}}),rr={key:0,class:`rounded-md border bg-card`},ir={class:`flex items-center gap-1.5 px-2.5 py-1.5 border-b`},ar={class:`text-xs font-medium`},or={class:`px-2.5 py-2`},sr={key:0,class:`inline-block w-1.5 h-3.5 dot-success animate-pulse ml-0.5 align-text-bottom`},cr={class:`flex items-center gap-1.5 px-2.5 py-1.5 cursor-pointer hover:brightness-95 rounded-t-md`},lr={class:`text-xs font-medium`},ur={key:0,class:`text-xs text-muted-foreground`},dr={class:`px-2.5 pb-2`},fr=z({__name:`ContentBlockRenderer`,props:{type:{},content:{},name:{default:void 0},defaultOpen:{type:Boolean,default:!0},showCursor:{type:Boolean,default:!1},autoScroll:{type:Boolean,default:!1}},setup(t){let{t:n}=_(),r=t,i=o(r.type===`text`?!0:r.defaultOpen),a=o(null),s=S(()=>{switch(r.type){case`thinking`:return`block-thinking`;case`tool_use`:return`block-tool-use`;case`tool_result`:return`block-tool-result`;default:return`bg-card`}}),c=S(()=>{switch(r.type){case`thinking`:return`block-thinking-content italic`;case`tool_use`:return`block-tool-use-content`;case`tool_result`:return`block-tool-result-content`;default:return`bg-muted/50`}}),u=S(()=>{switch(r.type){case`thinking`:return Le;case`tool_use`:return Ve;case`tool_result`:return Re;default:return Be}}),p=S(()=>{switch(r.type){case`thinking`:return`text-[var(--color-role-thinking)]`;case`tool_use`:return`text-[var(--color-role-tool)]`;case`tool_result`:return`text-[var(--color-role-user)]`;default:return`text-muted-foreground`}}),m=S(()=>{switch(r.type){case`thinking`:return n(`requestDetail.thinking`);case`tool_use`:return n(`requestDetail.toolUse`);case`tool_result`:return n(`requestDetail.toolResultLabel`);default:return``}}),h=S(()=>r.type===`tool_use`?n(`requestDetail.waitingData`):r.type===`tool_result`?n(`requestDetail.noReturnData`):``);return g(()=>r.content,()=>{r.autoScroll&&D(()=>{let e=a.value;e&&(e.scrollTop=e.scrollHeight)})}),(r,o)=>t.type===`text`?(O(),e(`div`,rr,[x(`div`,ir,[N(b(Be),{class:`h-3.5 w-3.5 diff-added`}),x(`span`,ar,C(b(n)(`requestDetail.reply`)),1)]),x(`div`,or,[x(`pre`,{ref_key:`contentRef`,ref:a,class:`text-xs overflow-y-auto whitespace-pre-wrap break-words`,style:{"max-height":`300px`}},[x(`code`,null,[B(C(t.content),1),t.showCursor?(O(),e(`span`,sr)):f(``,!0)])],512)])])):(O(),w(b(oe),{key:1,open:i.value,"onUpdate:open":o[0]||=e=>i.value=e,class:l([`rounded-md border`,s.value])},{default:d(()=>[N(b(ce),{"as-child":``},{default:d(()=>[x(`div`,cr,[N(b(De),{class:l([`h-3 w-3 transition-transform duration-200`,{"rotate-180":!i.value}])},null,8,[`class`]),(O(),w(E(u.value),{class:l([`h-3.5 w-3.5`,p.value])},null,8,[`class`])),x(`span`,lr,C(m.value),1),t.type===`thinking`?(O(),e(`span`,ur,`(`+C(b(n)(`requestDetail.charCount`,{count:t.content.length}))+`)`,1)):f(``,!0),t.type===`tool_use`&&t.name?(O(),w(b(q),{key:1,variant:`secondary`,class:`text-xs`},{default:d(()=>[B(C(t.name),1)]),_:1})):f(``,!0)])]),_:1}),N(b(se),null,{default:d(()=>[x(`div`,dr,[x(`pre`,{ref_key:`contentRef`,ref:a,class:l([`text-xs rounded p-2 overflow-y-auto whitespace-pre-wrap break-words`,c.value]),style:{"max-height":`300px`}},[x(`code`,null,C(t.content||h.value),1)],2)])]),_:1})]),_:1},8,[`open`,`class`]))}}),pr=2;function mr(e){return e.map(e=>{let t=e;return t.type===`thinking`?{type:`thinking`,content:typeof t.thinking==`string`?t.thinking:``}:t.type===`text`?{type:`text`,content:typeof t.text==`string`?t.text:``}:t.type===`tool_use`?{type:`tool_use`,content:JSON.stringify(t.input??{},null,pr),name:typeof t.name==`string`?t.name:``}:t.type===`tool_result`?{type:`tool_result`,content:typeof t.content==`string`?t.content:JSON.stringify(t.content)}:{type:`text`,content:JSON.stringify(t)}})}function hr(e){let t=[];for(let n of e){let e=n.message;if(!e)continue;let r=e.content;if(typeof r==`string`&&r)t.push({type:`text`,content:r});else if(Array.isArray(r))for(let e of r){let n=e;if(n.type===`text`)t.push({type:`text`,content:typeof n.text==`string`?n.text:``});else if(n.type===`tool_use`||n.type===`function`){let e=n.function??n.input??{};t.push({type:`tool_use`,content:JSON.stringify(e,null,pr),name:typeof n.name==`string`?n.name:typeof e.name==`string`?e.name:``})}}}return t}function gr(e,t,n){let r=e||t;if(!r)return[];let i;try{i=JSON.parse(r)}catch{return[]}let a=i;if(typeof a.body==`string`)try{i=JSON.parse(a.body)}catch{i=i}let o=i;return n===`anthropic`&&Array.isArray(o.content)?mr(o.content):n===`openai`&&Array.isArray(o.choices)?hr(o.choices):[]}var _r=5,vr=2,yr=3;function br(e,t,n){let r=S(()=>{if(!t||!e.value)return[];let n=e.value.split(`
|
|
1
|
+
import{$ as e,A as t,D as n,Et as r,G as i,I as a,It as o,Jt as s,K as c,Kt as l,Mt as u,Ot as d,Q as f,R as p,Rt as m,T as h,Tt as g,V as _,Vt as v,W as y,Wt as b,X as x,Y as S,Yt as C,Z as w,_t as T,at as ee,bt as E,dt as D,ht as O,i as k,k as te,kt as ne,m as A,mt as j,n as M,nt as N,o as P,p as F,pt as I,q as L,qt as re,r as R,rt as z,tt as B,ut as V,vt as H,x as U}from"./button-BaNRw0cF.js";import{t as ie}from"./copy-Dbl7J0Cg.js";import{t as ae}from"./sparkles-D3u86oss.js";import{n as oe,t as se}from"./CollapsibleContent-CMuY_0ps.js";import{t as ce}from"./CollapsibleTrigger-KRXgNeSC.js";import{a as le,i as ue,n as de,o as fe,r as pe,t as me}from"./dialog-D_OkVkI9.js";import{n as he,t as ge}from"./RovingFocusItem-Dg-GYaYf.js";import{t as W}from"./Label-_o2ZnCRD.js";import{t as _e}from"./Switch-CqF_csS2.js";import{B as ve,H as ye,J as G,R as be,S as xe,V as Se,W as Ce,Y as we,_ as Te,dt as Ee,ft as De,g as Oe,h as ke,i as K,m as Ae,p as je,pt as Me,ut as Ne,x as q,z as Pe}from"./index-COoySiAr.js";import{t as J}from"./Input-CQAFlthI.js";import{t as Fe}from"./useClipboard-D_jpOvnE.js";var Ie=a(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),Le=a(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),Re=a(`circle-check-big`,[[`path`,{d:`M21.801 10A10 10 0 1 1 17 3.335`,key:`yps3ct`}],[`path`,{d:`m9 11 3 3L22 4`,key:`1pflzl`}]]),ze=a(`file-braces`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12a1 1 0 0 0-1 1v1a1 1 0 0 1-1 1 1 1 0 0 1 1 1v1a1 1 0 0 0 1 1`,key:`1oajmo`}],[`path`,{d:`M14 18a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1 1 1 0 0 1-1-1v-1a1 1 0 0 0-1-1`,key:`mpwhp6`}]]),Be=a(`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`}]]),Ve=a(`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`}]]),[Y,He]=G(`ScrollAreaRoot`),Ue=z({__name:`ScrollAreaRoot`,props:{type:{type:String,required:!1,default:`hover`},dir:{type:String,required:!1},scrollHideDelay:{type:Number,required:!1,default:600},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e,{expose:t}){let n=e,r=o(0),i=o(0),a=o(),c=o(),l=o(),u=o(),f=o(!1),p=o(!1),{type:m,dir:h,scrollHideDelay:g}=v(n),_=Ce(h);function y(){a.value?.scrollTo({top:0})}function x(){a.value?.scrollTo({top:0,left:0})}t({viewport:a,scrollTop:y,scrollTopLeft:x});let{forwardRef:S,currentElement:C}=P();return He({type:m,dir:_,scrollHideDelay:g,scrollArea:C,viewport:a,onViewportChange:e=>{a.value=e||void 0},content:c,onContentChange:e=>{c.value=e},scrollbarX:l,scrollbarXEnabled:f,scrollbarY:u,scrollbarYEnabled:p,onScrollbarXChange:e=>{l.value=e||void 0},onScrollbarYChange:e=>{u.value=e||void 0},onScrollbarXEnabledChange:e=>{f.value=e},onScrollbarYEnabledChange:e=>{p.value=e},onCornerWidthChange:e=>{r.value=e},onCornerHeightChange:e=>{i.value=e}}),(e,t)=>(O(),w(b(k),{ref:b(S),"as-child":n.asChild,as:e.as,dir:b(_),style:s({position:`relative`,"--reka-scroll-area-corner-width":`${r.value}px`,"--reka-scroll-area-corner-height":`${i.value}px`})},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`dir`,`style`]))}}),We=z({__name:`ScrollAreaCornerImpl`,setup(e){let t=Y(),n=o(0),r=o(0),i=S(()=>!!n.value&&!!r.value);function a(){let e=t.scrollbarX.value?.offsetHeight||0;t.onCornerHeightChange(e),r.value=e}function s(){let e=t.scrollbarY.value?.offsetWidth||0;t.onCornerWidthChange(e),n.value=e}return F(t.scrollbarX.value,a),F(t.scrollbarY.value,s),g(()=>t.scrollbarX.value,a),g(()=>t.scrollbarY.value,s),(e,a)=>i.value?(O(),w(b(k),V({key:0,style:{width:`${n.value}px`,height:`${r.value}px`,position:`absolute`,right:b(t).dir.value===`ltr`?0:void 0,left:b(t).dir.value===`rtl`?0:void 0,bottom:0}},e.$parent?.$props),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`style`])):f(`v-if`,!0)}}),Ge=z({__name:`ScrollAreaCorner`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,{forwardRef:n}=P(),r=Y(),i=S(()=>!!r.scrollbarX.value&&!!r.scrollbarY.value),a=S(()=>r.type.value!==`scroll`&&i.value);return(e,r)=>a.value?(O(),w(We,V({key:0},t,{ref:b(n)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16)):f(`v-if`,!0)}});function Ke(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function X(e){let t=qe(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function qe(e,t){let n=e/t;return Number.isNaN(n)?0:n}function Je(e,t=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},r=0;return(function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)})(),()=>window.cancelAnimationFrame(r)}function Ye(e,t,n=`ltr`){let r=X(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=n===`ltr`?[0,o]:[o*-1,0],l=we(e,c[0],c[1]);return Ke([0,o],[0,s])(l)}function Z(e){return e?Number.parseInt(e,10):0}function Xe(e,t,n,r=`ltr`){let i=X(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return Ke([c,l],d)(e)}function Ze(e,t){return e>0&&e<t}var Qe=z({__name:`ScrollAreaScrollbarX`,setup(e){let t=Y(),n=ot(),{forwardRef:r,currentElement:i}=P();I(()=>{i.value&&t.onScrollbarXChange(i.value)});let a=S(()=>n.sizes.value);return(e,i)=>(O(),w(lt,{ref:b(r),"is-horizontal":!0,"data-orientation":`horizontal`,style:s({bottom:0,left:b(t).dir.value===`rtl`?`var(--reka-scroll-area-corner-width)`:0,right:b(t).dir.value===`ltr`?`var(--reka-scroll-area-corner-width)`:0,"--reka-scroll-area-thumb-width":a.value?`${b(X)(a.value)}px`:void 0}),onOnDragScroll:i[0]||=e=>b(n).onDragScroll(e.x)},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`style`]))}}),$e=z({__name:`ScrollAreaScrollbarY`,setup(e){let t=Y(),n=ot(),{forwardRef:r,currentElement:i}=P();I(()=>{i.value&&t.onScrollbarYChange(i.value)});let a=S(()=>n.sizes.value);return(e,i)=>(O(),w(lt,{ref:b(r),"is-horizontal":!1,"data-orientation":`vertical`,style:s({top:0,right:b(t).dir.value===`ltr`?0:void 0,left:b(t).dir.value===`rtl`?0:void 0,bottom:`var(--reka-scroll-area-corner-height)`,"--reka-scroll-area-thumb-height":a.value?`${b(X)(a.value)}px`:void 0}),onOnDragScroll:i[0]||=e=>b(n).onDragScroll(e.y)},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`style`]))}}),et=z({__name:`ScrollAreaScrollbarAuto`,props:{forceMount:{type:Boolean,required:!1}},setup(e){let t=Y(),n=Q(),{forwardRef:r}=P(),i=o(!1),a=h(()=>{if(t.viewport.value){let e=t.viewport.value.offsetWidth<t.viewport.value.scrollWidth,r=t.viewport.value.offsetHeight<t.viewport.value.scrollHeight;i.value=n.isHorizontal.value?e:r}},10);return I(()=>a()),F(t.viewport,a),F(t.content,a),(e,t)=>(O(),w(b(be),{present:e.forceMount||i.value},{default:d(()=>[N(ct,V(e.$attrs,{ref:b(r),"data-state":i.value?`visible`:`hidden`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),tt=z({inheritAttrs:!1,__name:`ScrollAreaScrollbarGlimpse`,props:{forceMount:{type:Boolean,required:!1}},setup(e){let t=Y(),n=Q(),{forwardRef:i}=P(),{state:a,dispatch:o}=Pe(`hidden`,{hidden:{POINTER_ENTER:`glimpse`,SCROLL:`scrolling`},glimpse:{HIDE:`hidden`,POINTER_LEAVE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`glimpse`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}}),s=S(()=>a.value!==`hidden`);function c(){o(`POINTER_ENTER`)}function l(){o(`POINTER_LEAVE`)}let u=h(()=>o(`SCROLL_END`),100);return r(e=>{if(a.value===`glimpse`){let n=window.setTimeout(o,t.scrollHideDelay.value,`HIDE`);e(()=>{window.clearTimeout(n)})}}),r(e=>{if(a.value===`idle`){let n=window.setTimeout(o,t.scrollHideDelay.value,`HIDE`);e(()=>{window.clearTimeout(n)})}}),r(e=>{let r=t.viewport.value,i=n.isHorizontal.value?`scrollLeft`:`scrollTop`;if(r){let t=r[i],n=()=>{let e=r[i];t!==e&&(o(`SCROLL`),u()),t=e};r.addEventListener(`scroll`,n),e(()=>{r.removeEventListener(`scroll`,n)})}}),I(()=>{let e=t.scrollArea.value;e&&(e.addEventListener(`pointerenter`,c),e.addEventListener(`pointerleave`,l))}),j(()=>{let e=t.scrollArea.value;e&&(e.removeEventListener(`pointerenter`,c),e.removeEventListener(`pointerleave`,l))}),(e,t)=>(O(),w(b(be),{present:e.forceMount||s.value},{default:d(()=>[N(et,V(e.$attrs,{ref:b(i),"data-state":s.value?`visible`:`hidden`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),nt=z({inheritAttrs:!1,__name:`ScrollAreaScrollbarHover`,props:{forceMount:{type:Boolean,required:!1}},setup(e){let t=Y(),{forwardRef:n}=P(),r,i=o(!1);function a(){window.clearTimeout(r),i.value=!0}function s(){r=window.setTimeout(()=>{i.value=!1},t.scrollHideDelay.value)}return I(()=>{let e=t.scrollArea.value;e&&(e.addEventListener(`pointerenter`,a),e.addEventListener(`pointerleave`,s))}),j(()=>{let e=t.scrollArea.value;e&&(window.clearTimeout(r),e.removeEventListener(`pointerenter`,a),e.removeEventListener(`pointerleave`,s))}),(e,t)=>(O(),w(b(be),{present:e.forceMount||i.value},{default:d(()=>[N(et,V(e.$attrs,{ref:b(n),"data-state":i.value?`visible`:`hidden`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),rt=z({__name:`ScrollAreaScrollbarScroll`,props:{forceMount:{type:Boolean,required:!1}},setup(e){let t=Y(),n=Q(),{forwardRef:i}=P(),{state:a,dispatch:o}=Pe(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}}),s=S(()=>a.value!==`hidden`);r(e=>{if(a.value===`idle`){let n=window.setTimeout(o,t.scrollHideDelay.value,`HIDE`);e(()=>{window.clearTimeout(n)})}});let c=h(()=>o(`SCROLL_END`),100);return r(e=>{let r=t.viewport.value,i=n.isHorizontal.value?`scrollLeft`:`scrollTop`;if(r){let t=r[i],n=()=>{let e=r[i];t!==e&&(o(`SCROLL`),c()),t=e};r.addEventListener(`scroll`,n),e(()=>{r.removeEventListener(`scroll`,n)})}}),(e,t)=>(O(),w(b(be),{present:e.forceMount||s.value},{default:d(()=>[N(ct,V(e.$attrs,{ref:b(i),"data-state":s.value?`visible`:`hidden`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`data-state`])]),_:3},8,[`present`]))}}),[Q,it]=G(`ScrollAreaScrollbar`),at=z({inheritAttrs:!1,__name:`ScrollAreaScrollbar`,props:{orientation:{type:String,required:!1,default:`vertical`},forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`div`}},setup(e){let t=e,{forwardRef:n}=P(),r=Y(),i=S(()=>t.orientation===`horizontal`);g(i,()=>{i.value?r.onScrollbarXEnabledChange(!0):r.onScrollbarYEnabledChange(!0)},{immediate:!0}),j(()=>{r.onScrollbarXEnabledChange(!1),r.onScrollbarYEnabledChange(!1)});let{orientation:a,forceMount:o,asChild:s,as:c}=v(t);return it({orientation:a,forceMount:o,isHorizontal:i,as:c,asChild:s}),(e,t)=>b(r).type.value===`hover`?(O(),w(nt,V({key:0},e.$attrs,{ref:b(n),"force-mount":b(o)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`force-mount`])):b(r).type.value===`scroll`?(O(),w(rt,V({key:1},e.$attrs,{ref:b(n),"force-mount":b(o)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`force-mount`])):b(r).type.value===`glimpse`?(O(),w(tt,V({key:2},e.$attrs,{ref:b(n),"force-mount":b(o)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`force-mount`])):b(r).type.value===`auto`?(O(),w(et,V({key:3},e.$attrs,{ref:b(n),"force-mount":b(o)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`force-mount`])):b(r).type.value===`always`?(O(),w(ct,V({key:4},e.$attrs,{ref:b(n),"data-state":`visible`}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16)):f(`v-if`,!0)}}),[ot,st]=G(`ScrollAreaScrollbarVisible`),ct=z({__name:`ScrollAreaScrollbarVisible`,setup(e){let t=Y(),n=Q(),{forwardRef:r}=P(),i=o({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),a=S(()=>{let e=qe(i.value.viewport,i.value.content);return e>0&&e<1}),s=o(),c=o(0);function l(e,n){if(h.value){let r=t.viewport.value.scrollLeft+e.deltaY;t.viewport.value.scrollLeft=r,Ze(r,n)&&e.preventDefault()}else{let r=t.viewport.value.scrollTop+e.deltaY;t.viewport.value.scrollTop=r,Ze(r,n)&&e.preventDefault()}}function u(e,t){h.value?c.value=t.x:c.value=t.y}function f(e){c.value=0}function p(e){i.value=e}function m(e,t){return Xe(e,c.value,i.value,t)}let h=S(()=>n.isHorizontal.value);function g(e){h.value?t.viewport.value.scrollLeft=m(e,t.dir.value):t.viewport.value.scrollTop=m(e)}function _(){if(h.value){if(t.viewport.value&&s.value){let e=t.viewport.value.scrollLeft,n=Ye(e,i.value,t.dir.value);s.value.style.transform=`translate3d(${n}px, 0, 0)`}}else if(t.viewport.value&&s.value){let e=t.viewport.value.scrollTop,n=Ye(e,i.value);s.value.style.transform=`translate3d(0, ${n}px, 0)`}}function v(e){s.value=e}return st({sizes:i,hasThumb:a,handleWheelScroll:l,handleThumbDown:u,handleThumbUp:f,handleSizeChange:p,onThumbPositionChange:_,onThumbChange:v,onDragScroll:g}),(e,t)=>h.value?(O(),w(Qe,V({key:0},e.$attrs,{ref:b(r)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16)):(O(),w($e,V({key:1},e.$attrs,{ref:b(r)}),{default:d(()=>[H(e.$slots,`default`)]),_:3},16))}}),lt=z({__name:`ScrollAreaScrollbarImpl`,props:{isHorizontal:{type:Boolean,required:!0}},emits:[`onDragScroll`,`onWheelScroll`,`onThumbPointerDown`],setup(e,{emit:t}){let n=e,r=t,i=Y(),a=ot(),s=Q(),{forwardRef:c,currentElement:l}=P(),u=o(``),f=o();function p(e){f.value&&r(`onDragScroll`,{x:e.clientX-f.value?.left,y:e.clientY-f.value?.top})}function m(e){e.button===0&&(e.target.setPointerCapture(e.pointerId),f.value=l.value.getBoundingClientRect(),u.value=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,i.viewport&&(i.viewport.value.style.scrollBehavior=`auto`),p(e))}function h(e){p(e)}function g(e){let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=u.value,i.viewport&&(i.viewport.value.style.scrollBehavior=``),f.value=void 0}function _(e){let t=e.target,n=l.value?.contains(t),r=a.sizes.value.content-a.sizes.value.viewport;n&&a.handleWheelScroll(e,r)}I(()=>{document.addEventListener(`wheel`,_,{passive:!1})}),j(()=>{document.removeEventListener(`wheel`,_)});function v(){l.value&&(n.isHorizontal?a.handleSizeChange({content:i.viewport.value?.scrollWidth??0,viewport:i.viewport.value?.offsetWidth??0,scrollbar:{size:l.value.clientWidth??0,paddingStart:Z(getComputedStyle(l.value).paddingLeft),paddingEnd:Z(getComputedStyle(l.value).paddingRight)}}):a.handleSizeChange({content:i.viewport.value?.scrollHeight??0,viewport:i.viewport.value?.offsetHeight??0,scrollbar:{size:l.value?.clientHeight??0,paddingStart:Z(getComputedStyle(l.value).paddingTop),paddingEnd:Z(getComputedStyle(l.value).paddingBottom)}}),a.onThumbPositionChange())}return F(l,v),F(i.content,v),(e,t)=>(O(),w(b(k),{ref:b(c),style:{position:`absolute`},"data-scrollbarimpl":``,as:b(s).as.value,"as-child":b(s).asChild.value,onPointerdown:m,onPointermove:h,onPointerup:g},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`as`,`as-child`]))}}),ut=z({__name:`ScrollAreaThumb`,props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,r=Y(),i=ot();function a(e){let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;i.handleThumbDown(e,{x:n,y:r})}function s(e){i.handleThumbUp(e)}let{forwardRef:c,currentElement:l}=P(),u=o(),f=S(()=>r.viewport.value);function p(){u.value||(u.value=Je(f.value,i.onThumbPositionChange),i.onThumbPositionChange())}return n(S(()=>i.sizes.value),()=>{i.onThumbChange(l.value),f.value&&(i.onThumbPositionChange(),f.value.addEventListener(`scroll`,p))}),j(()=>{f.value.removeEventListener(`scroll`,p),r.viewport.value?.removeEventListener(`scroll`,p)}),(e,n)=>(O(),w(b(k),{ref:b(c),"data-state":b(i).hasThumb?`visible`:`hidden`,style:{width:`var(--reka-scroll-area-thumb-width)`,height:`var(--reka-scroll-area-thumb-height)`},"as-child":t.asChild,as:e.as,onPointerdown:a,onPointerup:s},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`data-state`,`as-child`,`as`]))}}),dt=z({inheritAttrs:!1,__name:`ScrollAreaViewport`,props:{nonce:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(t,{expose:n}){let r=t,{nonce:i}=v(r),a=xe(i),c=Y(),l=o();I(()=>{c.onViewportChange(l.value),c.onContentChange(f.value)}),n({viewportElement:l});let{forwardRef:u,currentElement:f}=P();return(t,n)=>(O(),e(L,null,[x(`div`,V({ref_key:`viewportElement`,ref:l,"data-reka-scroll-area-viewport":``,style:{overflowX:b(c).scrollbarXEnabled.value?`scroll`:`hidden`,overflowY:b(c).scrollbarYEnabled.value?`scroll`:`hidden`}},t.$attrs,{tabindex:0}),[N(b(k),{ref:b(u),style:s({minWidth:b(c).scrollbarXEnabled.value?`fit-content`:void 0}),"as-child":r.asChild,as:t.as},{default:d(()=>[H(t.$slots,`default`)]),_:3},8,[`style`,`as-child`,`as`])],16),N(b(k),{as:`style`,nonce:b(a)},{default:d(()=>n[0]||=[B(` /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-scroll-area-viewport] { scrollbar-width:none; -ms-overflow-style:none; -webkit-overflow-scrolling:touch; } [data-reka-scroll-area-viewport]::-webkit-scrollbar { display:none; } `)]),_:1,__:[0]},8,[`nonce`])],64))}}),ft=z({__name:`BaseSeparator`,props:{orientation:{type:String,required:!1,default:`horizontal`},decorative:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e,n=[`horizontal`,`vertical`];function r(e){return n.includes(e)}let i=S(()=>r(t.orientation)?t.orientation:`horizontal`),a=S(()=>i.value===`vertical`?t.orientation:void 0),o=S(()=>t.decorative?{role:`none`}:{"aria-orientation":a.value,role:`separator`});return(e,t)=>(O(),w(b(k),V({as:e.as,"as-child":e.asChild,"data-orientation":i.value},o.value),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`data-orientation`]))}}),pt=z({__name:`Separator`,props:{orientation:{type:String,required:!1,default:`horizontal`},decorative:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let t=e;return(e,n)=>(O(),w(ft,re(ee(t)),{default:d(()=>[H(e.$slots,`default`)]),_:3},16))}}),[mt,ht]=G(`TabsRoot`),gt=z({__name:`TabsRoot`,props:{defaultValue:{type:null,required:!1},orientation:{type:String,required:!1,default:`horizontal`},dir:{type:String,required:!1},activationMode:{type:String,required:!1,default:`automatic`},modelValue:{type:null,required:!1},unmountOnHide:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,{orientation:i,unmountOnHide:a,dir:s}=v(n),c=Ce(s);P();let l=A(n,`modelValue`,r,{defaultValue:n.defaultValue,passive:n.modelValue===void 0}),u=o(),f=m(new Set);return ht({modelValue:l,changeModelValue:e=>{l.value=e},orientation:i,dir:c,unmountOnHide:a,activationMode:n.activationMode,baseId:ve(void 0,`reka-tabs`),tabsList:u,contentIds:f,registerContent:e=>{f.value=new Set([...f.value,e])},unregisterContent:e=>{let t=new Set(f.value);t.delete(e),f.value=t}}),(e,t)=>(O(),w(b(k),{dir:b(c),"data-orientation":b(i),"as-child":e.asChild,as:e.as},{default:d(()=>[H(e.$slots,`default`,{modelValue:b(l)})]),_:3},8,[`dir`,`data-orientation`,`as-child`,`as`]))}});function _t(e,t){return`${e}-trigger-${t}`}function vt(e,t){return`${e}-content-${t}`}var yt=z({__name:`TabsList`,props:{loop:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){let{loop:t}=v(e),{forwardRef:n,currentElement:r}=P(),i=mt();return i.tabsList=r,(e,r)=>(O(),w(b(he),{"as-child":``,orientation:b(i).orientation.value,dir:b(i).dir.value,loop:b(t)},{default:d(()=>[N(b(k),{ref:b(n),role:`tablist`,"as-child":e.asChild,as:e.as,"aria-orientation":b(i).orientation.value},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`as-child`,`as`,`aria-orientation`])]),_:3},8,[`orientation`,`dir`,`loop`]))}}),bt=z({__name:`TabsTrigger`,props:{value:{type:[String,Number],required:!0},disabled:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:`button`}},setup(e){let t=e,{forwardRef:n}=P(),r=mt(),a=S(()=>_t(r.baseId,t.value)),o=S(()=>r.contentIds.value.has(t.value)?vt(r.baseId,t.value):void 0),s=S(()=>t.value===r.modelValue.value);return(e,t)=>(O(),w(b(ge),{"as-child":``,focusable:!e.disabled,active:s.value},{default:d(()=>[N(b(k),{id:a.value,ref:b(n),role:`tab`,type:e.as===`button`?`button`:void 0,as:e.as,"as-child":e.asChild,"aria-selected":s.value?`true`:`false`,"aria-controls":o.value,"data-state":s.value?`active`:`inactive`,disabled:e.disabled,"data-disabled":e.disabled?``:void 0,"data-orientation":b(r).orientation.value,onMousedown:t[0]||=c(t=>{!e.disabled&&t.ctrlKey===!1?b(r).changeModelValue(e.value):t.preventDefault()},[`left`]),onKeydown:t[1]||=i(t=>b(r).changeModelValue(e.value),[`enter`,`space`]),onFocus:t[2]||=()=>{let t=b(r).activationMode!==`manual`;!s.value&&!e.disabled&&t&&b(r).changeModelValue(e.value)}},{default:d(()=>[H(e.$slots,`default`)]),_:3},8,[`id`,`type`,`as`,`as-child`,`aria-selected`,`aria-controls`,`data-state`,`disabled`,`data-disabled`,`data-orientation`])]),_:3},8,[`focusable`,`active`]))}}),xt=z({__name:`Separator`,props:{orientation:{default:`horizontal`},decorative:{type:Boolean,default:!0},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e,n=U(t,`class`);return(e,r)=>(O(),w(b(pt),V({"data-slot":`separator`},b(n),{class:b(R)(`shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px data-[orientation=vertical]:self-stretch`,t.class)}),null,16,[`class`]))}}),St=z({__name:`Tabs`,props:{defaultValue:{},orientation:{},dir:{},activationMode:{},modelValue:{},unmountOnHide:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=t,i=Se(U(n,`class`),r);return(e,t)=>(O(),w(b(gt),V({"data-slot":`tabs`,"data-orientation":b(i).orientation||`horizontal`},b(i),{class:b(R)(`gap-2 group/tabs flex data-[orientation=horizontal]:flex-col`,n.class)}),{default:d(t=>[H(e.$slots,`default`,re(ee(t)))]),_:3},16,[`data-orientation`,`class`]))}}),Ct=z({__name:`TabsList`,props:{loop:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]},variant:{default:`default`}},setup(e){let t=e,n=U(t,`class`,`variant`);return(r,i)=>(O(),w(b(yt),V({"data-slot":`tabs-list`,"data-variant":e.variant},b(n),{class:b(R)(`rounded-lg p-[3px] group-data-[orientation=horizontal]/tabs:h-8 data-[variant=line]:rounded-none group/tabs-list inline-flex w-fit items-center justify-center text-muted-foreground group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col`,e.variant===`default`&&`bg-muted`,e.variant===`line`&&`gap-1 bg-transparent`,t.class)}),{default:d(()=>[H(r.$slots,`default`)]),_:3},16,[`data-variant`,`class`]))}}),wt=z({__name:`TabsTrigger`,props:{value:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e,n=ye(U(t,`class`));return(e,r)=>(O(),w(b(bt),V({"data-slot":`tabs-trigger`,class:b(R)(`gap-1.5 rounded-md border border-transparent px-1.5 py-0.5 text-sm font-medium group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none [&_svg:not([class*=size-])]:size-4 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center whitespace-nowrap text-foreground/60 transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 dark:text-muted-foreground dark:hover:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0`,`group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent`,`data-[state=active]:bg-background data-[state=active]:text-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 dark:data-[state=active]:text-foreground`,`after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100`,t.class)},b(n)),{default:d(()=>[H(e.$slots,`default`)]),_:3},16,[`class`]))}}),Tt=z({__name:`Textarea`,props:{class:{type:[Boolean,null,String,Object,Array]},defaultValue:{},modelValue:{}},emits:[`update:modelValue`],setup(t,{emit:n}){let r=t,i=A(r,`modelValue`,n,{passive:!0,defaultValue:r.defaultValue});return(t,n)=>ne((O(),e(`textarea`,{"onUpdate:modelValue":n[0]||=e=>u(i)?i.value=e:null,"data-slot":`textarea`,class:l(b(R)(`border-input dark:bg-input/30 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-input/50 dark:disabled:bg-input/80 rounded-lg border bg-transparent px-2.5 py-2 text-base transition-colors focus-visible:ring-3 aria-invalid:ring-3 md:text-sm flex field-sizing-content min-h-16 w-full outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50`,r.class))},null,2)),[[y,b(i)]])}}),Et={class:`flex items-center gap-2`},Dt={key:0,class:`rounded-lg border border-success/20 bg-success/5 px-3 py-2.5 flex items-start gap-2.5`},Ot={class:`flex h-5 w-5 shrink-0 items-center justify-center rounded-full bg-success/10 mt-0.5`},kt={class:`text-sm text-success-foreground leading-relaxed`},At={class:`space-y-4`},jt={class:`space-y-3`},Mt={class:`rounded-lg border bg-muted/30 p-3 space-y-3`},Nt={class:`text-xs font-medium text-muted-foreground uppercase tracking-wide`},Pt={class:`grid grid-cols-2 gap-3`},Ft={class:`rounded-lg border bg-muted/30 p-3 space-y-3`},It={class:`text-xs font-medium text-muted-foreground uppercase tracking-wide`},Lt={class:`grid grid-cols-2 gap-3`},Rt={key:0},zt={class:`flex items-center gap-2.5 pt-1`},Bt=100,Vt=599,Ht=100,Ut=100,Wt=z({__name:`AiRulePreviewDialog`,props:{open:{type:Boolean},rule:{},summary:{}},emits:[`update:open`,`saved`],setup(n,{emit:r}){let{t:i}=_(),a=n,s=r;function c(){return{name:``,status_code:429,body_pattern:``,retry_strategy:`exponential`,retry_delay_ms:5e3,max_retries:10,max_delay_ms:6e4,is_active:!0}}let l=o(c());g([()=>a.open,()=>a.rule],([e,t])=>{e&&t&&(l.value={...t,is_active:!0},u.value=!1)},{immediate:!0});let u=o(!1);async function p(){if(u.value)return;let e=[];l.value.name.trim()||e.push(i(`retryRules.messages.nameRequired`));let n=l.value.status_code;(typeof n!=`number`||isNaN(n)||n<Bt||n>Vt)&&e.push(i(`retryRules.messages.statusCodeRange`));try{new RegExp(l.value.body_pattern)}catch{e.push(i(`retryRules.messages.bodyPatternInvalid`))}l.value.body_pattern.trim()||e.push(i(`retryRules.messages.bodyPatternInvalid`));let r=l.value.retry_delay_ms;(typeof r!=`number`||isNaN(r)||r<Ht)&&e.push(i(`retryRules.messages.delayMin`));let a=l.value.max_retries;(typeof a!=`number`||isNaN(a)||a<0||a>Ut)&&e.push(i(`retryRules.messages.retriesRange`));let o=l.value.max_delay_ms;if(l.value.retry_strategy===`exponential`&&(typeof o!=`number`||isNaN(o)||o<Ht)&&e.push(i(`retryRules.messages.delayMin`)),e.length>0){K.error(e.join(`; `));return}u.value=!0;try{await te.createRetryRule({name:l.value.name,status_code:Number(l.value.status_code),body_pattern:l.value.body_pattern,is_active:+!!l.value.is_active,retry_strategy:l.value.retry_strategy,retry_delay_ms:Number(l.value.retry_delay_ms),max_retries:Number(l.value.max_retries),max_delay_ms:l.value.retry_strategy===`exponential`?Number(l.value.max_delay_ms):void 0}),K.success(i(`retryRules.messages.saveCompleted`)),s(`saved`),s(`update:open`,!1)}catch(e){console.error(`AiRulePreviewDialog.handleSave:`,e),K.error(t(e,i(`retryRules.messages.saveFailed`)))}finally{u.value=!1}}return(t,r)=>(O(),w(b(fe),{open:n.open,"onUpdate:open":r[9]||=e=>s(`update:open`,e)},{default:d(()=>[N(b(le),{class:`sm:max-w-xl`},{default:d(()=>[N(b(de),{class:`gap-1.5`},{default:d(()=>[x(`div`,Et,[N(b(ae),{class:`h-4 w-4 text-primary shrink-0`}),N(b(me),null,{default:d(()=>[B(C(b(i)(`logs.aiGeneratedRule`)),1)]),_:1})]),N(b(q),{variant:`secondary`,class:`w-fit text-[10px]`},{default:d(()=>[B(C(b(i)(`logs.aiGenerated`)),1)]),_:1})]),_:1}),n.summary?(O(),e(`div`,Dt,[x(`div`,Ot,[N(b(Ee),{class:`h-3 w-3 text-success`})]),x(`p`,kt,C(n.summary),1)])):f(``,!0),x(`div`,At,[x(`div`,jt,[x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.name`)),1)]),_:1}),N(b(J),{modelValue:l.value.name,"onUpdate:modelValue":r[0]||=e=>l.value.name=e,type:`text`,class:`mt-1`},null,8,[`modelValue`])])]),x(`div`,Mt,[x(`p`,Nt,C(b(i)(`logs.matchConditions`)),1),x(`div`,Pt,[x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.statusCode`)),1)]),_:1}),N(b(J),{modelValue:l.value.status_code,"onUpdate:modelValue":r[1]||=e=>l.value.status_code=e,modelModifiers:{number:!0},type:`number`,class:`mt-1`},null,8,[`modelValue`])]),x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.retryStrategy`)),1)]),_:1}),N(b(Te),{modelValue:l.value.retry_strategy,"onUpdate:modelValue":r[2]||=e=>l.value.retry_strategy=e},{default:d(()=>[N(b(Ae),{class:`mt-1`},{default:d(()=>[N(b(je))]),_:1}),N(b(Oe),null,{default:d(()=>[N(b(ke),{value:`exponential`},{default:d(()=>[B(C(b(i)(`retryRules.strategy.exponential`)),1)]),_:1}),N(b(ke),{value:`fixed`},{default:d(()=>[B(C(b(i)(`retryRules.strategy.fixed`)),1)]),_:1})]),_:1})]),_:1},8,[`modelValue`])])]),x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.bodyPattern`)),1)]),_:1}),N(b(Tt),{modelValue:l.value.body_pattern,"onUpdate:modelValue":r[3]||=e=>l.value.body_pattern=e,class:`font-mono mt-1`,rows:2},null,8,[`modelValue`])])]),x(`div`,Ft,[x(`p`,It,C(b(i)(`logs.retryParams`)),1),x(`div`,Lt,[x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(l.value.retry_strategy===`fixed`?b(i)(`retryRules.dialog.intervalMs`):b(i)(`retryRules.dialog.initialDelayMs`)),1)]),_:1}),N(b(J),{modelValue:l.value.retry_delay_ms,"onUpdate:modelValue":r[4]||=e=>l.value.retry_delay_ms=e,modelModifiers:{number:!0},type:`number`,class:`mt-1`},null,8,[`modelValue`])]),x(`div`,null,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.maxRetries`)),1)]),_:1}),N(b(J),{modelValue:l.value.max_retries,"onUpdate:modelValue":r[5]||=e=>l.value.max_retries=e,modelModifiers:{number:!0},type:`number`,class:`mt-1`},null,8,[`modelValue`])])]),l.value.retry_strategy===`exponential`?(O(),e(`div`,Rt,[N(b(W),{class:`text-xs text-muted-foreground font-medium`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.maxDelayMs`)),1)]),_:1}),N(b(J),{modelValue:l.value.max_delay_ms,"onUpdate:modelValue":r[6]||=e=>l.value.max_delay_ms=e,modelModifiers:{number:!0},type:`number`,class:`mt-1`},null,8,[`modelValue`])])):f(``,!0)]),x(`div`,zt,[N(b(_e),{checked:l.value.is_active,"onUpdate:checked":r[7]||=e=>l.value.is_active=e,id:`rule-active`},null,8,[`checked`]),N(b(W),{for:`rule-active`,class:`text-sm text-foreground cursor-pointer`},{default:d(()=>[B(C(b(i)(`retryRules.dialog.enable`)),1)]),_:1})])]),N(b(pe),{class:`border-t pt-4 mt-2`},{default:d(()=>[N(b(M),{variant:`outline`,onClick:r[8]||=e=>s(`update:open`,!1)},{default:d(()=>[B(C(b(i)(`common.cancel`)),1)]),_:1}),N(b(M),{disabled:u.value,onClick:p},{default:d(()=>[B(C(b(i)(`logs.saveRule`)),1)]),_:1},8,[`disabled`])]),_:1})]),_:1})]),_:1},8,[`open`]))}}),$=1e3;function Gt(e,t){let n=e.attempts.length>0?e.attempts[e.attempts.length-1]:void 0,r=e.streamMetrics,i=r?.tokensPerSecond??null;if(!i&&r&&r.outputTokens&&r.ttftMs&&e.completedAt){let t=(e.completedAt-e.startTime-r.ttftMs)/$;t>0&&(i=r.outputTokens/t)}return{id:e.id,model:e.model,backendModel:null,originalModel:null,statusCode:e.status===`completed`?n?.statusCode??null:null,isStream:e.isStream,apiType:e.apiType,providerName:e.providerName,clientIp:e.clientIp,sessionId:e.sessionId??null,latencyMs:e.completedAt?e.completedAt-e.startTime:null,ttftMs:r?.ttftMs??null,inputTokens:r?.inputTokens??null,outputTokens:r?.outputTokens??null,tokensPerSecond:i,cacheReadTokens:r?.cacheReadTokens??null,cacheWriteTokens:null,stopReason:r?.stopReason??null,isComplete:r?.isComplete??!1,attempts:e.attempts.map(e=>({statusCode:e.statusCode,error:e.error,latencyMs:e.latencyMs,providerId:e.providerId})),status:e.status,clientRequest:e.clientRequest??null,upstreamRequest:e.upstreamRequest??null,responseBody:t??null,upstreamResponse:null,errorMessage:null,createdAt:null,inputTokensEstimated:!1,clientType:null,cacheReadTokensEstimated:r?.cacheReadTokensEstimated??null,mappingReason:e.mappingReason}}function Kt(e){if(!e)return null;try{let t=JSON.parse(e);return typeof t.statusCode==`number`&&t.headers&&!t.content&&!t.choices?typeof t.body==`string`?t.body:null:e}catch{return e}}var qt=[`stream_error: upstream returned 200 but body contains error`],Jt=new Set([`direct_format`,`group_base_rule`,`group_schedule`,`fallback_provider`,`overflow_redirect`,`failover_retry`]);function Yt(e){if(e)try{let t=JSON.parse(e),n=Array.isArray(t)?t:[];if(n.length===0)return;for(let e of n)if(e.stage===`overflow`&&e.triggered===!0)return`overflow_redirect`;for(let e of n)if(e.stage===`routing`&&typeof e.mapping_reason==`string`)return Jt.has(e.mapping_reason)?e.mapping_reason:void 0;return}catch{return}}function Xt(e){return e?qt.some(t=>e.startsWith(t)):!1}function Zt(e){let t=e.input_tokens??null,n=e.output_tokens??null,r=e.ttft_ms??null,i=e.tokens_per_second??null;if(!i&&n&&r&&e.latency_ms){let t=(e.latency_ms-r)/$;t>0&&(i=n/t)}let a=Kt(e.upstream_response)??e.stream_text_content??null;return{id:e.id,model:e.original_model??e.model??`unknown`,backendModel:e.backend_model,originalModel:e.original_model,statusCode:e.status_code,isStream:!!e.is_stream,apiType:e.api_type===`openai`||e.api_type===`anthropic`?e.api_type:`openai`,providerName:e.provider_name,clientIp:void 0,sessionId:e.session_id??null,latencyMs:e.latency_ms,ttftMs:r,inputTokens:t,outputTokens:n,tokensPerSecond:i,cacheReadTokens:e.cache_read_tokens??null,cacheWriteTokens:null,stopReason:e.stop_reason??null,isComplete:!!e.metrics_complete,attempts:[],status:(e.status_code??0)>=400?`failed`:`completed`,clientRequest:e.client_request,upstreamRequest:e.upstream_request,responseBody:a,upstreamResponse:e.upstream_response,errorMessage:Xt(e.error_message)?null:e.error_message,createdAt:e.created_at,inputTokensEstimated:e.input_tokens_estimated===1,clientType:e.client_type??null,cacheReadTokensEstimated:e.cache_read_tokens_estimated??null,mappingReason:Yt(e.pipeline_snapshot)}}var Qt=z({__name:`ScrollBar`,props:{orientation:{default:`vertical`},forceMount:{type:Boolean},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e,n=U(t,`class`);return(r,i)=>(O(),w(b(at),V({"data-slot":`scroll-area-scrollbar`,"data-orientation":e.orientation},b(n),{class:b(R)(`data-[orientation=horizontal]:h-2.5 data-[orientation=horizontal]:flex-col data-[orientation=horizontal]:border-t data-[orientation=horizontal]:border-t-transparent data-[orientation=vertical]:h-full data-[orientation=vertical]:w-2.5 data-[orientation=vertical]:border-l data-[orientation=vertical]:border-l-transparent flex touch-none p-px transition-colors select-none`,t.class)}),{default:d(()=>[N(b(ut),{"data-slot":`scroll-area-thumb`,class:`rounded-full relative flex-1 bg-border`})]),_:1},16,[`data-orientation`,`class`]))}}),$t=z({__name:`ScrollArea`,props:{type:{},dir:{},scrollHideDelay:{},asChild:{type:Boolean},as:{},class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e,n=U(t,`class`);return(e,r)=>(O(),w(b(Ue),V({"data-slot":`scroll-area`},b(n),{class:b(R)(`relative`,t.class)}),{default:d(()=>[N(b(dt),{"data-slot":`scroll-area-viewport`,class:`size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1`},{default:d(()=>[H(e.$slots,`default`)]),_:3}),N(Qt),N(b(Ge))]),_:3},16,[`class`]))}});function en(e,t){if(!e)return t||``;try{let n=JSON.parse(e);return typeof n.statusCode==`number`&&(n.headers||n.body!==void 0)?n.body===null&&t?JSON.stringify({...n,body:t},null,tn):JSON.stringify(n,null,tn):e}catch{return e}}var tn=2,nn=new Set([`choices`,`content`]);function rn(e,t){if(!e&&!t)return``;let n=an(e),r=n?.headers,i=n?.body??t;if(r){let e={headers:r};return i&&(e.body=on(i)),JSON.stringify(e,null,tn)}if(i){let e=on(i);return JSON.stringify(e,null,tn)}return``}function an(e){if(!e)return null;try{let t=JSON.parse(e);return typeof t.statusCode==`number`&&(t.headers||t.body!==void 0)?{headers:t.headers??{},body:typeof t.body==`string`?t.body:t.body==null?null:JSON.stringify(t.body)}:null}catch{return null}}function on(e){try{let t=JSON.parse(e);if(typeof t==`object`&&t){let e={};for(let[n,r]of Object.entries(t))nn.has(n)||(e[n]=r);return e}return e}catch{return e}}var sn={class:`space-y-3`},cn={class:`flex items-center justify-between`},ln={class:`text-xs font-medium text-muted-foreground`},un={class:`p-3 text-[11px] whitespace-pre-wrap break-words`},dn={class:`flex items-baseline gap-1 min-w-0`},fn={class:`font-mono text-[11px] font-semibold truncate min-w-0`},pn={class:`text-[10px] text-muted-foreground flex-shrink-0`},mn={key:0,class:`flex items-center gap-1.5`},hn={class:`flex items-center gap-1.5`},gn={key:1,class:`flex items-center gap-1.5`},_n={class:`font-mono text-[11px] text-muted-foreground truncate`},vn={class:`grid grid-cols-2 gap-1.5`},yn={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},bn={class:`text-[10px] text-muted-foreground`},xn={class:`text-sm font-semibold truncate`},Sn={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},Cn={class:`text-[10px] text-muted-foreground`},wn={class:`text-sm font-semibold truncate`},Tn={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},En={class:`text-[10px] text-muted-foreground`},Dn={class:`text-sm font-semibold truncate`},On={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},kn={class:`text-[10px] text-muted-foreground`},An={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},jn={class:`text-[10px] text-muted-foreground`},Mn={class:`text-sm font-semibold truncate`},Nn={class:`bg-muted/50 rounded-md px-2 py-1.5 min-w-0`},Pn={class:`text-[10px] text-muted-foreground`},Fn={class:`text-sm font-semibold truncate`},In={key:2,class:`rounded-md px-2 py-1.5 bg-muted/50`},Ln={class:`text-[10px] text-muted-foreground`},Rn={key:0,class:`text-[11px] font-semibold text-success-dark`},zn={key:1,class:`text-[11px] font-semibold text-warning-dark`},Bn={class:`space-y-1.5`},Vn={class:`text-[10px] text-muted-foreground uppercase tracking-wider`},Hn={key:0,class:`text-[11px] text-muted-foreground`},Un={class:`text-muted-foreground`},Wn={class:`text-muted-foreground`},Gn={class:`space-y-1`},Kn={key:0,class:`flex items-center justify-between text-[11px]`},qn={class:`text-muted-foreground`},Jn={class:`font-mono`},Yn={key:1,class:`flex items-center justify-between text-[11px]`},Xn={class:`text-muted-foreground`},Zn={class:`font-mono`},Qn={key:2,class:`flex items-center justify-between text-[11px]`},$n={class:`text-muted-foreground`},er={class:`font-mono truncate max-w-[160px]`},tr=2,nr=z({__name:`RequestOverviewPanel`,props:{overview:{}},setup(t){let{t:n}=_(),r=t,i=o(!1),a=S(()=>{let e=r.overview.clientType;return e===`claude-code`?`Claude Code`:e===`codex`?`Codex CLI`:e===`pi`?`Pi`:e===`openai-sdk`?`OpenAI SDK`:e===`anthropic-sdk`?`Anthropic SDK`:e??`Unknown`}),s=S(()=>rn(r.overview.upstreamResponse,r.overview.responseBody)||JSON.stringify({latencyMs:r.overview.latencyMs,ttftMs:r.overview.ttftMs,inputTokens:r.overview.inputTokens,outputTokens:r.overview.outputTokens,tokensPerSecond:r.overview.tokensPerSecond,cacheReadTokens:r.overview.cacheReadTokens,cacheWriteTokens:r.overview.cacheWriteTokens,stopReason:r.overview.stopReason,statusCode:r.overview.statusCode},null,tr)),c=S(()=>{if(r.overview.status===`pending`)return`pending`;let e=r.overview.statusCode;return r.overview.status===`failed`||e!=null&&e>=400?`error`:`success`}),u=S(()=>r.overview.status===`pending`&&r.overview.outputTokens!=null),p=S(()=>{let e=r.overview.outputTokens;return e==null?`--`:u.value?`+${e}`:`${e}`}),m=S(()=>r.overview.status===`pending`&&r.overview.latencyMs==null?`...`:r.overview.latencyMs==null?`--`:`${(r.overview.latencyMs/$).toFixed(1)}s`),h=S(()=>{if(r.overview.tokensPerSecond!=null)return`${r.overview.tokensPerSecond.toFixed(1)}`;let{outputTokens:e,latencyMs:t}=r.overview;return e&&t?`${(e/t*$).toFixed(1)}`:`--`});function g(e){return e!=null&&e>=400}return(r,o)=>(O(),e(`div`,sn,[x(`div`,cn,[x(`span`,ln,C(b(n)(`requestDetail.overviewTitle`)),1),N(b(M),{size:`sm`,variant:`outline`,class:`h-6 gap-1 text-xs`,onClick:o[0]||=e=>i.value=!i.value},{default:d(()=>[(O(),w(E(i.value?b(Ne):b(ze)),{class:`h-3 w-3`})),B(` `+C(i.value?b(n)(`requestDetail.structured`):b(n)(`requestDetail.rawData`)),1)]),_:1})]),i.value?(O(),w(b($t),{key:0,class:`rounded-md border flex-1`},{default:d(()=>[x(`pre`,un,C(s.value),1)]),_:1})):f(``,!0),i.value?f(``,!0):(O(),e(L,{key:1},[x(`div`,dn,[x(`span`,fn,C(t.overview.model),1),x(`span`,pn,`@ `+C(t.overview.providerName||b(n)(`requestDetail.unknownProvider`)),1)]),t.overview.mappingReason?(O(),e(`div`,mn,[N(b(q),{variant:`secondary`,class:`text-[10px]`},{default:d(()=>[B(C(b(n)(`requestDetail.mappingReason.${t.overview.mappingReason}`)),1)]),_:1})])):f(``,!0),x(`div`,hn,[c.value===`pending`?(O(),w(b(q),{key:0,variant:`outline`,class:`border-warning/30 bg-warning-light text-warning-dark`},{default:d(()=>[o[1]||=x(`span`,{class:`w-1.5 h-1.5 rounded-full bg-warning animate-pulse`},null,-1),B(` `+C(b(n)(`requestDetail.pending`)),1)]),_:1})):c.value===`error`?(O(),w(b(q),{key:1,variant:`outline`,class:`border-danger/30 bg-danger-light text-danger-dark`},{default:d(()=>[B(C(t.overview.statusCode??b(n)(`requestDetail.failed`)),1)]),_:1})):(O(),w(b(q),{key:2,variant:`outline`,class:`border-success/30 bg-success-light text-success-dark`},{default:d(()=>[o[2]||=x(`span`,{class:`w-1.5 h-1.5 rounded-full bg-success`},null,-1),B(` `+C(b(n)(`requestDetail.completed`)),1)]),_:1})),N(b(q),{variant:`outline`},{default:d(()=>[B(C(t.overview.isStream?`SSE`:b(n)(`requestDetail.nonStream`)),1)]),_:1}),N(b(q),{variant:`outline`},{default:d(()=>[B(C(t.overview.apiType),1)]),_:1})]),t.overview.sessionId?(O(),e(`div`,gn,[N(b(q),{variant:`secondary`,class:`text-[10px]`},{default:d(()=>[...o[3]||=[B(`Session`,-1)]]),_:1}),x(`span`,_n,C(t.overview.sessionId.slice(0,8)),1)])):f(``,!0),x(`div`,vn,[x(`div`,yn,[x(`div`,bn,C(b(n)(`requestDetail.latency`)),1),x(`div`,xn,C(m.value),1)]),x(`div`,Sn,[x(`div`,Cn,C(b(n)(`requestDetail.ttft`)),1),x(`div`,wn,C(t.overview.ttftMs==null?`--`:`${t.overview.ttftMs}ms`),1)]),x(`div`,Tn,[x(`div`,En,C(t.overview.inputTokensEstimated?b(n)(`requestDetail.estInputTokens`):b(n)(`requestDetail.inputTokens`)),1),x(`div`,Dn,C(t.overview.inputTokens==null?`--`:t.overview.inputTokens),1)]),x(`div`,On,[x(`div`,kn,C(b(n)(`requestDetail.outputTokens`)),1),x(`div`,{class:l([`text-sm font-semibold truncate`,u.value?`diff-added`:``])},C(p.value),3)]),x(`div`,An,[x(`div`,jn,C(b(n)(`requestDetail.speed`)),1),x(`div`,Mn,C(h.value),1)]),x(`div`,Nn,[x(`div`,Pn,C(b(n)(`requestDetail.cacheRead`)),1),x(`div`,Fn,C(t.overview.cacheReadTokens==null?`--`:t.overview.cacheReadTokens),1)])]),t.overview.cacheReadTokens!=null&&t.overview.cacheReadTokens>0?(O(),e(`div`,In,[x(`div`,Ln,C(b(n)(`requestDetail.cacheSource`)),1),t.overview.cacheReadTokensEstimated===0?(O(),e(`div`,Rn,C(b(n)(`requestDetail.cacheSourceApi`)),1)):(O(),e(`div`,zn,C(b(n)(`requestDetail.cacheSourceEstimated`)),1))])):f(``,!0),N(b(xt)),x(`div`,Bn,[x(`span`,Vn,C(b(n)(`requestDetail.attemptHistory`)),1),t.overview.attempts.length===0?(O(),e(`div`,Hn,C(b(n)(`requestDetail.noRetry`)),1)):f(``,!0),(O(!0),e(L,null,T(t.overview.attempts,(t,n)=>(O(),e(`div`,{key:n,class:`flex items-center gap-1 text-[11px]`},[x(`span`,Un,`#`+C(n+1),1),x(`span`,{class:l(g(t.statusCode)?`diff-removed`:`diff-added`)},C(t.statusCode??`--`),3),x(`span`,Wn,C((t.latencyMs/b($)).toFixed(1))+`s`,1)]))),128))]),N(b(xt)),x(`div`,Gn,[t.overview.clientType==null?f(``,!0):(O(),e(`div`,Kn,[x(`span`,qn,C(b(n)(`requestDetail.clientType`)),1),x(`span`,Jn,C(a.value),1)])),t.overview.statusCode==null?f(``,!0):(O(),e(`div`,Yn,[x(`span`,Xn,C(b(n)(`requestDetail.statusCodeLabel`)),1),x(`span`,Zn,C(t.overview.statusCode),1)])),t.overview.clientIp?(O(),e(`div`,Qn,[x(`span`,$n,C(b(n)(`requestDetail.clientIp`)),1),x(`span`,er,C(t.overview.clientIp),1)])):f(``,!0)])],64))]))}}),rr={key:0,class:`rounded-md border bg-card`},ir={class:`flex items-center gap-1.5 px-2.5 py-1.5 border-b`},ar={class:`text-xs font-medium`},or={class:`px-2.5 py-2`},sr={key:0,class:`inline-block w-1.5 h-3.5 dot-success animate-pulse ml-0.5 align-text-bottom`},cr={class:`flex items-center gap-1.5 px-2.5 py-1.5 cursor-pointer hover:brightness-95 rounded-t-md`},lr={class:`text-xs font-medium`},ur={key:0,class:`text-xs text-muted-foreground`},dr={class:`px-2.5 pb-2`},fr=z({__name:`ContentBlockRenderer`,props:{type:{},content:{},name:{default:void 0},defaultOpen:{type:Boolean,default:!0},showCursor:{type:Boolean,default:!1},autoScroll:{type:Boolean,default:!1}},setup(t){let{t:n}=_(),r=t,i=o(r.type===`text`?!0:r.defaultOpen),a=o(null),s=S(()=>{switch(r.type){case`thinking`:return`block-thinking`;case`tool_use`:return`block-tool-use`;case`tool_result`:return`block-tool-result`;default:return`bg-card`}}),c=S(()=>{switch(r.type){case`thinking`:return`block-thinking-content italic`;case`tool_use`:return`block-tool-use-content`;case`tool_result`:return`block-tool-result-content`;default:return`bg-muted/50`}}),u=S(()=>{switch(r.type){case`thinking`:return Le;case`tool_use`:return Ve;case`tool_result`:return Re;default:return Be}}),p=S(()=>{switch(r.type){case`thinking`:return`text-[var(--color-role-thinking)]`;case`tool_use`:return`text-[var(--color-role-tool)]`;case`tool_result`:return`text-[var(--color-role-user)]`;default:return`text-muted-foreground`}}),m=S(()=>{switch(r.type){case`thinking`:return n(`requestDetail.thinking`);case`tool_use`:return n(`requestDetail.toolUse`);case`tool_result`:return n(`requestDetail.toolResultLabel`);default:return``}}),h=S(()=>r.type===`tool_use`?n(`requestDetail.waitingData`):r.type===`tool_result`?n(`requestDetail.noReturnData`):``);return g(()=>r.content,()=>{r.autoScroll&&D(()=>{let e=a.value;e&&(e.scrollTop=e.scrollHeight)})}),(r,o)=>t.type===`text`?(O(),e(`div`,rr,[x(`div`,ir,[N(b(Be),{class:`h-3.5 w-3.5 diff-added`}),x(`span`,ar,C(b(n)(`requestDetail.reply`)),1)]),x(`div`,or,[x(`pre`,{ref_key:`contentRef`,ref:a,class:`text-xs overflow-y-auto whitespace-pre-wrap break-words`,style:{"max-height":`300px`}},[x(`code`,null,[B(C(t.content),1),t.showCursor?(O(),e(`span`,sr)):f(``,!0)])],512)])])):(O(),w(b(oe),{key:1,open:i.value,"onUpdate:open":o[0]||=e=>i.value=e,class:l([`rounded-md border`,s.value])},{default:d(()=>[N(b(ce),{"as-child":``},{default:d(()=>[x(`div`,cr,[N(b(De),{class:l([`h-3 w-3 transition-transform duration-200`,{"rotate-180":!i.value}])},null,8,[`class`]),(O(),w(E(u.value),{class:l([`h-3.5 w-3.5`,p.value])},null,8,[`class`])),x(`span`,lr,C(m.value),1),t.type===`thinking`?(O(),e(`span`,ur,`(`+C(b(n)(`requestDetail.charCount`,{count:t.content.length}))+`)`,1)):f(``,!0),t.type===`tool_use`&&t.name?(O(),w(b(q),{key:1,variant:`secondary`,class:`text-xs`},{default:d(()=>[B(C(t.name),1)]),_:1})):f(``,!0)])]),_:1}),N(b(se),null,{default:d(()=>[x(`div`,dr,[x(`pre`,{ref_key:`contentRef`,ref:a,class:l([`text-xs rounded p-2 overflow-y-auto whitespace-pre-wrap break-words`,c.value]),style:{"max-height":`300px`}},[x(`code`,null,C(t.content||h.value),1)],2)])]),_:1})]),_:1},8,[`open`,`class`]))}}),pr=2;function mr(e){return e.map(e=>{let t=e;return t.type===`thinking`?{type:`thinking`,content:typeof t.thinking==`string`?t.thinking:``}:t.type===`text`?{type:`text`,content:typeof t.text==`string`?t.text:``}:t.type===`tool_use`?{type:`tool_use`,content:JSON.stringify(t.input??{},null,pr),name:typeof t.name==`string`?t.name:``}:t.type===`tool_result`?{type:`tool_result`,content:typeof t.content==`string`?t.content:JSON.stringify(t.content)}:{type:`text`,content:JSON.stringify(t)}})}function hr(e){let t=[];for(let n of e){let e=n.message;if(!e)continue;let r=e.content;if(typeof r==`string`&&r)t.push({type:`text`,content:r});else if(Array.isArray(r))for(let e of r){let n=e;if(n.type===`text`)t.push({type:`text`,content:typeof n.text==`string`?n.text:``});else if(n.type===`tool_use`||n.type===`function`){let e=n.function??n.input??{};t.push({type:`tool_use`,content:JSON.stringify(e,null,pr),name:typeof n.name==`string`?n.name:typeof e.name==`string`?e.name:``})}}}return t}function gr(e,t,n){let r=e||t;if(!r)return[];let i;try{i=JSON.parse(r)}catch{return[]}let a=i;if(typeof a.body==`string`)try{i=JSON.parse(a.body)}catch{i=i}let o=i;return n===`anthropic`&&Array.isArray(o.content)?mr(o.content):n===`openai`&&Array.isArray(o.choices)?hr(o.choices):[]}var _r=5,vr=2,yr=3;function br(e,t,n){let r=S(()=>{if(!t||!e.value)return[];let n=e.value.split(`
|
|
2
2
|
`),r=[];for(let e of n){let t=e.trim();if(!t.startsWith(`data:`))continue;let n=t.slice(_r).trim();if(n===`[DONE]`){r.push({type:`done`,data:n});continue}try{let e=JSON.parse(n);r.push({type:`data`,data:e})}catch{r.push({type:`raw`,data:n})}}return r});return{sseEvents:r,assembledBlocks:S(()=>{if(!t||!e.value)return[];let n=[],i=null;for(let e of r.value){if(e.type!==`data`)continue;let t=e.data;if(t.type===`content_block_start`){let e=t.content_block;if(i={type:typeof e?.type==`string`?e.type:``,content:``,eventCount:0,toolName:typeof e?.name==`string`?e.name:void 0},i.type===`tool_use`&&e?.input){let t=e.input;Object.keys(t).length>0&&(i.content=JSON.stringify(t,null,vr))}continue}if(t.type===`content_block_delta`&&i){let e=t.delta;i.content+=e.thinking||e.text||e.partial_json||``,i.eventCount++;continue}t.type===`content_block_stop`&&i&&(n.push(i),i=null)}return i&&n.push(i),n}),sseMeta:S(()=>{let e=``,t=``,n=0,i=0,a=``;for(let o of r.value){if(o.type!==`data`)continue;let r=o.data;if(r.type===`message_start`){let i=r.message;e=typeof i?.id==`string`?i.id:``,t=typeof i?.model==`string`?i.model:``,n=Number(i?.usage?.input_tokens??0)}if(r.type===`message_delta`){let e=r.delta,t=r.usage;a=typeof e?.stop_reason==`string`?e.stop_reason:``,i=Number(t?.output_tokens??0)}}return{id:e,model:t,inputTokens:n,outputTokens:i,stopReason:a}}),openaiAssembled:S(()=>{if(n!==`openai`||!t)return null;let e=``,i=``,a=``,o=null,s=0;for(let t of r.value){if(t.type!==`data`)continue;let n=t.data,r=n.choices||[],c=r[0]?.delta;c?.role&&(e=c.role),c?.content&&(i+=c.content,s++),r[0]?.finish_reason&&(a=r[0].finish_reason),n.usage&&(o=n.usage)}return{role:e,content:i,contentEventCount:s,finishReason:a,usage:o}}),anthropicMessageStart:S(()=>{if(!t)return null;for(let e of r.value){if(e.type!==`data`)continue;let t=e.data;if(t.type===`message_start`){let e=t.message;return{id:typeof e?.id==`string`?e.id:``,model:typeof e?.model==`string`?e.model:``,input_tokens:Number(e?.usage?.input_tokens??0)}}}return null}),anthropicContentBlockStarts:S(()=>{if(!t)return[];let e=[];for(let t of r.value){if(t.type!==`data`)continue;let n=t.data;if(n.type===`content_block_start`){let t=n.content_block;e.push({index:Number(n.index??0),type:typeof t?.type==`string`?t.type:``})}}return e}),anthropicDeltaGroups:S(()=>{if(!t)return[];let e={};for(let t of r.value){if(t.type!==`data`)continue;let n=t.data;if(n.type!==`content_block_delta`)continue;let r=n.delta,i=typeof r?.type==`string`?r.type:`unknown`;e[i]||(e[i]={deltaType:i,kept:0,folded:0,foldedChars:0});let a=e[i];if(a.kept<yr)a.kept++;else{a.folded++;let e=r,t=e.thinking||e.text||e.partial_json||``;a.foldedChars+=t.length}}return Object.values(e).filter(e=>e.kept>0||e.folded>0)}),anthropicMessageDelta:S(()=>{if(!t)return null;for(let e of r.value){if(e.type!==`data`)continue;let t=e.data;if(t.type===`message_delta`){let e=t.delta,n=t.usage;return{output_tokens:Number(n?.output_tokens??0),stop_reason:typeof e?.stop_reason==`string`?e.stop_reason:``}}}return null}),anthropicMessageStop:S(()=>t?r.value.some(e=>e.type===`data`&&e.data.type===`message_stop`):!1),openaiSseRole:S(()=>{if(!t)return null;for(let e of r.value){if(e.type!==`data`)continue;let t=(e.data.choices||[])[0]?.delta;if(t?.role)return t.role}return null}),openaiSseFirstContent:S(()=>{if(!t)return null;for(let e of r.value){if(e.type!==`data`)continue;let t=(e.data.choices||[])[0]?.delta;if(t?.content)return t.content}return null}),openaiSseFinishReason:S(()=>{if(!t)return null;for(let e of r.value){if(e.type!==`data`)continue;let t=(e.data.choices||[])[0]?.finish_reason;if(t)return t}return null}),openaiSseCollapsedCount:S(()=>{if(!t)return 0;let e=0,n=!1;for(let t of r.value){if(t.type!==`data`)continue;let r=(t.data.choices||[])[0]?.delta;if(!n){r?.content&&(n=!0);continue}(r?.content||r?.role)&&e++}return e}),openaiSseUsage:S(()=>{if(!t)return null;for(let e=r.value.length-1;e>=0;e--){let t=r.value[e];if(t.type!==`data`)continue;let n=t.data.usage;if(n)return{prompt_tokens:n.prompt_tokens,completion_tokens:n.completion_tokens,total_tokens:n.total_tokens,cached_tokens:n.cached_tokens??n.prompt_tokens_details?.cached_tokens}}return null})}}var xr={class:`flex flex-col gap-2 min-h-0 flex-1`},Sr={class:`flex items-center justify-between flex-shrink-0`},Cr={class:`text-xs font-medium text-muted-foreground`},wr={key:0,class:`relative flex-1 min-h-0`},Tr={key:0,class:`flex flex-col gap-2`},Er={key:0,class:`text-xs text-muted-foreground`},Dr={key:1,class:`text-xs text-muted-foreground`},Or={key:2,class:`text-xs text-muted-foreground`},kr={class:`p-3 text-[11px] whitespace-pre-wrap break-words`},Ar=50,jr=z({__name:`ResponseViewer`,props:{source:{},apiType:{},isStream:{type:Boolean},streamContent:{default:null},nonStreamBody:{default:null},responseBody:{default:null},upstreamResponse:{default:null},status:{}},setup(t){let{t:n}=_(),r=o(null),i=t,a=o(!1),s=S(()=>!!(i.responseBody||i.upstreamResponse)),{assembledBlocks:c}=br(S(()=>{if(i.source!==`history`)return``;let e=i.responseBody||i.upstreamResponse||``;try{return JSON.parse(e).body||e}catch{return e}}),i.isStream,i.apiType),l=S(()=>{if(i.source===`realtime`){let e=i.streamContent?.blocks;if(e&&e.length>0)return e;if(i.responseBody){let e=gr(i.responseBody,null,i.apiType);if(e.length>0)return e}let t=i.streamContent?.rawChunks;return t&&t.trim().length>0?[{type:`text`,content:t}]:[]}let e=gr(i.responseBody??null,i.upstreamResponse??null,i.apiType);if(e.length>0)return e;if(i.responseBody&&i.responseBody.trim().length>0)return[{type:`text`,content:i.responseBody}];let t=[`thinking`,`text`,`tool_use`,`tool_result`];return c.value.map(e=>({type:t.includes(e.type)?e.type:`text`,content:e.content,...e.toolName?{name:e.toolName}:{}}))}),u=S(()=>i.source===`realtime`?i.streamContent?.rawChunks||i.responseBody||``:en(i.upstreamResponse??null,i.responseBody??null)),p=o(!1);function m(){let e=r.value;e&&(p.value=e.scrollHeight-e.scrollTop-e.clientHeight>Ar)}function h(){let e=r.value;e&&(e.scrollTop=e.scrollHeight)}return g(l,()=>{p.value||D(()=>h())},{deep:!0}),(t,o)=>(O(),e(`div`,xr,[x(`div`,Sr,[x(`span`,Cr,C(b(n)(`requestDetail.responseTitle`)),1),N(b(M),{size:`sm`,variant:`outline`,class:`h-6 gap-1 text-xs`,onClick:o[0]||=e=>a.value=!a.value},{default:d(()=>[(O(),w(E(a.value?b(Ne):b(ze)),{class:`h-3 w-3`})),B(` `+C(a.value?b(n)(`requestDetail.structured`):i.isStream?b(n)(`requestDetail.rawSse`):b(n)(`requestDetail.rawJson`)),1)]),_:1})]),a.value?(O(),w(b($t),{key:1,class:`flex-1 min-h-0 rounded-md border`},{default:d(()=>[x(`pre`,kr,C(u.value),1)]),_:1})):(O(),e(`div`,wr,[x(`div`,{ref_key:`structuredRef`,ref:r,class:`flex-1 min-h-0 overflow-y-auto`,onScroll:m},[l.value.length>0?(O(),e(`div`,Tr,[(O(!0),e(L,null,T(l.value,(e,t)=>(O(),w(fr,{key:t,type:e.type,content:e.content,name:e.name,"show-cursor":i.status===`pending`&&t===l.value.length-1,"auto-scroll":i.status===`pending`&&t===l.value.length-1},null,8,[`type`,`content`,`name`,`show-cursor`,`auto-scroll`]))),128))])):f(``,!0),l.value.length===0?(O(),e(L,{key:1},[i.status===`pending`&&!i.streamContent?.rawChunks?(O(),e(`p`,Er,C(b(n)(`requestDetail.waitingResponse`)),1)):i.source===`history`&&i.isStream&&!s.value?(O(),e(`p`,Dr,C(b(n)(`requestDetail.streamNotPersisted`)),1)):(O(),e(`p`,Or,C(b(n)(`requestDetail.noResponseContent`)),1))],64)):f(``,!0)],544),p.value?(O(),w(b(M),{key:0,variant:`outline`,size:`icon`,class:`absolute bottom-2 right-2 h-7 w-7 rounded-full shadow-md opacity-80 hover:opacity-100`,onClick:h},{default:d(()=>[N(b(Ie),{class:`h-3.5 w-3.5`})]),_:1})):f(``,!0)]))]))}}),Mr={class:`relative`},Nr={class:`bg-background text-foreground rounded-md p-3 text-xs overflow-auto max-h-[40vh] whitespace-pre-wrap break-all border`},Pr=z({__name:`JsonCopyBlock`,props:{content:{},hideCopyButton:{type:Boolean}},setup(t){let{t:n}=_(),r=t,{copied:i,copy:a}=Fe();async function o(){await a(r.content)}return(r,a)=>(O(),e(`div`,Mr,[t.hideCopyButton?f(``,!0):(O(),w(b(M),{key:0,variant:`outline`,size:`sm`,class:`absolute top-2 right-2 h-7 text-xs`,onClick:o},{default:d(()=>[B(C(b(i)?b(n)(`logs.viewer.copied`):b(n)(`logs.viewer.copy`)),1)]),_:1})),x(`pre`,Nr,C(t.content),1)]))}}),Fr={class:`flex flex-col min-h-0 h-full`},Ir={class:`flex justify-end mb-1 flex-shrink-0`},Lr={key:0,class:`space-y-3`},Rr={class:`text-[10px] uppercase tracking-wider text-muted-foreground font-medium mb-1`},zr={class:`text-[10px] uppercase tracking-wider text-muted-foreground font-medium mb-1`},Br={key:0,class:`text-[11px] text-muted-foreground py-4 text-center`},Vr={key:1,class:`text-[11px] text-muted-foreground py-2 text-center`},Hr={key:2,class:`space-y-4`},Ur={key:0},Wr={class:`text-[10px] uppercase tracking-wider text-muted-foreground font-medium mb-1`},Gr={class:`flex items-center gap-2 text-[11px]`},Kr={class:`font-mono text-muted-foreground`},qr={class:`font-mono text-primary font-semibold`},Jr={key:1},Yr={class:`text-[10px] uppercase tracking-wider text-muted-foreground font-medium mb-1`},Xr={class:`text-[11px] bg-muted/50 rounded-md border px-2.5 py-2 overflow-y-auto whitespace-pre-wrap break-words max-h-40`},Zr={key:2},Qr={class:`text-[10px] uppercase tracking-wider text-muted-foreground font-medium mb-1`},$r={class:`space-y-1.5`},ei={class:`flex items-center gap-1.5 mb-1`},ti={key:1,class:`text-[9px] text-muted-foreground`},ni={key:0,class:`diff-removed line-through mb-0.5`},ri={key:1,class:`text-foreground overflow-y-auto max-h-40`},ii={key:2,class:`text-muted-foreground text-[10px]`},ai={key:3},oi={class:`text-[10px] uppercase tracking-wider text-muted-foreground font-medium mb-1`},si={class:`space-y-1`},ci={class:`grid grid-cols-5 gap-1`},li=[`title`,`onClick`],ui={key:0,class:`rounded-md border bg-background p-2.5`},di={class:`flex items-center gap-2 mb-1`},fi={class:`text-[11px] font-semibold font-mono`},pi={key:0,class:`text-[11px] text-muted-foreground`},mi={key:1,class:`mt-1 flex flex-wrap gap-1`},hi={key:4},gi={class:`text-[10px] uppercase tracking-wider text-muted-foreground font-medium mb-1`},_i={class:`flex items-center gap-2 text-[11px]`},vi={key:5},yi={class:`text-[10px] uppercase tracking-wider text-muted-foreground font-medium mb-1`},bi={class:`flex items-center gap-2 text-[11px]`},xi={class:`font-mono diff-removed line-through`},Si={class:`font-mono diff-added font-medium`},Ci=4,wi=5,Ti=z({__name:`RequestDiffViewer`,props:{overview:{}},setup(t){let{t:n}=_(),r=t,i=o(!1);function a(e){if(!e)return null;try{let t=JSON.parse(e);if(typeof t!=`object`||!t)return null;let n=typeof t.headers==`object`&&t.headers!==null?t.headers:{},r=t.body;if(typeof r==`string`)try{r=JSON.parse(r)}catch{}return{headers:n,body:r??{}}}catch{return null}}function s(e){let t=e.content;return typeof t==`string`?t:Array.isArray(t)?t.filter(e=>typeof e==`object`&&!!e&&`text`in e).map(e=>typeof e.text==`string`?e.text:``).join(``):typeof t==`string`?t:t==null?``:JSON.stringify(t)}function c(e){if(!e)return``;let t=e.replace(/^Bearer\s+/i,``);return t.length<=Ci?`***`:`${t.slice(0,Ci)}***`}function u(e,t){let n=t.toLowerCase();for(let[t,r]of Object.entries(e))if(t.toLowerCase()===n)return r}let p=S(()=>a(r.overview.clientRequest)),m=S(()=>a(r.overview.upstreamRequest)),h=S(()=>{let e=p.value?.body?.model,t=m.value?.body?.model;return{hasDiff:!!e&&!!t&&e!==t,from:e??``,to:t??``}}),g=S(()=>{let e=m.value?.body;if(!e)return null;let t=e.system;if(typeof t==`string`)return t;if(Array.isArray(t))return t.filter(e=>typeof e==`object`&&!!e&&`text`in e).map(e=>e.text).join(`
|
|
3
3
|
`);let n=e.messages;if(Array.isArray(n)){let e=n.find(e=>e.role===`system`);if(e)return s(e)}return null}),v=S(()=>{let e=m.value?.body?.messages??[],t=p.value?.body?.messages??[];if(e.length===0)return[];let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=typeof i.role==`string`?i.role:`unknown`;if(a===`system`)continue;let o=s(i),c=t[r],l=c?s(c):null,u=l!==null&&o!==l,d=i.content,f=Array.isArray(d)?d:[],p=f.filter(e=>typeof e==`object`&&!!e&&e.type===`tool_use`).map(e=>e.name).filter(Boolean),m=f.filter(e=>typeof e==`object`&&!!e&&e.type===`tool_result`).length;n.push({role:a,text:o,removedText:u?l:null,modified:u,toolCalls:p,toolResultCount:m})}return n}),y=o(-1),ee=S(()=>{let e=[];for(let t=0;t<E.value.length;t+=wi)e.push({tools:E.value.slice(t,t+wi),startIdx:t});return e}),E=S(()=>{let e=m.value?.body;if(!e)return[];let t=e.tools;return Array.isArray(t)?t.filter(e=>typeof e?.name==`string`).map(e=>{let t=typeof e.description==`string`?e.description:``,n=e.input_schema?.properties,r=n?Object.keys(n):[];return{name:e.name,description:t,params:r}}):[]}),D=S(()=>{let e=p.value?.body?.stream_options!=null,t=m.value?.body?.stream_options!=null;return!e&&t}),k=S(()=>{if(!p.value?.headers||!m.value?.headers)return{hasDiff:!1,old:``,new:``};let e=u(p.value.headers,`authorization`),t=u(m.value.headers,`authorization`);return{hasDiff:!!e&&!!t&&e!==t,old:c(e),new:c(t)}});return(r,a)=>(O(),e(`div`,Fr,[x(`div`,Ir,[N(b(M),{variant:`outline`,size:`xs`,class:`gap-1`,onClick:a[0]||=e=>i.value=!i.value},{default:d(()=>[i.value?(O(),w(b(ze),{key:0,class:`size-3`})):(O(),w(b(Ne),{key:1,class:`size-3`})),B(` `+C(i.value?b(n)(`requestDetail.structured`):b(n)(`requestDetail.rawJson`)),1)]),_:1})]),N(b($t),{class:`flex-1 min-h-0`},{default:d(()=>[i.value?(O(),e(`div`,Lr,[x(`div`,null,[x(`div`,Rr,C(b(n)(`requestDetail.clientRequest`)),1),N(Pr,{content:t.overview.clientRequest??`{}`},null,8,[`content`])]),x(`div`,null,[x(`div`,zr,C(b(n)(`requestDetail.upstreamRequest`)),1),N(Pr,{content:t.overview.upstreamRequest??`{}`},null,8,[`content`])])])):(O(),e(L,{key:1},[!m.value&&!p.value?(O(),e(`div`,Br,C(b(n)(`requestDetail.noRequestData`)),1)):!m.value&&p.value?(O(),e(`div`,Vr,C(b(n)(`requestDetail.requestInProgress`)),1)):(O(),e(`div`,Hr,[h.value.hasDiff?(O(),e(`div`,Ur,[x(`div`,Wr,C(b(n)(`requestDetail.modelMapping`)),1),x(`div`,Gr,[x(`span`,Kr,C(h.value.from),1),a[1]||=x(`span`,{class:`text-muted-foreground`},`→`,-1),x(`span`,qr,C(h.value.to),1)])])):f(``,!0),g.value?(O(),e(`div`,Jr,[x(`div`,Yr,C(b(n)(`requestDetail.system`)),1),x(`pre`,Xr,C(g.value),1)])):f(``,!0),v.value.length>0?(O(),e(`div`,Zr,[x(`div`,Qr,C(b(n)(`requestDetail.messagesCount`,{count:v.value.length})),1),x(`div`,$r,[(O(!0),e(L,null,T(v.value,(t,r)=>(O(),e(`div`,{key:r,class:l([`rounded-md border px-2.5 py-1.5 text-[11px]`,t.modified?`diff-modified`:`bg-background`])},[x(`div`,ei,[N(b(q),{variant:`outline`,class:l([`text-[9px] px-1.5 py-0 border-transparent`,t.role===`user`?`bg-role-user-bg text-role-user`:t.role===`assistant`?`bg-role-assistant-bg text-role-assistant`:`bg-role-thinking-bg text-role-thinking`])},{default:d(()=>[B(C(t.role),1)]),_:2},1032,[`class`]),t.modified?(O(),w(b(q),{key:0,variant:`outline`,class:`bg-role-thinking-bg text-role-thinking text-[9px] px-1.5 py-0 border-transparent`},{default:d(()=>[B(C(b(n)(`requestDetail.modified`)),1)]),_:1})):f(``,!0),t.toolCalls.length>0?(O(),e(`span`,ti,` → `+C(t.toolCalls.join(`, `)),1)):f(``,!0)]),t.modified&&t.removedText?(O(),e(`div`,ni,C(t.removedText),1)):f(``,!0),t.text?(O(),e(`div`,ri,C(t.text),1)):t.toolResultCount>0?(O(),e(`div`,ii,C(b(n)(`requestDetail.toolResultCount`,{count:t.toolResultCount})),1)):f(``,!0)],2))),128))])])):f(``,!0),E.value.length>0?(O(),e(`div`,ai,[x(`div`,oi,C(b(n)(`requestDetail.toolsCount`,{count:E.value.length})),1),x(`div`,si,[(O(!0),e(L,null,T(ee.value,(t,n)=>(O(),e(L,{key:n},[x(`div`,ci,[(O(!0),e(L,null,T(t.tools,(n,r)=>(O(),e(`div`,{key:r,class:l([`cursor-pointer rounded-md border px-1.5 py-1 text-[10px] truncate text-center transition-colors`,y.value===t.startIdx+r?`bg-role-tool-bg text-role-tool border-role-tool`:`bg-background hover:bg-muted`]),title:n.name,onClick:e=>y.value=y.value===t.startIdx+r?-1:t.startIdx+r},C(n.name),11,li))),128))]),y.value>=t.startIdx&&y.value<t.startIdx+t.tools.length?(O(),e(`div`,ui,[x(`div`,di,[x(`span`,fi,C(E.value[y.value].name),1)]),E.value[y.value].description?(O(),e(`p`,pi,C(E.value[y.value].description),1)):f(``,!0),E.value[y.value].params.length>0?(O(),e(`div`,mi,[(O(!0),e(L,null,T(E.value[y.value].params,e=>(O(),w(b(q),{key:e,variant:`outline`,class:`text-[9px] px-1 py-0`},{default:d(()=>[B(C(e),1)]),_:2},1024))),128))])):f(``,!0)])):f(``,!0)],64))),128))])])):f(``,!0),D.value?(O(),e(`div`,hi,[x(`div`,gi,C(b(n)(`requestDetail.streamOptions`)),1),x(`div`,_i,[N(b(q),{variant:`outline`,class:`bg-success-light text-success-dark text-[9px] px-1.5 py-0 border-transparent`},{default:d(()=>[B(C(b(n)(`requestDetail.injected`)),1)]),_:1}),a[2]||=x(`code`,{class:`font-mono diff-added`},`{ "include_usage": true }`,-1)])])):f(``,!0),k.value.hasDiff?(O(),e(`div`,vi,[x(`div`,yi,C(b(n)(`requestDetail.authReplacement`)),1),x(`div`,bi,[x(`span`,xi,C(k.value.old),1),N(b(xt),{orientation:`vertical`,class:`h-3`}),x(`span`,Si,C(k.value.new),1)])])):f(``,!0)]))],64))]),_:1})]))}}),Ei={class:`h-[3px] w-full overflow-hidden`},Di={key:0,class:`h-full w-[40%] progress-active`,style:{animation:`shimmer 1.5s infinite`}},Oi={key:1,class:`h-full w-full progress-failed`},ki={key:2,class:`h-full w-full progress-active`},Ai={key:0,class:`font-mono text-[11px] text-muted-foreground`},ji={key:0,class:`flex gap-0 px-4 pb-4 min-h-0 h-[calc(85vh-80px)]`},Mi={class:`w-[280px] border-r pr-3 flex-shrink-0 overflow-y-auto min-h-0`},Ni={class:`mt-4 border-t pt-4`},Pi={class:`flex-1 flex flex-col min-w-0 min-h-0 pl-3`},Fi={key:0,class:`rounded-md bg-destructive/10 px-3 py-1.5 text-xs text-destructive mb-2 flex-shrink-0`},Ii={key:0,class:`flex-1 min-h-0 overflow-y-auto mt-2`},Li={key:1,class:`flex-1 min-h-0 mt-2`},Ri={key:1,class:`flex items-center justify-center h-[calc(85vh-80px)]`},zi={class:`text-sm text-muted-foreground`},Bi={class:`rounded-md bg-muted px-3 py-2 text-sm text-muted-foreground`},Vi=429,Hi=5e3,Ui=10,Wi=6e4,Gi=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})(z({__name:`UnifiedRequestDialog`,props:{open:{type:Boolean},source:{},request:{},streamContent:{},logDetailData:{},logEntry:{}},emits:[`update:open`],setup(n,{emit:r}){let{t:i}=_(),a=p(),{copied:s,copy:c}=Fe();function l(){return{name:``,status_code:Vi,body_pattern:``,retry_strategy:`exponential`,retry_delay_ms:Hi,max_retries:Ui,max_delay_ms:Wi}}let u=o(!1),m=o(!1),h=o(!1),v=o(null),y=o(``);function T(){P.value&&c(P.value.id)}async function ee(){if(P.value?.id){u.value=!0;try{let e=await te.aiRetryGenerate(P.value.id);if(e.success&&e.rule){let t=e.rule,n=l();v.value={name:t.name??n.name,status_code:t.status_code??n.status_code,body_pattern:t.body_pattern??n.body_pattern,retry_strategy:t.retry_strategy??n.retry_strategy,retry_delay_ms:t.retry_delay_ms??n.retry_delay_ms,max_retries:t.max_retries??n.max_retries,max_delay_ms:t.max_delay_ms??n.max_delay_ms},y.value=e.summary??``,h.value=!0}else{let t=e.error??``;/config/i.test(t)||/未配置/.test(t)||/ai_retry_config/i.test(t)?m.value=!0:K.error(t||i(`logs.generateFailed`))}}catch(e){console.error(`UnifiedRequestDialog.handleGenerateRule:`,e);let n=t(e,i(`logs.generateFailed`));/config/i.test(n)||/未配置/.test(n)?m.value=!0:K.error(n)}finally{u.value=!1}}}function E(){}function D(){m.value=!1,ne(`update:open`,!1),a.push(`/proxy-enhancement`)}let k=n,ne=r,A=o(`response`),j=o(null),P=S(()=>{if(k.source===`realtime`){if(!k.request)return null;let e=Gt(k.request,k.logDetailData?.responseBody);return k.logDetailData&&(k.logDetailData.clientRequest&&(e.clientRequest=k.logDetailData.clientRequest),k.logDetailData.upstreamRequest&&(e.upstreamRequest=k.logDetailData.upstreamRequest)),e}return j.value}),F=S(()=>P.value?P.value.status:`pending`);return g([()=>k.open,()=>k.logEntry],([e,t])=>{if(!e){u.value=!1,h.value=!1,v.value=null,y.value=``,m.value=!1;return}A.value=`response`,k.source===`history`&&t&&(j.value=Zt(t))}),(t,r)=>(O(),w(b(fe),{open:k.open,"onUpdate:open":r[4]||=e=>ne(`update:open`,e)},{default:d(()=>[N(b(le),{class:`sm:max-w-6xl max-h-[85vh] p-0 overflow-hidden flex flex-col`},{default:d(()=>[x(`div`,Ei,[F.value===`pending`?(O(),e(`div`,Di)):F.value===`failed`?(O(),e(`div`,Oi)):(O(),e(`div`,ki))]),N(b(de),{class:`px-4 pt-2 pb-0`},{default:d(()=>[N(b(me),{class:`text-sm flex items-center gap-2`},{default:d(()=>[B(C(b(i)(`requestDetail.dialogTitle`))+` `,1),P.value?(O(),e(`span`,Ai,C(P.value.id),1)):f(``,!0),P.value?(O(),w(b(M),{key:1,variant:`ghost`,size:`icon-xs`,class:`shrink-0`,onClick:T},{default:d(()=>[b(s)?(O(),w(b(Me),{key:0,class:`size-3 text-success`})):(O(),w(b(ie),{key:1,class:`size-3`}))]),_:1})):f(``,!0)]),_:1}),N(b(ue),{class:`sr-only`},{default:d(()=>[B(C(b(i)(`requestDetail.dialogDescription`)),1)]),_:1})]),_:1}),P.value?(O(),e(`div`,ji,[x(`div`,Mi,[N(nr,{overview:P.value},null,8,[`overview`]),x(`div`,Ni,[N(b(M),{variant:`default`,size:`sm`,class:`w-full gap-1.5`,disabled:u.value,onClick:ee},{default:d(()=>[N(b(ae),{class:`h-3.5 w-3.5`}),B(` `+C(u.value?b(i)(`logs.analyzing`):b(i)(`logs.generateRetryRule`)),1)]),_:1},8,[`disabled`])])]),x(`div`,Pi,[P.value.errorMessage?(O(),e(`div`,Fi,C(P.value.errorMessage),1)):f(``,!0),N(b(St),{modelValue:A.value,"onUpdate:modelValue":r[0]||=e=>A.value=e,class:`flex-1 flex flex-col min-h-0`},{default:d(()=>[N(b(Ct),{class:`flex-shrink-0`},{default:d(()=>[N(b(wt),{value:`response`},{default:d(()=>[B(C(b(i)(`requestDetail.responseTab`)),1)]),_:1}),N(b(wt),{value:`request`},{default:d(()=>[B(C(b(i)(`requestDetail.requestTab`)),1)]),_:1})]),_:1}),A.value===`response`?(O(),e(`div`,Ii,[N(jr,{source:k.source,"api-type":P.value.apiType,"is-stream":P.value.isStream,"stream-content":k.streamContent,"non-stream-body":n.logDetailData?.responseBody,"response-body":P.value.responseBody,"upstream-response":P.value.upstreamResponse,status:P.value.status},null,8,[`source`,`api-type`,`is-stream`,`stream-content`,`non-stream-body`,`response-body`,`upstream-response`,`status`])])):f(``,!0),A.value===`request`?(O(),e(`div`,Li,[N(Ti,{overview:P.value},null,8,[`overview`])])):f(``,!0)]),_:1},8,[`modelValue`])])])):(O(),e(`div`,Ri,[x(`p`,zi,C(k.source===`realtime`?b(i)(`requestDetail.loading`):b(i)(`requestDetail.noSelectedRequest`)),1)])),N(Wt,{open:h.value,rule:v.value,summary:y.value,"onUpdate:open":r[1]||=e=>h.value=e,onSaved:E},null,8,[`open`,`rule`,`summary`]),N(b(fe),{open:m.value,"onUpdate:open":r[3]||=e=>m.value=e},{default:d(()=>[N(b(le),{class:`max-w-md`},{default:d(()=>[N(b(de),null,{default:d(()=>[N(b(me),{class:`flex items-center gap-2`},{default:d(()=>[N(b(ae),{class:`h-4 w-4 text-primary`}),B(` `+C(b(i)(`logs.needAiConfig`)),1)]),_:1}),N(b(ue),null,{default:d(()=>[B(C(b(i)(`logs.needAiConfigDesc`)),1)]),_:1})]),_:1}),x(`div`,Bi,C(b(i)(`logs.configPath`)),1),N(b(pe),null,{default:d(()=>[N(b(M),{variant:`outline`,onClick:r[2]||=e=>m.value=!1},{default:d(()=>[B(C(b(i)(`common.cancel`)),1)]),_:1}),N(b(M),{onClick:D},{default:d(()=>[B(C(b(i)(`logs.goToConfig`)),1)]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]),_:1})]),_:1},8,[`open`]))}}),[[`__scopeId`,`data-v-6b5b0430`]]);export{$t as n,xt as r,Gi as t};
|
package/frontend-dist/assets/{VisuallyHiddenInput-C6J7cjvG.js → VisuallyHiddenInput-HnGHuxTe.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,Q as t,Tt as n,Y as r,Z as i,_t as a,ht as o,q as s,rt as c,ut as l}from"./button-
|
|
1
|
+
import{$ as e,Q as t,Tt as n,Y as r,Z as i,_t as a,ht as o,q as s,rt as c,ut as l}from"./button-BaNRw0cF.js";import{D as u,L as d}from"./index-COoySiAr.js";var f=c({inheritAttrs:!1,__name:`VisuallyHiddenInputBubble`,props:{name:{type:String,required:!0},value:{type:null,required:!0},checked:{type:Boolean,required:!1,default:void 0},required:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},feature:{type:String,required:!1,default:`fully-hidden`}},setup(e){let t=e,{primitiveElement:a,currentElement:s}=d();return n(r(()=>t.checked??t.value),(e,t)=>{if(!s.value)return;let n=s.value,r=window.HTMLInputElement.prototype,i=Object.getOwnPropertyDescriptor(r,`value`).set;if(i&&e!==t){let t=new Event(`input`,{bubbles:!0}),r=new Event(`change`,{bubbles:!0});i.call(n,e),n.dispatchEvent(t),n.dispatchEvent(r)}}),(e,n)=>(o(),i(u,l({ref_key:`primitiveElement`,ref:a},{...t,...e.$attrs},{as:`input`}),null,16))}}),p=c({inheritAttrs:!1,__name:`VisuallyHiddenInput`,props:{name:{type:String,required:!0},value:{type:null,required:!0},checked:{type:Boolean,required:!1,default:void 0},required:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},feature:{type:String,required:!1,default:`fully-hidden`}},setup(n){let c=n,u=r(()=>typeof c.value==`object`&&Array.isArray(c.value)&&c.value.length===0&&c.required),d=r(()=>typeof c.value==`string`||typeof c.value==`number`||typeof c.value==`boolean`||c.value===null||c.value===void 0?[{name:c.name,value:c.value}]:typeof c.value==`object`&&Array.isArray(c.value)?c.value.flatMap((e,t)=>typeof e==`object`?Object.entries(e).map(([e,n])=>({name:`${c.name}[${t}][${e}]`,value:n})):{name:`${c.name}[${t}]`,value:e}):c.value!==null&&typeof c.value==`object`&&!Array.isArray(c.value)?Object.entries(c.value).map(([e,t])=>({name:`${c.name}[${e}]`,value:t})):[]);return(n,r)=>(o(),e(s,null,[t(` We render single input if it's required `),u.value?(o(),i(f,l({key:n.name},{...c,...n.$attrs},{name:n.name,value:n.value}),null,16,[`name`,`value`])):(o(!0),e(s,{key:1},a(d.value,e=>(o(),i(f,l({key:e.name},{ref_for:!0},{...c,...n.$attrs},{name:e.name,value:e.value}),null,16,[`name`,`value`]))),128))],2112))}});export{p as t};
|