@bigduu/lotus 2026.6.16 → 2026.6.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/assets/{App-M_Enlqcv.js → App-BKTJoFxk.js} +9 -9
  2. package/dist/assets/{MetricsService-B3MPZEfA.js → MetricsService-DKtqdqfq.js} +1 -1
  3. package/dist/assets/{SubAgentsPanel-Cv5BQdXg.js → SubAgentsPanel-DAY10sR_.js} +1 -1
  4. package/dist/assets/{architectureDiagram-3BPJPVTR-CEwscXSP.js → architectureDiagram-3BPJPVTR-BA9PCRBc.js} +1 -1
  5. package/dist/assets/{blockDiagram-GPEHLZMM-DW5Yb8r-.js → blockDiagram-GPEHLZMM-Cp17P3sA.js} +1 -1
  6. package/dist/assets/{c4Diagram-AAUBKEIU-DcKzj8l0.js → c4Diagram-AAUBKEIU-Di2SGYZW.js} +1 -1
  7. package/dist/assets/{chunk-2J33WTMH-CVCrXOBM.js → chunk-2J33WTMH-CUKmInk-.js} +1 -1
  8. package/dist/assets/{chunk-4BX2VUAB-Bjf7ds0t.js → chunk-4BX2VUAB-b2QaeT8k.js} +1 -1
  9. package/dist/assets/{chunk-55IACEB6-CjKnaow6.js → chunk-55IACEB6-D0MufaBD.js} +1 -1
  10. package/dist/assets/{chunk-727SXJPM-MYGM3PcL.js → chunk-727SXJPM-CLvmDJAH.js} +1 -1
  11. package/dist/assets/{chunk-AQP2D5EJ-58nBRQ3s.js → chunk-AQP2D5EJ-DA0LOMoH.js} +1 -1
  12. package/dist/assets/{chunk-FMBD7UC4-r8Ck2-cC.js → chunk-FMBD7UC4-DC2YqXgb.js} +1 -1
  13. package/dist/assets/{chunk-ND2GUHAM-M6noLOM0.js → chunk-ND2GUHAM-mm_P9bhl.js} +1 -1
  14. package/dist/assets/{chunk-QZHKN3VN-D6Wluw3g.js → chunk-QZHKN3VN-D8N_q_c1.js} +1 -1
  15. package/dist/assets/classDiagram-4FO5ZUOK-Dosyl1RD.js +1 -0
  16. package/dist/assets/classDiagram-v2-Q7XG4LA2-Dosyl1RD.js +1 -0
  17. package/dist/assets/{cose-bilkent-S5V4N54A-BAIUuyQ8.js → cose-bilkent-S5V4N54A-BaSgZCLL.js} +1 -1
  18. package/dist/assets/{dagre-BM42HDAG-DHs-IW5w.js → dagre-BM42HDAG-Bp7fXnv1.js} +1 -1
  19. package/dist/assets/{diagram-2AECGRRQ-BSi58Pmk.js → diagram-2AECGRRQ-D48MpZm9.js} +1 -1
  20. package/dist/assets/{diagram-5GNKFQAL-BP4IDK4A.js → diagram-5GNKFQAL-DucswNto.js} +1 -1
  21. package/dist/assets/{diagram-KO2AKTUF-XVxhi7xd.js → diagram-KO2AKTUF-CllOP8-Y.js} +1 -1
  22. package/dist/assets/{diagram-LMA3HP47-DPQbv9x7.js → diagram-LMA3HP47-UHVcXpQq.js} +1 -1
  23. package/dist/assets/{diagram-OG6HWLK6-sQNvR1Rj.js → diagram-OG6HWLK6-ChLQhin1.js} +1 -1
  24. package/dist/assets/{erDiagram-TEJ5UH35-CPK4amZc.js → erDiagram-TEJ5UH35-DgbEOzDy.js} +1 -1
  25. package/dist/assets/{flowDiagram-I6XJVG4X-kExdgjMg.js → flowDiagram-I6XJVG4X-BgcTAryf.js} +1 -1
  26. package/dist/assets/{ganttDiagram-6RSMTGT7-DFIo8kTJ.js → ganttDiagram-6RSMTGT7-DDxc6dYj.js} +1 -1
  27. package/dist/assets/{gitGraphDiagram-PVQCEYII-Dr-TkknI.js → gitGraphDiagram-PVQCEYII-aLmBg3_D.js} +1 -1
  28. package/dist/assets/{index-DeiR3zxI.js → index-BF-Om3l8.js} +1 -1
  29. package/dist/assets/{index-IUnDhddK.js → index-BKJIPbua.js} +1 -1
  30. package/dist/assets/{index-BtKDULhw.js → index-BUT6M9A_.js} +1 -1
  31. package/dist/assets/{index-DZwtEBJ8.js → index-BxpXZ_sE.js} +1 -1
  32. package/dist/assets/{index-Dx9gwpkf.js → index-CDWEKccv.js} +1 -1
  33. package/dist/assets/{index-3D4SJ2Sq.js → index-CiVd5DfN.js} +1 -1
  34. package/dist/assets/{index-DD799l9l.js → index-DL-W0HGE.js} +1 -1
  35. package/dist/assets/{index-BPzdRxWR.js → index-DTUhSEaL.js} +3 -3
  36. package/dist/assets/{index-DPB3OsNN.js → index-Dp6URzSg.js} +1 -1
  37. package/dist/assets/{index-DRR_PLI3.js → index-Dx9b8gKz.js} +1 -1
  38. package/dist/assets/{index-DTwjPw3W.js → index-cUeYfAGY.js} +1 -1
  39. package/dist/assets/{infoDiagram-5YYISTIA-TyFn1xMi.js → infoDiagram-5YYISTIA-C7daggdZ.js} +1 -1
  40. package/dist/assets/{ishikawaDiagram-YF4QCWOH-B54awsuE.js → ishikawaDiagram-YF4QCWOH-AVliUJiS.js} +1 -1
  41. package/dist/assets/{journeyDiagram-JHISSGLW-UG1dUbuf.js → journeyDiagram-JHISSGLW-D6UqgeXS.js} +1 -1
  42. package/dist/assets/{kanban-definition-UN3LZRKU-qhn1-_c6.js → kanban-definition-UN3LZRKU-CdF3ibQ_.js} +1 -1
  43. package/dist/assets/{main-KJE6TlvG.js → main-ChXolejH.js} +3 -3
  44. package/dist/assets/{mindmap-definition-RKZ34NQL-DA3OZxUI.js → mindmap-definition-RKZ34NQL-DdqiiHER.js} +1 -1
  45. package/dist/assets/{pieDiagram-4H26LBE5-qK8s-crM.js → pieDiagram-4H26LBE5-Bx992Xul.js} +1 -1
  46. package/dist/assets/{quadrantDiagram-W4KKPZXB-JKpitOx9.js → quadrantDiagram-W4KKPZXB-ZkXcHWbj.js} +1 -1
  47. package/dist/assets/{requirementDiagram-4Y6WPE33-isliGwvT.js → requirementDiagram-4Y6WPE33-Bxl-pW5r.js} +1 -1
  48. package/dist/assets/{sankeyDiagram-5OEKKPKP-t6847Rv0.js → sankeyDiagram-5OEKKPKP-6RaAON1z.js} +1 -1
  49. package/dist/assets/{sequenceDiagram-3UESZ5HK-W-7TqsM-.js → sequenceDiagram-3UESZ5HK-DR4V_iY1.js} +1 -1
  50. package/dist/assets/{stateDiagram-AJRCARHV-CIeR68vv.js → stateDiagram-AJRCARHV-BCo4mkaO.js} +1 -1
  51. package/dist/assets/{stateDiagram-v2-BHNVJYJU-ypR04tU0.js → stateDiagram-v2-BHNVJYJU-CdK9Q10V.js} +1 -1
  52. package/dist/assets/{timeline-definition-PNZ67QCA-C6PN9QvV.js → timeline-definition-PNZ67QCA-LHYRXEz1.js} +1 -1
  53. package/dist/assets/{vendor-charts-BS4X3sTj.js → vendor-charts-BzdulFf3.js} +1 -1
  54. package/dist/assets/{vendor-mermaid-Di565VO4.js → vendor-mermaid-BHpdkvG9.js} +3 -3
  55. package/dist/assets/{vendor-pdf-CAvJLb8d.js → vendor-pdf-Y2ffvHQu.js} +3 -3
  56. package/dist/assets/{vennDiagram-CIIHVFJN-BaxoAqUJ.js → vennDiagram-CIIHVFJN-CwVOMD-4.js} +1 -1
  57. package/dist/assets/{wardley-L42UT6IY-BCek0J-6.js → wardley-L42UT6IY-DNC63cTd.js} +1 -1
  58. package/dist/assets/{wardleyDiagram-YWT4CUSO-DsAawl1D.js → wardleyDiagram-YWT4CUSO-CqHKJvz4.js} +1 -1
  59. package/dist/assets/{xychartDiagram-2RQKCTM6-BJFU9Wh3.js → xychartDiagram-2RQKCTM6-DvYpKLcC.js} +1 -1
  60. package/dist/index.html +2 -2
  61. package/package.json +1 -1
  62. package/dist/assets/classDiagram-4FO5ZUOK-Brm-FcnA.js +0 -1
  63. package/dist/assets/classDiagram-v2-Q7XG4LA2-Brm-FcnA.js +0 -1
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./index-3D4SJ2Sq.js","./vendor-markdown-CgV5F7BD.js","./vendor-i18n-Dm-c3D_C.js","./vendor-antd-Ce-qhZOr.js","./vendor-mermaid-Di565VO4.js","./main-KJE6TlvG.js","./main-B6snAd4S.css","./index-Cqta1ICV.js","./index-DPB3OsNN.js","./index-Bi-vGirQ.css","./index-DRR_PLI3.js","./index-Do83dUqx.js","./index-BmjFP0ha.js","./core-Cfh-QHsP.js","./index-_XI0Qq6F.js","./vendor-pdf-CAvJLb8d.js","./index-DZwtEBJ8.js","./index-3qkG_le_.css","./index-DD799l9l.js","./index-8u7yjQhY.css","./index-DTwjPw3W.js","./MetricsService-B3MPZEfA.js","./index-D9ODTr93.css","./index-IUnDhddK.js","./SubAgentsPanel-Cv5BQdXg.js","./index-BtKDULhw.js","./index-AIUPRSCn.css","./index-BPzdRxWR.js","./onboardingStorage-BVcEpmTy.js","./vendor-charts-BS4X3sTj.js","./index-Dx9gwpkf.js","./index-CLYKYSO0.css","./FeatureGuide-pqK-Gb1K.js"])))=>i.map(i=>d[i]);
2
- var gw=Object.defineProperty;var yw=(e,t,n)=>t in e?gw(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var vt=(e,t,n)=>yw(e,typeof t!="symbol"?t+"":t,n);import{j as l,M as hr,S as Jt,a as Lg,t as Dg,p as Fg,b as vw,c as vd,d as bw,m as Ng,s as Sw,y as zg,e as Bg,h as gl,f as bd,r as Sd,g as wd,i as Wg}from"./vendor-markdown-CgV5F7BD.js";import{a as S,u as qe,R as rt,i as kt,c as ww,g as Cs}from"./vendor-i18n-Dm-c3D_C.js";import{_ as Lt,bN as xd,au as xw}from"./vendor-mermaid-Di565VO4.js";import{t as st,u as eh,v as _w,$ as Cw,aC as Qs,b8 as Ug,b9 as kw,a1 as Fl,N as Ee,az as Tw,O as ks,aw as Zs,ba as Pw,z as _r,a3 as Ts,bb as qg,Q as xu,j as ze,F as we,x as eo,w as bs,bc as Hg,Z as _d,a4 as Nl,q as dn,bd as Ew,be as Mw,l as ot,X as Tn,a2 as Zi,a7 as Rw,ab as _u,bf as Aw,bg as zl,bh as Xg,V as Cd,bi as Cu,bj as to,bk as jw,bl as Iw,J as yl,n as Ow,H as Yg,bm as $w,bn as Lw,W as no,as as Dw,o as Ye,a9 as Fw,y as kd,A as Jn,G as Bt,bo as Bl,bp as Kg,ay as Nw,aj as zw,D as Td,aO as Vg,bq as Bw,br as Ww,bs as Uw,I as Ss,bt as qw,bu as Hw,aq as Pd,ar as Cr,aD as vl,aN as ao,bv as _a,bw as Gg,bx as Jg,ak as Ed,ae as Xw,p as qa,ag as th,aL as Yw,U as nh,P as Qg,b4 as ku,aU as Kw,aF as Vw,ao as Gw,by as Jw,bz as Qw,aB as Zw,aP as ex,bA as tx,bB as nx,bC as rx,bD as sx,B as ox,b6 as Hs,am as Zg,bE as ax,bF as ey,ac as Md,an as ix,bG as lx,bH as cx,a6 as ux,bI as rh,bJ as sh}from"./vendor-antd-Ce-qhZOr.js";import{r as dx,A as fx,a as hx}from"./main-KJE6TlvG.js";function ty(e){const[t,n]=S.useState(()=>typeof window<"u"?window.matchMedia(e).matches:!1);return S.useEffect(()=>{if(typeof window>"u")return;const r=window.matchMedia(e);n(r.matches);const s=o=>{n(o.matches)};return r.addEventListener?r.addEventListener("change",s):r.addListener(s),()=>{r.removeEventListener?r.removeEventListener("change",s):r.removeListener(s)}},[e]),t}function Wl(){return ty("(max-width: 768px)")}const px=({chat:e,isSelected:t,compact:n=!1,onSelect:r,onDelete:s,onPin:o,onUnpin:a,onEdit:i,onGenerateTitle:c,onRunProjectDream:d,isGeneratingTitle:f,isRunningProjectDream:p,titleGenerationError:v})=>{const{t:g}=qe(),[w,m]=S.useState(!1),[x,k]=S.useState(e.title),[C,E]=S.useState(!1),[T,P]=S.useState(!1),{token:A}=st.useToken(),O=S.useCallback(z=>{z.stopPropagation(),i&&x.trim()&&i(e.id,x.trim()),m(!1)},[e.id,x,i]),$=S.useCallback(z=>{z.stopPropagation(),k(e.title),m(!1)},[e.title]),U=[{key:"pin",icon:e.pinned?l.jsx(eh,{style:{color:A.colorWarning}}):l.jsx(_w,{}),label:e.pinned?g("chat.actions.unpin"):g("chat.actions.pin"),onClick:({domEvent:z})=>{z.stopPropagation(),e.pinned?a(e.id):o(e.id)}},{key:"edit",icon:l.jsx(Cw,{}),label:g("chat.chatItem.edit"),onClick:({domEvent:z})=>{z.stopPropagation(),m(!0)}},...c?[{key:"generate-title",icon:f?l.jsx(Qs,{}):l.jsx(Ug,{style:v?{color:A.colorError}:void 0}),label:v||g("chat.actions.generateTitle"),disabled:f,onClick:({domEvent:z})=>{z.stopPropagation(),c(e.id)}}]:[],...d?[{key:"run-project-dream",icon:p?l.jsx(Qs,{}):l.jsx(kw,{}),label:g("chat.actions.runProjectDream"),disabled:p,onClick:({domEvent:z})=>{z.stopPropagation(),d(e.id)}}]:[],{type:"divider"},{key:"delete",icon:l.jsx(Fl,{}),label:g("common.delete"),danger:!0,onClick:({domEvent:z})=>{z.stopPropagation(),s(e.id)}}],J={padding:n?"4px 8px":"5px 8px",borderRadius:A.borderRadiusSM,marginBottom:0,cursor:"pointer",transition:"background-color 0.2s ease, box-shadow 0.2s ease",backgroundColor:t?"var(--lotus-primary-soft)":C||T?"var(--lotus-item-hover-bg)":"transparent",border:"1px solid transparent",borderColor:"transparent",position:"relative",overflow:"visible",boxShadow:t?`inset 2px 0 0 ${A.colorPrimary}`:"none",minHeight:n?28:30},ee={flex:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:n?12:12.5,lineHeight:1.3,fontWeight:t?600:500,color:t?"var(--lotus-primary)":A.colorText},I={flex:1,fontSize:A.fontSizeSM,marginRight:A.marginSM},Y=w?[l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Tw,{style:{color:A.colorSuccess}}),onClick:O,"aria-label":g("common.save")},"save"),l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(ks,{style:{color:A.colorError}}),onClick:$,"aria-label":g("common.cancel")},"cancel")]:C||T?[l.jsx(Zs,{menu:{items:U,className:"lotus-sidebar-actions-menu"},trigger:["click"],placement:"bottomRight",overlayClassName:"lotus-sidebar-actions-dropdown",open:T,onOpenChange:z=>P(z),children:l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Pw,{}),"aria-label":g("common.moreActions","More actions"),onClick:z=>z.stopPropagation(),style:{color:A.colorTextSecondary,borderRadius:A.borderRadiusSM,background:"transparent",width:n?16:18,height:n?16:18,display:"flex",alignItems:"center",justifyContent:"center"}})},"more")]:[];return l.jsx(_r.Item,{style:J,tabIndex:0,onClick:()=>!w&&r(e.id),onKeyDown:z=>{z.key==="Enter"&&!w?(z.preventDefault(),r(e.id)):(z.key==="Delete"||z.key==="Backspace")&&!w&&(z.metaKey||z.ctrlKey)&&(z.preventDefault(),s(e.id))},onMouseEnter:()=>E(!0),onMouseLeave:()=>{T||E(!1)},onFocus:()=>E(!0),onBlur:()=>{T||E(!1)},actions:Y,"data-testid":"chat-item",role:"option","aria-selected":t,"aria-label":e.title||g("chat.sidebar.untitledChat"),children:l.jsx("div",{style:{flex:1,minWidth:0,display:"flex",alignItems:"center"},children:w?l.jsx(Ts,{value:x,onChange:z=>k(z.target.value),onClick:z=>z.stopPropagation(),onPressEnter:z=>{z.preventDefault(),O(z)},autoFocus:!0,style:I,variant:"borderless",size:"small"}):l.jsxs("div",{style:{...ee,display:"flex",alignItems:"center",gap:n?4:A.marginXS,minWidth:0},children:[e.pinned&&l.jsx(eh,{style:{color:A.colorWarning,fontSize:11,flexShrink:0}}),l.jsx("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.title}),e.kind==="child"?l.jsx("span",{style:{color:A.colorInfo,fontSize:n?10:11,lineHeight:1.2,flexShrink:0,whiteSpace:"nowrap"},children:g("chat.chatItem.childTag")}):null,e.planMode?l.jsxs("span",{style:{color:A.colorPrimary,fontSize:n?10:11,lineHeight:1.2,flexShrink:0,whiteSpace:"nowrap",display:"inline-flex",alignItems:"center",gap:3},children:[l.jsx(qg,{}),g("chat.planMode.badge","Plan")]}):null]})})})},mx=(e,t)=>e.chat.id===t.chat.id&&e.chat.title===t.chat.title&&e.chat.pinned===t.chat.pinned&&e.chat.planMode===t.chat.planMode&&e.isSelected===t.isSelected&&e.compact===t.compact&&e.isGeneratingTitle===t.isGeneratingTitle&&e.isRunningProjectDream===t.isRunningProjectDream&&e.titleGenerationError===t.titleGenerationError,Tu=S.memo(px,mx);Tu.displayName="ChatItem";const oh=e=>({Today:0,Yesterday:1,"This Week":2,"This Month":3})[e]??4,gx=e=>{const t={},n=e.filter(s=>s.pinned);n.length>0&&(t.Pinned=n.sort((s,o)=>o.createdAt-s.createdAt));const r=e.filter(s=>!s.pinned&&!!s.createdByScheduleId);return r.length>0&&(t.Scheduled=r.sort((s,o)=>o.createdAt-s.createdAt)),e.filter(s=>!s.pinned&&!s.createdByScheduleId).forEach(s=>{const a=new Date(s.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"});t[a]||(t[a]=[]),t[a].push(s)}),Object.keys(t).forEach(s=>{t[s].sort((o,a)=>a.createdAt-o.createdAt)}),t},yx=e=>{const t=n=>Array.isArray(n)?n.reduce((r,s)=>Math.max(r,s.createdAt),0):Object.values(n).reduce((r,s)=>{const o=s.reduce((a,i)=>Math.max(a,i.createdAt),0);return Math.max(r,o)},0);return Object.keys(e).sort((n,r)=>{if(n==="Pinned")return-1;if(r==="Pinned")return 1;if(n==="Scheduled")return-1;if(r==="Scheduled")return 1;const s=e[n],o=e[r];if(!s||!o)return 0;const a=t(s),i=t(o);return a!==i?i-a:oh(n)-oh(r)})},vx=(e,t)=>e[t]?e[t].map(n=>n.id):[],ny=(e,t)=>e[t]?e[t].length:0,bx=e=>e.createdByScheduleId?"Scheduled":new Date(e.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"}),ah=(e,t)=>{const r={Today:"chat.sidebar.dateGroups.today",Yesterday:"chat.sidebar.dateGroups.yesterday","This Week":"chat.sidebar.dateGroups.thisWeek","This Month":"chat.sidebar.dateGroups.thisMonth",Pinned:"chat.sidebar.dateGroups.pinned",Scheduled:"chat.sidebar.dateGroups.scheduled"}[e];return r?t(r):e},Sx=({groupedChatsByDate:e,childrenByRoot:t,expandedRootIds:n,onToggleRootExpanded:r,sortedDateKeys:s,expandedKeys:o,onCollapseChange:a,currentSessionId:i,onSelectChat:c,onDeleteChat:d,onDeleteByDate:f,onPinChat:p,onUnpinChat:v,onEditTitle:g,onGenerateTitle:w,onRunProjectDream:m,titleGenerationState:x,projectDreamState:k,token:C,hasActiveFilters:E,onClearFilters:T})=>{const{t:P}=qe(),A=S.useMemo(()=>s.length?s.map($=>{const U=e[$],J=ny(e,$);return{dateKey:$,dateGroup:U,totalChatsInDate:J}}):[],[e,s]);if(!s.length)return l.jsx(xu,{image:xu.PRESENTED_IMAGE_SIMPLE,description:l.jsxs(ze,{direction:"vertical",size:4,align:"center",children:[l.jsx("span",{style:{color:C.colorTextSecondary},children:E?P("chat.sidebar.empty.noMatches","No matching sessions"):P("chat.sidebar.empty.noSessions")}),l.jsx("span",{style:{color:C.colorTextSecondary,fontSize:12},children:E?P("chat.sidebar.empty.filterHint","Try adjusting your search or filters"):P("chat.sidebar.empty.hint")}),E&&l.jsx(Ee,{size:"small",type:"link",onClick:T,children:P("chat.sidebar.empty.clearFilters","Clear filters")})]})});const O=new Set(o);return l.jsx("div",{style:{width:"100%",display:"flex",flexDirection:"column",gap:2},children:A.map(({dateKey:$,dateGroup:U,totalChatsInDate:J})=>{const ee=O.has($);return l.jsxs("div",{style:{borderRadius:C.borderRadiusSM,background:"transparent",padding:0},children:[l.jsxs(we,{align:"center",justify:"space-between",style:{cursor:"pointer",padding:"4px 8px",borderRadius:C.borderRadiusSM,transition:"background-color 0.2s ease, color 0.2s ease",border:"1px solid transparent"},role:"button",tabIndex:0,"aria-expanded":ee,"aria-label":`${ah($,P)} (${J})`,onKeyDown:I=>{if(I.key==="Enter"||I.key===" "){I.preventDefault();const Y=new Set(O);Y.has($)?Y.delete($):Y.add($),a(Array.from(Y))}},onMouseEnter:I=>{I.currentTarget.style.background="var(--lotus-sidebar-item-hover-bg, rgba(204, 251, 241, 0.76))",I.currentTarget.style.borderColor="transparent";const Y=I.currentTarget.querySelector(".chat-sidebar-date-group-delete");Y&&(Y.style.opacity="1")},onMouseLeave:I=>{I.currentTarget.style.background="transparent",I.currentTarget.style.borderColor="transparent";const Y=I.currentTarget.querySelector(".chat-sidebar-date-group-delete");Y&&(Y.style.opacity="0")},onClick:()=>{const I=new Set(O);I.has($)?I.delete($):I.add($),a(Array.from(I))},className:"chat-sidebar-date-group-header",children:[l.jsxs(we,{align:"center",gap:"small",style:{minWidth:0},children:[ee?l.jsx(eo,{style:{fontSize:12,opacity:.6}}):l.jsx(bs,{style:{fontSize:12,opacity:.6}}),l.jsxs("span",{style:{fontSize:10.5,fontWeight:700,textTransform:"uppercase",letterSpacing:"0.3px",color:$==="Today"?"var(--lotus-primary)":C.colorTextSecondary,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[ah($,P)," (",J,")"]})]}),l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Fl,{}),className:"chat-sidebar-date-group-delete",style:{color:C.colorTextTertiary,opacity:0,transition:"opacity 0.2s ease"},onClick:I=>{I.stopPropagation(),f($)}})]}),ee?l.jsx("div",{style:{marginTop:2},children:l.jsx(_r,{itemLayout:"horizontal",dataSource:U,split:!1,renderItem:I=>{var Y,z,D,ie,Q,ue;return l.jsxs("div",{children:[l.jsxs(we,{align:"center",gap:6,style:{padding:"4px 8px"},children:[(Y=t[I.id])!=null&&Y.length?l.jsxs(Ee,{size:"small",type:"text",style:{padding:0,minWidth:18,height:18,display:"inline-flex",alignItems:"center",gap:2},"aria-label":n.has(I.id)?P("chat.sidebar.actions.collapseChildren"):P("chat.sidebar.actions.expandChildren"),onClick:me=>{me.preventDefault(),me.stopPropagation(),r(I.id)},children:[l.jsx(Hg,{style:{fontSize:12,color:"var(--lotus-primary)",opacity:n.has(I.id)?1:.85}}),l.jsx("span",{style:{fontSize:9,fontWeight:600,lineHeight:1,color:"var(--lotus-primary)"},children:t[I.id].length})]}):l.jsx("div",{style:{width:18}}),l.jsx("div",{style:{flex:1,minWidth:0,marginLeft:-8},children:l.jsx(Tu,{chat:I,compact:!0,isSelected:I.id===i,onSelect:c,onDelete:d,onPin:p,onUnpin:v,onEdit:g,onGenerateTitle:w,onRunProjectDream:m,isGeneratingTitle:((z=x[I.id])==null?void 0:z.status)==="loading",isRunningProjectDream:((D=k[I.id])==null?void 0:D.status)==="loading",titleGenerationError:((ie=x[I.id])==null?void 0:ie.status)==="error"?(Q=x[I.id])==null?void 0:Q.error:void 0})})]}),n.has(I.id)&&(((ue=t[I.id])==null?void 0:ue.length)??0)>0?l.jsx("div",{style:{marginLeft:18,marginTop:1},children:l.jsx(_r,{itemLayout:"horizontal",dataSource:t[I.id],split:!1,renderItem:me=>{var V,ae,ve,re;return l.jsx("div",{style:{paddingLeft:8,borderLeft:`1px solid ${C.colorBorderSecondary}`,marginLeft:2},children:l.jsx(Tu,{chat:me,compact:!0,isSelected:me.id===i,onSelect:c,onDelete:d,onPin:p,onUnpin:v,onEdit:g,onGenerateTitle:w,onRunProjectDream:m,isGeneratingTitle:((V=x[me.id])==null?void 0:V.status)==="loading",isRunningProjectDream:((ae=k[me.id])==null?void 0:ae.status)==="loading",titleGenerationError:((ve=x[me.id])==null?void 0:ve.status)==="error"?(re=x[me.id])==null?void 0:re.error:void 0})},me.id)}})}):null]},I.id)}})}):null]},$)})})},ih=e=>{let t;const n=new Set,r=(d,f)=>{const p=typeof d=="function"?d(t):d;if(!Object.is(p,t)){const v=t;t=f??(typeof p!="object"||p===null)?p:Object.assign({},t,p),n.forEach(g=>g(t,v))}},s=()=>t,i={setState:r,getState:s,getInitialState:()=>c,subscribe:d=>(n.add(d),()=>n.delete(d))},c=t=e(r,s,i);return i},wx=e=>e?ih(e):ih,xx=e=>e;function _x(e,t=xx){const n=rt.useSyncExternalStore(e.subscribe,()=>t(e.getState()),()=>t(e.getInitialState()));return rt.useDebugValue(n),n}const lh=e=>{const t=wx(e),n=r=>_x(t,r);return Object.assign(n,t),n},Xr=e=>e?lh(e):lh,ry="copilot_ui_theme_v1";function Cx(){var e;try{const t=localStorage.getItem(ry);if(t==="light"||t==="dark")return t}catch{}return(e=window.matchMedia)!=null&&e.call(window,"(prefers-color-scheme: dark)").matches?"dark":"light"}const bl=Xr(e=>({themeMode:Cx(),setThemeMode:t=>e({themeMode:t}),toggleTheme:()=>e(t=>({themeMode:t.themeMode==="dark"?"light":"dark"}))})),kx="2026.6.16",Tx={version:kx},Px=Tx.version,{Text:Ex}=ot,Mx=({collapsed:e,onNewChat:t,onOpenSettings:n,token:r})=>{const{t:s}=qe(),o=bl(f=>f.themeMode),a=bl(f=>f.toggleTheme),i=s("chat.sidebar.newSession"),c=s("settings.page.title"),d=o==="dark"?s("settings.app.lightMode","Light mode"):s("settings.app.darkMode","Dark mode");return l.jsxs(we,{vertical:!0,gap:e?"small":10,style:{padding:e?10:12,background:"transparent",borderTop:`1px solid ${r.colorBorderSecondary}`},children:[l.jsx(Ee,{"data-testid":"new-chat","data-tour-id":"new-session",type:"primary",icon:l.jsx(_d,{}),onClick:t,block:!e,shape:"default",size:"small",title:i,"aria-label":i,className:"lotus-primary-cta",style:{...e?{width:"40px",height:"40px",margin:"0 auto"}:{},borderRadius:r.borderRadiusLG,minHeight:e?40:38,fontWeight:600},children:!e&&i}),l.jsxs(we,{gap:6,align:"center",children:[l.jsx(Ee,{"data-testid":"open-settings","data-tour-id":"open-settings",icon:l.jsx(Nl,{}),onClick:n,block:!e,shape:"default",size:"small",title:c,"aria-label":c,className:"lotus-secondary-button",style:{...e?{width:"40px",height:"40px",margin:"0 auto"}:{},borderRadius:r.borderRadiusLG,minHeight:e?40:36,flex:e?void 0:1},children:!e&&c}),!e&&l.jsx(dn,{title:d,placement:"top",children:l.jsx(Ee,{"data-testid":"toggle-theme",type:"text",icon:o==="dark"?l.jsx(Ew,{}):l.jsx(Mw,{}),onClick:a,"aria-label":d,className:"lotus-toolbar-icon",style:{width:36,height:36,borderRadius:r.borderRadiusLG,flexShrink:0}})})]}),!e&&l.jsxs(Ex,{type:"secondary","data-testid":"app-version-badge",style:{fontSize:11,textAlign:"center",userSelect:"text"},children:[s("settings.appTab.runningVersion","Running version"),": v",Px]})]})},ch=e=>Symbol.iterator in e,uh=e=>"entries"in e,dh=(e,t)=>{const n=e instanceof Map?e:new Map(e.entries()),r=t instanceof Map?t:new Map(t.entries());if(n.size!==r.size)return!1;for(const[s,o]of n)if(!Object.is(o,r.get(s)))return!1;return!0},Rx=(e,t)=>{const n=e[Symbol.iterator](),r=t[Symbol.iterator]();let s=n.next(),o=r.next();for(;!s.done&&!o.done;){if(!Object.is(s.value,o.value))return!1;s=n.next(),o=r.next()}return!!s.done&&!!o.done};function Ax(e,t){return Object.is(e,t)?!0:typeof e!="object"||e===null||typeof t!="object"||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:ch(e)&&ch(t)?uh(e)&&uh(t)?dh(e,t):Rx(e,t):dh({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function Da(e){const t=rt.useRef(void 0);return n=>{const r=e(n);return Ax(t.current,r)?t.current:t.current=r}}const sy=()=>!1,oy=e=>{if(!sy())return!1;try{return localStorage.getItem(e)==="1"}catch{return!1}},jx=()=>oy("bodhi_debug_ui_layout"),Dn=(e,t)=>{jx()&&console.log(`[ui-layout] ${e}`,t??"")},ke=(e,t,...n)=>{sy()&&oy("bodhi_debug_verbose")&&console.log(`${e} ${t}`,...n)};var Ec={};const Mc="copilot_backend_base_url",ay="http://127.0.0.1:9562/v1",Ix=9562,ws=e=>e.trim().replace(/\/+$/,""),Ox=()=>{const t=Ec==null?void 0:Ec.VITE_BACKEND_BASE_URL;return t?ws(t):null},ni=()=>{const e=globalThis.location;if(!e)return null;const t=typeof e.protocol=="string"?e.protocol:"",n=typeof e.hostname=="string"?e.hostname:"";return!t||!n?null:{protocol:t,hostname:n}},Rd=e=>{const t=e.trim().toLowerCase();return t==="localhost"||t==="127.0.0.1"||t==="::1"},$x=(e=ni())=>(e==null?void 0:e.protocol.toLowerCase())==="https:",Lx=e=>{try{return new URL(ws(e)).protocol.toLowerCase()==="http:"}catch{return!1}},Dx=e=>{try{const t=new URL(ws(e));return Rd(t.hostname)}catch{return!1}},Fx=(e=ni())=>{if(!e)return null;const t=e.protocol.toLowerCase(),n=e.hostname.trim();return n?t==="https:"?ws(`https://${n}/v1`):t==="http:"?ws(`http://${n}/v1`):null:null},Nx=(e,t=ni())=>{if(!t)return!1;const n=t.hostname.trim();return n?$x(t)&&Lx(e)?!0:Rd(n)?!1:Dx(e):!1},zx=(e=ni())=>{if(!e)return null;const t=e.protocol.toLowerCase();if(t!=="http:"&&t!=="https:")return null;const n=e.hostname.trim();return n?t==="https:"?Fx(e):Rd(n)?ay:ws(`http://${n}:${Ix}/v1`):null},Bx=()=>{const e=Ox();return e||(zx()??ay)},xs=()=>{const e=ni(),t=localStorage.getItem(Mc);if(t){const n=ws(t);if(Nx(n,e))console.warn("Ignoring stored backend override because it is incompatible with the current page origin:",n),localStorage.removeItem(Mc);else try{return new URL(n),n}catch{console.warn("Invalid stored backend URL, using default:",n),localStorage.removeItem(Mc)}}return Bx()};class Ha extends Error{constructor(t,n,r,s){super(t),this.status=n,this.statusText=r,this.body=s,this.name="ApiError"}}function V$(e){return e instanceof Ha}class iy{constructor(t={}){vt(this,"baseUrl");vt(this,"defaultHeaders");this.baseUrl=t.baseUrl??this.resolveBaseUrl(),this.defaultHeaders=t.defaultHeaders??{"Content-Type":"application/json"}}resolveBaseUrl(){const t=xs().trim().replace(/\/+$/,"");return t.endsWith("/v1")?t:`${t}/v1`}buildUrl(t){const n=t.replace(/^\/+/,"");return`${this.baseUrl}/${n}`}async handleResponse(t){var r,s,o;if(!t.ok){const a=await t.text().catch(()=>{});let i=t.statusText;if(a)try{const c=JSON.parse(a),d=typeof(c==null?void 0:c.error)=="object"?(r=c.error)==null?void 0:r.message:void 0;i=(typeof(c==null?void 0:c.error)=="string"?c.error:void 0)||(typeof d=="string"?d:void 0)||c.message||c.detail||t.statusText}catch{i=a||t.statusText}throw new Ha(i,t.status,t.statusText,a)}return t.status===204?void 0:(((o=(s=t.headers)==null?void 0:s.get)==null?void 0:o.call(s,"content-type"))||"").includes("application/json")?t.json():typeof t.text=="function"?await t.text():t.json()}delay(t){return new Promise(n=>setTimeout(n,t))}async fetchWithRetry(t,n,r=3){let s=null;for(let o=0;o<r;o++)try{const a=await fetch(t,n);if(a.status>=500&&o<r-1){const i=1e3*Math.pow(2,o);console.warn(`Request failed with ${a.status}, retrying in ${i}ms (attempt ${o+1}/${r})`),await this.delay(i);continue}return a}catch(a){if(s=a,o<r-1){const i=1e3*Math.pow(2,o);console.warn(`Network error: ${s.message}, retrying in ${i}ms (attempt ${o+1}/${r})`),await this.delay(i)}}throw s||new Error("Max retries exceeded")}async get(t,n){const r=this.buildUrl(t),s=new AbortController,o=setTimeout(()=>s.abort(),3e4);try{const a=await this.fetchWithRetry(r,{...n,method:"GET",headers:{...this.defaultHeaders,...n==null?void 0:n.headers},credentials:"include",signal:s.signal},3);return this.handleResponse(a)}finally{clearTimeout(o)}}async post(t,n,r){const s=this.buildUrl(t),o=new AbortController,a=setTimeout(()=>o.abort(),3e4);try{const i=await this.fetchWithRetry(s,{...r,method:"POST",headers:{...this.defaultHeaders,...r==null?void 0:r.headers},credentials:"include",body:n?JSON.stringify(n):void 0,signal:o.signal},3);return this.handleResponse(i)}finally{clearTimeout(a)}}async put(t,n,r){const s=this.buildUrl(t),o=new AbortController,a=setTimeout(()=>o.abort(),3e4);try{const i=await this.fetchWithRetry(s,{...r,method:"PUT",headers:{...this.defaultHeaders,...r==null?void 0:r.headers},credentials:"include",body:n?JSON.stringify(n):void 0,signal:o.signal},3);return this.handleResponse(i)}finally{clearTimeout(a)}}async patch(t,n,r){const s=this.buildUrl(t),o=new AbortController,a=setTimeout(()=>o.abort(),3e4);try{const i=await this.fetchWithRetry(s,{...r,method:"PATCH",headers:{...this.defaultHeaders,...r==null?void 0:r.headers},credentials:"include",body:n?JSON.stringify(n):void 0,signal:o.signal},3);return this.handleResponse(i)}finally{clearTimeout(a)}}async delete(t,n){const r=this.buildUrl(t),s=new AbortController,o=setTimeout(()=>s.abort(),3e4);try{const a=await this.fetchWithRetry(r,{...n,method:"DELETE",headers:{...this.defaultHeaders,...n==null?void 0:n.headers},credentials:"include",signal:s.signal},3);return this.handleResponse(a)}finally{clearTimeout(o)}}async request(t,n,r){const s=this.buildUrl(n),o=new AbortController,a=setTimeout(()=>o.abort(),3e4);try{const i=await this.fetchWithRetry(s,{...r,method:t,headers:{...this.defaultHeaders,...r==null?void 0:r.headers},credentials:"include",signal:o.signal},3);return this.handleResponse(i)}finally{clearTimeout(a)}}async fetchRaw(t,n){const r=this.buildUrl(t),s=await fetch(r,{...n,headers:{...this.defaultHeaders,...n==null?void 0:n.headers},credentials:"include"});if(!s.ok)throw new Ha(`API request failed: ${s.statusText}`,s.status,s.statusText);return s}}const Ue=new iy,ht=new iy({baseUrl:(()=>{let e=xs().trim().replace(/\/+$/,"");return e.endsWith("/v1")&&(e=e.slice(0,-3)),`${e}/api/v1`})()}),Wx=e=>e?{client_message_count:e.client_message_count,client_last_message_id:e.client_last_message_id??null,client_has_pending_question:e.client_has_pending_question,client_pending_question_tool_call_id:e.client_pending_question_tool_call_id??null}:null,Ux=e=>e?{need_sync:e.need_sync,reason:e.reason??null,server_message_count:e.server_message_count,server_last_message_id:e.server_last_message_id??null,has_pending_question:e.has_pending_question,pending_question_tool_call_id:e.pending_question_tool_call_id??null,has_pending_user_message:e.has_pending_user_message}:null,qx=e=>{var n;const t=e.messages[e.messages.length-1];return{session_id:e.session_id,messageCount:e.messages.length,lastMessageId:(t==null?void 0:t.id)??null,lastRole:(t==null?void 0:t.role)??null,compressionEvents:((n=e.compression_events)==null?void 0:n.length)??0}},Hx=e=>({count:e.length,runningCount:e.filter(t=>t.is_running).length,sessions:e.slice(0,10).map(t=>({id:t.id,is_running:t.is_running,last_run_status:t.last_run_status??null,message_count:t.message_count,has_pending_question:t.has_pending_question??!1,running_child_count:t.running_child_count??0,updated_at:t.updated_at}))}),Xx=e=>({count:e.sessions.length,sessions:e.sessions.map(t=>({session_id:t.session_id,run_id:t.run_id,round_count:t.round_count,last_event_at:t.last_event_at??null,last_tool_name:t.last_tool_name??null,last_tool_phase:t.last_tool_phase??null,criticalEventCount:t.last_critical_events.length,runningChildCount:t.running_child_session_ids.length}))}),Ai=e=>({type:e.type,session_id:e.session_id??null,run_id:e.run_id??null,round_count:e.round_count??null,message:e.message??null,error:e.error??null,tool_call_id:e.tool_call_id??null}),cs=class cs{static getInstance(){return cs.instance||(cs.instance=new cs),cs.instance}async sendMessage(t){var r,s,o;ke("[AgentClient]","chat.request",{sessionId:t.session_id??null,model:t.model,modelRef:t.model_ref??null,provider:t.provider??null,messageLength:t.message.length,hasImages:(((r=t.images)==null?void 0:r.length)??0)>0,imageCount:((s=t.images)==null?void 0:s.length)??0,selectedSkillCount:((o=t.selected_skill_ids)==null?void 0:o.length)??0,workspacePath:t.workspace_path??null});const n=await ht.post("chat",t);return ke("[AgentClient]","chat.response",{requestedSessionId:t.session_id??null,sessionId:n.session_id,status:n.status}),n}async execute(t,n,r,s,o){const a={};n&&(a.model=n),r&&(a.reasoning_effort=r),s&&(a.client_sync=s),o&&(a.model_ref=o,a.provider=o.provider),ke("[AgentClient]","execute.request",{sessionId:t,model:a.model??null,reasoningEffort:a.reasoning_effort??null,modelRef:a.model_ref??null,provider:a.provider??null,clientSync:Wx(a.client_sync)});const i=await ht.post(`execute/${t}`,a);return ke("[AgentClient]","execute.response",{sessionId:t,status:i.status,runId:i.run_id??null,eventsUrl:i.events_url,sync:Ux(i.sync)}),i}async listSessions(){ke("[AgentClient]","sessions.list.request",{});const t=await ht.get("sessions");return ke("[AgentClient]","sessions.list.response",Hx(t.sessions)),t}async getTaskList(t){const n=encodeURIComponent(t),r=await ht.get(`task/${n}`);if(!(typeof r.title=="string"||r.items.length>0))return null;const o=new Date().toISOString();return{session_id:r.session_id,title:r.title??"Task List",items:r.items,created_at:o,updated_at:o}}async createSession(t){return ht.post("sessions",t)}async patchSession(t,n){const r=encodeURIComponent(t);await ht.patch(`sessions/${r}`,n)}async regenerateSessionTitle(t){const n=encodeURIComponent(t);await ht.post(`sessions/${n}/regenerate-title`)}async getSessionSystemPrompt(t){const n=encodeURIComponent(t);return ht.get(`sessions/${n}/system-prompt`)}async clearSession(t){const n=encodeURIComponent(t);await ht.post(`sessions/${n}/clear`)}async runProjectDream(t){const n=encodeURIComponent(t);return ht.post(`sessions/${n}/project-dream/run`)}async truncateSessionMessages(t,n){const r=encodeURIComponent(t);return ht.post(`sessions/${r}/messages/truncate`,n)}async restoreSessionState(t,n){const r=encodeURIComponent(t);return ht.post(`sessions/${r}/restore`,n)}async patchSessionMessage(t,n,r){const s=encodeURIComponent(t),o=encodeURIComponent(n);await ht.patch(`sessions/${s}/messages/${o}`,r)}async deleteSessionMessage(t,n){const r=encodeURIComponent(t),s=encodeURIComponent(n);await ht.delete(`sessions/${r}/messages/${s}`)}async cleanupSessions(t,n){await ht.post("sessions/cleanup",{mode:t,keep_pinned:n})}async devResetSessions(){await ht.post("dev/reset")}async getRunningSessions(){ke("[AgentClient]","runs.active.request",{});const t=await ht.get("runs/active");return ke("[AgentClient]","runs.active.response",Xx(t)),t}async listSchedules(){return ht.get("schedules")}async createSchedule(t){return ht.post("schedules",t)}async patchSchedule(t,n){const r=encodeURIComponent(t);return ht.patch(`schedules/${r}`,n)}async deleteSchedule(t){const n=encodeURIComponent(t);await ht.delete(`schedules/${n}`)}async runScheduleNow(t){const n=encodeURIComponent(t);await ht.post(`schedules/${n}/run`)}async listScheduleSessions(t){const n=encodeURIComponent(t);return ht.get(`schedules/${n}/sessions`)}async listScheduleRuns(t){const n=encodeURIComponent(t);return ht.get(`schedules/${n}/runs`)}async subscribeToEvents(t,n,r){const s=r==null?void 0:r.signal;ke("[AgentClient]","events.subscribe.request",{sessionId:t});const o=xs().trim().replace(/\/+$/,""),i=`${o.endsWith("/v1")?o.slice(0,-3):o}/api/v1/events/${encodeURIComponent(t)}`;return ke("[AgentClient]","events.subscribe.url",{sessionId:t,eventsUrl:i}),await new Promise((c,d)=>{if(s!=null&&s.aborted){ke("[AgentClient]","events.subscribe.aborted_before_connect",{sessionId:t}),c();return}let f=!1,p=!1,v=null;const g=()=>{ke("[AgentClient]","events.subscribe.abort",{sessionId:t,terminalSeen:p}),m()},w=()=>{v&&(v.close(),v=null),s==null||s.removeEventListener("abort",g)},m=()=>{f||(f=!0,ke("[AgentClient]","events.subscribe.resolve",{sessionId:t,terminalSeen:p,aborted:(s==null?void 0:s.aborted)??!1}),w(),c())},x=k=>{f||(f=!0,ke("[AgentClient]","events.subscribe.reject",{sessionId:t,terminalSeen:p,aborted:(s==null?void 0:s.aborted)??!1,error:k}),w(),d(k))};s==null||s.addEventListener("abort",g,{once:!0});try{v=new EventSource(i,{withCredentials:!0})}catch(k){x(k);return}v.onopen=()=>{ke("[AgentClient]","events.subscribe.open",{sessionId:t})},v.onmessage=k=>{const C=k.data;if(C==="[DONE]"){p=!0,ke("[AgentClient]","events.subscribe.done",{sessionId:t}),m();return}if(C!=="[KEEPALIVE]")try{const E=JSON.parse(C);(E.type==="execution_started"||E.type==="complete"||E.type==="cancelled"||E.type==="error"||E.type==="runner_progress"||E.type==="need_clarification")&&ke("[AgentClient]","events.subscribe.event",{sessionId:t,...Ai(E)}),this.handleEvent(E,n),(E.type==="complete"||E.type==="cancelled"||E.type==="error")&&(p=!0)}catch(E){console.warn("Failed to parse event:",C,E)}},v.onerror=()=>{if(ke("[AgentClient]","events.subscribe.error",{sessionId:t,terminalSeen:p,aborted:(s==null?void 0:s.aborted)??!1}),s!=null&&s.aborted||p){m();return}x(new Error(`EventSource connection failed for session ${t}`))}})}subscribeToAccountStream(t,n){const r=xs().trim().replace(/\/+$/,""),s=r.endsWith("/v1")?r.slice(0,-3):r,o=n!=null&&n.since&&n.since>0?`?since=${n.since}`:"",a=`${s}/api/v1/stream${o}`;ke("[AgentClient]","stream.subscribe.url",{url:a});const i=new EventSource(a,{withCredentials:!0});return i.onopen=()=>{var c;ke("[AgentClient]","stream.subscribe.open",{}),(c=t.onOpen)==null||c.call(t)},i.onmessage=c=>{var f;const d=c.data;if(d!=="[KEEPALIVE]")try{const p=JSON.parse(d);if(p.type==="feed_reset"){ke("[AgentClient]","stream.subscribe.feed_reset",p),(f=t.onReset)==null||f.call(t);return}t.onChange(p)}catch(p){console.warn("Failed to parse change-feed event:",d,p)}},i.onerror=()=>{var c;ke("[AgentClient]","stream.subscribe.error",{}),(c=t.onError)==null||c.call(t)},i}handleEvent(t,n){var r,s,o,a,i,c,d,f,p,v,g,w,m,x,k,C,E,T,P,A,O,$,U,J,ee,I,Y,z,D,ie,Q,ue,me;switch(t.type){case"token":(r=n.onToken)==null||r.call(n,t.content||"");break;case"reasoning_token":(s=n.onReasoningToken)==null||s.call(n,t.content||"");break;case"tool_token":(o=n.onToolToken)==null||o.call(n,t.tool_call_id||"",t.content||"");break;case"tool_start":(a=n.onToolStart)==null||a.call(n,t.tool_call_id||"",t.tool_name||"",t.arguments||{});break;case"tool_complete":t.result&&((i=n.onToolComplete)==null||i.call(n,t.tool_call_id||"",t.result));break;case"tool_error":(c=n.onToolError)==null||c.call(n,t.tool_call_id||"",t.error||"");break;case"task_list_updated":t.task_list&&((d=n.onTaskListUpdated)==null||d.call(n,t.task_list));break;case"task_list_item_progress":if(t.session_id&&t.item_id&&t.status&&t.tool_calls_count!==void 0&&t.version!==void 0){const V=t.status;if(!(V==="pending"||V==="in_progress"||V==="completed"||V==="blocked"))break;(f=n.onTaskListItemProgress)==null||f.call(n,{session_id:t.session_id,item_id:t.item_id,status:V,tool_calls_count:t.tool_calls_count,version:t.version})}break;case"task_list_completed":t.session_id&&t.total_rounds!==void 0&&t.total_tool_calls!==void 0&&((p=n.onTaskListCompleted)==null||p.call(n,t.session_id,t.total_rounds,t.total_tool_calls,t.completed_at));break;case"task_evaluation_started":t.session_id&&t.items_count!==void 0&&((v=n.onTaskEvaluationStarted)==null||v.call(n,t.session_id,t.items_count));break;case"task_evaluation_completed":t.session_id&&t.updates_count!==void 0&&t.reasoning&&((g=n.onTaskEvaluationCompleted)==null||g.call(n,t.session_id,t.updates_count,t.reasoning));break;case"token_budget_updated":t.usage&&"system_tokens"in t.usage&&((w=n.onTokenBudgetUpdated)==null||w.call(n,t.usage));break;case"context_compression_status":typeof t.phase=="string"&&typeof t.status=="string"&&((m=n.onContextCompressionStatus)==null||m.call(n,t.phase,t.status));break;case"tool_lifecycle":(x=n.onToolLifecycle)==null||x.call(n,t.tool_call_id||"",t.tool_name||"",t.phase||"",t.elapsed_ms,t.is_mutating,t.auto_approved,t.summary,t.error);break;case"context_summarized":t.summary_info&&((k=n.onContextSummarized)==null||k.call(n,t.summary_info));break;case"context_pressure_notification":typeof t.percent=="number"&&typeof t.level=="string"&&((C=n.onContextPressureNotification)==null||C.call(n,t.percent,t.level,t.message||""));break;case"sub_agent_started":t.parent_session_id&&t.child_session_id&&((E=n.onSubAgentStarted)==null||E.call(n,t.parent_session_id,t.child_session_id,t.title));break;case"sub_agent_event":t.parent_session_id&&t.child_session_id&&t.event&&((T=n.onSubAgentEvent)==null||T.call(n,t.parent_session_id,t.child_session_id,t.event));break;case"sub_agent_heartbeat":t.parent_session_id&&t.child_session_id&&t.timestamp&&((P=n.onSubAgentHeartbeat)==null||P.call(n,t.parent_session_id,t.child_session_id,t.timestamp));break;case"sub_agent_completed":t.parent_session_id&&t.child_session_id&&((A=n.onSubAgentCompleted)==null||A.call(n,t.parent_session_id,t.child_session_id,typeof t.status=="string"?t.status:"completed",t.error));break;case"execution_started":(O=n.onExecutionStarted)==null||O.call(n,t.run_id||"",t.started_at);break;case"runner_progress":t.session_id&&typeof t.round_count=="number"&&(($=n.onRunnerProgress)==null||$.call(n,t.session_id,t.round_count));break;case"need_clarification":(U=n.onNeedClarification)==null||U.call(n,t);break;case"notification":(J=n.onNotification)==null||J.call(n,t);break;case"session_title_updated":t.session_id&&typeof t.title=="string"&&typeof t.title_version=="number"&&(t.source==="auto"||t.source==="manual"||t.source==="fallback")&&typeof t.updated_at=="string"&&((ee=n.onSessionTitleUpdated)==null||ee.call(n,{type:"session_title_updated",session_id:t.session_id,title:t.title,title_version:t.title_version,source:t.source,updated_at:t.updated_at}));break;case"session_pinned_updated":t.session_id&&typeof t.pinned=="boolean"&&typeof t.updated_at=="string"&&((I=n.onSessionPinnedUpdated)==null||I.call(n,{type:"session_pinned_updated",session_id:t.session_id,pinned:t.pinned,updated_at:t.updated_at}));break;case"plan_mode_entered":(Y=n.onPlanModeEntered)==null||Y.call(n,t);break;case"plan_mode_exited":(z=n.onPlanModeExited)==null||z.call(n,t);break;case"plan_file_updated":(D=n.onPlanFileUpdated)==null||D.call(n,t);break;case"goal_status_changed":(ie=n.onGoalStatusChanged)==null||ie.call(n,t);break;case"complete":ke("[AgentClient]","events.dispatch.complete",Ai(t)),(Q=n.onComplete)==null||Q.call(n,t.usage);break;case"cancelled":ke("[AgentClient]","events.dispatch.cancelled",Ai(t)),(ue=n.onCancelled)==null||ue.call(n,t.message);break;case"error":ke("[AgentClient]","events.dispatch.error",Ai(t)),(me=n.onError)==null||me.call(n,t.message||t.error||"Unknown error");break;default:console.warn("Unknown event type:",t)}}async stopGeneration(t){await ht.post(`stop/${t}`)}async deleteSession(t){const n=encodeURIComponent(t);await ht.delete(`sessions/${n}`)}async getHistory(t,n){ke("[AgentClient]","history.request",{sessionId:t,sinceMessageId:n});const r=n?`history/${t}?since_message_id=${encodeURIComponent(n)}`:`history/${t}`,s=await ht.get(r);return ke("[AgentClient]","history.response",qx(s)),s}async healthCheck(){try{return await ht.get("health"),!0}catch{return!1}}};vt(cs,"instance");let Pn=cs;const Vs=Pn.getInstance(),fh="provider",Fa=Xr(e=>({isOpen:!1,origin:"chat",activeTabKey:fh,open:(t,n=fh)=>e({isOpen:!0,origin:t,activeTabKey:n}),close:()=>e({isOpen:!1}),setActiveTabKey:t=>e({activeTabKey:t})})),hh={BASE_URL:"./",DEV:!1,MODE:"production",PROD:!0,SSR:!1},Xa=new Map,ji=e=>{const t=Xa.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([n,r])=>[n,r.getState()])):{}},Yx=(e,t,n)=>{if(e===void 0)return{type:"untracked",connection:t.connect(n)};const r=Xa.get(n.name);if(r)return{type:"tracked",store:e,...r};const s={connection:t.connect(n),stores:{}};return Xa.set(n.name,s),{type:"tracked",store:e,...s}},Kx=(e,t)=>{if(t===void 0)return;const n=Xa.get(e);n&&(delete n.stores[t],Object.keys(n.stores).length===0&&Xa.delete(e))},Vx=e=>{var t,n;if(!e)return;const r=e.split(`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./index-CiVd5DfN.js","./vendor-markdown-CgV5F7BD.js","./vendor-i18n-Dm-c3D_C.js","./vendor-antd-Ce-qhZOr.js","./vendor-mermaid-BHpdkvG9.js","./main-ChXolejH.js","./main-B6snAd4S.css","./index-Cqta1ICV.js","./index-Dp6URzSg.js","./index-Bi-vGirQ.css","./index-Dx9b8gKz.js","./index-Do83dUqx.js","./index-BmjFP0ha.js","./core-Cfh-QHsP.js","./index-_XI0Qq6F.js","./vendor-pdf-Y2ffvHQu.js","./index-BxpXZ_sE.js","./index-3qkG_le_.css","./index-DL-W0HGE.js","./index-8u7yjQhY.css","./index-cUeYfAGY.js","./MetricsService-DKtqdqfq.js","./index-D9ODTr93.css","./index-BKJIPbua.js","./SubAgentsPanel-DAY10sR_.js","./index-BUT6M9A_.js","./index-AIUPRSCn.css","./index-DTUhSEaL.js","./onboardingStorage-BVcEpmTy.js","./vendor-charts-BzdulFf3.js","./index-CDWEKccv.js","./index-CLYKYSO0.css","./FeatureGuide-pqK-Gb1K.js"])))=>i.map(i=>d[i]);
2
+ var gw=Object.defineProperty;var yw=(e,t,n)=>t in e?gw(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var vt=(e,t,n)=>yw(e,typeof t!="symbol"?t+"":t,n);import{j as l,M as hr,S as Jt,a as Lg,t as Dg,p as Fg,b as vw,c as vd,d as bw,m as Ng,s as Sw,y as zg,e as Bg,h as gl,f as bd,r as Sd,g as wd,i as Wg}from"./vendor-markdown-CgV5F7BD.js";import{a as S,u as qe,R as rt,i as kt,c as ww,g as Cs}from"./vendor-i18n-Dm-c3D_C.js";import{_ as Lt,bN as xd,au as xw}from"./vendor-mermaid-BHpdkvG9.js";import{t as st,u as eh,v as _w,$ as Cw,aC as Qs,b8 as Ug,b9 as kw,a1 as Fl,N as Ee,az as Tw,O as ks,aw as Zs,ba as Pw,z as _r,a3 as Ts,bb as qg,Q as xu,j as ze,F as we,x as eo,w as bs,bc as Hg,Z as _d,a4 as Nl,q as dn,bd as Ew,be as Mw,l as ot,X as Tn,a2 as Zi,a7 as Rw,ab as _u,bf as Aw,bg as zl,bh as Xg,V as Cd,bi as Cu,bj as to,bk as jw,bl as Iw,J as yl,n as Ow,H as Yg,bm as $w,bn as Lw,W as no,as as Dw,o as Ye,a9 as Fw,y as kd,A as Jn,G as Bt,bo as Bl,bp as Kg,ay as Nw,aj as zw,D as Td,aO as Vg,bq as Bw,br as Ww,bs as Uw,I as Ss,bt as qw,bu as Hw,aq as Pd,ar as Cr,aD as vl,aN as ao,bv as _a,bw as Gg,bx as Jg,ak as Ed,ae as Xw,p as qa,ag as th,aL as Yw,U as nh,P as Qg,b4 as ku,aU as Kw,aF as Vw,ao as Gw,by as Jw,bz as Qw,aB as Zw,aP as ex,bA as tx,bB as nx,bC as rx,bD as sx,B as ox,b6 as Hs,am as Zg,bE as ax,bF as ey,ac as Md,an as ix,bG as lx,bH as cx,a6 as ux,bI as rh,bJ as sh}from"./vendor-antd-Ce-qhZOr.js";import{r as dx,A as fx,a as hx}from"./main-ChXolejH.js";function ty(e){const[t,n]=S.useState(()=>typeof window<"u"?window.matchMedia(e).matches:!1);return S.useEffect(()=>{if(typeof window>"u")return;const r=window.matchMedia(e);n(r.matches);const s=o=>{n(o.matches)};return r.addEventListener?r.addEventListener("change",s):r.addListener(s),()=>{r.removeEventListener?r.removeEventListener("change",s):r.removeListener(s)}},[e]),t}function Wl(){return ty("(max-width: 768px)")}const px=({chat:e,isSelected:t,compact:n=!1,onSelect:r,onDelete:s,onPin:o,onUnpin:a,onEdit:i,onGenerateTitle:c,onRunProjectDream:d,isGeneratingTitle:f,isRunningProjectDream:p,titleGenerationError:v})=>{const{t:g}=qe(),[w,m]=S.useState(!1),[x,k]=S.useState(e.title),[C,E]=S.useState(!1),[T,P]=S.useState(!1),{token:A}=st.useToken(),O=S.useCallback(z=>{z.stopPropagation(),i&&x.trim()&&i(e.id,x.trim()),m(!1)},[e.id,x,i]),$=S.useCallback(z=>{z.stopPropagation(),k(e.title),m(!1)},[e.title]),U=[{key:"pin",icon:e.pinned?l.jsx(eh,{style:{color:A.colorWarning}}):l.jsx(_w,{}),label:e.pinned?g("chat.actions.unpin"):g("chat.actions.pin"),onClick:({domEvent:z})=>{z.stopPropagation(),e.pinned?a(e.id):o(e.id)}},{key:"edit",icon:l.jsx(Cw,{}),label:g("chat.chatItem.edit"),onClick:({domEvent:z})=>{z.stopPropagation(),m(!0)}},...c?[{key:"generate-title",icon:f?l.jsx(Qs,{}):l.jsx(Ug,{style:v?{color:A.colorError}:void 0}),label:v||g("chat.actions.generateTitle"),disabled:f,onClick:({domEvent:z})=>{z.stopPropagation(),c(e.id)}}]:[],...d?[{key:"run-project-dream",icon:p?l.jsx(Qs,{}):l.jsx(kw,{}),label:g("chat.actions.runProjectDream"),disabled:p,onClick:({domEvent:z})=>{z.stopPropagation(),d(e.id)}}]:[],{type:"divider"},{key:"delete",icon:l.jsx(Fl,{}),label:g("common.delete"),danger:!0,onClick:({domEvent:z})=>{z.stopPropagation(),s(e.id)}}],J={padding:n?"4px 8px":"5px 8px",borderRadius:A.borderRadiusSM,marginBottom:0,cursor:"pointer",transition:"background-color 0.2s ease, box-shadow 0.2s ease",backgroundColor:t?"var(--lotus-primary-soft)":C||T?"var(--lotus-item-hover-bg)":"transparent",border:"1px solid transparent",borderColor:"transparent",position:"relative",overflow:"visible",boxShadow:t?`inset 2px 0 0 ${A.colorPrimary}`:"none",minHeight:n?28:30},ee={flex:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",fontSize:n?12:12.5,lineHeight:1.3,fontWeight:t?600:500,color:t?"var(--lotus-primary)":A.colorText},I={flex:1,fontSize:A.fontSizeSM,marginRight:A.marginSM},Y=w?[l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Tw,{style:{color:A.colorSuccess}}),onClick:O,"aria-label":g("common.save")},"save"),l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(ks,{style:{color:A.colorError}}),onClick:$,"aria-label":g("common.cancel")},"cancel")]:C||T?[l.jsx(Zs,{menu:{items:U,className:"lotus-sidebar-actions-menu"},trigger:["click"],placement:"bottomRight",overlayClassName:"lotus-sidebar-actions-dropdown",open:T,onOpenChange:z=>P(z),children:l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Pw,{}),"aria-label":g("common.moreActions","More actions"),onClick:z=>z.stopPropagation(),style:{color:A.colorTextSecondary,borderRadius:A.borderRadiusSM,background:"transparent",width:n?16:18,height:n?16:18,display:"flex",alignItems:"center",justifyContent:"center"}})},"more")]:[];return l.jsx(_r.Item,{style:J,tabIndex:0,onClick:()=>!w&&r(e.id),onKeyDown:z=>{z.key==="Enter"&&!w?(z.preventDefault(),r(e.id)):(z.key==="Delete"||z.key==="Backspace")&&!w&&(z.metaKey||z.ctrlKey)&&(z.preventDefault(),s(e.id))},onMouseEnter:()=>E(!0),onMouseLeave:()=>{T||E(!1)},onFocus:()=>E(!0),onBlur:()=>{T||E(!1)},actions:Y,"data-testid":"chat-item",role:"option","aria-selected":t,"aria-label":e.title||g("chat.sidebar.untitledChat"),children:l.jsx("div",{style:{flex:1,minWidth:0,display:"flex",alignItems:"center"},children:w?l.jsx(Ts,{value:x,onChange:z=>k(z.target.value),onClick:z=>z.stopPropagation(),onPressEnter:z=>{z.preventDefault(),O(z)},autoFocus:!0,style:I,variant:"borderless",size:"small"}):l.jsxs("div",{style:{...ee,display:"flex",alignItems:"center",gap:n?4:A.marginXS,minWidth:0},children:[e.pinned&&l.jsx(eh,{style:{color:A.colorWarning,fontSize:11,flexShrink:0}}),l.jsx("span",{style:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.title}),e.kind==="child"?l.jsx("span",{style:{color:A.colorInfo,fontSize:n?10:11,lineHeight:1.2,flexShrink:0,whiteSpace:"nowrap"},children:g("chat.chatItem.childTag")}):null,e.planMode?l.jsxs("span",{style:{color:A.colorPrimary,fontSize:n?10:11,lineHeight:1.2,flexShrink:0,whiteSpace:"nowrap",display:"inline-flex",alignItems:"center",gap:3},children:[l.jsx(qg,{}),g("chat.planMode.badge","Plan")]}):null]})})})},mx=(e,t)=>e.chat.id===t.chat.id&&e.chat.title===t.chat.title&&e.chat.pinned===t.chat.pinned&&e.chat.planMode===t.chat.planMode&&e.isSelected===t.isSelected&&e.compact===t.compact&&e.isGeneratingTitle===t.isGeneratingTitle&&e.isRunningProjectDream===t.isRunningProjectDream&&e.titleGenerationError===t.titleGenerationError,Tu=S.memo(px,mx);Tu.displayName="ChatItem";const oh=e=>({Today:0,Yesterday:1,"This Week":2,"This Month":3})[e]??4,gx=e=>{const t={},n=e.filter(s=>s.pinned);n.length>0&&(t.Pinned=n.sort((s,o)=>o.createdAt-s.createdAt));const r=e.filter(s=>!s.pinned&&!!s.createdByScheduleId);return r.length>0&&(t.Scheduled=r.sort((s,o)=>o.createdAt-s.createdAt)),e.filter(s=>!s.pinned&&!s.createdByScheduleId).forEach(s=>{const a=new Date(s.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"});t[a]||(t[a]=[]),t[a].push(s)}),Object.keys(t).forEach(s=>{t[s].sort((o,a)=>a.createdAt-o.createdAt)}),t},yx=e=>{const t=n=>Array.isArray(n)?n.reduce((r,s)=>Math.max(r,s.createdAt),0):Object.values(n).reduce((r,s)=>{const o=s.reduce((a,i)=>Math.max(a,i.createdAt),0);return Math.max(r,o)},0);return Object.keys(e).sort((n,r)=>{if(n==="Pinned")return-1;if(r==="Pinned")return 1;if(n==="Scheduled")return-1;if(r==="Scheduled")return 1;const s=e[n],o=e[r];if(!s||!o)return 0;const a=t(s),i=t(o);return a!==i?i-a:oh(n)-oh(r)})},vx=(e,t)=>e[t]?e[t].map(n=>n.id):[],ny=(e,t)=>e[t]?e[t].length:0,bx=e=>e.createdByScheduleId?"Scheduled":new Date(e.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"}),ah=(e,t)=>{const r={Today:"chat.sidebar.dateGroups.today",Yesterday:"chat.sidebar.dateGroups.yesterday","This Week":"chat.sidebar.dateGroups.thisWeek","This Month":"chat.sidebar.dateGroups.thisMonth",Pinned:"chat.sidebar.dateGroups.pinned",Scheduled:"chat.sidebar.dateGroups.scheduled"}[e];return r?t(r):e},Sx=({groupedChatsByDate:e,childrenByRoot:t,expandedRootIds:n,onToggleRootExpanded:r,sortedDateKeys:s,expandedKeys:o,onCollapseChange:a,currentSessionId:i,onSelectChat:c,onDeleteChat:d,onDeleteByDate:f,onPinChat:p,onUnpinChat:v,onEditTitle:g,onGenerateTitle:w,onRunProjectDream:m,titleGenerationState:x,projectDreamState:k,token:C,hasActiveFilters:E,onClearFilters:T})=>{const{t:P}=qe(),A=S.useMemo(()=>s.length?s.map($=>{const U=e[$],J=ny(e,$);return{dateKey:$,dateGroup:U,totalChatsInDate:J}}):[],[e,s]);if(!s.length)return l.jsx(xu,{image:xu.PRESENTED_IMAGE_SIMPLE,description:l.jsxs(ze,{direction:"vertical",size:4,align:"center",children:[l.jsx("span",{style:{color:C.colorTextSecondary},children:E?P("chat.sidebar.empty.noMatches","No matching sessions"):P("chat.sidebar.empty.noSessions")}),l.jsx("span",{style:{color:C.colorTextSecondary,fontSize:12},children:E?P("chat.sidebar.empty.filterHint","Try adjusting your search or filters"):P("chat.sidebar.empty.hint")}),E&&l.jsx(Ee,{size:"small",type:"link",onClick:T,children:P("chat.sidebar.empty.clearFilters","Clear filters")})]})});const O=new Set(o);return l.jsx("div",{style:{width:"100%",display:"flex",flexDirection:"column",gap:2},children:A.map(({dateKey:$,dateGroup:U,totalChatsInDate:J})=>{const ee=O.has($);return l.jsxs("div",{style:{borderRadius:C.borderRadiusSM,background:"transparent",padding:0},children:[l.jsxs(we,{align:"center",justify:"space-between",style:{cursor:"pointer",padding:"4px 8px",borderRadius:C.borderRadiusSM,transition:"background-color 0.2s ease, color 0.2s ease",border:"1px solid transparent"},role:"button",tabIndex:0,"aria-expanded":ee,"aria-label":`${ah($,P)} (${J})`,onKeyDown:I=>{if(I.key==="Enter"||I.key===" "){I.preventDefault();const Y=new Set(O);Y.has($)?Y.delete($):Y.add($),a(Array.from(Y))}},onMouseEnter:I=>{I.currentTarget.style.background="var(--lotus-sidebar-item-hover-bg, rgba(204, 251, 241, 0.76))",I.currentTarget.style.borderColor="transparent";const Y=I.currentTarget.querySelector(".chat-sidebar-date-group-delete");Y&&(Y.style.opacity="1")},onMouseLeave:I=>{I.currentTarget.style.background="transparent",I.currentTarget.style.borderColor="transparent";const Y=I.currentTarget.querySelector(".chat-sidebar-date-group-delete");Y&&(Y.style.opacity="0")},onClick:()=>{const I=new Set(O);I.has($)?I.delete($):I.add($),a(Array.from(I))},className:"chat-sidebar-date-group-header",children:[l.jsxs(we,{align:"center",gap:"small",style:{minWidth:0},children:[ee?l.jsx(eo,{style:{fontSize:12,opacity:.6}}):l.jsx(bs,{style:{fontSize:12,opacity:.6}}),l.jsxs("span",{style:{fontSize:10.5,fontWeight:700,textTransform:"uppercase",letterSpacing:"0.3px",color:$==="Today"?"var(--lotus-primary)":C.colorTextSecondary,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[ah($,P)," (",J,")"]})]}),l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Fl,{}),className:"chat-sidebar-date-group-delete",style:{color:C.colorTextTertiary,opacity:0,transition:"opacity 0.2s ease"},onClick:I=>{I.stopPropagation(),f($)}})]}),ee?l.jsx("div",{style:{marginTop:2},children:l.jsx(_r,{itemLayout:"horizontal",dataSource:U,split:!1,renderItem:I=>{var Y,z,D,ie,Q,ue;return l.jsxs("div",{children:[l.jsxs(we,{align:"center",gap:6,style:{padding:"4px 8px"},children:[(Y=t[I.id])!=null&&Y.length?l.jsxs(Ee,{size:"small",type:"text",style:{padding:0,minWidth:18,height:18,display:"inline-flex",alignItems:"center",gap:2},"aria-label":n.has(I.id)?P("chat.sidebar.actions.collapseChildren"):P("chat.sidebar.actions.expandChildren"),onClick:me=>{me.preventDefault(),me.stopPropagation(),r(I.id)},children:[l.jsx(Hg,{style:{fontSize:12,color:"var(--lotus-primary)",opacity:n.has(I.id)?1:.85}}),l.jsx("span",{style:{fontSize:9,fontWeight:600,lineHeight:1,color:"var(--lotus-primary)"},children:t[I.id].length})]}):l.jsx("div",{style:{width:18}}),l.jsx("div",{style:{flex:1,minWidth:0,marginLeft:-8},children:l.jsx(Tu,{chat:I,compact:!0,isSelected:I.id===i,onSelect:c,onDelete:d,onPin:p,onUnpin:v,onEdit:g,onGenerateTitle:w,onRunProjectDream:m,isGeneratingTitle:((z=x[I.id])==null?void 0:z.status)==="loading",isRunningProjectDream:((D=k[I.id])==null?void 0:D.status)==="loading",titleGenerationError:((ie=x[I.id])==null?void 0:ie.status)==="error"?(Q=x[I.id])==null?void 0:Q.error:void 0})})]}),n.has(I.id)&&(((ue=t[I.id])==null?void 0:ue.length)??0)>0?l.jsx("div",{style:{marginLeft:18,marginTop:1},children:l.jsx(_r,{itemLayout:"horizontal",dataSource:t[I.id],split:!1,renderItem:me=>{var V,ae,ve,re;return l.jsx("div",{style:{paddingLeft:8,borderLeft:`1px solid ${C.colorBorderSecondary}`,marginLeft:2},children:l.jsx(Tu,{chat:me,compact:!0,isSelected:me.id===i,onSelect:c,onDelete:d,onPin:p,onUnpin:v,onEdit:g,onGenerateTitle:w,onRunProjectDream:m,isGeneratingTitle:((V=x[me.id])==null?void 0:V.status)==="loading",isRunningProjectDream:((ae=k[me.id])==null?void 0:ae.status)==="loading",titleGenerationError:((ve=x[me.id])==null?void 0:ve.status)==="error"?(re=x[me.id])==null?void 0:re.error:void 0})},me.id)}})}):null]},I.id)}})}):null]},$)})})},ih=e=>{let t;const n=new Set,r=(d,f)=>{const p=typeof d=="function"?d(t):d;if(!Object.is(p,t)){const v=t;t=f??(typeof p!="object"||p===null)?p:Object.assign({},t,p),n.forEach(g=>g(t,v))}},s=()=>t,i={setState:r,getState:s,getInitialState:()=>c,subscribe:d=>(n.add(d),()=>n.delete(d))},c=t=e(r,s,i);return i},wx=e=>e?ih(e):ih,xx=e=>e;function _x(e,t=xx){const n=rt.useSyncExternalStore(e.subscribe,()=>t(e.getState()),()=>t(e.getInitialState()));return rt.useDebugValue(n),n}const lh=e=>{const t=wx(e),n=r=>_x(t,r);return Object.assign(n,t),n},Xr=e=>e?lh(e):lh,ry="copilot_ui_theme_v1";function Cx(){var e;try{const t=localStorage.getItem(ry);if(t==="light"||t==="dark")return t}catch{}return(e=window.matchMedia)!=null&&e.call(window,"(prefers-color-scheme: dark)").matches?"dark":"light"}const bl=Xr(e=>({themeMode:Cx(),setThemeMode:t=>e({themeMode:t}),toggleTheme:()=>e(t=>({themeMode:t.themeMode==="dark"?"light":"dark"}))})),kx="2026.6.17",Tx={version:kx},Px=Tx.version,{Text:Ex}=ot,Mx=({collapsed:e,onNewChat:t,onOpenSettings:n,token:r})=>{const{t:s}=qe(),o=bl(f=>f.themeMode),a=bl(f=>f.toggleTheme),i=s("chat.sidebar.newSession"),c=s("settings.page.title"),d=o==="dark"?s("settings.app.lightMode","Light mode"):s("settings.app.darkMode","Dark mode");return l.jsxs(we,{vertical:!0,gap:e?"small":10,style:{padding:e?10:12,background:"transparent",borderTop:`1px solid ${r.colorBorderSecondary}`},children:[l.jsx(Ee,{"data-testid":"new-chat","data-tour-id":"new-session",type:"primary",icon:l.jsx(_d,{}),onClick:t,block:!e,shape:"default",size:"small",title:i,"aria-label":i,className:"lotus-primary-cta",style:{...e?{width:"40px",height:"40px",margin:"0 auto"}:{},borderRadius:r.borderRadiusLG,minHeight:e?40:38,fontWeight:600},children:!e&&i}),l.jsxs(we,{gap:6,align:"center",children:[l.jsx(Ee,{"data-testid":"open-settings","data-tour-id":"open-settings",icon:l.jsx(Nl,{}),onClick:n,block:!e,shape:"default",size:"small",title:c,"aria-label":c,className:"lotus-secondary-button",style:{...e?{width:"40px",height:"40px",margin:"0 auto"}:{},borderRadius:r.borderRadiusLG,minHeight:e?40:36,flex:e?void 0:1},children:!e&&c}),!e&&l.jsx(dn,{title:d,placement:"top",children:l.jsx(Ee,{"data-testid":"toggle-theme",type:"text",icon:o==="dark"?l.jsx(Ew,{}):l.jsx(Mw,{}),onClick:a,"aria-label":d,className:"lotus-toolbar-icon",style:{width:36,height:36,borderRadius:r.borderRadiusLG,flexShrink:0}})})]}),!e&&l.jsxs(Ex,{type:"secondary","data-testid":"app-version-badge",style:{fontSize:11,textAlign:"center",userSelect:"text"},children:[s("settings.appTab.runningVersion","Running version"),": v",Px]})]})},ch=e=>Symbol.iterator in e,uh=e=>"entries"in e,dh=(e,t)=>{const n=e instanceof Map?e:new Map(e.entries()),r=t instanceof Map?t:new Map(t.entries());if(n.size!==r.size)return!1;for(const[s,o]of n)if(!Object.is(o,r.get(s)))return!1;return!0},Rx=(e,t)=>{const n=e[Symbol.iterator](),r=t[Symbol.iterator]();let s=n.next(),o=r.next();for(;!s.done&&!o.done;){if(!Object.is(s.value,o.value))return!1;s=n.next(),o=r.next()}return!!s.done&&!!o.done};function Ax(e,t){return Object.is(e,t)?!0:typeof e!="object"||e===null||typeof t!="object"||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t)?!1:ch(e)&&ch(t)?uh(e)&&uh(t)?dh(e,t):Rx(e,t):dh({entries:()=>Object.entries(e)},{entries:()=>Object.entries(t)})}function Da(e){const t=rt.useRef(void 0);return n=>{const r=e(n);return Ax(t.current,r)?t.current:t.current=r}}const sy=()=>!1,oy=e=>{if(!sy())return!1;try{return localStorage.getItem(e)==="1"}catch{return!1}},jx=()=>oy("bodhi_debug_ui_layout"),Dn=(e,t)=>{jx()&&console.log(`[ui-layout] ${e}`,t??"")},ke=(e,t,...n)=>{sy()&&oy("bodhi_debug_verbose")&&console.log(`${e} ${t}`,...n)};var Ec={};const Mc="copilot_backend_base_url",ay="http://127.0.0.1:9562/v1",Ix=9562,ws=e=>e.trim().replace(/\/+$/,""),Ox=()=>{const t=Ec==null?void 0:Ec.VITE_BACKEND_BASE_URL;return t?ws(t):null},ni=()=>{const e=globalThis.location;if(!e)return null;const t=typeof e.protocol=="string"?e.protocol:"",n=typeof e.hostname=="string"?e.hostname:"";return!t||!n?null:{protocol:t,hostname:n}},Rd=e=>{const t=e.trim().toLowerCase();return t==="localhost"||t==="127.0.0.1"||t==="::1"},$x=(e=ni())=>(e==null?void 0:e.protocol.toLowerCase())==="https:",Lx=e=>{try{return new URL(ws(e)).protocol.toLowerCase()==="http:"}catch{return!1}},Dx=e=>{try{const t=new URL(ws(e));return Rd(t.hostname)}catch{return!1}},Fx=(e=ni())=>{if(!e)return null;const t=e.protocol.toLowerCase(),n=e.hostname.trim();return n?t==="https:"?ws(`https://${n}/v1`):t==="http:"?ws(`http://${n}/v1`):null:null},Nx=(e,t=ni())=>{if(!t)return!1;const n=t.hostname.trim();return n?$x(t)&&Lx(e)?!0:Rd(n)?!1:Dx(e):!1},zx=(e=ni())=>{if(!e)return null;const t=e.protocol.toLowerCase();if(t!=="http:"&&t!=="https:")return null;const n=e.hostname.trim();return n?t==="https:"?Fx(e):Rd(n)?ay:ws(`http://${n}:${Ix}/v1`):null},Bx=()=>{const e=Ox();return e||(zx()??ay)},xs=()=>{const e=ni(),t=localStorage.getItem(Mc);if(t){const n=ws(t);if(Nx(n,e))console.warn("Ignoring stored backend override because it is incompatible with the current page origin:",n),localStorage.removeItem(Mc);else try{return new URL(n),n}catch{console.warn("Invalid stored backend URL, using default:",n),localStorage.removeItem(Mc)}}return Bx()};class Ha extends Error{constructor(t,n,r,s){super(t),this.status=n,this.statusText=r,this.body=s,this.name="ApiError"}}function V$(e){return e instanceof Ha}class iy{constructor(t={}){vt(this,"baseUrl");vt(this,"defaultHeaders");this.baseUrl=t.baseUrl??this.resolveBaseUrl(),this.defaultHeaders=t.defaultHeaders??{"Content-Type":"application/json"}}resolveBaseUrl(){const t=xs().trim().replace(/\/+$/,"");return t.endsWith("/v1")?t:`${t}/v1`}buildUrl(t){const n=t.replace(/^\/+/,"");return`${this.baseUrl}/${n}`}async handleResponse(t){var r,s,o;if(!t.ok){const a=await t.text().catch(()=>{});let i=t.statusText;if(a)try{const c=JSON.parse(a),d=typeof(c==null?void 0:c.error)=="object"?(r=c.error)==null?void 0:r.message:void 0;i=(typeof(c==null?void 0:c.error)=="string"?c.error:void 0)||(typeof d=="string"?d:void 0)||c.message||c.detail||t.statusText}catch{i=a||t.statusText}throw new Ha(i,t.status,t.statusText,a)}return t.status===204?void 0:(((o=(s=t.headers)==null?void 0:s.get)==null?void 0:o.call(s,"content-type"))||"").includes("application/json")?t.json():typeof t.text=="function"?await t.text():t.json()}delay(t){return new Promise(n=>setTimeout(n,t))}async fetchWithRetry(t,n,r=3){let s=null;for(let o=0;o<r;o++)try{const a=await fetch(t,n);if(a.status>=500&&o<r-1){const i=1e3*Math.pow(2,o);console.warn(`Request failed with ${a.status}, retrying in ${i}ms (attempt ${o+1}/${r})`),await this.delay(i);continue}return a}catch(a){if(s=a,o<r-1){const i=1e3*Math.pow(2,o);console.warn(`Network error: ${s.message}, retrying in ${i}ms (attempt ${o+1}/${r})`),await this.delay(i)}}throw s||new Error("Max retries exceeded")}async get(t,n){const r=this.buildUrl(t),s=new AbortController,o=setTimeout(()=>s.abort(),3e4);try{const a=await this.fetchWithRetry(r,{...n,method:"GET",headers:{...this.defaultHeaders,...n==null?void 0:n.headers},credentials:"include",signal:s.signal},3);return this.handleResponse(a)}finally{clearTimeout(o)}}async post(t,n,r){const s=this.buildUrl(t),o=new AbortController,a=setTimeout(()=>o.abort(),3e4);try{const i=await this.fetchWithRetry(s,{...r,method:"POST",headers:{...this.defaultHeaders,...r==null?void 0:r.headers},credentials:"include",body:n?JSON.stringify(n):void 0,signal:o.signal},3);return this.handleResponse(i)}finally{clearTimeout(a)}}async put(t,n,r){const s=this.buildUrl(t),o=new AbortController,a=setTimeout(()=>o.abort(),3e4);try{const i=await this.fetchWithRetry(s,{...r,method:"PUT",headers:{...this.defaultHeaders,...r==null?void 0:r.headers},credentials:"include",body:n?JSON.stringify(n):void 0,signal:o.signal},3);return this.handleResponse(i)}finally{clearTimeout(a)}}async patch(t,n,r){const s=this.buildUrl(t),o=new AbortController,a=setTimeout(()=>o.abort(),3e4);try{const i=await this.fetchWithRetry(s,{...r,method:"PATCH",headers:{...this.defaultHeaders,...r==null?void 0:r.headers},credentials:"include",body:n?JSON.stringify(n):void 0,signal:o.signal},3);return this.handleResponse(i)}finally{clearTimeout(a)}}async delete(t,n){const r=this.buildUrl(t),s=new AbortController,o=setTimeout(()=>s.abort(),3e4);try{const a=await this.fetchWithRetry(r,{...n,method:"DELETE",headers:{...this.defaultHeaders,...n==null?void 0:n.headers},credentials:"include",signal:s.signal},3);return this.handleResponse(a)}finally{clearTimeout(o)}}async request(t,n,r){const s=this.buildUrl(n),o=new AbortController,a=setTimeout(()=>o.abort(),3e4);try{const i=await this.fetchWithRetry(s,{...r,method:t,headers:{...this.defaultHeaders,...r==null?void 0:r.headers},credentials:"include",signal:o.signal},3);return this.handleResponse(i)}finally{clearTimeout(a)}}async fetchRaw(t,n){const r=this.buildUrl(t),s=await fetch(r,{...n,headers:{...this.defaultHeaders,...n==null?void 0:n.headers},credentials:"include"});if(!s.ok)throw new Ha(`API request failed: ${s.statusText}`,s.status,s.statusText);return s}}const Ue=new iy,ht=new iy({baseUrl:(()=>{let e=xs().trim().replace(/\/+$/,"");return e.endsWith("/v1")&&(e=e.slice(0,-3)),`${e}/api/v1`})()}),Wx=e=>e?{client_message_count:e.client_message_count,client_last_message_id:e.client_last_message_id??null,client_has_pending_question:e.client_has_pending_question,client_pending_question_tool_call_id:e.client_pending_question_tool_call_id??null}:null,Ux=e=>e?{need_sync:e.need_sync,reason:e.reason??null,server_message_count:e.server_message_count,server_last_message_id:e.server_last_message_id??null,has_pending_question:e.has_pending_question,pending_question_tool_call_id:e.pending_question_tool_call_id??null,has_pending_user_message:e.has_pending_user_message}:null,qx=e=>{var n;const t=e.messages[e.messages.length-1];return{session_id:e.session_id,messageCount:e.messages.length,lastMessageId:(t==null?void 0:t.id)??null,lastRole:(t==null?void 0:t.role)??null,compressionEvents:((n=e.compression_events)==null?void 0:n.length)??0}},Hx=e=>({count:e.length,runningCount:e.filter(t=>t.is_running).length,sessions:e.slice(0,10).map(t=>({id:t.id,is_running:t.is_running,last_run_status:t.last_run_status??null,message_count:t.message_count,has_pending_question:t.has_pending_question??!1,running_child_count:t.running_child_count??0,updated_at:t.updated_at}))}),Xx=e=>({count:e.sessions.length,sessions:e.sessions.map(t=>({session_id:t.session_id,run_id:t.run_id,round_count:t.round_count,last_event_at:t.last_event_at??null,last_tool_name:t.last_tool_name??null,last_tool_phase:t.last_tool_phase??null,criticalEventCount:t.last_critical_events.length,runningChildCount:t.running_child_session_ids.length}))}),Ai=e=>({type:e.type,session_id:e.session_id??null,run_id:e.run_id??null,round_count:e.round_count??null,message:e.message??null,error:e.error??null,tool_call_id:e.tool_call_id??null}),cs=class cs{static getInstance(){return cs.instance||(cs.instance=new cs),cs.instance}async sendMessage(t){var r,s,o;ke("[AgentClient]","chat.request",{sessionId:t.session_id??null,model:t.model,modelRef:t.model_ref??null,provider:t.provider??null,messageLength:t.message.length,hasImages:(((r=t.images)==null?void 0:r.length)??0)>0,imageCount:((s=t.images)==null?void 0:s.length)??0,selectedSkillCount:((o=t.selected_skill_ids)==null?void 0:o.length)??0,workspacePath:t.workspace_path??null});const n=await ht.post("chat",t);return ke("[AgentClient]","chat.response",{requestedSessionId:t.session_id??null,sessionId:n.session_id,status:n.status}),n}async execute(t,n,r,s,o){const a={};n&&(a.model=n),r&&(a.reasoning_effort=r),s&&(a.client_sync=s),o&&(a.model_ref=o,a.provider=o.provider),ke("[AgentClient]","execute.request",{sessionId:t,model:a.model??null,reasoningEffort:a.reasoning_effort??null,modelRef:a.model_ref??null,provider:a.provider??null,clientSync:Wx(a.client_sync)});const i=await ht.post(`execute/${t}`,a);return ke("[AgentClient]","execute.response",{sessionId:t,status:i.status,runId:i.run_id??null,eventsUrl:i.events_url,sync:Ux(i.sync)}),i}async listSessions(){ke("[AgentClient]","sessions.list.request",{});const t=await ht.get("sessions");return ke("[AgentClient]","sessions.list.response",Hx(t.sessions)),t}async getTaskList(t){const n=encodeURIComponent(t),r=await ht.get(`task/${n}`);if(!(typeof r.title=="string"||r.items.length>0))return null;const o=new Date().toISOString();return{session_id:r.session_id,title:r.title??"Task List",items:r.items,created_at:o,updated_at:o}}async createSession(t){return ht.post("sessions",t)}async patchSession(t,n){const r=encodeURIComponent(t);await ht.patch(`sessions/${r}`,n)}async regenerateSessionTitle(t){const n=encodeURIComponent(t);await ht.post(`sessions/${n}/regenerate-title`)}async getSessionSystemPrompt(t){const n=encodeURIComponent(t);return ht.get(`sessions/${n}/system-prompt`)}async clearSession(t){const n=encodeURIComponent(t);await ht.post(`sessions/${n}/clear`)}async runProjectDream(t){const n=encodeURIComponent(t);return ht.post(`sessions/${n}/project-dream/run`)}async truncateSessionMessages(t,n){const r=encodeURIComponent(t);return ht.post(`sessions/${r}/messages/truncate`,n)}async restoreSessionState(t,n){const r=encodeURIComponent(t);return ht.post(`sessions/${r}/restore`,n)}async patchSessionMessage(t,n,r){const s=encodeURIComponent(t),o=encodeURIComponent(n);await ht.patch(`sessions/${s}/messages/${o}`,r)}async deleteSessionMessage(t,n){const r=encodeURIComponent(t),s=encodeURIComponent(n);await ht.delete(`sessions/${r}/messages/${s}`)}async cleanupSessions(t,n){await ht.post("sessions/cleanup",{mode:t,keep_pinned:n})}async devResetSessions(){await ht.post("dev/reset")}async getRunningSessions(){ke("[AgentClient]","runs.active.request",{});const t=await ht.get("runs/active");return ke("[AgentClient]","runs.active.response",Xx(t)),t}async listSchedules(){return ht.get("schedules")}async createSchedule(t){return ht.post("schedules",t)}async patchSchedule(t,n){const r=encodeURIComponent(t);return ht.patch(`schedules/${r}`,n)}async deleteSchedule(t){const n=encodeURIComponent(t);await ht.delete(`schedules/${n}`)}async runScheduleNow(t){const n=encodeURIComponent(t);await ht.post(`schedules/${n}/run`)}async listScheduleSessions(t){const n=encodeURIComponent(t);return ht.get(`schedules/${n}/sessions`)}async listScheduleRuns(t){const n=encodeURIComponent(t);return ht.get(`schedules/${n}/runs`)}async subscribeToEvents(t,n,r){const s=r==null?void 0:r.signal;ke("[AgentClient]","events.subscribe.request",{sessionId:t});const o=xs().trim().replace(/\/+$/,""),i=`${o.endsWith("/v1")?o.slice(0,-3):o}/api/v1/events/${encodeURIComponent(t)}`;return ke("[AgentClient]","events.subscribe.url",{sessionId:t,eventsUrl:i}),await new Promise((c,d)=>{if(s!=null&&s.aborted){ke("[AgentClient]","events.subscribe.aborted_before_connect",{sessionId:t}),c();return}let f=!1,p=!1,v=null;const g=()=>{ke("[AgentClient]","events.subscribe.abort",{sessionId:t,terminalSeen:p}),m()},w=()=>{v&&(v.close(),v=null),s==null||s.removeEventListener("abort",g)},m=()=>{f||(f=!0,ke("[AgentClient]","events.subscribe.resolve",{sessionId:t,terminalSeen:p,aborted:(s==null?void 0:s.aborted)??!1}),w(),c())},x=k=>{f||(f=!0,ke("[AgentClient]","events.subscribe.reject",{sessionId:t,terminalSeen:p,aborted:(s==null?void 0:s.aborted)??!1,error:k}),w(),d(k))};s==null||s.addEventListener("abort",g,{once:!0});try{v=new EventSource(i,{withCredentials:!0})}catch(k){x(k);return}v.onopen=()=>{ke("[AgentClient]","events.subscribe.open",{sessionId:t})},v.onmessage=k=>{const C=k.data;if(C==="[DONE]"){p=!0,ke("[AgentClient]","events.subscribe.done",{sessionId:t}),m();return}if(C!=="[KEEPALIVE]")try{const E=JSON.parse(C);(E.type==="execution_started"||E.type==="complete"||E.type==="cancelled"||E.type==="error"||E.type==="runner_progress"||E.type==="need_clarification")&&ke("[AgentClient]","events.subscribe.event",{sessionId:t,...Ai(E)}),this.handleEvent(E,n),(E.type==="complete"||E.type==="cancelled"||E.type==="error")&&(p=!0)}catch(E){console.warn("Failed to parse event:",C,E)}},v.onerror=()=>{if(ke("[AgentClient]","events.subscribe.error",{sessionId:t,terminalSeen:p,aborted:(s==null?void 0:s.aborted)??!1}),s!=null&&s.aborted||p){m();return}x(new Error(`EventSource connection failed for session ${t}`))}})}subscribeToAccountStream(t,n){const r=xs().trim().replace(/\/+$/,""),s=r.endsWith("/v1")?r.slice(0,-3):r,o=n!=null&&n.since&&n.since>0?`?since=${n.since}`:"",a=`${s}/api/v1/stream${o}`;ke("[AgentClient]","stream.subscribe.url",{url:a});const i=new EventSource(a,{withCredentials:!0});return i.onopen=()=>{var c;ke("[AgentClient]","stream.subscribe.open",{}),(c=t.onOpen)==null||c.call(t)},i.onmessage=c=>{var f;const d=c.data;if(d!=="[KEEPALIVE]")try{const p=JSON.parse(d);if(p.type==="feed_reset"){ke("[AgentClient]","stream.subscribe.feed_reset",p),(f=t.onReset)==null||f.call(t);return}t.onChange(p)}catch(p){console.warn("Failed to parse change-feed event:",d,p)}},i.onerror=()=>{var c;ke("[AgentClient]","stream.subscribe.error",{}),(c=t.onError)==null||c.call(t)},i}handleEvent(t,n){var r,s,o,a,i,c,d,f,p,v,g,w,m,x,k,C,E,T,P,A,O,$,U,J,ee,I,Y,z,D,ie,Q,ue,me;switch(t.type){case"token":(r=n.onToken)==null||r.call(n,t.content||"");break;case"reasoning_token":(s=n.onReasoningToken)==null||s.call(n,t.content||"");break;case"tool_token":(o=n.onToolToken)==null||o.call(n,t.tool_call_id||"",t.content||"");break;case"tool_start":(a=n.onToolStart)==null||a.call(n,t.tool_call_id||"",t.tool_name||"",t.arguments||{});break;case"tool_complete":t.result&&((i=n.onToolComplete)==null||i.call(n,t.tool_call_id||"",t.result));break;case"tool_error":(c=n.onToolError)==null||c.call(n,t.tool_call_id||"",t.error||"");break;case"task_list_updated":t.task_list&&((d=n.onTaskListUpdated)==null||d.call(n,t.task_list));break;case"task_list_item_progress":if(t.session_id&&t.item_id&&t.status&&t.tool_calls_count!==void 0&&t.version!==void 0){const V=t.status;if(!(V==="pending"||V==="in_progress"||V==="completed"||V==="blocked"))break;(f=n.onTaskListItemProgress)==null||f.call(n,{session_id:t.session_id,item_id:t.item_id,status:V,tool_calls_count:t.tool_calls_count,version:t.version})}break;case"task_list_completed":t.session_id&&t.total_rounds!==void 0&&t.total_tool_calls!==void 0&&((p=n.onTaskListCompleted)==null||p.call(n,t.session_id,t.total_rounds,t.total_tool_calls,t.completed_at));break;case"task_evaluation_started":t.session_id&&t.items_count!==void 0&&((v=n.onTaskEvaluationStarted)==null||v.call(n,t.session_id,t.items_count));break;case"task_evaluation_completed":t.session_id&&t.updates_count!==void 0&&t.reasoning&&((g=n.onTaskEvaluationCompleted)==null||g.call(n,t.session_id,t.updates_count,t.reasoning));break;case"token_budget_updated":t.usage&&"system_tokens"in t.usage&&((w=n.onTokenBudgetUpdated)==null||w.call(n,t.usage));break;case"context_compression_status":typeof t.phase=="string"&&typeof t.status=="string"&&((m=n.onContextCompressionStatus)==null||m.call(n,t.phase,t.status));break;case"tool_lifecycle":(x=n.onToolLifecycle)==null||x.call(n,t.tool_call_id||"",t.tool_name||"",t.phase||"",t.elapsed_ms,t.is_mutating,t.auto_approved,t.summary,t.error);break;case"context_summarized":t.summary_info&&((k=n.onContextSummarized)==null||k.call(n,t.summary_info));break;case"context_pressure_notification":typeof t.percent=="number"&&typeof t.level=="string"&&((C=n.onContextPressureNotification)==null||C.call(n,t.percent,t.level,t.message||""));break;case"sub_agent_started":t.parent_session_id&&t.child_session_id&&((E=n.onSubAgentStarted)==null||E.call(n,t.parent_session_id,t.child_session_id,t.title));break;case"sub_agent_event":t.parent_session_id&&t.child_session_id&&t.event&&((T=n.onSubAgentEvent)==null||T.call(n,t.parent_session_id,t.child_session_id,t.event));break;case"sub_agent_heartbeat":t.parent_session_id&&t.child_session_id&&t.timestamp&&((P=n.onSubAgentHeartbeat)==null||P.call(n,t.parent_session_id,t.child_session_id,t.timestamp));break;case"sub_agent_completed":t.parent_session_id&&t.child_session_id&&((A=n.onSubAgentCompleted)==null||A.call(n,t.parent_session_id,t.child_session_id,typeof t.status=="string"?t.status:"completed",t.error));break;case"execution_started":(O=n.onExecutionStarted)==null||O.call(n,t.run_id||"",t.started_at);break;case"runner_progress":t.session_id&&typeof t.round_count=="number"&&(($=n.onRunnerProgress)==null||$.call(n,t.session_id,t.round_count));break;case"need_clarification":(U=n.onNeedClarification)==null||U.call(n,t);break;case"notification":(J=n.onNotification)==null||J.call(n,t);break;case"session_title_updated":t.session_id&&typeof t.title=="string"&&typeof t.title_version=="number"&&(t.source==="auto"||t.source==="manual"||t.source==="fallback")&&typeof t.updated_at=="string"&&((ee=n.onSessionTitleUpdated)==null||ee.call(n,{type:"session_title_updated",session_id:t.session_id,title:t.title,title_version:t.title_version,source:t.source,updated_at:t.updated_at}));break;case"session_pinned_updated":t.session_id&&typeof t.pinned=="boolean"&&typeof t.updated_at=="string"&&((I=n.onSessionPinnedUpdated)==null||I.call(n,{type:"session_pinned_updated",session_id:t.session_id,pinned:t.pinned,updated_at:t.updated_at}));break;case"plan_mode_entered":(Y=n.onPlanModeEntered)==null||Y.call(n,t);break;case"plan_mode_exited":(z=n.onPlanModeExited)==null||z.call(n,t);break;case"plan_file_updated":(D=n.onPlanFileUpdated)==null||D.call(n,t);break;case"goal_status_changed":(ie=n.onGoalStatusChanged)==null||ie.call(n,t);break;case"complete":ke("[AgentClient]","events.dispatch.complete",Ai(t)),(Q=n.onComplete)==null||Q.call(n,t.usage);break;case"cancelled":ke("[AgentClient]","events.dispatch.cancelled",Ai(t)),(ue=n.onCancelled)==null||ue.call(n,t.message);break;case"error":ke("[AgentClient]","events.dispatch.error",Ai(t)),(me=n.onError)==null||me.call(n,t.message||t.error||"Unknown error");break;default:console.warn("Unknown event type:",t)}}async stopGeneration(t){await ht.post(`stop/${t}`)}async deleteSession(t){const n=encodeURIComponent(t);await ht.delete(`sessions/${n}`)}async getHistory(t,n){ke("[AgentClient]","history.request",{sessionId:t,sinceMessageId:n});const r=n?`history/${t}?since_message_id=${encodeURIComponent(n)}`:`history/${t}`,s=await ht.get(r);return ke("[AgentClient]","history.response",qx(s)),s}async healthCheck(){try{return await ht.get("health"),!0}catch{return!1}}};vt(cs,"instance");let Pn=cs;const Vs=Pn.getInstance(),fh="provider",Fa=Xr(e=>({isOpen:!1,origin:"chat",activeTabKey:fh,open:(t,n=fh)=>e({isOpen:!0,origin:t,activeTabKey:n}),close:()=>e({isOpen:!1}),setActiveTabKey:t=>e({activeTabKey:t})})),hh={BASE_URL:"./",DEV:!1,MODE:"production",PROD:!0,SSR:!1},Xa=new Map,ji=e=>{const t=Xa.get(e);return t?Object.fromEntries(Object.entries(t.stores).map(([n,r])=>[n,r.getState()])):{}},Yx=(e,t,n)=>{if(e===void 0)return{type:"untracked",connection:t.connect(n)};const r=Xa.get(n.name);if(r)return{type:"tracked",store:e,...r};const s={connection:t.connect(n),stores:{}};return Xa.set(n.name,s),{type:"tracked",store:e,...s}},Kx=(e,t)=>{if(t===void 0)return;const n=Xa.get(e);n&&(delete n.stores[t],Object.keys(n.stores).length===0&&Xa.delete(e))},Vx=e=>{var t,n;if(!e)return;const r=e.split(`
3
3
  `),s=r.findIndex(a=>a.includes("api.setState"));if(s<0)return;const o=((t=r[s+1])==null?void 0:t.trim())||"";return(n=/.+ (.+) .+/.exec(o))==null?void 0:n[1]},Gx=(e,t={})=>(n,r,s)=>{const{enabled:o,anonymousActionType:a,store:i,...c}=t;let d;try{d=(o??(hh?"production":void 0)!=="production")&&window.__REDUX_DEVTOOLS_EXTENSION__}catch{}if(!d)return e(n,r,s);const{connection:f,...p}=Yx(i,d,c);let v=!0;s.setState=(m,x,k)=>{const C=n(m,x);if(!v)return C;const E=k===void 0?{type:a||Vx(new Error().stack)||"anonymous"}:typeof k=="string"?{type:k}:k;return i===void 0?(f==null||f.send(E,r()),C):(f==null||f.send({...E,type:`${i}/${E.type}`},{...ji(c.name),[i]:s.getState()}),C)},s.devtools={cleanup:()=>{f&&typeof f.unsubscribe=="function"&&f.unsubscribe(),Kx(c.name,i)}};const g=(...m)=>{const x=v;v=!1,n(...m),v=x},w=e(s.setState,r,s);if(p.type==="untracked"?f==null||f.init(w):(p.stores[p.store]=s,f==null||f.init(Object.fromEntries(Object.entries(p.stores).map(([m,x])=>[m,m===p.store?w:x.getState()])))),s.dispatchFromDevtools&&typeof s.dispatch=="function"){let m=!1;const x=s.dispatch;s.dispatch=(...k)=>{(hh?"production":void 0)!=="production"&&k[0].type==="__setState"&&!m&&(console.warn('[zustand devtools middleware] "__setState" action type is reserved to set state from the devtools. Avoid using it.'),m=!0),x(...k)}}return f.subscribe(m=>{var x;switch(m.type){case"ACTION":if(typeof m.payload!="string"){console.error("[zustand devtools middleware] Unsupported action format");return}return Rc(m.payload,k=>{if(k.type==="__setState"){if(i===void 0){g(k.state);return}Object.keys(k.state).length!==1&&console.error(`
4
4
  [zustand devtools middleware] Unsupported __setState action format.
5
5
  When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(),
@@ -10,9 +10,9 @@ You help users solve problems quickly and correctly. Be concise, practical, and
10
10
  If requirements are unclear, ask focused clarifying questions before proceeding.`,isDefault:!0}),wl=()=>[P_()];function hy(e){if(!e)return;const t={systemTokens:e.system_tokens,summaryTokens:e.summary_tokens,windowTokens:e.window_tokens,totalTokens:e.total_tokens,budgetLimit:e.budget_limit};return typeof e.max_context_tokens=="number"&&e.max_context_tokens>0&&(t.maxContextTokens=e.max_context_tokens),typeof e.prompt_cached_tool_outputs=="number"&&(t.promptCachedToolOutputs=e.prompt_cached_tool_outputs),typeof e.prompt_cached_tool_tokens_saved=="number"&&(t.promptCachedToolTokensSaved=e.prompt_cached_tool_tokens_saved),typeof e.thinking_tokens=="number"&&(t.thinkingTokens=e.thinking_tokens),typeof e.cache_read_input_tokens=="number"&&(t.cacheReadInputTokens=e.cache_read_input_tokens),t}function py(e){return typeof e.maxContextTokens=="number"&&e.maxContextTokens>0?e.maxContextTokens:e.budgetLimit>0?e.budgetLimit:0}function my(e){const t=py(e);return t===0?0:e.totalTokens/t*100}function E_(e){const t=my(e);return t>=90?"error":t>=70?"warning":t>=50?"success":"default"}function Ar(e){return e.toLocaleString()}function jc(e){const t=Math.abs(e),n=r=>r.replace(/\.0$/,"");if(t>=1e9){const r=t>=1e10?0:1;return`${n((e/1e9).toFixed(r))}B`}if(t>=1e6){const r=t>=1e7?0:1;return`${n((e/1e6).toFixed(r))}M`}if(t>=1e3){const r=t>=1e4?0:1;return`${n((e/1e3).toFixed(r))}K`}return`${e}`}const Gs=wl()[0],M_=(Gs==null?void 0:Gs.id)||"general_assistant";var $g;const gy=(($g=Gs==null?void 0:Gs.content)==null?void 0:$g.trim())||"",Ic="tool",yh=()=>{try{const e=globalThis.crypto;if(e!=null&&e.randomUUID)return e.randomUUID()}catch{}return`id_${Date.now()}_${Math.random().toString(16).slice(2)}`},R_=()=>{let e=xs().trim().replace(/\/+$/,"");return e.endsWith("/v1")&&(e=e.slice(0,-3)),`${e}/api/v1`},yy=e=>{const t=e.trim();if(!t.startsWith("bamboo-attachment://"))return null;const n=t.slice(20),[r,s]=n.split("/",2);return!r||!s?null:{sessionId:r,attachmentId:s}},vh=e=>{const t=yy(e);return t?`${R_()}/sessions/${encodeURIComponent(t.sessionId)}/attachments/${encodeURIComponent(t.attachmentId)}`:e},os=e=>{if(typeof e!="string")return;const t=e.trim();if(t&&t.toLowerCase()!=="unknown")return t},A_=e=>{const t=(e||"").trim();if(!t)return;const n=t.match(/tool policy blocked ['"`]([^'"`]+)['"`]/i);if(n!=null&&n[1])return os(n[1]);try{const r=JSON.parse(t);if(typeof(r==null?void 0:r.tool_name)=="string")return os(r.tool_name)}catch{}},Ru=e=>{var r,s;const t=Number.isFinite(Date.parse(e.created_at))?Date.parse(e.created_at):Date.now(),n=hy(e.token_usage);return{id:e.id,kind:e.kind,parentSessionId:e.parent_session_id??null,rootSessionId:e.root_session_id,spawnDepth:e.spawn_depth,createdByScheduleId:e.created_by_schedule_id??null,isRunning:e.is_running,updatedAt:e.updated_at,lastActivityAt:e.last_activity_at,messageCount:e.message_count,hasAttachments:e.has_attachments,lastRunStatus:e.last_run_status,lastRunError:e.last_run_error,planMode:e.plan_mode??null,subagentType:e.subagent_type??null,lifecycle:e.lifecycle??null,residentName:e.resident_name??null,title:e.title||kt.t("chat.session.defaultTitle"),titleVersion:e.title_version??0,createdAt:t,pinned:e.pinned,messages:[],config:{systemPromptId:M_,baseSystemPrompt:gy,lastUsedEnhancedPrompt:null,model:e.model,model_ref:e.model_ref??null,reasoningEffort:e.reasoning_effort??null,goldConfig:e.gold_config??null,tokenUsage:n,truncationOccurred:(r=e.token_usage)==null?void 0:r.truncation_occurred,segmentsRemoved:(s=e.token_usage)==null?void 0:s.segments_removed,compressionEvents:[]}}},j_=(e,t)=>{var o,a,i,c,d,f;const n=new Map,r=new Map;for(const p of t)p.role==="tool"&&p.tool_call_id&&p.metadata&&r.set(p.tool_call_id,p.metadata);const s=[];for(const p of t){const v=p.created_at||new Date().toISOString();if(p.role==="system"){const g={role:"system",id:p.id,createdAt:v,content:p.content||"",isCompressed:!!p.compressed,compressedEventId:p.compressed_by_event_id};s.push(g);continue}if(p.role==="user"){const g=new Map;for(const x of p.image_ocr||[]){const k=(o=x.image_url)==null?void 0:o.trim();if(!k)continue;const E=(x.lines||[]).map(T=>((T==null?void 0:T.text)||"").trim()).filter(Boolean);g.set(k,{ocrText:E.length?E.join(`
11
11
  `):void 0,ocrError:x.error?String(x.error):void 0})}const w=[];for(const x of p.content_parts||[]){if(x.type!=="image_url")continue;const k=((a=x.image_url)==null?void 0:a.url)||"";if(!k)continue;const C=vh(k),E=yy(k),T=g.get(k.trim());w.push({id:yh(),url:C,ocrText:T==null?void 0:T.ocrText,ocrError:T==null?void 0:T.ocrError,name:E?`attachment-${E.attachmentId}`:"image",size:0,type:"image/*"})}const m={role:"user",id:p.id,createdAt:v,content:p.content||"",images:w.length?w:void 0,isCompressed:!!p.compressed,compressedEventId:p.compressed_by_event_id};s.push(m);continue}if(p.role==="assistant"){const g=p.tool_calls||[];if(g.length>0){const x=(p.content||"").trim(),k=typeof p.reasoning=="string"&&p.reasoning.trim().length>0;if(x||k){const P=k?{reasoning:p.reasoning,backendMessageId:p.id}:{backendMessageId:p.id},A={role:"assistant",type:"text",id:`${p.id}_text`,createdAt:v,content:p.content||"",metadata:P,isCompressed:!!p.compressed,compressedEventId:p.compressed_by_event_id};s.push(A)}for(const P of g)P.id&&n.set(P.id,os((i=P.function)==null?void 0:i.name)||Ic);const C=(c=g[0])==null?void 0:c.id,E=C?r.get(C):void 0,T={role:"assistant",type:"tool_call",id:p.id,createdAt:v,toolCalls:g.map(P=>{var A;return{toolCallId:P.id,toolName:os((A=P.function)==null?void 0:A.name)||Ic,parameters:(()=>{var O,$;try{return JSON.parse(((O=P.function)==null?void 0:O.arguments)||"{}")}catch{return{raw:(($=P.function)==null?void 0:$.arguments)||""}}})(),streamingOutput:""}}),...E?{metadata:E}:{},isCompressed:!!p.compressed,compressedEventId:p.compressed_by_event_id};s.push(T);continue}const w=typeof p.reasoning=="string"&&p.reasoning.trim().length>0?{reasoning:p.reasoning}:{},m={role:"assistant",type:"text",id:p.id,createdAt:v,content:p.content||"",metadata:w,isCompressed:!!p.compressed,compressedEventId:p.compressed_by_event_id};s.push(m);continue}if(p.role==="tool"){const g=((d=p.tool_call_id)==null?void 0:d.trim())||`orphan-tool-call:${p.id}`,w=os(n.get(g))||os(p.tool_name)||os(p.name)||A_(p.content)||Ic,m=p.tool_success===!1||p.tool_success==null&&typeof p.content=="string"&&p.content.trimStart().startsWith("Error:"),x=[];for(const C of p.content_parts||[]){if(C.type!=="image_url")continue;const E=((f=C.image_url)==null?void 0:f.url)||"";E&&x.push({id:yh(),url:vh(E),name:"screenshot",size:0,type:"image/*"})}const k={role:"assistant",type:"tool_result",id:p.id,createdAt:v,toolName:w,toolCallId:g,result:{tool_name:w,result:p.content||"",display_preference:"Default"},isError:m,images:x.length?x:void 0,isCompressed:!!p.compressed,compressedEventId:p.compressed_by_event_id};s.push(k);continue}}return s},bh=e=>{if(typeof e!="string"||!e.trim())return null;const t=Date.parse(e);return Number.isFinite(t)?t:null},I_=(e,t)=>e===t?!0:!e||!t?e==null&&t==null:e.provider===t.provider&&e.model===t.model,O_=(e,t)=>e===t?!0:!e||!t?e==null&&t==null:e.systemTokens===t.systemTokens&&e.summaryTokens===t.summaryTokens&&e.windowTokens===t.windowTokens&&e.totalTokens===t.totalTokens&&(e.maxContextTokens??0)===(t.maxContextTokens??0)&&e.budgetLimit===t.budgetLimit&&(e.promptCachedToolOutputs??0)===(t.promptCachedToolOutputs??0)&&(e.promptCachedToolTokensSaved??0)===(t.promptCachedToolTokensSaved??0)&&(e.thinkingTokens??0)===(t.thinkingTokens??0)&&(e.cacheReadInputTokens??0)===(t.cacheReadInputTokens??0),$_=(e,t)=>{if(e===t)return!0;const n=e??[],r=t??[];return n.length!==r.length?!1:n.every((s,o)=>{const a=r[o];return!!a&&s.id===a.id&&s.createdAt===a.createdAt&&s.messagesCompressed===a.messagesCompressed&&s.segmentsRemoved===a.segmentsRemoved})},L_=(e,t)=>e===t?!0:!e||!t?e==null&&t==null:e.messageCount===t.messageCount&&e.lastMessageId===t.lastMessageId&&e.hasPendingQuestion===t.hasPendingQuestion&&e.pendingQuestionToolCallId===t.pendingQuestionToolCallId,D_=(e,t)=>e===t?!0:e.systemPromptId===t.systemPromptId&&e.baseSystemPrompt===t.baseSystemPrompt&&e.lastUsedEnhancedPrompt===t.lastUsedEnhancedPrompt&&e.agentRole===t.agentRole&&e.workspacePath===t.workspacePath&&e.model===t.model&&I_(e.model_ref,t.model_ref)&&e.reasoningEffort===t.reasoningEffort&&JSON.stringify(e.goldConfig??null)===JSON.stringify(t.goldConfig??null)&&JSON.stringify(e.goalState??null)===JSON.stringify(t.goalState??null)&&O_(e.tokenUsage,t.tokenUsage)&&e.truncationOccurred===t.truncationOccurred&&e.segmentsRemoved===t.segmentsRemoved&&$_(e.compressionEvents,t.compressionEvents)&&L_(e.syncCursor,t.syncCursor),F_=(e,t)=>e.id===t.id&&e.kind===t.kind&&e.parentSessionId===t.parentSessionId&&e.rootSessionId===t.rootSessionId&&e.spawnDepth===t.spawnDepth&&e.createdByScheduleId===t.createdByScheduleId&&e.isRunning===t.isRunning&&e.updatedAt===t.updatedAt&&e.lastActivityAt===t.lastActivityAt&&e.messageCount===t.messageCount&&e.hasAttachments===t.hasAttachments&&e.lastRunStatus===t.lastRunStatus&&e.lastRunError===t.lastRunError&&e.planMode===t.planMode&&e.subagentType===t.subagentType&&e.title===t.title&&e.titleVersion===t.titleVersion&&e.createdAt===t.createdAt&&e.pinned===t.pinned&&e.messages===t.messages&&D_(e.config,t.config),N_=Pn.getInstance(),z_=750,pt={inFlight:null,forcedPromise:null,timer:null,trailingPromise:null,trailingResolve:null,trailingReject:null};function vy(){const e={resolve:pt.trailingResolve,reject:pt.trailingReject};return pt.trailingPromise=null,pt.trailingResolve=null,pt.trailingReject=null,e}function Sh(e,t){!t.resolve&&!t.reject||e.then(()=>{var n;return(n=t.resolve)==null?void 0:n.call(t)},n=>{var r;return(r=t.reject)==null?void 0:r.call(t,n)})}function B_(){return pt.timer&&(clearTimeout(pt.timer),pt.timer=null),vy()}function W_(e,t){const n=e.map(Ru);t(r=>{let s=r.executionBySession;for(const c of e)s=Sl(s,{type:"applySessionSummary",sessionId:c.id,summary:c});const o=new Map(r.chats.map(c=>[c.id,c]));let a=r.chats.length!==n.length;const i=n.map((c,d)=>{var J,ee,I,Y;const f=o.get(c.id);if(!f)return a=!0,c;const p=bh(f.updatedAt),v=bh(c.updatedAt),g=p!==null&&v!==null&&p>v,w=f.config||{},m=c.config||{},x=Object.prototype.hasOwnProperty.call(w,"model"),k=Object.prototype.hasOwnProperty.call(w,"model_ref"),C=Object.prototype.hasOwnProperty.call(w,"reasoningEffort"),E=Object.prototype.hasOwnProperty.call(w,"goldConfig"),T=Math.max(f.messageCount??0,c.messageCount??0),P=c.titleVersion??0,A=f.titleVersion??0,O=P>A?{title:c.title,titleVersion:P}:{title:f.title,titleVersion:A},$={...w,...m,model:g&&x?w.model:m.model,model_ref:g&&k?w.model_ref:m.model_ref,reasoningEffort:g&&C?w.reasoningEffort:m.reasoningEffort,goldConfig:g&&E?w.goldConfig:m.goldConfig,compressionEvents:((J=f.config)==null?void 0:J.compressionEvents)??((ee=c.config)==null?void 0:ee.compressionEvents),syncCursor:((I=f.config)==null?void 0:I.syncCursor)??((Y=c.config)==null?void 0:Y.syncCursor)},U={...c,pinned:g?f.pinned:c.pinned,updatedAt:g?f.updatedAt:c.updatedAt,messages:f.messages,messageCount:T,planMode:c.planMode,config:$,...O};return F_(f,U)?(r.chats[d]!==f&&(a=!0),f):(a=!0,U)});return!a&&s===r.executionBySession?r:{...r,chats:a?i:r.chats,executionBySession:s}})}async function el(e){return pt.inFlight?(ke("[ChatSlice]","refreshChats.inFlight.reuse",{}),pt.inFlight):(ke("[ChatSlice]","refreshChats.start",{}),pt.inFlight=(async()=>{try{const t=await N_.listSessions();ke("[ChatSlice]","refreshChats.response",{count:t.sessions.length,runningCount:t.sessions.filter(n=>n.is_running).length}),W_(t.sessions,e)}catch(t){throw console.error("[ChatSlice] Failed to refresh sessions:",t),ke("[ChatSlice]","refreshChats.error",{error:t}),t}})().finally(()=>{ke("[ChatSlice]","refreshChats.finally",{}),pt.inFlight=null}),pt.inFlight)}function U_(e){return pt.forcedPromise?(ke("[ChatSlice]","refreshChatsNow.forced.reuse",{}),pt.forcedPromise):(ke("[ChatSlice]","refreshChatsNow.forced.start",{hasInflight:!!pt.inFlight}),pt.forcedPromise=(async()=>{pt.inFlight&&await pt.inFlight,await el(e)})().finally(()=>{ke("[ChatSlice]","refreshChatsNow.forced.finally",{}),pt.forcedPromise=null}),pt.forcedPromise)}const br=Pn.getInstance(),q_=(e,t)=>({chats:[],currentSessionId:null,latestActiveSessionId:null,addChat:async n=>{var v,g,w,m,x,k,C,E,T,P,A,O,$,U;const r=(n.title||kt.t("chat.sidebar.newSession")).trim(),s=((g=(v=n.config)==null?void 0:v.baseSystemPrompt)==null?void 0:g.trim())||"",o=(w=mt.getState().getActiveModel())==null?void 0:w.trim(),a=((x=(m=n.config)==null?void 0:m.model)==null?void 0:x.trim())||o||void 0;let i,c;if(mt.getState().isProviderModelRefEnabled()){const J=(k=n.config)==null?void 0:k.model_ref;if((C=J==null?void 0:J.provider)!=null&&C.trim()&&((E=J==null?void 0:J.model)!=null&&E.trim()))i=J,c=J.provider;else{const ee=(T=mt.getState().providerConfig.defaults)==null?void 0:T.chat;if((P=ee==null?void 0:ee.provider)!=null&&P.trim()&&((A=ee==null?void 0:ee.model)!=null&&A.trim()))i=ee,c=ee.provider;else{const I=mt.getState().getActiveModel();I&&(i={provider:mt.getState().currentProvider,model:I},c=mt.getState().currentProvider)}}}const d=((O=n.config)==null?void 0:O.reasoningEffort)??fy(mt.getState().providerConfig,i??null,c??null,mt.getState().providerInstances),f=await br.createSession({title:r,system_prompt:s||void 0,model:a,model_ref:i,provider:c,reasoning_effort:d||void 0,gold_config:(($=n.config)==null?void 0:$.goldConfig)??void 0}),p={...Ru(f.session),title:r,config:{...n.config,model:f.session.model,model_ref:f.session.model_ref??null,reasoningEffort:f.session.reasoning_effort??null,goldConfig:f.session.gold_config??((U=n.config)==null?void 0:U.goldConfig)??null,baseSystemPrompt:s||gy},messages:[]};return e(J=>{const ee=[p,...J.chats.filter(I=>I.id!==p.id)];return{...J,chats:ee,currentSessionId:p.id,latestActiveSessionId:p.id}}),p.id},selectSession:n=>{const r=t();r.currentSessionId===n&&r.latestActiveSessionId===n||e({currentSessionId:n,latestActiveSessionId:n})},deleteSession:async n=>{try{await br.deleteSession(n)}catch(r){console.error(`[ChatSlice] Failed to delete backend session ${n}:`,r)}e(r=>{var c;const s=new Set;for(const d of r.chats)d.id===n&&s.add(d.id),d.rootSessionId===n&&s.add(d.id);const o=r.chats.filter(d=>!s.has(d.id)),a=r.currentSessionId&&s.has(r.currentSessionId)?null:r.currentSessionId,i=r.latestActiveSessionId&&s.has(r.latestActiveSessionId)?((c=o[0])==null?void 0:c.id)??null:r.latestActiveSessionId;return{...r,chats:o,currentSessionId:a,latestActiveSessionId:i}})},deleteSessions:async n=>{for(const r of n)await t().deleteSession(r)},updateSession:(n,r,s)=>{const o=!!r.config&&(Object.prototype.hasOwnProperty.call(r.config,"model")||Object.prototype.hasOwnProperty.call(r.config,"reasoningEffort")||Object.prototype.hasOwnProperty.call(r.config,"goldConfig")),a=typeof r.title=="string"||typeof r.pinned=="boolean",c=o||a?new Date().toISOString():void 0;e(f=>{const p=f.chats.map(v=>v.id===n?{...v,...r,...c?{updatedAt:c}:{}}:v);return{...f,chats:p}});const d={};if(typeof r.title=="string"&&(d.title=r.title),typeof r.pinned=="boolean"&&(d.pinned=r.pinned),r.config&&Object.prototype.hasOwnProperty.call(r.config,"model")&&(d.model=r.config.model??null),r.config&&Object.prototype.hasOwnProperty.call(r.config,"model_ref")&&mt.getState().isProviderModelRefEnabled()&&(d.model_ref=r.config.model_ref??null,r.config.model_ref&&(d.provider=r.config.model_ref.provider)),r.config&&Object.prototype.hasOwnProperty.call(r.config,"reasoningEffort")){const f=r.config.reasoningEffort;f?d.reasoning_effort=f:d.clear_reasoning_effort=!0}r.config&&Object.prototype.hasOwnProperty.call(r.config,"goldConfig")&&(d.gold_config=r.config.goldConfig??{enabled:!1,auto_answer_enabled:!1,auto_continue_enabled:!1}),!(s!=null&&s.skipBackendPatch)&&Object.keys(d).length>0&&br.patchSession(n,d).catch(f=>{console.warn(`[ChatSlice] Failed to patch session ${n}:`,f)})},persistSessionTitle:async(n,r)=>{var o;const s=(o=t().chats.find(a=>a.id===n))==null?void 0:o.title;e(a=>({...a,chats:a.chats.map(i=>i.id===n?{...i,title:r,updatedAt:new Date().toISOString()}:i)}));try{await br.patchSession(n,{title:r})}catch(a){throw typeof s=="string"&&e(i=>({...i,chats:i.chats.map(c=>c.id===n?{...c,title:s}:c)})),console.warn(`[ChatSlice] persistSessionTitle failed for ${n}:`,a),a}},applyServerTitle:(n,r,s)=>e(o=>{const a=o.chats.find(i=>i.id===n);return!a||s<=(a.titleVersion??0)?o:{...o,chats:o.chats.map(i=>i.id===n?{...i,title:r,titleVersion:s,updatedAt:new Date().toISOString()}:i)}}),applyServerPinned:(n,r,s)=>e(o=>{const a=o.chats.find(d=>d.id===n);if(!a)return o;const i=Date.parse(s),c=a.updatedAt?Date.parse(a.updatedAt):NaN;return Number.isFinite(i)&&Number.isFinite(c)&&i<c||a.pinned===r?o:{...o,chats:o.chats.map(d=>d.id===n?{...d,pinned:r,updatedAt:s}:d)}}),pinSession:n=>{t().updateSession(n,{pinned:!0})},unpinSession:n=>{t().updateSession(n,{pinned:!1})},setMessages:(n,r)=>{t().chats.find(o=>o.id===n)&&t().updateSession(n,{messages:r})},addMessage:async(n,r)=>{const s=t().chats.find(a=>a.id===n);if(!s)return;const o=[...s.messages,r];t().updateSession(n,{messages:o})},updateMessage:(n,r,s)=>{const o=t().chats.find(i=>i.id===n);if(!o)return;const a=o.messages.map(i=>{if(i.id!==r)return i;const c={...i};return Object.keys(s).forEach(d=>{Object.prototype.hasOwnProperty.call(c,d)&&(c[d]=s[d])}),c});t().updateSession(n,{messages:a})},deleteMessage:async(n,r)=>{const s=t().chats.find(o=>o.id===n);if(!s)return{success:!1,sessionId:n,messageId:r,reason:"session_not_found"};if(!s.messages.some(o=>o.id===r))return{success:!1,sessionId:n,messageId:r,reason:"message_not_found"};try{await br.deleteSessionMessage(n,r)}catch(o){return console.warn(`[ChatSlice] Failed to delete message ${r} from session ${n}:`,o),o instanceof Ha?o.status===404?{success:!1,sessionId:n,messageId:r,reason:"backend_not_found",statusCode:o.status,errorMessage:o.message}:o.status===409?{success:!1,sessionId:n,messageId:r,reason:"session_running",statusCode:o.status,errorMessage:o.message}:{success:!1,sessionId:n,messageId:r,reason:"backend_error",statusCode:o.status,errorMessage:o.message}:{success:!1,sessionId:n,messageId:r,reason:"backend_error",errorMessage:o instanceof Error?o.message:void 0}}return e(o=>({...o,chats:o.chats.map(a=>a.id===n?{...a,messages:a.messages.filter(i=>i.id!==r)}:a)})),{success:!0,sessionId:n,messageId:r}},refreshChats:async()=>pt.inFlight?pt.inFlight:pt.timer?(pt.trailingPromise||(pt.trailingPromise=new Promise((n,r)=>{pt.trailingResolve=n,pt.trailingReject=r})),pt.trailingPromise):(pt.timer=setTimeout(()=>{if(pt.timer=null,pt.trailingPromise){const n=vy();Sh(el(e),n)}},z_),el(e)),refreshChatsNow:async()=>{const n=B_();ke("[ChatSlice]","refreshChatsNow.start",{hadTrailingCallbacks:!!n,hasInflight:!!pt.inFlight});const r=pt.inFlight?U_(e):el(e);return Sh(r,n),r},loadChats:async()=>{var a,i,c;ke("[ChatSlice]","loadChats.start",{});let n=await br.listSessions();if(!n.sessions||n.sessions.length===0){const d=(a=mt.getState().getActiveModel())==null?void 0:a.trim(),f=(i=mt.getState().providerConfig.defaults)==null?void 0:i.chat;ke("[ChatSlice]","loadChats.createInitialSession",{defaultModel:d??null,defaultModelRef:f??null}),n={sessions:[(await br.createSession({title:kt.t("chat.sidebar.newSession"),model:d,model_ref:f,provider:f==null?void 0:f.provider})).session]}}const r=n.sessions.map(Ru),s=((c=r[0])==null?void 0:c.id)??null;ke("[ChatSlice]","loadChats.listResolved",{count:n.sessions.length,currentSessionId:s});let o=t().executionBySession;for(const d of n.sessions)o=Sl(o,{type:"applySessionSummary",sessionId:d.id,summary:d});try{const d=await br.getRunningSessions();if(ke("[ChatSlice]","loadChats.runningSnapshot",{count:d.sessions.length}),d.sessions.length>0){const f=d.sessions.map(p=>{const v=[];for(const g of p.last_critical_events){if(ly(g)){o_(g,r);continue}v.push(g)}return{sessionId:p.session_id,runId:p.run_id,criticalEvents:v}});o=Sl(o,{type:"applyRunningSnapshot",sessions:f},()=>new Date().toISOString())}}catch(d){ke("[ChatSlice]","loadChats.runningSnapshot.error",{error:d})}e({chats:r,latestActiveSessionId:s,currentSessionId:s,executionBySession:o}),ke("[ChatSlice]","loadChats.applied",{currentSessionId:s,chatCount:r.length,executionSessionCount:Object.keys(o||{}).length}),s&&(ke("[ChatSlice]","loadChats.loadInitialHistory",{currentSessionId:s}),await t().loadChatHistory(s))},loadChatHistory:async(n,r)=>{var i,c,d,f,p,v,g,w,m,x,k,C;const s=(r==null?void 0:r.mode)??"replace",o=Math.max(0,(r==null?void 0:r.retries)??0),a=Math.max(0,(r==null?void 0:r.retryDelayMs)??0);ke("[ChatSlice]","loadChatHistory.start",{sessionId:n,mode:s,retries:o,retryDelayMs:a,waitForAssistant:(r==null?void 0:r.waitForAssistant)??!1});for(let E=0;E<=o;E+=1)try{const T=t().chats.find($=>$.id===n);if(!T){ke("[ChatSlice]","loadChatHistory.skipMissingChat",{sessionId:n,attempt:E});return}const P=await br.getHistory(n);ke("[ChatSlice]","loadChatHistory.response",{sessionId:n,attempt:E,historyMessageCount:P.messages.length,localMessageCount:T.messages.length,localStoredMessageCount:T.messageCount??null,lastMessageId:((i=P.messages[P.messages.length-1])==null?void 0:i.id)??null,lastRole:((c=P.messages[P.messages.length-1])==null?void 0:c.role)??null});const A=(d=P.messages[P.messages.length-1])==null?void 0:d.role;if(r!=null&&r.waitForAssistant&&A==="user"&&E<o){const $=a>0?a*(E+1):200*(E+1);ke("[ChatSlice]","loadChatHistory.waitForAssistant.retry",{sessionId:n,attempt:E,delay:$}),await new Promise(U=>setTimeout(U,$));continue}const O=j_(n,P.messages);if(s==="monotonic"){const $=T.messages||[],U=$.length,J=O.length,ee=(f=O[O.length-1])==null?void 0:f.role,I=(p=$[$.length-1])==null?void 0:p.role,Y=$[$.length-1],z=O[O.length-1],D=Y==null?void 0:Y.id,ie=z==null?void 0:z.id;let Q=!1;if(J>U?Q=!0:J===U&&(Q=I==="user"&&ee!=="user"||typeof D=="string"&&typeof ie=="string"&&D!==ie),ke("[ChatSlice]","loadChatHistory.monotonicDecision",{sessionId:n,attempt:E,prevLen:U,nextLen:J,prevLastRole:I??null,nextLastRole:ee??null,prevLastId:D??null,nextLastId:ie??null,shouldReplace:Q}),!Q){t().updateSession(n,{messageCount:Math.max(T.messageCount??0,P.messages.length)}),ke("[ChatSlice]","loadChatHistory.monotonicSkip",{sessionId:n,attempt:E,localMessageCount:T.messages.length,serverMessageCount:P.messages.length});return}}t().updateSession(n,{messages:O,messageCount:P.messages.length,config:{...T.config||{},...P.gold_config!=null?{goldConfig:P.gold_config}:{},...P.goal_state!=null?{goalState:P.goal_state}:{},compressionEvents:(P.compression_events||[]).map($=>({id:$.id,createdAt:$.created_at,messagesCompressed:$.messages_compressed,segmentsRemoved:$.segments_removed})),syncCursor:{messageCount:P.messages.length,lastMessageId:((v=P.messages[P.messages.length-1])==null?void 0:v.id)??null,hasPendingQuestion:!!((w=(g=t().executionBySession)==null?void 0:g[n])!=null&&w.interaction.pendingQuestion),pendingQuestionToolCallId:((k=(x=(m=t().executionBySession)==null?void 0:m[n])==null?void 0:x.interaction.pendingQuestion)==null?void 0:k.toolCallId)??null}}}),ke("[ChatSlice]","loadChatHistory.applied",{sessionId:n,attempt:E,mode:s,messageCount:P.messages.length,lastMessageId:((C=P.messages[P.messages.length-1])==null?void 0:C.id)??null});return}catch(T){if(E>=o){console.warn(`[ChatSlice] Failed to load history for ${n}:`,T),ke("[ChatSlice]","loadChatHistory.error.final",{sessionId:n,attempt:E,retries:o,error:T});return}const P=a>0?a*(E+1):200*(E+1);ke("[ChatSlice]","loadChatHistory.error.retry",{sessionId:n,attempt:E,delay:P,error:T}),await new Promise(A=>setTimeout(A,P))}}});class Au extends Error{constructor(n="Proxy authentication required"){super(n);vt(this,"code","proxy_auth_required");this.name="ProxyAuthRequiredError"}}const us=class us{constructor(){}static getInstance(){return us.instance||(us.instance=new us),us.instance}async getModels(t){var n,r;try{const s=await Ca.fetchCatalogModels(t),o=[];for(const i of s.fetched)if(i.models&&i.models.length>0)for(const c of i.models)c.reference&&c.reference.model&&o.push(c.reference.model);return[...new Set(o)].sort()}catch(s){if(console.error("Failed to fetch models from Provider Catalog:",s),s instanceof Ha){if(s.status===428)throw new Au(s.message);let o;if(s.body)try{o=JSON.parse(s.body)}catch{}if(o&&typeof o=="object"&&"error"in o&&((n=o.error)==null?void 0:n.code)==="proxy_auth_required")throw new Au(((r=o.error)==null?void 0:r.message)||s.message)}throw s}}};vt(us,"instance");let ju=us;const by=ju.getInstance(),H_=async e=>{var t;if(typeof navigator>"u"||!((t=navigator.clipboard)!=null&&t.writeText))throw new Error("navigator.clipboard.writeText is unavailable");await navigator.clipboard.writeText(e)},X_=e=>{if(typeof document>"u")throw new Error("document is unavailable");const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly","true"),t.style.position="fixed",t.style.top="-9999px",t.style.left="-9999px",t.style.opacity="0",document.body.appendChild(t),t.focus(),t.select();const n=document.execCommand("copy");if(document.body.removeChild(t),!n)throw new Error("document.execCommand('copy') returned false")},kr=async e=>{try{await H_(e);return}catch(t){try{X_(e);return}catch(n){const r=t instanceof Error?t.message:String(t),s=n instanceof Error?n.message:String(n);throw new Error(`Clipboard copy failed: navigator(${r}); fallback(${s})`)}}};class Y_{async copyToClipboard(t){await kr(t)}async getBambooConfig(){try{return await Ue.get("bamboo/config")}catch(t){return console.error("Failed to fetch Bamboo config:",t),{}}}async getBambooTools(){try{return await Ue.get("bamboo/tools")}catch(t){return console.error("Failed to fetch Bamboo tools:",t),{tools:[]}}}async getModelLimitDefaults(){try{return await Ue.get("bamboo/model-limits/defaults")}catch(t){return console.error("Failed to fetch model limit defaults:",t),{model_limits:[]}}}async setBambooConfig(t){return Ue.post("bamboo/config",t)}async validateBambooConfigPatch(t){return Ue.post("bamboo/config/validate",t)}async setProxyAuth(t){return Ue.post("bamboo/proxy-auth",t)}async getProxyAuthStatus(){try{return await Ue.get("bamboo/proxy-auth/status")}catch(t){return console.error("Failed to fetch proxy auth status:",t),{configured:!1,username:null}}}async clearProxyAuth(){return Ue.post("bamboo/proxy-auth",{username:"",password:""})}async resetBambooConfig(){return Ue.post("bamboo/config/reset",{})}async saveWorkflow(t,n){return Ue.post("bamboo/workflows",{name:t,content:n})}async deleteWorkflow(t){return Ue.delete(`bamboo/workflows/${encodeURIComponent(t)}`)}async getKeywordMaskingConfig(){try{return await Ue.get("bamboo/keyword-masking")}catch(t){return console.error("Failed to fetch keyword masking config:",t),{entries:[]}}}async updateKeywordMaskingConfig(t){return Ue.post("bamboo/keyword-masking",t)}async validateKeywordEntries(t){return Ue.post("bamboo/keyword-masking/validate",t)}async getSetupStatus(){return await Ue.get("bamboo/setup/status")}async markSetupComplete(){return Ue.post("bamboo/setup/complete",{})}async resetSetupStatus(){await Ue.post("bamboo/setup/incomplete",{})}async getAccessStatus(){return Ue.get("bamboo/access/status")}async verifyAccessPassword(t){return Ue.post("bamboo/access/verify",{password:t})}async updateAccessPassword(t){return Ue.post("bamboo/access/password",t)}}const ds=class ds extends Y_{constructor(){super()}static getInstance(){return ds.instance||(ds.instance=new ds),ds.instance}getUtilityService(){return this}};vt(ds,"instance");let ro=ds;const as=ro.getInstance();let Po=null,Eo=null;const Oc=(e,t)=>e instanceof Error&&e.message.trim()?e.message:t,Iu=Xr((e,t)=>({config:null,proxyAuthStatus:null,isLoadingConfig:!1,isLoadingProxyAuthStatus:!1,lastLoadedAt:null,error:null,loadConfig:async({force:n=!1}={})=>{const r=t().config;if(!n&&r)return r;if(Po)return Po;Po=(async()=>{e({isLoadingConfig:!0,error:null});try{const s=await as.getBambooConfig()??{};return e({config:s,lastLoadedAt:Date.now(),error:null}),s}catch(s){const o=Oc(s,"Failed to load Bamboo config");throw e({error:o}),s}finally{e({isLoadingConfig:!1})}})();try{return await Po}finally{Po=null}},saveConfig:async n=>{e({isLoadingConfig:!0,error:null,config:n});try{const r=await as.setBambooConfig(n);return e({config:r,lastLoadedAt:Date.now(),error:null}),r}catch(r){const s=Oc(r,"Failed to save Bamboo config");throw e({error:s}),r}finally{e({isLoadingConfig:!1})}},patchConfig:async n=>{const s={...await t().loadConfig()??{},...n??{}};return t().saveConfig(s)},loadProxyAuthStatus:async({force:n=!1}={})=>{const r=t().proxyAuthStatus;if(!n&&r)return r;if(Eo)return Eo;Eo=(async()=>{e({isLoadingProxyAuthStatus:!0,error:null});try{const s=await as.getProxyAuthStatus();return e({proxyAuthStatus:s,error:null}),s}catch(s){const o=Oc(s,"Failed to load proxy auth status");throw e({error:o}),s}finally{e({isLoadingProxyAuthStatus:!1})}})();try{return await Eo}finally{Eo=null}},applyProxyAuth:async n=>{await as.setProxyAuth(n),await t().loadProxyAuthStatus({force:!0})},clearProxyAuth:async()=>{await as.clearProxyAuth(),await t().loadProxyAuthStatus({force:!0})}}));let Mo=null;const K_=(e,t)=>({models:[],selectedModel:void 0,isLoadingModels:!1,modelsError:null,configModel:void 0,setSelectedModel:n=>{e({selectedModel:n})},loadConfigModel:async()=>{try{const n=await Iu.getState().loadConfig(),r=typeof(n==null?void 0:n.model)=="string"?n.model:void 0;r&&e({configModel:r})}catch(n){console.error("Failed to load model from config:",n)}},fetchModels:async()=>{if(Mo)return Mo;Mo=(async()=>{e({isLoadingModels:!0,modelsError:null});try{try{if(!(await as.getSetupStatus()).is_complete){ke("[ModelSlice]","Setup not complete, skipping model fetch"),e({models:[],selectedModel:void 0,isLoadingModels:!1,modelsError:"Complete setup to access all models"});return}}catch(r){console.error("Failed to check setup status:",r)}const n=await by.getModels();e(r=>{const s=r.selectedModel;let o=r.selectedModel;return s&&n.includes(s)||(n.length>0?o=n[0]:o=void 0),{...r,models:n,selectedModel:o,modelsError:n.length>0?null:"No available model options"}}),t().models.length===0&&console.warn("No models available from service")}catch(n){const r=n instanceof Error?n.message:String(n);if(console.error("Failed to fetch models:",n),n instanceof Au){e(s=>({...s,models:s.models,selectedModel:s.selectedModel,modelsError:r||"Proxy authentication required. Please configure proxy auth."}));return}e(s=>({...s,models:[],selectedModel:s.selectedModel,modelsError:r}))}finally{e({isLoadingModels:!1})}})();try{await Mo}finally{Mo=null}}}),V_=["system_prompt","system_prompt_selected_id"],$c=e=>({id:e.id,name:e.name||e.id,content:e.content||"",description:e.description,isDefault:!!e.is_default}),Br=class Br{constructor(){vt(this,"deprecatedKeysCleanupDone",!1)}static getInstance(){return Br.instance||(Br.instance=new Br),Br.instance.cleanupDeprecatedPromptStorageKeys(),Br.instance}cleanupDeprecatedPromptStorageKeys(){if(!this.deprecatedKeysCleanupDone){this.deprecatedKeysCleanupDone=!0;try{for(const t of V_)localStorage.removeItem(t)}catch(t){console.warn("[SystemPromptService] Failed to cleanup deprecated prompt storage keys:",t)}}}async getSystemPromptPresets(){try{const t=await ht.get("prompt-presets"),r=(Array.isArray(t==null?void 0:t.prompts)?t.prompts:[]).filter(s=>s.id&&s.id.trim().length>0).map($c);if(r.length>0)return r}catch(t){console.error("Failed to load prompt presets from backend:",t)}return wl()}async createSystemPromptPreset(t){var s;const n={name:t.name,content:t.content};(s=t.id)!=null&&s.trim()&&(n.id=t.id.trim()),t.description!==void 0&&(n.description=t.description);const r=await ht.post("prompt-presets",n);if(!(r!=null&&r.prompt))throw new Error("Backend did not return created prompt preset");return $c(r.prompt)}async updateSystemPromptPreset(t){const n=encodeURIComponent(t.id),r={name:t.name,content:t.content,description:t.description},s=await ht.patch(`prompt-presets/${n}`,r);if(!(s!=null&&s.prompt))throw new Error("Backend did not return updated prompt preset");return $c(s.prompt)}async deleteSystemPromptPreset(t){const n=encodeURIComponent(t);await ht.delete(`prompt-presets/${n}`)}async findPresetById(t){return(await this.getSystemPromptPresets()).find(r=>r.id===t)}async getCurrentSystemPromptContent(t){const n=await this.findPresetById(t);if(n)return n.content;const r=await this.getSystemPromptPresets(),s=r.find(o=>o.isDefault)||r[0];return(s==null?void 0:s.content)||""}};vt(Br,"instance");let xl=Br;const wh="copilot_last_selected_prompt_id",Sy="copilot_custom_system_prompts_v2",wy="copilot_custom_system_prompts_v2_migrated_to_backend",xy="general_assistant",jd=80,Xs=xl.getInstance();let Ii=null;function Id(e){const t=e.toLowerCase().trim().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");return t.length===0?`prompt_${Date.now()}_${Math.random().toString(36).substring(2,9)}`:t.slice(0,jd)}function _y(e){if(typeof e!="string")return null;const t=e.toLowerCase().trim().replace(/[^a-z0-9_]+/g,"_").replace(/^_+|_+$/g,"");return t?t.slice(0,jd):null}function Cy(e,t){if(!t.has(e))return e;let n=2;for(;;){const r=`_${n}`,o=`${e.slice(0,Math.max(0,jd-r.length))}${r}`;if(!t.has(o))return o;n+=1}}function ky(){try{const e=localStorage.getItem(Sy);if(!e)return[];const t=JSON.parse(e);if(!Array.isArray(t))return[];const n=new Set,r=[];for(const s of t){const o=typeof(s==null?void 0:s.name)=="string"?s.name.trim():"",a=typeof(s==null?void 0:s.content)=="string"?s.content.trim():"";if(!o||!a)continue;const c=_y(s==null?void 0:s.id)||Id(o),d=Cy(c,n);d!==xy&&(n.add(d),r.push({id:d,name:o,content:a,description:typeof(s==null?void 0:s.description)=="string"&&s.description.trim()||void 0,isDefault:!!(s!=null&&s.isDefault)}))}return r}catch(e){return console.error("[promptSlice] Failed to read legacy custom prompts:",e),[]}}function Ty(){try{return localStorage.getItem(wy)==="1"}catch(e){return console.error("[promptSlice] Failed to read migration marker:",e),!1}}function xh(){try{localStorage.setItem(wy,"1")}catch(e){console.error("[promptSlice] Failed to write migration marker:",e)}}function _h(){try{localStorage.removeItem(Sy)}catch(e){console.error("[promptSlice] Failed to clear legacy custom prompts:",e)}}async function G_(){var s,o;if(Ty())return;const e=ky();if(e.length===0){_h(),xh();return}const t=await Xs.getSystemPromptPresets(),n=new Set(t.map(a=>a.id));let r=!1;for(const a of e){const i=(s=a.name)==null?void 0:s.trim(),c=(o=a.content)==null?void 0:o.trim();if(!i||!c||a.id===xy||a.isDefault)continue;const d=_y(a.id)||Id(i),f=Cy(d,n);try{const p=await Xs.createSystemPromptPreset({id:f,name:i,content:c,description:a.description});n.add(p.id)}catch(p){r=!0,console.error(`[promptSlice] Failed to migrate legacy prompt '${i}' to backend:`,p)}}r||(_h(),xh())}async function J_(){Ii||(Ii=G_().finally(()=>{Ii=null})),await Ii}const Q_=(e,t)=>({systemPrompts:[],lastSelectedPromptId:localStorage.getItem(wh)||null,loadSystemPrompts:async()=>{try{await J_()}catch(s){console.warn("[promptSlice] Legacy prompt migration skipped:",s)}let n=[];try{n=await Xs.getSystemPromptPresets()}catch(s){console.error("Failed to load system prompts from backend:",s)}let r=n.length?n:wl();if(!Ty()){const s=ky();r=Z_(r,s)}r.length===0&&(r=wl()),e({systemPrompts:r})},addSystemPrompt:async n=>{try{await Xs.createSystemPromptPreset({id:Id(n.name),name:n.name,content:n.content,description:n.description}),await t().loadSystemPrompts()}catch(r){throw console.error("Failed to add system prompt:",r),r}},updateSystemPrompt:async n=>{try{await Xs.updateSystemPromptPreset(n),await t().loadSystemPrompts()}catch(r){throw console.error("Failed to update system prompt:",r),r}},deleteSystemPrompt:async n=>{try{await Xs.deleteSystemPromptPreset(n),await t().loadSystemPrompts()}catch(r){throw console.error("Failed to delete system prompt:",r),r}},setLastSelectedPromptId:n=>{e({lastSelectedPromptId:n});try{localStorage.setItem(wh,n)}catch(r){console.error("Failed to save last selected prompt ID to localStorage:",r)}}}),Z_=(e,t)=>{const n=new Map;return e.forEach(r=>{n.set(r.id,r)}),t.forEach(r=>{n.set(r.id,r)}),Array.from(n.values())},e0=()=>({});class t0{async listSkills(t,n){const r=new URLSearchParams;t!=null&&t.search&&r.append("search",t.search),t!=null&&t.includeDisabled&&r.append("include_disabled","true"),n&&r.append("refresh","true");const s=r.toString(),o=s?`skills?${s}`:"skills";return Ue.get(o)}async getSkill(t){return Ue.get(`skills/${t}`)}async getFilteredTools(t){const n=t?`?session_id=${encodeURIComponent(t)}`:"";return(await Ue.get(`skills/filtered-tools${n}`)).tools??[]}}const Ch=new t0,n0=(e,t)=>({skills:[],isLoadingSkills:!1,skillsError:null,loadSkills:async(n,r)=>{e({isLoadingSkills:!0,skillsError:null});try{const s=await Ch.listSkills(n,r);e({skills:s.skills,isLoadingSkills:!1})}catch(s){e({skillsError:s instanceof Error?s.message:kt.t("components.skillManager.loadFailed"),isLoadingSkills:!1})}},getSkill:async n=>{e({isLoadingSkills:!0,skillsError:null});try{const r=await Ch.getSkill(n),s=t().skills,a=s.findIndex(i=>i.id===r.id)>=0?s.map(i=>i.id===r.id?r:i):[...s,r];e({skills:a,isLoadingSkills:!1})}catch(r){e({skillsError:r instanceof Error?r.message:kt.t("components.skillManager.getFailed"),isLoadingSkills:!1})}},clearSkillsError:()=>{e({skillsError:null})}}),r0=e=>({tokenUsages:{},truncationOccurred:{},segmentsRemoved:{},updateTokenUsage:(t,n)=>e(r=>({tokenUsages:{...r.tokenUsages,[t]:n}})),setTruncationInfo:(t,n,r)=>e(s=>({truncationOccurred:{...s.truncationOccurred,[t]:n},segmentsRemoved:{...s.segmentsRemoved,[t]:r}})),clearTokenUsage:t=>e(n=>{const{[t]:r,...s}=n.tokenUsages,{[t]:o,...a}=n.truncationOccurred,{[t]:i,...c}=n.segmentsRemoved;return{tokenUsages:s,truncationOccurred:a,segmentsRemoved:c}})}),s0=Pn.getInstance(),o0=(e,t)=>({taskLists:{},taskListVersions:{},activeItems:{},evaluationStates:{},setTaskList:(n,r)=>e(s=>({taskLists:{...s.taskLists,[n]:r},taskListVersions:{...s.taskListVersions,[n]:r.version||0}})),loadTaskList:async n=>{const r=await s0.getTaskList(n);return r?(t().setTaskList(r.session_id||n,r),r):null},updateTaskListDelta:(n,r)=>e(s=>{const o=s.taskListVersions[n]||0;if(r.version<=o)return s;const a=s.taskLists[n];if(!a)return s;const i=a.items.map(c=>c.id===r.item_id?{...c,status:r.status,tool_calls_count:r.tool_calls_count}:c);return{taskLists:{...s.taskLists,[n]:{...a,items:i,updated_at:new Date().toISOString()}},taskListVersions:{...s.taskListVersions,[n]:r.version},activeItems:{...s.activeItems,[n]:r.status==="in_progress"?r.item_id:null}}}),clearTaskList:n=>e(r=>{const{[n]:s,...o}=r.taskLists,{[n]:a,...i}=r.taskListVersions,{[n]:c,...d}=r.activeItems,{[n]:f,...p}=r.evaluationStates;return{taskLists:o,taskListVersions:i,activeItems:d,evaluationStates:p}}),getTaskListVersion:n=>t().taskListVersions[n]||0,setEvaluationState:(n,r)=>e(s=>({evaluationStates:{...s.evaluationStates,[n]:r}})),clearEvaluationState:n=>e(r=>{const{[n]:s,...o}=r.evaluationStates;return{evaluationStates:o}})});var tl={exports:{}},a0=tl.exports,kh;function i0(){return kh||(kh=1,function(e,t){((n,r)=>{e.exports=r()})(a0,function(){var n=function(u,h){return(n=Object.setPrototypeOf||({__proto__:[]}instanceof Array?function(y,b){y.__proto__=b}:function(y,b){for(var _ in b)Object.prototype.hasOwnProperty.call(b,_)&&(y[_]=b[_])}))(u,h)},r=function(){return(r=Object.assign||function(u){for(var h,y=1,b=arguments.length;y<b;y++)for(var _ in h=arguments[y])Object.prototype.hasOwnProperty.call(h,_)&&(u[_]=h[_]);return u}).apply(this,arguments)};function s(u,h,y){for(var b,_=0,M=h.length;_<M;_++)!b&&_ in h||((b=b||Array.prototype.slice.call(h,0,_))[_]=h[_]);return u.concat(b||Array.prototype.slice.call(h))}var o=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:ww,a=Object.keys,i=Array.isArray;function c(u,h){return typeof h=="object"&&a(h).forEach(function(y){u[y]=h[y]}),u}typeof Promise>"u"||o.Promise||(o.Promise=Promise);var d=Object.getPrototypeOf,f={}.hasOwnProperty;function p(u,h){return f.call(u,h)}function v(u,h){typeof h=="function"&&(h=h(d(u))),(typeof Reflect>"u"?a:Reflect.ownKeys)(h).forEach(function(y){w(u,y,h[y])})}var g=Object.defineProperty;function w(u,h,y,b){g(u,h,c(y&&p(y,"get")&&typeof y.get=="function"?{get:y.get,set:y.set,configurable:!0}:{value:y,configurable:!0,writable:!0},b))}function m(u){return{from:function(h){return u.prototype=Object.create(h.prototype),w(u.prototype,"constructor",u),{extend:v.bind(null,u.prototype)}}}}var x=Object.getOwnPropertyDescriptor,k=[].slice;function C(u,h,y){return k.call(u,h,y)}function E(u,h){return h(u)}function T(u){if(!u)throw new Error("Assertion Failed")}function P(u){o.setImmediate?setImmediate(u):setTimeout(u,0)}function A(u,h){if(typeof h=="string"&&p(u,h))return u[h];if(!h)return u;if(typeof h!="string"){for(var y=[],b=0,_=h.length;b<_;++b){var M=A(u,h[b]);y.push(M)}return y}var R,j=h.indexOf(".");return j===-1||(R=u[h.substr(0,j)])==null?void 0:A(R,h.substr(j+1))}function O(u,h,y){if(u&&h!==void 0&&!("isFrozen"in Object&&Object.isFrozen(u)))if(typeof h!="string"&&"length"in h){T(typeof y!="string"&&"length"in y);for(var b=0,_=h.length;b<_;++b)O(u,h[b],y[b])}else{var M,R,j=h.indexOf(".");j!==-1?(M=h.substr(0,j),(j=h.substr(j+1))===""?y===void 0?i(u)&&!isNaN(parseInt(M))?u.splice(M,1):delete u[M]:u[M]=y:O(R=(R=u[M])&&p(u,M)?R:u[M]={},j,y)):y===void 0?i(u)&&!isNaN(parseInt(h))?u.splice(h,1):delete u[h]:u[h]=y}}function $(u){var h,y={};for(h in u)p(u,h)&&(y[h]=u[h]);return y}var U=[].concat;function J(u){return U.apply([],u)}var ve="BigUint64Array,BigInt64Array,Array,Boolean,String,Date,RegExp,Blob,File,FileList,FileSystemFileHandle,FileSystemDirectoryHandle,ArrayBuffer,DataView,Uint8ClampedArray,ImageBitmap,ImageData,Map,Set,CryptoKey".split(",").concat(J([8,16,32,64].map(function(u){return["Int","Uint","Float"].map(function(h){return h+u+"Array"})}))).filter(function(u){return o[u]}),ee=new Set(ve.map(function(u){return o[u]})),I=null;function Y(u){return I=new WeakMap,u=function h(y){if(!y||typeof y!="object")return y;var b=I.get(y);if(b)return b;if(i(y)){b=[],I.set(y,b);for(var _=0,M=y.length;_<M;++_)b.push(h(y[_]))}else if(ee.has(y.constructor))b=y;else{var R,j=d(y);for(R in b=j===Object.prototype?{}:Object.create(j),I.set(y,b),y)p(y,R)&&(b[R]=h(y[R]))}return b}(u),I=null,u}var z={}.toString;function D(u){return z.call(u).slice(8,-1)}var ie=typeof Symbol<"u"?Symbol.iterator:"@@iterator",Q=typeof ie=="symbol"?function(u){var h;return u!=null&&(h=u[ie])&&h.apply(u)}:function(){return null};function ue(u,h){h=u.indexOf(h),0<=h&&u.splice(h,1)}var me={};function V(u){var h,y,b,_;if(arguments.length===1){if(i(u))return u.slice();if(this===me&&typeof u=="string")return[u];if(_=Q(u))for(y=[];!(b=_.next()).done;)y.push(b.value);else{if(u==null)return[u];if(typeof(h=u.length)!="number")return[u];for(y=new Array(h);h--;)y[h]=u[h]}}else for(h=arguments.length,y=new Array(h);h--;)y[h]=arguments[h];return y}var ae=typeof Symbol<"u"?function(u){return u[Symbol.toStringTag]==="AsyncFunction"}:function(){return!1},ve=["Unknown","Constraint","Data","TransactionInactive","ReadOnly","Version","NotFound","InvalidState","InvalidAccess","Abort","Timeout","QuotaExceeded","Syntax","DataClone"],Tt=["Modify","Bulk","OpenFailed","VersionChange","Schema","Upgrade","InvalidTable","MissingAPI","NoSuchDatabase","InvalidArgument","SubTransaction","Unsupported","Internal","DatabaseClosed","PrematureCommit","ForeignAwait"].concat(ve),re={VersionChanged:"Database version changed by other database connection",DatabaseClosed:"Database has been closed",Abort:"Transaction aborted",TransactionInactive:"Transaction has already completed or failed",MissingAPI:"IndexedDB API missing. Please visit https://tinyurl.com/y2uuvskb"};function le(u,h){this.name=u,this.message=h}function de(u,h){return u+". Errors: "+Object.keys(h).map(function(y){return h[y].toString()}).filter(function(y,b,_){return _.indexOf(y)===b}).join(`
12
12
  `)}function pe(u,h,y,b){this.failures=h,this.failedKeys=b,this.successCount=y,this.message=de(u,h)}function Ae(u,h){this.name="BulkError",this.failures=Object.keys(h).map(function(y){return h[y]}),this.failuresByPos=h,this.message=de(u,this.failures)}m(le).from(Error).extend({toString:function(){return this.name+": "+this.message}}),m(pe).from(le),m(Ae).from(le);var Me=Tt.reduce(function(u,h){return u[h]=h+"Error",u},{}),F=le,L=Tt.reduce(function(u,h){var y=h+"Error";function b(_,M){this.name=y,_?typeof _=="string"?(this.message="".concat(_).concat(M?`
13
- `+M:""),this.inner=M||null):typeof _=="object"&&(this.message="".concat(_.name," ").concat(_.message),this.inner=_):(this.message=re[h]||y,this.inner=null)}return m(b).from(F),u[h]=b,u},{}),fe=(L.Syntax=SyntaxError,L.Type=TypeError,L.Range=RangeError,ve.reduce(function(u,h){return u[h+"Error"]=L[h],u},{}));ve=Tt.reduce(function(u,h){return["Syntax","Type","Range"].indexOf(h)===-1&&(u[h+"Error"]=L[h]),u},{});function Se(){}function De(u){return u}function We(u,h){return u==null||u===De?h:function(y){return h(u(y))}}function Ge(u,h){return function(){u.apply(this,arguments),h.apply(this,arguments)}}function He(u,h){return u===Se?h:function(){var y=u.apply(this,arguments),b=(y!==void 0&&(arguments[0]=y),this.onsuccess),_=this.onerror,M=(this.onsuccess=null,this.onerror=null,h.apply(this,arguments));return b&&(this.onsuccess=this.onsuccess?Ge(b,this.onsuccess):b),_&&(this.onerror=this.onerror?Ge(_,this.onerror):_),M!==void 0?M:y}}function at(u,h){return u===Se?h:function(){u.apply(this,arguments);var y=this.onsuccess,b=this.onerror;this.onsuccess=this.onerror=null,h.apply(this,arguments),y&&(this.onsuccess=this.onsuccess?Ge(y,this.onsuccess):y),b&&(this.onerror=this.onerror?Ge(b,this.onerror):b)}}function St(u,h){return u===Se?h:function(_){var b=u.apply(this,arguments),_=(c(_,b),this.onsuccess),M=this.onerror,R=(this.onsuccess=null,this.onerror=null,h.apply(this,arguments));return _&&(this.onsuccess=this.onsuccess?Ge(_,this.onsuccess):_),M&&(this.onerror=this.onerror?Ge(M,this.onerror):M),b===void 0?R===void 0?void 0:R:c(b,R)}}function Ot(u,h){return u===Se?h:function(){return h.apply(this,arguments)!==!1&&u.apply(this,arguments)}}function xt(u,h){return u===Se?h:function(){var y=u.apply(this,arguments);if(y&&typeof y.then=="function"){for(var b=this,_=arguments.length,M=new Array(_);_--;)M[_]=arguments[_];return y.then(function(){return h.apply(b,M)})}return h.apply(this,arguments)}}ve.ModifyError=pe,ve.DexieError=le,ve.BulkError=Ae;var Fe=typeof location<"u"&&/^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);function lt(u){Fe=u}var _t={},Qt=100,At=typeof Promise>"u"?[]:(Tt=Promise.resolve(),typeof crypto<"u"&&crypto.subtle?[At=crypto.subtle.digest("SHA-512",new Uint8Array([0])),d(At),Tt]:[Tt,d(Tt),Tt]),Tt=At[0],Is=At[1],Is=Is&&Is.then,Ht=Tt&&Tt.constructor,$n=!!At[2],Zt=function(u,h){Dt.push([u,h]),Ne&&(queueMicrotask(Es),Ne=!1)},he=!0,Ne=!0,Ie=[],Je=[],Wt=De,yn={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:Se,pgp:!1,env:{},finalize:Se},Oe=yn,Dt=[],en=0,tn=[];function Re(u){if(typeof this!="object")throw new TypeError("Promises must be constructed via new");this._listeners=[],this._lib=!1;var h=this._PSD=Oe;if(typeof u!="function"){if(u!==_t)throw new TypeError("Not a function");this._state=arguments[1],this._value=arguments[2],this._state===!1&&Pr(this,this._value)}else this._state=null,this._value=null,++h.ref,function y(b,_){try{_(function(M){if(b._state===null){if(M===b)throw new TypeError("A promise cannot be resolved with itself.");var R=b._lib&&Wn();M&&typeof M.then=="function"?y(b,function(j,B){M instanceof Re?M._then(j,B):M.then(j,B)}):(b._state=!0,b._value=M,Vr(b)),R&&Cn()}},Pr.bind(null,b))}catch(M){Pr(b,M)}}(this,u)}var Zn={get:function(){var u=Oe,h=gr;function y(b,_){var M=this,R=!u.global&&(u!==Oe||h!==gr),j=R&&!Un(),B=new Re(function(te,q){er(M,new Tr(Ft(b,u,R,j),Ft(_,u,R,j),te,q,u))});return this._consoleTask&&(B._consoleTask=this._consoleTask),B}return y.prototype=_t,y},set:function(u){w(this,"then",u&&u.prototype===_t?Zn:{get:function(){return u},set:Zn.set})}};function Tr(u,h,y,b,_){this.onFulfilled=typeof u=="function"?u:null,this.onRejected=typeof h=="function"?h:null,this.resolve=y,this.reject=b,this.psd=_}function Pr(u,h){var y,b;Je.push(h),u._state===null&&(y=u._lib&&Wn(),h=Wt(h),u._state=!1,u._value=h,b=u,Ie.some(function(_){return _._value===b._value})||Ie.push(b),Vr(u),y)&&Cn()}function Vr(u){var h=u._listeners;u._listeners=[];for(var y=0,b=h.length;y<b;++y)er(u,h[y]);var _=u._PSD;--_.ref||_.finalize(),en===0&&(++en,Zt(function(){--en==0&&tr()},[]))}function er(u,h){if(u._state===null)u._listeners.push(h);else{var y=u._state?h.onFulfilled:h.onRejected;if(y===null)return(u._state?h.resolve:h.reject)(u._value);++h.psd.ref,++en,Zt(po,[y,u,h])}}function po(u,h,y){try{var b,_=h._value;!h._state&&Je.length&&(Je=[]),b=Fe&&h._consoleTask?h._consoleTask.run(function(){return u(_)}):u(_),h._state||Je.indexOf(_)!==-1||(M=>{for(var R=Ie.length;R;)if(Ie[--R]._value===M._value)return Ie.splice(R,1)})(h),y.resolve(b)}catch(M){y.reject(M)}finally{--en==0&&tr(),--y.psd.ref||y.psd.finalize()}}function Es(){xe(yn,function(){Wn()&&Cn()})}function Wn(){var u=he;return Ne=he=!1,u}function Cn(){var u,h,y;do for(;0<Dt.length;)for(u=Dt,Dt=[],y=u.length,h=0;h<y;++h){var b=u[h];b[0].apply(null,b[1])}while(0<Dt.length);Ne=he=!0}function tr(){for(var u=Ie,h=(Ie=[],u.forEach(function(b){b._PSD.onunhandled.call(null,b._value,b)}),tn.slice(0)),y=h.length;y;)h[--y]()}function nr(u){return new Re(_t,!1,u)}function Ce(u,h){var y=Oe;return function(){var b=Wn(),_=Oe;try{return qn(y,!0),u.apply(this,arguments)}catch(M){h&&h(M)}finally{qn(_,!1),b&&Cn()}}}v(Re.prototype,{then:Zn,_then:function(u,h){er(this,new Tr(null,null,u,h,Oe))},catch:function(u){var h,y;return arguments.length===1?this.then(null,u):(h=u,y=arguments[1],typeof h=="function"?this.then(null,function(b){return(b instanceof h?y:nr)(b)}):this.then(null,function(b){return(b&&b.name===h?y:nr)(b)}))},finally:function(u){return this.then(function(h){return Re.resolve(u()).then(function(){return h})},function(h){return Re.resolve(u()).then(function(){return nr(h)})})},timeout:function(u,h){var y=this;return u<1/0?new Re(function(b,_){var M=setTimeout(function(){return _(new L.Timeout(h))},u);y.then(b,_).finally(clearTimeout.bind(null,M))}):this}}),typeof Symbol<"u"&&Symbol.toStringTag&&w(Re.prototype,Symbol.toStringTag,"Dexie.Promise"),yn.env=mo(),v(Re,{all:function(){var u=V.apply(null,arguments).map(Gr);return new Re(function(h,y){u.length===0&&h([]);var b=u.length;u.forEach(function(_,M){return Re.resolve(_).then(function(R){u[M]=R,--b||h(u)},y)})})},resolve:function(u){return u instanceof Re?u:u&&typeof u.then=="function"?new Re(function(h,y){u.then(h,y)}):new Re(_t,!0,u)},reject:nr,race:function(){var u=V.apply(null,arguments).map(Gr);return new Re(function(h,y){u.map(function(b){return Re.resolve(b).then(h,y)})})},PSD:{get:function(){return Oe},set:function(u){return Oe=u}},totalEchoes:{get:function(){return gr}},newPSD:rr,usePSD:xe,scheduler:{get:function(){return Zt},set:function(u){Zt=u}},rejectionMapper:{get:function(){return Wt},set:function(u){Wt=u}},follow:function(u,h){return new Re(function(y,b){return rr(function(_,M){var R=Oe;R.unhandleds=[],R.onunhandled=M,R.finalize=Ge(function(){var j,B=this;j=function(){B.unhandleds.length===0?_():M(B.unhandleds[0])},tn.push(function te(){j(),tn.splice(tn.indexOf(te),1)}),++en,Zt(function(){--en==0&&tr()},[])},R.finalize),u()},h,y,b)})}}),Ht&&(Ht.allSettled&&w(Re,"allSettled",function(){var u=V.apply(null,arguments).map(Gr);return new Re(function(h){u.length===0&&h([]);var y=u.length,b=new Array(y);u.forEach(function(_,M){return Re.resolve(_).then(function(R){return b[M]={status:"fulfilled",value:R}},function(R){return b[M]={status:"rejected",reason:R}}).then(function(){return--y||h(b)})})})}),Ht.any&&typeof AggregateError<"u"&&w(Re,"any",function(){var u=V.apply(null,arguments).map(Gr);return new Re(function(h,y){u.length===0&&y(new AggregateError([]));var b=u.length,_=new Array(b);u.forEach(function(M,R){return Re.resolve(M).then(function(j){return h(j)},function(j){_[R]=j,--b||y(new AggregateError(_))})})})}),Ht.withResolvers)&&(Re.withResolvers=Ht.withResolvers);var Xe={awaits:0,echoes:0,id:0},yt=0,Pt=[],nn=0,gr=0,fi=0;function rr(u,R,y,b){var _=Oe,M=Object.create(_),R=(M.parent=_,M.ref=0,M.global=!1,M.id=++fi,yn.env,M.env=$n?{Promise:Re,PromiseProp:{value:Re,configurable:!0,writable:!0},all:Re.all,race:Re.race,allSettled:Re.allSettled,any:Re.any,resolve:Re.resolve,reject:Re.reject}:{},R&&c(M,R),++_.ref,M.finalize=function(){--this.parent.ref||this.parent.finalize()},xe(M,u,y,b));return M.ref===0&&M.finalize(),R}function yr(){return Xe.id||(Xe.id=++yt),++Xe.awaits,Xe.echoes+=Qt,Xe.id}function Un(){return!!Xe.awaits&&(--Xe.awaits==0&&(Xe.id=0),Xe.echoes=Xe.awaits*Qt,!0)}function Gr(u){return Xe.echoes&&u&&u.constructor===Ht?(yr(),u.then(function(h){return Un(),h},function(h){return Un(),ft(h)})):u}function hi(){var u=Pt[Pt.length-1];Pt.pop(),qn(u,!1)}function qn(u,h){var y,b,_=Oe;(h?!Xe.echoes||nn++&&u===Oe:!nn||--nn&&u===Oe)||queueMicrotask(h?(function(M){++gr,Xe.echoes&&--Xe.echoes!=0||(Xe.echoes=Xe.awaits=Xe.id=0),Pt.push(Oe),qn(M,!0)}).bind(null,u):hi),u!==Oe&&(Oe=u,_===yn&&(yn.env=mo()),$n)&&(y=yn.env.Promise,b=u.env,_.global||u.global)&&(Object.defineProperty(o,"Promise",b.PromiseProp),y.all=b.all,y.race=b.race,y.resolve=b.resolve,y.reject=b.reject,b.allSettled&&(y.allSettled=b.allSettled),b.any)&&(y.any=b.any)}function mo(){var u=o.Promise;return $n?{Promise:u,PromiseProp:Object.getOwnPropertyDescriptor(o,"Promise"),all:u.all,race:u.race,allSettled:u.allSettled,any:u.any,resolve:u.resolve,reject:u.reject}:{}}function xe(u,h,y,b,_){var M=Oe;try{return qn(u,!0),h(y,b,_)}finally{qn(M,!1)}}function Ft(u,h,y,b){return typeof u!="function"?u:function(){var _=Oe;y&&yr(),qn(h,!0);try{return u.apply(this,arguments)}finally{qn(_,!1),b&&queueMicrotask(Un)}}}function Xt(u){Promise===Ht&&Xe.echoes===0?nn===0?u():enqueueNativeMicroTask(u):setTimeout(u,0)}(""+Is).indexOf("[native code]")===-1&&(yr=Un=Se);var ft=Re.reject,$t="￿",on="Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.",Hn="String expected.",vn="__dbnames",Ms="readonly",sr="readwrite";function bn(u,h){return u?h?function(){return u.apply(this,arguments)&&h.apply(this,arguments)}:u:h}var go={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function pi(u){return typeof u!="string"||/\./.test(u)?function(h){return h}:function(h){return h[u]===void 0&&u in h&&delete(h=Y(h))[u],h}}function Pf(){throw L.Type("Entity instances must never be new:ed. Instances are generated by the framework bypassing the constructor.")}function dt(u,h){try{var y=Ef(u),b=Ef(h);if(y!==b)return y==="Array"?1:b==="Array"?-1:y==="binary"?1:b==="binary"?-1:y==="string"?1:b==="string"?-1:y==="Date"?1:b!=="Date"?NaN:-1;switch(y){case"number":case"Date":case"string":return h<u?1:u<h?-1:0;case"binary":for(var _=Mf(u),M=Mf(h),R=_.length,j=M.length,B=R<j?R:j,te=0;te<B;++te)if(_[te]!==M[te])return _[te]<M[te]?-1:1;return R===j?0:R<j?-1:1;case"Array":for(var q=u,N=h,W=q.length,G=N.length,H=W<G?W:G,X=0;X<H;++X){var K=dt(q[X],N[X]);if(K!==0)return K}return W===G?0:W<G?-1:1}}catch{}return NaN}function Ef(u){var h=typeof u;return h=="object"&&(ArrayBuffer.isView(u)||(h=D(u))==="ArrayBuffer")?"binary":h}function Mf(u){return u instanceof Uint8Array?u:ArrayBuffer.isView(u)?new Uint8Array(u.buffer,u.byteOffset,u.byteLength):new Uint8Array(u)}function mi(u,h,y){var b=u.schema.yProps;return b?(h&&0<y.numFailures&&(h=h.filter(function(_,M){return!y.failures[M]})),Promise.all(b.map(function(_){return _=_.updatesTable,h?u.db.table(_).where("k").anyOf(h).delete():u.db.table(_).clear()})).then(function(){return y})):y}Rf.prototype.execute=function(u){var h=this["@@propmod"];if(h.add!==void 0){var y=h.add;if(i(y))return s(s([],i(u)?u:[],!0),y).sort();if(typeof y=="number")return(Number(u)||0)+y;if(typeof y=="bigint")try{return BigInt(u)+y}catch{return BigInt(0)+y}throw new TypeError("Invalid term ".concat(y))}if(h.remove!==void 0){var b=h.remove;if(i(b))return i(u)?u.filter(function(_){return!b.includes(_)}).sort():[];if(typeof b=="number")return Number(u)-b;if(typeof b=="bigint")try{return BigInt(u)-b}catch{return BigInt(0)-b}throw new TypeError("Invalid subtrahend ".concat(b))}return y=(y=h.replacePrefix)==null?void 0:y[0],y&&typeof u=="string"&&u.startsWith(y)?h.replacePrefix[1]+u.substring(y.length):u};var yo=Rf;function Rf(u){this["@@propmod"]=u}function Af(u,h){for(var y=a(h),b=y.length,_=!1,M=0;M<b;++M){var R=y[M],j=h[R],B=A(u,R);j instanceof yo?(O(u,R,j.execute(B)),_=!0):B!==j&&(O(u,R,j),_=!0)}return _}Mt.prototype._trans=function(u,h,y){var b=this._tx||Oe.trans,_=this.name,M=Fe&&typeof console<"u"&&console.createTask&&console.createTask("Dexie: ".concat(u==="readonly"?"read":"write"," ").concat(this.name));function R(te,q,N){if(N.schema[_])return h(N.idbtrans,N);throw new L.NotFound("Table "+_+" not part of transaction")}var j=Wn();try{var B=b&&b.db._novip===this.db._novip?b===Oe.trans?b._promise(u,R,y):rr(function(){return b._promise(u,R,y)},{trans:b,transless:Oe.transless||Oe}):function te(q,N,W,G){if(q.idbdb&&(q._state.openComplete||Oe.letThrough||q._vip)){var H=q._createTransaction(N,W,q._dbSchema);try{H.create(),q._state.PR1398_maxLoop=3}catch(X){return X.name===Me.InvalidState&&q.isOpen()&&0<--q._state.PR1398_maxLoop?(console.warn("Dexie: Need to reopen db"),q.close({disableAutoOpen:!1}),q.open().then(function(){return te(q,N,W,G)})):ft(X)}return H._promise(N,function(X,K){return rr(function(){return Oe.trans=H,G(X,K,H)})}).then(function(X){if(N==="readwrite")try{H.idbtrans.commit()}catch{}return N==="readonly"?X:H._completion.then(function(){return X})})}if(q._state.openComplete)return ft(new L.DatabaseClosed(q._state.dbOpenError));if(!q._state.isBeingOpened){if(!q._state.autoOpen)return ft(new L.DatabaseClosed);q.open().catch(Se)}return q._state.dbReadyPromise.then(function(){return te(q,N,W,G)})}(this.db,u,[this.name],R);return M&&(B._consoleTask=M,B=B.catch(function(te){return console.trace(te),ft(te)})),B}finally{j&&Cn()}},Mt.prototype.get=function(u,h){var y=this;return u&&u.constructor===Object?this.where(u).first(h):u==null?ft(new L.Type("Invalid argument to Table.get()")):this._trans("readonly",function(b){return y.core.get({trans:b,key:u}).then(function(_){return y.hook.reading.fire(_)})}).then(h)},Mt.prototype.where=function(u){if(typeof u=="string")return new this.db.WhereClause(this,u);if(i(u))return new this.db.WhereClause(this,"[".concat(u.join("+"),"]"));var h=a(u);if(h.length===1)return this.where(h[0]).equals(u[h[0]]);var y=this.schema.indexes.concat(this.schema.primKey).filter(function(j){if(j.compound&&h.every(function(te){return 0<=j.keyPath.indexOf(te)})){for(var B=0;B<h.length;++B)if(h.indexOf(j.keyPath[B])===-1)return!1;return!0}return!1}).sort(function(j,B){return j.keyPath.length-B.keyPath.length})[0];if(y&&this.db._maxKey!==$t)return R=y.keyPath.slice(0,h.length),this.where(R).equals(R.map(function(j){return u[j]}));!y&&Fe&&console.warn("The query ".concat(JSON.stringify(u)," on ").concat(this.name," would benefit from a ")+"compound index [".concat(h.join("+"),"]"));var b=this.schema.idxByName;function _(j,B){return dt(j,B)===0}var R=h.reduce(function(q,B){var te=q[0],q=q[1],N=b[B],W=u[B];return[te||N,te||!N?bn(q,N&&N.multi?function(G){return G=A(G,B),i(G)&&G.some(function(H){return _(W,H)})}:function(G){return _(W,A(G,B))}):q]},[null,null]),M=R[0],R=R[1];return M?this.where(M.name).equals(u[M.keyPath]).filter(R):y?this.filter(R):this.where(h).equals("")},Mt.prototype.filter=function(u){return this.toCollection().and(u)},Mt.prototype.count=function(u){return this.toCollection().count(u)},Mt.prototype.offset=function(u){return this.toCollection().offset(u)},Mt.prototype.limit=function(u){return this.toCollection().limit(u)},Mt.prototype.each=function(u){return this.toCollection().each(u)},Mt.prototype.toArray=function(u){return this.toCollection().toArray(u)},Mt.prototype.toCollection=function(){return new this.db.Collection(new this.db.WhereClause(this))},Mt.prototype.orderBy=function(u){return new this.db.Collection(new this.db.WhereClause(this,i(u)?"[".concat(u.join("+"),"]"):u))},Mt.prototype.reverse=function(){return this.toCollection().reverse()},Mt.prototype.mapToClass=function(u){for(var h=this.db,y=this.name,b=((this.schema.mappedClass=u).prototype instanceof Pf&&(u=(R=>{var j=q,B=R;if(typeof B!="function"&&B!==null)throw new TypeError("Class extends value "+String(B)+" is not a constructor or null");function te(){this.constructor=j}function q(){return R!==null&&R.apply(this,arguments)||this}return n(j,B),j.prototype=B===null?Object.create(B):(te.prototype=B.prototype,new te),Object.defineProperty(q.prototype,"db",{get:function(){return h},enumerable:!1,configurable:!0}),q.prototype.table=function(){return y},q})(u)),new Set),_=u.prototype;_;_=d(_))Object.getOwnPropertyNames(_).forEach(function(R){return b.add(R)});function M(R){if(!R)return R;var j,B=Object.create(u.prototype);for(j in R)if(!b.has(j))try{B[j]=R[j]}catch{}return B}return this.schema.readHook&&this.hook.reading.unsubscribe(this.schema.readHook),this.schema.readHook=M,this.hook("reading",M),u},Mt.prototype.defineClass=function(){return this.mapToClass(function(u){c(this,u)})},Mt.prototype.add=function(u,h){var y=this,b=this.schema.primKey,_=b.auto,M=b.keyPath,R=u;return M&&_&&(R=pi(M)(u)),this._trans("readwrite",function(j){return y.core.mutate({trans:j,type:"add",keys:h!=null?[h]:null,values:[R]})}).then(function(j){return j.numFailures?Re.reject(j.failures[0]):j.lastResult}).then(function(j){if(M)try{O(u,M,j)}catch{}return j})},Mt.prototype.upsert=function(u,h){var y=this,b=this.schema.primKey.keyPath;return this._trans("readwrite",function(_){return y.core.get({trans:_,key:u}).then(function(M){var R=M??{};return Af(R,h),b&&O(R,b,u),y.core.mutate({trans:_,type:"put",values:[R],keys:[u],upsert:!0,updates:{keys:[u],changeSpecs:[h]}}).then(function(j){return j.numFailures?Re.reject(j.failures[0]):!!M})})})},Mt.prototype.update=function(u,h){return typeof u!="object"||i(u)?this.where(":id").equals(u).modify(h):(u=A(u,this.schema.primKey.keyPath))===void 0?ft(new L.InvalidArgument("Given object does not contain its primary key")):this.where(":id").equals(u).modify(h)},Mt.prototype.put=function(u,h){var y=this,b=this.schema.primKey,_=b.auto,M=b.keyPath,R=u;return M&&_&&(R=pi(M)(u)),this._trans("readwrite",function(j){return y.core.mutate({trans:j,type:"put",values:[R],keys:h!=null?[h]:null})}).then(function(j){return j.numFailures?Re.reject(j.failures[0]):j.lastResult}).then(function(j){if(M)try{O(u,M,j)}catch{}return j})},Mt.prototype.delete=function(u){var h=this;return this._trans("readwrite",function(y){return h.core.mutate({trans:y,type:"delete",keys:[u]}).then(function(b){return mi(h,[u],b)}).then(function(b){return b.numFailures?Re.reject(b.failures[0]):void 0})})},Mt.prototype.clear=function(){var u=this;return this._trans("readwrite",function(h){return u.core.mutate({trans:h,type:"deleteRange",range:go}).then(function(y){return mi(u,null,y)})}).then(function(h){return h.numFailures?Re.reject(h.failures[0]):void 0})},Mt.prototype.bulkGet=function(u){var h=this;return this._trans("readonly",function(y){return h.core.getMany({keys:u,trans:y}).then(function(b){return b.map(function(_){return h.hook.reading.fire(_)})})})},Mt.prototype.bulkAdd=function(u,h,y){var b=this,_=Array.isArray(h)?h:void 0,M=(y=y||(_?void 0:h))?y.allKeys:void 0;return this._trans("readwrite",function(R){var j=b.schema.primKey,te=j.auto,j=j.keyPath;if(j&&_)throw new L.InvalidArgument("bulkAdd(): keys argument invalid on tables with inbound keys");if(_&&_.length!==u.length)throw new L.InvalidArgument("Arguments objects and keys must have the same length");var B=u.length,te=j&&te?u.map(pi(j)):u;return b.core.mutate({trans:R,type:"add",keys:_,values:te,wantResults:M}).then(function(q){var N=q.numFailures,W=q.failures;if(N===0)return M?q.results:q.lastResult;throw new Ae("".concat(b.name,".bulkAdd(): ").concat(N," of ").concat(B," operations failed"),W)})})},Mt.prototype.bulkPut=function(u,h,y){var b=this,_=Array.isArray(h)?h:void 0,M=(y=y||(_?void 0:h))?y.allKeys:void 0;return this._trans("readwrite",function(R){var j=b.schema.primKey,te=j.auto,j=j.keyPath;if(j&&_)throw new L.InvalidArgument("bulkPut(): keys argument invalid on tables with inbound keys");if(_&&_.length!==u.length)throw new L.InvalidArgument("Arguments objects and keys must have the same length");var B=u.length,te=j&&te?u.map(pi(j)):u;return b.core.mutate({trans:R,type:"put",keys:_,values:te,wantResults:M}).then(function(q){var N=q.numFailures,W=q.failures;if(N===0)return M?q.results:q.lastResult;throw new Ae("".concat(b.name,".bulkPut(): ").concat(N," of ").concat(B," operations failed"),W)})})},Mt.prototype.bulkUpdate=function(u){var h=this,y=this.core,b=u.map(function(R){return R.key}),_=u.map(function(R){return R.changes}),M=[];return this._trans("readwrite",function(R){return y.getMany({trans:R,keys:b,cache:"clone"}).then(function(j){var B=[],te=[],q=(u.forEach(function(N,W){var G=N.key,H=N.changes,X=j[W];if(X){for(var K=0,oe=Object.keys(H);K<oe.length;K++){var ne=oe[K],ce=H[ne];if(ne===h.schema.primKey.keyPath){if(dt(ce,G)!==0)throw new L.Constraint("Cannot update primary key in bulkUpdate()")}else O(X,ne,ce)}M.push(W),B.push(G),te.push(X)}}),B.length);return y.mutate({trans:R,type:"put",keys:B,values:te,updates:{keys:b,changeSpecs:_}}).then(function(N){var W=N.numFailures,G=N.failures;if(W===0)return q;for(var H=0,X=Object.keys(G);H<X.length;H++){var K,oe=X[H],ne=M[Number(oe)];ne!=null&&(K=G[oe],delete G[oe],G[ne]=K)}throw new Ae("".concat(h.name,".bulkUpdate(): ").concat(W," of ").concat(q," operations failed"),G)})})})},Mt.prototype.bulkDelete=function(u){var h=this,y=u.length;return this._trans("readwrite",function(b){return h.core.mutate({trans:b,type:"delete",keys:u}).then(function(_){return mi(h,u,_)})}).then(function(b){var _=b.numFailures,M=b.failures;if(_===0)return b.lastResult;throw new Ae("".concat(h.name,".bulkDelete(): ").concat(_," of ").concat(y," operations failed"),M)})};var jf=Mt;function Mt(){}function vo(u){function h(R,j){if(j){for(var B=arguments.length,te=new Array(B-1);--B;)te[B-1]=arguments[B];return y[R].subscribe.apply(null,te),u}if(typeof R=="string")return y[R]}var y={};h.addEventType=M;for(var b=1,_=arguments.length;b<_;++b)M(arguments[b]);return h;function M(R,j,B){var te,q;if(typeof R!="object")return j=j||Ot,q={subscribers:[],fire:B=B||Se,subscribe:function(N){q.subscribers.indexOf(N)===-1&&(q.subscribers.push(N),q.fire=j(q.fire,N))},unsubscribe:function(N){q.subscribers=q.subscribers.filter(function(W){return W!==N}),q.fire=q.subscribers.reduce(j,B)}},y[R]=h[R]=q;a(te=R).forEach(function(N){var W=te[N];if(i(W))M(N,te[N][0],te[N][1]);else{if(W!=="asap")throw new L.InvalidArgument("Invalid event config");var G=M(N,De,function(){for(var H=arguments.length,X=new Array(H);H--;)X[H]=arguments[H];G.subscribers.forEach(function(K){P(function(){K.apply(null,X)})})})}})}}function bo(u,h){return m(h).from({prototype:u}),h}function Rs(u,h){return!(u.filter||u.algorithm||u.or)&&(h?u.justLimit:!u.replayFilter)}function sc(u,h){u.filter=bn(u.filter,h)}function oc(u,h,y){var b=u.replayFilter;u.replayFilter=b?function(){return bn(b(),h())}:h,u.justLimit=y&&!b}function gi(u,h){if(u.isPrimKey)return h.primaryKey;var y=h.getIndexByKeyPath(u.index);if(y)return y;throw new L.Schema("KeyPath "+u.index+" on object store "+h.name+" is not indexed")}function If(u,h,y){var b=gi(u,h.schema);return h.openCursor({trans:y,values:!u.keysOnly,reverse:u.dir==="prev",unique:!!u.unique,query:{index:b,range:u.range}})}function yi(u,h,y,b){var _,M,R=u.replayFilter?bn(u.filter,u.replayFilter()):u.filter;return u.or?(_={},M=function(j,B,te){var q,N;R&&!R(B,te,function(W){return B.stop(W)},function(W){return B.fail(W)})||((N=""+(q=B.primaryKey))=="[object ArrayBuffer]"&&(N=""+new Uint8Array(q)),p(_,N))||(_[N]=!0,h(j,B,te))},Promise.all([u.or._iterate(M,y),Of(If(u,b,y),u.algorithm,M,!u.keysOnly&&u.valueMapper)])):Of(If(u,b,y),bn(u.algorithm,R),h,!u.keysOnly&&u.valueMapper)}function Of(u,h,y,b){var _=Ce(b?function(M,R,j){return y(b(M),R,j)}:y);return u.then(function(M){if(M)return M.start(function(){var R=function(){return M.continue()};h&&!h(M,function(j){return R=j},function(j){M.stop(j),R=Se},function(j){M.fail(j),R=Se})||_(M.value,M,function(j){return R=j}),R()})})}gt.prototype._read=function(u,h){var y=this._ctx;return y.error?y.table._trans(null,ft.bind(null,y.error)):y.table._trans("readonly",u).then(h)},gt.prototype._write=function(u){var h=this._ctx;return h.error?h.table._trans(null,ft.bind(null,h.error)):h.table._trans("readwrite",u,"locked")},gt.prototype._addAlgorithm=function(u){var h=this._ctx;h.algorithm=bn(h.algorithm,u)},gt.prototype._iterate=function(u,h){return yi(this._ctx,u,h,this._ctx.table.core)},gt.prototype.clone=function(u){var h=Object.create(this.constructor.prototype),y=Object.create(this._ctx);return u&&c(y,u),h._ctx=y,h},gt.prototype.raw=function(){return this._ctx.valueMapper=null,this},gt.prototype.each=function(u){var h=this._ctx;return this._read(function(y){return yi(h,u,y,h.table.core)})},gt.prototype.count=function(u){var h=this;return this._read(function(y){var b,_=h._ctx,M=_.table.core;return Rs(_,!0)?M.count({trans:y,query:{index:gi(_,M.schema),range:_.range}}).then(function(R){return Math.min(R,_.limit)}):(b=0,yi(_,function(){return++b,!1},y,M).then(function(){return b}))}).then(u)},gt.prototype.sortBy=function(u,h){var y=u.split(".").reverse(),b=y[0],_=y.length-1;function M(B,te){return te?M(B[y[te]],te-1):B[b]}var R=this._ctx.dir==="next"?1:-1;function j(B,te){return dt(M(B,_),M(te,_))*R}return this.toArray(function(B){return B.sort(j)}).then(h)},gt.prototype.toArray=function(u){var h=this;return this._read(function(y){var b,_,M,R=h._ctx;return Rs(R,!0)&&0<R.limit?(b=R.valueMapper,_=gi(R,R.table.core.schema),R.table.core.query({trans:y,limit:R.limit,values:!0,direction:R.dir==="prev"?"prev":void 0,query:{index:_,range:R.range}}).then(function(j){return j=j.result,b?j.map(b):j})):(M=[],yi(R,function(j){return M.push(j)},y,R.table.core).then(function(){return M}))},u)},gt.prototype.offset=function(u){var h=this._ctx;return u<=0||(h.offset+=u,Rs(h)?oc(h,function(){var y=u;return function(b,_){return y===0||(y===1?--y:_(function(){b.advance(y),y=0}),!1)}}):oc(h,function(){var y=u;return function(){return--y<0}})),this},gt.prototype.limit=function(u){return this._ctx.limit=Math.min(this._ctx.limit,u),oc(this._ctx,function(){var h=u;return function(y,b,_){return--h<=0&&b(_),0<=h}},!0),this},gt.prototype.until=function(u,h){return sc(this._ctx,function(y,b,_){return!u(y.value)||(b(_),h)}),this},gt.prototype.first=function(u){return this.limit(1).toArray(function(h){return h[0]}).then(u)},gt.prototype.last=function(u){return this.reverse().first(u)},gt.prototype.filter=function(u){var h;return sc(this._ctx,function(y){return u(y.value)}),(h=this._ctx).isMatch=bn(h.isMatch,u),this},gt.prototype.and=function(u){return this.filter(u)},gt.prototype.or=function(u){return new this.db.WhereClause(this._ctx.table,u,this)},gt.prototype.reverse=function(){return this._ctx.dir=this._ctx.dir==="prev"?"next":"prev",this._ondirectionchange&&this._ondirectionchange(this._ctx.dir),this},gt.prototype.desc=function(){return this.reverse()},gt.prototype.eachKey=function(u){var h=this._ctx;return h.keysOnly=!h.isMatch,this.each(function(y,b){u(b.key,b)})},gt.prototype.eachUniqueKey=function(u){return this._ctx.unique="unique",this.eachKey(u)},gt.prototype.eachPrimaryKey=function(u){var h=this._ctx;return h.keysOnly=!h.isMatch,this.each(function(y,b){u(b.primaryKey,b)})},gt.prototype.keys=function(u){var h=this._ctx,y=(h.keysOnly=!h.isMatch,[]);return this.each(function(b,_){y.push(_.key)}).then(function(){return y}).then(u)},gt.prototype.primaryKeys=function(u){var h=this._ctx;if(Rs(h,!0)&&0<h.limit)return this._read(function(b){var _=gi(h,h.table.core.schema);return h.table.core.query({trans:b,values:!1,limit:h.limit,direction:h.dir==="prev"?"prev":void 0,query:{index:_,range:h.range}})}).then(function(b){return b.result}).then(u);h.keysOnly=!h.isMatch;var y=[];return this.each(function(b,_){y.push(_.primaryKey)}).then(function(){return y}).then(u)},gt.prototype.uniqueKeys=function(u){return this._ctx.unique="unique",this.keys(u)},gt.prototype.firstKey=function(u){return this.limit(1).keys(function(h){return h[0]}).then(u)},gt.prototype.lastKey=function(u){return this.reverse().firstKey(u)},gt.prototype.distinct=function(){var u,h=this._ctx,h=h.index&&h.table.schema.idxByName[h.index];return h&&h.multi&&(u={},sc(this._ctx,function(b){var b=b.primaryKey.toString(),_=p(u,b);return u[b]=!0,!_})),this},gt.prototype.modify=function(u){var h=this,y=this._ctx;return this._write(function(b){function _(X,K){var oe=K.failures;W+=X-K.numFailures;for(var ne=0,ce=a(oe);ne<ce.length;ne++){var ge=ce[ne];N.push(oe[ge])}}var M=typeof u=="function"?u:function(X){return Af(X,u)},R=y.table.core,q=R.schema.primaryKey,j=q.outbound,B=q.extractKey,te=200,q=h.db._options.modifyChunkSize,N=(q&&(te=typeof q=="object"?q[R.name]||q["*"]||200:q),[]),W=0,G=[],H=u===$f;return h.clone().primaryKeys().then(function(X){function K(ne){var ce=Math.min(te,X.length-ne),ge=X.slice(ne,ne+ce);return(H?Promise.resolve([]):R.getMany({trans:b,keys:ge,cache:"immutable"})).then(function(be){var Pe=[],_e=[],$e=j?[]:null,Te=H?ge:[];if(!H)for(var Le=0;Le<ce;++Le){var ye=be[Le],Qe={value:Y(ye),primKey:X[ne+Le]};M.call(Qe,Qe.value,Qe)!==!1&&(Qe.value==null?Te.push(X[ne+Le]):j||dt(B(ye),B(Qe.value))===0?(_e.push(Qe.value),j&&$e.push(X[ne+Le])):(Te.push(X[ne+Le]),Pe.push(Qe.value)))}return Promise.resolve(0<Pe.length&&R.mutate({trans:b,type:"add",values:Pe}).then(function(Ze){for(var nt in Ze.failures)Te.splice(parseInt(nt),1);_(Pe.length,Ze)})).then(function(){return(0<_e.length||oe&&typeof u=="object")&&R.mutate({trans:b,type:"put",keys:$e,values:_e,criteria:oe,changeSpec:typeof u!="function"&&u,isAdditionalChunk:0<ne}).then(function(Ze){return _(_e.length,Ze)})}).then(function(){return(0<Te.length||oe&&H)&&R.mutate({trans:b,type:"delete",keys:Te,criteria:oe,isAdditionalChunk:0<ne}).then(function(Ze){return mi(y.table,Te,Ze)}).then(function(Ze){return _(Te.length,Ze)})}).then(function(){return X.length>ne+ce&&K(ne+te)})})}var oe=Rs(y)&&y.limit===1/0&&(typeof u!="function"||H)&&{index:y.index,range:y.range};return K(0).then(function(){if(0<N.length)throw new pe("Error modifying one or more objects",N,W,G);return X.length})})})},gt.prototype.delete=function(){var u=this._ctx,h=u.range;return!Rs(u)||u.table.schema.yProps||!u.isPrimKey&&h.type!==3?this.modify($f):this._write(function(y){var b=u.table.core.schema.primaryKey,_=h;return u.table.core.count({trans:y,query:{index:b,range:_}}).then(function(M){return u.table.core.mutate({trans:y,type:"deleteRange",range:_}).then(function(B){var j=B.failures,B=B.numFailures;if(B)throw new pe("Could not delete some values",Object.keys(j).map(function(te){return j[te]}),M-B);return M-B})})})};var GS=gt;function gt(){}var $f=function(u,h){return h.value=null};function JS(u,h){return u<h?-1:u===h?0:1}function QS(u,h){return h<u?-1:u===h?0:1}function En(u,h,y){return u=u instanceof Df?new u.Collection(u):u,u._ctx.error=new(y||TypeError)(h),u}function As(u){return new u.Collection(u,function(){return Lf("")}).limit(0)}function vi(G,h,y,b){var _,M,R,j,B,te,q,N=y.length;if(!y.every(function(X){return typeof X=="string"}))return En(G,Hn);function W(X){_=X==="next"?function(oe){return oe.toUpperCase()}:function(oe){return oe.toLowerCase()},M=X==="next"?function(oe){return oe.toLowerCase()}:function(oe){return oe.toUpperCase()},R=X==="next"?JS:QS;var K=y.map(function(oe){return{lower:M(oe),upper:_(oe)}}).sort(function(oe,ne){return R(oe.lower,ne.lower)});j=K.map(function(oe){return oe.upper}),B=K.map(function(oe){return oe.lower}),q=(te=X)==="next"?"":b}W("next");var G=new G.Collection(G,function(){return Er(j[0],B[N-1]+b)}),H=(G._ondirectionchange=function(X){W(X)},0);return G._addAlgorithm(function(X,K,oe){var ne=X.key;if(typeof ne=="string"){var ce=M(ne);if(h(ce,B,H))return!0;for(var ge=null,be=H;be<N;++be){var Pe=((_e,$e,Te,Le,ye,Qe)=>{for(var Ze=Math.min(_e.length,Le.length),nt=-1,ut=0;ut<Ze;++ut){var Mn=$e[ut];if(Mn!==Le[ut])return ye(_e[ut],Te[ut])<0?_e.substr(0,ut)+Te[ut]+Te.substr(ut+1):ye(_e[ut],Le[ut])<0?_e.substr(0,ut)+Le[ut]+Te.substr(ut+1):0<=nt?_e.substr(0,nt)+$e[nt]+Te.substr(nt+1):null;ye(_e[ut],Mn)<0&&(nt=ut)}return Ze<Le.length&&Qe==="next"?_e+Te.substr(_e.length):Ze<_e.length&&Qe==="prev"?_e.substr(0,Te.length):nt<0?null:_e.substr(0,nt)+Le[nt]+Te.substr(nt+1)})(ne,ce,j[be],B[be],R,te);Pe===null&&ge===null?H=be+1:(ge===null||0<R(ge,Pe))&&(ge=Pe)}K(ge!==null?function(){X.continue(ge+q)}:oe)}return!1}),G}function Er(u,h,y,b){return{type:2,lower:u,upper:h,lowerOpen:y,upperOpen:b}}function Lf(u){return{type:1,lower:u,upper:u}}Object.defineProperty(rn.prototype,"Collection",{get:function(){return this._ctx.table.db.Collection},enumerable:!1,configurable:!0}),rn.prototype.between=function(u,h,y,b){y=y!==!1,b=b===!0;try{return 0<this._cmp(u,h)||this._cmp(u,h)===0&&(y||b)&&(!y||!b)?As(this):new this.Collection(this,function(){return Er(u,h,!y,!b)})}catch{return En(this,on)}},rn.prototype.equals=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Lf(u)})},rn.prototype.above=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Er(u,void 0,!0)})},rn.prototype.aboveOrEqual=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Er(u,void 0,!1)})},rn.prototype.below=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Er(void 0,u,!1,!0)})},rn.prototype.belowOrEqual=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Er(void 0,u)})},rn.prototype.startsWith=function(u){return typeof u!="string"?En(this,Hn):this.between(u,u+$t,!0,!0)},rn.prototype.startsWithIgnoreCase=function(u){return u===""?this.startsWith(u):vi(this,function(h,y){return h.indexOf(y[0])===0},[u],$t)},rn.prototype.equalsIgnoreCase=function(u){return vi(this,function(h,y){return h===y[0]},[u],"")},rn.prototype.anyOfIgnoreCase=function(){var u=V.apply(me,arguments);return u.length===0?As(this):vi(this,function(h,y){return y.indexOf(h)!==-1},u,"")},rn.prototype.startsWithAnyOfIgnoreCase=function(){var u=V.apply(me,arguments);return u.length===0?As(this):vi(this,function(h,y){return y.some(function(b){return h.indexOf(b)===0})},u,$t)},rn.prototype.anyOf=function(){var u,h,y=this,b=V.apply(me,arguments),_=this._cmp;try{b.sort(_)}catch{return En(this,on)}return b.length===0?As(this):((u=new this.Collection(this,function(){return Er(b[0],b[b.length-1])}))._ondirectionchange=function(M){_=M==="next"?y._ascending:y._descending,b.sort(_)},h=0,u._addAlgorithm(function(M,R,j){for(var B=M.key;0<_(B,b[h]);)if(++h===b.length)return R(j),!1;return _(B,b[h])===0||(R(function(){M.continue(b[h])}),!1)}),u)},rn.prototype.notEqual=function(u){return this.inAnyRange([[-1/0,u],[u,this.db._maxKey]],{includeLowers:!1,includeUppers:!1})},rn.prototype.noneOf=function(){var u=V.apply(me,arguments);if(u.length===0)return new this.Collection(this);try{u.sort(this._ascending)}catch{return En(this,on)}var h=u.reduce(function(y,b){return y?y.concat([[y[y.length-1][1],b]]):[[-1/0,b]]},null);return h.push([u[u.length-1],this.db._maxKey]),this.inAnyRange(h,{includeLowers:!1,includeUppers:!1})},rn.prototype.inAnyRange=function(u,oe){var y=this,b=this._cmp,_=this._ascending,M=this._descending,R=this._min,j=this._max;if(u.length===0)return As(this);if(!u.every(function(ne){return ne[0]!==void 0&&ne[1]!==void 0&&_(ne[0],ne[1])<=0}))return En(this,"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower",L.InvalidArgument);var B=!oe||oe.includeLowers!==!1,te=oe&&oe.includeUppers===!0,q,N=_;function W(ne,ce){return N(ne[0],ce[0])}try{(q=u.reduce(function(ne,ce){for(var ge=0,be=ne.length;ge<be;++ge){var Pe=ne[ge];if(b(ce[0],Pe[1])<0&&0<b(ce[1],Pe[0])){Pe[0]=R(Pe[0],ce[0]),Pe[1]=j(Pe[1],ce[1]);break}}return ge===be&&ne.push(ce),ne},[])).sort(W)}catch{return En(this,on)}var G=0,H=te?function(ne){return 0<_(ne,q[G][1])}:function(ne){return 0<=_(ne,q[G][1])},X=B?function(ne){return 0<M(ne,q[G][0])}:function(ne){return 0<=M(ne,q[G][0])},K=H,oe=new this.Collection(this,function(){return Er(q[0][0],q[q.length-1][1],!B,!te)});return oe._ondirectionchange=function(ne){N=ne==="next"?(K=H,_):(K=X,M),q.sort(W)},oe._addAlgorithm(function(ne,ce,ge){for(var be,Pe=ne.key;K(Pe);)if(++G===q.length)return ce(ge),!1;return!H(be=Pe)&&!X(be)||(y._cmp(Pe,q[G][1])===0||y._cmp(Pe,q[G][0])===0||ce(function(){N===_?ne.continue(q[G][0]):ne.continue(q[G][1])}),!1)}),oe},rn.prototype.startsWithAnyOf=function(){var u=V.apply(me,arguments);return u.every(function(h){return typeof h=="string"})?u.length===0?As(this):this.inAnyRange(u.map(function(h){return[h,h+$t]})):En(this,"startsWithAnyOf() only works with strings")};var Df=rn;function rn(){}function Xn(u){return Ce(function(h){return So(h),u(h.target.error),!1})}function So(u){u.stopPropagation&&u.stopPropagation(),u.preventDefault&&u.preventDefault()}var wo="storagemutated",ac="x-storagemutated-1",Mr=vo(null,wo),ZS=(or.prototype._lock=function(){return T(!Oe.global),++this._reculock,this._reculock!==1||Oe.global||(Oe.lockOwnerFor=this),this},or.prototype._unlock=function(){if(T(!Oe.global),--this._reculock==0)for(Oe.global||(Oe.lockOwnerFor=null);0<this._blockedFuncs.length&&!this._locked();){var u=this._blockedFuncs.shift();try{xe(u[1],u[0])}catch{}}return this},or.prototype._locked=function(){return this._reculock&&Oe.lockOwnerFor!==this},or.prototype.create=function(u){var h=this;if(this.mode){var y=this.db.idbdb,b=this.db._state.dbOpenError;if(T(!this.idbtrans),!u&&!y)switch(b&&b.name){case"DatabaseClosedError":throw new L.DatabaseClosed(b);case"MissingAPIError":throw new L.MissingAPI(b.message,b);default:throw new L.OpenFailed(b)}if(!this.active)throw new L.TransactionInactive;T(this._completion._state===null),(u=this.idbtrans=u||(this.db.core||y).transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability})).onerror=Ce(function(_){So(_),h._reject(u.error)}),u.onabort=Ce(function(_){So(_),h.active&&h._reject(new L.Abort(u.error)),h.active=!1,h.on("abort").fire(_)}),u.oncomplete=Ce(function(){h.active=!1,h._resolve(),"mutatedParts"in u&&Mr.storagemutated.fire(u.mutatedParts)})}return this},or.prototype._promise=function(u,h,y){var b,_=this;return u==="readwrite"&&this.mode!=="readwrite"?ft(new L.ReadOnly("Transaction is readonly")):this.active?this._locked()?new Re(function(M,R){_._blockedFuncs.push([function(){_._promise(u,h,y).then(M,R)},Oe])}):y?rr(function(){var M=new Re(function(R,j){_._lock();var B=h(R,j,_);B&&B.then&&B.then(R,j)});return M.finally(function(){return _._unlock()}),M._lib=!0,M}):((b=new Re(function(M,R){var j=h(M,R,_);j&&j.then&&j.then(M,R)}))._lib=!0,b):ft(new L.TransactionInactive)},or.prototype._root=function(){return this.parent?this.parent._root():this},or.prototype.waitFor=function(u){var h,y=this._root(),b=Re.resolve(u),_=(y._waitingFor?y._waitingFor=y._waitingFor.then(function(){return b}):(y._waitingFor=b,y._waitingQueue=[],h=y.idbtrans.objectStore(y.storeNames[0]),function M(){for(++y._spinCount;y._waitingQueue.length;)y._waitingQueue.shift()();y._waitingFor&&(h.get(-1/0).onsuccess=M)}()),y._waitingFor);return new Re(function(M,R){b.then(function(j){return y._waitingQueue.push(Ce(M.bind(null,j)))},function(j){return y._waitingQueue.push(Ce(R.bind(null,j)))}).finally(function(){y._waitingFor===_&&(y._waitingFor=null)})})},or.prototype.abort=function(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new L.Abort))},or.prototype.table=function(u){var h=this._memoizedTables||(this._memoizedTables={});if(p(h,u))return h[u];var y=this.schema[u];if(y)return(y=new this.db.Table(u,y,this)).core=this.db.core.table(u),h[u]=y;throw new L.NotFound("Table "+u+" not part of transaction")},or);function or(){}function ic(u,h,y,b,_,M,R,j){return{name:u,keyPath:h,unique:y,multi:b,auto:_,compound:M,src:(y&&!R?"&":"")+(b?"*":"")+(_?"++":"")+Ff(h),type:j}}function Ff(u){return typeof u=="string"?u:u?"["+[].join.call(u,"+")+"]":""}function lc(u,h,y){return{name:u,primKey:h,indexes:y,mappedClass:null,idxByName:(b=function(_){return[_.name,_]},y.reduce(function(_,M,R){return M=b(M,R),M&&(_[M[0]]=M[1]),_},{}))};var b}var xo=function(u){try{return u.only([[]]),xo=function(){return[[]]},[[]]}catch{return xo=function(){return $t},$t}};function cc(u){return u==null?function(){}:typeof u=="string"?(h=u).split(".").length===1?function(y){return y[h]}:function(y){return A(y,h)}:function(y){return A(y,u)};var h}function Nf(u){return[].slice.call(u)}var ew=0;function _o(u){return u==null?":id":typeof u=="string"?u:"[".concat(u.join("+"),"]")}function tw(u,h,R){function b(K){if(K.type===3)return null;if(K.type===4)throw new Error("Cannot convert never type to IDBKeyRange");var G=K.lower,H=K.upper,X=K.lowerOpen,K=K.upperOpen;return G===void 0?H===void 0?null:h.upperBound(H,!!K):H===void 0?h.lowerBound(G,!!X):h.bound(G,H,!!X,!!K)}function _(W){var G,H,X=W.name;return{name:X,schema:W,mutate:function(K){var oe=K.trans,ne=K.type,ce=K.keys,ge=K.values,be=K.range;return new Promise(function(Pe,_e){Pe=Ce(Pe);var $e=oe.objectStore(X),Te=$e.keyPath==null,Le=ne==="put"||ne==="add";if(!Le&&ne!=="delete"&&ne!=="deleteRange")throw new Error("Invalid operation type: "+ne);var ye,Qe=(ce||ge||{length:1}).length;if(ce&&ge&&ce.length!==ge.length)throw new Error("Given keys array must have same length as given values array.");if(Qe===0)return Pe({numFailures:0,failures:{},results:[],lastResult:void 0});function Ze(Sn){++Mn,So(Sn)}var nt=[],ut=[],Mn=0;if(ne==="deleteRange"){if(be.type===4)return Pe({numFailures:Mn,failures:ut,results:[],lastResult:void 0});be.type===3?nt.push(ye=$e.clear()):nt.push(ye=$e.delete(b(be)))}else{var Te=Le?Te?[ge,ce]:[ge,null]:[ce,null],tt=Te[0],pn=Te[1];if(Le)for(var mn=0;mn<Qe;++mn)nt.push(ye=pn&&pn[mn]!==void 0?$e[ne](tt[mn],pn[mn]):$e[ne](tt[mn])),ye.onerror=Ze;else for(mn=0;mn<Qe;++mn)nt.push(ye=$e[ne](tt[mn])),ye.onerror=Ze}function Ri(Sn){Sn=Sn.target.result,nt.forEach(function(Zr,Pc){return Zr.error!=null&&(ut[Pc]=Zr.error)}),Pe({numFailures:Mn,failures:ut,results:ne==="delete"?ce:nt.map(function(Zr){return Zr.result}),lastResult:Sn})}ye.onerror=function(Sn){Ze(Sn),Ri(Sn)},ye.onsuccess=Ri})},getMany:function(K){var oe=K.trans,ne=K.keys;return new Promise(function(ce,ge){ce=Ce(ce);for(var be,Pe=oe.objectStore(X),_e=ne.length,$e=new Array(_e),Te=0,Le=0,ye=function(nt){nt=nt.target,$e[nt._pos]=nt.result,++Le===Te&&ce($e)},Qe=Xn(ge),Ze=0;Ze<_e;++Ze)ne[Ze]!=null&&((be=Pe.get(ne[Ze]))._pos=Ze,be.onsuccess=ye,be.onerror=Qe,++Te);Te===0&&ce($e)})},get:function(K){var oe=K.trans,ne=K.key;return new Promise(function(ce,ge){ce=Ce(ce);var be=oe.objectStore(X).get(ne);be.onsuccess=function(Pe){return ce(Pe.target.result)},be.onerror=Xn(ge)})},query:(G=B,H=te,function(K){return new Promise(function(oe,ne){oe=Ce(oe);var ce,ge,be,Pe,Qe=K.trans,_e=K.values,$e=K.limit,ye=K.query,Te=(Te=K.direction)!=null?Te:"next",Le=$e===1/0?void 0:$e,Ze=ye.index,ye=ye.range,Qe=Qe.objectStore(X),Qe=Ze.isPrimaryKey?Qe:Qe.index(Ze.name),Ze=b(ye);if($e===0)return oe({result:[]});H?(ye={query:Ze,count:Le,direction:Te},(ce=_e?Qe.getAll(ye):Qe.getAllKeys(ye)).onsuccess=function(nt){return oe({result:nt.target.result})},ce.onerror=Xn(ne)):G&&Te==="next"?((ce=_e?Qe.getAll(Ze,Le):Qe.getAllKeys(Ze,Le)).onsuccess=function(nt){return oe({result:nt.target.result})},ce.onerror=Xn(ne)):(ge=0,be=!_e&&"openKeyCursor"in Qe?Qe.openKeyCursor(Ze,Te):Qe.openCursor(Ze,Te),Pe=[],be.onsuccess=function(){var nt=be.result;return!nt||(Pe.push(_e?nt.value:nt.primaryKey),++ge===$e)?oe({result:Pe}):void nt.continue()},be.onerror=Xn(ne))})}),openCursor:function(K){var oe=K.trans,ne=K.values,ce=K.query,ge=K.reverse,be=K.unique;return new Promise(function(Pe,_e){Pe=Ce(Pe);var Le=ce.index,$e=ce.range,Te=oe.objectStore(X),Te=Le.isPrimaryKey?Te:Te.index(Le.name),Le=ge?be?"prevunique":"prev":be?"nextunique":"next",ye=!ne&&"openKeyCursor"in Te?Te.openKeyCursor(b($e),Le):Te.openCursor(b($e),Le);ye.onerror=Xn(_e),ye.onsuccess=Ce(function(Qe){var Ze,nt,ut,Mn,tt=ye.result;tt?(tt.___id=++ew,tt.done=!1,Ze=tt.continue.bind(tt),nt=(nt=tt.continuePrimaryKey)&&nt.bind(tt),ut=tt.advance.bind(tt),Mn=function(){throw new Error("Cursor not stopped")},tt.trans=oe,tt.stop=tt.continue=tt.continuePrimaryKey=tt.advance=function(){throw new Error("Cursor not started")},tt.fail=Ce(_e),tt.next=function(){var pn=this,mn=1;return this.start(function(){return mn--?pn.continue():pn.stop()}).then(function(){return pn})},tt.start=function(pn){function mn(){if(ye.result)try{pn()}catch(Sn){tt.fail(Sn)}else tt.done=!0,tt.start=function(){throw new Error("Cursor behind last entry")},tt.stop()}var Ri=new Promise(function(Sn,Zr){Sn=Ce(Sn),ye.onerror=Xn(Zr),tt.fail=Zr,tt.stop=function(Pc){tt.stop=tt.continue=tt.continuePrimaryKey=tt.advance=Mn,Sn(Pc)}});return ye.onsuccess=Ce(function(Sn){ye.onsuccess=mn,mn()}),tt.continue=Ze,tt.continuePrimaryKey=nt,tt.advance=ut,mn(),Ri},Pe(tt)):Pe(null)},_e)})},count:function(K){var oe=K.query,ne=K.trans,ce=oe.index,ge=oe.range;return new Promise(function(be,Pe){var _e=ne.objectStore(X),_e=ce.isPrimaryKey?_e:_e.index(ce.name),$e=b(ge),$e=$e?_e.count($e):_e.count();$e.onsuccess=Ce(function(Te){return be(Te.target.result)}),$e.onerror=Xn(Pe)})}}}M=R,j=Nf((R=u).objectStoreNames),q=0<j.length?M.objectStore(j[0]):{};var M,R={schema:{name:R.name,tables:j.map(function(W){return M.objectStore(W)}).map(function(W){var G=W.keyPath,H=W.autoIncrement,K=i(G),X={},K={name:W.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:G==null,compound:K,keyPath:G,autoIncrement:H,unique:!0,extractKey:cc(G)},indexes:Nf(W.indexNames).map(function(oe){return W.index(oe)}).map(function(ge){var be=ge.name,ne=ge.unique,ce=ge.multiEntry,ge=ge.keyPath,be={name:be,compound:i(ge),keyPath:ge,unique:ne,multiEntry:ce,extractKey:cc(ge)};return X[_o(ge)]=be}),getIndexByKeyPath:function(oe){return X[_o(oe)]}};return X[":id"]=K.primaryKey,G!=null&&(X[_o(G)]=K.primaryKey),K})},hasGetAll:0<j.length&&"getAll"in q&&!(typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604),hasIdb3Features:"getAllRecords"in q},j=R.schema,B=R.hasGetAll,te=R.hasIdb3Features,q=j.tables.map(_),N={};return q.forEach(function(W){return N[W.name]=W}),{stack:"dbcore",transaction:u.transaction.bind(u),table:function(W){if(N[W])return N[W];throw new Error("Table '".concat(W,"' not found"))},MIN_KEY:-1/0,MAX_KEY:xo(h),schema:j}}function nw(u,h,y,b){return y=y.IDBKeyRange,h=tw(h,y,b),{dbcore:u.dbcore.reduce(function(_,M){return M=M.create,r(r({},_),M(_))},h)}}function bi(u,h){var y=h.db,y=nw(u._middlewares,y,u._deps,h);u.core=y.dbcore,u.tables.forEach(function(b){var _=b.name;u.core.schema.tables.some(function(M){return M.name===_})&&(b.core=u.core.table(_),u[_]instanceof u.Table)&&(u[_].core=b.core)})}function Si(u,h,y,b){y.forEach(function(_){var M=b[_];h.forEach(function(R){var j=function B(te,q){return x(te,q)||(te=d(te))&&B(te,q)}(R,_);(!j||"value"in j&&j.value===void 0)&&(R===u.Transaction.prototype||R instanceof u.Transaction?w(R,_,{get:function(){return this.table(_)},set:function(B){g(this,_,{value:B,writable:!0,configurable:!0,enumerable:!0})}}):R[_]=new u.Table(_,M))})})}function uc(u,h){h.forEach(function(y){for(var b in y)y[b]instanceof u.Table&&delete y[b]})}function rw(u,h){return u._cfg.version-h._cfg.version}function sw(u,h,y,b){var _=u._dbSchema,M=(y.objectStoreNames.contains("$meta")&&!_.$meta&&(_.$meta=lc("$meta",Bf("")[0],[]),u._storeNames.push("$meta")),u._createTransaction("readwrite",u._storeNames,_)),R=(M.create(y),M._completion.catch(b),M._reject.bind(M)),j=Oe.transless||Oe;rr(function(){if(Oe.trans=M,Oe.transless=j,h!==0)return bi(u,y),te=h,((B=M).storeNames.includes("$meta")?B.table("$meta").get("version").then(function(q){return q??te}):Re.resolve(te)).then(function(K){var N=u,W=K,G=M,H=y,X=[],K=N._versions,oe=N._dbSchema=xi(0,N.idbdb,H);return(K=K.filter(function(ne){return ne._cfg.version>=W})).length===0?Re.resolve():(K.forEach(function(ne){X.push(function(){var ce,ge,be,Pe=oe,_e=ne._cfg.dbschema,$e=(_i(N,Pe,H),_i(N,_e,H),oe=N._dbSchema=_e,dc(Pe,_e)),Te=($e.add.forEach(function(Le){fc(H,Le[0],Le[1].primKey,Le[1].indexes)}),$e.change.forEach(function(Le){if(Le.recreate)throw new L.Upgrade("Not yet support for changing primary key");var ye=H.objectStore(Le.name);Le.add.forEach(function(Qe){return wi(ye,Qe)}),Le.change.forEach(function(Qe){ye.deleteIndex(Qe.name),wi(ye,Qe)}),Le.del.forEach(function(Qe){return ye.deleteIndex(Qe)})}),ne._cfg.contentUpgrade);if(Te&&ne._cfg.version>W)return bi(N,H),G._memoizedTables={},ce=$(_e),$e.del.forEach(function(Le){ce[Le]=Pe[Le]}),uc(N,[N.Transaction.prototype]),Si(N,[N.Transaction.prototype],a(ce),ce),G.schema=ce,(ge=ae(Te))&&yr(),_e=Re.follow(function(){var Le;(be=Te(G))&&ge&&(Le=Un.bind(null,null),be.then(Le,Le))}),be&&typeof be.then=="function"?Re.resolve(be):_e.then(function(){return be})}),X.push(function(ce){var ge,be,Pe=ne._cfg.dbschema;ge=Pe,be=ce,[].slice.call(be.db.objectStoreNames).forEach(function(_e){return ge[_e]==null&&be.db.deleteObjectStore(_e)}),uc(N,[N.Transaction.prototype]),Si(N,[N.Transaction.prototype],N._storeNames,N._dbSchema),G.schema=N._dbSchema}),X.push(function(ce){N.idbdb.objectStoreNames.contains("$meta")&&(Math.ceil(N.idbdb.version/10)===ne._cfg.version?(N.idbdb.deleteObjectStore("$meta"),delete N._dbSchema.$meta,N._storeNames=N._storeNames.filter(function(ge){return ge!=="$meta"})):ce.objectStore("$meta").put(ne._cfg.version,"version"))})}),function ne(){return X.length?Re.resolve(X.shift()(G.idbtrans)).then(ne):Re.resolve()}().then(function(){zf(oe,H)}))}).catch(R);var B,te;a(_).forEach(function(q){fc(y,q,_[q].primKey,_[q].indexes)}),bi(u,y),Re.follow(function(){return u.on.populate.fire(M)}).catch(R)})}function ow(u,h){zf(u._dbSchema,h),h.db.version%10!=0||h.objectStoreNames.contains("$meta")||h.db.createObjectStore("$meta").add(Math.ceil(h.db.version/10-1),"version");var y=xi(0,u.idbdb,h);_i(u,u._dbSchema,h);for(var b=0,_=dc(y,u._dbSchema).change;b<_.length;b++){var M=(R=>{if(R.change.length||R.recreate)return console.warn("Unable to patch indexes of table ".concat(R.name," because it has changes on the type of index or primary key.")),{value:void 0};var j=h.objectStore(R.name);R.add.forEach(function(B){Fe&&console.debug("Dexie upgrade patch: Creating missing index ".concat(R.name,".").concat(B.src)),wi(j,B)})})(_[b]);if(typeof M=="object")return M.value}}function dc(u,h){var y,b={del:[],add:[],change:[]};for(y in u)h[y]||b.del.push(y);for(y in h){var _=u[y],M=h[y];if(_){var R={name:y,def:M,recreate:!1,del:[],add:[],change:[]};if(""+(_.primKey.keyPath||"")!=""+(M.primKey.keyPath||"")||_.primKey.auto!==M.primKey.auto)R.recreate=!0,b.change.push(R);else{var j=_.idxByName,B=M.idxByName,te=void 0;for(te in j)B[te]||R.del.push(te);for(te in B){var q=j[te],N=B[te];q?q.src!==N.src&&R.change.push(N):R.add.push(N)}(0<R.del.length||0<R.add.length||0<R.change.length)&&b.change.push(R)}}else b.add.push([y,M])}return b}function fc(u,h,y,b){var _=u.db.createObjectStore(h,y.keyPath?{keyPath:y.keyPath,autoIncrement:y.auto}:{autoIncrement:y.auto});b.forEach(function(M){return wi(_,M)})}function zf(u,h){a(u).forEach(function(y){h.db.objectStoreNames.contains(y)||(Fe&&console.debug("Dexie: Creating missing table",y),fc(h,y,u[y].primKey,u[y].indexes))})}function wi(u,h){u.createIndex(h.name,h.keyPath,{unique:h.unique,multiEntry:h.multi})}function xi(u,h,y){var b={};return C(h.objectStoreNames,0).forEach(function(_){for(var M=y.objectStore(_),R=ic(Ff(te=M.keyPath),te||"",!0,!1,!!M.autoIncrement,te&&typeof te!="string",!0),j=[],B=0;B<M.indexNames.length;++B){var q=M.index(M.indexNames[B]),te=q.keyPath,q=ic(q.name,te,!!q.unique,!!q.multiEntry,!1,te&&typeof te!="string",!1);j.push(q)}b[_]=lc(_,R,j)}),b}function _i(u,h,y){for(var b=y.db.objectStoreNames,_=0;_<b.length;++_){var M=b[_],R=y.objectStore(M);u._hasGetAll="getAll"in R;for(var j=0;j<R.indexNames.length;++j){var B,te=R.indexNames[j],q=R.index(te).keyPath,q=typeof q=="string"?q:"["+C(q).join("+")+"]";h[M]&&(B=h[M].idxByName[q])&&(B.name=te,delete h[M].idxByName[q],h[M].idxByName[te]=B)}}typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&o.WorkerGlobalScope&&o instanceof o.WorkerGlobalScope&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604&&(u._hasGetAll=!1)}function Bf(u){return u.split(",").map(function(h,y){var _=h.split(":"),b=(b=_[1])==null?void 0:b.trim(),_=(h=_[0].trim()).replace(/([&*]|\+\+)/g,""),M=/^\[/.test(_)?_.match(/^\[(.*)\]$/)[1].split("+"):_;return ic(_,M||null,/\&/.test(h),/\*/.test(h),/\+\+/.test(h),i(M),y===0,b)})}js.prototype._createTableSchema=lc,js.prototype._parseIndexSyntax=Bf,js.prototype._parseStoresSpec=function(u,h){var y=this;a(u).forEach(function(b){if(u[b]!==null){var _=y._parseIndexSyntax(u[b]),M=_.shift();if(!M)throw new L.Schema("Invalid schema for table "+b+": "+u[b]);if(M.unique=!0,M.multi)throw new L.Schema("Primary key cannot be multiEntry*");_.forEach(function(R){if(R.auto)throw new L.Schema("Only primary key can be marked as autoIncrement (++)");if(!R.keyPath)throw new L.Schema("Index must have a name and cannot be an empty string")}),M=y._createTableSchema(b,M,_),h[b]=M}})},js.prototype.stores=function(y){var h=this.db,y=(this._cfg.storesSource=this._cfg.storesSource?c(this._cfg.storesSource,y):y,h._versions),b={},_={};return y.forEach(function(M){c(b,M._cfg.storesSource),_=M._cfg.dbschema={},M._parseStoresSpec(b,_)}),h._dbSchema=_,uc(h,[h._allTables,h,h.Transaction.prototype]),Si(h,[h._allTables,h,h.Transaction.prototype,this._cfg.tables],a(_),_),h._storeNames=a(_),this},js.prototype.upgrade=function(u){return this._cfg.contentUpgrade=xt(this._cfg.contentUpgrade||Se,u),this};var aw=js;function js(){}var Co=(()=>{var u,h,y;return typeof FinalizationRegistry<"u"&&typeof WeakRef<"u"?(u=new Set,h=new FinalizationRegistry(function(b){u.delete(b)}),{toArray:function(){return Array.from(u).map(function(b){return b.deref()}).filter(function(b){return b!==void 0})},add:function(b){var _=new WeakRef(b._novip);u.add(_),h.register(b._novip,_,_),u.size>b._options.maxConnections&&(_=u.values().next().value,u.delete(_),h.unregister(_))},remove:function(b){if(b)for(var _=u.values(),M=_.next();!M.done;){var R=M.value;if(R.deref()===b._novip)return u.delete(R),void h.unregister(R);M=_.next()}}}):(y=[],{toArray:function(){return y},add:function(b){y.push(b._novip)},remove:function(b){b&&(b=y.indexOf(b._novip))!==-1&&y.splice(b,1)}})})();function hc(u,h){var y=u._dbNamesDB;return y||(y=u._dbNamesDB=new vr(vn,{addons:[],indexedDB:u,IDBKeyRange:h})).version(1).stores({dbnames:"name"}),y.table("dbnames")}function pc(u){return u&&typeof u.databases=="function"}function mc(u){return rr(function(){return Oe.letThrough=!0,u()})}function gc(u){return!("from"in u)}var hn=function(u,h){var y;if(!this)return y=new hn,u&&"d"in u&&c(y,u),y;c(this,arguments.length?{d:1,from:u,to:1<arguments.length?h:u}:{d:0})};function ko(u,h,y){var b=dt(h,y);if(!isNaN(b)){if(0<b)throw RangeError();if(gc(u))return c(u,{from:h,to:y,d:1});var b=u.l,_=u.r;if(dt(y,u.from)<0)return b?ko(b,h,y):u.l={from:h,to:y,d:1,l:null,r:null},Uf(u);if(0<dt(h,u.to))return _?ko(_,h,y):u.r={from:h,to:y,d:1,l:null,r:null},Uf(u);dt(h,u.from)<0&&(u.from=h,u.l=null,u.d=_?_.d+1:1),0<dt(y,u.to)&&(u.to=y,u.r=null,u.d=u.l?u.l.d+1:1),h=!u.r,b&&!u.l&&To(u,b),_&&h&&To(u,_)}}function To(u,h){gc(h)||function y(b,_){var M=_.from,R=_.l,j=_.r;ko(b,M,_.to),R&&y(b,R),j&&y(b,j)}(u,h)}function Wf(u,h){var y=Ci(h),b=y.next();if(!b.done)for(var _=b.value,M=Ci(u),R=M.next(_.from),j=R.value;!b.done&&!R.done;){if(dt(j.from,_.to)<=0&&0<=dt(j.to,_.from))return!0;dt(_.from,j.from)<0?_=(b=y.next(j.from)).value:j=(R=M.next(_.from)).value}return!1}function Ci(u){var h=gc(u)?null:{s:0,n:u};return{next:function(y){for(var b=0<arguments.length;h;)switch(h.s){case 0:if(h.s=1,b)for(;h.n.l&&dt(y,h.n.from)<0;)h={up:h,n:h.n.l,s:1};else for(;h.n.l;)h={up:h,n:h.n.l,s:1};case 1:if(h.s=2,!b||dt(y,h.n.to)<=0)return{value:h.n,done:!1};case 2:if(h.n.r){h.s=3,h={up:h,n:h.n.r,s:0};continue}case 3:h=h.up}return{done:!0}}}}function Uf(u){var h,y,b,_=(((_=u.r)==null?void 0:_.d)||0)-(((_=u.l)==null?void 0:_.d)||0),_=1<_?"r":_<-1?"l":"";_&&(h=_=="r"?"l":"r",y=r({},u),b=u[_],u.from=b.from,u.to=b.to,u[_]=b[_],y[_]=b[h],(u[h]=y).d=qf(y)),u.d=qf(u)}function qf(y){var h=y.r,y=y.l;return(h?y?Math.max(h.d,y.d):h.d:y?y.d:0)+1}function ki(u,h){return a(h).forEach(function(y){u[y]?To(u[y],h[y]):u[y]=function b(_){var M,R,j={};for(M in _)p(_,M)&&(R=_[M],j[M]=!R||typeof R!="object"||ee.has(R.constructor)?R:b(R));return j}(h[y])}),u}function yc(u,h){return u.all||h.all||Object.keys(u).some(function(y){return h[y]&&Wf(h[y],u[y])})}v(hn.prototype,((Tt={add:function(u){return To(this,u),this},addKey:function(u){return ko(this,u,u),this},addKeys:function(u){var h=this;return u.forEach(function(y){return ko(h,y,y)}),this},hasKey:function(u){var h=Ci(this).next(u).value;return h&&dt(h.from,u)<=0&&0<=dt(h.to,u)}})[ie]=function(){return Ci(this)},Tt));var Jr={},vc={},bc=!1;function Ti(u){ki(vc,u),bc||(bc=!0,setTimeout(function(){bc=!1,Sc(vc,!(vc={}))},0))}function Sc(u,h){h===void 0&&(h=!1);var y=new Set;if(u.all)for(var b=0,_=Object.values(Jr);b<_.length;b++)Hf(j=_[b],u,y,h);else for(var M in u){var R,j,M=/^idb\:\/\/(.*)\/(.*)\//.exec(M);M&&(R=M[1],M=M[2],j=Jr["idb://".concat(R,"/").concat(M)])&&Hf(j,u,y,h)}y.forEach(function(B){return B()})}function Hf(u,h,y,b){for(var _=[],M=0,R=Object.entries(u.queries.query);M<R.length;M++){for(var j=R[M],B=j[0],te=[],q=0,N=j[1];q<N.length;q++){var W=N[q];yc(h,W.obsSet)?W.subscribers.forEach(function(K){return y.add(K)}):b&&te.push(W)}b&&_.push([B,te])}if(b)for(var G=0,H=_;G<H.length;G++){var X=H[G],B=X[0],te=X[1];u.queries.query[B]=te}}function iw(u){var h=u._state,y=u._deps.indexedDB;if(h.isBeingOpened||u.idbdb)return h.dbReadyPromise.then(function(){return h.dbOpenError?ft(h.dbOpenError):u});h.isBeingOpened=!0,h.dbOpenError=null,h.openComplete=!1;var b=h.openCanceller,_=Math.round(10*u.verno),M=!1;function R(){if(h.openCanceller!==b)throw new L.DatabaseClosed("db.open() was cancelled")}function j(){return new Re(function(W,G){if(R(),!y)throw new L.MissingAPI;var H=u.name,X=h.autoSchema||!_?y.open(H):y.open(H,_);if(!X)throw new L.MissingAPI;X.onerror=Xn(G),X.onblocked=Ce(u._fireOnBlocked),X.onupgradeneeded=Ce(function(K){var oe;q=X.transaction,h.autoSchema&&!u._options.allowEmptyDB?(X.onerror=So,q.abort(),X.result.close(),(oe=y.deleteDatabase(H)).onsuccess=oe.onerror=Ce(function(){G(new L.NoSuchDatabase("Database ".concat(H," doesnt exist")))})):(q.onerror=Xn(G),oe=K.oldVersion>Math.pow(2,62)?0:K.oldVersion,N=oe<1,u.idbdb=X.result,M&&ow(u,q),sw(u,oe/10,q,G))},G),X.onsuccess=Ce(function(){q=null;var K,oe,ne,ce,ge,be,Pe=u.idbdb=X.result,_e=C(Pe.objectStoreNames);if(0<_e.length)try{var $e=Pe.transaction((ge=_e).length===1?ge[0]:ge,"readonly");if(h.autoSchema)be=Pe,ce=$e,(ne=u).verno=be.version/10,ce=ne._dbSchema=xi(0,be,ce),ne._storeNames=C(be.objectStoreNames,0),Si(ne,[ne._allTables],a(ce),ce);else if(_i(u,u._dbSchema,$e),oe=$e,((oe=dc(xi(0,(K=u).idbdb,oe),K._dbSchema)).add.length||oe.change.some(function(Te){return Te.add.length||Te.change.length}))&&!M)return console.warn("Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Dexie will add missing parts and increment native version number to workaround this."),Pe.close(),_=Pe.version+1,M=!0,W(j());bi(u,$e)}catch{}Co.add(u),Pe.onversionchange=Ce(function(Te){h.vcFired=!0,u.on("versionchange").fire(Te)}),Pe.onclose=Ce(function(){u.close({disableAutoOpen:!1})}),N&&(_e=u._deps,ge=H,pc(be=_e.indexedDB)||ge===vn||hc(be,_e.IDBKeyRange).put({name:ge}).catch(Se)),W()},G)}).catch(function(W){switch(W==null?void 0:W.name){case"UnknownError":if(0<h.PR1398_maxLoop)return h.PR1398_maxLoop--,console.warn("Dexie: Workaround for Chrome UnknownError on open()"),j();break;case"VersionError":if(0<_)return _=0,j()}return Re.reject(W)})}var B,te=h.dbReadyResolve,q=null,N=!1;return Re.race([b,(typeof navigator>"u"?Re.resolve():!navigator.userAgentData&&/Safari\//.test(navigator.userAgent)&&!/Chrom(e|ium)\//.test(navigator.userAgent)&&indexedDB.databases?new Promise(function(W){function G(){return indexedDB.databases().finally(W)}B=setInterval(G,100),G()}).finally(function(){return clearInterval(B)}):Promise.resolve()).then(j)]).then(function(){return R(),h.onReadyBeingFired=[],Re.resolve(mc(function(){return u.on.ready.fire(u.vip)})).then(function W(){var G;if(0<h.onReadyBeingFired.length)return G=h.onReadyBeingFired.reduce(xt,Se),h.onReadyBeingFired=[],Re.resolve(mc(function(){return G(u.vip)})).then(W)})}).finally(function(){h.openCanceller===b&&(h.onReadyBeingFired=null,h.isBeingOpened=!1)}).catch(function(W){h.dbOpenError=W;try{q&&q.abort()}catch{}return b===h.openCanceller&&u._close(),ft(W)}).finally(function(){h.openComplete=!0,te()}).then(function(){var W;return N&&(W={},u.tables.forEach(function(G){G.schema.indexes.forEach(function(H){H.name&&(W["idb://".concat(u.name,"/").concat(G.name,"/").concat(H.name)]=new hn(-1/0,[[[]]]))}),W["idb://".concat(u.name,"/").concat(G.name,"/")]=W["idb://".concat(u.name,"/").concat(G.name,"/:dels")]=new hn(-1/0,[[[]]])}),Mr(wo).fire(W),Sc(W,!0)),u})}function wc(u){function h(M){return u.next(M)}var y=_(h),b=_(function(M){return u.throw(M)});function _(M){return function(j){var j=M(j),B=j.value;return j.done?B:B&&typeof B.then=="function"?B.then(y,b):i(B)?Promise.all(B).then(y,b):y(B)}}return _(h)()}function Pi(u,h,y){for(var b=i(u)?u.slice():[u],_=0;_<y;++_)b.push(h);return b}var lw={stack:"dbcore",name:"VirtualIndexMiddleware",level:1,create:function(u){return r(r({},u),{table:function(b){var y=u.table(b),b=y.schema,_={},M=[];function R(W,G,H){var ne=_o(W),X=_[ne]=_[ne]||[],K=W==null?0:typeof W=="string"?1:W.length,oe=0<G,ne=r(r({},H),{name:oe?"".concat(ne,"(virtual-from:").concat(H.name,")"):H.name,lowLevelIndex:H,isVirtual:oe,keyTail:G,keyLength:K,extractKey:cc(W),unique:!oe&&H.unique});return X.push(ne),ne.isPrimaryKey||M.push(ne),1<K&&R(K===2?W[0]:W.slice(0,K-1),G+1,H),X.sort(function(ce,ge){return ce.keyTail-ge.keyTail}),ne}var j=R(b.primaryKey.keyPath,0,b.primaryKey);_[":id"]=[j];for(var B=0,te=b.indexes;B<te.length;B++){var q=te[B];R(q.keyPath,0,q)}function N(W){var G,H=W.query.index;return H.isVirtual?r(r({},W),{query:{index:H.lowLevelIndex,range:(G=W.query.range,H=H.keyTail,{type:G.type===1?2:G.type,lower:Pi(G.lower,G.lowerOpen?u.MAX_KEY:u.MIN_KEY,H),lowerOpen:!0,upper:Pi(G.upper,G.upperOpen?u.MIN_KEY:u.MAX_KEY,H),upperOpen:!0})}}):W}return r(r({},y),{schema:r(r({},b),{primaryKey:j,indexes:M,getIndexByKeyPath:function(W){return(W=_[_o(W)])&&W[0]}}),count:function(W){return y.count(N(W))},query:function(W){return y.query(N(W))},openCursor:function(W){var G=W.query.index,H=G.keyTail,X=G.keyLength;return G.isVirtual?y.openCursor(N(W)).then(function(oe){return oe&&K(oe)}):y.openCursor(W);function K(oe){return Object.create(oe,{continue:{value:function(ne){ne!=null?oe.continue(Pi(ne,W.reverse?u.MAX_KEY:u.MIN_KEY,H)):W.unique?oe.continue(oe.key.slice(0,X).concat(W.reverse?u.MIN_KEY:u.MAX_KEY,H)):oe.continue()}},continuePrimaryKey:{value:function(ne,ce){oe.continuePrimaryKey(Pi(ne,u.MAX_KEY,H),ce)}},primaryKey:{get:function(){return oe.primaryKey}},key:{get:function(){var ne=oe.key;return X===1?ne[0]:ne.slice(0,X)}},value:{get:function(){return oe.value}}})}}})}})}};function xc(u,h,y,b){return y=y||{},b=b||"",a(u).forEach(function(_){var M,R,j;p(h,_)?(M=u[_],R=h[_],typeof M=="object"&&typeof R=="object"&&M&&R?(j=D(M))!==D(R)?y[b+_]=h[_]:j==="Object"?xc(M,R,y,b+_+"."):M!==R&&(y[b+_]=h[_]):M!==R&&(y[b+_]=h[_])):y[b+_]=void 0}),a(h).forEach(function(_){p(u,_)||(y[b+_]=h[_])}),y}function _c(u,h){return h.type==="delete"?h.keys:h.keys||h.values.map(u.extractKey)}var cw={stack:"dbcore",name:"HooksMiddleware",level:2,create:function(u){return r(r({},u),{table:function(h){var y=u.table(h),b=y.schema.primaryKey;return r(r({},y),{mutate:function(_){var M=Oe.trans,R=M.table(h).hook,j=R.deleting,B=R.creating,te=R.updating;switch(_.type){case"add":if(B.fire===Se)break;return M._promise("readwrite",function(){return q(_)},!0);case"put":if(B.fire===Se&&te.fire===Se)break;return M._promise("readwrite",function(){return q(_)},!0);case"delete":if(j.fire===Se)break;return M._promise("readwrite",function(){return q(_)},!0);case"deleteRange":if(j.fire===Se)break;return M._promise("readwrite",function(){return function N(W,G,H){return y.query({trans:W,values:!1,query:{index:b,range:G},limit:H}).then(function(X){var K=X.result;return q({type:"delete",keys:K,trans:W}).then(function(oe){return 0<oe.numFailures?Promise.reject(oe.failures[0]):K.length<H?{failures:[],numFailures:0,lastResult:void 0}:N(W,r(r({},G),{lower:K[K.length-1],lowerOpen:!0}),H)})})}(_.trans,_.range,1e4)},!0)}return y.mutate(_);function q(N){var W,G,H,X=Oe.trans,K=N.keys||_c(b,N);if(K)return(N=N.type==="add"||N.type==="put"?r(r({},N),{keys:K}):r({},N)).type!=="delete"&&(N.values=s([],N.values)),N.keys&&(N.keys=s([],N.keys)),W=y,H=K,((G=N).type==="add"?Promise.resolve([]):W.getMany({trans:G.trans,keys:H,cache:"immutable"})).then(function(oe){var ne=K.map(function(ce,ge){var be,Pe,_e,$e=oe[ge],Te={onerror:null,onsuccess:null};return N.type==="delete"?j.fire.call(Te,ce,$e,X):N.type==="add"||$e===void 0?(be=B.fire.call(Te,ce,N.values[ge],X),ce==null&&be!=null&&(N.keys[ge]=ce=be,b.outbound||O(N.values[ge],b.keyPath,ce))):(be=xc($e,N.values[ge]),(Pe=te.fire.call(Te,be,ce,$e,X))&&(_e=N.values[ge],Object.keys(Pe).forEach(function(Le){p(_e,Le)?_e[Le]=Pe[Le]:O(_e,Le,Pe[Le])}))),Te});return y.mutate(N).then(function(ce){for(var ge=ce.failures,be=ce.results,Pe=ce.numFailures,ce=ce.lastResult,_e=0;_e<K.length;++_e){var $e=(be||K)[_e],Te=ne[_e];$e==null?Te.onerror&&Te.onerror(ge[_e]):Te.onsuccess&&Te.onsuccess(N.type==="put"&&oe[_e]?N.values[_e]:$e)}return{failures:ge,results:be,numFailures:Pe,lastResult:ce}}).catch(function(ce){return ne.forEach(function(ge){return ge.onerror&&ge.onerror(ce)}),Promise.reject(ce)})});throw new Error("Keys missing")}}})}})}};function Xf(u,h,y){try{if(!h||h.keys.length<u.length)return null;for(var b=[],_=0,M=0;_<h.keys.length&&M<u.length;++_)dt(h.keys[_],u[M])===0&&(b.push(y?Y(h.values[_]):h.values[_]),++M);return b.length===u.length?b:null}catch{return null}}var uw={stack:"dbcore",level:-1,create:function(u){return{table:function(h){var y=u.table(h);return r(r({},y),{getMany:function(b){var _;return b.cache?(_=Xf(b.keys,b.trans._cache,b.cache==="clone"))?Re.resolve(_):y.getMany(b).then(function(M){return b.trans._cache={keys:b.keys,values:b.cache==="clone"?Y(M):M},M}):y.getMany(b)},mutate:function(b){return b.type!=="add"&&(b.trans._cache=null),y.mutate(b)}})}}}};function Yf(u,h){return u.trans.mode==="readonly"&&!!u.subscr&&!u.trans.explicit&&u.trans.db._options.cache!=="disabled"&&!h.schema.primaryKey.outbound}function Kf(u,h){switch(u){case"query":return h.values&&!h.unique;case"get":case"getMany":case"count":case"openCursor":return!1}}var dw={stack:"dbcore",level:0,name:"Observability",create:function(u){var h=u.schema.name,y=new hn(u.MIN_KEY,u.MAX_KEY);return r(r({},u),{transaction:function(b,_,M){if(Oe.subscr&&_!=="readonly")throw new L.ReadOnly("Readwrite transaction in liveQuery context. Querier source: ".concat(Oe.querier));return u.transaction(b,_,M)},table:function(b){function _(K){var X,K=K.query;return[X=K.index,new hn((X=(K=K.range).lower)!=null?X:u.MIN_KEY,(X=K.upper)!=null?X:u.MAX_KEY)]}var M=u.table(b),R=M.schema,j=R.primaryKey,B=R.indexes,te=j.extractKey,q=j.outbound,N=j.autoIncrement&&B.filter(function(H){return H.compound&&H.keyPath.includes(j.keyPath)}),W=r(r({},M),{mutate:function(H){function X(ye){return ye="idb://".concat(h,"/").concat(b,"/").concat(ye),ge[ye]||(ge[ye]=new hn)}var K,oe,ne,ce=H.trans,ge=H.mutatedParts||(H.mutatedParts={}),be=X(""),Pe=X(":dels"),_e=H.type,Te=H.type==="deleteRange"?[H.range]:H.type==="delete"?[H.keys]:H.values.length<50?[_c(j,H).filter(function(ye){return ye}),H.values]:[],$e=Te[0],Te=Te[1],Le=H.trans._cache;return i($e)?(be.addKeys($e),(_e=_e==="delete"||$e.length===Te.length?Xf($e,Le):null)||Pe.addKeys($e),(_e||Te)&&(K=X,oe=_e,ne=Te,R.indexes.forEach(function(ye){var Qe=K(ye.name||"");function Ze(ut){return ut!=null?ye.extractKey(ut):null}function nt(ut){ye.multiEntry&&i(ut)?ut.forEach(function(Mn){return Qe.addKey(Mn)}):Qe.addKey(ut)}(oe||ne).forEach(function(ut,pn){var tt=oe&&Ze(oe[pn]),pn=ne&&Ze(ne[pn]);dt(tt,pn)!==0&&(tt!=null&&nt(tt),pn!=null)&&nt(pn)})}))):$e?(Te={from:(Le=$e.lower)!=null?Le:u.MIN_KEY,to:(_e=$e.upper)!=null?_e:u.MAX_KEY},Pe.add(Te),be.add(Te)):(be.add(y),Pe.add(y),R.indexes.forEach(function(ye){return X(ye.name).add(y)})),M.mutate(H).then(function(ye){return!$e||H.type!=="add"&&H.type!=="put"||(be.addKeys(ye.results),N&&N.forEach(function(Qe){for(var Ze=H.values.map(function(tt){return Qe.extractKey(tt)}),nt=Qe.keyPath.findIndex(function(tt){return tt===j.keyPath}),ut=0,Mn=ye.results.length;ut<Mn;++ut)Ze[ut][nt]=ye.results[ut];X(Qe.name).addKeys(Ze)})),ce.mutatedParts=ki(ce.mutatedParts||{},ge),ye})}}),G={get:function(H){return[j,new hn(H.key)]},getMany:function(H){return[j,new hn().addKeys(H.keys)]},count:_,query:_,openCursor:_};return a(G).forEach(function(H){W[H]=function(X){var K=Oe.subscr,oe=!!K,ne=Yf(Oe,M)&&Kf(H,X)?X.obsSet={}:K;if(oe){var ce,K=function(Te){return Te="idb://".concat(h,"/").concat(b,"/").concat(Te),ne[Te]||(ne[Te]=new hn)},ge=K(""),be=K(":dels"),oe=G[H](X),Pe=oe[0],oe=oe[1];if((H==="query"&&Pe.isPrimaryKey&&!X.values?be:K(Pe.name||"")).add(oe),!Pe.isPrimaryKey){if(H!=="count")return ce=H==="query"&&q&&X.values&&M.query(r(r({},X),{values:!1})),M[H].apply(this,arguments).then(function(Te){if(H==="query"){if(q&&X.values)return ce.then(function(Ze){return Ze=Ze.result,ge.addKeys(Ze),Te});var Le=X.values?Te.result.map(te):Te.result;(X.values?ge:be).addKeys(Le)}else{var ye,Qe;if(H==="openCursor")return Qe=X.values,(ye=Te)&&Object.create(ye,{key:{get:function(){return be.addKey(ye.primaryKey),ye.key}},primaryKey:{get:function(){var Ze=ye.primaryKey;return be.addKey(Ze),Ze}},value:{get:function(){return Qe&&ge.addKey(ye.primaryKey),ye.value}}})}return Te});be.add(y)}}return M[H].apply(this,arguments)}}),W}})}};function Vf(u,h,y){var b;return y.numFailures===0?h:h.type==="deleteRange"||(b=h.keys?h.keys.length:"values"in h&&h.values?h.values.length:1,y.numFailures===b)?null:(b=r({},h),i(b.keys)&&(b.keys=b.keys.filter(function(_,M){return!(M in y.failures)})),"values"in b&&i(b.values)&&(b.values=b.values.filter(function(_,M){return!(M in y.failures)})),b)}function Cc(u,h){return y=u,((b=h).lower===void 0||(b.lowerOpen?0<dt(y,b.lower):0<=dt(y,b.lower)))&&(y=u,(b=h).upper===void 0||(b.upperOpen?dt(y,b.upper)<0:dt(y,b.upper)<=0));var y,b}function Gf(u,h,y,b,_,M){var R,j,B,te,q,N,W;return!y||y.length===0||(R=h.query.index,j=R.multiEntry,B=h.query.range,te=b.schema.primaryKey.extractKey,q=R.extractKey,N=(R.lowLevelIndex||R).extractKey,(b=y.reduce(function(G,H){var X=G,K=[];if(H.type==="add"||H.type==="put")for(var oe=new hn,ne=H.values.length-1;0<=ne;--ne){var ce,ge=H.values[ne],be=te(ge);!oe.hasKey(be)&&(ce=q(ge),j&&i(ce)?ce.some(function(Le){return Cc(Le,B)}):Cc(ce,B))&&(oe.addKey(be),K.push(ge))}switch(H.type){case"add":var Pe=new hn().addKeys(h.values?G.map(function(ye){return te(ye)}):G),X=G.concat(h.values?K.filter(function(ye){return ye=te(ye),!Pe.hasKey(ye)&&(Pe.addKey(ye),!0)}):K.map(function(ye){return te(ye)}).filter(function(ye){return!Pe.hasKey(ye)&&(Pe.addKey(ye),!0)}));break;case"put":var _e=new hn().addKeys(H.values.map(function(ye){return te(ye)}));X=G.filter(function(ye){return!_e.hasKey(h.values?te(ye):ye)}).concat(h.values?K:K.map(function(ye){return te(ye)}));break;case"delete":var $e=new hn().addKeys(H.keys);X=G.filter(function(ye){return!$e.hasKey(h.values?te(ye):ye)});break;case"deleteRange":var Te=H.range;X=G.filter(function(ye){return!Cc(te(ye),Te)})}return X},u))===u)?u:(W=function(G,H){return dt(N(G),N(H))||dt(te(G),te(H))},b.sort(h.direction==="prev"||h.direction==="prevunique"?function(G,H){return W(H,G)}:W),h.limit&&h.limit<1/0&&(b.length>h.limit?b.length=h.limit:u.length===h.limit&&b.length<h.limit&&(_.dirty=!0)),M?Object.freeze(b):b)}function Jf(u,h){return dt(u.lower,h.lower)===0&&dt(u.upper,h.upper)===0&&!!u.lowerOpen==!!h.lowerOpen&&!!u.upperOpen==!!h.upperOpen}function fw(u,h){return((y,b,_,M)=>{if(y===void 0)return b!==void 0?-1:0;if(b===void 0)return 1;if((y=dt(y,b))===0){if(_&&M)return 0;if(_)return 1;if(M)return-1}return y})(u.lower,h.lower,u.lowerOpen,h.lowerOpen)<=0&&0<=((y,b,_,M)=>{if(y===void 0)return b!==void 0?1:0;if(b===void 0)return-1;if((y=dt(y,b))===0){if(_&&M)return 0;if(_)return-1;if(M)return 1}return y})(u.upper,h.upper,u.upperOpen,h.upperOpen)}function hw(u,h,y,b){u.subscribers.add(y),b.addEventListener("abort",function(){var _,M;u.subscribers.delete(y),u.subscribers.size===0&&(_=u,M=h,setTimeout(function(){_.subscribers.size===0&&ue(M,_)},3e3))})}var pw={stack:"dbcore",level:0,name:"Cache",create:function(u){var h=u.schema.name;return r(r({},u),{transaction:function(y,b,_){var M,R,j=u.transaction(y,b,_);return b==="readwrite"&&(_=(M=new AbortController).signal,j.addEventListener("abort",(R=function(B){return function(){if(M.abort(),b==="readwrite"){for(var te=new Set,q=0,N=y;q<N.length;q++){var W=N[q],G=Jr["idb://".concat(h,"/").concat(W)];if(G){var H=u.table(W),X=G.optimisticOps.filter(function(ye){return ye.trans===j});if(j._explicit&&B&&j.mutatedParts)for(var K=0,oe=Object.values(G.queries.query);K<oe.length;K++)for(var ne=0,ce=(Pe=oe[K]).slice();ne<ce.length;ne++)yc((_e=ce[ne]).obsSet,j.mutatedParts)&&(ue(Pe,_e),_e.subscribers.forEach(function(ye){return te.add(ye)}));else if(0<X.length){G.optimisticOps=G.optimisticOps.filter(function(ye){return ye.trans!==j});for(var ge=0,be=Object.values(G.queries.query);ge<be.length;ge++)for(var Pe,_e,$e,Te=0,Le=(Pe=be[ge]).slice();Te<Le.length;Te++)(_e=Le[Te]).res!=null&&j.mutatedParts&&(B&&!_e.dirty?($e=Object.isFrozen(_e.res),$e=Gf(_e.res,_e.req,X,H,_e,$e),_e.dirty?(ue(Pe,_e),_e.subscribers.forEach(function(ye){return te.add(ye)})):$e!==_e.res&&(_e.res=$e,_e.promise=Re.resolve({result:$e}))):(_e.dirty&&ue(Pe,_e),_e.subscribers.forEach(function(ye){return te.add(ye)})))}}}te.forEach(function(ye){return ye()})}}})(!1),{signal:_}),j.addEventListener("error",R(!1),{signal:_}),j.addEventListener("complete",R(!0),{signal:_})),j},table:function(y){var b=u.table(y),_=b.schema.primaryKey;return r(r({},b),{mutate:function(M){var R,j=Oe.trans;return!_.outbound&&j.db._options.cache!=="disabled"&&!j.explicit&&j.idbtrans.mode==="readwrite"&&(R=Jr["idb://".concat(h,"/").concat(y)])?(j=b.mutate(M),M.type!=="add"&&M.type!=="put"||!(50<=M.values.length||_c(_,M).some(function(B){return B==null}))?(R.optimisticOps.push(M),M.mutatedParts&&Ti(M.mutatedParts),j.then(function(B){0<B.numFailures&&(ue(R.optimisticOps,M),(B=Vf(0,M,B))&&R.optimisticOps.push(B),M.mutatedParts)&&Ti(M.mutatedParts)}),j.catch(function(){ue(R.optimisticOps,M),M.mutatedParts&&Ti(M.mutatedParts)})):j.then(function(B){var te=Vf(0,r(r({},M),{values:M.values.map(function(q,N){var W;return B.failures[N]?q:(O(W=(W=_.keyPath)!=null&&W.includes(".")?Y(q):r({},q),_.keyPath,B.results[N]),W)})}),B);R.optimisticOps.push(te),queueMicrotask(function(){return M.mutatedParts&&Ti(M.mutatedParts)})}),j):b.mutate(M)},query:function(M){var R,j,B,te,q,N,W;return Yf(Oe,b)&&Kf("query",M)?(R=((B=Oe.trans)==null?void 0:B.db._options.cache)==="immutable",j=(B=Oe).requery,B=B.signal,N=((G,H,X,K)=>{var oe=Jr["idb://".concat(G,"/").concat(H)];if(!oe)return[];if(!(G=oe.queries[X]))return[null,!1,oe,null];var ne=G[(K.query?K.query.index.name:null)||""];if(!ne)return[null,!1,oe,null];switch(X){case"query":var ce=(ge=K.direction)!=null?ge:"next",ge=ne.find(function(be){var Pe;return be.req.limit===K.limit&&be.req.values===K.values&&((Pe=be.req.direction)!=null?Pe:"next")===ce&&Jf(be.req.query.range,K.query.range)});return ge?[ge,!0,oe,ne]:[ne.find(function(be){var Pe;return("limit"in be.req?be.req.limit:1/0)>=K.limit&&((Pe=be.req.direction)!=null?Pe:"next")===ce&&(!K.values||be.req.values)&&fw(be.req.query.range,K.query.range)}),!1,oe,ne];case"count":return ge=ne.find(function(be){return Jf(be.req.query.range,K.query.range)}),[ge,!!ge,oe,ne]}})(h,y,"query",M),W=N[0],te=N[2],q=N[3],W&&N[1]?W.obsSet=M.obsSet:(N=b.query(M).then(function(G){var H=G.result;if(W&&(W.res=H),R){for(var X=0,K=H.length;X<K;++X)Object.freeze(H[X]);Object.freeze(H)}else G.result=Y(H);return G}).catch(function(G){return q&&W&&ue(q,W),Promise.reject(G)}),W={obsSet:M.obsSet,promise:N,subscribers:new Set,type:"query",req:M,dirty:!1},q?q.push(W):(q=[W],(te=te||(Jr["idb://".concat(h,"/").concat(y)]={queries:{query:{},count:{}},objs:new Map,optimisticOps:[],unsignaledParts:{}})).queries.query[M.query.index.name||""]=q)),hw(W,q,j,B),W.promise.then(function(G){return{result:Gf(G.result,M,te==null?void 0:te.optimisticOps,b,W,R)}})):b.query(M)}})}})}};function Ei(u,h){return new Proxy(u,{get:function(y,b,_){return b==="db"?h:Reflect.get(y,b,_)}})}Nt.prototype.version=function(u){if(isNaN(u)||u<.1)throw new L.Type("Given version is not a positive number");if(u=Math.round(10*u)/10,this.idbdb||this._state.isBeingOpened)throw new L.Schema("Cannot add version when database is open");this.verno=Math.max(this.verno,u);var h=this._versions,y=h.filter(function(b){return b._cfg.version===u})[0];return y||(y=new this.Version(u),h.push(y),h.sort(rw),y.stores({}),this._state.autoSchema=!1),y},Nt.prototype._whenReady=function(u){var h=this;return this.idbdb&&(this._state.openComplete||Oe.letThrough||this._vip)?u():new Re(function(y,b){if(h._state.openComplete)return b(new L.DatabaseClosed(h._state.dbOpenError));if(!h._state.isBeingOpened){if(!h._state.autoOpen)return void b(new L.DatabaseClosed);h.open().catch(Se)}h._state.dbReadyPromise.then(y,b)}).then(u)},Nt.prototype.use=function(_){var h=_.stack,y=_.create,b=_.level,_=_.name,M=(_&&this.unuse({stack:h,name:_}),this._middlewares[h]||(this._middlewares[h]=[]));return M.push({stack:h,create:y,level:b??10,name:_}),M.sort(function(R,j){return R.level-j.level}),this},Nt.prototype.unuse=function(u){var h=u.stack,y=u.name,b=u.create;return h&&this._middlewares[h]&&(this._middlewares[h]=this._middlewares[h].filter(function(_){return b?_.create!==b:!!y&&_.name!==y})),this},Nt.prototype.open=function(){var u=this;return xe(yn,function(){return iw(u)})},Nt.prototype._close=function(){this.on.close.fire(new CustomEvent("close"));var u=this._state;if(Co.remove(this),this.idbdb){try{this.idbdb.close()}catch{}this.idbdb=null}u.isBeingOpened||(u.dbReadyPromise=new Re(function(h){u.dbReadyResolve=h}),u.openCanceller=new Re(function(h,y){u.cancelOpen=y}))},Nt.prototype.close=function(h){var h=(h===void 0?{disableAutoOpen:!0}:h).disableAutoOpen,y=this._state;h?(y.isBeingOpened&&y.cancelOpen(new L.DatabaseClosed),this._close(),y.autoOpen=!1,y.dbOpenError=new L.DatabaseClosed):(this._close(),y.autoOpen=this._options.autoOpen||y.isBeingOpened,y.openComplete=!1,y.dbOpenError=null)},Nt.prototype.delete=function(u){var h=this,y=(u===void 0&&(u={disableAutoOpen:!0}),0<arguments.length&&typeof arguments[0]!="object"),b=this._state;return new Re(function(_,M){function R(){h.close(u);var j=h._deps.indexedDB.deleteDatabase(h.name);j.onsuccess=Ce(function(){var B,te,q;B=h._deps,te=h.name,pc(q=B.indexedDB)||te===vn||hc(q,B.IDBKeyRange).delete(te).catch(Se),_()}),j.onerror=Xn(M),j.onblocked=h._fireOnBlocked}if(y)throw new L.InvalidArgument("Invalid closeOptions argument to db.delete()");b.isBeingOpened?b.dbReadyPromise.then(R):R()})},Nt.prototype.backendDB=function(){return this.idbdb},Nt.prototype.isOpen=function(){return this.idbdb!==null},Nt.prototype.hasBeenClosed=function(){var u=this._state.dbOpenError;return u&&u.name==="DatabaseClosed"},Nt.prototype.hasFailed=function(){return this._state.dbOpenError!==null},Nt.prototype.dynamicallyOpened=function(){return this._state.autoSchema},Object.defineProperty(Nt.prototype,"tables",{get:function(){var u=this;return a(this._allTables).map(function(h){return u._allTables[h]})},enumerable:!1,configurable:!0}),Nt.prototype.transaction=function(){var u=(function(h,y,b){var _=arguments.length;if(_<2)throw new L.InvalidArgument("Too few arguments");for(var M=new Array(_-1);--_;)M[_-1]=arguments[_];return b=M.pop(),[h,J(M),b]}).apply(this,arguments);return this._transaction.apply(this,u)},Nt.prototype._transaction=function(u,h,y){var b,_,M=this,R=Oe.trans,j=(R&&R.db===this&&u.indexOf("!")===-1||(R=null),u.indexOf("?")!==-1);u=u.replace("!","").replace("?","");try{if(_=h.map(function(te){if(te=te instanceof M.Table?te.name:te,typeof te!="string")throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed");return te}),u=="r"||u===Ms)b=Ms;else{if(u!="rw"&&u!=sr)throw new L.InvalidArgument("Invalid transaction mode: "+u);b=sr}if(R){if(R.mode===Ms&&b===sr){if(!j)throw new L.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY");R=null}R&&_.forEach(function(te){if(R&&R.storeNames.indexOf(te)===-1){if(!j)throw new L.SubTransaction("Table "+te+" not included in parent transaction.");R=null}}),j&&R&&!R.active&&(R=null)}}catch(te){return R?R._promise(null,function(q,N){N(te)}):ft(te)}var B=(function te(q,N,W,G,H){return Re.resolve().then(function(){var ne=Oe.transless||Oe,X=q._createTransaction(N,W,q._dbSchema,G),ne=(X.explicit=!0,{trans:X,transless:ne});if(G)X.idbtrans=G.idbtrans;else try{X.create(),X.idbtrans._explicit=!0,q._state.PR1398_maxLoop=3}catch(ce){return ce.name===Me.InvalidState&&q.isOpen()&&0<--q._state.PR1398_maxLoop?(console.warn("Dexie: Need to reopen db"),q.close({disableAutoOpen:!1}),q.open().then(function(){return te(q,N,W,null,H)})):ft(ce)}var K,oe=ae(H),ne=(oe&&yr(),Re.follow(function(){var ce;(K=H.call(X,X))&&(oe?(ce=Un.bind(null,null),K.then(ce,ce)):typeof K.next=="function"&&typeof K.throw=="function"&&(K=wc(K)))},ne));return(K&&typeof K.then=="function"?Re.resolve(K).then(function(ce){return X.active?ce:ft(new L.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn"))}):ne.then(function(){return K})).then(function(ce){return G&&X._resolve(),X._completion.then(function(){return ce})}).catch(function(ce){return X._reject(ce),ft(ce)})})}).bind(null,this,b,_,R,y);return R?R._promise(b,B,"lock"):Oe.trans?xe(Oe.transless,function(){return M._whenReady(B)}):this._whenReady(B)},Nt.prototype.table=function(u){if(p(this._allTables,u))return this._allTables[u];throw new L.InvalidTable("Table ".concat(u," does not exist"))};var vr=Nt;function Nt(u,h){var y,b,_,M,R,j=this,B=(this._middlewares={},this.verno=0,Nt.dependencies),B=(this._options=h=r({addons:Nt.addons,autoOpen:!0,indexedDB:B.indexedDB,IDBKeyRange:B.IDBKeyRange,cache:"cloned",maxConnections:1e3},h),this._deps={indexedDB:h.indexedDB,IDBKeyRange:h.IDBKeyRange},h.addons),te=(this._dbSchema={},this._versions=[],this._storeNames=[],this._allTables={},this.idbdb=null,this._novip=this,{dbOpenError:null,isBeingOpened:!1,onReadyBeingFired:null,openComplete:!1,dbReadyResolve:Se,dbReadyPromise:null,cancelOpen:Se,openCanceller:null,autoSchema:!0,PR1398_maxLoop:3,autoOpen:h.autoOpen}),q=(te.dbReadyPromise=new Re(function(N){te.dbReadyResolve=N}),te.openCanceller=new Re(function(N,W){te.cancelOpen=W}),this._state=te,this.name=u,this.on=vo(this,"populate","blocked","versionchange","close",{ready:[xt,Se]}),this.once=function(N,W){var G=function(){for(var H=[],X=0;X<arguments.length;X++)H[X]=arguments[X];j.on(N).unsubscribe(G),W.apply(j,H)};return j.on(N,G)},this.on.ready.subscribe=E(this.on.ready.subscribe,function(N){return function(W,G){Nt.vip(function(){var H,X=j._state;X.openComplete?(X.dbOpenError||Re.resolve().then(W),G&&N(W)):X.onReadyBeingFired?(X.onReadyBeingFired.push(W),G&&N(W)):(N(W),H=j,G||N(function K(){H.on.ready.unsubscribe(W),H.on.ready.unsubscribe(K)}))})}}),this.Collection=(y=this,bo(GS.prototype,function(K,X){this.db=y;var G=go,H=null;if(X)try{G=X()}catch(ne){H=ne}var X=K._ctx,K=X.table,oe=K.hook.reading.fire;this._ctx={table:K,index:X.index,isPrimKey:!X.index||K.schema.primKey.keyPath&&X.index===K.schema.primKey.name,range:G,keysOnly:!1,dir:"next",unique:"",algorithm:null,filter:null,replayFilter:null,justLimit:!0,isMatch:null,offset:0,limit:1/0,error:H,or:X.or,valueMapper:oe!==De?oe:null}})),this.Table=(b=this,bo(jf.prototype,function(N,W,G){this.db=b,this._tx=G,this.name=N,this.schema=W,this.hook=b._allTables[N]?b._allTables[N].hook:vo(null,{creating:[He,Se],reading:[We,De],updating:[St,Se],deleting:[at,Se]})})),this.Transaction=(_=this,bo(ZS.prototype,function(N,W,G,H,X){var K=this;N!=="readonly"&&W.forEach(function(oe){oe=(oe=G[oe])==null?void 0:oe.yProps,oe&&(W=W.concat(oe.map(function(ne){return ne.updatesTable})))}),this.db=_,this.mode=N,this.storeNames=W,this.schema=G,this.chromeTransactionDurability=H,this.idbtrans=null,this.on=vo(this,"complete","error","abort"),this.parent=X||null,this.active=!0,this._reculock=0,this._blockedFuncs=[],this._resolve=null,this._reject=null,this._waitingFor=null,this._waitingQueue=null,this._spinCount=0,this._completion=new Re(function(oe,ne){K._resolve=oe,K._reject=ne}),this._completion.then(function(){K.active=!1,K.on.complete.fire()},function(oe){var ne=K.active;return K.active=!1,K.on.error.fire(oe),K.parent?K.parent._reject(oe):ne&&K.idbtrans&&K.idbtrans.abort(),ft(oe)})})),this.Version=(M=this,bo(aw.prototype,function(N){this.db=M,this._cfg={version:N,storesSource:null,dbschema:{},tables:{},contentUpgrade:null}})),this.WhereClause=(R=this,bo(Df.prototype,function(N,W,G){if(this.db=R,this._ctx={table:N,index:W===":id"?null:W,or:G},this._cmp=this._ascending=dt,this._descending=function(H,X){return dt(X,H)},this._max=function(H,X){return 0<dt(H,X)?H:X},this._min=function(H,X){return dt(H,X)<0?H:X},this._IDBKeyRange=R._deps.IDBKeyRange,!this._IDBKeyRange)throw new L.MissingAPI})),this.on("versionchange",function(N){0<N.newVersion?console.warn("Another connection wants to upgrade database '".concat(j.name,"'. Closing db now to resume the upgrade.")):console.warn("Another connection wants to delete database '".concat(j.name,"'. Closing db now to resume the delete request.")),j.close({disableAutoOpen:!1})}),this.on("blocked",function(N){!N.newVersion||N.newVersion<N.oldVersion?console.warn("Dexie.delete('".concat(j.name,"') was blocked")):console.warn("Upgrade '".concat(j.name,"' blocked by other connection holding version ").concat(N.oldVersion/10))}),this._maxKey=xo(h.IDBKeyRange),this._createTransaction=function(N,W,G,H){return new j.Transaction(N,W,G,j._options.chromeTransactionDurability,H)},this._fireOnBlocked=function(N){j.on("blocked").fire(N),Co.toArray().filter(function(W){return W.name===j.name&&W!==j&&!W._state.vcFired}).map(function(W){return W.on("versionchange").fire(N)})},this.use(uw),this.use(pw),this.use(dw),this.use(lw),this.use(cw),new Proxy(this,{get:function(N,W,G){var H;return W==="_vip"||(W==="table"?function(X){return Ei(j.table(X),q)}:(H=Reflect.get(N,W,G))instanceof jf?Ei(H,q):W==="tables"?H.map(function(X){return Ei(X,q)}):W==="_createTransaction"?function(){return Ei(H.apply(this,arguments),q)}:H)}}));this.vip=q,B.forEach(function(N){return N(j)})}var Mi,Is=typeof Symbol<"u"&&"observable"in Symbol?Symbol.observable:"@@observable",mw=(kc.prototype.subscribe=function(u,h,y){return this._subscribe(u&&typeof u!="function"?u:{next:u,error:h,complete:y})},kc.prototype[Is]=function(){return this},kc);function kc(u){this._subscribe=u}try{Mi={indexedDB:o.indexedDB||o.mozIndexedDB||o.webkitIndexedDB||o.msIndexedDB,IDBKeyRange:o.IDBKeyRange||o.webkitIDBKeyRange}}catch{Mi={indexedDB:null,IDBKeyRange:null}}function Qf(u){var h,y=!1,b=new mw(function(_){var M=ae(u),R,j=!1,B={},te={},q={get closed(){return j},unsubscribe:function(){j||(j=!0,R&&R.abort(),N&&Mr.storagemutated.unsubscribe(H))}},N=(_.start&&_.start(q),!1),W=function(){return Xt(X)};function G(){return yc(te,B)}var H=function(K){ki(B,K),G()&&W()},X=function(){var K,oe,ne;!j&&Mi.indexedDB&&(B={},K={},R&&R.abort(),R=new AbortController,ne=(ce=>{var ge=Wn();try{M&&yr();var be=rr(u,ce);return be=M?be.finally(Un):be}finally{ge&&Cn()}})(oe={subscr:K,signal:R.signal,requery:W,querier:u,trans:null}),N||(Mr(wo,H),N=!0),Promise.resolve(ne).then(function(ce){y=!0,h=ce,j||oe.signal.aborted||(G()||(te=K,G())?W():(B={},Xt(function(){return!j&&_.next&&_.next(ce)})))},function(ce){y=!1,["DatabaseClosedError","AbortError"].includes(ce==null?void 0:ce.name)||j||Xt(function(){j||_.error&&_.error(ce)})}))};return setTimeout(W,0),q});return b.hasValue=function(){return y},b.getValue=function(){return h},b}var Qr=vr;function Tc(u){var h=Rr;try{Rr=!0,Mr.storagemutated.fire(u),Sc(u,!0)}finally{Rr=h}}v(Qr,r(r({},ve),{delete:function(u){return new Qr(u,{addons:[]}).delete()},exists:function(u){return new Qr(u,{addons:[]}).open().then(function(h){return h.close(),!0}).catch("NoSuchDatabaseError",function(){return!1})},getDatabaseNames:function(u){try{return h=Qr.dependencies,y=h.indexedDB,h=h.IDBKeyRange,(pc(y)?Promise.resolve(y.databases()).then(function(b){return b.map(function(_){return _.name}).filter(function(_){return _!==vn})}):hc(y,h).toCollection().primaryKeys()).then(u)}catch{return ft(new L.MissingAPI)}var h,y},defineClass:function(){return function(u){c(this,u)}},ignoreTransaction:function(u){return Oe.trans?xe(Oe.transless||yn,u):u()},vip:mc,async:function(u){return function(){try{var h=wc(u.apply(this,arguments));return h&&typeof h.then=="function"?h:Re.resolve(h)}catch(y){return ft(y)}}},spawn:function(u,h,y){try{var b=wc(u.apply(y,h||[]));return b&&typeof b.then=="function"?b:Re.resolve(b)}catch(_){return ft(_)}},currentTransaction:{get:function(){return Oe.trans||null}},waitFor:function(u,h){return u=Re.resolve(typeof u=="function"?Qr.ignoreTransaction(u):u).timeout(h||6e4),Oe.trans?Oe.trans.waitFor(u):u},Promise:Re,debug:{get:function(){return Fe},set:function(u){lt(u)}},derive:m,extend:c,props:v,override:E,Events:vo,on:Mr,liveQuery:Qf,extendObservabilitySet:ki,getByKeyPath:A,setByKeyPath:O,delByKeyPath:function(u,h){typeof h=="string"?O(u,h,void 0):"length"in h&&[].map.call(h,function(y){O(u,y,void 0)})},shallowClone:$,deepClone:Y,getObjectDiff:xc,cmp:dt,asap:P,minKey:-1/0,addons:[],connections:{get:Co.toArray},errnames:Me,dependencies:Mi,cache:Jr,semVer:"4.4.2",version:"4.4.2".split(".").map(function(u){return parseInt(u)}).reduce(function(u,h,y){return u+h/Math.pow(10,2*y)})})),Qr.maxKey=xo(Qr.dependencies.IDBKeyRange),typeof dispatchEvent<"u"&&typeof addEventListener<"u"&&(Mr(wo,function(u){Rr||(u=new CustomEvent(ac,{detail:u}),Rr=!0,dispatchEvent(u),Rr=!1)}),addEventListener(ac,function(u){u=u.detail,Rr||Tc(u)}));var Os,Rr=!1,Zf=function(){};return typeof BroadcastChannel<"u"&&((Zf=function(){(Os=new BroadcastChannel(ac)).onmessage=function(u){return u.data&&Tc(u.data)}})(),typeof Os.unref=="function"&&Os.unref(),Mr(wo,function(u){Rr||Os.postMessage(u)})),typeof addEventListener<"u"&&(addEventListener("pagehide",function(u){if(!vr.disableBfCache&&u.persisted){Fe&&console.debug("Dexie: handling persisted pagehide"),Os!=null&&Os.close();for(var h=0,y=Co.toArray();h<y.length;h++)y[h].close({disableAutoOpen:!1})}}),addEventListener("pageshow",function(u){!vr.disableBfCache&&u.persisted&&(Fe&&console.debug("Dexie: handling persisted pageshow"),Zf(),Tc({all:new hn(-1/0,[[]])}))})),Re.rejectionMapper=function(u,h){return!u||u instanceof le||u instanceof TypeError||u instanceof SyntaxError||!u.name||!fe[u.name]?u:(h=new fe[u.name](h||u.message,u),"stack"in u&&w(h,"stack",{get:function(){return this.inner.stack}}),h)},lt(Fe),r(vr,Object.freeze({__proto__:null,DEFAULT_MAX_CONNECTIONS:1e3,Dexie:vr,Entity:Pf,PropModification:yo,RangeSet:hn,add:function(u){return new yo({add:u})},cmp:dt,default:vr,liveQuery:Qf,mergeRanges:To,rangesOverlap:Wf,remove:function(u){return new yo({remove:u})},replacePrefix:function(u,h){return new yo({replacePrefix:[u,h]})}}),{default:vr}),vr})}(tl)),tl.exports}var l0=i0();const Ou=Cs(l0),Th=Symbol.for("Dexie"),_l=globalThis[Th]||(globalThis[Th]=Ou);if(Ou.semVer!==_l.semVer)throw new Error(`Two different versions of Dexie loaded in the same app: ${Ou.semVer} and ${_l.semVer}`);const{liveQuery:J$,mergeRanges:Q$,rangesOverlap:Z$,RangeSet:eL,cmp:tL,Entity:nL,PropModification:rL,replacePrefix:sL,add:oL,remove:aL,DexieYProvider:iL}=_l;class c0 extends _l{constructor(){super("LotusStorage");vt(this,"scrollAnchors");vt(this,"toolSessionCollapses");vt(this,"diffCollapses");vt(this,"inputStates");vt(this,"modelOptionsCaches");this.version(1).stores({scrollAnchors:"sessionId, ts",toolSessionCollapses:"id, sessionId, updatedAt",diffCollapses:"sessionId, updatedAt",inputStates:"sessionId, updatedAt",modelOptionsCaches:"provider, timestamp"})}}const u0=new c0,fs=class fs{constructor(){vt(this,"db",u0)}static getInstance(){return fs.instance||(fs.instance=new fs),fs.instance}async saveScrollAnchor(t,n){try{await this.db.scrollAnchors.put({sessionId:t,anchorId:n.anchorId,offsetPx:n.offsetPx,ts:n.ts,indexHint:n.indexHint,createdAt:n.createdAt})}catch(r){console.warn("[StorageManager] IndexedDB save failed, falling back to localStorage",r);try{localStorage.setItem(`chat_scroll_anchor_v2:${t}`,JSON.stringify(n))}catch{}}}async loadScrollAnchor(t){try{const n=await this.db.scrollAnchors.get(t);return n?{v:1,anchorId:n.anchorId,offsetPx:n.offsetPx,ts:n.ts,indexHint:n.indexHint,createdAt:n.createdAt}:null}catch{try{const n=localStorage.getItem(`chat_scroll_anchor_v2:${t}`);if(!n)return null;const r=JSON.parse(n);if(r&&r.v===1&&typeof r.anchorId=="string")return r}catch{}return null}}async clearScrollAnchor(t){try{await this.db.scrollAnchors.delete(t)}catch{}try{localStorage.removeItem(`chat_scroll_anchor_v2:${t}`)}catch{}}async saveToolSessionCollapse(t,n,r){try{await this.db.toolSessionCollapses.put({id:`${t}:${n}`,sessionId:t,toolSessionId:n,isExpanded:r.isExpanded,expandedTools:r.expandedTools,updatedAt:Date.now()})}catch(s){console.warn("[StorageManager] saveToolSessionCollapse failed",s);try{localStorage.setItem(`chat-session-tool-collapse:${t}:${n}`,JSON.stringify(r))}catch{}}}async loadToolSessionCollapse(t,n){try{const r=await this.db.toolSessionCollapses.get(`${t}:${n}`);return r?{isExpanded:r.isExpanded,expandedTools:r.expandedTools}:null}catch{try{const r=localStorage.getItem(`chat-session-tool-collapse:${t}:${n}`);if(!r)return null;const s=JSON.parse(r);if(s&&typeof s.isExpanded=="boolean")return s}catch{}return null}}async saveDiffCollapse(t,n){try{await this.db.diffCollapses.put({sessionId:t,isExpanded:n.isExpanded,expandedFiles:n.expandedFiles,updatedAt:Date.now()})}catch(r){console.warn("[StorageManager] saveDiffCollapse failed",r);try{localStorage.setItem(`chat-session-diff-collapse:${t}`,JSON.stringify(n))}catch{}}}async loadDiffCollapse(t){try{const n=await this.db.diffCollapses.get(t);return n?{isExpanded:n.isExpanded,expandedFiles:n.expandedFiles}:null}catch{try{const n=localStorage.getItem(`chat-session-diff-collapse:${t}`);if(!n)return null;const r=JSON.parse(n);if(r&&typeof r.isExpanded=="boolean")return r}catch{}return null}}async saveInputReasoning(t,n){try{const r=await this.db.inputStates.get(t);await this.db.inputStates.put({sessionId:t,reasoningEffort:n,content:r==null?void 0:r.content,referenceText:r==null?void 0:r.referenceText,updatedAt:Date.now()})}catch(r){console.warn("[StorageManager] saveInputReasoning failed",r);try{const s=localStorage.getItem("chat_input_reasoning_by_session_v1"),o=s?JSON.parse(s):{};o[t]=n,localStorage.setItem("chat_input_reasoning_by_session_v1",JSON.stringify(o))}catch{}}}async loadInputReasoning(t){try{const n=await this.db.inputStates.get(t);return(n==null?void 0:n.reasoningEffort)??null}catch{try{const n=localStorage.getItem("chat_input_reasoning_by_session_v1");return n?JSON.parse(n)[t]??null:null}catch{return null}}}async saveLastUsedReasoningEffort(t){try{await this.db.inputStates.put({sessionId:"__last_used__",reasoningEffort:t,updatedAt:Date.now()})}catch{try{localStorage.setItem("chat_input_reasoning_last_used_v1",t)}catch{}}}async loadLastUsedReasoningEffort(){try{const t=await this.db.inputStates.get("__last_used__");return(t==null?void 0:t.reasoningEffort)??null}catch{try{return localStorage.getItem("chat_input_reasoning_last_used_v1")}catch{return null}}}async saveModelOptionsCache(t,n,r){try{await this.db.modelOptionsCaches.put({provider:t,options:n,timestamp:r})}catch(s){console.warn("[StorageManager] saveModelOptionsCache failed",s);try{localStorage.setItem(`chat-model-options-cache-v1:${t}`,JSON.stringify({timestamp:r,options:n}))}catch{}}}async loadModelOptionsCache(t){try{const n=await this.db.modelOptionsCaches.get(t);return n?{options:n.options,timestamp:n.timestamp}:null}catch{try{const n=localStorage.getItem(`chat-model-options-cache-v1:${t}`);if(!n)return null;const r=JSON.parse(n);if(r&&Array.isArray(r.options))return{options:r.options,timestamp:r.timestamp}}catch{}return null}}async clearSessionData(t){try{await Promise.all([this.db.scrollAnchors.delete(t),this.db.diffCollapses.delete(t),this.db.toolSessionCollapses.where("sessionId").equals(t).delete(),this.db.inputStates.delete(t)])}catch{}}async cleanupStaleData(t=30){const n=Date.now()-t*24*60*60*1e3;try{await Promise.all([this.db.scrollAnchors.where("ts").below(n).delete(),this.db.toolSessionCollapses.where("updatedAt").below(n).delete(),this.db.diffCollapses.where("updatedAt").below(n).delete(),this.db.inputStates.where("updatedAt").below(n).delete(),this.db.modelOptionsCaches.where("timestamp").below(n).delete()])}catch{}}async getStats(){try{const[t,n,r,s,o]=await Promise.all([this.db.scrollAnchors.count(),this.db.toolSessionCollapses.count(),this.db.diffCollapses.count(),this.db.inputStates.count(),this.db.modelOptionsCaches.count()]);return{scrollAnchors:t,toolSessionCollapses:n,diffCollapses:r,inputStates:s,modelOptionsCaches:o}}catch{return{scrollAnchors:0,toolSessionCollapses:0,diffCollapses:0,inputStates:0,modelOptionsCaches:0}}}};vt(fs,"instance");let On=fs;const Py="chat_input_reasoning_by_session_v1",Ey="chat_input_reasoning_last_used_v1",Ph={content:"",referenceText:null,attachments:[],reasoningEffort:"medium"},Od=e=>e==="low"||e==="medium"||e==="high"||e==="xhigh"||e==="max",My=()=>{if(typeof window>"u")return{};try{const e=localStorage.getItem(Py);if(!e)return{};const t=JSON.parse(e),n={};for(const[r,s]of Object.entries(t||{}))Od(s)&&(n[r]=s);return n}catch{return{}}},d0=e=>{if(!(typeof window>"u"))try{localStorage.setItem(Py,JSON.stringify(e))}catch{}},f0=()=>{if(!(typeof window>"u"))try{const e=localStorage.getItem(Ey);return Od(e)?e:void 0}catch{return}},h0=e=>{if(!(typeof window>"u"))try{localStorage.setItem(Ey,e)}catch{}},Ry=e=>{const t=My();return Od(t[e])?t[e]:f0()},Ro=e=>({...Ph,reasoningEffort:Ry(e)??Ph.reasoningEffort}),p0=(e,t)=>({inputStates:{},setInputContent:(n,r)=>e(s=>({inputStates:{...s.inputStates,[n]:{...s.inputStates[n]||Ro(n),content:r}}})),setReferenceText:(n,r)=>e(s=>({inputStates:{...s.inputStates,[n]:{...s.inputStates[n]||Ro(n),referenceText:r}}})),setAttachments:(n,r)=>e(s=>({inputStates:{...s.inputStates,[n]:{...s.inputStates[n]||Ro(n),attachments:r}}})),setInputReasoningEffort:(n,r)=>{e(a=>({inputStates:{...a.inputStates,[n]:{...a.inputStates[n]||Ro(n),reasoningEffort:r}}}));const s=My();s[n]=r,d0(s),h0(r);const o=On.getInstance();o.saveInputReasoning(n,r).catch(()=>{}),o.saveLastUsedReasoningEffort(r).catch(()=>{})},clearInputState:n=>e(r=>{const{[n]:s,...o}=r.inputStates;return{inputStates:o}}),getInputState:n=>t().inputStates[n]||Ro(n)}),$d="lotus_account_feed_cursor_v1",m0=400;let Eh=null,Lc=null;const g0=()=>{try{const e=localStorage.getItem($d),t=e?Number.parseInt(e,10):0;return Number.isFinite(t)&&t>0?t:0}catch{return 0}},y0=e=>{try{localStorage.setItem($d,String(e))}catch{}},v0=()=>{try{localStorage.removeItem($d)}catch{}},Dc=()=>{Lc||(Lc=setTimeout(()=>{Lc=null,Z.getState().refreshSessionsIndex()},m0))},b0=e=>{const{event:t}=e,n=Z.getState(),r=e.session_id??t.session_id;switch(t.type){case"session_title_updated":r&&typeof t.title=="string"&&n.applyServerTitle(r,t.title,t.title_version??0),Dc();break;case"session_pinned_updated":r&&typeof t.pinned=="boolean"&&n.applyServerPinned(r,t.pinned,t.updated_at??e.ts),Dc();break;case"session_created":case"session_deleted":case"session_cleared":case"message_appended":case"task_list_updated":case"task_list_item_progress":case"task_list_completed":case"complete":case"cancelled":case"error":case"execution_started":case"need_clarification":default:Dc();break}},S0=()=>{if(Eh||typeof EventSource>"u")return;Eh=Pn.getInstance().subscribeToAccountStream({onOpen:()=>{Z.getState().setAgentAvailability(!0)},onError:()=>{Z.getState().setAgentAvailability(!1)},onReset:()=>{v0(),Z.getState().refreshSessionsIndex()},onChange:t=>{Z.getState().setAgentAvailability(!0),y0(t.seq),b0(t)}},{since:g0()})},w0="bamboo_proxy_auth",x0=()=>{try{const e=localStorage.getItem(w0);if(!e)return null;const t=JSON.parse(e);if(!t||typeof t!="object")return null;const n=typeof t.username=="string"?t.username.trim():"",r=typeof t.password=="string"?t.password:"";return n?{username:n,password:r}:null}catch{return null}},Ay={byId:{},runningCount:0},_0=[],_n=(e,t)=>t?e.executionBySession[t]??null:null,C0=e=>t=>_n(t,e),k0=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.phase)??"idle"},si=e=>t=>{const n=_n(t,e);return Ad(n==null?void 0:n.phase)},jy=e=>t=>{const n=_n(t,e);return n?n.phase==="streaming"?!0:n.phase==="running_tools"&&n.stream.hasTokens:!1},T0=e=>t=>{const n=_n(t,e);return n?n.phase==="waiting_user_answer"||n.interaction.pendingQuestion!==null||n.backend.hasPendingQuestion===!0:!1},Iy=e=>t=>{const n=_n(t,e);return l_(n==null?void 0:n.phase)},Oy=e=>t=>{const n=_n(t,e);return c_(n==null?void 0:n.phase)},Vn=e=>t=>{const n=_n(t,e);return Ad(n==null?void 0:n.phase)?(n==null?void 0:n.phase)!=="waiting_user_answer":!1},P0=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.stream.activeToolCalls)??_0},so=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.interaction.pendingQuestion)??null},E0=e=>t=>{if(!e)return null;const n=so(e)(t);return n?{sessionId:e,question:n.question,options:n.options,allowCustom:n.allowCustom,toolCallId:n.toolCallId}:null},Ul=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.children.byId)??Ay.byId},M0=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.children)??Ay},Ct=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.generation)??0},R0=Object.freeze({state:"idle",activeToolCalls:[],runningChildCount:0,hasQuestion:!1,hasError:!1,errorMessage:null,generation:0}),A0=e=>t=>{var r;const n=_n(t,e);return n?{state:n.phase,activeToolCalls:n.stream.activeToolCalls,runningChildCount:n.children.runningCount,hasQuestion:n.interaction.pendingQuestion!==null,hasError:n.error!==null,errorMessage:((r=n.error)==null?void 0:r.message)??null,generation:n.generation}:R0},j0=e=>t=>e.map(n=>({sessionId:n??"",entry:_n(t,n)})),I0="auto",O0="required",$0=1e4,L0=15e3,D0=Pn.getInstance();let Mh=null,Ao=null,Rh=null,jo=null;const Ah=new WeakMap,Z=Xr()(Jx(Zx((e,t,n)=>({...q_(e,t),...K_(e,t),...Q_(e,t),...e0(),...n0(e,t),...r0(e),...o0(e,t),...p0(e,t),...__(e,t),agentAvailability:null,setAgentAvailability:r=>{e({agentAvailability:r})},checkAgentAvailability:async()=>{if(Ao)return Ao;Ao=(async()=>{const r=await D0.healthCheck();return t().agentAvailability!==r&&e({agentAvailability:r}),r})();try{return await Ao}finally{Ao=null}},startAgentHealthCheck:()=>{Mh||(t().checkAgentAvailability(),Mh=setInterval(()=>{t().checkAgentAvailability()},$0))},refreshSessionsIndex:async()=>{if(jo)return jo;jo=(async()=>{try{await t().refreshChats()}catch(r){console.warn("[AppStore] refreshChats failed:",r)}})();try{return await jo}finally{jo=null}},startSessionsIndexSync:()=>{Rh||(t().refreshSessionsIndex(),Rh=setInterval(()=>{t().refreshSessionsIndex()},L0))}})),{name:"AppStore"})),$y=e=>{const t=Ah.get(e);if(t)return t;const n=new Map(e.map(r=>[r.id,r]));return Ah.set(e,n),n},mr=e=>t=>e?$y(t.chats).get(e)??null:null,Ly=e=>e.currentSessionId?$y(e.chats).get(e.currentSessionId)??null:null,F0=e=>{var t;return((t=Ly(e))==null?void 0:t.messages)??[]},jh=async()=>{const e=x0();if(!e)return!1;try{return await as.setProxyAuth(e),!0}catch(t){return console.error("Failed to apply stored proxy auth during startup:",t),!1}},N0=async()=>{try{const e=await Iu.getState().loadConfig();if((typeof(e==null?void 0:e.proxy_auth_mode)=="string"?e.proxy_auth_mode:I0)!==O0)return await jh(),!1;const n=await Iu.getState().loadProxyAuthStatus({force:!0});return n!=null&&n.configured||await jh()?!1:(Z.setState(s=>({...s,models:[],selectedModel:void 0,modelsError:"Proxy auth mode is set to required. Please configure proxy username/password and apply it.",isLoadingModels:!1})),!0)}catch(e){return console.error("Failed to evaluate startup proxy auth mode:",e),!1}};let Ih=!1,Dy=!1,Oi=null;const Ld=async(e=!1)=>{if(Ih&&!e)return;if(Ih=!0,S0(),Z.getState().startAgentHealthCheck(),Z.getState().startSessionsIndexSync(),!(typeof globalThis<"u"&&"__vitest_worker__"in globalThis))try{await mt.getState().loadProviderInstances(),mt.getState().isInstancesLoaded||await mt.getState().loadProviderConfig()}catch(n){console.error("[AppStore] Failed to bootstrap provider state:",n)}await Z.getState().loadChats(),Dy=!0},Dd=async()=>{if(Dy)return Oi||(Oi=(async()=>{try{await N0()||await Z.getState().fetchModels(),await Z.getState().loadSystemPrompts()}catch(e){console.error("[AppStore] Deferred bootstrap failed:",e)}})(),Oi)},z0=async(e=!1)=>{await Ld(e),Dd().catch(t=>{console.error("[AppStore] Deferred bootstrap error:",t)})},lL=Object.freeze(Object.defineProperty({__proto__:null,bootstrapCritical:Ld,bootstrapDeferred:Dd,initializeStore:z0,selectActiveToolCalls:P0,selectCanCancel:Oy,selectChildren:Ul,selectChildrenSnapshot:M0,selectCurrentChat:Ly,selectCurrentMessages:F0,selectExecutionByPane:j0,selectExecutionPhase:k0,selectExecutionState:C0,selectGeneration:Ct,selectIsAwaitingUser:T0,selectIsBusy:si,selectIsInputLocked:Iy,selectIsStreaming:jy,selectPendingQuestion:so,selectRailModel:A0,selectRespondMode:E0,selectSessionById:mr,selectShouldObserve:Vn,useAppStore:Z},Symbol.toStringTag,{value:"Module"})),Fy="copilot_ui_layout_v1",Fd={collapsed:!1,widthPx:260,collapsedWidthPx:72,minWidthPx:180,maxWidthPx:520},zr={widthPx:520,minWidthPx:420,maxWidthPx:840},Ny={v:2,sidebar:Fd,inspector:zr,tree:{type:"leaf",id:"lt"},activeLeafId:"lt",leafSessionIds:{lt:null},splitSizesPx:{}},Oh=e=>{const t=typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now()}-${Math.random().toString(16).slice(2)}`;return`${e}-${t}`},Fn=e=>e.type==="leaf"?[e.id]:[...Fn(e.children[0]),...Fn(e.children[1])],Ya=e=>e.type==="leaf"?[]:[e.id,...Ya(e.children[0]),...Ya(e.children[1])],B0=(e,t)=>{for(const[n,r]of Object.entries(e))if(r===t)return n;return null},W0=(e,t)=>{const n={},r=new Set;return e.forEach(s=>{const o=t[s]??null;if(!o||r.has(o)){n[s]=null;return}r.add(o),n[s]=o}),n},$u=(e,t,n,r,s)=>e.type==="leaf"?e.id!==t?e:{type:"split",id:r,layout:n,children:[e,{type:"leaf",id:s}]}:{...e,children:[$u(e.children[0],t,n,r,s),$u(e.children[1],t,n,r,s)]},Lu=(e,t)=>{if(e.type==="leaf")return e.id===t?{node:null,removed:!0}:{node:e,removed:!1};const n=Lu(e.children[0],t);if(n.removed)return n.node?{node:{...e,children:[n.node,e.children[1]]},removed:!0}:{node:e.children[1],removed:!0};const r=Lu(e.children[1],t);return r.removed?r.node?{node:{...e,children:[e.children[0],r.node]},removed:!0}:{node:e.children[0],removed:!0}:{node:e,removed:!1}},U0=()=>{try{return localStorage.getItem(Fy)}catch(e){return console.warn("[uiLayoutStore] Failed to read persisted layout:",e),null}},q0=e=>({v:2,sidebar:e.sidebar,inspector:e.inspector,tree:e.tree,activeLeafId:e.activeLeafId,leafSessionIds:e.leafSessionIds,splitSizesPx:e.splitSizesPx}),H0=e=>{try{localStorage.setItem(Fy,JSON.stringify(e))}catch(t){console.warn("[uiLayoutStore] Failed to persist layout:",t)}},ar=e=>{const t=q0(e);return H0(t),t},X0=e=>{var g,w,m,x,k,C,E,T,P,A,O;const t={...Fd,...e.sidebar||{}},n={...zr},r=((g=e.view)==null?void 0:g.mode)??"single",s=((w=e.view)==null?void 0:w.twoDirection)??"horizontal",o={...((m=e.panes)==null?void 0:m.sessionIds)||{}},a=((x=e.panes)==null?void 0:x.activePaneId)??"lt",i={};if(r==="single")return{v:2,sidebar:t,inspector:n,tree:{type:"leaf",id:"lt"},activeLeafId:"lt",leafSessionIds:{lt:o.lt??null},splitSizesPx:{}};if(r==="two"){const $="split-root",U=s,J=U==="horizontal"?{type:"split",id:$,layout:U,children:[{type:"leaf",id:"lt"},{type:"leaf",id:"rt"}]}:{type:"split",id:$,layout:U,children:[{type:"leaf",id:"lt"},{type:"leaf",id:"lb"}]},ee=U==="horizontal"?((k=e.split)==null?void 0:k.twoHorizontalPx)||((C=e.split)==null?void 0:C.columnsPx)||null:((E=e.split)==null?void 0:E.twoVerticalPx)||((T=e.split)==null?void 0:T.leftRowsPx)||null;ee&&(i[$]=ee);const I=Fn(J);return{v:2,sidebar:t,inspector:n,tree:J,activeLeafId:I.includes(a)?a:I[0],leafSessionIds:Object.fromEntries(I.map(Y=>[Y,o[Y]??null])),splitSizesPx:i}}const c="split-root",d="split-left",f="split-right",p={type:"split",id:c,layout:"horizontal",children:[{type:"split",id:d,layout:"vertical",children:[{type:"leaf",id:"lt"},{type:"leaf",id:"lb"}]},{type:"split",id:f,layout:"vertical",children:[{type:"leaf",id:"rt"},{type:"leaf",id:"rb"}]}]};(P=e.split)!=null&&P.columnsPx&&(i[c]=e.split.columnsPx),(A=e.split)!=null&&A.leftRowsPx&&(i[d]=e.split.leftRowsPx),(O=e.split)!=null&&O.rightRowsPx&&(i[f]=e.split.rightRowsPx);const v=Fn(p);return{v:2,sidebar:t,inspector:n,tree:p,activeLeafId:v.includes(a)?a:v[0],leafSessionIds:Object.fromEntries(v.map($=>[$,o[$]??null])),splitSizesPx:i}},Y0=e=>{if(!e)return null;try{const t=JSON.parse(e);if(!t||typeof t!="object")return null;if(t.v===2){const n={...Fd,...t.sidebar||{}},r=t.inspector||{},s={...zr,...r},o=Math.max(zr.minWidthPx,Number.isFinite(s.minWidthPx)?s.minWidthPx:zr.minWidthPx),a=Math.max(o,Math.max(zr.maxWidthPx,Number.isFinite(s.maxWidthPx)?s.maxWidthPx:zr.maxWidthPx)),c={widthPx:Math.max(o,Math.min(a,Number.isFinite(s.widthPx)?s.widthPx:zr.widthPx)),minWidthPx:o,maxWidthPx:a},d=t.tree||Ny.tree,f=Fn(d),p=Ya(d),v={};f.forEach(x=>{var k;v[x]=typeof((k=t.leafSessionIds)==null?void 0:k[x])=="string"?t.leafSessionIds[x]:null});const g={};p.forEach(x=>{var C;const k=(C=t.splitSizesPx)==null?void 0:C[x];Array.isArray(k)&&k.length>=2&&(g[x]=[Number(k[0]),Number(k[1])])});const w=typeof t.activeLeafId=="string"&&f.includes(t.activeLeafId)?t.activeLeafId:f[0],m=W0(f,v);return{v:2,sidebar:n,inspector:c,tree:d,activeLeafId:w,leafSessionIds:m,splitSizesPx:g}}return t.v===1?X0(t):null}catch{return null}},K0=()=>Y0(U0())??Ny,ct=Xr(e=>({...K0(),setSidebarCollapsed:t=>{e(n=>n.sidebar.collapsed===t?n:ar({sidebar:{...n.sidebar,collapsed:t},inspector:n.inspector,tree:n.tree,activeLeafId:n.activeLeafId,leafSessionIds:n.leafSessionIds,splitSizesPx:n.splitSizesPx}))},setSidebarWidthPx:t=>{e(n=>{const r=Math.max(n.sidebar.minWidthPx,Math.min(n.sidebar.maxWidthPx,t));return n.sidebar.widthPx===r?n:ar({sidebar:{...n.sidebar,widthPx:r},inspector:n.inspector,tree:n.tree,activeLeafId:n.activeLeafId,leafSessionIds:n.leafSessionIds,splitSizesPx:n.splitSizesPx})})},setInspectorWidthPx:t=>{e(n=>{const r=Math.max(n.inspector.minWidthPx,Math.min(n.inspector.maxWidthPx,t));return n.inspector.widthPx===r?n:ar({sidebar:n.sidebar,inspector:{...n.inspector,widthPx:r},tree:n.tree,activeLeafId:n.activeLeafId,leafSessionIds:n.leafSessionIds,splitSizesPx:n.splitSizesPx})})},setActiveLeafId:t=>{e(n=>n.activeLeafId===t||!Fn(n.tree).includes(t)?n:(Dn("setActiveLeafId",{from:n.activeLeafId,to:t}),ar({sidebar:n.sidebar,inspector:n.inspector,tree:n.tree,activeLeafId:t,leafSessionIds:n.leafSessionIds,splitSizesPx:n.splitSizesPx})))},setLeafSessionId:(t,n)=>{e(r=>{const s=Fn(r.tree);if(!s.includes(t)||(r.leafSessionIds[t]??null)===n)return r;const o=[];Dn("setLeafSessionId",{leafId:t,fromSessionId:r.leafSessionIds[t]??null,toSessionId:n,mode:"unique_session_per_leaf"});const a={...r.leafSessionIds,[t]:n};if(n)for(const i of s)i!==t&&a[i]===n&&(a[i]=null,o.push(i));return o.length>0&&Dn("setLeafSessionId dedupe",{sessionId:n,clearedLeafIds:o,assignedLeafId:t}),s.forEach(i=>{i in a||(a[i]=null)}),ar({sidebar:r.sidebar,inspector:r.inspector,tree:r.tree,activeLeafId:r.activeLeafId,leafSessionIds:a,splitSizesPx:r.splitSizesPx})})},clearSessionFromAllLeaves:t=>{e(n=>{const r={...n.leafSessionIds};let s=!1;for(const[o,a]of Object.entries(r))a===t&&(r[o]=null,s=!0);return s?ar({sidebar:n.sidebar,inspector:n.inspector,tree:n.tree,activeLeafId:n.activeLeafId,leafSessionIds:r,splitSizesPx:n.splitSizesPx}):n})},splitLeaf:(t,n)=>{e(r=>{const s=Fn(r.tree);if(!s.includes(t)||s.length>=4)return r;const o=Oh("split"),a=Oh("pane"),i=$u(r.tree,t,n,o,a),c={...r.leafSessionIds,[a]:null};return ar({sidebar:r.sidebar,inspector:r.inspector,tree:i,activeLeafId:a,leafSessionIds:c,splitSizesPx:r.splitSizesPx})})},closeLeaf:t=>{e(n=>{const r=Fn(n.tree);if(!r.includes(t)||r.length<=1)return n;const s=Lu(n.tree,t);if(!s.removed||!s.node)return n;const o=s.node,a=Fn(o),i=Ya(o),c={};a.forEach(p=>{c[p]=n.leafSessionIds[p]??null});const d={};i.forEach(p=>{const v=n.splitSizesPx[p];v&&(d[p]=v)});const f=n.activeLeafId===t?a[0]:a.includes(n.activeLeafId)?n.activeLeafId:a[0];return ar({sidebar:n.sidebar,inspector:n.inspector,tree:o,activeLeafId:f,leafSessionIds:c,splitSizesPx:d})})},setSplitSizesPx:(t,n)=>{e(r=>{const s=r.splitSizesPx[t];return s&&s[0]===n[0]&&s[1]===n[1]?r:ar({sidebar:r.sidebar,inspector:r.inspector,tree:r.tree,activeLeafId:r.activeLeafId,leafSessionIds:r.leafSessionIds,splitSizesPx:{...r.splitSizesPx,[t]:n}})})},pruneSplitSizes:()=>{e(t=>{const n=new Set(Ya(t.tree)),r={};for(const[a,i]of Object.entries(t.splitSizesPx))n.has(a)&&(r[a]=i);const s=Object.keys(t.splitSizesPx),o=Object.keys(r);return s.length===o.length&&s.every(a=>a in r)?t:ar({sidebar:t.sidebar,inspector:t.inspector,tree:t.tree,activeLeafId:t.activeLeafId,leafSessionIds:t.leafSessionIds,splitSizesPx:r})})}})),V0=async(e,t)=>{var a;const n=Z.getState(),r=!n.chats.some(i=>i.id===e);if(t!=null&&t.forceRefreshIndex||r)try{await n.refreshChats()}catch(i){console.warn("[openSession] refreshChats failed:",i)}const s=Z.getState().chats.find(i=>i.id===e);if(!s)return;if(t!=null&&t.forceLoadHistory||r||(((a=s.messages)==null?void 0:a.length)||0)===0&&(s.messageCount||0)>0)try{await n.loadChatHistory(e)}catch(i){console.warn("[openSession] loadChatHistory failed:",i)}if(t!=null&&t.forceSubscribe){n.markForceSubscribe(e);return}((t==null?void 0:t.subscribeIfRunning)??!0)&&s.isRunning&&n.markForceSubscribe(e)},G0=(e,t)=>{const{activeLeafId:n,leafSessionIds:r,setLeafSessionId:s,setActiveLeafId:o}=ct.getState(),a=B0(r,e),i=r[n]??null;Dn("openSession (input)",{activeLeafId:n,activeLeafSessionId:i,sessionId:e,existingLeafId:a}),a?a===n?Dn("openSession (decision)",{action:"noop_already_active",leafId:n,sessionId:e}):(o(a),Dn("openSession (decision)",{action:"focus_existing_leaf",leafId:a,sessionId:e})):(s(n,e),Dn("openSession (decision)",{action:"assign_to_active_leaf",leafId:n,sessionId:e})),Z.getState().selectSession(e),V0(e,t)},zy=e=>e==="child"?"child":"root",J0=e=>({id:e.id,title:e.title,kind:zy(e.kind),pinned:!!e.pinned,parentSessionId:e.parentSessionId||null,rootSessionId:e.rootSessionId||null,createdByScheduleId:e.createdByScheduleId||null,updatedAt:e.updatedAt||null,lastRunStatus:e.lastRunStatus||null,lastRunError:e.lastRunError||null,createdAt:e.createdAt,config:{systemPromptId:e.config.systemPromptId,workspacePath:e.config.workspacePath||null}}),Q0=(e,t)=>e.id===t.id&&e.title===t.title&&e.kind===zy(t.kind)&&e.pinned===!!t.pinned&&e.parentSessionId===(t.parentSessionId||null)&&e.rootSessionId===(t.rootSessionId||null)&&e.createdByScheduleId===(t.createdByScheduleId||null)&&e.updatedAt===(t.updatedAt||null)&&e.lastRunStatus===(t.lastRunStatus||null)&&e.lastRunError===(t.lastRunError||null)&&e.createdAt===t.createdAt&&e.config.systemPromptId===t.config.systemPromptId&&e.config.workspacePath===(t.config.workspacePath||null),Z0=(()=>{let e=null,t=[],n=new Map;return r=>{if(r===e)return t;const s=r.map(a=>{const i=n.get(a.id);return i&&Q0(i,a)?i:J0(a)}),o=s.length===t.length&&s.every((a,i)=>a===t[i]);return e=r,n=new Map(s.map(a=>[a.id,a])),o?t:(t=s,s)}})(),eC=e=>[e.title,e.id,e.kind||"root",e.config.workspacePath||"",e.config.systemPromptId||"",e.updatedAt||"",e.createdByScheduleId||"",e.lastRunStatus||"",e.lastRunError||""].join(" ").toLowerCase(),tC=e=>e.messages.filter(t=>t.role==="user"&&"content"in t).slice(0,3).map(t=>"content"in t?t.content:"").join(" ").toLowerCase(),Fc=(e,t)=>{if(!t)return!0;const n=t.split(/\s+/).filter(Boolean),r=eC(e);if(n.every(i=>r.includes(i)))return!0;const s=Z.getState().chats.find(i=>i.id===e.id);if(!s)return!1;const o=tC(s),a=`${r} ${o}`;return n.every(i=>a.includes(i))},Nc=(e,t,n)=>{switch(t){case"pinned":return!!e.pinned;case"running":return n(e.id);case"child":return e.kind==="child";case"all":default:return!0}},nC=()=>{const{t:e}=qe(),{message:t}=Tn.useApp(),{chats:n,currentSessionId:r,deleteSession:s,deleteSessions:o,pinSession:a,unpinSession:i,updateSession:c,addChat:d,refreshChats:f,lastSelectedPromptId:p,systemPrompts:v}=Z(Da(he=>({chats:Z0(he.chats),currentSessionId:he.currentSessionId,deleteSession:he.deleteSession,deleteSessions:he.deleteSessions,pinSession:he.pinSession,unpinSession:he.unpinSession,updateSession:he.updateSession,addChat:he.addChat,refreshChats:he.refreshChats,lastSelectedPromptId:he.lastSelectedPromptId,systemPrompts:he.systemPrompts}))),g=S.useCallback(he=>si(he)(Z.getState()),[]),{sidebarCollapsed:w,setSidebarCollapsed:m,clearSessionFromAllLeaves:x}=ct(Da(he=>({sidebarCollapsed:he.sidebar.collapsed,setSidebarCollapsed:he.setSidebarCollapsed,clearSessionFromAllLeaves:he.clearSessionFromAllLeaves}))),k=S.useCallback(async(he,Ne)=>{var Dt,en;const Ie=v.find(tn=>tn.id===p),Je=(Ie==null?void 0:Ie.id)||(v.length>0?((Dt=v.find(tn=>tn.id==="general_assistant"))==null?void 0:Dt.id)||v[0].id:""),Wt={title:he||e("chat.sidebar.newSession"),createdAt:Date.now(),messages:[],config:{systemPromptId:Je,baseSystemPrompt:(Ie==null?void 0:Ie.content)||(v.length>0?((en=v.find(tn=>tn.id==="general_assistant"))==null?void 0:en.content)||v[0].content:""),lastUsedEnhancedPrompt:null},...Ne},yn=await d(Wt),{activeLeafId:Oe}=ct.getState();ct.getState().setLeafSessionId(Oe,yn),ct.getState().setActiveLeafId(Oe)},[d,p,v,e]),[C,E]=S.useState(!1),[T,P]=S.useState(new Set(["Today"])),[A,O]=S.useState(""),[$,U]=S.useState("all"),[J,ee]=S.useState({}),I=Z(Da(he=>{const Ne=he.currentSessionId;if(!Ne)return null;const Ie=he.chats.find(Je=>Je.id===Ne);return Ie?{id:Ie.id,kind:Ie.kind,parentSessionId:Ie.parentSessionId||null,rootSessionId:Ie.rootSessionId||null,pinned:!!Ie.pinned,createdAt:Ie.createdAt,createdByScheduleId:Ie.createdByScheduleId||null}:null})),Y=S.useMemo(()=>I?I.pinned?"Pinned":I.createdByScheduleId?"Scheduled":new Date(I.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"}):null,[I]),z=S.useMemo(()=>{const he=new Set(T);return Y&&he.add(Y),Array.from(he)},[Y,T]),D=he=>{const Ne=new Set(Array.isArray(he)?he:[he]);P(Ie=>{if(Ie.size!==Ne.size)return Ne;for(const Je of Ne)if(!Ie.has(Je))return Ne;return Ie})},ie=A.trim().toLowerCase(),Q=ie.length>0||$!=="all",ue=S.useMemo(()=>[],[]),me=S.useMemo(()=>({}),[]),V=S.useMemo(()=>({}),[]),ae=S.useMemo(()=>[],[]),ve=S.useMemo(()=>new Set,[]),re=S.useMemo(()=>w?ue:n.filter(he=>he.kind!=="child"),[n,w,ue]),le=S.useMemo(()=>{if(w)return me;const he={};for(const Ne of n){if(Ne.kind!=="child")continue;const Ie=Ne.parentSessionId||Ne.rootSessionId;Ie&&(he[Ie]||(he[Ie]=[]),he[Ie].push(Ne))}return Object.keys(he).forEach(Ne=>{he[Ne].sort((Ie,Je)=>Ie.pinned!==Je.pinned?Ie.pinned?-1:1:(Je.createdAt??0)-(Ie.createdAt??0))}),he},[n,w,me]),de=S.useMemo(()=>Q?re.filter(he=>Fc(he,ie)&&Nc(he,$,g)?!0:(le[he.id]||[]).some(Je=>Fc(Je,ie)&&Nc(Je,$,g))):re,[le,Q,g,ie,re,$]),pe=S.useMemo(()=>{if(!Q)return le;const he={};for(const Ne of de){const Ie=le[Ne.id]||[];he[Ne.id]=Ie.filter(Je=>Fc(Je,ie)&&Nc(Je,$,g))}return he},[le,de,Q,g,ie,$]),Ae=S.useMemo(()=>w?V:gx(de),[de,w,V]),Me=S.useMemo(()=>w?ae:yx(Ae),[Ae,w,ae]),F=S.useCallback(he=>{a(he),P(Ne=>{if(Ne.has("Pinned"))return Ne;const Ie=new Set(Ne);return Ie.add("Pinned"),Ie})},[a]),L=S.useCallback(he=>{const Ne=n.find(Je=>Je.id===he),Ie=Ne?bx({...Ne}):null;i(he),Ie&&P(Je=>{if(Je.has(Ie))return Je;const Wt=new Set(Je);return Wt.add(Ie),Wt})},[n,i]),fe=he=>{Zi.confirm({title:e("chat.sidebar.delete.title"),content:e("chat.sidebar.delete.confirm"),okText:e("common.delete"),okType:"danger",cancelText:e("common.cancel"),onOk:()=>{x(he),s(he)}})},Se=Fa(he=>he.open),De=()=>{Se("chat")},We=S.useCallback(he=>{O(he)},[]),Ge=S.useCallback(he=>{U(he)},[]),He=S.useCallback(()=>{O(""),U("all")},[]),at=(he,Ne)=>{c(he,{title:Ne})},St=S.useCallback(async he=>{try{await Pn.getInstance().regenerateSessionTitle(he)}catch(Ne){console.error("Failed to regenerate session title:",Ne)}},[]),Ot=S.useCallback(async he=>{var Ie;if(((Ie=J[he])==null?void 0:Ie.status)==="loading")return;ee(Je=>({...Je,[he]:{status:"loading"}}));const Ne=t.loading(e("chat.actions.runProjectDreamRunning"),0);try{const Je=await Pn.getInstance().runProjectDream(he);Ne(),Je.dream_generated?t.success(e("chat.actions.runProjectDreamSuccess")):t.info(Je.message||e("chat.actions.runProjectDreamNoChange"));try{await f()}catch(Wt){console.warn("Failed to refresh chats after project dream run:",Wt)}}catch(Je){Ne();const Wt=Je instanceof Error&&Je.message?Je.message:e("chat.actions.runProjectDreamFailed");t.error(Wt),console.error("Failed to run project dream:",Je)}finally{ee(Je=>({...Je,[he]:{status:"idle"}}))}},[t,J,f,e]),xt=he=>{const Ne=vx(Ae,he),Ie=ny(Ae,he);Zi.confirm({title:e("chat.sidebar.deleteByDate.title",{date:he}),content:e("chat.sidebar.deleteByDate.confirm",{count:Ie,date:he}),okText:e("common.delete"),okType:"danger",cancelText:e("common.cancel"),onOk:()=>{Ne.forEach(Je=>x(Je)),o(Ne)}})},Fe=()=>{E(!0)},lt=()=>{E(!1)},_t=async he=>{try{await k(e("chat.sidebar.newSessionWithPrompt",{prompt:he.name}),{config:{systemPromptId:he.id,baseSystemPrompt:he.content,lastUsedEnhancedPrompt:null}}),E(!1)}catch(Ne){console.error("Failed to create chat:",Ne),Zi.error({title:e("chat.sidebar.createFailedTitle"),content:Ne instanceof Error?Ne.message:e("chat.sidebar.createFailedUnknown")})}},Qt=S.useCallback(he=>G0(he),[]),[At,Tt]=S.useState(new Set),Ht=S.useMemo(()=>{if(w)return ve;const he=new Set;for(const Ne of Object.values(le))for(const Ie of Ne)if(Ie.pinned){const Je=Ie.parentSessionId||Ie.rootSessionId;Je&&he.add(Je)}return he},[le,w,ve]),$n=S.useMemo(()=>{var Ne;if(w)return ve;const he=new Set(At);if((I==null?void 0:I.kind)==="child"){const Ie=I.parentSessionId||I.rootSessionId;Ie&&he.add(Ie)}for(const Ie of Ht)he.add(Ie);if(Q)for(const Ie of de)(((Ne=pe[Ie.id])==null?void 0:Ne.length)??0)>0&&he.add(Ie.id);return he},[pe,At,de,Q,Ht,I,w,ve]),Zt=S.useCallback(he=>{Tt(Ne=>{const Ie=new Set(Ne);return Ie.has(he)?Ie.delete(he):Ie.add(he),Ie})},[]);return{chats:de,childrenByRoot:pe,expandedRootIds:$n,toggleRootExpanded:Zt,collapsed:w,currentSessionId:r,expandedKeys:z,groupedChatsByDate:Ae,hasActiveFilters:Q,handleCollapseChange:D,handleDelete:fe,handleDeleteByDate:xt,handleEditTitle:at,handleGenerateTitle:St,handleNewChat:Fe,handleNewChatSelectorClose:lt,handleOpenSettings:De,handleRunProjectDream:Ot,handleSearchQueryChange:We,handleStatusFilterChange:Ge,handleClearFilters:He,handleSystemPromptSelect:_t,isNewChatSelectorOpen:C,pinSession:F,projectDreamState:J,searchQuery:A,selectSession:Qt,setCollapsed:m,sortedDateKeys:Me,statusFilter:$,systemPrompts:v,titleGenerationState:{},unpinSession:L}},rC=S.lazy(()=>Lt(()=>import("./index-3D4SJ2Sq.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)),{useBreakpoint:sC}=zl,{useToken:oC}=st,$h=()=>{const{token:e}=oC(),{t}=qe(),n=sC(),{childrenByRoot:r,expandedRootIds:s,toggleRootExpanded:o,collapsed:a,currentSessionId:i,expandedKeys:c,groupedChatsByDate:d,handleCollapseChange:f,handleDelete:p,handleDeleteByDate:v,handleEditTitle:g,handleGenerateTitle:w,handleNewChat:m,handleNewChatSelectorClose:x,handleOpenSettings:k,handleRunProjectDream:C,handleSearchQueryChange:E,handleStatusFilterChange:T,handleClearFilters:P,handleSystemPromptSelect:A,hasActiveFilters:O,isNewChatSelectorOpen:$,pinSession:U,projectDreamState:J,searchQuery:ee,selectSession:I,setCollapsed:Y,sortedDateKeys:z,statusFilter:D,systemPrompts:ie,titleGenerationState:Q,unpinSession:ue}=nC(),{xs:me,sm:V}=n;return S.useEffect(()=>{typeof me!="boolean"||typeof V!="boolean"||me===!1&&V===!1&&Y(!0)},[V,me,Y]),a?null:l.jsxs("nav",{"data-tour-id":"sidebar","aria-label":t("chat.sidebar.title","Chat sidebar"),style:{width:"100%",height:"100%",background:"transparent",borderRight:`1px solid ${e.colorBorderSecondary}`,position:"relative",overflow:"hidden",display:"flex",flexDirection:"column",minHeight:0},children:[l.jsx(we,{justify:"flex-end",style:{flexShrink:0,padding:"8px 10px 0 10px",minHeight:34},children:l.jsx(Ee,{type:"text",icon:l.jsx(Rw,{}),onClick:()=>Y(!0),size:n.xs?"small":"middle",className:"lotus-toolbar-icon","aria-label":t("chat.sidebar.collapse","Collapse sidebar")})}),l.jsxs(we,{vertical:!0,gap:6,style:{flexShrink:0,padding:"6px 10px 6px 10px"},children:[l.jsx(Ts,{allowClear:!0,value:ee,onChange:ae=>E(ae.target.value),prefix:l.jsx(_u,{style:{color:e.colorTextTertiary}}),placeholder:t("chat.sidebar.searchPlaceholder","Search sessions"),"aria-label":t("chat.sidebar.searchPlaceholder","Search sessions"),size:"small",style:{borderRadius:e.borderRadiusLG}}),l.jsx(Aw,{block:!0,size:n.xs?"middle":"small",value:D,onChange:ae=>T(ae),options:[{label:t("chat.sidebar.filters.all","All"),value:"all"},{label:t("chat.sidebar.filters.pinned","Pinned"),value:"pinned"},{label:t("chat.sidebar.filters.running","Running"),value:"running"},{label:t("chat.sidebar.filters.child","Child"),value:"child"}]})]}),l.jsx(we,{vertical:!0,role:"list","aria-label":t("chat.sidebar.chatList","Chat list"),style:{flex:1,minHeight:0,overflowY:"auto",padding:"0 10px"},children:l.jsx(Sx,{groupedChatsByDate:d,childrenByRoot:r,expandedRootIds:s,onToggleRootExpanded:o,sortedDateKeys:z,expandedKeys:c,onCollapseChange:f,currentSessionId:i,onSelectChat:I,onDeleteChat:p,onDeleteByDate:v,onPinChat:U,onUnpinChat:ue,onEditTitle:g,onGenerateTitle:w,onRunProjectDream:C,titleGenerationState:Q,projectDreamState:J,token:e,hasActiveFilters:O,onClearFilters:P})}),l.jsx(Mx,{collapsed:!1,onNewChat:m,onOpenSettings:k,token:e}),l.jsx(S.Suspense,{fallback:null,children:l.jsx(rC,{open:$,onClose:x,onSelect:A,prompts:ie,title:t("chat.prompt.newSessionSelectorTitle"),showCancelButton:!0})})]})},{Text:Lh,Paragraph:aC}=ot;class Ka extends S.Component{constructor(n){super(n);vt(this,"handleReset",()=>{this.setState({hasError:!1,error:null})});this.state={hasError:!1,error:null}}static getDerivedStateFromError(n){return{hasError:!0,error:n}}componentDidCatch(n,r){var o,a;const s=this.props.name??"ErrorBoundary";console.error(`[${s}] Uncaught error:`,n,r),(a=(o=this.props).onError)==null||a.call(o,n,r)}render(){if(!this.state.hasError)return this.props.children;const{fallback:n}=this.props,r=this.state.error;return typeof n=="function"?n(r,this.handleReset):n!==void 0?n:l.jsx(iC,{error:r,onReset:this.handleReset})}}const iC=({error:e,onReset:t})=>{const{token:n}=st.useToken(),[r,s]=rt.useState(!1),{t:o}=qe();return l.jsxs("div",{role:"alert",style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:n.paddingLG,minHeight:200,textAlign:"center"},children:[l.jsx(Xg,{style:{fontSize:36,color:n.colorWarning}}),l.jsx(Lh,{strong:!0,style:{fontSize:16},children:o("app.errorBoundary.title")}),l.jsx(Lh,{type:"secondary",style:{maxWidth:420},children:o("app.errorBoundary.description")}),l.jsxs("div",{style:{display:"flex",gap:8,marginTop:4},children:[l.jsx(Ee,{type:"primary",icon:l.jsx(Cd,{}),onClick:t,"aria-label":o("app.errorBoundary.tryAgain"),children:o("app.errorBoundary.tryAgain")}),l.jsx(Ee,{type:"text",size:"small",onClick:()=>s(a=>!a),"aria-expanded":r,"aria-label":o("app.errorBoundary.showDetails"),children:o(r?"app.errorBoundary.hideDetails":"app.errorBoundary.showDetails")})]}),r&&l.jsxs(aC,{code:!0,copyable:!0,style:{maxWidth:560,maxHeight:200,overflow:"auto",fontSize:12,textAlign:"left",marginTop:8,background:n.colorFillTertiary,padding:n.paddingSM,borderRadius:n.borderRadius},children:[e.message,e.stack?`
13
+ `+M:""),this.inner=M||null):typeof _=="object"&&(this.message="".concat(_.name," ").concat(_.message),this.inner=_):(this.message=re[h]||y,this.inner=null)}return m(b).from(F),u[h]=b,u},{}),fe=(L.Syntax=SyntaxError,L.Type=TypeError,L.Range=RangeError,ve.reduce(function(u,h){return u[h+"Error"]=L[h],u},{}));ve=Tt.reduce(function(u,h){return["Syntax","Type","Range"].indexOf(h)===-1&&(u[h+"Error"]=L[h]),u},{});function Se(){}function De(u){return u}function We(u,h){return u==null||u===De?h:function(y){return h(u(y))}}function Ge(u,h){return function(){u.apply(this,arguments),h.apply(this,arguments)}}function He(u,h){return u===Se?h:function(){var y=u.apply(this,arguments),b=(y!==void 0&&(arguments[0]=y),this.onsuccess),_=this.onerror,M=(this.onsuccess=null,this.onerror=null,h.apply(this,arguments));return b&&(this.onsuccess=this.onsuccess?Ge(b,this.onsuccess):b),_&&(this.onerror=this.onerror?Ge(_,this.onerror):_),M!==void 0?M:y}}function at(u,h){return u===Se?h:function(){u.apply(this,arguments);var y=this.onsuccess,b=this.onerror;this.onsuccess=this.onerror=null,h.apply(this,arguments),y&&(this.onsuccess=this.onsuccess?Ge(y,this.onsuccess):y),b&&(this.onerror=this.onerror?Ge(b,this.onerror):b)}}function St(u,h){return u===Se?h:function(_){var b=u.apply(this,arguments),_=(c(_,b),this.onsuccess),M=this.onerror,R=(this.onsuccess=null,this.onerror=null,h.apply(this,arguments));return _&&(this.onsuccess=this.onsuccess?Ge(_,this.onsuccess):_),M&&(this.onerror=this.onerror?Ge(M,this.onerror):M),b===void 0?R===void 0?void 0:R:c(b,R)}}function Ot(u,h){return u===Se?h:function(){return h.apply(this,arguments)!==!1&&u.apply(this,arguments)}}function xt(u,h){return u===Se?h:function(){var y=u.apply(this,arguments);if(y&&typeof y.then=="function"){for(var b=this,_=arguments.length,M=new Array(_);_--;)M[_]=arguments[_];return y.then(function(){return h.apply(b,M)})}return h.apply(this,arguments)}}ve.ModifyError=pe,ve.DexieError=le,ve.BulkError=Ae;var Fe=typeof location<"u"&&/^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);function lt(u){Fe=u}var _t={},Qt=100,At=typeof Promise>"u"?[]:(Tt=Promise.resolve(),typeof crypto<"u"&&crypto.subtle?[At=crypto.subtle.digest("SHA-512",new Uint8Array([0])),d(At),Tt]:[Tt,d(Tt),Tt]),Tt=At[0],Is=At[1],Is=Is&&Is.then,Ht=Tt&&Tt.constructor,$n=!!At[2],Zt=function(u,h){Dt.push([u,h]),Ne&&(queueMicrotask(Es),Ne=!1)},he=!0,Ne=!0,Ie=[],Je=[],Wt=De,yn={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:Se,pgp:!1,env:{},finalize:Se},Oe=yn,Dt=[],en=0,tn=[];function Re(u){if(typeof this!="object")throw new TypeError("Promises must be constructed via new");this._listeners=[],this._lib=!1;var h=this._PSD=Oe;if(typeof u!="function"){if(u!==_t)throw new TypeError("Not a function");this._state=arguments[1],this._value=arguments[2],this._state===!1&&Pr(this,this._value)}else this._state=null,this._value=null,++h.ref,function y(b,_){try{_(function(M){if(b._state===null){if(M===b)throw new TypeError("A promise cannot be resolved with itself.");var R=b._lib&&Wn();M&&typeof M.then=="function"?y(b,function(j,B){M instanceof Re?M._then(j,B):M.then(j,B)}):(b._state=!0,b._value=M,Vr(b)),R&&Cn()}},Pr.bind(null,b))}catch(M){Pr(b,M)}}(this,u)}var Zn={get:function(){var u=Oe,h=gr;function y(b,_){var M=this,R=!u.global&&(u!==Oe||h!==gr),j=R&&!Un(),B=new Re(function(te,q){er(M,new Tr(Ft(b,u,R,j),Ft(_,u,R,j),te,q,u))});return this._consoleTask&&(B._consoleTask=this._consoleTask),B}return y.prototype=_t,y},set:function(u){w(this,"then",u&&u.prototype===_t?Zn:{get:function(){return u},set:Zn.set})}};function Tr(u,h,y,b,_){this.onFulfilled=typeof u=="function"?u:null,this.onRejected=typeof h=="function"?h:null,this.resolve=y,this.reject=b,this.psd=_}function Pr(u,h){var y,b;Je.push(h),u._state===null&&(y=u._lib&&Wn(),h=Wt(h),u._state=!1,u._value=h,b=u,Ie.some(function(_){return _._value===b._value})||Ie.push(b),Vr(u),y)&&Cn()}function Vr(u){var h=u._listeners;u._listeners=[];for(var y=0,b=h.length;y<b;++y)er(u,h[y]);var _=u._PSD;--_.ref||_.finalize(),en===0&&(++en,Zt(function(){--en==0&&tr()},[]))}function er(u,h){if(u._state===null)u._listeners.push(h);else{var y=u._state?h.onFulfilled:h.onRejected;if(y===null)return(u._state?h.resolve:h.reject)(u._value);++h.psd.ref,++en,Zt(po,[y,u,h])}}function po(u,h,y){try{var b,_=h._value;!h._state&&Je.length&&(Je=[]),b=Fe&&h._consoleTask?h._consoleTask.run(function(){return u(_)}):u(_),h._state||Je.indexOf(_)!==-1||(M=>{for(var R=Ie.length;R;)if(Ie[--R]._value===M._value)return Ie.splice(R,1)})(h),y.resolve(b)}catch(M){y.reject(M)}finally{--en==0&&tr(),--y.psd.ref||y.psd.finalize()}}function Es(){xe(yn,function(){Wn()&&Cn()})}function Wn(){var u=he;return Ne=he=!1,u}function Cn(){var u,h,y;do for(;0<Dt.length;)for(u=Dt,Dt=[],y=u.length,h=0;h<y;++h){var b=u[h];b[0].apply(null,b[1])}while(0<Dt.length);Ne=he=!0}function tr(){for(var u=Ie,h=(Ie=[],u.forEach(function(b){b._PSD.onunhandled.call(null,b._value,b)}),tn.slice(0)),y=h.length;y;)h[--y]()}function nr(u){return new Re(_t,!1,u)}function Ce(u,h){var y=Oe;return function(){var b=Wn(),_=Oe;try{return qn(y,!0),u.apply(this,arguments)}catch(M){h&&h(M)}finally{qn(_,!1),b&&Cn()}}}v(Re.prototype,{then:Zn,_then:function(u,h){er(this,new Tr(null,null,u,h,Oe))},catch:function(u){var h,y;return arguments.length===1?this.then(null,u):(h=u,y=arguments[1],typeof h=="function"?this.then(null,function(b){return(b instanceof h?y:nr)(b)}):this.then(null,function(b){return(b&&b.name===h?y:nr)(b)}))},finally:function(u){return this.then(function(h){return Re.resolve(u()).then(function(){return h})},function(h){return Re.resolve(u()).then(function(){return nr(h)})})},timeout:function(u,h){var y=this;return u<1/0?new Re(function(b,_){var M=setTimeout(function(){return _(new L.Timeout(h))},u);y.then(b,_).finally(clearTimeout.bind(null,M))}):this}}),typeof Symbol<"u"&&Symbol.toStringTag&&w(Re.prototype,Symbol.toStringTag,"Dexie.Promise"),yn.env=mo(),v(Re,{all:function(){var u=V.apply(null,arguments).map(Gr);return new Re(function(h,y){u.length===0&&h([]);var b=u.length;u.forEach(function(_,M){return Re.resolve(_).then(function(R){u[M]=R,--b||h(u)},y)})})},resolve:function(u){return u instanceof Re?u:u&&typeof u.then=="function"?new Re(function(h,y){u.then(h,y)}):new Re(_t,!0,u)},reject:nr,race:function(){var u=V.apply(null,arguments).map(Gr);return new Re(function(h,y){u.map(function(b){return Re.resolve(b).then(h,y)})})},PSD:{get:function(){return Oe},set:function(u){return Oe=u}},totalEchoes:{get:function(){return gr}},newPSD:rr,usePSD:xe,scheduler:{get:function(){return Zt},set:function(u){Zt=u}},rejectionMapper:{get:function(){return Wt},set:function(u){Wt=u}},follow:function(u,h){return new Re(function(y,b){return rr(function(_,M){var R=Oe;R.unhandleds=[],R.onunhandled=M,R.finalize=Ge(function(){var j,B=this;j=function(){B.unhandleds.length===0?_():M(B.unhandleds[0])},tn.push(function te(){j(),tn.splice(tn.indexOf(te),1)}),++en,Zt(function(){--en==0&&tr()},[])},R.finalize),u()},h,y,b)})}}),Ht&&(Ht.allSettled&&w(Re,"allSettled",function(){var u=V.apply(null,arguments).map(Gr);return new Re(function(h){u.length===0&&h([]);var y=u.length,b=new Array(y);u.forEach(function(_,M){return Re.resolve(_).then(function(R){return b[M]={status:"fulfilled",value:R}},function(R){return b[M]={status:"rejected",reason:R}}).then(function(){return--y||h(b)})})})}),Ht.any&&typeof AggregateError<"u"&&w(Re,"any",function(){var u=V.apply(null,arguments).map(Gr);return new Re(function(h,y){u.length===0&&y(new AggregateError([]));var b=u.length,_=new Array(b);u.forEach(function(M,R){return Re.resolve(M).then(function(j){return h(j)},function(j){_[R]=j,--b||y(new AggregateError(_))})})})}),Ht.withResolvers)&&(Re.withResolvers=Ht.withResolvers);var Xe={awaits:0,echoes:0,id:0},yt=0,Pt=[],nn=0,gr=0,fi=0;function rr(u,R,y,b){var _=Oe,M=Object.create(_),R=(M.parent=_,M.ref=0,M.global=!1,M.id=++fi,yn.env,M.env=$n?{Promise:Re,PromiseProp:{value:Re,configurable:!0,writable:!0},all:Re.all,race:Re.race,allSettled:Re.allSettled,any:Re.any,resolve:Re.resolve,reject:Re.reject}:{},R&&c(M,R),++_.ref,M.finalize=function(){--this.parent.ref||this.parent.finalize()},xe(M,u,y,b));return M.ref===0&&M.finalize(),R}function yr(){return Xe.id||(Xe.id=++yt),++Xe.awaits,Xe.echoes+=Qt,Xe.id}function Un(){return!!Xe.awaits&&(--Xe.awaits==0&&(Xe.id=0),Xe.echoes=Xe.awaits*Qt,!0)}function Gr(u){return Xe.echoes&&u&&u.constructor===Ht?(yr(),u.then(function(h){return Un(),h},function(h){return Un(),ft(h)})):u}function hi(){var u=Pt[Pt.length-1];Pt.pop(),qn(u,!1)}function qn(u,h){var y,b,_=Oe;(h?!Xe.echoes||nn++&&u===Oe:!nn||--nn&&u===Oe)||queueMicrotask(h?(function(M){++gr,Xe.echoes&&--Xe.echoes!=0||(Xe.echoes=Xe.awaits=Xe.id=0),Pt.push(Oe),qn(M,!0)}).bind(null,u):hi),u!==Oe&&(Oe=u,_===yn&&(yn.env=mo()),$n)&&(y=yn.env.Promise,b=u.env,_.global||u.global)&&(Object.defineProperty(o,"Promise",b.PromiseProp),y.all=b.all,y.race=b.race,y.resolve=b.resolve,y.reject=b.reject,b.allSettled&&(y.allSettled=b.allSettled),b.any)&&(y.any=b.any)}function mo(){var u=o.Promise;return $n?{Promise:u,PromiseProp:Object.getOwnPropertyDescriptor(o,"Promise"),all:u.all,race:u.race,allSettled:u.allSettled,any:u.any,resolve:u.resolve,reject:u.reject}:{}}function xe(u,h,y,b,_){var M=Oe;try{return qn(u,!0),h(y,b,_)}finally{qn(M,!1)}}function Ft(u,h,y,b){return typeof u!="function"?u:function(){var _=Oe;y&&yr(),qn(h,!0);try{return u.apply(this,arguments)}finally{qn(_,!1),b&&queueMicrotask(Un)}}}function Xt(u){Promise===Ht&&Xe.echoes===0?nn===0?u():enqueueNativeMicroTask(u):setTimeout(u,0)}(""+Is).indexOf("[native code]")===-1&&(yr=Un=Se);var ft=Re.reject,$t="￿",on="Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.",Hn="String expected.",vn="__dbnames",Ms="readonly",sr="readwrite";function bn(u,h){return u?h?function(){return u.apply(this,arguments)&&h.apply(this,arguments)}:u:h}var go={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function pi(u){return typeof u!="string"||/\./.test(u)?function(h){return h}:function(h){return h[u]===void 0&&u in h&&delete(h=Y(h))[u],h}}function Pf(){throw L.Type("Entity instances must never be new:ed. Instances are generated by the framework bypassing the constructor.")}function dt(u,h){try{var y=Ef(u),b=Ef(h);if(y!==b)return y==="Array"?1:b==="Array"?-1:y==="binary"?1:b==="binary"?-1:y==="string"?1:b==="string"?-1:y==="Date"?1:b!=="Date"?NaN:-1;switch(y){case"number":case"Date":case"string":return h<u?1:u<h?-1:0;case"binary":for(var _=Mf(u),M=Mf(h),R=_.length,j=M.length,B=R<j?R:j,te=0;te<B;++te)if(_[te]!==M[te])return _[te]<M[te]?-1:1;return R===j?0:R<j?-1:1;case"Array":for(var q=u,N=h,W=q.length,G=N.length,H=W<G?W:G,X=0;X<H;++X){var K=dt(q[X],N[X]);if(K!==0)return K}return W===G?0:W<G?-1:1}}catch{}return NaN}function Ef(u){var h=typeof u;return h=="object"&&(ArrayBuffer.isView(u)||(h=D(u))==="ArrayBuffer")?"binary":h}function Mf(u){return u instanceof Uint8Array?u:ArrayBuffer.isView(u)?new Uint8Array(u.buffer,u.byteOffset,u.byteLength):new Uint8Array(u)}function mi(u,h,y){var b=u.schema.yProps;return b?(h&&0<y.numFailures&&(h=h.filter(function(_,M){return!y.failures[M]})),Promise.all(b.map(function(_){return _=_.updatesTable,h?u.db.table(_).where("k").anyOf(h).delete():u.db.table(_).clear()})).then(function(){return y})):y}Rf.prototype.execute=function(u){var h=this["@@propmod"];if(h.add!==void 0){var y=h.add;if(i(y))return s(s([],i(u)?u:[],!0),y).sort();if(typeof y=="number")return(Number(u)||0)+y;if(typeof y=="bigint")try{return BigInt(u)+y}catch{return BigInt(0)+y}throw new TypeError("Invalid term ".concat(y))}if(h.remove!==void 0){var b=h.remove;if(i(b))return i(u)?u.filter(function(_){return!b.includes(_)}).sort():[];if(typeof b=="number")return Number(u)-b;if(typeof b=="bigint")try{return BigInt(u)-b}catch{return BigInt(0)-b}throw new TypeError("Invalid subtrahend ".concat(b))}return y=(y=h.replacePrefix)==null?void 0:y[0],y&&typeof u=="string"&&u.startsWith(y)?h.replacePrefix[1]+u.substring(y.length):u};var yo=Rf;function Rf(u){this["@@propmod"]=u}function Af(u,h){for(var y=a(h),b=y.length,_=!1,M=0;M<b;++M){var R=y[M],j=h[R],B=A(u,R);j instanceof yo?(O(u,R,j.execute(B)),_=!0):B!==j&&(O(u,R,j),_=!0)}return _}Mt.prototype._trans=function(u,h,y){var b=this._tx||Oe.trans,_=this.name,M=Fe&&typeof console<"u"&&console.createTask&&console.createTask("Dexie: ".concat(u==="readonly"?"read":"write"," ").concat(this.name));function R(te,q,N){if(N.schema[_])return h(N.idbtrans,N);throw new L.NotFound("Table "+_+" not part of transaction")}var j=Wn();try{var B=b&&b.db._novip===this.db._novip?b===Oe.trans?b._promise(u,R,y):rr(function(){return b._promise(u,R,y)},{trans:b,transless:Oe.transless||Oe}):function te(q,N,W,G){if(q.idbdb&&(q._state.openComplete||Oe.letThrough||q._vip)){var H=q._createTransaction(N,W,q._dbSchema);try{H.create(),q._state.PR1398_maxLoop=3}catch(X){return X.name===Me.InvalidState&&q.isOpen()&&0<--q._state.PR1398_maxLoop?(console.warn("Dexie: Need to reopen db"),q.close({disableAutoOpen:!1}),q.open().then(function(){return te(q,N,W,G)})):ft(X)}return H._promise(N,function(X,K){return rr(function(){return Oe.trans=H,G(X,K,H)})}).then(function(X){if(N==="readwrite")try{H.idbtrans.commit()}catch{}return N==="readonly"?X:H._completion.then(function(){return X})})}if(q._state.openComplete)return ft(new L.DatabaseClosed(q._state.dbOpenError));if(!q._state.isBeingOpened){if(!q._state.autoOpen)return ft(new L.DatabaseClosed);q.open().catch(Se)}return q._state.dbReadyPromise.then(function(){return te(q,N,W,G)})}(this.db,u,[this.name],R);return M&&(B._consoleTask=M,B=B.catch(function(te){return console.trace(te),ft(te)})),B}finally{j&&Cn()}},Mt.prototype.get=function(u,h){var y=this;return u&&u.constructor===Object?this.where(u).first(h):u==null?ft(new L.Type("Invalid argument to Table.get()")):this._trans("readonly",function(b){return y.core.get({trans:b,key:u}).then(function(_){return y.hook.reading.fire(_)})}).then(h)},Mt.prototype.where=function(u){if(typeof u=="string")return new this.db.WhereClause(this,u);if(i(u))return new this.db.WhereClause(this,"[".concat(u.join("+"),"]"));var h=a(u);if(h.length===1)return this.where(h[0]).equals(u[h[0]]);var y=this.schema.indexes.concat(this.schema.primKey).filter(function(j){if(j.compound&&h.every(function(te){return 0<=j.keyPath.indexOf(te)})){for(var B=0;B<h.length;++B)if(h.indexOf(j.keyPath[B])===-1)return!1;return!0}return!1}).sort(function(j,B){return j.keyPath.length-B.keyPath.length})[0];if(y&&this.db._maxKey!==$t)return R=y.keyPath.slice(0,h.length),this.where(R).equals(R.map(function(j){return u[j]}));!y&&Fe&&console.warn("The query ".concat(JSON.stringify(u)," on ").concat(this.name," would benefit from a ")+"compound index [".concat(h.join("+"),"]"));var b=this.schema.idxByName;function _(j,B){return dt(j,B)===0}var R=h.reduce(function(q,B){var te=q[0],q=q[1],N=b[B],W=u[B];return[te||N,te||!N?bn(q,N&&N.multi?function(G){return G=A(G,B),i(G)&&G.some(function(H){return _(W,H)})}:function(G){return _(W,A(G,B))}):q]},[null,null]),M=R[0],R=R[1];return M?this.where(M.name).equals(u[M.keyPath]).filter(R):y?this.filter(R):this.where(h).equals("")},Mt.prototype.filter=function(u){return this.toCollection().and(u)},Mt.prototype.count=function(u){return this.toCollection().count(u)},Mt.prototype.offset=function(u){return this.toCollection().offset(u)},Mt.prototype.limit=function(u){return this.toCollection().limit(u)},Mt.prototype.each=function(u){return this.toCollection().each(u)},Mt.prototype.toArray=function(u){return this.toCollection().toArray(u)},Mt.prototype.toCollection=function(){return new this.db.Collection(new this.db.WhereClause(this))},Mt.prototype.orderBy=function(u){return new this.db.Collection(new this.db.WhereClause(this,i(u)?"[".concat(u.join("+"),"]"):u))},Mt.prototype.reverse=function(){return this.toCollection().reverse()},Mt.prototype.mapToClass=function(u){for(var h=this.db,y=this.name,b=((this.schema.mappedClass=u).prototype instanceof Pf&&(u=(R=>{var j=q,B=R;if(typeof B!="function"&&B!==null)throw new TypeError("Class extends value "+String(B)+" is not a constructor or null");function te(){this.constructor=j}function q(){return R!==null&&R.apply(this,arguments)||this}return n(j,B),j.prototype=B===null?Object.create(B):(te.prototype=B.prototype,new te),Object.defineProperty(q.prototype,"db",{get:function(){return h},enumerable:!1,configurable:!0}),q.prototype.table=function(){return y},q})(u)),new Set),_=u.prototype;_;_=d(_))Object.getOwnPropertyNames(_).forEach(function(R){return b.add(R)});function M(R){if(!R)return R;var j,B=Object.create(u.prototype);for(j in R)if(!b.has(j))try{B[j]=R[j]}catch{}return B}return this.schema.readHook&&this.hook.reading.unsubscribe(this.schema.readHook),this.schema.readHook=M,this.hook("reading",M),u},Mt.prototype.defineClass=function(){return this.mapToClass(function(u){c(this,u)})},Mt.prototype.add=function(u,h){var y=this,b=this.schema.primKey,_=b.auto,M=b.keyPath,R=u;return M&&_&&(R=pi(M)(u)),this._trans("readwrite",function(j){return y.core.mutate({trans:j,type:"add",keys:h!=null?[h]:null,values:[R]})}).then(function(j){return j.numFailures?Re.reject(j.failures[0]):j.lastResult}).then(function(j){if(M)try{O(u,M,j)}catch{}return j})},Mt.prototype.upsert=function(u,h){var y=this,b=this.schema.primKey.keyPath;return this._trans("readwrite",function(_){return y.core.get({trans:_,key:u}).then(function(M){var R=M??{};return Af(R,h),b&&O(R,b,u),y.core.mutate({trans:_,type:"put",values:[R],keys:[u],upsert:!0,updates:{keys:[u],changeSpecs:[h]}}).then(function(j){return j.numFailures?Re.reject(j.failures[0]):!!M})})})},Mt.prototype.update=function(u,h){return typeof u!="object"||i(u)?this.where(":id").equals(u).modify(h):(u=A(u,this.schema.primKey.keyPath))===void 0?ft(new L.InvalidArgument("Given object does not contain its primary key")):this.where(":id").equals(u).modify(h)},Mt.prototype.put=function(u,h){var y=this,b=this.schema.primKey,_=b.auto,M=b.keyPath,R=u;return M&&_&&(R=pi(M)(u)),this._trans("readwrite",function(j){return y.core.mutate({trans:j,type:"put",values:[R],keys:h!=null?[h]:null})}).then(function(j){return j.numFailures?Re.reject(j.failures[0]):j.lastResult}).then(function(j){if(M)try{O(u,M,j)}catch{}return j})},Mt.prototype.delete=function(u){var h=this;return this._trans("readwrite",function(y){return h.core.mutate({trans:y,type:"delete",keys:[u]}).then(function(b){return mi(h,[u],b)}).then(function(b){return b.numFailures?Re.reject(b.failures[0]):void 0})})},Mt.prototype.clear=function(){var u=this;return this._trans("readwrite",function(h){return u.core.mutate({trans:h,type:"deleteRange",range:go}).then(function(y){return mi(u,null,y)})}).then(function(h){return h.numFailures?Re.reject(h.failures[0]):void 0})},Mt.prototype.bulkGet=function(u){var h=this;return this._trans("readonly",function(y){return h.core.getMany({keys:u,trans:y}).then(function(b){return b.map(function(_){return h.hook.reading.fire(_)})})})},Mt.prototype.bulkAdd=function(u,h,y){var b=this,_=Array.isArray(h)?h:void 0,M=(y=y||(_?void 0:h))?y.allKeys:void 0;return this._trans("readwrite",function(R){var j=b.schema.primKey,te=j.auto,j=j.keyPath;if(j&&_)throw new L.InvalidArgument("bulkAdd(): keys argument invalid on tables with inbound keys");if(_&&_.length!==u.length)throw new L.InvalidArgument("Arguments objects and keys must have the same length");var B=u.length,te=j&&te?u.map(pi(j)):u;return b.core.mutate({trans:R,type:"add",keys:_,values:te,wantResults:M}).then(function(q){var N=q.numFailures,W=q.failures;if(N===0)return M?q.results:q.lastResult;throw new Ae("".concat(b.name,".bulkAdd(): ").concat(N," of ").concat(B," operations failed"),W)})})},Mt.prototype.bulkPut=function(u,h,y){var b=this,_=Array.isArray(h)?h:void 0,M=(y=y||(_?void 0:h))?y.allKeys:void 0;return this._trans("readwrite",function(R){var j=b.schema.primKey,te=j.auto,j=j.keyPath;if(j&&_)throw new L.InvalidArgument("bulkPut(): keys argument invalid on tables with inbound keys");if(_&&_.length!==u.length)throw new L.InvalidArgument("Arguments objects and keys must have the same length");var B=u.length,te=j&&te?u.map(pi(j)):u;return b.core.mutate({trans:R,type:"put",keys:_,values:te,wantResults:M}).then(function(q){var N=q.numFailures,W=q.failures;if(N===0)return M?q.results:q.lastResult;throw new Ae("".concat(b.name,".bulkPut(): ").concat(N," of ").concat(B," operations failed"),W)})})},Mt.prototype.bulkUpdate=function(u){var h=this,y=this.core,b=u.map(function(R){return R.key}),_=u.map(function(R){return R.changes}),M=[];return this._trans("readwrite",function(R){return y.getMany({trans:R,keys:b,cache:"clone"}).then(function(j){var B=[],te=[],q=(u.forEach(function(N,W){var G=N.key,H=N.changes,X=j[W];if(X){for(var K=0,oe=Object.keys(H);K<oe.length;K++){var ne=oe[K],ce=H[ne];if(ne===h.schema.primKey.keyPath){if(dt(ce,G)!==0)throw new L.Constraint("Cannot update primary key in bulkUpdate()")}else O(X,ne,ce)}M.push(W),B.push(G),te.push(X)}}),B.length);return y.mutate({trans:R,type:"put",keys:B,values:te,updates:{keys:b,changeSpecs:_}}).then(function(N){var W=N.numFailures,G=N.failures;if(W===0)return q;for(var H=0,X=Object.keys(G);H<X.length;H++){var K,oe=X[H],ne=M[Number(oe)];ne!=null&&(K=G[oe],delete G[oe],G[ne]=K)}throw new Ae("".concat(h.name,".bulkUpdate(): ").concat(W," of ").concat(q," operations failed"),G)})})})},Mt.prototype.bulkDelete=function(u){var h=this,y=u.length;return this._trans("readwrite",function(b){return h.core.mutate({trans:b,type:"delete",keys:u}).then(function(_){return mi(h,u,_)})}).then(function(b){var _=b.numFailures,M=b.failures;if(_===0)return b.lastResult;throw new Ae("".concat(h.name,".bulkDelete(): ").concat(_," of ").concat(y," operations failed"),M)})};var jf=Mt;function Mt(){}function vo(u){function h(R,j){if(j){for(var B=arguments.length,te=new Array(B-1);--B;)te[B-1]=arguments[B];return y[R].subscribe.apply(null,te),u}if(typeof R=="string")return y[R]}var y={};h.addEventType=M;for(var b=1,_=arguments.length;b<_;++b)M(arguments[b]);return h;function M(R,j,B){var te,q;if(typeof R!="object")return j=j||Ot,q={subscribers:[],fire:B=B||Se,subscribe:function(N){q.subscribers.indexOf(N)===-1&&(q.subscribers.push(N),q.fire=j(q.fire,N))},unsubscribe:function(N){q.subscribers=q.subscribers.filter(function(W){return W!==N}),q.fire=q.subscribers.reduce(j,B)}},y[R]=h[R]=q;a(te=R).forEach(function(N){var W=te[N];if(i(W))M(N,te[N][0],te[N][1]);else{if(W!=="asap")throw new L.InvalidArgument("Invalid event config");var G=M(N,De,function(){for(var H=arguments.length,X=new Array(H);H--;)X[H]=arguments[H];G.subscribers.forEach(function(K){P(function(){K.apply(null,X)})})})}})}}function bo(u,h){return m(h).from({prototype:u}),h}function Rs(u,h){return!(u.filter||u.algorithm||u.or)&&(h?u.justLimit:!u.replayFilter)}function sc(u,h){u.filter=bn(u.filter,h)}function oc(u,h,y){var b=u.replayFilter;u.replayFilter=b?function(){return bn(b(),h())}:h,u.justLimit=y&&!b}function gi(u,h){if(u.isPrimKey)return h.primaryKey;var y=h.getIndexByKeyPath(u.index);if(y)return y;throw new L.Schema("KeyPath "+u.index+" on object store "+h.name+" is not indexed")}function If(u,h,y){var b=gi(u,h.schema);return h.openCursor({trans:y,values:!u.keysOnly,reverse:u.dir==="prev",unique:!!u.unique,query:{index:b,range:u.range}})}function yi(u,h,y,b){var _,M,R=u.replayFilter?bn(u.filter,u.replayFilter()):u.filter;return u.or?(_={},M=function(j,B,te){var q,N;R&&!R(B,te,function(W){return B.stop(W)},function(W){return B.fail(W)})||((N=""+(q=B.primaryKey))=="[object ArrayBuffer]"&&(N=""+new Uint8Array(q)),p(_,N))||(_[N]=!0,h(j,B,te))},Promise.all([u.or._iterate(M,y),Of(If(u,b,y),u.algorithm,M,!u.keysOnly&&u.valueMapper)])):Of(If(u,b,y),bn(u.algorithm,R),h,!u.keysOnly&&u.valueMapper)}function Of(u,h,y,b){var _=Ce(b?function(M,R,j){return y(b(M),R,j)}:y);return u.then(function(M){if(M)return M.start(function(){var R=function(){return M.continue()};h&&!h(M,function(j){return R=j},function(j){M.stop(j),R=Se},function(j){M.fail(j),R=Se})||_(M.value,M,function(j){return R=j}),R()})})}gt.prototype._read=function(u,h){var y=this._ctx;return y.error?y.table._trans(null,ft.bind(null,y.error)):y.table._trans("readonly",u).then(h)},gt.prototype._write=function(u){var h=this._ctx;return h.error?h.table._trans(null,ft.bind(null,h.error)):h.table._trans("readwrite",u,"locked")},gt.prototype._addAlgorithm=function(u){var h=this._ctx;h.algorithm=bn(h.algorithm,u)},gt.prototype._iterate=function(u,h){return yi(this._ctx,u,h,this._ctx.table.core)},gt.prototype.clone=function(u){var h=Object.create(this.constructor.prototype),y=Object.create(this._ctx);return u&&c(y,u),h._ctx=y,h},gt.prototype.raw=function(){return this._ctx.valueMapper=null,this},gt.prototype.each=function(u){var h=this._ctx;return this._read(function(y){return yi(h,u,y,h.table.core)})},gt.prototype.count=function(u){var h=this;return this._read(function(y){var b,_=h._ctx,M=_.table.core;return Rs(_,!0)?M.count({trans:y,query:{index:gi(_,M.schema),range:_.range}}).then(function(R){return Math.min(R,_.limit)}):(b=0,yi(_,function(){return++b,!1},y,M).then(function(){return b}))}).then(u)},gt.prototype.sortBy=function(u,h){var y=u.split(".").reverse(),b=y[0],_=y.length-1;function M(B,te){return te?M(B[y[te]],te-1):B[b]}var R=this._ctx.dir==="next"?1:-1;function j(B,te){return dt(M(B,_),M(te,_))*R}return this.toArray(function(B){return B.sort(j)}).then(h)},gt.prototype.toArray=function(u){var h=this;return this._read(function(y){var b,_,M,R=h._ctx;return Rs(R,!0)&&0<R.limit?(b=R.valueMapper,_=gi(R,R.table.core.schema),R.table.core.query({trans:y,limit:R.limit,values:!0,direction:R.dir==="prev"?"prev":void 0,query:{index:_,range:R.range}}).then(function(j){return j=j.result,b?j.map(b):j})):(M=[],yi(R,function(j){return M.push(j)},y,R.table.core).then(function(){return M}))},u)},gt.prototype.offset=function(u){var h=this._ctx;return u<=0||(h.offset+=u,Rs(h)?oc(h,function(){var y=u;return function(b,_){return y===0||(y===1?--y:_(function(){b.advance(y),y=0}),!1)}}):oc(h,function(){var y=u;return function(){return--y<0}})),this},gt.prototype.limit=function(u){return this._ctx.limit=Math.min(this._ctx.limit,u),oc(this._ctx,function(){var h=u;return function(y,b,_){return--h<=0&&b(_),0<=h}},!0),this},gt.prototype.until=function(u,h){return sc(this._ctx,function(y,b,_){return!u(y.value)||(b(_),h)}),this},gt.prototype.first=function(u){return this.limit(1).toArray(function(h){return h[0]}).then(u)},gt.prototype.last=function(u){return this.reverse().first(u)},gt.prototype.filter=function(u){var h;return sc(this._ctx,function(y){return u(y.value)}),(h=this._ctx).isMatch=bn(h.isMatch,u),this},gt.prototype.and=function(u){return this.filter(u)},gt.prototype.or=function(u){return new this.db.WhereClause(this._ctx.table,u,this)},gt.prototype.reverse=function(){return this._ctx.dir=this._ctx.dir==="prev"?"next":"prev",this._ondirectionchange&&this._ondirectionchange(this._ctx.dir),this},gt.prototype.desc=function(){return this.reverse()},gt.prototype.eachKey=function(u){var h=this._ctx;return h.keysOnly=!h.isMatch,this.each(function(y,b){u(b.key,b)})},gt.prototype.eachUniqueKey=function(u){return this._ctx.unique="unique",this.eachKey(u)},gt.prototype.eachPrimaryKey=function(u){var h=this._ctx;return h.keysOnly=!h.isMatch,this.each(function(y,b){u(b.primaryKey,b)})},gt.prototype.keys=function(u){var h=this._ctx,y=(h.keysOnly=!h.isMatch,[]);return this.each(function(b,_){y.push(_.key)}).then(function(){return y}).then(u)},gt.prototype.primaryKeys=function(u){var h=this._ctx;if(Rs(h,!0)&&0<h.limit)return this._read(function(b){var _=gi(h,h.table.core.schema);return h.table.core.query({trans:b,values:!1,limit:h.limit,direction:h.dir==="prev"?"prev":void 0,query:{index:_,range:h.range}})}).then(function(b){return b.result}).then(u);h.keysOnly=!h.isMatch;var y=[];return this.each(function(b,_){y.push(_.primaryKey)}).then(function(){return y}).then(u)},gt.prototype.uniqueKeys=function(u){return this._ctx.unique="unique",this.keys(u)},gt.prototype.firstKey=function(u){return this.limit(1).keys(function(h){return h[0]}).then(u)},gt.prototype.lastKey=function(u){return this.reverse().firstKey(u)},gt.prototype.distinct=function(){var u,h=this._ctx,h=h.index&&h.table.schema.idxByName[h.index];return h&&h.multi&&(u={},sc(this._ctx,function(b){var b=b.primaryKey.toString(),_=p(u,b);return u[b]=!0,!_})),this},gt.prototype.modify=function(u){var h=this,y=this._ctx;return this._write(function(b){function _(X,K){var oe=K.failures;W+=X-K.numFailures;for(var ne=0,ce=a(oe);ne<ce.length;ne++){var ge=ce[ne];N.push(oe[ge])}}var M=typeof u=="function"?u:function(X){return Af(X,u)},R=y.table.core,q=R.schema.primaryKey,j=q.outbound,B=q.extractKey,te=200,q=h.db._options.modifyChunkSize,N=(q&&(te=typeof q=="object"?q[R.name]||q["*"]||200:q),[]),W=0,G=[],H=u===$f;return h.clone().primaryKeys().then(function(X){function K(ne){var ce=Math.min(te,X.length-ne),ge=X.slice(ne,ne+ce);return(H?Promise.resolve([]):R.getMany({trans:b,keys:ge,cache:"immutable"})).then(function(be){var Pe=[],_e=[],$e=j?[]:null,Te=H?ge:[];if(!H)for(var Le=0;Le<ce;++Le){var ye=be[Le],Qe={value:Y(ye),primKey:X[ne+Le]};M.call(Qe,Qe.value,Qe)!==!1&&(Qe.value==null?Te.push(X[ne+Le]):j||dt(B(ye),B(Qe.value))===0?(_e.push(Qe.value),j&&$e.push(X[ne+Le])):(Te.push(X[ne+Le]),Pe.push(Qe.value)))}return Promise.resolve(0<Pe.length&&R.mutate({trans:b,type:"add",values:Pe}).then(function(Ze){for(var nt in Ze.failures)Te.splice(parseInt(nt),1);_(Pe.length,Ze)})).then(function(){return(0<_e.length||oe&&typeof u=="object")&&R.mutate({trans:b,type:"put",keys:$e,values:_e,criteria:oe,changeSpec:typeof u!="function"&&u,isAdditionalChunk:0<ne}).then(function(Ze){return _(_e.length,Ze)})}).then(function(){return(0<Te.length||oe&&H)&&R.mutate({trans:b,type:"delete",keys:Te,criteria:oe,isAdditionalChunk:0<ne}).then(function(Ze){return mi(y.table,Te,Ze)}).then(function(Ze){return _(Te.length,Ze)})}).then(function(){return X.length>ne+ce&&K(ne+te)})})}var oe=Rs(y)&&y.limit===1/0&&(typeof u!="function"||H)&&{index:y.index,range:y.range};return K(0).then(function(){if(0<N.length)throw new pe("Error modifying one or more objects",N,W,G);return X.length})})})},gt.prototype.delete=function(){var u=this._ctx,h=u.range;return!Rs(u)||u.table.schema.yProps||!u.isPrimKey&&h.type!==3?this.modify($f):this._write(function(y){var b=u.table.core.schema.primaryKey,_=h;return u.table.core.count({trans:y,query:{index:b,range:_}}).then(function(M){return u.table.core.mutate({trans:y,type:"deleteRange",range:_}).then(function(B){var j=B.failures,B=B.numFailures;if(B)throw new pe("Could not delete some values",Object.keys(j).map(function(te){return j[te]}),M-B);return M-B})})})};var GS=gt;function gt(){}var $f=function(u,h){return h.value=null};function JS(u,h){return u<h?-1:u===h?0:1}function QS(u,h){return h<u?-1:u===h?0:1}function En(u,h,y){return u=u instanceof Df?new u.Collection(u):u,u._ctx.error=new(y||TypeError)(h),u}function As(u){return new u.Collection(u,function(){return Lf("")}).limit(0)}function vi(G,h,y,b){var _,M,R,j,B,te,q,N=y.length;if(!y.every(function(X){return typeof X=="string"}))return En(G,Hn);function W(X){_=X==="next"?function(oe){return oe.toUpperCase()}:function(oe){return oe.toLowerCase()},M=X==="next"?function(oe){return oe.toLowerCase()}:function(oe){return oe.toUpperCase()},R=X==="next"?JS:QS;var K=y.map(function(oe){return{lower:M(oe),upper:_(oe)}}).sort(function(oe,ne){return R(oe.lower,ne.lower)});j=K.map(function(oe){return oe.upper}),B=K.map(function(oe){return oe.lower}),q=(te=X)==="next"?"":b}W("next");var G=new G.Collection(G,function(){return Er(j[0],B[N-1]+b)}),H=(G._ondirectionchange=function(X){W(X)},0);return G._addAlgorithm(function(X,K,oe){var ne=X.key;if(typeof ne=="string"){var ce=M(ne);if(h(ce,B,H))return!0;for(var ge=null,be=H;be<N;++be){var Pe=((_e,$e,Te,Le,ye,Qe)=>{for(var Ze=Math.min(_e.length,Le.length),nt=-1,ut=0;ut<Ze;++ut){var Mn=$e[ut];if(Mn!==Le[ut])return ye(_e[ut],Te[ut])<0?_e.substr(0,ut)+Te[ut]+Te.substr(ut+1):ye(_e[ut],Le[ut])<0?_e.substr(0,ut)+Le[ut]+Te.substr(ut+1):0<=nt?_e.substr(0,nt)+$e[nt]+Te.substr(nt+1):null;ye(_e[ut],Mn)<0&&(nt=ut)}return Ze<Le.length&&Qe==="next"?_e+Te.substr(_e.length):Ze<_e.length&&Qe==="prev"?_e.substr(0,Te.length):nt<0?null:_e.substr(0,nt)+Le[nt]+Te.substr(nt+1)})(ne,ce,j[be],B[be],R,te);Pe===null&&ge===null?H=be+1:(ge===null||0<R(ge,Pe))&&(ge=Pe)}K(ge!==null?function(){X.continue(ge+q)}:oe)}return!1}),G}function Er(u,h,y,b){return{type:2,lower:u,upper:h,lowerOpen:y,upperOpen:b}}function Lf(u){return{type:1,lower:u,upper:u}}Object.defineProperty(rn.prototype,"Collection",{get:function(){return this._ctx.table.db.Collection},enumerable:!1,configurable:!0}),rn.prototype.between=function(u,h,y,b){y=y!==!1,b=b===!0;try{return 0<this._cmp(u,h)||this._cmp(u,h)===0&&(y||b)&&(!y||!b)?As(this):new this.Collection(this,function(){return Er(u,h,!y,!b)})}catch{return En(this,on)}},rn.prototype.equals=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Lf(u)})},rn.prototype.above=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Er(u,void 0,!0)})},rn.prototype.aboveOrEqual=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Er(u,void 0,!1)})},rn.prototype.below=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Er(void 0,u,!1,!0)})},rn.prototype.belowOrEqual=function(u){return u==null?En(this,on):new this.Collection(this,function(){return Er(void 0,u)})},rn.prototype.startsWith=function(u){return typeof u!="string"?En(this,Hn):this.between(u,u+$t,!0,!0)},rn.prototype.startsWithIgnoreCase=function(u){return u===""?this.startsWith(u):vi(this,function(h,y){return h.indexOf(y[0])===0},[u],$t)},rn.prototype.equalsIgnoreCase=function(u){return vi(this,function(h,y){return h===y[0]},[u],"")},rn.prototype.anyOfIgnoreCase=function(){var u=V.apply(me,arguments);return u.length===0?As(this):vi(this,function(h,y){return y.indexOf(h)!==-1},u,"")},rn.prototype.startsWithAnyOfIgnoreCase=function(){var u=V.apply(me,arguments);return u.length===0?As(this):vi(this,function(h,y){return y.some(function(b){return h.indexOf(b)===0})},u,$t)},rn.prototype.anyOf=function(){var u,h,y=this,b=V.apply(me,arguments),_=this._cmp;try{b.sort(_)}catch{return En(this,on)}return b.length===0?As(this):((u=new this.Collection(this,function(){return Er(b[0],b[b.length-1])}))._ondirectionchange=function(M){_=M==="next"?y._ascending:y._descending,b.sort(_)},h=0,u._addAlgorithm(function(M,R,j){for(var B=M.key;0<_(B,b[h]);)if(++h===b.length)return R(j),!1;return _(B,b[h])===0||(R(function(){M.continue(b[h])}),!1)}),u)},rn.prototype.notEqual=function(u){return this.inAnyRange([[-1/0,u],[u,this.db._maxKey]],{includeLowers:!1,includeUppers:!1})},rn.prototype.noneOf=function(){var u=V.apply(me,arguments);if(u.length===0)return new this.Collection(this);try{u.sort(this._ascending)}catch{return En(this,on)}var h=u.reduce(function(y,b){return y?y.concat([[y[y.length-1][1],b]]):[[-1/0,b]]},null);return h.push([u[u.length-1],this.db._maxKey]),this.inAnyRange(h,{includeLowers:!1,includeUppers:!1})},rn.prototype.inAnyRange=function(u,oe){var y=this,b=this._cmp,_=this._ascending,M=this._descending,R=this._min,j=this._max;if(u.length===0)return As(this);if(!u.every(function(ne){return ne[0]!==void 0&&ne[1]!==void 0&&_(ne[0],ne[1])<=0}))return En(this,"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower",L.InvalidArgument);var B=!oe||oe.includeLowers!==!1,te=oe&&oe.includeUppers===!0,q,N=_;function W(ne,ce){return N(ne[0],ce[0])}try{(q=u.reduce(function(ne,ce){for(var ge=0,be=ne.length;ge<be;++ge){var Pe=ne[ge];if(b(ce[0],Pe[1])<0&&0<b(ce[1],Pe[0])){Pe[0]=R(Pe[0],ce[0]),Pe[1]=j(Pe[1],ce[1]);break}}return ge===be&&ne.push(ce),ne},[])).sort(W)}catch{return En(this,on)}var G=0,H=te?function(ne){return 0<_(ne,q[G][1])}:function(ne){return 0<=_(ne,q[G][1])},X=B?function(ne){return 0<M(ne,q[G][0])}:function(ne){return 0<=M(ne,q[G][0])},K=H,oe=new this.Collection(this,function(){return Er(q[0][0],q[q.length-1][1],!B,!te)});return oe._ondirectionchange=function(ne){N=ne==="next"?(K=H,_):(K=X,M),q.sort(W)},oe._addAlgorithm(function(ne,ce,ge){for(var be,Pe=ne.key;K(Pe);)if(++G===q.length)return ce(ge),!1;return!H(be=Pe)&&!X(be)||(y._cmp(Pe,q[G][1])===0||y._cmp(Pe,q[G][0])===0||ce(function(){N===_?ne.continue(q[G][0]):ne.continue(q[G][1])}),!1)}),oe},rn.prototype.startsWithAnyOf=function(){var u=V.apply(me,arguments);return u.every(function(h){return typeof h=="string"})?u.length===0?As(this):this.inAnyRange(u.map(function(h){return[h,h+$t]})):En(this,"startsWithAnyOf() only works with strings")};var Df=rn;function rn(){}function Xn(u){return Ce(function(h){return So(h),u(h.target.error),!1})}function So(u){u.stopPropagation&&u.stopPropagation(),u.preventDefault&&u.preventDefault()}var wo="storagemutated",ac="x-storagemutated-1",Mr=vo(null,wo),ZS=(or.prototype._lock=function(){return T(!Oe.global),++this._reculock,this._reculock!==1||Oe.global||(Oe.lockOwnerFor=this),this},or.prototype._unlock=function(){if(T(!Oe.global),--this._reculock==0)for(Oe.global||(Oe.lockOwnerFor=null);0<this._blockedFuncs.length&&!this._locked();){var u=this._blockedFuncs.shift();try{xe(u[1],u[0])}catch{}}return this},or.prototype._locked=function(){return this._reculock&&Oe.lockOwnerFor!==this},or.prototype.create=function(u){var h=this;if(this.mode){var y=this.db.idbdb,b=this.db._state.dbOpenError;if(T(!this.idbtrans),!u&&!y)switch(b&&b.name){case"DatabaseClosedError":throw new L.DatabaseClosed(b);case"MissingAPIError":throw new L.MissingAPI(b.message,b);default:throw new L.OpenFailed(b)}if(!this.active)throw new L.TransactionInactive;T(this._completion._state===null),(u=this.idbtrans=u||(this.db.core||y).transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability})).onerror=Ce(function(_){So(_),h._reject(u.error)}),u.onabort=Ce(function(_){So(_),h.active&&h._reject(new L.Abort(u.error)),h.active=!1,h.on("abort").fire(_)}),u.oncomplete=Ce(function(){h.active=!1,h._resolve(),"mutatedParts"in u&&Mr.storagemutated.fire(u.mutatedParts)})}return this},or.prototype._promise=function(u,h,y){var b,_=this;return u==="readwrite"&&this.mode!=="readwrite"?ft(new L.ReadOnly("Transaction is readonly")):this.active?this._locked()?new Re(function(M,R){_._blockedFuncs.push([function(){_._promise(u,h,y).then(M,R)},Oe])}):y?rr(function(){var M=new Re(function(R,j){_._lock();var B=h(R,j,_);B&&B.then&&B.then(R,j)});return M.finally(function(){return _._unlock()}),M._lib=!0,M}):((b=new Re(function(M,R){var j=h(M,R,_);j&&j.then&&j.then(M,R)}))._lib=!0,b):ft(new L.TransactionInactive)},or.prototype._root=function(){return this.parent?this.parent._root():this},or.prototype.waitFor=function(u){var h,y=this._root(),b=Re.resolve(u),_=(y._waitingFor?y._waitingFor=y._waitingFor.then(function(){return b}):(y._waitingFor=b,y._waitingQueue=[],h=y.idbtrans.objectStore(y.storeNames[0]),function M(){for(++y._spinCount;y._waitingQueue.length;)y._waitingQueue.shift()();y._waitingFor&&(h.get(-1/0).onsuccess=M)}()),y._waitingFor);return new Re(function(M,R){b.then(function(j){return y._waitingQueue.push(Ce(M.bind(null,j)))},function(j){return y._waitingQueue.push(Ce(R.bind(null,j)))}).finally(function(){y._waitingFor===_&&(y._waitingFor=null)})})},or.prototype.abort=function(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new L.Abort))},or.prototype.table=function(u){var h=this._memoizedTables||(this._memoizedTables={});if(p(h,u))return h[u];var y=this.schema[u];if(y)return(y=new this.db.Table(u,y,this)).core=this.db.core.table(u),h[u]=y;throw new L.NotFound("Table "+u+" not part of transaction")},or);function or(){}function ic(u,h,y,b,_,M,R,j){return{name:u,keyPath:h,unique:y,multi:b,auto:_,compound:M,src:(y&&!R?"&":"")+(b?"*":"")+(_?"++":"")+Ff(h),type:j}}function Ff(u){return typeof u=="string"?u:u?"["+[].join.call(u,"+")+"]":""}function lc(u,h,y){return{name:u,primKey:h,indexes:y,mappedClass:null,idxByName:(b=function(_){return[_.name,_]},y.reduce(function(_,M,R){return M=b(M,R),M&&(_[M[0]]=M[1]),_},{}))};var b}var xo=function(u){try{return u.only([[]]),xo=function(){return[[]]},[[]]}catch{return xo=function(){return $t},$t}};function cc(u){return u==null?function(){}:typeof u=="string"?(h=u).split(".").length===1?function(y){return y[h]}:function(y){return A(y,h)}:function(y){return A(y,u)};var h}function Nf(u){return[].slice.call(u)}var ew=0;function _o(u){return u==null?":id":typeof u=="string"?u:"[".concat(u.join("+"),"]")}function tw(u,h,R){function b(K){if(K.type===3)return null;if(K.type===4)throw new Error("Cannot convert never type to IDBKeyRange");var G=K.lower,H=K.upper,X=K.lowerOpen,K=K.upperOpen;return G===void 0?H===void 0?null:h.upperBound(H,!!K):H===void 0?h.lowerBound(G,!!X):h.bound(G,H,!!X,!!K)}function _(W){var G,H,X=W.name;return{name:X,schema:W,mutate:function(K){var oe=K.trans,ne=K.type,ce=K.keys,ge=K.values,be=K.range;return new Promise(function(Pe,_e){Pe=Ce(Pe);var $e=oe.objectStore(X),Te=$e.keyPath==null,Le=ne==="put"||ne==="add";if(!Le&&ne!=="delete"&&ne!=="deleteRange")throw new Error("Invalid operation type: "+ne);var ye,Qe=(ce||ge||{length:1}).length;if(ce&&ge&&ce.length!==ge.length)throw new Error("Given keys array must have same length as given values array.");if(Qe===0)return Pe({numFailures:0,failures:{},results:[],lastResult:void 0});function Ze(Sn){++Mn,So(Sn)}var nt=[],ut=[],Mn=0;if(ne==="deleteRange"){if(be.type===4)return Pe({numFailures:Mn,failures:ut,results:[],lastResult:void 0});be.type===3?nt.push(ye=$e.clear()):nt.push(ye=$e.delete(b(be)))}else{var Te=Le?Te?[ge,ce]:[ge,null]:[ce,null],tt=Te[0],pn=Te[1];if(Le)for(var mn=0;mn<Qe;++mn)nt.push(ye=pn&&pn[mn]!==void 0?$e[ne](tt[mn],pn[mn]):$e[ne](tt[mn])),ye.onerror=Ze;else for(mn=0;mn<Qe;++mn)nt.push(ye=$e[ne](tt[mn])),ye.onerror=Ze}function Ri(Sn){Sn=Sn.target.result,nt.forEach(function(Zr,Pc){return Zr.error!=null&&(ut[Pc]=Zr.error)}),Pe({numFailures:Mn,failures:ut,results:ne==="delete"?ce:nt.map(function(Zr){return Zr.result}),lastResult:Sn})}ye.onerror=function(Sn){Ze(Sn),Ri(Sn)},ye.onsuccess=Ri})},getMany:function(K){var oe=K.trans,ne=K.keys;return new Promise(function(ce,ge){ce=Ce(ce);for(var be,Pe=oe.objectStore(X),_e=ne.length,$e=new Array(_e),Te=0,Le=0,ye=function(nt){nt=nt.target,$e[nt._pos]=nt.result,++Le===Te&&ce($e)},Qe=Xn(ge),Ze=0;Ze<_e;++Ze)ne[Ze]!=null&&((be=Pe.get(ne[Ze]))._pos=Ze,be.onsuccess=ye,be.onerror=Qe,++Te);Te===0&&ce($e)})},get:function(K){var oe=K.trans,ne=K.key;return new Promise(function(ce,ge){ce=Ce(ce);var be=oe.objectStore(X).get(ne);be.onsuccess=function(Pe){return ce(Pe.target.result)},be.onerror=Xn(ge)})},query:(G=B,H=te,function(K){return new Promise(function(oe,ne){oe=Ce(oe);var ce,ge,be,Pe,Qe=K.trans,_e=K.values,$e=K.limit,ye=K.query,Te=(Te=K.direction)!=null?Te:"next",Le=$e===1/0?void 0:$e,Ze=ye.index,ye=ye.range,Qe=Qe.objectStore(X),Qe=Ze.isPrimaryKey?Qe:Qe.index(Ze.name),Ze=b(ye);if($e===0)return oe({result:[]});H?(ye={query:Ze,count:Le,direction:Te},(ce=_e?Qe.getAll(ye):Qe.getAllKeys(ye)).onsuccess=function(nt){return oe({result:nt.target.result})},ce.onerror=Xn(ne)):G&&Te==="next"?((ce=_e?Qe.getAll(Ze,Le):Qe.getAllKeys(Ze,Le)).onsuccess=function(nt){return oe({result:nt.target.result})},ce.onerror=Xn(ne)):(ge=0,be=!_e&&"openKeyCursor"in Qe?Qe.openKeyCursor(Ze,Te):Qe.openCursor(Ze,Te),Pe=[],be.onsuccess=function(){var nt=be.result;return!nt||(Pe.push(_e?nt.value:nt.primaryKey),++ge===$e)?oe({result:Pe}):void nt.continue()},be.onerror=Xn(ne))})}),openCursor:function(K){var oe=K.trans,ne=K.values,ce=K.query,ge=K.reverse,be=K.unique;return new Promise(function(Pe,_e){Pe=Ce(Pe);var Le=ce.index,$e=ce.range,Te=oe.objectStore(X),Te=Le.isPrimaryKey?Te:Te.index(Le.name),Le=ge?be?"prevunique":"prev":be?"nextunique":"next",ye=!ne&&"openKeyCursor"in Te?Te.openKeyCursor(b($e),Le):Te.openCursor(b($e),Le);ye.onerror=Xn(_e),ye.onsuccess=Ce(function(Qe){var Ze,nt,ut,Mn,tt=ye.result;tt?(tt.___id=++ew,tt.done=!1,Ze=tt.continue.bind(tt),nt=(nt=tt.continuePrimaryKey)&&nt.bind(tt),ut=tt.advance.bind(tt),Mn=function(){throw new Error("Cursor not stopped")},tt.trans=oe,tt.stop=tt.continue=tt.continuePrimaryKey=tt.advance=function(){throw new Error("Cursor not started")},tt.fail=Ce(_e),tt.next=function(){var pn=this,mn=1;return this.start(function(){return mn--?pn.continue():pn.stop()}).then(function(){return pn})},tt.start=function(pn){function mn(){if(ye.result)try{pn()}catch(Sn){tt.fail(Sn)}else tt.done=!0,tt.start=function(){throw new Error("Cursor behind last entry")},tt.stop()}var Ri=new Promise(function(Sn,Zr){Sn=Ce(Sn),ye.onerror=Xn(Zr),tt.fail=Zr,tt.stop=function(Pc){tt.stop=tt.continue=tt.continuePrimaryKey=tt.advance=Mn,Sn(Pc)}});return ye.onsuccess=Ce(function(Sn){ye.onsuccess=mn,mn()}),tt.continue=Ze,tt.continuePrimaryKey=nt,tt.advance=ut,mn(),Ri},Pe(tt)):Pe(null)},_e)})},count:function(K){var oe=K.query,ne=K.trans,ce=oe.index,ge=oe.range;return new Promise(function(be,Pe){var _e=ne.objectStore(X),_e=ce.isPrimaryKey?_e:_e.index(ce.name),$e=b(ge),$e=$e?_e.count($e):_e.count();$e.onsuccess=Ce(function(Te){return be(Te.target.result)}),$e.onerror=Xn(Pe)})}}}M=R,j=Nf((R=u).objectStoreNames),q=0<j.length?M.objectStore(j[0]):{};var M,R={schema:{name:R.name,tables:j.map(function(W){return M.objectStore(W)}).map(function(W){var G=W.keyPath,H=W.autoIncrement,K=i(G),X={},K={name:W.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:G==null,compound:K,keyPath:G,autoIncrement:H,unique:!0,extractKey:cc(G)},indexes:Nf(W.indexNames).map(function(oe){return W.index(oe)}).map(function(ge){var be=ge.name,ne=ge.unique,ce=ge.multiEntry,ge=ge.keyPath,be={name:be,compound:i(ge),keyPath:ge,unique:ne,multiEntry:ce,extractKey:cc(ge)};return X[_o(ge)]=be}),getIndexByKeyPath:function(oe){return X[_o(oe)]}};return X[":id"]=K.primaryKey,G!=null&&(X[_o(G)]=K.primaryKey),K})},hasGetAll:0<j.length&&"getAll"in q&&!(typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604),hasIdb3Features:"getAllRecords"in q},j=R.schema,B=R.hasGetAll,te=R.hasIdb3Features,q=j.tables.map(_),N={};return q.forEach(function(W){return N[W.name]=W}),{stack:"dbcore",transaction:u.transaction.bind(u),table:function(W){if(N[W])return N[W];throw new Error("Table '".concat(W,"' not found"))},MIN_KEY:-1/0,MAX_KEY:xo(h),schema:j}}function nw(u,h,y,b){return y=y.IDBKeyRange,h=tw(h,y,b),{dbcore:u.dbcore.reduce(function(_,M){return M=M.create,r(r({},_),M(_))},h)}}function bi(u,h){var y=h.db,y=nw(u._middlewares,y,u._deps,h);u.core=y.dbcore,u.tables.forEach(function(b){var _=b.name;u.core.schema.tables.some(function(M){return M.name===_})&&(b.core=u.core.table(_),u[_]instanceof u.Table)&&(u[_].core=b.core)})}function Si(u,h,y,b){y.forEach(function(_){var M=b[_];h.forEach(function(R){var j=function B(te,q){return x(te,q)||(te=d(te))&&B(te,q)}(R,_);(!j||"value"in j&&j.value===void 0)&&(R===u.Transaction.prototype||R instanceof u.Transaction?w(R,_,{get:function(){return this.table(_)},set:function(B){g(this,_,{value:B,writable:!0,configurable:!0,enumerable:!0})}}):R[_]=new u.Table(_,M))})})}function uc(u,h){h.forEach(function(y){for(var b in y)y[b]instanceof u.Table&&delete y[b]})}function rw(u,h){return u._cfg.version-h._cfg.version}function sw(u,h,y,b){var _=u._dbSchema,M=(y.objectStoreNames.contains("$meta")&&!_.$meta&&(_.$meta=lc("$meta",Bf("")[0],[]),u._storeNames.push("$meta")),u._createTransaction("readwrite",u._storeNames,_)),R=(M.create(y),M._completion.catch(b),M._reject.bind(M)),j=Oe.transless||Oe;rr(function(){if(Oe.trans=M,Oe.transless=j,h!==0)return bi(u,y),te=h,((B=M).storeNames.includes("$meta")?B.table("$meta").get("version").then(function(q){return q??te}):Re.resolve(te)).then(function(K){var N=u,W=K,G=M,H=y,X=[],K=N._versions,oe=N._dbSchema=xi(0,N.idbdb,H);return(K=K.filter(function(ne){return ne._cfg.version>=W})).length===0?Re.resolve():(K.forEach(function(ne){X.push(function(){var ce,ge,be,Pe=oe,_e=ne._cfg.dbschema,$e=(_i(N,Pe,H),_i(N,_e,H),oe=N._dbSchema=_e,dc(Pe,_e)),Te=($e.add.forEach(function(Le){fc(H,Le[0],Le[1].primKey,Le[1].indexes)}),$e.change.forEach(function(Le){if(Le.recreate)throw new L.Upgrade("Not yet support for changing primary key");var ye=H.objectStore(Le.name);Le.add.forEach(function(Qe){return wi(ye,Qe)}),Le.change.forEach(function(Qe){ye.deleteIndex(Qe.name),wi(ye,Qe)}),Le.del.forEach(function(Qe){return ye.deleteIndex(Qe)})}),ne._cfg.contentUpgrade);if(Te&&ne._cfg.version>W)return bi(N,H),G._memoizedTables={},ce=$(_e),$e.del.forEach(function(Le){ce[Le]=Pe[Le]}),uc(N,[N.Transaction.prototype]),Si(N,[N.Transaction.prototype],a(ce),ce),G.schema=ce,(ge=ae(Te))&&yr(),_e=Re.follow(function(){var Le;(be=Te(G))&&ge&&(Le=Un.bind(null,null),be.then(Le,Le))}),be&&typeof be.then=="function"?Re.resolve(be):_e.then(function(){return be})}),X.push(function(ce){var ge,be,Pe=ne._cfg.dbschema;ge=Pe,be=ce,[].slice.call(be.db.objectStoreNames).forEach(function(_e){return ge[_e]==null&&be.db.deleteObjectStore(_e)}),uc(N,[N.Transaction.prototype]),Si(N,[N.Transaction.prototype],N._storeNames,N._dbSchema),G.schema=N._dbSchema}),X.push(function(ce){N.idbdb.objectStoreNames.contains("$meta")&&(Math.ceil(N.idbdb.version/10)===ne._cfg.version?(N.idbdb.deleteObjectStore("$meta"),delete N._dbSchema.$meta,N._storeNames=N._storeNames.filter(function(ge){return ge!=="$meta"})):ce.objectStore("$meta").put(ne._cfg.version,"version"))})}),function ne(){return X.length?Re.resolve(X.shift()(G.idbtrans)).then(ne):Re.resolve()}().then(function(){zf(oe,H)}))}).catch(R);var B,te;a(_).forEach(function(q){fc(y,q,_[q].primKey,_[q].indexes)}),bi(u,y),Re.follow(function(){return u.on.populate.fire(M)}).catch(R)})}function ow(u,h){zf(u._dbSchema,h),h.db.version%10!=0||h.objectStoreNames.contains("$meta")||h.db.createObjectStore("$meta").add(Math.ceil(h.db.version/10-1),"version");var y=xi(0,u.idbdb,h);_i(u,u._dbSchema,h);for(var b=0,_=dc(y,u._dbSchema).change;b<_.length;b++){var M=(R=>{if(R.change.length||R.recreate)return console.warn("Unable to patch indexes of table ".concat(R.name," because it has changes on the type of index or primary key.")),{value:void 0};var j=h.objectStore(R.name);R.add.forEach(function(B){Fe&&console.debug("Dexie upgrade patch: Creating missing index ".concat(R.name,".").concat(B.src)),wi(j,B)})})(_[b]);if(typeof M=="object")return M.value}}function dc(u,h){var y,b={del:[],add:[],change:[]};for(y in u)h[y]||b.del.push(y);for(y in h){var _=u[y],M=h[y];if(_){var R={name:y,def:M,recreate:!1,del:[],add:[],change:[]};if(""+(_.primKey.keyPath||"")!=""+(M.primKey.keyPath||"")||_.primKey.auto!==M.primKey.auto)R.recreate=!0,b.change.push(R);else{var j=_.idxByName,B=M.idxByName,te=void 0;for(te in j)B[te]||R.del.push(te);for(te in B){var q=j[te],N=B[te];q?q.src!==N.src&&R.change.push(N):R.add.push(N)}(0<R.del.length||0<R.add.length||0<R.change.length)&&b.change.push(R)}}else b.add.push([y,M])}return b}function fc(u,h,y,b){var _=u.db.createObjectStore(h,y.keyPath?{keyPath:y.keyPath,autoIncrement:y.auto}:{autoIncrement:y.auto});b.forEach(function(M){return wi(_,M)})}function zf(u,h){a(u).forEach(function(y){h.db.objectStoreNames.contains(y)||(Fe&&console.debug("Dexie: Creating missing table",y),fc(h,y,u[y].primKey,u[y].indexes))})}function wi(u,h){u.createIndex(h.name,h.keyPath,{unique:h.unique,multiEntry:h.multi})}function xi(u,h,y){var b={};return C(h.objectStoreNames,0).forEach(function(_){for(var M=y.objectStore(_),R=ic(Ff(te=M.keyPath),te||"",!0,!1,!!M.autoIncrement,te&&typeof te!="string",!0),j=[],B=0;B<M.indexNames.length;++B){var q=M.index(M.indexNames[B]),te=q.keyPath,q=ic(q.name,te,!!q.unique,!!q.multiEntry,!1,te&&typeof te!="string",!1);j.push(q)}b[_]=lc(_,R,j)}),b}function _i(u,h,y){for(var b=y.db.objectStoreNames,_=0;_<b.length;++_){var M=b[_],R=y.objectStore(M);u._hasGetAll="getAll"in R;for(var j=0;j<R.indexNames.length;++j){var B,te=R.indexNames[j],q=R.index(te).keyPath,q=typeof q=="string"?q:"["+C(q).join("+")+"]";h[M]&&(B=h[M].idxByName[q])&&(B.name=te,delete h[M].idxByName[q],h[M].idxByName[te]=B)}}typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&o.WorkerGlobalScope&&o instanceof o.WorkerGlobalScope&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604&&(u._hasGetAll=!1)}function Bf(u){return u.split(",").map(function(h,y){var _=h.split(":"),b=(b=_[1])==null?void 0:b.trim(),_=(h=_[0].trim()).replace(/([&*]|\+\+)/g,""),M=/^\[/.test(_)?_.match(/^\[(.*)\]$/)[1].split("+"):_;return ic(_,M||null,/\&/.test(h),/\*/.test(h),/\+\+/.test(h),i(M),y===0,b)})}js.prototype._createTableSchema=lc,js.prototype._parseIndexSyntax=Bf,js.prototype._parseStoresSpec=function(u,h){var y=this;a(u).forEach(function(b){if(u[b]!==null){var _=y._parseIndexSyntax(u[b]),M=_.shift();if(!M)throw new L.Schema("Invalid schema for table "+b+": "+u[b]);if(M.unique=!0,M.multi)throw new L.Schema("Primary key cannot be multiEntry*");_.forEach(function(R){if(R.auto)throw new L.Schema("Only primary key can be marked as autoIncrement (++)");if(!R.keyPath)throw new L.Schema("Index must have a name and cannot be an empty string")}),M=y._createTableSchema(b,M,_),h[b]=M}})},js.prototype.stores=function(y){var h=this.db,y=(this._cfg.storesSource=this._cfg.storesSource?c(this._cfg.storesSource,y):y,h._versions),b={},_={};return y.forEach(function(M){c(b,M._cfg.storesSource),_=M._cfg.dbschema={},M._parseStoresSpec(b,_)}),h._dbSchema=_,uc(h,[h._allTables,h,h.Transaction.prototype]),Si(h,[h._allTables,h,h.Transaction.prototype,this._cfg.tables],a(_),_),h._storeNames=a(_),this},js.prototype.upgrade=function(u){return this._cfg.contentUpgrade=xt(this._cfg.contentUpgrade||Se,u),this};var aw=js;function js(){}var Co=(()=>{var u,h,y;return typeof FinalizationRegistry<"u"&&typeof WeakRef<"u"?(u=new Set,h=new FinalizationRegistry(function(b){u.delete(b)}),{toArray:function(){return Array.from(u).map(function(b){return b.deref()}).filter(function(b){return b!==void 0})},add:function(b){var _=new WeakRef(b._novip);u.add(_),h.register(b._novip,_,_),u.size>b._options.maxConnections&&(_=u.values().next().value,u.delete(_),h.unregister(_))},remove:function(b){if(b)for(var _=u.values(),M=_.next();!M.done;){var R=M.value;if(R.deref()===b._novip)return u.delete(R),void h.unregister(R);M=_.next()}}}):(y=[],{toArray:function(){return y},add:function(b){y.push(b._novip)},remove:function(b){b&&(b=y.indexOf(b._novip))!==-1&&y.splice(b,1)}})})();function hc(u,h){var y=u._dbNamesDB;return y||(y=u._dbNamesDB=new vr(vn,{addons:[],indexedDB:u,IDBKeyRange:h})).version(1).stores({dbnames:"name"}),y.table("dbnames")}function pc(u){return u&&typeof u.databases=="function"}function mc(u){return rr(function(){return Oe.letThrough=!0,u()})}function gc(u){return!("from"in u)}var hn=function(u,h){var y;if(!this)return y=new hn,u&&"d"in u&&c(y,u),y;c(this,arguments.length?{d:1,from:u,to:1<arguments.length?h:u}:{d:0})};function ko(u,h,y){var b=dt(h,y);if(!isNaN(b)){if(0<b)throw RangeError();if(gc(u))return c(u,{from:h,to:y,d:1});var b=u.l,_=u.r;if(dt(y,u.from)<0)return b?ko(b,h,y):u.l={from:h,to:y,d:1,l:null,r:null},Uf(u);if(0<dt(h,u.to))return _?ko(_,h,y):u.r={from:h,to:y,d:1,l:null,r:null},Uf(u);dt(h,u.from)<0&&(u.from=h,u.l=null,u.d=_?_.d+1:1),0<dt(y,u.to)&&(u.to=y,u.r=null,u.d=u.l?u.l.d+1:1),h=!u.r,b&&!u.l&&To(u,b),_&&h&&To(u,_)}}function To(u,h){gc(h)||function y(b,_){var M=_.from,R=_.l,j=_.r;ko(b,M,_.to),R&&y(b,R),j&&y(b,j)}(u,h)}function Wf(u,h){var y=Ci(h),b=y.next();if(!b.done)for(var _=b.value,M=Ci(u),R=M.next(_.from),j=R.value;!b.done&&!R.done;){if(dt(j.from,_.to)<=0&&0<=dt(j.to,_.from))return!0;dt(_.from,j.from)<0?_=(b=y.next(j.from)).value:j=(R=M.next(_.from)).value}return!1}function Ci(u){var h=gc(u)?null:{s:0,n:u};return{next:function(y){for(var b=0<arguments.length;h;)switch(h.s){case 0:if(h.s=1,b)for(;h.n.l&&dt(y,h.n.from)<0;)h={up:h,n:h.n.l,s:1};else for(;h.n.l;)h={up:h,n:h.n.l,s:1};case 1:if(h.s=2,!b||dt(y,h.n.to)<=0)return{value:h.n,done:!1};case 2:if(h.n.r){h.s=3,h={up:h,n:h.n.r,s:0};continue}case 3:h=h.up}return{done:!0}}}}function Uf(u){var h,y,b,_=(((_=u.r)==null?void 0:_.d)||0)-(((_=u.l)==null?void 0:_.d)||0),_=1<_?"r":_<-1?"l":"";_&&(h=_=="r"?"l":"r",y=r({},u),b=u[_],u.from=b.from,u.to=b.to,u[_]=b[_],y[_]=b[h],(u[h]=y).d=qf(y)),u.d=qf(u)}function qf(y){var h=y.r,y=y.l;return(h?y?Math.max(h.d,y.d):h.d:y?y.d:0)+1}function ki(u,h){return a(h).forEach(function(y){u[y]?To(u[y],h[y]):u[y]=function b(_){var M,R,j={};for(M in _)p(_,M)&&(R=_[M],j[M]=!R||typeof R!="object"||ee.has(R.constructor)?R:b(R));return j}(h[y])}),u}function yc(u,h){return u.all||h.all||Object.keys(u).some(function(y){return h[y]&&Wf(h[y],u[y])})}v(hn.prototype,((Tt={add:function(u){return To(this,u),this},addKey:function(u){return ko(this,u,u),this},addKeys:function(u){var h=this;return u.forEach(function(y){return ko(h,y,y)}),this},hasKey:function(u){var h=Ci(this).next(u).value;return h&&dt(h.from,u)<=0&&0<=dt(h.to,u)}})[ie]=function(){return Ci(this)},Tt));var Jr={},vc={},bc=!1;function Ti(u){ki(vc,u),bc||(bc=!0,setTimeout(function(){bc=!1,Sc(vc,!(vc={}))},0))}function Sc(u,h){h===void 0&&(h=!1);var y=new Set;if(u.all)for(var b=0,_=Object.values(Jr);b<_.length;b++)Hf(j=_[b],u,y,h);else for(var M in u){var R,j,M=/^idb\:\/\/(.*)\/(.*)\//.exec(M);M&&(R=M[1],M=M[2],j=Jr["idb://".concat(R,"/").concat(M)])&&Hf(j,u,y,h)}y.forEach(function(B){return B()})}function Hf(u,h,y,b){for(var _=[],M=0,R=Object.entries(u.queries.query);M<R.length;M++){for(var j=R[M],B=j[0],te=[],q=0,N=j[1];q<N.length;q++){var W=N[q];yc(h,W.obsSet)?W.subscribers.forEach(function(K){return y.add(K)}):b&&te.push(W)}b&&_.push([B,te])}if(b)for(var G=0,H=_;G<H.length;G++){var X=H[G],B=X[0],te=X[1];u.queries.query[B]=te}}function iw(u){var h=u._state,y=u._deps.indexedDB;if(h.isBeingOpened||u.idbdb)return h.dbReadyPromise.then(function(){return h.dbOpenError?ft(h.dbOpenError):u});h.isBeingOpened=!0,h.dbOpenError=null,h.openComplete=!1;var b=h.openCanceller,_=Math.round(10*u.verno),M=!1;function R(){if(h.openCanceller!==b)throw new L.DatabaseClosed("db.open() was cancelled")}function j(){return new Re(function(W,G){if(R(),!y)throw new L.MissingAPI;var H=u.name,X=h.autoSchema||!_?y.open(H):y.open(H,_);if(!X)throw new L.MissingAPI;X.onerror=Xn(G),X.onblocked=Ce(u._fireOnBlocked),X.onupgradeneeded=Ce(function(K){var oe;q=X.transaction,h.autoSchema&&!u._options.allowEmptyDB?(X.onerror=So,q.abort(),X.result.close(),(oe=y.deleteDatabase(H)).onsuccess=oe.onerror=Ce(function(){G(new L.NoSuchDatabase("Database ".concat(H," doesnt exist")))})):(q.onerror=Xn(G),oe=K.oldVersion>Math.pow(2,62)?0:K.oldVersion,N=oe<1,u.idbdb=X.result,M&&ow(u,q),sw(u,oe/10,q,G))},G),X.onsuccess=Ce(function(){q=null;var K,oe,ne,ce,ge,be,Pe=u.idbdb=X.result,_e=C(Pe.objectStoreNames);if(0<_e.length)try{var $e=Pe.transaction((ge=_e).length===1?ge[0]:ge,"readonly");if(h.autoSchema)be=Pe,ce=$e,(ne=u).verno=be.version/10,ce=ne._dbSchema=xi(0,be,ce),ne._storeNames=C(be.objectStoreNames,0),Si(ne,[ne._allTables],a(ce),ce);else if(_i(u,u._dbSchema,$e),oe=$e,((oe=dc(xi(0,(K=u).idbdb,oe),K._dbSchema)).add.length||oe.change.some(function(Te){return Te.add.length||Te.change.length}))&&!M)return console.warn("Dexie SchemaDiff: Schema was extended without increasing the number passed to db.version(). Dexie will add missing parts and increment native version number to workaround this."),Pe.close(),_=Pe.version+1,M=!0,W(j());bi(u,$e)}catch{}Co.add(u),Pe.onversionchange=Ce(function(Te){h.vcFired=!0,u.on("versionchange").fire(Te)}),Pe.onclose=Ce(function(){u.close({disableAutoOpen:!1})}),N&&(_e=u._deps,ge=H,pc(be=_e.indexedDB)||ge===vn||hc(be,_e.IDBKeyRange).put({name:ge}).catch(Se)),W()},G)}).catch(function(W){switch(W==null?void 0:W.name){case"UnknownError":if(0<h.PR1398_maxLoop)return h.PR1398_maxLoop--,console.warn("Dexie: Workaround for Chrome UnknownError on open()"),j();break;case"VersionError":if(0<_)return _=0,j()}return Re.reject(W)})}var B,te=h.dbReadyResolve,q=null,N=!1;return Re.race([b,(typeof navigator>"u"?Re.resolve():!navigator.userAgentData&&/Safari\//.test(navigator.userAgent)&&!/Chrom(e|ium)\//.test(navigator.userAgent)&&indexedDB.databases?new Promise(function(W){function G(){return indexedDB.databases().finally(W)}B=setInterval(G,100),G()}).finally(function(){return clearInterval(B)}):Promise.resolve()).then(j)]).then(function(){return R(),h.onReadyBeingFired=[],Re.resolve(mc(function(){return u.on.ready.fire(u.vip)})).then(function W(){var G;if(0<h.onReadyBeingFired.length)return G=h.onReadyBeingFired.reduce(xt,Se),h.onReadyBeingFired=[],Re.resolve(mc(function(){return G(u.vip)})).then(W)})}).finally(function(){h.openCanceller===b&&(h.onReadyBeingFired=null,h.isBeingOpened=!1)}).catch(function(W){h.dbOpenError=W;try{q&&q.abort()}catch{}return b===h.openCanceller&&u._close(),ft(W)}).finally(function(){h.openComplete=!0,te()}).then(function(){var W;return N&&(W={},u.tables.forEach(function(G){G.schema.indexes.forEach(function(H){H.name&&(W["idb://".concat(u.name,"/").concat(G.name,"/").concat(H.name)]=new hn(-1/0,[[[]]]))}),W["idb://".concat(u.name,"/").concat(G.name,"/")]=W["idb://".concat(u.name,"/").concat(G.name,"/:dels")]=new hn(-1/0,[[[]]])}),Mr(wo).fire(W),Sc(W,!0)),u})}function wc(u){function h(M){return u.next(M)}var y=_(h),b=_(function(M){return u.throw(M)});function _(M){return function(j){var j=M(j),B=j.value;return j.done?B:B&&typeof B.then=="function"?B.then(y,b):i(B)?Promise.all(B).then(y,b):y(B)}}return _(h)()}function Pi(u,h,y){for(var b=i(u)?u.slice():[u],_=0;_<y;++_)b.push(h);return b}var lw={stack:"dbcore",name:"VirtualIndexMiddleware",level:1,create:function(u){return r(r({},u),{table:function(b){var y=u.table(b),b=y.schema,_={},M=[];function R(W,G,H){var ne=_o(W),X=_[ne]=_[ne]||[],K=W==null?0:typeof W=="string"?1:W.length,oe=0<G,ne=r(r({},H),{name:oe?"".concat(ne,"(virtual-from:").concat(H.name,")"):H.name,lowLevelIndex:H,isVirtual:oe,keyTail:G,keyLength:K,extractKey:cc(W),unique:!oe&&H.unique});return X.push(ne),ne.isPrimaryKey||M.push(ne),1<K&&R(K===2?W[0]:W.slice(0,K-1),G+1,H),X.sort(function(ce,ge){return ce.keyTail-ge.keyTail}),ne}var j=R(b.primaryKey.keyPath,0,b.primaryKey);_[":id"]=[j];for(var B=0,te=b.indexes;B<te.length;B++){var q=te[B];R(q.keyPath,0,q)}function N(W){var G,H=W.query.index;return H.isVirtual?r(r({},W),{query:{index:H.lowLevelIndex,range:(G=W.query.range,H=H.keyTail,{type:G.type===1?2:G.type,lower:Pi(G.lower,G.lowerOpen?u.MAX_KEY:u.MIN_KEY,H),lowerOpen:!0,upper:Pi(G.upper,G.upperOpen?u.MIN_KEY:u.MAX_KEY,H),upperOpen:!0})}}):W}return r(r({},y),{schema:r(r({},b),{primaryKey:j,indexes:M,getIndexByKeyPath:function(W){return(W=_[_o(W)])&&W[0]}}),count:function(W){return y.count(N(W))},query:function(W){return y.query(N(W))},openCursor:function(W){var G=W.query.index,H=G.keyTail,X=G.keyLength;return G.isVirtual?y.openCursor(N(W)).then(function(oe){return oe&&K(oe)}):y.openCursor(W);function K(oe){return Object.create(oe,{continue:{value:function(ne){ne!=null?oe.continue(Pi(ne,W.reverse?u.MAX_KEY:u.MIN_KEY,H)):W.unique?oe.continue(oe.key.slice(0,X).concat(W.reverse?u.MIN_KEY:u.MAX_KEY,H)):oe.continue()}},continuePrimaryKey:{value:function(ne,ce){oe.continuePrimaryKey(Pi(ne,u.MAX_KEY,H),ce)}},primaryKey:{get:function(){return oe.primaryKey}},key:{get:function(){var ne=oe.key;return X===1?ne[0]:ne.slice(0,X)}},value:{get:function(){return oe.value}}})}}})}})}};function xc(u,h,y,b){return y=y||{},b=b||"",a(u).forEach(function(_){var M,R,j;p(h,_)?(M=u[_],R=h[_],typeof M=="object"&&typeof R=="object"&&M&&R?(j=D(M))!==D(R)?y[b+_]=h[_]:j==="Object"?xc(M,R,y,b+_+"."):M!==R&&(y[b+_]=h[_]):M!==R&&(y[b+_]=h[_])):y[b+_]=void 0}),a(h).forEach(function(_){p(u,_)||(y[b+_]=h[_])}),y}function _c(u,h){return h.type==="delete"?h.keys:h.keys||h.values.map(u.extractKey)}var cw={stack:"dbcore",name:"HooksMiddleware",level:2,create:function(u){return r(r({},u),{table:function(h){var y=u.table(h),b=y.schema.primaryKey;return r(r({},y),{mutate:function(_){var M=Oe.trans,R=M.table(h).hook,j=R.deleting,B=R.creating,te=R.updating;switch(_.type){case"add":if(B.fire===Se)break;return M._promise("readwrite",function(){return q(_)},!0);case"put":if(B.fire===Se&&te.fire===Se)break;return M._promise("readwrite",function(){return q(_)},!0);case"delete":if(j.fire===Se)break;return M._promise("readwrite",function(){return q(_)},!0);case"deleteRange":if(j.fire===Se)break;return M._promise("readwrite",function(){return function N(W,G,H){return y.query({trans:W,values:!1,query:{index:b,range:G},limit:H}).then(function(X){var K=X.result;return q({type:"delete",keys:K,trans:W}).then(function(oe){return 0<oe.numFailures?Promise.reject(oe.failures[0]):K.length<H?{failures:[],numFailures:0,lastResult:void 0}:N(W,r(r({},G),{lower:K[K.length-1],lowerOpen:!0}),H)})})}(_.trans,_.range,1e4)},!0)}return y.mutate(_);function q(N){var W,G,H,X=Oe.trans,K=N.keys||_c(b,N);if(K)return(N=N.type==="add"||N.type==="put"?r(r({},N),{keys:K}):r({},N)).type!=="delete"&&(N.values=s([],N.values)),N.keys&&(N.keys=s([],N.keys)),W=y,H=K,((G=N).type==="add"?Promise.resolve([]):W.getMany({trans:G.trans,keys:H,cache:"immutable"})).then(function(oe){var ne=K.map(function(ce,ge){var be,Pe,_e,$e=oe[ge],Te={onerror:null,onsuccess:null};return N.type==="delete"?j.fire.call(Te,ce,$e,X):N.type==="add"||$e===void 0?(be=B.fire.call(Te,ce,N.values[ge],X),ce==null&&be!=null&&(N.keys[ge]=ce=be,b.outbound||O(N.values[ge],b.keyPath,ce))):(be=xc($e,N.values[ge]),(Pe=te.fire.call(Te,be,ce,$e,X))&&(_e=N.values[ge],Object.keys(Pe).forEach(function(Le){p(_e,Le)?_e[Le]=Pe[Le]:O(_e,Le,Pe[Le])}))),Te});return y.mutate(N).then(function(ce){for(var ge=ce.failures,be=ce.results,Pe=ce.numFailures,ce=ce.lastResult,_e=0;_e<K.length;++_e){var $e=(be||K)[_e],Te=ne[_e];$e==null?Te.onerror&&Te.onerror(ge[_e]):Te.onsuccess&&Te.onsuccess(N.type==="put"&&oe[_e]?N.values[_e]:$e)}return{failures:ge,results:be,numFailures:Pe,lastResult:ce}}).catch(function(ce){return ne.forEach(function(ge){return ge.onerror&&ge.onerror(ce)}),Promise.reject(ce)})});throw new Error("Keys missing")}}})}})}};function Xf(u,h,y){try{if(!h||h.keys.length<u.length)return null;for(var b=[],_=0,M=0;_<h.keys.length&&M<u.length;++_)dt(h.keys[_],u[M])===0&&(b.push(y?Y(h.values[_]):h.values[_]),++M);return b.length===u.length?b:null}catch{return null}}var uw={stack:"dbcore",level:-1,create:function(u){return{table:function(h){var y=u.table(h);return r(r({},y),{getMany:function(b){var _;return b.cache?(_=Xf(b.keys,b.trans._cache,b.cache==="clone"))?Re.resolve(_):y.getMany(b).then(function(M){return b.trans._cache={keys:b.keys,values:b.cache==="clone"?Y(M):M},M}):y.getMany(b)},mutate:function(b){return b.type!=="add"&&(b.trans._cache=null),y.mutate(b)}})}}}};function Yf(u,h){return u.trans.mode==="readonly"&&!!u.subscr&&!u.trans.explicit&&u.trans.db._options.cache!=="disabled"&&!h.schema.primaryKey.outbound}function Kf(u,h){switch(u){case"query":return h.values&&!h.unique;case"get":case"getMany":case"count":case"openCursor":return!1}}var dw={stack:"dbcore",level:0,name:"Observability",create:function(u){var h=u.schema.name,y=new hn(u.MIN_KEY,u.MAX_KEY);return r(r({},u),{transaction:function(b,_,M){if(Oe.subscr&&_!=="readonly")throw new L.ReadOnly("Readwrite transaction in liveQuery context. Querier source: ".concat(Oe.querier));return u.transaction(b,_,M)},table:function(b){function _(K){var X,K=K.query;return[X=K.index,new hn((X=(K=K.range).lower)!=null?X:u.MIN_KEY,(X=K.upper)!=null?X:u.MAX_KEY)]}var M=u.table(b),R=M.schema,j=R.primaryKey,B=R.indexes,te=j.extractKey,q=j.outbound,N=j.autoIncrement&&B.filter(function(H){return H.compound&&H.keyPath.includes(j.keyPath)}),W=r(r({},M),{mutate:function(H){function X(ye){return ye="idb://".concat(h,"/").concat(b,"/").concat(ye),ge[ye]||(ge[ye]=new hn)}var K,oe,ne,ce=H.trans,ge=H.mutatedParts||(H.mutatedParts={}),be=X(""),Pe=X(":dels"),_e=H.type,Te=H.type==="deleteRange"?[H.range]:H.type==="delete"?[H.keys]:H.values.length<50?[_c(j,H).filter(function(ye){return ye}),H.values]:[],$e=Te[0],Te=Te[1],Le=H.trans._cache;return i($e)?(be.addKeys($e),(_e=_e==="delete"||$e.length===Te.length?Xf($e,Le):null)||Pe.addKeys($e),(_e||Te)&&(K=X,oe=_e,ne=Te,R.indexes.forEach(function(ye){var Qe=K(ye.name||"");function Ze(ut){return ut!=null?ye.extractKey(ut):null}function nt(ut){ye.multiEntry&&i(ut)?ut.forEach(function(Mn){return Qe.addKey(Mn)}):Qe.addKey(ut)}(oe||ne).forEach(function(ut,pn){var tt=oe&&Ze(oe[pn]),pn=ne&&Ze(ne[pn]);dt(tt,pn)!==0&&(tt!=null&&nt(tt),pn!=null)&&nt(pn)})}))):$e?(Te={from:(Le=$e.lower)!=null?Le:u.MIN_KEY,to:(_e=$e.upper)!=null?_e:u.MAX_KEY},Pe.add(Te),be.add(Te)):(be.add(y),Pe.add(y),R.indexes.forEach(function(ye){return X(ye.name).add(y)})),M.mutate(H).then(function(ye){return!$e||H.type!=="add"&&H.type!=="put"||(be.addKeys(ye.results),N&&N.forEach(function(Qe){for(var Ze=H.values.map(function(tt){return Qe.extractKey(tt)}),nt=Qe.keyPath.findIndex(function(tt){return tt===j.keyPath}),ut=0,Mn=ye.results.length;ut<Mn;++ut)Ze[ut][nt]=ye.results[ut];X(Qe.name).addKeys(Ze)})),ce.mutatedParts=ki(ce.mutatedParts||{},ge),ye})}}),G={get:function(H){return[j,new hn(H.key)]},getMany:function(H){return[j,new hn().addKeys(H.keys)]},count:_,query:_,openCursor:_};return a(G).forEach(function(H){W[H]=function(X){var K=Oe.subscr,oe=!!K,ne=Yf(Oe,M)&&Kf(H,X)?X.obsSet={}:K;if(oe){var ce,K=function(Te){return Te="idb://".concat(h,"/").concat(b,"/").concat(Te),ne[Te]||(ne[Te]=new hn)},ge=K(""),be=K(":dels"),oe=G[H](X),Pe=oe[0],oe=oe[1];if((H==="query"&&Pe.isPrimaryKey&&!X.values?be:K(Pe.name||"")).add(oe),!Pe.isPrimaryKey){if(H!=="count")return ce=H==="query"&&q&&X.values&&M.query(r(r({},X),{values:!1})),M[H].apply(this,arguments).then(function(Te){if(H==="query"){if(q&&X.values)return ce.then(function(Ze){return Ze=Ze.result,ge.addKeys(Ze),Te});var Le=X.values?Te.result.map(te):Te.result;(X.values?ge:be).addKeys(Le)}else{var ye,Qe;if(H==="openCursor")return Qe=X.values,(ye=Te)&&Object.create(ye,{key:{get:function(){return be.addKey(ye.primaryKey),ye.key}},primaryKey:{get:function(){var Ze=ye.primaryKey;return be.addKey(Ze),Ze}},value:{get:function(){return Qe&&ge.addKey(ye.primaryKey),ye.value}}})}return Te});be.add(y)}}return M[H].apply(this,arguments)}}),W}})}};function Vf(u,h,y){var b;return y.numFailures===0?h:h.type==="deleteRange"||(b=h.keys?h.keys.length:"values"in h&&h.values?h.values.length:1,y.numFailures===b)?null:(b=r({},h),i(b.keys)&&(b.keys=b.keys.filter(function(_,M){return!(M in y.failures)})),"values"in b&&i(b.values)&&(b.values=b.values.filter(function(_,M){return!(M in y.failures)})),b)}function Cc(u,h){return y=u,((b=h).lower===void 0||(b.lowerOpen?0<dt(y,b.lower):0<=dt(y,b.lower)))&&(y=u,(b=h).upper===void 0||(b.upperOpen?dt(y,b.upper)<0:dt(y,b.upper)<=0));var y,b}function Gf(u,h,y,b,_,M){var R,j,B,te,q,N,W;return!y||y.length===0||(R=h.query.index,j=R.multiEntry,B=h.query.range,te=b.schema.primaryKey.extractKey,q=R.extractKey,N=(R.lowLevelIndex||R).extractKey,(b=y.reduce(function(G,H){var X=G,K=[];if(H.type==="add"||H.type==="put")for(var oe=new hn,ne=H.values.length-1;0<=ne;--ne){var ce,ge=H.values[ne],be=te(ge);!oe.hasKey(be)&&(ce=q(ge),j&&i(ce)?ce.some(function(Le){return Cc(Le,B)}):Cc(ce,B))&&(oe.addKey(be),K.push(ge))}switch(H.type){case"add":var Pe=new hn().addKeys(h.values?G.map(function(ye){return te(ye)}):G),X=G.concat(h.values?K.filter(function(ye){return ye=te(ye),!Pe.hasKey(ye)&&(Pe.addKey(ye),!0)}):K.map(function(ye){return te(ye)}).filter(function(ye){return!Pe.hasKey(ye)&&(Pe.addKey(ye),!0)}));break;case"put":var _e=new hn().addKeys(H.values.map(function(ye){return te(ye)}));X=G.filter(function(ye){return!_e.hasKey(h.values?te(ye):ye)}).concat(h.values?K:K.map(function(ye){return te(ye)}));break;case"delete":var $e=new hn().addKeys(H.keys);X=G.filter(function(ye){return!$e.hasKey(h.values?te(ye):ye)});break;case"deleteRange":var Te=H.range;X=G.filter(function(ye){return!Cc(te(ye),Te)})}return X},u))===u)?u:(W=function(G,H){return dt(N(G),N(H))||dt(te(G),te(H))},b.sort(h.direction==="prev"||h.direction==="prevunique"?function(G,H){return W(H,G)}:W),h.limit&&h.limit<1/0&&(b.length>h.limit?b.length=h.limit:u.length===h.limit&&b.length<h.limit&&(_.dirty=!0)),M?Object.freeze(b):b)}function Jf(u,h){return dt(u.lower,h.lower)===0&&dt(u.upper,h.upper)===0&&!!u.lowerOpen==!!h.lowerOpen&&!!u.upperOpen==!!h.upperOpen}function fw(u,h){return((y,b,_,M)=>{if(y===void 0)return b!==void 0?-1:0;if(b===void 0)return 1;if((y=dt(y,b))===0){if(_&&M)return 0;if(_)return 1;if(M)return-1}return y})(u.lower,h.lower,u.lowerOpen,h.lowerOpen)<=0&&0<=((y,b,_,M)=>{if(y===void 0)return b!==void 0?1:0;if(b===void 0)return-1;if((y=dt(y,b))===0){if(_&&M)return 0;if(_)return-1;if(M)return 1}return y})(u.upper,h.upper,u.upperOpen,h.upperOpen)}function hw(u,h,y,b){u.subscribers.add(y),b.addEventListener("abort",function(){var _,M;u.subscribers.delete(y),u.subscribers.size===0&&(_=u,M=h,setTimeout(function(){_.subscribers.size===0&&ue(M,_)},3e3))})}var pw={stack:"dbcore",level:0,name:"Cache",create:function(u){var h=u.schema.name;return r(r({},u),{transaction:function(y,b,_){var M,R,j=u.transaction(y,b,_);return b==="readwrite"&&(_=(M=new AbortController).signal,j.addEventListener("abort",(R=function(B){return function(){if(M.abort(),b==="readwrite"){for(var te=new Set,q=0,N=y;q<N.length;q++){var W=N[q],G=Jr["idb://".concat(h,"/").concat(W)];if(G){var H=u.table(W),X=G.optimisticOps.filter(function(ye){return ye.trans===j});if(j._explicit&&B&&j.mutatedParts)for(var K=0,oe=Object.values(G.queries.query);K<oe.length;K++)for(var ne=0,ce=(Pe=oe[K]).slice();ne<ce.length;ne++)yc((_e=ce[ne]).obsSet,j.mutatedParts)&&(ue(Pe,_e),_e.subscribers.forEach(function(ye){return te.add(ye)}));else if(0<X.length){G.optimisticOps=G.optimisticOps.filter(function(ye){return ye.trans!==j});for(var ge=0,be=Object.values(G.queries.query);ge<be.length;ge++)for(var Pe,_e,$e,Te=0,Le=(Pe=be[ge]).slice();Te<Le.length;Te++)(_e=Le[Te]).res!=null&&j.mutatedParts&&(B&&!_e.dirty?($e=Object.isFrozen(_e.res),$e=Gf(_e.res,_e.req,X,H,_e,$e),_e.dirty?(ue(Pe,_e),_e.subscribers.forEach(function(ye){return te.add(ye)})):$e!==_e.res&&(_e.res=$e,_e.promise=Re.resolve({result:$e}))):(_e.dirty&&ue(Pe,_e),_e.subscribers.forEach(function(ye){return te.add(ye)})))}}}te.forEach(function(ye){return ye()})}}})(!1),{signal:_}),j.addEventListener("error",R(!1),{signal:_}),j.addEventListener("complete",R(!0),{signal:_})),j},table:function(y){var b=u.table(y),_=b.schema.primaryKey;return r(r({},b),{mutate:function(M){var R,j=Oe.trans;return!_.outbound&&j.db._options.cache!=="disabled"&&!j.explicit&&j.idbtrans.mode==="readwrite"&&(R=Jr["idb://".concat(h,"/").concat(y)])?(j=b.mutate(M),M.type!=="add"&&M.type!=="put"||!(50<=M.values.length||_c(_,M).some(function(B){return B==null}))?(R.optimisticOps.push(M),M.mutatedParts&&Ti(M.mutatedParts),j.then(function(B){0<B.numFailures&&(ue(R.optimisticOps,M),(B=Vf(0,M,B))&&R.optimisticOps.push(B),M.mutatedParts)&&Ti(M.mutatedParts)}),j.catch(function(){ue(R.optimisticOps,M),M.mutatedParts&&Ti(M.mutatedParts)})):j.then(function(B){var te=Vf(0,r(r({},M),{values:M.values.map(function(q,N){var W;return B.failures[N]?q:(O(W=(W=_.keyPath)!=null&&W.includes(".")?Y(q):r({},q),_.keyPath,B.results[N]),W)})}),B);R.optimisticOps.push(te),queueMicrotask(function(){return M.mutatedParts&&Ti(M.mutatedParts)})}),j):b.mutate(M)},query:function(M){var R,j,B,te,q,N,W;return Yf(Oe,b)&&Kf("query",M)?(R=((B=Oe.trans)==null?void 0:B.db._options.cache)==="immutable",j=(B=Oe).requery,B=B.signal,N=((G,H,X,K)=>{var oe=Jr["idb://".concat(G,"/").concat(H)];if(!oe)return[];if(!(G=oe.queries[X]))return[null,!1,oe,null];var ne=G[(K.query?K.query.index.name:null)||""];if(!ne)return[null,!1,oe,null];switch(X){case"query":var ce=(ge=K.direction)!=null?ge:"next",ge=ne.find(function(be){var Pe;return be.req.limit===K.limit&&be.req.values===K.values&&((Pe=be.req.direction)!=null?Pe:"next")===ce&&Jf(be.req.query.range,K.query.range)});return ge?[ge,!0,oe,ne]:[ne.find(function(be){var Pe;return("limit"in be.req?be.req.limit:1/0)>=K.limit&&((Pe=be.req.direction)!=null?Pe:"next")===ce&&(!K.values||be.req.values)&&fw(be.req.query.range,K.query.range)}),!1,oe,ne];case"count":return ge=ne.find(function(be){return Jf(be.req.query.range,K.query.range)}),[ge,!!ge,oe,ne]}})(h,y,"query",M),W=N[0],te=N[2],q=N[3],W&&N[1]?W.obsSet=M.obsSet:(N=b.query(M).then(function(G){var H=G.result;if(W&&(W.res=H),R){for(var X=0,K=H.length;X<K;++X)Object.freeze(H[X]);Object.freeze(H)}else G.result=Y(H);return G}).catch(function(G){return q&&W&&ue(q,W),Promise.reject(G)}),W={obsSet:M.obsSet,promise:N,subscribers:new Set,type:"query",req:M,dirty:!1},q?q.push(W):(q=[W],(te=te||(Jr["idb://".concat(h,"/").concat(y)]={queries:{query:{},count:{}},objs:new Map,optimisticOps:[],unsignaledParts:{}})).queries.query[M.query.index.name||""]=q)),hw(W,q,j,B),W.promise.then(function(G){return{result:Gf(G.result,M,te==null?void 0:te.optimisticOps,b,W,R)}})):b.query(M)}})}})}};function Ei(u,h){return new Proxy(u,{get:function(y,b,_){return b==="db"?h:Reflect.get(y,b,_)}})}Nt.prototype.version=function(u){if(isNaN(u)||u<.1)throw new L.Type("Given version is not a positive number");if(u=Math.round(10*u)/10,this.idbdb||this._state.isBeingOpened)throw new L.Schema("Cannot add version when database is open");this.verno=Math.max(this.verno,u);var h=this._versions,y=h.filter(function(b){return b._cfg.version===u})[0];return y||(y=new this.Version(u),h.push(y),h.sort(rw),y.stores({}),this._state.autoSchema=!1),y},Nt.prototype._whenReady=function(u){var h=this;return this.idbdb&&(this._state.openComplete||Oe.letThrough||this._vip)?u():new Re(function(y,b){if(h._state.openComplete)return b(new L.DatabaseClosed(h._state.dbOpenError));if(!h._state.isBeingOpened){if(!h._state.autoOpen)return void b(new L.DatabaseClosed);h.open().catch(Se)}h._state.dbReadyPromise.then(y,b)}).then(u)},Nt.prototype.use=function(_){var h=_.stack,y=_.create,b=_.level,_=_.name,M=(_&&this.unuse({stack:h,name:_}),this._middlewares[h]||(this._middlewares[h]=[]));return M.push({stack:h,create:y,level:b??10,name:_}),M.sort(function(R,j){return R.level-j.level}),this},Nt.prototype.unuse=function(u){var h=u.stack,y=u.name,b=u.create;return h&&this._middlewares[h]&&(this._middlewares[h]=this._middlewares[h].filter(function(_){return b?_.create!==b:!!y&&_.name!==y})),this},Nt.prototype.open=function(){var u=this;return xe(yn,function(){return iw(u)})},Nt.prototype._close=function(){this.on.close.fire(new CustomEvent("close"));var u=this._state;if(Co.remove(this),this.idbdb){try{this.idbdb.close()}catch{}this.idbdb=null}u.isBeingOpened||(u.dbReadyPromise=new Re(function(h){u.dbReadyResolve=h}),u.openCanceller=new Re(function(h,y){u.cancelOpen=y}))},Nt.prototype.close=function(h){var h=(h===void 0?{disableAutoOpen:!0}:h).disableAutoOpen,y=this._state;h?(y.isBeingOpened&&y.cancelOpen(new L.DatabaseClosed),this._close(),y.autoOpen=!1,y.dbOpenError=new L.DatabaseClosed):(this._close(),y.autoOpen=this._options.autoOpen||y.isBeingOpened,y.openComplete=!1,y.dbOpenError=null)},Nt.prototype.delete=function(u){var h=this,y=(u===void 0&&(u={disableAutoOpen:!0}),0<arguments.length&&typeof arguments[0]!="object"),b=this._state;return new Re(function(_,M){function R(){h.close(u);var j=h._deps.indexedDB.deleteDatabase(h.name);j.onsuccess=Ce(function(){var B,te,q;B=h._deps,te=h.name,pc(q=B.indexedDB)||te===vn||hc(q,B.IDBKeyRange).delete(te).catch(Se),_()}),j.onerror=Xn(M),j.onblocked=h._fireOnBlocked}if(y)throw new L.InvalidArgument("Invalid closeOptions argument to db.delete()");b.isBeingOpened?b.dbReadyPromise.then(R):R()})},Nt.prototype.backendDB=function(){return this.idbdb},Nt.prototype.isOpen=function(){return this.idbdb!==null},Nt.prototype.hasBeenClosed=function(){var u=this._state.dbOpenError;return u&&u.name==="DatabaseClosed"},Nt.prototype.hasFailed=function(){return this._state.dbOpenError!==null},Nt.prototype.dynamicallyOpened=function(){return this._state.autoSchema},Object.defineProperty(Nt.prototype,"tables",{get:function(){var u=this;return a(this._allTables).map(function(h){return u._allTables[h]})},enumerable:!1,configurable:!0}),Nt.prototype.transaction=function(){var u=(function(h,y,b){var _=arguments.length;if(_<2)throw new L.InvalidArgument("Too few arguments");for(var M=new Array(_-1);--_;)M[_-1]=arguments[_];return b=M.pop(),[h,J(M),b]}).apply(this,arguments);return this._transaction.apply(this,u)},Nt.prototype._transaction=function(u,h,y){var b,_,M=this,R=Oe.trans,j=(R&&R.db===this&&u.indexOf("!")===-1||(R=null),u.indexOf("?")!==-1);u=u.replace("!","").replace("?","");try{if(_=h.map(function(te){if(te=te instanceof M.Table?te.name:te,typeof te!="string")throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed");return te}),u=="r"||u===Ms)b=Ms;else{if(u!="rw"&&u!=sr)throw new L.InvalidArgument("Invalid transaction mode: "+u);b=sr}if(R){if(R.mode===Ms&&b===sr){if(!j)throw new L.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY");R=null}R&&_.forEach(function(te){if(R&&R.storeNames.indexOf(te)===-1){if(!j)throw new L.SubTransaction("Table "+te+" not included in parent transaction.");R=null}}),j&&R&&!R.active&&(R=null)}}catch(te){return R?R._promise(null,function(q,N){N(te)}):ft(te)}var B=(function te(q,N,W,G,H){return Re.resolve().then(function(){var ne=Oe.transless||Oe,X=q._createTransaction(N,W,q._dbSchema,G),ne=(X.explicit=!0,{trans:X,transless:ne});if(G)X.idbtrans=G.idbtrans;else try{X.create(),X.idbtrans._explicit=!0,q._state.PR1398_maxLoop=3}catch(ce){return ce.name===Me.InvalidState&&q.isOpen()&&0<--q._state.PR1398_maxLoop?(console.warn("Dexie: Need to reopen db"),q.close({disableAutoOpen:!1}),q.open().then(function(){return te(q,N,W,null,H)})):ft(ce)}var K,oe=ae(H),ne=(oe&&yr(),Re.follow(function(){var ce;(K=H.call(X,X))&&(oe?(ce=Un.bind(null,null),K.then(ce,ce)):typeof K.next=="function"&&typeof K.throw=="function"&&(K=wc(K)))},ne));return(K&&typeof K.then=="function"?Re.resolve(K).then(function(ce){return X.active?ce:ft(new L.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn"))}):ne.then(function(){return K})).then(function(ce){return G&&X._resolve(),X._completion.then(function(){return ce})}).catch(function(ce){return X._reject(ce),ft(ce)})})}).bind(null,this,b,_,R,y);return R?R._promise(b,B,"lock"):Oe.trans?xe(Oe.transless,function(){return M._whenReady(B)}):this._whenReady(B)},Nt.prototype.table=function(u){if(p(this._allTables,u))return this._allTables[u];throw new L.InvalidTable("Table ".concat(u," does not exist"))};var vr=Nt;function Nt(u,h){var y,b,_,M,R,j=this,B=(this._middlewares={},this.verno=0,Nt.dependencies),B=(this._options=h=r({addons:Nt.addons,autoOpen:!0,indexedDB:B.indexedDB,IDBKeyRange:B.IDBKeyRange,cache:"cloned",maxConnections:1e3},h),this._deps={indexedDB:h.indexedDB,IDBKeyRange:h.IDBKeyRange},h.addons),te=(this._dbSchema={},this._versions=[],this._storeNames=[],this._allTables={},this.idbdb=null,this._novip=this,{dbOpenError:null,isBeingOpened:!1,onReadyBeingFired:null,openComplete:!1,dbReadyResolve:Se,dbReadyPromise:null,cancelOpen:Se,openCanceller:null,autoSchema:!0,PR1398_maxLoop:3,autoOpen:h.autoOpen}),q=(te.dbReadyPromise=new Re(function(N){te.dbReadyResolve=N}),te.openCanceller=new Re(function(N,W){te.cancelOpen=W}),this._state=te,this.name=u,this.on=vo(this,"populate","blocked","versionchange","close",{ready:[xt,Se]}),this.once=function(N,W){var G=function(){for(var H=[],X=0;X<arguments.length;X++)H[X]=arguments[X];j.on(N).unsubscribe(G),W.apply(j,H)};return j.on(N,G)},this.on.ready.subscribe=E(this.on.ready.subscribe,function(N){return function(W,G){Nt.vip(function(){var H,X=j._state;X.openComplete?(X.dbOpenError||Re.resolve().then(W),G&&N(W)):X.onReadyBeingFired?(X.onReadyBeingFired.push(W),G&&N(W)):(N(W),H=j,G||N(function K(){H.on.ready.unsubscribe(W),H.on.ready.unsubscribe(K)}))})}}),this.Collection=(y=this,bo(GS.prototype,function(K,X){this.db=y;var G=go,H=null;if(X)try{G=X()}catch(ne){H=ne}var X=K._ctx,K=X.table,oe=K.hook.reading.fire;this._ctx={table:K,index:X.index,isPrimKey:!X.index||K.schema.primKey.keyPath&&X.index===K.schema.primKey.name,range:G,keysOnly:!1,dir:"next",unique:"",algorithm:null,filter:null,replayFilter:null,justLimit:!0,isMatch:null,offset:0,limit:1/0,error:H,or:X.or,valueMapper:oe!==De?oe:null}})),this.Table=(b=this,bo(jf.prototype,function(N,W,G){this.db=b,this._tx=G,this.name=N,this.schema=W,this.hook=b._allTables[N]?b._allTables[N].hook:vo(null,{creating:[He,Se],reading:[We,De],updating:[St,Se],deleting:[at,Se]})})),this.Transaction=(_=this,bo(ZS.prototype,function(N,W,G,H,X){var K=this;N!=="readonly"&&W.forEach(function(oe){oe=(oe=G[oe])==null?void 0:oe.yProps,oe&&(W=W.concat(oe.map(function(ne){return ne.updatesTable})))}),this.db=_,this.mode=N,this.storeNames=W,this.schema=G,this.chromeTransactionDurability=H,this.idbtrans=null,this.on=vo(this,"complete","error","abort"),this.parent=X||null,this.active=!0,this._reculock=0,this._blockedFuncs=[],this._resolve=null,this._reject=null,this._waitingFor=null,this._waitingQueue=null,this._spinCount=0,this._completion=new Re(function(oe,ne){K._resolve=oe,K._reject=ne}),this._completion.then(function(){K.active=!1,K.on.complete.fire()},function(oe){var ne=K.active;return K.active=!1,K.on.error.fire(oe),K.parent?K.parent._reject(oe):ne&&K.idbtrans&&K.idbtrans.abort(),ft(oe)})})),this.Version=(M=this,bo(aw.prototype,function(N){this.db=M,this._cfg={version:N,storesSource:null,dbschema:{},tables:{},contentUpgrade:null}})),this.WhereClause=(R=this,bo(Df.prototype,function(N,W,G){if(this.db=R,this._ctx={table:N,index:W===":id"?null:W,or:G},this._cmp=this._ascending=dt,this._descending=function(H,X){return dt(X,H)},this._max=function(H,X){return 0<dt(H,X)?H:X},this._min=function(H,X){return dt(H,X)<0?H:X},this._IDBKeyRange=R._deps.IDBKeyRange,!this._IDBKeyRange)throw new L.MissingAPI})),this.on("versionchange",function(N){0<N.newVersion?console.warn("Another connection wants to upgrade database '".concat(j.name,"'. Closing db now to resume the upgrade.")):console.warn("Another connection wants to delete database '".concat(j.name,"'. Closing db now to resume the delete request.")),j.close({disableAutoOpen:!1})}),this.on("blocked",function(N){!N.newVersion||N.newVersion<N.oldVersion?console.warn("Dexie.delete('".concat(j.name,"') was blocked")):console.warn("Upgrade '".concat(j.name,"' blocked by other connection holding version ").concat(N.oldVersion/10))}),this._maxKey=xo(h.IDBKeyRange),this._createTransaction=function(N,W,G,H){return new j.Transaction(N,W,G,j._options.chromeTransactionDurability,H)},this._fireOnBlocked=function(N){j.on("blocked").fire(N),Co.toArray().filter(function(W){return W.name===j.name&&W!==j&&!W._state.vcFired}).map(function(W){return W.on("versionchange").fire(N)})},this.use(uw),this.use(pw),this.use(dw),this.use(lw),this.use(cw),new Proxy(this,{get:function(N,W,G){var H;return W==="_vip"||(W==="table"?function(X){return Ei(j.table(X),q)}:(H=Reflect.get(N,W,G))instanceof jf?Ei(H,q):W==="tables"?H.map(function(X){return Ei(X,q)}):W==="_createTransaction"?function(){return Ei(H.apply(this,arguments),q)}:H)}}));this.vip=q,B.forEach(function(N){return N(j)})}var Mi,Is=typeof Symbol<"u"&&"observable"in Symbol?Symbol.observable:"@@observable",mw=(kc.prototype.subscribe=function(u,h,y){return this._subscribe(u&&typeof u!="function"?u:{next:u,error:h,complete:y})},kc.prototype[Is]=function(){return this},kc);function kc(u){this._subscribe=u}try{Mi={indexedDB:o.indexedDB||o.mozIndexedDB||o.webkitIndexedDB||o.msIndexedDB,IDBKeyRange:o.IDBKeyRange||o.webkitIDBKeyRange}}catch{Mi={indexedDB:null,IDBKeyRange:null}}function Qf(u){var h,y=!1,b=new mw(function(_){var M=ae(u),R,j=!1,B={},te={},q={get closed(){return j},unsubscribe:function(){j||(j=!0,R&&R.abort(),N&&Mr.storagemutated.unsubscribe(H))}},N=(_.start&&_.start(q),!1),W=function(){return Xt(X)};function G(){return yc(te,B)}var H=function(K){ki(B,K),G()&&W()},X=function(){var K,oe,ne;!j&&Mi.indexedDB&&(B={},K={},R&&R.abort(),R=new AbortController,ne=(ce=>{var ge=Wn();try{M&&yr();var be=rr(u,ce);return be=M?be.finally(Un):be}finally{ge&&Cn()}})(oe={subscr:K,signal:R.signal,requery:W,querier:u,trans:null}),N||(Mr(wo,H),N=!0),Promise.resolve(ne).then(function(ce){y=!0,h=ce,j||oe.signal.aborted||(G()||(te=K,G())?W():(B={},Xt(function(){return!j&&_.next&&_.next(ce)})))},function(ce){y=!1,["DatabaseClosedError","AbortError"].includes(ce==null?void 0:ce.name)||j||Xt(function(){j||_.error&&_.error(ce)})}))};return setTimeout(W,0),q});return b.hasValue=function(){return y},b.getValue=function(){return h},b}var Qr=vr;function Tc(u){var h=Rr;try{Rr=!0,Mr.storagemutated.fire(u),Sc(u,!0)}finally{Rr=h}}v(Qr,r(r({},ve),{delete:function(u){return new Qr(u,{addons:[]}).delete()},exists:function(u){return new Qr(u,{addons:[]}).open().then(function(h){return h.close(),!0}).catch("NoSuchDatabaseError",function(){return!1})},getDatabaseNames:function(u){try{return h=Qr.dependencies,y=h.indexedDB,h=h.IDBKeyRange,(pc(y)?Promise.resolve(y.databases()).then(function(b){return b.map(function(_){return _.name}).filter(function(_){return _!==vn})}):hc(y,h).toCollection().primaryKeys()).then(u)}catch{return ft(new L.MissingAPI)}var h,y},defineClass:function(){return function(u){c(this,u)}},ignoreTransaction:function(u){return Oe.trans?xe(Oe.transless||yn,u):u()},vip:mc,async:function(u){return function(){try{var h=wc(u.apply(this,arguments));return h&&typeof h.then=="function"?h:Re.resolve(h)}catch(y){return ft(y)}}},spawn:function(u,h,y){try{var b=wc(u.apply(y,h||[]));return b&&typeof b.then=="function"?b:Re.resolve(b)}catch(_){return ft(_)}},currentTransaction:{get:function(){return Oe.trans||null}},waitFor:function(u,h){return u=Re.resolve(typeof u=="function"?Qr.ignoreTransaction(u):u).timeout(h||6e4),Oe.trans?Oe.trans.waitFor(u):u},Promise:Re,debug:{get:function(){return Fe},set:function(u){lt(u)}},derive:m,extend:c,props:v,override:E,Events:vo,on:Mr,liveQuery:Qf,extendObservabilitySet:ki,getByKeyPath:A,setByKeyPath:O,delByKeyPath:function(u,h){typeof h=="string"?O(u,h,void 0):"length"in h&&[].map.call(h,function(y){O(u,y,void 0)})},shallowClone:$,deepClone:Y,getObjectDiff:xc,cmp:dt,asap:P,minKey:-1/0,addons:[],connections:{get:Co.toArray},errnames:Me,dependencies:Mi,cache:Jr,semVer:"4.4.2",version:"4.4.2".split(".").map(function(u){return parseInt(u)}).reduce(function(u,h,y){return u+h/Math.pow(10,2*y)})})),Qr.maxKey=xo(Qr.dependencies.IDBKeyRange),typeof dispatchEvent<"u"&&typeof addEventListener<"u"&&(Mr(wo,function(u){Rr||(u=new CustomEvent(ac,{detail:u}),Rr=!0,dispatchEvent(u),Rr=!1)}),addEventListener(ac,function(u){u=u.detail,Rr||Tc(u)}));var Os,Rr=!1,Zf=function(){};return typeof BroadcastChannel<"u"&&((Zf=function(){(Os=new BroadcastChannel(ac)).onmessage=function(u){return u.data&&Tc(u.data)}})(),typeof Os.unref=="function"&&Os.unref(),Mr(wo,function(u){Rr||Os.postMessage(u)})),typeof addEventListener<"u"&&(addEventListener("pagehide",function(u){if(!vr.disableBfCache&&u.persisted){Fe&&console.debug("Dexie: handling persisted pagehide"),Os!=null&&Os.close();for(var h=0,y=Co.toArray();h<y.length;h++)y[h].close({disableAutoOpen:!1})}}),addEventListener("pageshow",function(u){!vr.disableBfCache&&u.persisted&&(Fe&&console.debug("Dexie: handling persisted pageshow"),Zf(),Tc({all:new hn(-1/0,[[]])}))})),Re.rejectionMapper=function(u,h){return!u||u instanceof le||u instanceof TypeError||u instanceof SyntaxError||!u.name||!fe[u.name]?u:(h=new fe[u.name](h||u.message,u),"stack"in u&&w(h,"stack",{get:function(){return this.inner.stack}}),h)},lt(Fe),r(vr,Object.freeze({__proto__:null,DEFAULT_MAX_CONNECTIONS:1e3,Dexie:vr,Entity:Pf,PropModification:yo,RangeSet:hn,add:function(u){return new yo({add:u})},cmp:dt,default:vr,liveQuery:Qf,mergeRanges:To,rangesOverlap:Wf,remove:function(u){return new yo({remove:u})},replacePrefix:function(u,h){return new yo({replacePrefix:[u,h]})}}),{default:vr}),vr})}(tl)),tl.exports}var l0=i0();const Ou=Cs(l0),Th=Symbol.for("Dexie"),_l=globalThis[Th]||(globalThis[Th]=Ou);if(Ou.semVer!==_l.semVer)throw new Error(`Two different versions of Dexie loaded in the same app: ${Ou.semVer} and ${_l.semVer}`);const{liveQuery:J$,mergeRanges:Q$,rangesOverlap:Z$,RangeSet:eL,cmp:tL,Entity:nL,PropModification:rL,replacePrefix:sL,add:oL,remove:aL,DexieYProvider:iL}=_l;class c0 extends _l{constructor(){super("LotusStorage");vt(this,"scrollAnchors");vt(this,"toolSessionCollapses");vt(this,"diffCollapses");vt(this,"inputStates");vt(this,"modelOptionsCaches");this.version(1).stores({scrollAnchors:"sessionId, ts",toolSessionCollapses:"id, sessionId, updatedAt",diffCollapses:"sessionId, updatedAt",inputStates:"sessionId, updatedAt",modelOptionsCaches:"provider, timestamp"})}}const u0=new c0,fs=class fs{constructor(){vt(this,"db",u0)}static getInstance(){return fs.instance||(fs.instance=new fs),fs.instance}async saveScrollAnchor(t,n){try{await this.db.scrollAnchors.put({sessionId:t,anchorId:n.anchorId,offsetPx:n.offsetPx,ts:n.ts,indexHint:n.indexHint,createdAt:n.createdAt})}catch(r){console.warn("[StorageManager] IndexedDB save failed, falling back to localStorage",r);try{localStorage.setItem(`chat_scroll_anchor_v2:${t}`,JSON.stringify(n))}catch{}}}async loadScrollAnchor(t){try{const n=await this.db.scrollAnchors.get(t);return n?{v:1,anchorId:n.anchorId,offsetPx:n.offsetPx,ts:n.ts,indexHint:n.indexHint,createdAt:n.createdAt}:null}catch{try{const n=localStorage.getItem(`chat_scroll_anchor_v2:${t}`);if(!n)return null;const r=JSON.parse(n);if(r&&r.v===1&&typeof r.anchorId=="string")return r}catch{}return null}}async clearScrollAnchor(t){try{await this.db.scrollAnchors.delete(t)}catch{}try{localStorage.removeItem(`chat_scroll_anchor_v2:${t}`)}catch{}}async saveToolSessionCollapse(t,n,r){try{await this.db.toolSessionCollapses.put({id:`${t}:${n}`,sessionId:t,toolSessionId:n,isExpanded:r.isExpanded,expandedTools:r.expandedTools,updatedAt:Date.now()})}catch(s){console.warn("[StorageManager] saveToolSessionCollapse failed",s);try{localStorage.setItem(`chat-session-tool-collapse:${t}:${n}`,JSON.stringify(r))}catch{}}}async loadToolSessionCollapse(t,n){try{const r=await this.db.toolSessionCollapses.get(`${t}:${n}`);return r?{isExpanded:r.isExpanded,expandedTools:r.expandedTools}:null}catch{try{const r=localStorage.getItem(`chat-session-tool-collapse:${t}:${n}`);if(!r)return null;const s=JSON.parse(r);if(s&&typeof s.isExpanded=="boolean")return s}catch{}return null}}async saveDiffCollapse(t,n){try{await this.db.diffCollapses.put({sessionId:t,isExpanded:n.isExpanded,expandedFiles:n.expandedFiles,updatedAt:Date.now()})}catch(r){console.warn("[StorageManager] saveDiffCollapse failed",r);try{localStorage.setItem(`chat-session-diff-collapse:${t}`,JSON.stringify(n))}catch{}}}async loadDiffCollapse(t){try{const n=await this.db.diffCollapses.get(t);return n?{isExpanded:n.isExpanded,expandedFiles:n.expandedFiles}:null}catch{try{const n=localStorage.getItem(`chat-session-diff-collapse:${t}`);if(!n)return null;const r=JSON.parse(n);if(r&&typeof r.isExpanded=="boolean")return r}catch{}return null}}async saveInputReasoning(t,n){try{const r=await this.db.inputStates.get(t);await this.db.inputStates.put({sessionId:t,reasoningEffort:n,content:r==null?void 0:r.content,referenceText:r==null?void 0:r.referenceText,updatedAt:Date.now()})}catch(r){console.warn("[StorageManager] saveInputReasoning failed",r);try{const s=localStorage.getItem("chat_input_reasoning_by_session_v1"),o=s?JSON.parse(s):{};o[t]=n,localStorage.setItem("chat_input_reasoning_by_session_v1",JSON.stringify(o))}catch{}}}async loadInputReasoning(t){try{const n=await this.db.inputStates.get(t);return(n==null?void 0:n.reasoningEffort)??null}catch{try{const n=localStorage.getItem("chat_input_reasoning_by_session_v1");return n?JSON.parse(n)[t]??null:null}catch{return null}}}async saveLastUsedReasoningEffort(t){try{await this.db.inputStates.put({sessionId:"__last_used__",reasoningEffort:t,updatedAt:Date.now()})}catch{try{localStorage.setItem("chat_input_reasoning_last_used_v1",t)}catch{}}}async loadLastUsedReasoningEffort(){try{const t=await this.db.inputStates.get("__last_used__");return(t==null?void 0:t.reasoningEffort)??null}catch{try{return localStorage.getItem("chat_input_reasoning_last_used_v1")}catch{return null}}}async saveModelOptionsCache(t,n,r){try{await this.db.modelOptionsCaches.put({provider:t,options:n,timestamp:r})}catch(s){console.warn("[StorageManager] saveModelOptionsCache failed",s);try{localStorage.setItem(`chat-model-options-cache-v1:${t}`,JSON.stringify({timestamp:r,options:n}))}catch{}}}async loadModelOptionsCache(t){try{const n=await this.db.modelOptionsCaches.get(t);return n?{options:n.options,timestamp:n.timestamp}:null}catch{try{const n=localStorage.getItem(`chat-model-options-cache-v1:${t}`);if(!n)return null;const r=JSON.parse(n);if(r&&Array.isArray(r.options))return{options:r.options,timestamp:r.timestamp}}catch{}return null}}async clearSessionData(t){try{await Promise.all([this.db.scrollAnchors.delete(t),this.db.diffCollapses.delete(t),this.db.toolSessionCollapses.where("sessionId").equals(t).delete(),this.db.inputStates.delete(t)])}catch{}}async cleanupStaleData(t=30){const n=Date.now()-t*24*60*60*1e3;try{await Promise.all([this.db.scrollAnchors.where("ts").below(n).delete(),this.db.toolSessionCollapses.where("updatedAt").below(n).delete(),this.db.diffCollapses.where("updatedAt").below(n).delete(),this.db.inputStates.where("updatedAt").below(n).delete(),this.db.modelOptionsCaches.where("timestamp").below(n).delete()])}catch{}}async getStats(){try{const[t,n,r,s,o]=await Promise.all([this.db.scrollAnchors.count(),this.db.toolSessionCollapses.count(),this.db.diffCollapses.count(),this.db.inputStates.count(),this.db.modelOptionsCaches.count()]);return{scrollAnchors:t,toolSessionCollapses:n,diffCollapses:r,inputStates:s,modelOptionsCaches:o}}catch{return{scrollAnchors:0,toolSessionCollapses:0,diffCollapses:0,inputStates:0,modelOptionsCaches:0}}}};vt(fs,"instance");let On=fs;const Py="chat_input_reasoning_by_session_v1",Ey="chat_input_reasoning_last_used_v1",Ph={content:"",referenceText:null,attachments:[],reasoningEffort:"medium"},Od=e=>e==="low"||e==="medium"||e==="high"||e==="xhigh"||e==="max",My=()=>{if(typeof window>"u")return{};try{const e=localStorage.getItem(Py);if(!e)return{};const t=JSON.parse(e),n={};for(const[r,s]of Object.entries(t||{}))Od(s)&&(n[r]=s);return n}catch{return{}}},d0=e=>{if(!(typeof window>"u"))try{localStorage.setItem(Py,JSON.stringify(e))}catch{}},f0=()=>{if(!(typeof window>"u"))try{const e=localStorage.getItem(Ey);return Od(e)?e:void 0}catch{return}},h0=e=>{if(!(typeof window>"u"))try{localStorage.setItem(Ey,e)}catch{}},Ry=e=>{const t=My();return Od(t[e])?t[e]:f0()},Ro=e=>({...Ph,reasoningEffort:Ry(e)??Ph.reasoningEffort}),p0=(e,t)=>({inputStates:{},setInputContent:(n,r)=>e(s=>({inputStates:{...s.inputStates,[n]:{...s.inputStates[n]||Ro(n),content:r}}})),setReferenceText:(n,r)=>e(s=>({inputStates:{...s.inputStates,[n]:{...s.inputStates[n]||Ro(n),referenceText:r}}})),setAttachments:(n,r)=>e(s=>({inputStates:{...s.inputStates,[n]:{...s.inputStates[n]||Ro(n),attachments:r}}})),setInputReasoningEffort:(n,r)=>{e(a=>({inputStates:{...a.inputStates,[n]:{...a.inputStates[n]||Ro(n),reasoningEffort:r}}}));const s=My();s[n]=r,d0(s),h0(r);const o=On.getInstance();o.saveInputReasoning(n,r).catch(()=>{}),o.saveLastUsedReasoningEffort(r).catch(()=>{})},clearInputState:n=>e(r=>{const{[n]:s,...o}=r.inputStates;return{inputStates:o}}),getInputState:n=>t().inputStates[n]||Ro(n)}),$d="lotus_account_feed_cursor_v1",m0=400;let Eh=null,Lc=null;const g0=()=>{try{const e=localStorage.getItem($d),t=e?Number.parseInt(e,10):0;return Number.isFinite(t)&&t>0?t:0}catch{return 0}},y0=e=>{try{localStorage.setItem($d,String(e))}catch{}},v0=()=>{try{localStorage.removeItem($d)}catch{}},Dc=()=>{Lc||(Lc=setTimeout(()=>{Lc=null,Z.getState().refreshSessionsIndex()},m0))},b0=e=>{const{event:t}=e,n=Z.getState(),r=e.session_id??t.session_id;switch(t.type){case"session_title_updated":r&&typeof t.title=="string"&&n.applyServerTitle(r,t.title,t.title_version??0),Dc();break;case"session_pinned_updated":r&&typeof t.pinned=="boolean"&&n.applyServerPinned(r,t.pinned,t.updated_at??e.ts),Dc();break;case"session_created":case"session_deleted":case"session_cleared":case"message_appended":case"task_list_updated":case"task_list_item_progress":case"task_list_completed":case"complete":case"cancelled":case"error":case"execution_started":case"need_clarification":default:Dc();break}},S0=()=>{if(Eh||typeof EventSource>"u")return;Eh=Pn.getInstance().subscribeToAccountStream({onOpen:()=>{Z.getState().setAgentAvailability(!0)},onError:()=>{Z.getState().setAgentAvailability(!1)},onReset:()=>{v0(),Z.getState().refreshSessionsIndex()},onChange:t=>{Z.getState().setAgentAvailability(!0),y0(t.seq),b0(t)}},{since:g0()})},w0="bamboo_proxy_auth",x0=()=>{try{const e=localStorage.getItem(w0);if(!e)return null;const t=JSON.parse(e);if(!t||typeof t!="object")return null;const n=typeof t.username=="string"?t.username.trim():"",r=typeof t.password=="string"?t.password:"";return n?{username:n,password:r}:null}catch{return null}},Ay={byId:{},runningCount:0},_0=[],_n=(e,t)=>t?e.executionBySession[t]??null:null,C0=e=>t=>_n(t,e),k0=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.phase)??"idle"},si=e=>t=>{const n=_n(t,e);return Ad(n==null?void 0:n.phase)},jy=e=>t=>{const n=_n(t,e);return n?n.phase==="streaming"?!0:n.phase==="running_tools"&&n.stream.hasTokens:!1},T0=e=>t=>{const n=_n(t,e);return n?n.phase==="waiting_user_answer"||n.interaction.pendingQuestion!==null||n.backend.hasPendingQuestion===!0:!1},Iy=e=>t=>{const n=_n(t,e);return l_(n==null?void 0:n.phase)},Oy=e=>t=>{const n=_n(t,e);return c_(n==null?void 0:n.phase)},Vn=e=>t=>{const n=_n(t,e);return Ad(n==null?void 0:n.phase)?(n==null?void 0:n.phase)!=="waiting_user_answer":!1},P0=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.stream.activeToolCalls)??_0},so=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.interaction.pendingQuestion)??null},E0=e=>t=>{if(!e)return null;const n=so(e)(t);return n?{sessionId:e,question:n.question,options:n.options,allowCustom:n.allowCustom,toolCallId:n.toolCallId}:null},Ul=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.children.byId)??Ay.byId},M0=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.children)??Ay},Ct=e=>t=>{const n=_n(t,e);return(n==null?void 0:n.generation)??0},R0=Object.freeze({state:"idle",activeToolCalls:[],runningChildCount:0,hasQuestion:!1,hasError:!1,errorMessage:null,generation:0}),A0=e=>t=>{var r;const n=_n(t,e);return n?{state:n.phase,activeToolCalls:n.stream.activeToolCalls,runningChildCount:n.children.runningCount,hasQuestion:n.interaction.pendingQuestion!==null,hasError:n.error!==null,errorMessage:((r=n.error)==null?void 0:r.message)??null,generation:n.generation}:R0},j0=e=>t=>e.map(n=>({sessionId:n??"",entry:_n(t,n)})),I0="auto",O0="required",$0=1e4,L0=15e3,D0=Pn.getInstance();let Mh=null,Ao=null,Rh=null,jo=null;const Ah=new WeakMap,Z=Xr()(Jx(Zx((e,t,n)=>({...q_(e,t),...K_(e,t),...Q_(e,t),...e0(),...n0(e,t),...r0(e),...o0(e,t),...p0(e,t),...__(e,t),agentAvailability:null,setAgentAvailability:r=>{e({agentAvailability:r})},checkAgentAvailability:async()=>{if(Ao)return Ao;Ao=(async()=>{const r=await D0.healthCheck();return t().agentAvailability!==r&&e({agentAvailability:r}),r})();try{return await Ao}finally{Ao=null}},startAgentHealthCheck:()=>{Mh||(t().checkAgentAvailability(),Mh=setInterval(()=>{t().checkAgentAvailability()},$0))},refreshSessionsIndex:async()=>{if(jo)return jo;jo=(async()=>{try{await t().refreshChats()}catch(r){console.warn("[AppStore] refreshChats failed:",r)}})();try{return await jo}finally{jo=null}},startSessionsIndexSync:()=>{Rh||(t().refreshSessionsIndex(),Rh=setInterval(()=>{t().refreshSessionsIndex()},L0))}})),{name:"AppStore"})),$y=e=>{const t=Ah.get(e);if(t)return t;const n=new Map(e.map(r=>[r.id,r]));return Ah.set(e,n),n},mr=e=>t=>e?$y(t.chats).get(e)??null:null,Ly=e=>e.currentSessionId?$y(e.chats).get(e.currentSessionId)??null:null,F0=e=>{var t;return((t=Ly(e))==null?void 0:t.messages)??[]},jh=async()=>{const e=x0();if(!e)return!1;try{return await as.setProxyAuth(e),!0}catch(t){return console.error("Failed to apply stored proxy auth during startup:",t),!1}},N0=async()=>{try{const e=await Iu.getState().loadConfig();if((typeof(e==null?void 0:e.proxy_auth_mode)=="string"?e.proxy_auth_mode:I0)!==O0)return await jh(),!1;const n=await Iu.getState().loadProxyAuthStatus({force:!0});return n!=null&&n.configured||await jh()?!1:(Z.setState(s=>({...s,models:[],selectedModel:void 0,modelsError:"Proxy auth mode is set to required. Please configure proxy username/password and apply it.",isLoadingModels:!1})),!0)}catch(e){return console.error("Failed to evaluate startup proxy auth mode:",e),!1}};let Ih=!1,Dy=!1,Oi=null;const Ld=async(e=!1)=>{if(Ih&&!e)return;if(Ih=!0,S0(),Z.getState().startAgentHealthCheck(),Z.getState().startSessionsIndexSync(),!(typeof globalThis<"u"&&"__vitest_worker__"in globalThis))try{await mt.getState().loadProviderInstances(),mt.getState().isInstancesLoaded||await mt.getState().loadProviderConfig()}catch(n){console.error("[AppStore] Failed to bootstrap provider state:",n)}await Z.getState().loadChats(),Dy=!0},Dd=async()=>{if(Dy)return Oi||(Oi=(async()=>{try{await N0()||await Z.getState().fetchModels(),await Z.getState().loadSystemPrompts()}catch(e){console.error("[AppStore] Deferred bootstrap failed:",e)}})(),Oi)},z0=async(e=!1)=>{await Ld(e),Dd().catch(t=>{console.error("[AppStore] Deferred bootstrap error:",t)})},lL=Object.freeze(Object.defineProperty({__proto__:null,bootstrapCritical:Ld,bootstrapDeferred:Dd,initializeStore:z0,selectActiveToolCalls:P0,selectCanCancel:Oy,selectChildren:Ul,selectChildrenSnapshot:M0,selectCurrentChat:Ly,selectCurrentMessages:F0,selectExecutionByPane:j0,selectExecutionPhase:k0,selectExecutionState:C0,selectGeneration:Ct,selectIsAwaitingUser:T0,selectIsBusy:si,selectIsInputLocked:Iy,selectIsStreaming:jy,selectPendingQuestion:so,selectRailModel:A0,selectRespondMode:E0,selectSessionById:mr,selectShouldObserve:Vn,useAppStore:Z},Symbol.toStringTag,{value:"Module"})),Fy="copilot_ui_layout_v1",Fd={collapsed:!1,widthPx:260,collapsedWidthPx:72,minWidthPx:180,maxWidthPx:520},zr={widthPx:520,minWidthPx:420,maxWidthPx:840},Ny={v:2,sidebar:Fd,inspector:zr,tree:{type:"leaf",id:"lt"},activeLeafId:"lt",leafSessionIds:{lt:null},splitSizesPx:{}},Oh=e=>{const t=typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():`${Date.now()}-${Math.random().toString(16).slice(2)}`;return`${e}-${t}`},Fn=e=>e.type==="leaf"?[e.id]:[...Fn(e.children[0]),...Fn(e.children[1])],Ya=e=>e.type==="leaf"?[]:[e.id,...Ya(e.children[0]),...Ya(e.children[1])],B0=(e,t)=>{for(const[n,r]of Object.entries(e))if(r===t)return n;return null},W0=(e,t)=>{const n={},r=new Set;return e.forEach(s=>{const o=t[s]??null;if(!o||r.has(o)){n[s]=null;return}r.add(o),n[s]=o}),n},$u=(e,t,n,r,s)=>e.type==="leaf"?e.id!==t?e:{type:"split",id:r,layout:n,children:[e,{type:"leaf",id:s}]}:{...e,children:[$u(e.children[0],t,n,r,s),$u(e.children[1],t,n,r,s)]},Lu=(e,t)=>{if(e.type==="leaf")return e.id===t?{node:null,removed:!0}:{node:e,removed:!1};const n=Lu(e.children[0],t);if(n.removed)return n.node?{node:{...e,children:[n.node,e.children[1]]},removed:!0}:{node:e.children[1],removed:!0};const r=Lu(e.children[1],t);return r.removed?r.node?{node:{...e,children:[e.children[0],r.node]},removed:!0}:{node:e.children[0],removed:!0}:{node:e,removed:!1}},U0=()=>{try{return localStorage.getItem(Fy)}catch(e){return console.warn("[uiLayoutStore] Failed to read persisted layout:",e),null}},q0=e=>({v:2,sidebar:e.sidebar,inspector:e.inspector,tree:e.tree,activeLeafId:e.activeLeafId,leafSessionIds:e.leafSessionIds,splitSizesPx:e.splitSizesPx}),H0=e=>{try{localStorage.setItem(Fy,JSON.stringify(e))}catch(t){console.warn("[uiLayoutStore] Failed to persist layout:",t)}},ar=e=>{const t=q0(e);return H0(t),t},X0=e=>{var g,w,m,x,k,C,E,T,P,A,O;const t={...Fd,...e.sidebar||{}},n={...zr},r=((g=e.view)==null?void 0:g.mode)??"single",s=((w=e.view)==null?void 0:w.twoDirection)??"horizontal",o={...((m=e.panes)==null?void 0:m.sessionIds)||{}},a=((x=e.panes)==null?void 0:x.activePaneId)??"lt",i={};if(r==="single")return{v:2,sidebar:t,inspector:n,tree:{type:"leaf",id:"lt"},activeLeafId:"lt",leafSessionIds:{lt:o.lt??null},splitSizesPx:{}};if(r==="two"){const $="split-root",U=s,J=U==="horizontal"?{type:"split",id:$,layout:U,children:[{type:"leaf",id:"lt"},{type:"leaf",id:"rt"}]}:{type:"split",id:$,layout:U,children:[{type:"leaf",id:"lt"},{type:"leaf",id:"lb"}]},ee=U==="horizontal"?((k=e.split)==null?void 0:k.twoHorizontalPx)||((C=e.split)==null?void 0:C.columnsPx)||null:((E=e.split)==null?void 0:E.twoVerticalPx)||((T=e.split)==null?void 0:T.leftRowsPx)||null;ee&&(i[$]=ee);const I=Fn(J);return{v:2,sidebar:t,inspector:n,tree:J,activeLeafId:I.includes(a)?a:I[0],leafSessionIds:Object.fromEntries(I.map(Y=>[Y,o[Y]??null])),splitSizesPx:i}}const c="split-root",d="split-left",f="split-right",p={type:"split",id:c,layout:"horizontal",children:[{type:"split",id:d,layout:"vertical",children:[{type:"leaf",id:"lt"},{type:"leaf",id:"lb"}]},{type:"split",id:f,layout:"vertical",children:[{type:"leaf",id:"rt"},{type:"leaf",id:"rb"}]}]};(P=e.split)!=null&&P.columnsPx&&(i[c]=e.split.columnsPx),(A=e.split)!=null&&A.leftRowsPx&&(i[d]=e.split.leftRowsPx),(O=e.split)!=null&&O.rightRowsPx&&(i[f]=e.split.rightRowsPx);const v=Fn(p);return{v:2,sidebar:t,inspector:n,tree:p,activeLeafId:v.includes(a)?a:v[0],leafSessionIds:Object.fromEntries(v.map($=>[$,o[$]??null])),splitSizesPx:i}},Y0=e=>{if(!e)return null;try{const t=JSON.parse(e);if(!t||typeof t!="object")return null;if(t.v===2){const n={...Fd,...t.sidebar||{}},r=t.inspector||{},s={...zr,...r},o=Math.max(zr.minWidthPx,Number.isFinite(s.minWidthPx)?s.minWidthPx:zr.minWidthPx),a=Math.max(o,Math.max(zr.maxWidthPx,Number.isFinite(s.maxWidthPx)?s.maxWidthPx:zr.maxWidthPx)),c={widthPx:Math.max(o,Math.min(a,Number.isFinite(s.widthPx)?s.widthPx:zr.widthPx)),minWidthPx:o,maxWidthPx:a},d=t.tree||Ny.tree,f=Fn(d),p=Ya(d),v={};f.forEach(x=>{var k;v[x]=typeof((k=t.leafSessionIds)==null?void 0:k[x])=="string"?t.leafSessionIds[x]:null});const g={};p.forEach(x=>{var C;const k=(C=t.splitSizesPx)==null?void 0:C[x];Array.isArray(k)&&k.length>=2&&(g[x]=[Number(k[0]),Number(k[1])])});const w=typeof t.activeLeafId=="string"&&f.includes(t.activeLeafId)?t.activeLeafId:f[0],m=W0(f,v);return{v:2,sidebar:n,inspector:c,tree:d,activeLeafId:w,leafSessionIds:m,splitSizesPx:g}}return t.v===1?X0(t):null}catch{return null}},K0=()=>Y0(U0())??Ny,ct=Xr(e=>({...K0(),setSidebarCollapsed:t=>{e(n=>n.sidebar.collapsed===t?n:ar({sidebar:{...n.sidebar,collapsed:t},inspector:n.inspector,tree:n.tree,activeLeafId:n.activeLeafId,leafSessionIds:n.leafSessionIds,splitSizesPx:n.splitSizesPx}))},setSidebarWidthPx:t=>{e(n=>{const r=Math.max(n.sidebar.minWidthPx,Math.min(n.sidebar.maxWidthPx,t));return n.sidebar.widthPx===r?n:ar({sidebar:{...n.sidebar,widthPx:r},inspector:n.inspector,tree:n.tree,activeLeafId:n.activeLeafId,leafSessionIds:n.leafSessionIds,splitSizesPx:n.splitSizesPx})})},setInspectorWidthPx:t=>{e(n=>{const r=Math.max(n.inspector.minWidthPx,Math.min(n.inspector.maxWidthPx,t));return n.inspector.widthPx===r?n:ar({sidebar:n.sidebar,inspector:{...n.inspector,widthPx:r},tree:n.tree,activeLeafId:n.activeLeafId,leafSessionIds:n.leafSessionIds,splitSizesPx:n.splitSizesPx})})},setActiveLeafId:t=>{e(n=>n.activeLeafId===t||!Fn(n.tree).includes(t)?n:(Dn("setActiveLeafId",{from:n.activeLeafId,to:t}),ar({sidebar:n.sidebar,inspector:n.inspector,tree:n.tree,activeLeafId:t,leafSessionIds:n.leafSessionIds,splitSizesPx:n.splitSizesPx})))},setLeafSessionId:(t,n)=>{e(r=>{const s=Fn(r.tree);if(!s.includes(t)||(r.leafSessionIds[t]??null)===n)return r;const o=[];Dn("setLeafSessionId",{leafId:t,fromSessionId:r.leafSessionIds[t]??null,toSessionId:n,mode:"unique_session_per_leaf"});const a={...r.leafSessionIds,[t]:n};if(n)for(const i of s)i!==t&&a[i]===n&&(a[i]=null,o.push(i));return o.length>0&&Dn("setLeafSessionId dedupe",{sessionId:n,clearedLeafIds:o,assignedLeafId:t}),s.forEach(i=>{i in a||(a[i]=null)}),ar({sidebar:r.sidebar,inspector:r.inspector,tree:r.tree,activeLeafId:r.activeLeafId,leafSessionIds:a,splitSizesPx:r.splitSizesPx})})},clearSessionFromAllLeaves:t=>{e(n=>{const r={...n.leafSessionIds};let s=!1;for(const[o,a]of Object.entries(r))a===t&&(r[o]=null,s=!0);return s?ar({sidebar:n.sidebar,inspector:n.inspector,tree:n.tree,activeLeafId:n.activeLeafId,leafSessionIds:r,splitSizesPx:n.splitSizesPx}):n})},splitLeaf:(t,n)=>{e(r=>{const s=Fn(r.tree);if(!s.includes(t)||s.length>=4)return r;const o=Oh("split"),a=Oh("pane"),i=$u(r.tree,t,n,o,a),c={...r.leafSessionIds,[a]:null};return ar({sidebar:r.sidebar,inspector:r.inspector,tree:i,activeLeafId:a,leafSessionIds:c,splitSizesPx:r.splitSizesPx})})},closeLeaf:t=>{e(n=>{const r=Fn(n.tree);if(!r.includes(t)||r.length<=1)return n;const s=Lu(n.tree,t);if(!s.removed||!s.node)return n;const o=s.node,a=Fn(o),i=Ya(o),c={};a.forEach(p=>{c[p]=n.leafSessionIds[p]??null});const d={};i.forEach(p=>{const v=n.splitSizesPx[p];v&&(d[p]=v)});const f=n.activeLeafId===t?a[0]:a.includes(n.activeLeafId)?n.activeLeafId:a[0];return ar({sidebar:n.sidebar,inspector:n.inspector,tree:o,activeLeafId:f,leafSessionIds:c,splitSizesPx:d})})},setSplitSizesPx:(t,n)=>{e(r=>{const s=r.splitSizesPx[t];return s&&s[0]===n[0]&&s[1]===n[1]?r:ar({sidebar:r.sidebar,inspector:r.inspector,tree:r.tree,activeLeafId:r.activeLeafId,leafSessionIds:r.leafSessionIds,splitSizesPx:{...r.splitSizesPx,[t]:n}})})},pruneSplitSizes:()=>{e(t=>{const n=new Set(Ya(t.tree)),r={};for(const[a,i]of Object.entries(t.splitSizesPx))n.has(a)&&(r[a]=i);const s=Object.keys(t.splitSizesPx),o=Object.keys(r);return s.length===o.length&&s.every(a=>a in r)?t:ar({sidebar:t.sidebar,inspector:t.inspector,tree:t.tree,activeLeafId:t.activeLeafId,leafSessionIds:t.leafSessionIds,splitSizesPx:r})})}})),V0=async(e,t)=>{var a;const n=Z.getState(),r=!n.chats.some(i=>i.id===e);if(t!=null&&t.forceRefreshIndex||r)try{await n.refreshChats()}catch(i){console.warn("[openSession] refreshChats failed:",i)}const s=Z.getState().chats.find(i=>i.id===e);if(!s)return;if(t!=null&&t.forceLoadHistory||r||(((a=s.messages)==null?void 0:a.length)||0)===0&&(s.messageCount||0)>0)try{await n.loadChatHistory(e)}catch(i){console.warn("[openSession] loadChatHistory failed:",i)}if(t!=null&&t.forceSubscribe){n.markForceSubscribe(e);return}((t==null?void 0:t.subscribeIfRunning)??!0)&&s.isRunning&&n.markForceSubscribe(e)},G0=(e,t)=>{const{activeLeafId:n,leafSessionIds:r,setLeafSessionId:s,setActiveLeafId:o}=ct.getState(),a=B0(r,e),i=r[n]??null;Dn("openSession (input)",{activeLeafId:n,activeLeafSessionId:i,sessionId:e,existingLeafId:a}),a?a===n?Dn("openSession (decision)",{action:"noop_already_active",leafId:n,sessionId:e}):(o(a),Dn("openSession (decision)",{action:"focus_existing_leaf",leafId:a,sessionId:e})):(s(n,e),Dn("openSession (decision)",{action:"assign_to_active_leaf",leafId:n,sessionId:e})),Z.getState().selectSession(e),V0(e,t)},zy=e=>e==="child"?"child":"root",J0=e=>({id:e.id,title:e.title,kind:zy(e.kind),pinned:!!e.pinned,parentSessionId:e.parentSessionId||null,rootSessionId:e.rootSessionId||null,createdByScheduleId:e.createdByScheduleId||null,updatedAt:e.updatedAt||null,lastRunStatus:e.lastRunStatus||null,lastRunError:e.lastRunError||null,createdAt:e.createdAt,config:{systemPromptId:e.config.systemPromptId,workspacePath:e.config.workspacePath||null}}),Q0=(e,t)=>e.id===t.id&&e.title===t.title&&e.kind===zy(t.kind)&&e.pinned===!!t.pinned&&e.parentSessionId===(t.parentSessionId||null)&&e.rootSessionId===(t.rootSessionId||null)&&e.createdByScheduleId===(t.createdByScheduleId||null)&&e.updatedAt===(t.updatedAt||null)&&e.lastRunStatus===(t.lastRunStatus||null)&&e.lastRunError===(t.lastRunError||null)&&e.createdAt===t.createdAt&&e.config.systemPromptId===t.config.systemPromptId&&e.config.workspacePath===(t.config.workspacePath||null),Z0=(()=>{let e=null,t=[],n=new Map;return r=>{if(r===e)return t;const s=r.map(a=>{const i=n.get(a.id);return i&&Q0(i,a)?i:J0(a)}),o=s.length===t.length&&s.every((a,i)=>a===t[i]);return e=r,n=new Map(s.map(a=>[a.id,a])),o?t:(t=s,s)}})(),eC=e=>[e.title,e.id,e.kind||"root",e.config.workspacePath||"",e.config.systemPromptId||"",e.updatedAt||"",e.createdByScheduleId||"",e.lastRunStatus||"",e.lastRunError||""].join(" ").toLowerCase(),tC=e=>e.messages.filter(t=>t.role==="user"&&"content"in t).slice(0,3).map(t=>"content"in t?t.content:"").join(" ").toLowerCase(),Fc=(e,t)=>{if(!t)return!0;const n=t.split(/\s+/).filter(Boolean),r=eC(e);if(n.every(i=>r.includes(i)))return!0;const s=Z.getState().chats.find(i=>i.id===e.id);if(!s)return!1;const o=tC(s),a=`${r} ${o}`;return n.every(i=>a.includes(i))},Nc=(e,t,n)=>{switch(t){case"pinned":return!!e.pinned;case"running":return n(e.id);case"child":return e.kind==="child";case"all":default:return!0}},nC=()=>{const{t:e}=qe(),{message:t}=Tn.useApp(),{chats:n,currentSessionId:r,deleteSession:s,deleteSessions:o,pinSession:a,unpinSession:i,updateSession:c,addChat:d,refreshChats:f,lastSelectedPromptId:p,systemPrompts:v}=Z(Da(he=>({chats:Z0(he.chats),currentSessionId:he.currentSessionId,deleteSession:he.deleteSession,deleteSessions:he.deleteSessions,pinSession:he.pinSession,unpinSession:he.unpinSession,updateSession:he.updateSession,addChat:he.addChat,refreshChats:he.refreshChats,lastSelectedPromptId:he.lastSelectedPromptId,systemPrompts:he.systemPrompts}))),g=S.useCallback(he=>si(he)(Z.getState()),[]),{sidebarCollapsed:w,setSidebarCollapsed:m,clearSessionFromAllLeaves:x}=ct(Da(he=>({sidebarCollapsed:he.sidebar.collapsed,setSidebarCollapsed:he.setSidebarCollapsed,clearSessionFromAllLeaves:he.clearSessionFromAllLeaves}))),k=S.useCallback(async(he,Ne)=>{var Dt,en;const Ie=v.find(tn=>tn.id===p),Je=(Ie==null?void 0:Ie.id)||(v.length>0?((Dt=v.find(tn=>tn.id==="general_assistant"))==null?void 0:Dt.id)||v[0].id:""),Wt={title:he||e("chat.sidebar.newSession"),createdAt:Date.now(),messages:[],config:{systemPromptId:Je,baseSystemPrompt:(Ie==null?void 0:Ie.content)||(v.length>0?((en=v.find(tn=>tn.id==="general_assistant"))==null?void 0:en.content)||v[0].content:""),lastUsedEnhancedPrompt:null},...Ne},yn=await d(Wt),{activeLeafId:Oe}=ct.getState();ct.getState().setLeafSessionId(Oe,yn),ct.getState().setActiveLeafId(Oe)},[d,p,v,e]),[C,E]=S.useState(!1),[T,P]=S.useState(new Set(["Today"])),[A,O]=S.useState(""),[$,U]=S.useState("all"),[J,ee]=S.useState({}),I=Z(Da(he=>{const Ne=he.currentSessionId;if(!Ne)return null;const Ie=he.chats.find(Je=>Je.id===Ne);return Ie?{id:Ie.id,kind:Ie.kind,parentSessionId:Ie.parentSessionId||null,rootSessionId:Ie.rootSessionId||null,pinned:!!Ie.pinned,createdAt:Ie.createdAt,createdByScheduleId:Ie.createdByScheduleId||null}:null})),Y=S.useMemo(()=>I?I.pinned?"Pinned":I.createdByScheduleId?"Scheduled":new Date(I.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"}):null,[I]),z=S.useMemo(()=>{const he=new Set(T);return Y&&he.add(Y),Array.from(he)},[Y,T]),D=he=>{const Ne=new Set(Array.isArray(he)?he:[he]);P(Ie=>{if(Ie.size!==Ne.size)return Ne;for(const Je of Ne)if(!Ie.has(Je))return Ne;return Ie})},ie=A.trim().toLowerCase(),Q=ie.length>0||$!=="all",ue=S.useMemo(()=>[],[]),me=S.useMemo(()=>({}),[]),V=S.useMemo(()=>({}),[]),ae=S.useMemo(()=>[],[]),ve=S.useMemo(()=>new Set,[]),re=S.useMemo(()=>w?ue:n.filter(he=>he.kind!=="child"),[n,w,ue]),le=S.useMemo(()=>{if(w)return me;const he={};for(const Ne of n){if(Ne.kind!=="child")continue;const Ie=Ne.parentSessionId||Ne.rootSessionId;Ie&&(he[Ie]||(he[Ie]=[]),he[Ie].push(Ne))}return Object.keys(he).forEach(Ne=>{he[Ne].sort((Ie,Je)=>Ie.pinned!==Je.pinned?Ie.pinned?-1:1:(Je.createdAt??0)-(Ie.createdAt??0))}),he},[n,w,me]),de=S.useMemo(()=>Q?re.filter(he=>Fc(he,ie)&&Nc(he,$,g)?!0:(le[he.id]||[]).some(Je=>Fc(Je,ie)&&Nc(Je,$,g))):re,[le,Q,g,ie,re,$]),pe=S.useMemo(()=>{if(!Q)return le;const he={};for(const Ne of de){const Ie=le[Ne.id]||[];he[Ne.id]=Ie.filter(Je=>Fc(Je,ie)&&Nc(Je,$,g))}return he},[le,de,Q,g,ie,$]),Ae=S.useMemo(()=>w?V:gx(de),[de,w,V]),Me=S.useMemo(()=>w?ae:yx(Ae),[Ae,w,ae]),F=S.useCallback(he=>{a(he),P(Ne=>{if(Ne.has("Pinned"))return Ne;const Ie=new Set(Ne);return Ie.add("Pinned"),Ie})},[a]),L=S.useCallback(he=>{const Ne=n.find(Je=>Je.id===he),Ie=Ne?bx({...Ne}):null;i(he),Ie&&P(Je=>{if(Je.has(Ie))return Je;const Wt=new Set(Je);return Wt.add(Ie),Wt})},[n,i]),fe=he=>{Zi.confirm({title:e("chat.sidebar.delete.title"),content:e("chat.sidebar.delete.confirm"),okText:e("common.delete"),okType:"danger",cancelText:e("common.cancel"),onOk:()=>{x(he),s(he)}})},Se=Fa(he=>he.open),De=()=>{Se("chat")},We=S.useCallback(he=>{O(he)},[]),Ge=S.useCallback(he=>{U(he)},[]),He=S.useCallback(()=>{O(""),U("all")},[]),at=(he,Ne)=>{c(he,{title:Ne})},St=S.useCallback(async he=>{try{await Pn.getInstance().regenerateSessionTitle(he)}catch(Ne){console.error("Failed to regenerate session title:",Ne)}},[]),Ot=S.useCallback(async he=>{var Ie;if(((Ie=J[he])==null?void 0:Ie.status)==="loading")return;ee(Je=>({...Je,[he]:{status:"loading"}}));const Ne=t.loading(e("chat.actions.runProjectDreamRunning"),0);try{const Je=await Pn.getInstance().runProjectDream(he);Ne(),Je.dream_generated?t.success(e("chat.actions.runProjectDreamSuccess")):t.info(Je.message||e("chat.actions.runProjectDreamNoChange"));try{await f()}catch(Wt){console.warn("Failed to refresh chats after project dream run:",Wt)}}catch(Je){Ne();const Wt=Je instanceof Error&&Je.message?Je.message:e("chat.actions.runProjectDreamFailed");t.error(Wt),console.error("Failed to run project dream:",Je)}finally{ee(Je=>({...Je,[he]:{status:"idle"}}))}},[t,J,f,e]),xt=he=>{const Ne=vx(Ae,he),Ie=ny(Ae,he);Zi.confirm({title:e("chat.sidebar.deleteByDate.title",{date:he}),content:e("chat.sidebar.deleteByDate.confirm",{count:Ie,date:he}),okText:e("common.delete"),okType:"danger",cancelText:e("common.cancel"),onOk:()=>{Ne.forEach(Je=>x(Je)),o(Ne)}})},Fe=()=>{E(!0)},lt=()=>{E(!1)},_t=async he=>{try{await k(e("chat.sidebar.newSessionWithPrompt",{prompt:he.name}),{config:{systemPromptId:he.id,baseSystemPrompt:he.content,lastUsedEnhancedPrompt:null}}),E(!1)}catch(Ne){console.error("Failed to create chat:",Ne),Zi.error({title:e("chat.sidebar.createFailedTitle"),content:Ne instanceof Error?Ne.message:e("chat.sidebar.createFailedUnknown")})}},Qt=S.useCallback(he=>G0(he),[]),[At,Tt]=S.useState(new Set),Ht=S.useMemo(()=>{if(w)return ve;const he=new Set;for(const Ne of Object.values(le))for(const Ie of Ne)if(Ie.pinned){const Je=Ie.parentSessionId||Ie.rootSessionId;Je&&he.add(Je)}return he},[le,w,ve]),$n=S.useMemo(()=>{var Ne;if(w)return ve;const he=new Set(At);if((I==null?void 0:I.kind)==="child"){const Ie=I.parentSessionId||I.rootSessionId;Ie&&he.add(Ie)}for(const Ie of Ht)he.add(Ie);if(Q)for(const Ie of de)(((Ne=pe[Ie.id])==null?void 0:Ne.length)??0)>0&&he.add(Ie.id);return he},[pe,At,de,Q,Ht,I,w,ve]),Zt=S.useCallback(he=>{Tt(Ne=>{const Ie=new Set(Ne);return Ie.has(he)?Ie.delete(he):Ie.add(he),Ie})},[]);return{chats:de,childrenByRoot:pe,expandedRootIds:$n,toggleRootExpanded:Zt,collapsed:w,currentSessionId:r,expandedKeys:z,groupedChatsByDate:Ae,hasActiveFilters:Q,handleCollapseChange:D,handleDelete:fe,handleDeleteByDate:xt,handleEditTitle:at,handleGenerateTitle:St,handleNewChat:Fe,handleNewChatSelectorClose:lt,handleOpenSettings:De,handleRunProjectDream:Ot,handleSearchQueryChange:We,handleStatusFilterChange:Ge,handleClearFilters:He,handleSystemPromptSelect:_t,isNewChatSelectorOpen:C,pinSession:F,projectDreamState:J,searchQuery:A,selectSession:Qt,setCollapsed:m,sortedDateKeys:Me,statusFilter:$,systemPrompts:v,titleGenerationState:{},unpinSession:L}},rC=S.lazy(()=>Lt(()=>import("./index-CiVd5DfN.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)),{useBreakpoint:sC}=zl,{useToken:oC}=st,$h=()=>{const{token:e}=oC(),{t}=qe(),n=sC(),{childrenByRoot:r,expandedRootIds:s,toggleRootExpanded:o,collapsed:a,currentSessionId:i,expandedKeys:c,groupedChatsByDate:d,handleCollapseChange:f,handleDelete:p,handleDeleteByDate:v,handleEditTitle:g,handleGenerateTitle:w,handleNewChat:m,handleNewChatSelectorClose:x,handleOpenSettings:k,handleRunProjectDream:C,handleSearchQueryChange:E,handleStatusFilterChange:T,handleClearFilters:P,handleSystemPromptSelect:A,hasActiveFilters:O,isNewChatSelectorOpen:$,pinSession:U,projectDreamState:J,searchQuery:ee,selectSession:I,setCollapsed:Y,sortedDateKeys:z,statusFilter:D,systemPrompts:ie,titleGenerationState:Q,unpinSession:ue}=nC(),{xs:me,sm:V}=n;return S.useEffect(()=>{typeof me!="boolean"||typeof V!="boolean"||me===!1&&V===!1&&Y(!0)},[V,me,Y]),a?null:l.jsxs("nav",{"data-tour-id":"sidebar","aria-label":t("chat.sidebar.title","Chat sidebar"),style:{width:"100%",height:"100%",background:"transparent",borderRight:`1px solid ${e.colorBorderSecondary}`,position:"relative",overflow:"hidden",display:"flex",flexDirection:"column",minHeight:0},children:[l.jsx(we,{justify:"flex-end",style:{flexShrink:0,padding:"8px 10px 0 10px",minHeight:34},children:l.jsx(Ee,{type:"text",icon:l.jsx(Rw,{}),onClick:()=>Y(!0),size:n.xs?"small":"middle",className:"lotus-toolbar-icon","aria-label":t("chat.sidebar.collapse","Collapse sidebar")})}),l.jsxs(we,{vertical:!0,gap:6,style:{flexShrink:0,padding:"6px 10px 6px 10px"},children:[l.jsx(Ts,{allowClear:!0,value:ee,onChange:ae=>E(ae.target.value),prefix:l.jsx(_u,{style:{color:e.colorTextTertiary}}),placeholder:t("chat.sidebar.searchPlaceholder","Search sessions"),"aria-label":t("chat.sidebar.searchPlaceholder","Search sessions"),size:"small",style:{borderRadius:e.borderRadiusLG}}),l.jsx(Aw,{block:!0,size:n.xs?"middle":"small",value:D,onChange:ae=>T(ae),options:[{label:t("chat.sidebar.filters.all","All"),value:"all"},{label:t("chat.sidebar.filters.pinned","Pinned"),value:"pinned"},{label:t("chat.sidebar.filters.running","Running"),value:"running"},{label:t("chat.sidebar.filters.child","Child"),value:"child"}]})]}),l.jsx(we,{vertical:!0,role:"list","aria-label":t("chat.sidebar.chatList","Chat list"),style:{flex:1,minHeight:0,overflowY:"auto",padding:"0 10px"},children:l.jsx(Sx,{groupedChatsByDate:d,childrenByRoot:r,expandedRootIds:s,onToggleRootExpanded:o,sortedDateKeys:z,expandedKeys:c,onCollapseChange:f,currentSessionId:i,onSelectChat:I,onDeleteChat:p,onDeleteByDate:v,onPinChat:U,onUnpinChat:ue,onEditTitle:g,onGenerateTitle:w,onRunProjectDream:C,titleGenerationState:Q,projectDreamState:J,token:e,hasActiveFilters:O,onClearFilters:P})}),l.jsx(Mx,{collapsed:!1,onNewChat:m,onOpenSettings:k,token:e}),l.jsx(S.Suspense,{fallback:null,children:l.jsx(rC,{open:$,onClose:x,onSelect:A,prompts:ie,title:t("chat.prompt.newSessionSelectorTitle"),showCancelButton:!0})})]})},{Text:Lh,Paragraph:aC}=ot;class Ka extends S.Component{constructor(n){super(n);vt(this,"handleReset",()=>{this.setState({hasError:!1,error:null})});this.state={hasError:!1,error:null}}static getDerivedStateFromError(n){return{hasError:!0,error:n}}componentDidCatch(n,r){var o,a;const s=this.props.name??"ErrorBoundary";console.error(`[${s}] Uncaught error:`,n,r),(a=(o=this.props).onError)==null||a.call(o,n,r)}render(){if(!this.state.hasError)return this.props.children;const{fallback:n}=this.props,r=this.state.error;return typeof n=="function"?n(r,this.handleReset):n!==void 0?n:l.jsx(iC,{error:r,onReset:this.handleReset})}}const iC=({error:e,onReset:t})=>{const{token:n}=st.useToken(),[r,s]=rt.useState(!1),{t:o}=qe();return l.jsxs("div",{role:"alert",style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:n.paddingLG,minHeight:200,textAlign:"center"},children:[l.jsx(Xg,{style:{fontSize:36,color:n.colorWarning}}),l.jsx(Lh,{strong:!0,style:{fontSize:16},children:o("app.errorBoundary.title")}),l.jsx(Lh,{type:"secondary",style:{maxWidth:420},children:o("app.errorBoundary.description")}),l.jsxs("div",{style:{display:"flex",gap:8,marginTop:4},children:[l.jsx(Ee,{type:"primary",icon:l.jsx(Cd,{}),onClick:t,"aria-label":o("app.errorBoundary.tryAgain"),children:o("app.errorBoundary.tryAgain")}),l.jsx(Ee,{type:"text",size:"small",onClick:()=>s(a=>!a),"aria-expanded":r,"aria-label":o("app.errorBoundary.showDetails"),children:o(r?"app.errorBoundary.hideDetails":"app.errorBoundary.showDetails")})]}),r&&l.jsxs(aC,{code:!0,copyable:!0,style:{maxWidth:560,maxHeight:200,overflow:"auto",fontSize:12,textAlign:"left",marginTop:8,background:n.colorFillTertiary,padding:n.paddingSM,borderRadius:n.borderRadius},children:[e.message,e.stack?`
14
14
 
15
- ${e.stack}`:""]})]})},Dh={theme:"default",themeVariables:{},fontSize:16,defaultScale:1,useMaxWidth:!0,flowchartNodeSpacing:50,flowchartRankSpacing:50,flowchartCurve:"basis",sequenceActorMargin:50,sequenceMessageMargin:35,sequenceWidth:150,sequenceHeight:65,ganttBarHeight:20,ganttTopPadding:50},Nd=Xr()(n_(e=>({settings:Dh,updateSettings:t=>e(n=>({settings:{...n.settings,...t}})),resetSettings:()=>e({settings:Dh})}),{name:"mermaid-settings"})),zd=()=>Nd(t=>t.settings),cL=()=>Nd(e=>e.updateSettings),uL=()=>Nd(e=>e.resetSettings),lC=()=>{const{token:e}=st.useToken(),t=zd(),n=S.useRef("");S.useEffect(()=>{const r=cC(e.colorBgContainer),s=`${r}-${t.theme}-${JSON.stringify(t.themeVariables)}`;if(n.current===s)return;n.current=s;let o=t.theme;(t.theme==="default"||t.theme==="neutral")&&(o=r?"dark":t.theme),xd.initialize({startOnLoad:!1,theme:o,securityLevel:"strict",htmlLabels:!1,suppressErrorRendering:!0,fontSize:t.fontSize,themeVariables:Object.keys(t.themeVariables).length>0?t.themeVariables:void 0,flowchart:{useMaxWidth:t.useMaxWidth,htmlLabels:!1,curve:t.flowchartCurve,nodeSpacing:t.flowchartNodeSpacing,rankSpacing:t.flowchartRankSpacing},sequence:{useMaxWidth:t.useMaxWidth,diagramMarginX:10,diagramMarginY:10,actorMargin:t.sequenceActorMargin,width:t.sequenceWidth,height:t.sequenceHeight,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:t.sequenceMessageMargin,mirrorActors:!0,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1},gantt:{useMaxWidth:t.useMaxWidth,leftPadding:75,gridLineStartPadding:35,barHeight:t.ganttBarHeight,barGap:4,topPadding:t.ganttTopPadding},journey:{useMaxWidth:t.useMaxWidth,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center"},timeline:{useMaxWidth:t.useMaxWidth,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35},gitGraph:{useMaxWidth:t.useMaxWidth,showBranches:!0,showCommitLabel:!0},c4:{useMaxWidth:t.useMaxWidth,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10},sankey:{useMaxWidth:t.useMaxWidth},xyChart:{useMaxWidth:t.useMaxWidth},block:{useMaxWidth:t.useMaxWidth,padding:8}})},[e,t])};function cC(e){if(e.startsWith("#")){const n=e.slice(1),r=parseInt(n.substr(0,2),16),s=parseInt(n.substr(2,2),16),o=parseInt(n.substr(4,2),16);return(.299*r+.587*s+.114*o)/255<.5}const t=e.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(t){const n=parseInt(t[1]),r=parseInt(t[2]),s=parseInt(t[3]);return(.299*n+.587*r+.114*s)/255<.5}return!1}xd.initialize({startOnLoad:!1,theme:"dark",securityLevel:"strict",htmlLabels:!1,suppressErrorRendering:!0});xd.parseError=function(e){console.warn("Mermaid parse error (handled gracefully):",e)};const Fh=new Map,uC=/^(\s*%%\{[\s\S]*?\}%%\s*)*\s*gantt\b/i,dC=e=>e.replace(/:/g,":").replace(/,/g,",").replace(/;/g,";").replace(/(/g,"(").replace(/)/g,")").replace(/-/g,"-"),fC=e=>(uC.test(e)?dC(e):e).replace(/\[([\s\S]*?)\]/g,(n,r)=>{const s=String(r),o=/\r?\n/.test(s),a=/[()]/.test(s),i=/@/.test(s);if(!o&&!a&&!i)return n;const c=s.trim(),d=c.startsWith("(")&&c.endsWith(")")&&c.length>=2;let f=s;return o&&(f=f.replace(/\r?\n/g,"<br/>")),a&&!d&&(f=f.replace(/\(/g,"&#40;").replace(/\)/g,"&#41;")),i&&(f=f.replace(/@/g,"&#64;")),f===s?n:`[${f}]`}),hC=200,cr=new Map,nl=new Map;let zc=null;const pC=e=>{const n=new DOMParser().parseFromString(e,"image/svg+xml");return Array.from(n.querySelectorAll("rect")).reduce((s,o)=>{const a=Number(o.getAttribute("width"));return Number.isFinite(a)&&a<0?s+1:s},0)};async function mC(){zc||(zc=Lt(()=>import("./vendor-mermaid-Di565VO4.js").then(t=>t.bP),__vite__mapDeps([4,3,2]),import.meta.url));const e=await zc;return e.default??e}function gC(e,t){if(cr.has(e)&&cr.delete(e),cr.set(e,t),cr.size>hC){const n=cr.keys().next().value;n&&cr.delete(n)}}function rl(e){const t=cr.get(e);return t?(cr.delete(e),cr.set(e,t),t):null}function Nh(){cr.clear(),nl.clear()}function yC(e,t){const n=rl(e);if(n)return Promise.resolve(n);const r=nl.get(e);if(r)return r;const s=(async()=>{var C,E;const o=await mC();await o.parse(t);const a=`mermaid-${e}`,i=document.createElement("div"),c=Math.max(1600,window.innerWidth||0,((C=document.documentElement)==null?void 0:C.clientWidth)||0);i.style.cssText=["position:absolute","left:-9999px","top:-9999px",`width:${c}px`,`min-width:${c}px`,"visibility:hidden","pointer-events:none","overflow:visible"].join(";"),document.body.appendChild(i);let d;try{d=await o.render(a,t,i)}finally{document.body.removeChild(i)}const f=typeof d=="object"&&"svg"in d?d.svg:String(d),p=pC(f);if(p>0)throw new Error(`Mermaid rendered invalid SVG (${p} rect widths < 0)`);const w=new DOMParser().parseFromString(f,"image/svg+xml").querySelector("svg");let m=800,x=300;if(w){const T=w.getAttribute("viewBox");if(T){const P=T.split(/\s+/).map(Number);P.length===4&&(m=P[2]||800,x=P[3]||300)}if(m===800&&x===300){const P=document.createElement("div");P.style.cssText="position:absolute;visibility:hidden;width:800px;",P.innerHTML=f,document.body.appendChild(P);const A=(E=P.querySelector("svg"))==null?void 0:E.getBoundingClientRect();A&&(m=A.width,x=A.height),document.body.removeChild(P)}}const k={svg:f,width:m,height:x};return gC(e,k),k})().finally(()=>{nl.delete(e)});return nl.set(e,s),s}const ka=new Map,sl=new Set,$s=new Map,Js=new Map;let ts=null;const By=(e,t)=>{const n=ka.get(e);n&&n.forEach(r=>r(t))},Bc=()=>{if(ts=null,Js.size===0)return;const e=Array.from(Js.values());Js.clear(),e.forEach(t=>{By(t.messageId,t.content),sl.forEach(n=>n(t))})},Et={getLatest(e){return $s.get(e)??null},subscribeMessage(e,t){let n=ka.get(e);return n||(n=new Set,ka.set(e,n)),n.add(t),$s.has(e)&&t($s.get(e)??null),()=>{const r=ka.get(e);r&&(r.delete(t),r.size===0&&ka.delete(e))}},subscribe(e){return sl.add(e),()=>{sl.delete(e)}},publish(e){if(e.transient){Js.set(e.messageId,e),ts===null&&(ts=requestAnimationFrame(Bc));return}e.content===null?$s.delete(e.messageId):$s.set(e.messageId,e.content),Js.set(e.messageId,e),ts===null&&(ts=requestAnimationFrame(Bc))},clear(e,t){$s.delete(t),Js.delete(t),By(t,null),sl.forEach(n=>n({sessionId:e,messageId:t,content:null}))},forceFlush(){ts!==null&&(cancelAnimationFrame(ts),Bc())}},xr={BASE_URL:"./",DEV:!1,MODE:"production",PROD:!0,SSR:!1};function Wy(e){return"init"in e}function Du(e){return typeof e.write=="function"}function vC(e){return!!e.onMount}function zh(e){return"v"in e||"e"in e}function Cl(e){if("e"in e)throw e.e;if((xr?"production":void 0)!=="production"&&!("v"in e))throw new Error("[Bug] atom state is not initialized");return e.v}function kl(e){return typeof(e==null?void 0:e.then)=="function"}function Uy(e,t,n){if(!n.p.has(e)){n.p.add(e);const r=()=>n.p.delete(e);t.then(r,r)}}function qy(e,t,n){const r=n.get(e),s=r==null?void 0:r.t,o=t.p;if(!(s!=null&&s.size))return o;if(!o.size)return s;const a=new Set(s);for(const i of o)a.add(i);return a}function bC(e){return!!e.INTERNAL_onInit}const SC=(e,t,n,...r)=>n.read(...r),wC=(e,t,n,...r)=>n.write(...r),xC=(e,t,n)=>n.INTERNAL_onInit(t),_C=(e,t,n,r)=>{var s;return(s=n.onMount)==null?void 0:s.call(n,r)},CC=(e,t,n)=>{var r;const s=e[0];let o=s.get(n);if(!o){const a=e[6],i=e[9];o={d:new Map,p:new Set,n:0},s.set(n,o),(r=a.i)==null||r.call(a,n),bC(n)&&i(e,t,n)}return o},kC=(e,t)=>{var n;const r=e[1],s=e[3],o=e[4],a=e[5],i=e[6],c=e[13];if(!i.f&&!s.size&&!o.size&&!a.size)return;const d=[],f=p=>{try{p()}catch(v){d.push(v)}};do{i.f&&f(i.f);const p=new Set;for(const v of s){const g=(n=r.get(v))==null?void 0:n.l;if(g)for(const w of g)p.add(w)}s.clear();for(const v of a)p.add(v);a.clear();for(const v of o)p.add(v);o.clear();for(const v of p)f(v);s.size&&c(e,t)}while(s.size||a.size||o.size);if(d.length)throw new AggregateError(d)},TC=(e,t)=>{const n=e[1],r=e[2],s=e[3],o=e[11],a=e[14],i=e[17];if(!s.size)return;const c=[],d=[],f=new WeakSet,p=new WeakSet,v=[],g=[];for(const w of s)v.push(w),g.push(o(e,t,w));for(;v.length;){const w=v.length-1,m=v[w],x=g[w];if(p.has(m)){v.pop(),g.pop();continue}if(f.has(m)){if(r.get(m)===x.n)c.push(m),d.push(x);else if((xr?"production":void 0)!=="production"&&r.has(m))throw new Error("[Bug] invalidated atom exists");p.add(m),v.pop(),g.pop();continue}f.add(m);for(const k of qy(m,x,n))f.has(k)||(v.push(k),g.push(o(e,t,k)))}for(let w=c.length-1;w>=0;--w){const m=c[w],x=d[w];let k=!1;for(const C of x.d.keys())if(C!==m&&s.has(C)){k=!0;break}k&&(r.set(m,x.n),a(e,t,m),i(e,t,m)),r.delete(m)}},Fu=new WeakSet,PC=(e,t,n)=>{var r,s;const o=e[1],a=e[2],i=e[3],c=e[6],d=e[7],f=e[11],p=e[12],v=e[13],g=e[14],w=e[16],m=e[17],x=e[20],k=e[26],C=e[28],E=f(e,t,n),T=C[0];if(zh(E)){if(o.has(n)&&a.get(n)!==E.n||E.m===T)return E.m=T,E;let D=!1;for(const[ie,Q]of E.d)if(g(e,t,ie).n!==Q){D=!0;break}if(!D)return E.m=T,E}let P=!0;const A=new Set(E.d.keys()),O=()=>{for(const D of A)E.d.delete(D)},$=()=>{if(o.has(n)){const D=!i.size;m(e,t,n),D&&(v(e,t),p(e,t))}},U=D=>{var ie;if(D===n){const ue=f(e,t,D);if(!zh(ue))if(Wy(D))x(e,t,D,D.init);else throw new Error("no atom init");return Cl(ue)}const Q=g(e,t,D);try{return Cl(Q)}finally{A.delete(D),E.d.set(D,Q.n),kl(E.v)&&Uy(n,E.v,Q),o.has(n)&&((ie=o.get(D))==null||ie.t.add(n)),P||$()}};let J,ee;const I={get signal(){return J||(J=new AbortController),J.signal},get setSelf(){return(xr?"production":void 0)!=="production"&&console.warn("[DEPRECATED] setSelf is deprecated and will be removed in v3."),(xr?"production":void 0)!=="production"&&!Du(n)&&console.warn("setSelf function cannot be used with read-only atom"),!ee&&Du(n)&&(ee=(...D)=>{if((xr?"production":void 0)!=="production"&&P&&console.warn("setSelf function cannot be called in sync"),!P)try{return w(e,t,n,D)}finally{v(e,t),p(e,t)}}),ee}},Y=E.n,z=a.get(n)===Y;try{(xr?"production":void 0)!=="production"&&Fu.delete(t);const D=d(e,t,n,U,I);if((xr?"production":void 0)!=="production"&&Fu.has(t)&&console.warn("Detected store mutation during atom read. This is not supported."),x(e,t,n,D),kl(D)){k(e,t,D,()=>J==null?void 0:J.abort());const ie=()=>{O(),$()};D.then(ie,ie)}else O();return(r=c.r)==null||r.call(c,n),E.m=T,E}catch(D){return delete E.v,E.e=D,++E.n,E.m=T,E}finally{P=!1,E.n!==Y&&z&&(a.set(n,E.n),i.add(n),(s=c.c)==null||s.call(c,n))}},EC=(e,t,n)=>{const r=e[1],s=e[2],o=e[11],a=[n];for(;a.length;){const i=a.pop(),c=o(e,t,i);for(const d of qy(i,c,r)){const f=o(e,t,d);s.get(d)!==f.n&&(s.set(d,f.n),a.push(d))}}},MC=(e,t,n,r)=>{const s=e[3],o=e[6],a=e[8],i=e[11],c=e[12],d=e[13],f=e[14],p=e[15],v=e[16],g=e[17],w=e[20],m=e[28];let x=!0;const k=E=>Cl(f(e,t,E)),C=(E,...T)=>{var P;const A=i(e,t,E);try{if(E===n){if(!Wy(E))throw new Error("atom not writable");(xr?"production":void 0)!=="production"&&Fu.add(t);const O=A.n,$=T[0];w(e,t,E,$),g(e,t,E),O!==A.n&&(++m[0],s.add(E),p(e,t,E),(P=o.c)==null||P.call(o,E));return}else return v(e,t,E,T)}finally{x||(d(e,t),c(e,t))}};try{return a(e,t,n,k,C,...r)}finally{x=!1}},RC=(e,t,n)=>{var r;const s=e[1],o=e[3],a=e[6],i=e[11],c=e[15],d=e[18],f=e[19],p=i(e,t,n),v=s.get(n);if(v&&p.d.size>0){for(const[g,w]of p.d)if(!v.d.has(g)){const m=i(e,t,g);d(e,t,g).t.add(n),v.d.add(g),w!==m.n&&(o.add(g),c(e,t,g),(r=a.c)==null||r.call(a,g))}for(const g of v.d)if(!p.d.has(g)){v.d.delete(g);const w=f(e,t,g);w==null||w.t.delete(n)}}},AC=(e,t,n)=>{var r;const s=e[1],o=e[4],a=e[6],i=e[10],c=e[11],d=e[12],f=e[13],p=e[14],v=e[16],g=e[18],w=c(e,t,n);let m=s.get(n);if(!m){p(e,t,n);for(const x of w.d.keys())g(e,t,x).t.add(n);if(m={l:new Set,d:new Set(w.d.keys()),t:new Set},s.set(n,m),Du(n)&&vC(n)){const x=()=>{let k=!0;const C=(...E)=>{try{return v(e,t,n,E)}finally{k||(f(e,t),d(e,t))}};try{const E=i(e,t,n,C);E&&(m.u=()=>{k=!0;try{E()}finally{k=!1}})}finally{k=!1}};o.add(x)}(r=a.m)==null||r.call(a,n)}return m},jC=(e,t,n)=>{var r,s;const o=e[1],a=e[5],i=e[6],c=e[11],d=e[19],f=c(e,t,n);let p=o.get(n);if(!p||p.l.size)return p;let v=!1;for(const g of p.t)if((r=o.get(g))!=null&&r.d.has(n)){v=!0;break}if(!v){p.u&&a.add(p.u),p=void 0,o.delete(n);for(const g of f.d.keys()){const w=d(e,t,g);w==null||w.t.delete(n)}(s=i.u)==null||s.call(i,n);return}return p},IC=(e,t,n,r)=>{const s=e[11],o=e[27],a=s(e,t,n),i="v"in a,c=a.v;if(kl(r))for(const d of a.d.keys())Uy(n,r,s(e,t,d));a.v=r,delete a.e,(!i||!Object.is(c,a.v))&&(++a.n,kl(c)&&o(e,t,c))},OC=(e,t,n)=>{const r=e[14];return Cl(r(e,t,n))},$C=(e,t,n,...r)=>{const s=e[3],o=e[12],a=e[13],i=e[16],c=s.size;try{return i(e,t,n,r)}finally{s.size!==c&&(a(e,t),o(e,t))}},LC=(e,t,n,r)=>{const s=e[12],o=e[18],a=e[19],c=o(e,t,n).l;return c.add(r),s(e,t),()=>{c.delete(r),a(e,t,n),s(e,t)}},DC=(e,t,n,r)=>{const s=e[25];let o=s.get(n);if(!o){o=new Set,s.set(n,o);const a=()=>s.delete(n);n.then(a,a)}o.add(r)},FC=(e,t,n)=>{const s=e[25].get(n);s==null||s.forEach(o=>o())},Hy=new WeakMap;function NC(e){const t=Hy.get(e);if((xr?"production":void 0)!=="production"&&!t)throw new Error("Store must be created by buildStore to read its building blocks");const n=t[24];return n?n(t,e):t}function zC(...e){const t={get(a){return r(n,t,a)},set(a,...i){return s(n,t,a,...i)},sub(a,i){return o(n,t,a,i)}},n=[new WeakMap,new WeakMap,new WeakMap,new Set,new Set,new Set,{},SC,wC,xC,_C,CC,kC,TC,PC,EC,MC,RC,AC,jC,IC,OC,$C,LC,void 0,new WeakMap,DC,FC,[0]].map((a,i)=>e[i]||a);Hy.set(t,Object.freeze(n));const r=n[21],s=n[22],o=n[23];return t}const Xy={};let BC=0;function Yr(e,t){const n=`atom${++BC}`,r={toString(){return(Xy?"production":void 0)!=="production"&&this.debugLabel?n+":"+this.debugLabel:n}};return typeof e=="function"?r.read=e:(r.init=e,r.read=WC,r.write=UC),t&&(r.write=t),r}function WC(e){return e(this)}function UC(e,t,n){return t(this,typeof n=="function"?n(e(this)):n)}function Yy(){return zC()}let Io;function qC(){return Io||(Io=Yy(),(Xy?"production":void 0)!=="production"&&(globalThis.__JOTAI_DEFAULT_STORE__||(globalThis.__JOTAI_DEFAULT_STORE__=Io),globalThis.__JOTAI_DEFAULT_STORE__!==Io&&console.warn("Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044"))),Io}const HC=S.createContext(void 0);function XC(e){const t=S.useContext(HC);return(e==null?void 0:e.store)||t||qC()}const Nu=e=>typeof(e==null?void 0:e.then)=="function",zu=e=>{e.status||(e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}))},YC=rt.use||(e=>{if(e.status==="pending")throw e;if(e.status==="fulfilled")return e.value;throw e.status==="rejected"?e.reason:(zu(e),e)}),Wc=new WeakMap,Bh=(e,t,n)=>{const r=NC(e),s=r[26];let o=Wc.get(t);return o||(o=new Promise((a,i)=>{let c=t;const d=v=>g=>{c===v&&a(g)},f=v=>g=>{c===v&&i(g)},p=()=>{try{const v=n();Nu(v)?(Wc.set(v,o),c=v,v.then(d(v),f(v)),s(r,e,v,p)):a(v)}catch(v){i(v)}};t.then(d(t),f(t)),s(r,e,t,p)}),Wc.set(t,o)),o};function KC(e,t){const{delay:n,unstable_promiseStatus:r=!rt.use}=t||{},s=XC(t),[[o,a,i],c]=S.useReducer(f=>{const p=s.get(e);return Object.is(f[0],p)&&f[1]===s&&f[2]===e?f:[p,s,e]},void 0,()=>[s.get(e),s,e]);let d=o;if((a!==s||i!==e)&&(c(),d=s.get(e)),S.useEffect(()=>{const f=s.sub(e,()=>{if(r)try{const p=s.get(e);Nu(p)&&zu(Bh(s,p,()=>s.get(e)))}catch{}if(typeof n=="number"){console.warn(`[DEPRECATED] delay option is deprecated and will be removed in v3.
15
+ ${e.stack}`:""]})]})},Dh={theme:"default",themeVariables:{},fontSize:16,defaultScale:1,useMaxWidth:!0,flowchartNodeSpacing:50,flowchartRankSpacing:50,flowchartCurve:"basis",sequenceActorMargin:50,sequenceMessageMargin:35,sequenceWidth:150,sequenceHeight:65,ganttBarHeight:20,ganttTopPadding:50},Nd=Xr()(n_(e=>({settings:Dh,updateSettings:t=>e(n=>({settings:{...n.settings,...t}})),resetSettings:()=>e({settings:Dh})}),{name:"mermaid-settings"})),zd=()=>Nd(t=>t.settings),cL=()=>Nd(e=>e.updateSettings),uL=()=>Nd(e=>e.resetSettings),lC=()=>{const{token:e}=st.useToken(),t=zd(),n=S.useRef("");S.useEffect(()=>{const r=cC(e.colorBgContainer),s=`${r}-${t.theme}-${JSON.stringify(t.themeVariables)}`;if(n.current===s)return;n.current=s;let o=t.theme;(t.theme==="default"||t.theme==="neutral")&&(o=r?"dark":t.theme),xd.initialize({startOnLoad:!1,theme:o,securityLevel:"strict",htmlLabels:!1,suppressErrorRendering:!0,fontSize:t.fontSize,themeVariables:Object.keys(t.themeVariables).length>0?t.themeVariables:void 0,flowchart:{useMaxWidth:t.useMaxWidth,htmlLabels:!1,curve:t.flowchartCurve,nodeSpacing:t.flowchartNodeSpacing,rankSpacing:t.flowchartRankSpacing},sequence:{useMaxWidth:t.useMaxWidth,diagramMarginX:10,diagramMarginY:10,actorMargin:t.sequenceActorMargin,width:t.sequenceWidth,height:t.sequenceHeight,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:t.sequenceMessageMargin,mirrorActors:!0,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1},gantt:{useMaxWidth:t.useMaxWidth,leftPadding:75,gridLineStartPadding:35,barHeight:t.ganttBarHeight,barGap:4,topPadding:t.ganttTopPadding},journey:{useMaxWidth:t.useMaxWidth,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center"},timeline:{useMaxWidth:t.useMaxWidth,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35},gitGraph:{useMaxWidth:t.useMaxWidth,showBranches:!0,showCommitLabel:!0},c4:{useMaxWidth:t.useMaxWidth,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10},sankey:{useMaxWidth:t.useMaxWidth},xyChart:{useMaxWidth:t.useMaxWidth},block:{useMaxWidth:t.useMaxWidth,padding:8}})},[e,t])};function cC(e){if(e.startsWith("#")){const n=e.slice(1),r=parseInt(n.substr(0,2),16),s=parseInt(n.substr(2,2),16),o=parseInt(n.substr(4,2),16);return(.299*r+.587*s+.114*o)/255<.5}const t=e.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(t){const n=parseInt(t[1]),r=parseInt(t[2]),s=parseInt(t[3]);return(.299*n+.587*r+.114*s)/255<.5}return!1}xd.initialize({startOnLoad:!1,theme:"dark",securityLevel:"strict",htmlLabels:!1,suppressErrorRendering:!0});xd.parseError=function(e){console.warn("Mermaid parse error (handled gracefully):",e)};const Fh=new Map,uC=/^(\s*%%\{[\s\S]*?\}%%\s*)*\s*gantt\b/i,dC=e=>e.replace(/:/g,":").replace(/,/g,",").replace(/;/g,";").replace(/(/g,"(").replace(/)/g,")").replace(/-/g,"-"),fC=e=>(uC.test(e)?dC(e):e).replace(/\[([\s\S]*?)\]/g,(n,r)=>{const s=String(r),o=/\r?\n/.test(s),a=/[()]/.test(s),i=/@/.test(s);if(!o&&!a&&!i)return n;const c=s.trim(),d=c.startsWith("(")&&c.endsWith(")")&&c.length>=2;let f=s;return o&&(f=f.replace(/\r?\n/g,"<br/>")),a&&!d&&(f=f.replace(/\(/g,"&#40;").replace(/\)/g,"&#41;")),i&&(f=f.replace(/@/g,"&#64;")),f===s?n:`[${f}]`}),hC=200,cr=new Map,nl=new Map;let zc=null;const pC=e=>{const n=new DOMParser().parseFromString(e,"image/svg+xml");return Array.from(n.querySelectorAll("rect")).reduce((s,o)=>{const a=Number(o.getAttribute("width"));return Number.isFinite(a)&&a<0?s+1:s},0)};async function mC(){zc||(zc=Lt(()=>import("./vendor-mermaid-BHpdkvG9.js").then(t=>t.bP),__vite__mapDeps([4,3,2]),import.meta.url));const e=await zc;return e.default??e}function gC(e,t){if(cr.has(e)&&cr.delete(e),cr.set(e,t),cr.size>hC){const n=cr.keys().next().value;n&&cr.delete(n)}}function rl(e){const t=cr.get(e);return t?(cr.delete(e),cr.set(e,t),t):null}function Nh(){cr.clear(),nl.clear()}function yC(e,t){const n=rl(e);if(n)return Promise.resolve(n);const r=nl.get(e);if(r)return r;const s=(async()=>{var C,E;const o=await mC();await o.parse(t);const a=`mermaid-${e}`,i=document.createElement("div"),c=Math.max(1600,window.innerWidth||0,((C=document.documentElement)==null?void 0:C.clientWidth)||0);i.style.cssText=["position:absolute","left:-9999px","top:-9999px",`width:${c}px`,`min-width:${c}px`,"visibility:hidden","pointer-events:none","overflow:visible"].join(";"),document.body.appendChild(i);let d;try{d=await o.render(a,t,i)}finally{document.body.removeChild(i)}const f=typeof d=="object"&&"svg"in d?d.svg:String(d),p=pC(f);if(p>0)throw new Error(`Mermaid rendered invalid SVG (${p} rect widths < 0)`);const w=new DOMParser().parseFromString(f,"image/svg+xml").querySelector("svg");let m=800,x=300;if(w){const T=w.getAttribute("viewBox");if(T){const P=T.split(/\s+/).map(Number);P.length===4&&(m=P[2]||800,x=P[3]||300)}if(m===800&&x===300){const P=document.createElement("div");P.style.cssText="position:absolute;visibility:hidden;width:800px;",P.innerHTML=f,document.body.appendChild(P);const A=(E=P.querySelector("svg"))==null?void 0:E.getBoundingClientRect();A&&(m=A.width,x=A.height),document.body.removeChild(P)}}const k={svg:f,width:m,height:x};return gC(e,k),k})().finally(()=>{nl.delete(e)});return nl.set(e,s),s}const ka=new Map,sl=new Set,$s=new Map,Js=new Map;let ts=null;const By=(e,t)=>{const n=ka.get(e);n&&n.forEach(r=>r(t))},Bc=()=>{if(ts=null,Js.size===0)return;const e=Array.from(Js.values());Js.clear(),e.forEach(t=>{By(t.messageId,t.content),sl.forEach(n=>n(t))})},Et={getLatest(e){return $s.get(e)??null},subscribeMessage(e,t){let n=ka.get(e);return n||(n=new Set,ka.set(e,n)),n.add(t),$s.has(e)&&t($s.get(e)??null),()=>{const r=ka.get(e);r&&(r.delete(t),r.size===0&&ka.delete(e))}},subscribe(e){return sl.add(e),()=>{sl.delete(e)}},publish(e){if(e.transient){Js.set(e.messageId,e),ts===null&&(ts=requestAnimationFrame(Bc));return}e.content===null?$s.delete(e.messageId):$s.set(e.messageId,e.content),Js.set(e.messageId,e),ts===null&&(ts=requestAnimationFrame(Bc))},clear(e,t){$s.delete(t),Js.delete(t),By(t,null),sl.forEach(n=>n({sessionId:e,messageId:t,content:null}))},forceFlush(){ts!==null&&(cancelAnimationFrame(ts),Bc())}},xr={BASE_URL:"./",DEV:!1,MODE:"production",PROD:!0,SSR:!1};function Wy(e){return"init"in e}function Du(e){return typeof e.write=="function"}function vC(e){return!!e.onMount}function zh(e){return"v"in e||"e"in e}function Cl(e){if("e"in e)throw e.e;if((xr?"production":void 0)!=="production"&&!("v"in e))throw new Error("[Bug] atom state is not initialized");return e.v}function kl(e){return typeof(e==null?void 0:e.then)=="function"}function Uy(e,t,n){if(!n.p.has(e)){n.p.add(e);const r=()=>n.p.delete(e);t.then(r,r)}}function qy(e,t,n){const r=n.get(e),s=r==null?void 0:r.t,o=t.p;if(!(s!=null&&s.size))return o;if(!o.size)return s;const a=new Set(s);for(const i of o)a.add(i);return a}function bC(e){return!!e.INTERNAL_onInit}const SC=(e,t,n,...r)=>n.read(...r),wC=(e,t,n,...r)=>n.write(...r),xC=(e,t,n)=>n.INTERNAL_onInit(t),_C=(e,t,n,r)=>{var s;return(s=n.onMount)==null?void 0:s.call(n,r)},CC=(e,t,n)=>{var r;const s=e[0];let o=s.get(n);if(!o){const a=e[6],i=e[9];o={d:new Map,p:new Set,n:0},s.set(n,o),(r=a.i)==null||r.call(a,n),bC(n)&&i(e,t,n)}return o},kC=(e,t)=>{var n;const r=e[1],s=e[3],o=e[4],a=e[5],i=e[6],c=e[13];if(!i.f&&!s.size&&!o.size&&!a.size)return;const d=[],f=p=>{try{p()}catch(v){d.push(v)}};do{i.f&&f(i.f);const p=new Set;for(const v of s){const g=(n=r.get(v))==null?void 0:n.l;if(g)for(const w of g)p.add(w)}s.clear();for(const v of a)p.add(v);a.clear();for(const v of o)p.add(v);o.clear();for(const v of p)f(v);s.size&&c(e,t)}while(s.size||a.size||o.size);if(d.length)throw new AggregateError(d)},TC=(e,t)=>{const n=e[1],r=e[2],s=e[3],o=e[11],a=e[14],i=e[17];if(!s.size)return;const c=[],d=[],f=new WeakSet,p=new WeakSet,v=[],g=[];for(const w of s)v.push(w),g.push(o(e,t,w));for(;v.length;){const w=v.length-1,m=v[w],x=g[w];if(p.has(m)){v.pop(),g.pop();continue}if(f.has(m)){if(r.get(m)===x.n)c.push(m),d.push(x);else if((xr?"production":void 0)!=="production"&&r.has(m))throw new Error("[Bug] invalidated atom exists");p.add(m),v.pop(),g.pop();continue}f.add(m);for(const k of qy(m,x,n))f.has(k)||(v.push(k),g.push(o(e,t,k)))}for(let w=c.length-1;w>=0;--w){const m=c[w],x=d[w];let k=!1;for(const C of x.d.keys())if(C!==m&&s.has(C)){k=!0;break}k&&(r.set(m,x.n),a(e,t,m),i(e,t,m)),r.delete(m)}},Fu=new WeakSet,PC=(e,t,n)=>{var r,s;const o=e[1],a=e[2],i=e[3],c=e[6],d=e[7],f=e[11],p=e[12],v=e[13],g=e[14],w=e[16],m=e[17],x=e[20],k=e[26],C=e[28],E=f(e,t,n),T=C[0];if(zh(E)){if(o.has(n)&&a.get(n)!==E.n||E.m===T)return E.m=T,E;let D=!1;for(const[ie,Q]of E.d)if(g(e,t,ie).n!==Q){D=!0;break}if(!D)return E.m=T,E}let P=!0;const A=new Set(E.d.keys()),O=()=>{for(const D of A)E.d.delete(D)},$=()=>{if(o.has(n)){const D=!i.size;m(e,t,n),D&&(v(e,t),p(e,t))}},U=D=>{var ie;if(D===n){const ue=f(e,t,D);if(!zh(ue))if(Wy(D))x(e,t,D,D.init);else throw new Error("no atom init");return Cl(ue)}const Q=g(e,t,D);try{return Cl(Q)}finally{A.delete(D),E.d.set(D,Q.n),kl(E.v)&&Uy(n,E.v,Q),o.has(n)&&((ie=o.get(D))==null||ie.t.add(n)),P||$()}};let J,ee;const I={get signal(){return J||(J=new AbortController),J.signal},get setSelf(){return(xr?"production":void 0)!=="production"&&console.warn("[DEPRECATED] setSelf is deprecated and will be removed in v3."),(xr?"production":void 0)!=="production"&&!Du(n)&&console.warn("setSelf function cannot be used with read-only atom"),!ee&&Du(n)&&(ee=(...D)=>{if((xr?"production":void 0)!=="production"&&P&&console.warn("setSelf function cannot be called in sync"),!P)try{return w(e,t,n,D)}finally{v(e,t),p(e,t)}}),ee}},Y=E.n,z=a.get(n)===Y;try{(xr?"production":void 0)!=="production"&&Fu.delete(t);const D=d(e,t,n,U,I);if((xr?"production":void 0)!=="production"&&Fu.has(t)&&console.warn("Detected store mutation during atom read. This is not supported."),x(e,t,n,D),kl(D)){k(e,t,D,()=>J==null?void 0:J.abort());const ie=()=>{O(),$()};D.then(ie,ie)}else O();return(r=c.r)==null||r.call(c,n),E.m=T,E}catch(D){return delete E.v,E.e=D,++E.n,E.m=T,E}finally{P=!1,E.n!==Y&&z&&(a.set(n,E.n),i.add(n),(s=c.c)==null||s.call(c,n))}},EC=(e,t,n)=>{const r=e[1],s=e[2],o=e[11],a=[n];for(;a.length;){const i=a.pop(),c=o(e,t,i);for(const d of qy(i,c,r)){const f=o(e,t,d);s.get(d)!==f.n&&(s.set(d,f.n),a.push(d))}}},MC=(e,t,n,r)=>{const s=e[3],o=e[6],a=e[8],i=e[11],c=e[12],d=e[13],f=e[14],p=e[15],v=e[16],g=e[17],w=e[20],m=e[28];let x=!0;const k=E=>Cl(f(e,t,E)),C=(E,...T)=>{var P;const A=i(e,t,E);try{if(E===n){if(!Wy(E))throw new Error("atom not writable");(xr?"production":void 0)!=="production"&&Fu.add(t);const O=A.n,$=T[0];w(e,t,E,$),g(e,t,E),O!==A.n&&(++m[0],s.add(E),p(e,t,E),(P=o.c)==null||P.call(o,E));return}else return v(e,t,E,T)}finally{x||(d(e,t),c(e,t))}};try{return a(e,t,n,k,C,...r)}finally{x=!1}},RC=(e,t,n)=>{var r;const s=e[1],o=e[3],a=e[6],i=e[11],c=e[15],d=e[18],f=e[19],p=i(e,t,n),v=s.get(n);if(v&&p.d.size>0){for(const[g,w]of p.d)if(!v.d.has(g)){const m=i(e,t,g);d(e,t,g).t.add(n),v.d.add(g),w!==m.n&&(o.add(g),c(e,t,g),(r=a.c)==null||r.call(a,g))}for(const g of v.d)if(!p.d.has(g)){v.d.delete(g);const w=f(e,t,g);w==null||w.t.delete(n)}}},AC=(e,t,n)=>{var r;const s=e[1],o=e[4],a=e[6],i=e[10],c=e[11],d=e[12],f=e[13],p=e[14],v=e[16],g=e[18],w=c(e,t,n);let m=s.get(n);if(!m){p(e,t,n);for(const x of w.d.keys())g(e,t,x).t.add(n);if(m={l:new Set,d:new Set(w.d.keys()),t:new Set},s.set(n,m),Du(n)&&vC(n)){const x=()=>{let k=!0;const C=(...E)=>{try{return v(e,t,n,E)}finally{k||(f(e,t),d(e,t))}};try{const E=i(e,t,n,C);E&&(m.u=()=>{k=!0;try{E()}finally{k=!1}})}finally{k=!1}};o.add(x)}(r=a.m)==null||r.call(a,n)}return m},jC=(e,t,n)=>{var r,s;const o=e[1],a=e[5],i=e[6],c=e[11],d=e[19],f=c(e,t,n);let p=o.get(n);if(!p||p.l.size)return p;let v=!1;for(const g of p.t)if((r=o.get(g))!=null&&r.d.has(n)){v=!0;break}if(!v){p.u&&a.add(p.u),p=void 0,o.delete(n);for(const g of f.d.keys()){const w=d(e,t,g);w==null||w.t.delete(n)}(s=i.u)==null||s.call(i,n);return}return p},IC=(e,t,n,r)=>{const s=e[11],o=e[27],a=s(e,t,n),i="v"in a,c=a.v;if(kl(r))for(const d of a.d.keys())Uy(n,r,s(e,t,d));a.v=r,delete a.e,(!i||!Object.is(c,a.v))&&(++a.n,kl(c)&&o(e,t,c))},OC=(e,t,n)=>{const r=e[14];return Cl(r(e,t,n))},$C=(e,t,n,...r)=>{const s=e[3],o=e[12],a=e[13],i=e[16],c=s.size;try{return i(e,t,n,r)}finally{s.size!==c&&(a(e,t),o(e,t))}},LC=(e,t,n,r)=>{const s=e[12],o=e[18],a=e[19],c=o(e,t,n).l;return c.add(r),s(e,t),()=>{c.delete(r),a(e,t,n),s(e,t)}},DC=(e,t,n,r)=>{const s=e[25];let o=s.get(n);if(!o){o=new Set,s.set(n,o);const a=()=>s.delete(n);n.then(a,a)}o.add(r)},FC=(e,t,n)=>{const s=e[25].get(n);s==null||s.forEach(o=>o())},Hy=new WeakMap;function NC(e){const t=Hy.get(e);if((xr?"production":void 0)!=="production"&&!t)throw new Error("Store must be created by buildStore to read its building blocks");const n=t[24];return n?n(t,e):t}function zC(...e){const t={get(a){return r(n,t,a)},set(a,...i){return s(n,t,a,...i)},sub(a,i){return o(n,t,a,i)}},n=[new WeakMap,new WeakMap,new WeakMap,new Set,new Set,new Set,{},SC,wC,xC,_C,CC,kC,TC,PC,EC,MC,RC,AC,jC,IC,OC,$C,LC,void 0,new WeakMap,DC,FC,[0]].map((a,i)=>e[i]||a);Hy.set(t,Object.freeze(n));const r=n[21],s=n[22],o=n[23];return t}const Xy={};let BC=0;function Yr(e,t){const n=`atom${++BC}`,r={toString(){return(Xy?"production":void 0)!=="production"&&this.debugLabel?n+":"+this.debugLabel:n}};return typeof e=="function"?r.read=e:(r.init=e,r.read=WC,r.write=UC),t&&(r.write=t),r}function WC(e){return e(this)}function UC(e,t,n){return t(this,typeof n=="function"?n(e(this)):n)}function Yy(){return zC()}let Io;function qC(){return Io||(Io=Yy(),(Xy?"production":void 0)!=="production"&&(globalThis.__JOTAI_DEFAULT_STORE__||(globalThis.__JOTAI_DEFAULT_STORE__=Io),globalThis.__JOTAI_DEFAULT_STORE__!==Io&&console.warn("Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044"))),Io}const HC=S.createContext(void 0);function XC(e){const t=S.useContext(HC);return(e==null?void 0:e.store)||t||qC()}const Nu=e=>typeof(e==null?void 0:e.then)=="function",zu=e=>{e.status||(e.status="pending",e.then(t=>{e.status="fulfilled",e.value=t},t=>{e.status="rejected",e.reason=t}))},YC=rt.use||(e=>{if(e.status==="pending")throw e;if(e.status==="fulfilled")return e.value;throw e.status==="rejected"?e.reason:(zu(e),e)}),Wc=new WeakMap,Bh=(e,t,n)=>{const r=NC(e),s=r[26];let o=Wc.get(t);return o||(o=new Promise((a,i)=>{let c=t;const d=v=>g=>{c===v&&a(g)},f=v=>g=>{c===v&&i(g)},p=()=>{try{const v=n();Nu(v)?(Wc.set(v,o),c=v,v.then(d(v),f(v)),s(r,e,v,p)):a(v)}catch(v){i(v)}};t.then(d(t),f(t)),s(r,e,t,p)}),Wc.set(t,o)),o};function KC(e,t){const{delay:n,unstable_promiseStatus:r=!rt.use}=t||{},s=XC(t),[[o,a,i],c]=S.useReducer(f=>{const p=s.get(e);return Object.is(f[0],p)&&f[1]===s&&f[2]===e?f:[p,s,e]},void 0,()=>[s.get(e),s,e]);let d=o;if((a!==s||i!==e)&&(c(),d=s.get(e)),S.useEffect(()=>{const f=s.sub(e,()=>{if(r)try{const p=s.get(e);Nu(p)&&zu(Bh(s,p,()=>s.get(e)))}catch{}if(typeof n=="number"){console.warn(`[DEPRECATED] delay option is deprecated and will be removed in v3.
16
16
 
17
17
  Migration guide:
18
18
 
@@ -130,7 +130,7 @@ You are running on **${BT(e)}**.`;return e==="windows"?n+`
130
130
 
131
131
  `)}}if(!T&&!C&&(!x||x.length===0))return;const A=[E,T,C].filter(Boolean).join(`
132
132
 
133
- `);if(c(A),aP(a??Z.getState().selectedModel),f(""),d(),s.size>0){const O=Array.from(A.matchAll(/@([^\\s]+)/g));if(O.length>0){const $=[];for(const U of O){const J=U[1],ee=s.get(J);ee&&$.push(ee)}if($.length>0){const U=JSON.stringify({type:"file_reference",paths:$.map(J=>J.path),display_text:A});await i(U,x,o,P)}else await i(A,x,o,P)}else await i(A,x,o,P)}else await i(A,x,o,P);p(null),v([]),g(new Map)},[e,d,s,r,c,o,n,i,a,v,f,g,p,t])}),lP=({currentSessionId:e,currentChat:t,currentMessages:n,reasoningEffort:r,retryLastTurn:s,navigate:o})=>{const a=S.useCallback(async(c="regenerate")=>{if(!e||!t)return;const d=[...n];d.length===0||[...d].reverse().findIndex(p=>p.role==="user")===-1||await s(r,c)},[t,e,n,r,s]),i=S.useCallback((c,d)=>{const f=o(c,d);return f.applied?f.value:null},[o]);return{retryLastMessage:a,handleHistoryNavigate:i}},cP=({referenceText:e,isToolSpecificMode:t,isRestrictConversation:n,allowedTools:r,autoToolPrefix:s,t:o})=>o(e?"chat.input.placeholderWithReference":"chat.input.placeholderWithWorkflows");function uP({value:e,onChange:t,disabled:n,dataTestId:r,appearance:s="default"}){const{token:o}=st.useToken(),a=mt(m=>m.catalog),i=mt(m=>m.getProviderDisplayLabel);S.useEffect(()=>{a||mt.getState().loadCatalog()},[a]);const c=S.useMemo(()=>{if(!(a!=null&&a.models))return[];const m={};for(const C of a.models){const E=C.reference.provider;m[E]||(m[E]={display:C.provider_display_name,models:[]}),m[E].models.push(C)}const x=[];return Object.keys(m).forEach((C,E)=>{const T=m[C];E>0&&x.push({type:"divider"}),x.push({type:"group",label:T.display,children:T.models.map(P=>({key:`${P.reference.provider}/${P.reference.model}`,label:l.jsxs(ze,{size:4,children:[l.jsx("span",{children:P.display_name}),P.capabilities.supports_vision&&l.jsx(Ye,{color:"blue",style:{fontSize:10,lineHeight:"16px",padding:"0 3px"},children:"Vision"})]})}))})}),x},[a]),d=e?`${e.provider}/${e.model}`:void 0,f=e?i(e.provider):void 0,p=e?`${f||e.provider}/${e.model}`:kt.t("chat.model.selectModel"),v=S.useCallback(m=>{const[x,...k]=m.key.split("/"),C=k.join("/");x&&C&&t({provider:x,model:C})},[t]),g=s==="contrast"?{minWidth:220,width:"100%",justifyContent:"space-between",padding:"0 12px",height:36,borderRadius:o.borderRadiusLG,background:o.colorBgElevated,border:`1px solid ${o.colorBorder}`,boxShadow:"none"}:{minWidth:146,padding:"0 12px",height:36,borderRadius:18},w=s==="contrast"?{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:13,textAlign:"left"}:{maxWidth:150,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:13};return l.jsx(ze,{size:4,"data-tour-id":"model-picker",children:l.jsx(Zs,{trigger:["click"],placement:"topLeft",menu:{selectable:!0,selectedKeys:d?[d]:[],items:c,style:{maxHeight:"50vh",overflowY:"auto"},onClick:v},disabled:n,children:l.jsx(Ee,{"data-testid":r,type:s==="contrast"?"default":"text",size:"small",block:s==="contrast",disabled:n,style:g,title:p,children:l.jsxs(ze,{size:4,style:{width:"100%",justifyContent:"space-between"},children:[l.jsx("span",{style:w,children:p}),l.jsx(eo,{style:{fontSize:10}})]})})})})}const sp="chat-send-message",op="reference-text",dP="chat-model-options-cache-v1",iv=24*60*60*1e3,fP=["low","medium","high","xhigh","max"],hP=[],pP=1024,mP=3,gP={copilot:"GitHub Copilot",openai:"OpenAI",anthropic:"Anthropic",gemini:"Google Gemini",bodhi:"Bodhi"},yP=[{value:"gpt-4o-mini",label:"GPT-4o Mini"},{value:"gpt-4o",label:"GPT-4o"},{value:"gpt-4-turbo",label:"GPT-4 Turbo"},{value:"gpt-4-turbo-preview",label:"GPT-4 Turbo Preview"},{value:"gpt-4",label:"GPT-4"},{value:"gpt-3.5-turbo",label:"GPT-3.5 Turbo"}],vP=[{value:"claude-3-5-sonnet-20241022",label:"Claude 3.5 Sonnet"},{value:"claude-3-5-sonnet-20240620",label:"Claude 3.5 Sonnet (Legacy)"},{value:"claude-3-opus-20240229",label:"Claude 3 Opus"},{value:"claude-3-sonnet-20240229",label:"Claude 3 Sonnet"},{value:"claude-3-haiku-20240307",label:"Claude 3 Haiku"}],bP=[{value:"gemini-pro",label:"Gemini Pro"},{value:"gemini-pro-vision",label:"Gemini Pro Vision"},{value:"gemini-1.5-pro",label:"Gemini 1.5 Pro"},{value:"gemini-1.5-flash",label:"Gemini 1.5 Flash"}],SP=[{value:"gpt-4o",label:"GPT-4o"},{value:"gpt-4o-mini",label:"GPT-4o Mini"}],lv=e=>`${dP}:${e}`,wP=e=>{if(typeof window>"u")return null;try{const t=localStorage.getItem(lv(e));if(!t)return null;const n=JSON.parse(t);return!n||!Array.isArray(n.options)||Date.now()-n.timestamp>iv?null:n.options.filter(r=>r&&typeof r.value=="string"&&r.value.trim().length>0&&typeof r.label=="string").map(r=>({value:r.value,label:r.label}))}catch{return null}},xP=(e,t)=>{if(!(typeof window>"u"))try{const n={timestamp:Date.now(),options:t};localStorage.setItem(lv(e),JSON.stringify(n))}catch{}},_P=async e=>{const t=On.getInstance();try{const n=await t.loadModelOptionsCache(e);if(n)return Date.now()-n.timestamp>iv?null:n.options.filter(r=>r&&typeof r.value=="string"&&r.value.trim().length>0&&typeof r.label=="string")}catch{}return wP(e)},CP=async(e,t)=>{const n=On.getInstance();try{await n.saveModelOptionsCache(e,t,Date.now())}catch{}xP(e,t)},kP=({resolvedProviderType:e,currentProvider:t,activeModel:n,getErrorMessage:r,redirectToProviderSettingsIfNeeded:s})=>{const[o,a]=S.useState([]),[i,c]=S.useState(!1),[d,f]=S.useState(null);S.useEffect(()=>{(async()=>{const m=await _P(e);a(m??[]),f(null)})()},[e]);const p=S.useMemo(()=>({openai:[...yP],anthropic:[...vP],gemini:[...bP],copilot:[...SP],bodhi:[]})[e]||[],[e]),v=S.useMemo(()=>{const x=[...o.length>0?o:p];return n&&!x.some(k=>k.value===n)&&x.unshift({value:n,label:n}),x},[o,p,n]),g=S.useCallback(async(m,x,k)=>{if(!(!(k!=null&&k.force)&&o.length>0))try{c(!0),f(null);const E=(x==="copilot"?await by.getModels(m):p).map(T=>({value:typeof T=="string"?T:T.value,label:typeof T=="string"?T:T.label}));a(E),await CP(x,E)}catch(C){f(r(C))}finally{c(!1)}},[p,r,o.length]),w=S.useCallback(m=>{m&&(s()||i||o.length>0||g(t,e))},[t,e,g,i,o.length,s]);return{modelOptions:o,isModelOptionsLoading:i,modelOptionsError:d,resolvedModelOptions:v,handleModelDropdownVisibleChange:w}},$o=(e,t)=>{},TP=({sessionId:e,reasoningEffort:t,activeModelRef:n,isFlagOn:r,messageApi:s,setContent:o,pendingQuestionToolCallId:a,t:i})=>{const c=Z(m=>m.markRespondStart),d=Z(m=>m.markSettleTimeout),f=Z(m=>m.applyExecutionStarted),p=Z(m=>m.clearPendingQuestion),v=S.useCallback(()=>{var x,k;if(!e)return null;const m=(x=Z.getState().executionBySession)==null?void 0:x[e];return m?{phase:m.phase,generation:m.generation,backendRunId:m.backendRunId??null,backendIsRunning:m.backend.isRunning,hasPendingQuestion:m.interaction.pendingQuestion!=null,pendingQuestionToolCallId:((k=m.interaction.pendingQuestion)==null?void 0:k.toolCallId)??null,tokenCount:m.stream.tokenCount,hasTokens:m.stream.hasTokens,activeReasons:m.activeReasons}:null},[e]),g=S.useCallback(m=>m?!!so(m)(Z.getState()):!1,[]);return{handleRespondSubmit:S.useCallback(async m=>{const x=m.trim();if(!x||!e)return;const C=so(e)(Z.getState());if(C&&!C.allowCustom&&C.options.length>0&&!C.options.includes(x)){s.warning(i("components.questionDialog.selectOptionWarning"));return}$o("input.respond:start",{trimmedLength:x.length,executionBefore:v()});const E=c(e,a??null);$o("input.respond:afterMarkRespondStart",{executionAfterMarkRespondStart:v()}),await new Promise(T=>setTimeout(T,0));try{const T={response:x,reasoning_effort:t};r()&&n&&(T.model_ref=n,T.provider=n.provider);const P=await ht.post(`respond/${e}`,T);$o("input.respond:response",{sessionId:e,result:P,executionAfterResponse:v()}),s.success(i("components.questionDialog.responseSubmittedContinue")),o(""),p(e),typeof window<"u"&&window.dispatchEvent(new CustomEvent(Yu,{detail:{sessionId:e}}));const A=P==null?void 0:P.auto_resume_status,O=P==null?void 0:P.run_id;$o("input.respond:resumeDecision",{sessionId:e,resumeStatus:A,runId:O??null,newGeneration:E,executionBeforeResumeDecision:v()}),A==="started"||A==="already_running"?(f(e,O??"",E),$o("input.respond:afterApplyExecutionStarted",{sessionId:e,resumeStatus:A,runId:O??null,newGeneration:E,executionAfterApplyExecutionStarted:v()})):(A==="error"||!A)&&(console.error("[InputContainer] Failed to auto-resume agent execution"),d(e))}catch(T){console.error("[InputContainer] Failed to submit respond:",T),s.error(T instanceof Error?T.message:i("components.questionDialog.submitFailed")),d(e)}},[e,t,n,r,s,o,p,c,d,f,v,a,i]),shouldUseRespondModeForSession:g}},PP=({sessionId:e,currentChat:t,updateSession:n,messageApi:r,recordEntry:s,clearCommandDraft:o,textAreaRef:a,setContent:i})=>{var m;const c=((m=t==null?void 0:t.config)==null?void 0:m.goldConfig)??null,d=(c==null?void 0:c.enabled)===!0,f=(c==null?void 0:c.goal)??(c==null?void 0:c.evaluation_prompt)??"",p=S.useCallback((x,k)=>({...c??{},enabled:x,auto_answer_enabled:x,auto_continue_enabled:x,goal:k.trim()||void 0,max_output_tokens:(c==null?void 0:c.max_output_tokens)??pP,max_auto_continuations:(c==null?void 0:c.max_auto_continuations)??mP}),[c]),v=S.useCallback(x=>{!e||!t||n(e,{config:{...t.config,goldConfig:x}})},[t,e,n]),g=S.useCallback(()=>{i(""),o(),requestAnimationFrame(()=>{var x;(x=a.current)==null||x.focus()})},[o,i,a]);return{handleGoalCommand:S.useCallback(async x=>{const k=x.trim();if(!/^\/goal(?:\s|$)/i.test(k))return!1;if(!e||!t)return r.warning("Create or select a session before using /goal."),!0;const C=k.replace(/^\/goal(?:\s+)?/i,"").trim(),E=C.toLowerCase();if(s(k),!C||E==="status"){const T=f.trim(),P=T.length>120?`${T.slice(0,120)}…`:T;return r.info(d?`Goal is enabled for this session${P?`: ${P}`:"."}`:"Goal is disabled for this session. Use /goal <prompt> to enable it."),g(),!0}if(["off","disable","disabled"].includes(E))return v(p(!1,f)),r.success("Goal disabled for this session."),g(),!0;if(["clear","reset"].includes(E))return v(p(!1,"")),r.success("Goal cleared for this session."),g(),!0;if(["on","enable","enabled"].includes(E)){const T=f.trim();return T?(v(p(!0,T)),r.success("Goal enabled for this session."),g(),!0):(r.warning("Usage: /goal <prompt> to enable Goal for this session."),!0)}return v(p(!0,C)),r.success("Goal enabled for this session."),g(),!0},[p,g,t,f,d,r,v,s,e])}},EP=S.lazy(()=>Lt(()=>import("./index-Cqta1ICV.js"),__vite__mapDeps([7,1,2,3]),import.meta.url)),MP=S.lazy(()=>Lt(()=>import("./index-DPB3OsNN.js"),__vite__mapDeps([8,1,2,3,4,5,6,9]),import.meta.url)),RP=S.lazy(()=>Lt(()=>import("./index-DRR_PLI3.js"),__vite__mapDeps([10,1,2,3,5,4,6]),import.meta.url)),AP=S.lazy(()=>Lt(()=>import("./index-Do83dUqx.js"),__vite__mapDeps([11,1,2,3]),import.meta.url)),{useToken:jP}=st,IP=({sessionId:e,onWorkflowDraftChange:t,statusIndicator:n})=>{var yr,Un,Gr,hi,qn,mo;const{t:r}=qe(),s=S.useRef(null),{token:o}=jP(),a=Wl(),i=Fa(xe=>xe.open),c=Z(xe=>e??xe.currentSessionId),d=Z(xe=>xe.currentSessionId),f=Z(mr(c)),p=S.useMemo(()=>(f==null?void 0:f.messages)||[],[f==null?void 0:f.messages]),v=Z(xe=>xe.addMessage),g=Z(xe=>xe.updateSession),w=Z(jy(c)),m=Z(Iy(c)),k=Z(Oy(c))||(f==null?void 0:f.isRunning)===!0&&m,C=Z(so(c)),E=Kd(c),T=av((yr=f==null?void 0:f.config)==null?void 0:yr.model_ref),P=mt(xe=>xe.isProviderModelRefEnabled),A=Z(xe=>c?xe.inputStates[c]:void 0),O=Z(xe=>xe.setInputContent),$=Z(xe=>xe.setReferenceText),U=Z(xe=>xe.setInputReasoningEffort),J=mt(xe=>xe.currentProvider),ee=mt(xe=>xe.providerConfig),I=mt(xe=>xe.providerInstances),Y=mt(xe=>xe.getProviderType),z=S.useMemo(()=>Y(J),[J,Y]),[D,ie]=S.useState(!1),Q=(A==null?void 0:A.content)||"",ue=(A==null?void 0:A.referenceText)||null,me=S.useMemo(()=>{var xe,Ft;return fy(ee,T,((Ft=(xe=f==null?void 0:f.config)==null?void 0:xe.model_ref)==null?void 0:Ft.provider)??J,I)},[T,(Gr=(Un=f==null?void 0:f.config)==null?void 0:Un.model_ref)==null?void 0:Gr.provider,ee,J,I]),V=S.useMemo(()=>c?Ry(c):void 0,[c]),ae=k_({sessionEffort:(hi=f==null?void 0:f.config)==null?void 0:hi.reasoningEffort,inputEffort:A==null?void 0:A.reasoningEffort,persistedEffort:V,providerDefault:me}),ve=S.useCallback(xe=>{c&&O(c,xe)},[c,O]),re=S.useCallback(xe=>{c&&$(c,xe)},[c,$]),le=S.useCallback(async xe=>{if(c&&(U(c,xe),!!f))try{await Vs.patchSession(c,{reasoning_effort:xe}),g(c,{config:{...f.config,reasoningEffort:xe}},{skipBackendPatch:!0})}catch(Ft){console.warn("[InputContainer] Failed to persist reasoning effort:",Ft)}},[f,c,U,g]),{sendMessage:de,retryLastTurn:pe,cancel:Ae}=JT({sessionId:c,addMessage:v,updateSession:g});S.useEffect(()=>{if(typeof window>"u")return;const xe=ft=>ft?c===ft:c!==null&&c===d,Ft=ft=>{const $t=ft;if(!$t.detail||typeof $t.detail.text!="string")return;const on=typeof $t.detail.sessionId=="string"?$t.detail.sessionId:null;if(!xe(on))return;const Hn=$t.detail.text.trim();Hn&&($t.detail.handled=!0,re(Hn),requestAnimationFrame(()=>{var vn;(vn=s.current)==null||vn.focus()}))},Xt=ft=>{var Hn;const $t=ft,on=typeof((Hn=$t.detail)==null?void 0:Hn.sessionId)=="string"?$t.detail.sessionId:null;xe(on)&&($t.detail&&($t.detail.handled=!0),requestAnimationFrame(()=>{var vn;(vn=s.current)==null||vn.focus()}))};return window.addEventListener(op,Ft),window.addEventListener(Tl,Xt),()=>{window.removeEventListener(op,Ft),window.removeEventListener(Tl,Xt)}},[d,c,re]);const{message:Me}=Tn.useApp(),F=!1,L=!1,fe=hP,Se=void 0,{recordEntry:De,navigate:We,acknowledgeManualInput:Ge}=QT(c),{attachments:He,setAttachments:at,handleAttachmentsAdded:St,handleAttachmentRemove:Ot,handleClearAttachments:xt}=oP(),Fe=tP({setContent:ve,onWorkflowDraftChange:t,acknowledgeManualInput:Ge,currentSessionId:c,textAreaRef:s,content:Q}),lt=sP({content:Q,setContent:ve,currentSessionId:c,currentChat:f,updateSession:g,messageApi:Me}),{setShowFileSelector:_t}=lt;S.useEffect(()=>{Fe.showCommandSelector&&_t(!1)},[Fe.showCommandSelector,_t]);const{handleSubmit:Qt}=iP({attachments:He,referenceText:ue,selectedWorkflow:Fe.selectedCommand,matchesWorkflowToken:Fe.matchesCommandToken,fileReferences:lt.fileReferences,reasoningEffort:ae,usedModelName:(T==null?void 0:T.model)??((mo=(qn=f==null?void 0:f.config)==null?void 0:qn.model_ref)==null?void 0:mo.model),sendMessage:de,recordEntry:De,clearWorkflowDraft:Fe.clearCommandDraft,setContent:ve,setReferenceText:re,setAttachments:at,setFileReferences:lt.setFileReferences}),At=C?{sessionId:c??"",question:C.question,options:C.options,allowCustom:C.allowCustom,toolCallId:C.toolCallId}:null,Tt=!!At,Ht=(At==null?void 0:At.options)||[],$n=(At==null?void 0:At.allowCustom)??!0,{handleRespondSubmit:Zt,shouldUseRespondModeForSession:he}=TP({sessionId:c,reasoningEffort:ae,activeModelRef:T,isFlagOn:P,messageApi:Me,setContent:ve,pendingQuestionToolCallId:(At==null?void 0:At.toolCallId)??null,t:r});PP({sessionId:c,currentChat:f,updateSession:g,messageApi:Me,recordEntry:De,clearCommandDraft:Fe.clearCommandDraft,textAreaRef:s,setContent:ve});const Ne=S.useCallback(async(xe,Ft)=>{if(he(c)){await Zt(xe);return}await Qt(xe,Ft)},[Zt,Qt,c,he]),Ie=S.useCallback(async(xe,Ft)=>{await Ne(xe,Ft)},[Ne]);S.useEffect(()=>{if(typeof window>"u")return;const xe=Ft=>{var Hn,vn,Ms;const Xt=Ft;if(!Xt.detail)return;const ft=typeof Xt.detail.sessionId=="string"?Xt.detail.sessionId:null;if(!(ft?c===ft:c!==null&&c===d))return;Xt.detail.handled=!0;const on=(Hn=Xt.detail)==null?void 0:Hn.content;if(typeof on!="string"||on.trim().length===0){(Ms=(vn=Xt.detail)==null?void 0:vn.reject)==null||Ms.call(vn,new Error("External send message content is empty"));return}Ne(on,void 0).then(()=>{var sr,bn;(bn=(sr=Xt.detail)==null?void 0:sr.resolve)==null||bn.call(sr)}).catch(sr=>{var bn,go;(go=(bn=Xt.detail)==null?void 0:bn.reject)==null||go.call(bn,sr)})};return window.addEventListener(sp,xe),()=>{window.removeEventListener(sp,xe)}},[d,c,Ne]);const{retryLastMessage:Je,handleHistoryNavigate:Wt}=lP({currentSessionId:c,currentChat:f,currentMessages:p,reasoningEffort:ae,retryLastTurn:pe,navigate:We}),yn=S.useCallback(()=>re(null),[re]),Oe=S.useMemo(()=>ee.providers[J],[ee,J]),Dt=S.useMemo(()=>!Oe||typeof Oe!="object"?!1:z==="copilot"?Object.keys(Oe).length>0:"api_key"in Oe?typeof Oe.api_key=="string"&&Oe.api_key.trim().length>0:!1,[z,Oe]),en=S.useCallback(()=>Dt?!1:(i("chat"),Me.warning(r("chat.view.providerNotConfigured")),!0),[Dt,Me,i,r]),tn=S.useCallback(xe=>xe instanceof Error&&xe.message.trim()?xe.message:r("chat.view.unknownError"),[r]),{isModelOptionsLoading:Re,modelOptionsError:Zn,resolvedModelOptions:Tr,handleModelDropdownVisibleChange:Pr}=kP({resolvedProviderType:z,currentProvider:J,activeModel:E,getErrorMessage:tn,redirectToProviderSettingsIfNeeded:en}),Vr=S.useCallback(async xe=>{var Ft,Xt,ft;if(!(!xe||xe===E)&&!D)try{if(en())return;if(ie(!0),!c||!f){c&&g(c,{config:{systemPromptId:((Ft=f==null?void 0:f.config)==null?void 0:Ft.systemPromptId)||"default",baseSystemPrompt:((Xt=f==null?void 0:f.config)==null?void 0:Xt.baseSystemPrompt)||"",lastUsedEnhancedPrompt:((ft=f==null?void 0:f.config)==null?void 0:ft.lastUsedEnhancedPrompt)??null,...(f==null?void 0:f.config)||{},model:xe}});return}await Vs.patchSession(c,{model:xe}),g(c,{config:{...f.config,model:xe}},{skipBackendPatch:!0}),Me.success(r("settings.providerTab.modelUpdated"))}catch($t){Me.error(`${r("settings.providerTab.updateModelErrorPrefix")}: ${tn($t)}`)}finally{ie(!1)}},[E,f,tn,D,Me,en,c,r,g]),er=S.useCallback(async xe=>{if(!c||!(f!=null&&f.config)){mt.getState().setSelectedModelRef(xe);return}if(!D)try{ie(!0),await Vs.patchSession(c,{model:xe.model,model_ref:xe,provider:xe.provider}),mt.getState().setSelectedModelRef(xe),g(c,{config:{...f.config,model:xe.model,model_ref:xe}},{skipBackendPatch:!0}),Me.success(r("settings.providerTab.modelUpdated"))}catch(Ft){Me.error(`${r("settings.providerTab.updateModelErrorPrefix")}: ${tn(Ft)}`)}finally{ie(!1)}},[f==null?void 0:f.config,tn,D,Me,c,r,g]),po=S.useMemo(()=>cP({referenceText:ue,isToolSpecificMode:F,isRestrictConversation:L,allowedTools:fe,autoToolPrefix:Se,t:r}),[ue,F,L,fe,Se,r]),Es=Tt&&$n?r("chat.respond.customAnswerPlaceholder"):Tt?r("components.questionDialog.selectOptionWarning"):po,Wn=Tt?r("chat.respond.submitToolResult","Submit tool result"):void 0,Cn=S.useMemo(()=>({low:r("chat.input.reasoning.low"),medium:r("chat.input.reasoning.medium"),high:r("chat.input.reasoning.high"),xhigh:r("chat.input.reasoning.xhigh"),max:r("chat.input.reasoning.max")}),[r]),tr=S.useMemo(()=>Cn[ae]??ae,[ae,Cn]),nr=S.useMemo(()=>l.jsx(Zs,{trigger:["click"],placement:"topLeft",disabled:!E||m,menu:{selectable:!0,selectedKeys:[ae],items:fP.map(xe=>({key:xe,label:Cn[xe]})),onClick:({key:xe})=>{le(xe)}},children:l.jsx(Ee,{type:"text",size:"small",disabled:!E||w,style:{minWidth:a?74:88,padding:a?"0 8px":"0 12px",height:36,borderRadius:18,color:ae==="medium"?o.colorTextSecondary:o.colorPrimary},title:r("chat.input.reasoningTitle",{label:tr}),children:l.jsxs(ze,{size:6,children:[l.jsx(Fw,{}),l.jsx("span",{children:tr}),l.jsx(eo,{style:{fontSize:10}})]})})}),[E,tr,m,a,w,ae,Cn,le,r,o.colorPrimary,o.colorTextSecondary]),Ce=E||r(Dt?"chat.model.selectModel":"chat.model.configureProvider"),Xe=S.useMemo(()=>Tr.length>0?Tr.map(xe=>({key:xe.value,label:xe.label})):[{key:"__no_models__",label:Zn||r("chat.model.noModelsAvailable"),disabled:!0}],[Tr,Zn,r]),yt=S.useMemo(()=>l.jsx(Ee,{type:"text",size:"small",disabled:w||D,onClick:()=>{Dt||en()},style:{minWidth:a?112:146,padding:a?"0 8px":"0 12px",height:36,borderRadius:18,color:Zn?o.colorError:o.colorTextSecondary},title:Ce,children:l.jsxs(ze,{size:6,children:[Re?l.jsx(Qs,{}):l.jsx(kd,{}),l.jsx("span",{style:{maxWidth:a?84:128,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:Ce}),l.jsx(eo,{style:{fontSize:10}})]})}),[w,D,Dt,en,a,Zn,o.colorError,o.colorTextSecondary,Ce,Re]),Pt=S.useMemo(()=>P()?l.jsx(uP,{value:T,onChange:er,disabled:w||D}):Dt?l.jsx(Zs,{trigger:["click"],placement:"topLeft",menu:{selectable:!0,selectedKeys:E?[E]:[],items:Xe,style:{maxHeight:"50vh",overflowY:"auto"},onClick:({key:xe})=>{xe!=="__no_models__"&&Vr(String(xe))}},onOpenChange:Pr,disabled:m||D,children:yt}):yt,[P,T,er,w,D,Dt,E,Xe,Vr,Pr,m,yt]),nn=S.useMemo(()=>l.jsxs(ze,{size:0,wrap:!0,children:[Pt,nr]}),[Pt,nr]),gr=S.useCallback(xe=>({isValid:!0}),[L,Se,r]),fi=S.useMemo(()=>p.some(xe=>xe.role==="user"),[p]),rr=S.useMemo(()=>({isStreaming:w,isInputLocked:m,canCancel:k,hasMessages:fi,allowRetry:!0,onRetry:Je,onCancel:Ae,onHistoryNavigate:Wt}),[w,m,k,fi,Je,Ae,Wt]);return l.jsxs("div",{style:{padding:`${o.paddingXXS}px ${o.paddingXS}px`,background:"transparent",borderTop:"none",boxShadow:"none",width:"100%",position:"relative",overflow:"visible"},children:[!E&&l.jsx(Jn,{type:"warning",showIcon:!0,icon:l.jsx(Nl,{}),message:r(Dt?"chat.model.noModelSelected":"chat.model.providerNotConfigured"),description:r(Dt?"chat.model.selectModelHint":"chat.model.configureProviderHint"),action:Dt?void 0:l.jsx(ze,{children:l.jsx("a",{onClick:()=>i("chat"),children:r("chat.model.openSettings")})}),style:{marginBottom:o.marginSM}}),F,ue&&l.jsx($T,{text:ue,onClose:yn}),He.length>0&&l.jsx(S.Suspense,{fallback:l.jsx(no,{size:"small"}),children:l.jsx(EP,{files:He,onRemove:Ot,onClear:xt})}),Tt&&Ht.length>0&&l.jsx("div",{style:{marginBottom:o.marginSM},children:l.jsx(ze,{wrap:!0,size:[8,8],children:Ht.map(xe=>l.jsx(Ee,{size:"small",onClick:()=>{Zt(xe)},disabled:m,children:xe},xe))})}),l.jsx(IT,{value:Q,onChange:Fe.handleInputChange,onSubmit:Ie,placeholder:Es,allowImages:!0,disabled:!E||Tt&&!$n&&Ht.length>0,statusIndicator:n,submitButtonLabel:Wn,isWorkflowSelectorVisible:Fe.showCommandSelector,textAreaRef:s,validateMessage:gr,onAttachmentsAdded:St,onWorkflowCommandChange:Fe.handleCommandChange,onFileReferenceChange:lt.handleFileReferenceChange,onFileReferenceButtonClick:lt.handleFileReferenceButtonClick,leftControlsExtra:nn,interaction:rr}),l.jsx(S.Suspense,{fallback:null,children:l.jsx(MP,{visible:Fe.showCommandSelector,onSelect:Fe.handleCommandSelect,onCancel:Fe.handleCommandSelectorCancel,onAutoComplete:Fe.handleAutoComplete,searchText:Fe.commandSearchText})}),lt.showFileSelector&&l.jsx(S.Suspense,{fallback:l.jsx(no,{size:"small"}),children:l.jsx(AP,{visible:lt.showFileSelector,files:lt.workspaceFiles,searchText:lt.fileSearchText,loading:lt.isWorkspaceLoading,error:lt.workspaceError,onSelect:lt.handleFileReferenceSelect,onCancel:lt.handleFileSelectorCancel,onChangeWorkspace:()=>{lt.setWorkspacePathInput((f==null?void 0:f.config.workspacePath)??""),lt.setIsWorkspaceModalVisible(!0)}})}),l.jsx(S.Suspense,{fallback:null,children:l.jsx(RP,{open:lt.isWorkspaceModalVisible,initialPath:lt.workspacePathInput,loading:lt.isSavingWorkspace,onSubmit:lt.handleWorkspaceModalSubmit,onCancel:lt.handleWorkspaceModalCancel})})]})},OP={maxLines:8,maxCharacters:500},Wr=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Ir=e=>typeof e=="string"?e:void 0,is=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,ap=e=>typeof e=="boolean"?e:void 0,Yl=e=>{if(!e)return null;const t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return null;try{const n=JSON.parse(t);return Wr(n)?n:null}catch{return null}},cv=e=>/\\u[0-9a-fA-F]{4}|\\n|\\t|\\r/.test(e)?e.replace(/\\u([0-9a-fA-F]{4})/g,(t,n)=>String.fromCharCode(parseInt(n,16))).replace(/\\n/g,`
133
+ `);if(c(A),aP(a??Z.getState().selectedModel),f(""),d(),s.size>0){const O=Array.from(A.matchAll(/@([^\\s]+)/g));if(O.length>0){const $=[];for(const U of O){const J=U[1],ee=s.get(J);ee&&$.push(ee)}if($.length>0){const U=JSON.stringify({type:"file_reference",paths:$.map(J=>J.path),display_text:A});await i(U,x,o,P)}else await i(A,x,o,P)}else await i(A,x,o,P)}else await i(A,x,o,P);p(null),v([]),g(new Map)},[e,d,s,r,c,o,n,i,a,v,f,g,p,t])}),lP=({currentSessionId:e,currentChat:t,currentMessages:n,reasoningEffort:r,retryLastTurn:s,navigate:o})=>{const a=S.useCallback(async(c="regenerate")=>{if(!e||!t)return;const d=[...n];d.length===0||[...d].reverse().findIndex(p=>p.role==="user")===-1||await s(r,c)},[t,e,n,r,s]),i=S.useCallback((c,d)=>{const f=o(c,d);return f.applied?f.value:null},[o]);return{retryLastMessage:a,handleHistoryNavigate:i}},cP=({referenceText:e,isToolSpecificMode:t,isRestrictConversation:n,allowedTools:r,autoToolPrefix:s,t:o})=>o(e?"chat.input.placeholderWithReference":"chat.input.placeholderWithWorkflows");function uP({value:e,onChange:t,disabled:n,dataTestId:r,appearance:s="default"}){const{token:o}=st.useToken(),a=mt(m=>m.catalog),i=mt(m=>m.getProviderDisplayLabel);S.useEffect(()=>{a||mt.getState().loadCatalog()},[a]);const c=S.useMemo(()=>{if(!(a!=null&&a.models))return[];const m={};for(const C of a.models){const E=C.reference.provider;m[E]||(m[E]={display:C.provider_display_name,models:[]}),m[E].models.push(C)}const x=[];return Object.keys(m).forEach((C,E)=>{const T=m[C];E>0&&x.push({type:"divider"}),x.push({type:"group",label:T.display,children:T.models.map(P=>({key:`${P.reference.provider}/${P.reference.model}`,label:l.jsxs(ze,{size:4,children:[l.jsx("span",{children:P.display_name}),P.capabilities.supports_vision&&l.jsx(Ye,{color:"blue",style:{fontSize:10,lineHeight:"16px",padding:"0 3px"},children:"Vision"})]})}))})}),x},[a]),d=e?`${e.provider}/${e.model}`:void 0,f=e?i(e.provider):void 0,p=e?`${f||e.provider}/${e.model}`:kt.t("chat.model.selectModel"),v=S.useCallback(m=>{const[x,...k]=m.key.split("/"),C=k.join("/");x&&C&&t({provider:x,model:C})},[t]),g=s==="contrast"?{minWidth:220,width:"100%",justifyContent:"space-between",padding:"0 12px",height:36,borderRadius:o.borderRadiusLG,background:o.colorBgElevated,border:`1px solid ${o.colorBorder}`,boxShadow:"none"}:{minWidth:146,padding:"0 12px",height:36,borderRadius:18},w=s==="contrast"?{flex:1,minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:13,textAlign:"left"}:{maxWidth:150,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",fontSize:13};return l.jsx(ze,{size:4,"data-tour-id":"model-picker",children:l.jsx(Zs,{trigger:["click"],placement:"topLeft",menu:{selectable:!0,selectedKeys:d?[d]:[],items:c,style:{maxHeight:"50vh",overflowY:"auto"},onClick:v},disabled:n,children:l.jsx(Ee,{"data-testid":r,type:s==="contrast"?"default":"text",size:"small",block:s==="contrast",disabled:n,style:g,title:p,children:l.jsxs(ze,{size:4,style:{width:"100%",justifyContent:"space-between"},children:[l.jsx("span",{style:w,children:p}),l.jsx(eo,{style:{fontSize:10}})]})})})})}const sp="chat-send-message",op="reference-text",dP="chat-model-options-cache-v1",iv=24*60*60*1e3,fP=["low","medium","high","xhigh","max"],hP=[],pP=1024,mP=3,gP={copilot:"GitHub Copilot",openai:"OpenAI",anthropic:"Anthropic",gemini:"Google Gemini",bodhi:"Bodhi"},yP=[{value:"gpt-4o-mini",label:"GPT-4o Mini"},{value:"gpt-4o",label:"GPT-4o"},{value:"gpt-4-turbo",label:"GPT-4 Turbo"},{value:"gpt-4-turbo-preview",label:"GPT-4 Turbo Preview"},{value:"gpt-4",label:"GPT-4"},{value:"gpt-3.5-turbo",label:"GPT-3.5 Turbo"}],vP=[{value:"claude-3-5-sonnet-20241022",label:"Claude 3.5 Sonnet"},{value:"claude-3-5-sonnet-20240620",label:"Claude 3.5 Sonnet (Legacy)"},{value:"claude-3-opus-20240229",label:"Claude 3 Opus"},{value:"claude-3-sonnet-20240229",label:"Claude 3 Sonnet"},{value:"claude-3-haiku-20240307",label:"Claude 3 Haiku"}],bP=[{value:"gemini-pro",label:"Gemini Pro"},{value:"gemini-pro-vision",label:"Gemini Pro Vision"},{value:"gemini-1.5-pro",label:"Gemini 1.5 Pro"},{value:"gemini-1.5-flash",label:"Gemini 1.5 Flash"}],SP=[{value:"gpt-4o",label:"GPT-4o"},{value:"gpt-4o-mini",label:"GPT-4o Mini"}],lv=e=>`${dP}:${e}`,wP=e=>{if(typeof window>"u")return null;try{const t=localStorage.getItem(lv(e));if(!t)return null;const n=JSON.parse(t);return!n||!Array.isArray(n.options)||Date.now()-n.timestamp>iv?null:n.options.filter(r=>r&&typeof r.value=="string"&&r.value.trim().length>0&&typeof r.label=="string").map(r=>({value:r.value,label:r.label}))}catch{return null}},xP=(e,t)=>{if(!(typeof window>"u"))try{const n={timestamp:Date.now(),options:t};localStorage.setItem(lv(e),JSON.stringify(n))}catch{}},_P=async e=>{const t=On.getInstance();try{const n=await t.loadModelOptionsCache(e);if(n)return Date.now()-n.timestamp>iv?null:n.options.filter(r=>r&&typeof r.value=="string"&&r.value.trim().length>0&&typeof r.label=="string")}catch{}return wP(e)},CP=async(e,t)=>{const n=On.getInstance();try{await n.saveModelOptionsCache(e,t,Date.now())}catch{}xP(e,t)},kP=({resolvedProviderType:e,currentProvider:t,activeModel:n,getErrorMessage:r,redirectToProviderSettingsIfNeeded:s})=>{const[o,a]=S.useState([]),[i,c]=S.useState(!1),[d,f]=S.useState(null);S.useEffect(()=>{(async()=>{const m=await _P(e);a(m??[]),f(null)})()},[e]);const p=S.useMemo(()=>({openai:[...yP],anthropic:[...vP],gemini:[...bP],copilot:[...SP],bodhi:[]})[e]||[],[e]),v=S.useMemo(()=>{const x=[...o.length>0?o:p];return n&&!x.some(k=>k.value===n)&&x.unshift({value:n,label:n}),x},[o,p,n]),g=S.useCallback(async(m,x,k)=>{if(!(!(k!=null&&k.force)&&o.length>0))try{c(!0),f(null);const E=(x==="copilot"?await by.getModels(m):p).map(T=>({value:typeof T=="string"?T:T.value,label:typeof T=="string"?T:T.label}));a(E),await CP(x,E)}catch(C){f(r(C))}finally{c(!1)}},[p,r,o.length]),w=S.useCallback(m=>{m&&(s()||i||o.length>0||g(t,e))},[t,e,g,i,o.length,s]);return{modelOptions:o,isModelOptionsLoading:i,modelOptionsError:d,resolvedModelOptions:v,handleModelDropdownVisibleChange:w}},$o=(e,t)=>{},TP=({sessionId:e,reasoningEffort:t,activeModelRef:n,isFlagOn:r,messageApi:s,setContent:o,pendingQuestionToolCallId:a,t:i})=>{const c=Z(m=>m.markRespondStart),d=Z(m=>m.markSettleTimeout),f=Z(m=>m.applyExecutionStarted),p=Z(m=>m.clearPendingQuestion),v=S.useCallback(()=>{var x,k;if(!e)return null;const m=(x=Z.getState().executionBySession)==null?void 0:x[e];return m?{phase:m.phase,generation:m.generation,backendRunId:m.backendRunId??null,backendIsRunning:m.backend.isRunning,hasPendingQuestion:m.interaction.pendingQuestion!=null,pendingQuestionToolCallId:((k=m.interaction.pendingQuestion)==null?void 0:k.toolCallId)??null,tokenCount:m.stream.tokenCount,hasTokens:m.stream.hasTokens,activeReasons:m.activeReasons}:null},[e]),g=S.useCallback(m=>m?!!so(m)(Z.getState()):!1,[]);return{handleRespondSubmit:S.useCallback(async m=>{const x=m.trim();if(!x||!e)return;const C=so(e)(Z.getState());if(C&&!C.allowCustom&&C.options.length>0&&!C.options.includes(x)){s.warning(i("components.questionDialog.selectOptionWarning"));return}$o("input.respond:start",{trimmedLength:x.length,executionBefore:v()});const E=c(e,a??null);$o("input.respond:afterMarkRespondStart",{executionAfterMarkRespondStart:v()}),await new Promise(T=>setTimeout(T,0));try{const T={response:x,reasoning_effort:t};r()&&n&&(T.model_ref=n,T.provider=n.provider);const P=await ht.post(`respond/${e}`,T);$o("input.respond:response",{sessionId:e,result:P,executionAfterResponse:v()}),s.success(i("components.questionDialog.responseSubmittedContinue")),o(""),p(e),typeof window<"u"&&window.dispatchEvent(new CustomEvent(Yu,{detail:{sessionId:e}}));const A=P==null?void 0:P.auto_resume_status,O=P==null?void 0:P.run_id;$o("input.respond:resumeDecision",{sessionId:e,resumeStatus:A,runId:O??null,newGeneration:E,executionBeforeResumeDecision:v()}),A==="started"||A==="already_running"?(f(e,O??"",E),$o("input.respond:afterApplyExecutionStarted",{sessionId:e,resumeStatus:A,runId:O??null,newGeneration:E,executionAfterApplyExecutionStarted:v()})):(A==="error"||!A)&&(console.error("[InputContainer] Failed to auto-resume agent execution"),d(e))}catch(T){console.error("[InputContainer] Failed to submit respond:",T),s.error(T instanceof Error?T.message:i("components.questionDialog.submitFailed")),d(e)}},[e,t,n,r,s,o,p,c,d,f,v,a,i]),shouldUseRespondModeForSession:g}},PP=({sessionId:e,currentChat:t,updateSession:n,messageApi:r,recordEntry:s,clearCommandDraft:o,textAreaRef:a,setContent:i})=>{var m;const c=((m=t==null?void 0:t.config)==null?void 0:m.goldConfig)??null,d=(c==null?void 0:c.enabled)===!0,f=(c==null?void 0:c.goal)??(c==null?void 0:c.evaluation_prompt)??"",p=S.useCallback((x,k)=>({...c??{},enabled:x,auto_answer_enabled:x,auto_continue_enabled:x,goal:k.trim()||void 0,max_output_tokens:(c==null?void 0:c.max_output_tokens)??pP,max_auto_continuations:(c==null?void 0:c.max_auto_continuations)??mP}),[c]),v=S.useCallback(x=>{!e||!t||n(e,{config:{...t.config,goldConfig:x}})},[t,e,n]),g=S.useCallback(()=>{i(""),o(),requestAnimationFrame(()=>{var x;(x=a.current)==null||x.focus()})},[o,i,a]);return{handleGoalCommand:S.useCallback(async x=>{const k=x.trim();if(!/^\/goal(?:\s|$)/i.test(k))return!1;if(!e||!t)return r.warning("Create or select a session before using /goal."),!0;const C=k.replace(/^\/goal(?:\s+)?/i,"").trim(),E=C.toLowerCase();if(s(k),!C||E==="status"){const T=f.trim(),P=T.length>120?`${T.slice(0,120)}…`:T;return r.info(d?`Goal is enabled for this session${P?`: ${P}`:"."}`:"Goal is disabled for this session. Use /goal <prompt> to enable it."),g(),!0}if(["off","disable","disabled"].includes(E))return v(p(!1,f)),r.success("Goal disabled for this session."),g(),!0;if(["clear","reset"].includes(E))return v(p(!1,"")),r.success("Goal cleared for this session."),g(),!0;if(["on","enable","enabled"].includes(E)){const T=f.trim();return T?(v(p(!0,T)),r.success("Goal enabled for this session."),g(),!0):(r.warning("Usage: /goal <prompt> to enable Goal for this session."),!0)}return v(p(!0,C)),r.success("Goal enabled for this session."),g(),!0},[p,g,t,f,d,r,v,s,e])}},EP=S.lazy(()=>Lt(()=>import("./index-Cqta1ICV.js"),__vite__mapDeps([7,1,2,3]),import.meta.url)),MP=S.lazy(()=>Lt(()=>import("./index-Dp6URzSg.js"),__vite__mapDeps([8,1,2,3,4,5,6,9]),import.meta.url)),RP=S.lazy(()=>Lt(()=>import("./index-Dx9b8gKz.js"),__vite__mapDeps([10,1,2,3,5,4,6]),import.meta.url)),AP=S.lazy(()=>Lt(()=>import("./index-Do83dUqx.js"),__vite__mapDeps([11,1,2,3]),import.meta.url)),{useToken:jP}=st,IP=({sessionId:e,onWorkflowDraftChange:t,statusIndicator:n})=>{var yr,Un,Gr,hi,qn,mo;const{t:r}=qe(),s=S.useRef(null),{token:o}=jP(),a=Wl(),i=Fa(xe=>xe.open),c=Z(xe=>e??xe.currentSessionId),d=Z(xe=>xe.currentSessionId),f=Z(mr(c)),p=S.useMemo(()=>(f==null?void 0:f.messages)||[],[f==null?void 0:f.messages]),v=Z(xe=>xe.addMessage),g=Z(xe=>xe.updateSession),w=Z(jy(c)),m=Z(Iy(c)),k=Z(Oy(c))||(f==null?void 0:f.isRunning)===!0&&m,C=Z(so(c)),E=Kd(c),T=av((yr=f==null?void 0:f.config)==null?void 0:yr.model_ref),P=mt(xe=>xe.isProviderModelRefEnabled),A=Z(xe=>c?xe.inputStates[c]:void 0),O=Z(xe=>xe.setInputContent),$=Z(xe=>xe.setReferenceText),U=Z(xe=>xe.setInputReasoningEffort),J=mt(xe=>xe.currentProvider),ee=mt(xe=>xe.providerConfig),I=mt(xe=>xe.providerInstances),Y=mt(xe=>xe.getProviderType),z=S.useMemo(()=>Y(J),[J,Y]),[D,ie]=S.useState(!1),Q=(A==null?void 0:A.content)||"",ue=(A==null?void 0:A.referenceText)||null,me=S.useMemo(()=>{var xe,Ft;return fy(ee,T,((Ft=(xe=f==null?void 0:f.config)==null?void 0:xe.model_ref)==null?void 0:Ft.provider)??J,I)},[T,(Gr=(Un=f==null?void 0:f.config)==null?void 0:Un.model_ref)==null?void 0:Gr.provider,ee,J,I]),V=S.useMemo(()=>c?Ry(c):void 0,[c]),ae=k_({sessionEffort:(hi=f==null?void 0:f.config)==null?void 0:hi.reasoningEffort,inputEffort:A==null?void 0:A.reasoningEffort,persistedEffort:V,providerDefault:me}),ve=S.useCallback(xe=>{c&&O(c,xe)},[c,O]),re=S.useCallback(xe=>{c&&$(c,xe)},[c,$]),le=S.useCallback(async xe=>{if(c&&(U(c,xe),!!f))try{await Vs.patchSession(c,{reasoning_effort:xe}),g(c,{config:{...f.config,reasoningEffort:xe}},{skipBackendPatch:!0})}catch(Ft){console.warn("[InputContainer] Failed to persist reasoning effort:",Ft)}},[f,c,U,g]),{sendMessage:de,retryLastTurn:pe,cancel:Ae}=JT({sessionId:c,addMessage:v,updateSession:g});S.useEffect(()=>{if(typeof window>"u")return;const xe=ft=>ft?c===ft:c!==null&&c===d,Ft=ft=>{const $t=ft;if(!$t.detail||typeof $t.detail.text!="string")return;const on=typeof $t.detail.sessionId=="string"?$t.detail.sessionId:null;if(!xe(on))return;const Hn=$t.detail.text.trim();Hn&&($t.detail.handled=!0,re(Hn),requestAnimationFrame(()=>{var vn;(vn=s.current)==null||vn.focus()}))},Xt=ft=>{var Hn;const $t=ft,on=typeof((Hn=$t.detail)==null?void 0:Hn.sessionId)=="string"?$t.detail.sessionId:null;xe(on)&&($t.detail&&($t.detail.handled=!0),requestAnimationFrame(()=>{var vn;(vn=s.current)==null||vn.focus()}))};return window.addEventListener(op,Ft),window.addEventListener(Tl,Xt),()=>{window.removeEventListener(op,Ft),window.removeEventListener(Tl,Xt)}},[d,c,re]);const{message:Me}=Tn.useApp(),F=!1,L=!1,fe=hP,Se=void 0,{recordEntry:De,navigate:We,acknowledgeManualInput:Ge}=QT(c),{attachments:He,setAttachments:at,handleAttachmentsAdded:St,handleAttachmentRemove:Ot,handleClearAttachments:xt}=oP(),Fe=tP({setContent:ve,onWorkflowDraftChange:t,acknowledgeManualInput:Ge,currentSessionId:c,textAreaRef:s,content:Q}),lt=sP({content:Q,setContent:ve,currentSessionId:c,currentChat:f,updateSession:g,messageApi:Me}),{setShowFileSelector:_t}=lt;S.useEffect(()=>{Fe.showCommandSelector&&_t(!1)},[Fe.showCommandSelector,_t]);const{handleSubmit:Qt}=iP({attachments:He,referenceText:ue,selectedWorkflow:Fe.selectedCommand,matchesWorkflowToken:Fe.matchesCommandToken,fileReferences:lt.fileReferences,reasoningEffort:ae,usedModelName:(T==null?void 0:T.model)??((mo=(qn=f==null?void 0:f.config)==null?void 0:qn.model_ref)==null?void 0:mo.model),sendMessage:de,recordEntry:De,clearWorkflowDraft:Fe.clearCommandDraft,setContent:ve,setReferenceText:re,setAttachments:at,setFileReferences:lt.setFileReferences}),At=C?{sessionId:c??"",question:C.question,options:C.options,allowCustom:C.allowCustom,toolCallId:C.toolCallId}:null,Tt=!!At,Ht=(At==null?void 0:At.options)||[],$n=(At==null?void 0:At.allowCustom)??!0,{handleRespondSubmit:Zt,shouldUseRespondModeForSession:he}=TP({sessionId:c,reasoningEffort:ae,activeModelRef:T,isFlagOn:P,messageApi:Me,setContent:ve,pendingQuestionToolCallId:(At==null?void 0:At.toolCallId)??null,t:r});PP({sessionId:c,currentChat:f,updateSession:g,messageApi:Me,recordEntry:De,clearCommandDraft:Fe.clearCommandDraft,textAreaRef:s,setContent:ve});const Ne=S.useCallback(async(xe,Ft)=>{if(he(c)){await Zt(xe);return}await Qt(xe,Ft)},[Zt,Qt,c,he]),Ie=S.useCallback(async(xe,Ft)=>{await Ne(xe,Ft)},[Ne]);S.useEffect(()=>{if(typeof window>"u")return;const xe=Ft=>{var Hn,vn,Ms;const Xt=Ft;if(!Xt.detail)return;const ft=typeof Xt.detail.sessionId=="string"?Xt.detail.sessionId:null;if(!(ft?c===ft:c!==null&&c===d))return;Xt.detail.handled=!0;const on=(Hn=Xt.detail)==null?void 0:Hn.content;if(typeof on!="string"||on.trim().length===0){(Ms=(vn=Xt.detail)==null?void 0:vn.reject)==null||Ms.call(vn,new Error("External send message content is empty"));return}Ne(on,void 0).then(()=>{var sr,bn;(bn=(sr=Xt.detail)==null?void 0:sr.resolve)==null||bn.call(sr)}).catch(sr=>{var bn,go;(go=(bn=Xt.detail)==null?void 0:bn.reject)==null||go.call(bn,sr)})};return window.addEventListener(sp,xe),()=>{window.removeEventListener(sp,xe)}},[d,c,Ne]);const{retryLastMessage:Je,handleHistoryNavigate:Wt}=lP({currentSessionId:c,currentChat:f,currentMessages:p,reasoningEffort:ae,retryLastTurn:pe,navigate:We}),yn=S.useCallback(()=>re(null),[re]),Oe=S.useMemo(()=>ee.providers[J],[ee,J]),Dt=S.useMemo(()=>!Oe||typeof Oe!="object"?!1:z==="copilot"?Object.keys(Oe).length>0:"api_key"in Oe?typeof Oe.api_key=="string"&&Oe.api_key.trim().length>0:!1,[z,Oe]),en=S.useCallback(()=>Dt?!1:(i("chat"),Me.warning(r("chat.view.providerNotConfigured")),!0),[Dt,Me,i,r]),tn=S.useCallback(xe=>xe instanceof Error&&xe.message.trim()?xe.message:r("chat.view.unknownError"),[r]),{isModelOptionsLoading:Re,modelOptionsError:Zn,resolvedModelOptions:Tr,handleModelDropdownVisibleChange:Pr}=kP({resolvedProviderType:z,currentProvider:J,activeModel:E,getErrorMessage:tn,redirectToProviderSettingsIfNeeded:en}),Vr=S.useCallback(async xe=>{var Ft,Xt,ft;if(!(!xe||xe===E)&&!D)try{if(en())return;if(ie(!0),!c||!f){c&&g(c,{config:{systemPromptId:((Ft=f==null?void 0:f.config)==null?void 0:Ft.systemPromptId)||"default",baseSystemPrompt:((Xt=f==null?void 0:f.config)==null?void 0:Xt.baseSystemPrompt)||"",lastUsedEnhancedPrompt:((ft=f==null?void 0:f.config)==null?void 0:ft.lastUsedEnhancedPrompt)??null,...(f==null?void 0:f.config)||{},model:xe}});return}await Vs.patchSession(c,{model:xe}),g(c,{config:{...f.config,model:xe}},{skipBackendPatch:!0}),Me.success(r("settings.providerTab.modelUpdated"))}catch($t){Me.error(`${r("settings.providerTab.updateModelErrorPrefix")}: ${tn($t)}`)}finally{ie(!1)}},[E,f,tn,D,Me,en,c,r,g]),er=S.useCallback(async xe=>{if(!c||!(f!=null&&f.config)){mt.getState().setSelectedModelRef(xe);return}if(!D)try{ie(!0),await Vs.patchSession(c,{model:xe.model,model_ref:xe,provider:xe.provider}),mt.getState().setSelectedModelRef(xe),g(c,{config:{...f.config,model:xe.model,model_ref:xe}},{skipBackendPatch:!0}),Me.success(r("settings.providerTab.modelUpdated"))}catch(Ft){Me.error(`${r("settings.providerTab.updateModelErrorPrefix")}: ${tn(Ft)}`)}finally{ie(!1)}},[f==null?void 0:f.config,tn,D,Me,c,r,g]),po=S.useMemo(()=>cP({referenceText:ue,isToolSpecificMode:F,isRestrictConversation:L,allowedTools:fe,autoToolPrefix:Se,t:r}),[ue,F,L,fe,Se,r]),Es=Tt&&$n?r("chat.respond.customAnswerPlaceholder"):Tt?r("components.questionDialog.selectOptionWarning"):po,Wn=Tt?r("chat.respond.submitToolResult","Submit tool result"):void 0,Cn=S.useMemo(()=>({low:r("chat.input.reasoning.low"),medium:r("chat.input.reasoning.medium"),high:r("chat.input.reasoning.high"),xhigh:r("chat.input.reasoning.xhigh"),max:r("chat.input.reasoning.max")}),[r]),tr=S.useMemo(()=>Cn[ae]??ae,[ae,Cn]),nr=S.useMemo(()=>l.jsx(Zs,{trigger:["click"],placement:"topLeft",disabled:!E||m,menu:{selectable:!0,selectedKeys:[ae],items:fP.map(xe=>({key:xe,label:Cn[xe]})),onClick:({key:xe})=>{le(xe)}},children:l.jsx(Ee,{type:"text",size:"small",disabled:!E||w,style:{minWidth:a?74:88,padding:a?"0 8px":"0 12px",height:36,borderRadius:18,color:ae==="medium"?o.colorTextSecondary:o.colorPrimary},title:r("chat.input.reasoningTitle",{label:tr}),children:l.jsxs(ze,{size:6,children:[l.jsx(Fw,{}),l.jsx("span",{children:tr}),l.jsx(eo,{style:{fontSize:10}})]})})}),[E,tr,m,a,w,ae,Cn,le,r,o.colorPrimary,o.colorTextSecondary]),Ce=E||r(Dt?"chat.model.selectModel":"chat.model.configureProvider"),Xe=S.useMemo(()=>Tr.length>0?Tr.map(xe=>({key:xe.value,label:xe.label})):[{key:"__no_models__",label:Zn||r("chat.model.noModelsAvailable"),disabled:!0}],[Tr,Zn,r]),yt=S.useMemo(()=>l.jsx(Ee,{type:"text",size:"small",disabled:w||D,onClick:()=>{Dt||en()},style:{minWidth:a?112:146,padding:a?"0 8px":"0 12px",height:36,borderRadius:18,color:Zn?o.colorError:o.colorTextSecondary},title:Ce,children:l.jsxs(ze,{size:6,children:[Re?l.jsx(Qs,{}):l.jsx(kd,{}),l.jsx("span",{style:{maxWidth:a?84:128,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:Ce}),l.jsx(eo,{style:{fontSize:10}})]})}),[w,D,Dt,en,a,Zn,o.colorError,o.colorTextSecondary,Ce,Re]),Pt=S.useMemo(()=>P()?l.jsx(uP,{value:T,onChange:er,disabled:w||D}):Dt?l.jsx(Zs,{trigger:["click"],placement:"topLeft",menu:{selectable:!0,selectedKeys:E?[E]:[],items:Xe,style:{maxHeight:"50vh",overflowY:"auto"},onClick:({key:xe})=>{xe!=="__no_models__"&&Vr(String(xe))}},onOpenChange:Pr,disabled:m||D,children:yt}):yt,[P,T,er,w,D,Dt,E,Xe,Vr,Pr,m,yt]),nn=S.useMemo(()=>l.jsxs(ze,{size:0,wrap:!0,children:[Pt,nr]}),[Pt,nr]),gr=S.useCallback(xe=>({isValid:!0}),[L,Se,r]),fi=S.useMemo(()=>p.some(xe=>xe.role==="user"),[p]),rr=S.useMemo(()=>({isStreaming:w,isInputLocked:m,canCancel:k,hasMessages:fi,allowRetry:!0,onRetry:Je,onCancel:Ae,onHistoryNavigate:Wt}),[w,m,k,fi,Je,Ae,Wt]);return l.jsxs("div",{style:{padding:`${o.paddingXXS}px ${o.paddingXS}px`,background:"transparent",borderTop:"none",boxShadow:"none",width:"100%",position:"relative",overflow:"visible"},children:[!E&&l.jsx(Jn,{type:"warning",showIcon:!0,icon:l.jsx(Nl,{}),message:r(Dt?"chat.model.noModelSelected":"chat.model.providerNotConfigured"),description:r(Dt?"chat.model.selectModelHint":"chat.model.configureProviderHint"),action:Dt?void 0:l.jsx(ze,{children:l.jsx("a",{onClick:()=>i("chat"),children:r("chat.model.openSettings")})}),style:{marginBottom:o.marginSM}}),F,ue&&l.jsx($T,{text:ue,onClose:yn}),He.length>0&&l.jsx(S.Suspense,{fallback:l.jsx(no,{size:"small"}),children:l.jsx(EP,{files:He,onRemove:Ot,onClear:xt})}),Tt&&Ht.length>0&&l.jsx("div",{style:{marginBottom:o.marginSM},children:l.jsx(ze,{wrap:!0,size:[8,8],children:Ht.map(xe=>l.jsx(Ee,{size:"small",onClick:()=>{Zt(xe)},disabled:m,children:xe},xe))})}),l.jsx(IT,{value:Q,onChange:Fe.handleInputChange,onSubmit:Ie,placeholder:Es,allowImages:!0,disabled:!E||Tt&&!$n&&Ht.length>0,statusIndicator:n,submitButtonLabel:Wn,isWorkflowSelectorVisible:Fe.showCommandSelector,textAreaRef:s,validateMessage:gr,onAttachmentsAdded:St,onWorkflowCommandChange:Fe.handleCommandChange,onFileReferenceChange:lt.handleFileReferenceChange,onFileReferenceButtonClick:lt.handleFileReferenceButtonClick,leftControlsExtra:nn,interaction:rr}),l.jsx(S.Suspense,{fallback:null,children:l.jsx(MP,{visible:Fe.showCommandSelector,onSelect:Fe.handleCommandSelect,onCancel:Fe.handleCommandSelectorCancel,onAutoComplete:Fe.handleAutoComplete,searchText:Fe.commandSearchText})}),lt.showFileSelector&&l.jsx(S.Suspense,{fallback:l.jsx(no,{size:"small"}),children:l.jsx(AP,{visible:lt.showFileSelector,files:lt.workspaceFiles,searchText:lt.fileSearchText,loading:lt.isWorkspaceLoading,error:lt.workspaceError,onSelect:lt.handleFileReferenceSelect,onCancel:lt.handleFileSelectorCancel,onChangeWorkspace:()=>{lt.setWorkspacePathInput((f==null?void 0:f.config.workspacePath)??""),lt.setIsWorkspaceModalVisible(!0)}})}),l.jsx(S.Suspense,{fallback:null,children:l.jsx(RP,{open:lt.isWorkspaceModalVisible,initialPath:lt.workspacePathInput,loading:lt.isSavingWorkspace,onSubmit:lt.handleWorkspaceModalSubmit,onCancel:lt.handleWorkspaceModalCancel})})]})},OP={maxLines:8,maxCharacters:500},Wr=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),Ir=e=>typeof e=="string"?e:void 0,is=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,ap=e=>typeof e=="boolean"?e:void 0,Yl=e=>{if(!e)return null;const t=e.trim();if(!t.startsWith("{")||!t.endsWith("}"))return null;try{const n=JSON.parse(t);return Wr(n)?n:null}catch{return null}},cv=e=>/\\u[0-9a-fA-F]{4}|\\n|\\t|\\r/.test(e)?e.replace(/\\u([0-9a-fA-F]{4})/g,(t,n)=>String.fromCharCode(parseInt(n,16))).replace(/\\n/g,`
134
134
  `).replace(/\\t/g," ").replace(/\\r/g,"\r"):e,dr=e=>Array.isArray(e)?e.filter(t=>typeof t=="string").map(t=>cv(t).trim()).filter(Boolean):[],Gt=e=>{if(typeof e!="string")return;const t=cv(e).trim();return t.length>0?t:void 0},$P=e=>{if(!Wr(e))return;const t=Gt(e.graph);if(t)return{title:Gt(e.title),graph:t}},LP=e=>{if(!Wr(e))return;const t=Gt(e.summary)??Gt(e.conclusion);if(t)return{title:Gt(e.title)||"Conclusion",summary:t,key_points:dr(e.key_points),next_steps:dr(e.next_steps),confidence:Gt(e.confidence),mermaid:$P(e.mermaid)}},DP=e=>{const t=Yl(e);if(!t)return null;const n=Gt(t.conclusion);return!n||t.type!=null&&t.type!=="conclusion"?null:{type:"conclusion",title:Gt(t.title)||"Conclusion",conclusion:n,key_points:dr(t.key_points),next_steps:dr(t.next_steps),confidence:Gt(t.confidence)}},FP=e=>{const t=Yl(e);if(!t)return null;const n=Gt(t.question);if(!n)return null;const r=Gt(t.status);return r&&r!=="awaiting_user_input"&&r!=="awaiting_permission_approval"?null:{question:n,options:dr(t.options),allow_custom:typeof t.allow_custom=="boolean"?t.allow_custom:!0,conclusion:LP(t.conclusion)}},NP=e=>{const t=Yl(e);return Gt(t==null?void 0:t.status)==="awaiting_permission_approval"},zP=e=>{var n;if(!e)return null;const t=[`## ${e.title}`,e.summary];if(e.confidence&&t.push(`**Confidence:** ${e.confidence}`),e.key_points.length>0&&t.push(["**Key points**",...e.key_points.map(r=>`- ${r}`)].join(`
135
135
  `)),e.next_steps.length>0&&t.push(["**Next steps**",...e.next_steps.map((r,s)=>`${s+1}. ${r}`)].join(`
136
136
  `)),(n=e.mermaid)!=null&&n.graph){const r=e.mermaid.title?`**${e.mermaid.title}**
@@ -203,7 +203,7 @@ ${t}`},rj=(e,t)=>{const n=ZA[e];if(!n)return null;const r=t.trim();if(!r)return"
203
203
  `),de=Ge.isJson?"json":"text",pe="result")}const Ae=z.info.status==="process"?a("components.toolSteps.running"):((We=z.metadata)==null?void 0:We.elapsed_ms)!=null?Bp(z.metadata.elapsed_ms):void 0;return{key:z.key,title:l.jsx("span",{style:{display:"inline-flex",alignItems:"center",gap:i.marginXS},children:D?l.jsxs(l.Fragment,{children:[l.jsx(Ye,{color:"purple",style:{marginInlineEnd:0,borderRadius:999,paddingInline:6,fontWeight:700,fontSize:i.fontSizeSM-1,lineHeight:"18px"},children:"MCP"}),l.jsx(Lr,{strong:!0,style:{fontSize:i.fontSizeSM},children:D.toolName})]}):l.jsx(Lr,{strong:!0,style:{fontSize:i.fontSizeSM},children:z.toolName})}),subTitle:Ae?l.jsx(Lr,{type:"secondary",style:{fontSize:i.fontSizeSM-1},children:Ae}):void 0,description:l.jsxs("div",{style:{minWidth:0},children:[l.jsx(Lr,{ellipsis:!0,style:{fontSize:i.fontSizeSM,display:"block",maxWidth:"100%"},children:Q}),l.jsx("div",{style:{marginTop:i.marginXXS,display:"flex",gap:i.marginXS,alignItems:"center"},children:l.jsx(Ee,{type:"link",size:"small",icon:l.jsx(Pd,{}),style:{padding:0,height:"auto",fontSize:i.fontSizeSM},"data-testid":`tool-step-details-${z.key}`,onClick:()=>T(z,me?"diff":"preview"),children:a("components.toolSteps.details")})}),ve&&!me&&l.jsx(Lr,{type:"secondary",style:{display:"block",marginTop:i.marginXS,fontSize:i.fontSizeSM-1},children:ve}),me&&V&&l.jsx("div",{style:{marginTop:i.marginXS,padding:i.paddingXS,borderRadius:i.borderRadiusSM,background:i.colorFillTertiary,border:`1px solid ${i.colorBorderSecondary}`},"data-testid":`tool-step-file-change-${z.key}`,children:l.jsxs("div",{style:{display:"grid",gap:i.marginXXS??2},children:[l.jsx(Lr,{strong:!0,style:{fontSize:i.fontSizeSM},ellipsis:{tooltip:re},children:re}),l.jsx(Lr,{type:"secondary",style:{fontSize:i.fontSizeSM-1},children:a("components.toolSteps.fileChangeStats",{added:V.added,removed:V.removed,defaultValue:`Added ${V.added} lines, removed ${V.removed} lines`})}),l.jsx(Qa,{payload:me,compact:!0,showHeader:!1,showViewToggle:!1,defaultViewMode:"unified",maxHeight:uj,unifiedLinesOverride:ae??void 0}),l.jsx(Ee,{type:"link",size:"small",style:{padding:0,height:"auto",fontSize:i.fontSizeSM-1},onClick:()=>T(z,"diff"),children:a("components.toolSteps.viewFullDiff",{defaultValue:"View full diff"})})]})}),le&&l.jsxs("div",{style:{marginTop:i.marginXS},children:[l.jsx(Ta,{value:le,mode:de,className:"lotus-tool-step-preview",compact:!0,maxHeight:72,scrollable:!1,backgroundColor:"transparent"}),l.jsx(Ee,{type:"link",size:"small",style:{padding:0,height:"auto",fontSize:i.fontSizeSM-1},onClick:()=>T(z,pe==="result"?"result":"preview"),children:pe==="result"?a("components.toolSteps.viewFullResult",{defaultValue:"View full result"}):a("components.toolSteps.viewFullOutput")})]})]}),status:z.info.status,icon:z.info.icon}}),[g,i,a]),Y=o?{background:"transparent"}:{background:"var(--lotus-tool-card-bg)",borderColor:"var(--lotus-tool-card-border)",borderWidth:1,borderStyle:"solid",borderRadius:i.borderRadiusLG,overflow:"hidden"};return l.jsxs("div",{className:"lotus-tool-steps",style:Y,children:[!o&&l.jsxs("div",{style:{display:"flex",alignItems:"center",gap:i.marginSM,padding:`${i.paddingSM}px ${i.paddingSM}px`,cursor:"pointer",userSelect:"none"},onClick:()=>d(z=>!z),"data-testid":"tool-steps-header",children:[l.jsx("span",{style:{flexShrink:0},children:c?l.jsx(eo,{style:{color:i.colorTextSecondary,fontSize:i.fontSizeSM}}):l.jsx(bs,{style:{color:i.colorTextSecondary,fontSize:i.fontSizeSM}})}),l.jsxs(Lr,{strong:!0,style:{fontSize:i.fontSizeSM},children:["🛠 ",ee]})]}),(o||c)&&l.jsx("div",{style:{padding:o?`${i.paddingXS}px 0 0 0`:`${i.paddingXS}px ${i.paddingSM}px ${i.paddingSM}px`},children:l.jsx(Jg,{direction:"vertical",size:"small",current:A,status:O?"error":"process",items:I})}),x&&l.jsx(cj,{open:w,onClose:P,sessionId:e,call:{toolCallId:x.key,toolName:x.toolName,parameters:x.parameters,streamingOutput:x.streamingOutput},metadata:x.metadata,initialTab:C,result:x.result})]})},tf=S.memo(fj);tf.displayName="ToolStepsCard";const{Text:Vc}=ot,hj=({content:e,workflowName:t,parameters:n,status:r="success",timestamp:s,onRetry:o,isLoading:a,errorMessage:i})=>{const{t:c}=qe(),{token:d}=st.useToken(),[f,p]=S.useState(!1),v=S.useMemo(()=>oo(e),[e]),g=S.useMemo(()=>typeof a=="boolean"?a:v.formattedText.trim().length===0,[v.formattedText,a]),w=S.useMemo(()=>qP(v.formattedText),[v.formattedText]),m=v.isJson||w,x=!m||f,k=S.useMemo(()=>HP(v.formattedText),[v.formattedText]),C=S.useMemo(()=>{if(n==null)return null;if(typeof n=="string")return oo(n);try{return{isJson:!0,formattedText:JSON.stringify(n,null,2),parsedJson:n}}catch(P){return console.error("[WorkflowResultCard] Failed to stringify parameters:",P),{isJson:!1,formattedText:String(n)}}},[n]),E=async()=>{try{const P=v.isJson?ys(v.parsedJson):v.formattedText;await kr(P)}catch(P){console.error("[WorkflowResultCard] Failed to copy content:",P)}},T=async()=>{if(C)try{const P=C.isJson?ys(C.parsedJson):C.formattedText;await kr(P)}catch(P){console.error("[WorkflowResultCard] Failed to copy parameters:",P)}};return l.jsx(Bt,{size:"small",variant:"outlined",style:{borderRadius:d.borderRadiusLG,borderColor:d.colorBorderSecondary,backgroundColor:d.colorBgContainer},styles:{body:{padding:d.paddingMD}},children:l.jsxs(ze,{direction:"vertical",style:{width:"100%"},size:d.marginSM,children:[l.jsxs(we,{align:"center",justify:"space-between",children:[l.jsxs(ze,{size:d.marginXS,align:"center",children:[l.jsx(Gw,{style:{color:d.colorWarning}}),l.jsx(Vc,{strong:!0,children:c("components.workflowResult.userWorkflow")}),l.jsx(Ye,{color:d.colorWarning,children:t}),l.jsx(Ye,{color:pv(r),children:r})]}),l.jsxs(ze,{size:"small",children:[l.jsx(dn,{title:c(f?"components.workflowResult.collapseResult":"components.workflowResult.expandResult"),children:m&&l.jsx(Ee,{type:"text",size:"small",icon:f?l.jsx(Jw,{}):l.jsx(Qw,{}),onClick:()=>p(P=>!P)})}),l.jsx(dn,{title:c("components.workflowResult.copyResult"),children:l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Cr,{}),onClick:E,"aria-label":c("components.workflowResult.copyContent")})}),o&&l.jsx(dn,{title:c("components.workflowResult.retryWorkflow"),children:l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Cd,{}),onClick:o,"aria-label":c("components.workflowResult.retryWorkflow")})})]})]}),s&&l.jsx(Vc,{type:"secondary",style:{fontSize:d.fontSizeSM},children:new Date(s).toLocaleString()}),l.jsx(vl,{style:{margin:`${d.marginXS}px 0`}}),i&&l.jsx(Jn,{type:"error",message:c("components.workflowResult.executionFailed"),description:i,showIcon:!0,style:{marginBottom:d.marginXS}}),l.jsx(we,{vertical:!0,style:{width:"100%"},children:g?l.jsx(no,{tip:c("components.workflowResult.waitingForResult")}):v.isJson?l.jsx(gl,{language:"json",style:ei,wrapLongLines:!0,customStyle:{margin:0,borderRadius:d.borderRadiusSM,backgroundColor:d.colorBgContainer,fontSize:d.fontSizeSM,maxHeight:x?"none":280,overflow:x?"auto":"hidden"},children:v.formattedText}):l.jsxs("pre",{style:{whiteSpace:"pre-wrap",wordBreak:"break-word",fontSize:d.fontSizeSM,maxHeight:x?"none":280,overflow:x?"visible":"hidden",marginBottom:0},children:[x?v.formattedText:k.preview,!x&&k.isTruncated&&`
204
204
  …`]})}),C&&l.jsxs(we,{vertical:!0,style:{width:"100%"},children:[l.jsx(vl,{style:{margin:`${d.marginXS}px 0`},children:l.jsxs(ze,{size:"small",children:[l.jsx(Vc,{strong:!0,children:c("common.parameters")}),l.jsx(dn,{title:c("components.workflowResult.copyParameters"),children:l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(Cr,{}),onClick:T,"aria-label":c("components.workflowResult.copyParameters")})})]})}),C.isJson?l.jsx(gl,{language:"json",style:ei,wrapLongLines:!0,customStyle:{margin:0,borderRadius:d.borderRadiusSM,backgroundColor:d.colorBgContainer,fontSize:d.fontSizeSM,maxHeight:220,overflow:"auto"},children:C.formattedText}):l.jsx("pre",{style:{whiteSpace:"pre-wrap",wordBreak:"break-word",fontSize:d.fontSizeSM,marginBottom:0},children:C.formattedText})]})]})})},Jv=S.memo(hj);Jv.displayName="WorkflowResultCard";const pj=e=>Array.isArray(e)?e.map(t=>String(t??"")):[],mj=({sessionId:e,question:t,options:n,allowCustom:r,toolCallId:s})=>JSON.stringify({sessionId:e??null,question:t??"",options:pj(n),allowCustom:r??!0,toolCallId:s??null}),{Text:Gc}=ot,gj=({sessionId:e,question:t,options:n,allowCustom:r,toolCallId:s,conclusionMarkdown:o,markdownComponents:a,markdownPlugins:i,rehypePlugins:c})=>{const{t:d}=qe(),[f,p]=S.useState(null),v=S.useMemo(()=>mj({sessionId:e,question:t,options:n,allowCustom:r,toolCallId:s}),[e,t,n,r,s]),g=f===v;return S.useEffect(()=>{if(typeof window>"u")return;const w=m=>{var C;const k=((C=m.detail)==null?void 0:C.sessionId)??null;!e||k!==e||p(v)};return window.addEventListener(Yu,w),()=>{window.removeEventListener(Yu,w)}},[e,v]),l.jsxs(ze,{direction:"vertical",size:"middle",style:{width:"100%"},children:[o?l.jsx(hr,{remarkPlugins:i,rehypePlugins:c,components:a,children:o}):null,l.jsxs("div",{children:[l.jsx(Gc,{strong:!0,children:d("components.questionDialog.questionLabel","Question")}),l.jsx("div",{style:{marginTop:8},children:l.jsx(hr,{remarkPlugins:i,rehypePlugins:c,components:a,children:t})})]}),g?l.jsx(Gc,{type:"secondary",children:d("components.questionDialog.responseSubmittedContinue","Response submitted. Continuing...")}):l.jsx(Gc,{type:"secondary",children:r?d("components.questionDialog.responseInInputHint","Use the options or input box below to respond."):d("components.questionDialog.responseByOptionHint","Please respond using the options below the input box.")})]})},{Text:Yn}=ot,yj=e=>{var o;if(!e)return{cleanText:e,hints:[]};const t=e.split(`
205
205
  `),n=[],r=[];for(const a of t){const i=a.trim(),c=i.match(/^\[User explicitly selected MCP tool:\s*(.+?)\s*\]$/);if(c){const f=c[1]??"",p=lo(f);n.push({type:"mcp",label:f,serverId:p==null?void 0:p.serverId,toolName:p==null?void 0:p.toolName});continue}const d=i.match(/^\[User explicitly selected skill:\s*(.+?)\s*\]$/);if(d){const f=d[1]??"",p=f.match(/\(ID:\s*([^)]+)\)\s*$/i),v=(o=p==null?void 0:p[1])==null?void 0:o.trim(),g=p?f.replace(/\(ID:\s*([^)]+)\)\s*$/i,"").trim():f;n.push({type:"skill",label:g||f,skillId:v});continue}r.push(a)}return{cleanText:r.join(`
206
- `).trimStart(),hints:n}},vj=({sessionId:e,message:t,messageText:n,isUserToolCall:r,formatUserToolCall:s,markdownComponents:o,markdownPlugins:a,rehypePlugins:i})=>{var w;const{t:c}=qe(),d=m=>(m??"").trim().toLowerCase()==="conclusion";if(xv(t)){const m=t.result.result??"",x=t.isError?m||c("components.toolResult.executionFailed"):void 0,k=!x&&m.trim().length===0;if(t.result.display_preference==="Hidden")return null;const C=(t.toolName??"").trim().toLowerCase(),E=C==="conclusion",T=FP(m),P=(C==="conclusion_with_options"||C==="exitplanmode"||C==="request_permissions"||NP(m))&&!t.isError&&T,A=C==="conclusion"?uv(m):null;return P&&T?l.jsx(gj,{sessionId:e,question:T.question,options:T.options,allowCustom:T.allow_custom,toolCallId:t.toolCallId,conclusionMarkdown:zP(T.conclusion),markdownComponents:o,markdownPlugins:a,rehypePlugins:i}):A?l.jsx(ze,{direction:"vertical",style:{width:"100%"},size:"small",children:l.jsx(hr,{remarkPlugins:a,rehypePlugins:i,components:o,children:A})}):l.jsx(Yv,{content:m,toolName:t.toolName,status:t.isError?"error":k?"warning":"success",timestamp:t.createdAt,defaultCollapsed:!E,isLoading:k,errorMessage:x})}if(rR(t)){const m=t.content??"",x=t.status==="error"?m||c("components.workflowResult.executionFailed"):void 0,k=!x&&m.trim().length===0;return l.jsx(Jv,{content:m,workflowName:t.workflowName,parameters:t.parameters,status:k?"warning":t.status??"success",timestamp:t.createdAt,isLoading:k,errorMessage:x})}if(nR(t)){const m=t.toolCalls.filter(x=>!d(x.toolName));return m.length===0?null:l.jsx(tf,{sessionId:e,toolCalls:m,metadata:t.metadata,defaultExpanded:!1})}if(t.isAuthError)return l.jsxs(ze,{direction:"vertical",style:{width:"100%"},size:"middle",children:[l.jsx(Jn,{message:c("chat.messageCard.authRequired"),description:l.jsx(hr,{remarkPlugins:a,rehypePlugins:i,components:o,children:n}),type:"error",showIcon:!0}),l.jsx(Ee,{type:"primary",icon:l.jsx(Nl,{}),onClick:()=>{window.location.hash="/settings"},children:c("chat.messageCard.goToSettings")})]});const{cleanText:f,hints:p}=t.role==="user"?yj(n):{cleanText:n,hints:[]},v=t.role==="assistant"&&"type"in t&&t.type==="text"&&"metadata"in t&&typeof((w=t.metadata)==null?void 0:w.reasoning)=="string"?t.metadata.reasoning:"",g=v.trim().length>0;return t.role==="assistant"&&!n&&!g?l.jsx(Yn,{italic:!0,children:c("chat.messageCard.assistantThinking")}):l.jsxs(ze,{direction:"vertical",style:{width:"100%"},size:"small",children:[g?l.jsx(ao,{size:"small",defaultActiveKey:["reasoning"],items:[{key:"reasoning",label:l.jsx(Yn,{strong:!0,children:c("chat.messageCard.reasoning")}),children:l.jsx(hr,{remarkPlugins:a,rehypePlugins:i,components:o,children:v})}]}):null,p.map((m,x)=>m.type==="mcp"?l.jsx(Jn,{type:"info",showIcon:!1,message:l.jsxs(ze,{wrap:!0,size:"small",children:[l.jsx(Ye,{color:"purple",children:"MCP"}),l.jsx(Yn,{strong:!0,children:c("chat.messageCard.selectedTool")}),m.serverId&&l.jsx(Yn,{type:"secondary",children:l.jsx(Yn,{code:!0,children:m.serverId})}),m.toolName&&l.jsx(Yn,{type:"secondary",children:l.jsx(Yn,{code:!0,children:m.toolName})})]}),style:{marginBottom:0}},`hint-mcp-${x}`):l.jsx(Jn,{type:"success",showIcon:!1,message:l.jsxs(ze,{wrap:!0,size:"small",children:[l.jsx(Ye,{color:"success",children:"Skill"}),l.jsx(Yn,{strong:!0,children:c("chat.messageCard.selected")}),m.label&&l.jsx(Yn,{children:m.label}),m.skillId&&l.jsx(Yn,{type:"secondary",children:l.jsx(Yn,{code:!0,children:m.skillId})})]}),style:{marginBottom:0}},`hint-skill-${x}`)),f?l.jsx(hr,{remarkPlugins:a,rehypePlugins:i,components:o,children:r?s(f):f}):null]})},bj=S.memo(vj),{Text:Jc}=ot,Sj=({role:e,formattedTimestamp:t,token:n})=>{const{t:r}=qe(),s=e==="user",o=e==="assistant",a=e==="system",i=r(s?"chat.view.roleUser":o?"chat.view.brandName":"chat.view.roleDefault"),c=s?r("chat.view.roleUser").slice(0,1):o?r("chat.view.brandName").slice(0,1):e.slice(0,1).toUpperCase();return l.jsxs(we,{align:"center",justify:"space-between",gap:n.marginXS,style:{marginBottom:n.marginXS},children:[l.jsxs(we,{align:"center",gap:10,children:[l.jsx("div",{style:{width:30,height:30,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:12,fontWeight:700,letterSpacing:"0.3px",background:s?"var(--lotus-avatar-user-bg)":o?"var(--lotus-avatar-assistant-bg)":"var(--lotus-avatar-system-bg)",color:"white",boxShadow:s?"var(--lotus-avatar-user-shadow)":o?"var(--lotus-avatar-assistant-shadow)":"var(--lotus-avatar-system-shadow)",border:"var(--lotus-avatar-border)"},children:c}),l.jsxs(we,{vertical:!0,gap:0,children:[l.jsx(Jc,{strong:!0,style:{fontSize:13,color:s?"var(--lotus-primary)":n.colorText,letterSpacing:"0.2px",lineHeight:1.1},children:i}),l.jsx(Jc,{type:"secondary",style:{fontSize:11,lineHeight:1.1},children:r(s?"chat.view.subTitleUser":o?"chat.view.roleAssistant":a?"chat.view.roleSystem":"chat.view.roleDefault")})]})]}),t&&l.jsx(Jc,{type:"secondary",style:{fontSize:11,whiteSpace:"nowrap",opacity:.92,padding:"4px 8px",borderRadius:999,background:"var(--lotus-timestamp-bg)",border:"1px solid var(--lotus-timestamp-border)"},children:t})]})},nf=e=>{if(e.includes("```json")){const t=e.indexOf("```json")+7,n=e.indexOf("```",t);if(n>t)return e.substring(t,n).trim()}else if(e.includes("{")){const t=e.indexOf("{"),n=e.lastIndexOf("}");if(n>t)return e.substring(t,n+1).trim()}return null},wj=e=>e==="text"||e==="plan"||e==="question"||e==="tool_call"||e==="tool_result",xj=(e,t)=>{if(t)return t;if("message_type"in e&&e.message_type){const n=e.message_type;if(wj(n))return n}if(e.role==="assistant"&&e.type==="text"){const n=typeof e.content=="string"?e.content:"";try{const r=nf(n);if(r){const s=JSON.parse(r);if(s.goal&&s.steps&&Array.isArray(s.steps))return"plan";if(s.type==="question"&&s.question)return"question"}}catch{return"text"}}return"text"},_j=(e,t)=>{if(t!=="plan"||e.role!=="assistant"||e.type!=="text")return null;const n=e.content??"";try{const r=nf(n);if(r){const s=JSON.parse(r);if(s.goal&&s.steps)return{goal:s.goal,steps:s.steps.map(o=>({step_number:o.step_number||o.stepNumber||0,action:o.action||"",reason:o.reason||o.rationale||"",tools_needed:o.tools_needed||o.tools||[],estimated_time:o.estimated_time||o.estimatedTime||""})),estimated_total_time:s.estimated_total_time||s.estimatedTotalTime||"",risks:s.risks||[],prerequisites:s.prerequisites||[]}}}catch(r){console.error("Failed to parse plan:",r)}return null},Cj=(e,t)=>{if(t!=="question"||e.role!=="assistant"||e.type!=="text")return null;const n=e.content??"";try{const r=nf(n);if(r){const s=JSON.parse(r);if(s.type==="question"&&s.question)return{type:"question",question:s.question,context:s.context||"",severity:s.severity||"minor",options:s.options||[],default:s.default,allow_custom:s.allow_custom||!1}}}catch(r){console.error("Failed to parse question:",r)}return null},Qv=e=>{if(e.role==="system")return typeof e.content=="string"?e.content:"";if(e.role==="user")return"type"in e&&e.type==="file_reference"?"":typeof e.content=="string"?e.content:"";if(e.role==="assistant"){if(e.type==="text")return typeof e.content=="string"?e.content:"";if(e.type==="tool_result")return(e.toolName??"").trim().toLowerCase()==="conclusion"?uv(e.result.result)??e.result.result:`Tool ${e.toolName} Result: ${e.result.result}`;if(e.type==="tool_call")return`Requesting to call ${e.toolCalls.map(t=>t.toolName).join(", ")}`;if(e.type==="workflow_result")return e.content}return""},kj=e=>{if(!e.startsWith("/"))return e;const t=e.split(" "),n=t[0].substring(1),r=t.slice(1).join(" ");if(n.startsWith("mcp__")){const o=n.slice(5),a=o.indexOf("__");if(a>0){const i=o.slice(0,a),c=o.slice(a+2);if(i&&c)return`🔌 MCP ${i}/${c}: ${r}`}}return`🔧 ${n.replace(/_/g," ").replace(/\b\w/g,o=>o.toUpperCase())}: ${r}`},Tj=1.4;function Pj(e,t){const n=e.getBoundingClientRect();if(!n.height)return[];const r=t.height/n.height,s=e.clientWidth-48,o=[];return e.querySelectorAll("[data-mermaid-loading] img").forEach(i=>{const c=i.naturalWidth,d=i.naturalHeight;if(!c||!d)return;const f=c/d,p=parseFloat(i.style.width)||c;if(f<=Tj||p<=s)return;const v=i.getBoundingClientRect(),g=Math.max(0,Math.floor((v.top-n.top)*r)),w=Math.min(t.height,Math.ceil((v.bottom-n.top)*r));w>g&&o.push({topPx:g,bottomPx:w,src:i.src,ratio:f})}),o.sort((i,c)=>i.topPx-c.topPx),o}function Wp(e,t,n,r,s,o){if(r-n<1)return;let a=n;for(;a<r;){const i=r-a;let c;if(i<=o.sliceHeightPx)c=i;else{const v=Mj(t,a,o.sliceHeightPx);c=Math.max(1,Math.min(v,i))}const d=document.createElement("canvas");d.width=t.width,d.height=c;const f=d.getContext("2d");if(!f)throw new Error("PDF render failed (no canvas context)");f.fillStyle="#ffffff",f.fillRect(0,0,d.width,d.height),f.drawImage(t,0,a,t.width,c,0,0,t.width,c);const p=d.toDataURL("image/jpeg",.92);s(),e.addImage(p,"JPEG",o.marginPt,o.marginPt,o.contentWidthPt,c/o.pxPerPt),a+=c}}function Ej(e,t,n,r){r();const s=e.internal.pageSize.getWidth()-n*2,o=e.internal.pageSize.getHeight()-n*2;let a=s,i=s/t.ratio;i>o&&(i=o,a=o*t.ratio);const c=n+(s-a)/2,d=n+(o-i)/2;e.addImage(t.src,"PNG",c,d,a,i)}function Mj(e,t,n){const r=e.height-t;if(r<=n)return r;const s=t+n,o=Math.max(1,Math.floor(n*.72)),a=Math.max(8,Math.floor(n*.12)),i=Math.max(t+o,s-a),c=Math.min(e.height-1,s+a),d=Rj(e,s,i,c);return d===null||d<=t?n:d-t}function Rj(e,t,n,r){if(n>r||e.width<=0)return null;try{const s=e.getContext("2d",{willReadFrequently:!0});if(!s||typeof s.getImageData!="function")return null;const o=r-n+1,a=s.getImageData(0,n,e.width,o).data,i=e.width*4,c=Math.max(1,Math.floor(e.width/320)),d=245,f=16,p=.03;let v=null,g=Number.POSITIVE_INFINITY,w=Number.POSITIVE_INFINITY;for(let m=0;m<o;m+=1){let x=0,k=0;const C=m*i;for(let O=0;O<e.width;O+=c){const $=C+O*4,U=a[$+3];if(k+=1,U<=f)continue;const J=a[$],ee=a[$+1],I=a[$+2];(J<d||ee<d||I<d)&&(x+=1)}if(k===0)continue;const E=x/k,T=n+m,P=Math.abs(T-t);(E<g||E===g&&P<w)&&(g=E,w=P,v=T)}return v===null||g>p?null:v}catch{return null}}const Up=e=>e.map(t=>({name:t.name,extensions:[...t.extensions]})),qp=e=>e.trim().slice(0,64).replace(/[^a-zA-Z0-9._-]+/g,"-").replace(/-+/g,"-")||"message",Aj={},jj='[data-mermaid-loading="true"]';class Zv{static async exportMessageText(t){const{format:n,content:r,sessionId:s=null,messageId:o=null,filenamePrefix:a}=t,i=a||["chat-message",s?qp(s.slice(0,8)):null,o?qp(o.slice(0,8)):null].filter(Boolean).join("-"),c=n==="markdown"?ur.generateTimestampedFilename(i,"md"):ur.generateTimestampedFilename(i,"pdf");if(n==="markdown"){const d=await ur.saveTextFile(r,Up(ur.FILTERS.MARKDOWN),c);return d.success?{success:!0,filename:d.filename}:{success:!1,error:d.error}}try{const d=await this.generatePdfFromText(r),f=await ur.saveBinaryFile(d,Up(ur.FILTERS.PDF),c);return f.success?{success:!0,filename:f.filename}:{success:!1,error:f.error}}catch(d){return{success:!1,error:d instanceof Error?d.message:kt.t("chat.messageActions.exportFailed")}}}static async generatePdfFromText(t){if(typeof document>"u")throw new Error(kt.t("chat.messageActions.pdfUnavailable"));const n=(await Lt(async()=>{const{default:g}=await import("./vendor-pdf-CAvJLb8d.js").then(w=>w.h);return{default:g}},__vite__mapDeps([15,4,3,2]),import.meta.url)).default,{jsPDF:r}=await Lt(async()=>{const{jsPDF:g}=await import("./vendor-pdf-CAvJLb8d.js").then(w=>w.j);return{jsPDF:g}},__vite__mapDeps([15,4,3,2]),import.meta.url),{createRoot:s}=await Lt(async()=>{const{createRoot:g}=await import("./main-KJE6TlvG.js").then(w=>w.c);return{createRoot:g}},__vite__mapDeps([5,4,3,2,1,6]),import.meta.url),{flushSync:o}=await Lt(async()=>{const{flushSync:g}=await import("./vendor-antd-Ce-qhZOr.js").then(w=>w.R);return{flushSync:g}},__vite__mapDeps([3,2]),import.meta.url),a=Xv(Aj,{mermaidRenderMode:"static"}),i=document.createElement("div");i.style.position="fixed",i.style.left="0",i.style.top="0",i.style.right="0",i.style.bottom="0",i.style.zIndex="2147483647",i.style.background="rgba(0,0,0,0.15)",i.style.display="flex",i.style.alignItems="center",i.style.justifyContent="center",i.style.fontFamily="system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif",i.style.fontSize="14px",i.style.color="#111";const c=document.createElement("div");c.style.background="#fff",c.style.border="1px solid rgba(0,0,0,0.12)",c.style.borderRadius="10px",c.style.padding="12px 14px",c.style.boxShadow="0 8px 24px rgba(0,0,0,0.12)",c.textContent=kt.t("chat.messageActions.exportingPdf"),i.appendChild(c);const d=document.createElement("div");d.style.position="fixed",d.style.left="0",d.style.top="0",d.style.zIndex="2147483646",d.style.pointerEvents="none",d.style.width="794px",d.style.background="#fff",d.style.color="#111",d.style.padding="24px",d.style.boxSizing="border-box",d.style.fontFamily="system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif",d.style.fontSize="14px",d.style.lineHeight="1.35";const f=document.createElement("style");f.textContent=`
206
+ `).trimStart(),hints:n}},vj=({sessionId:e,message:t,messageText:n,isUserToolCall:r,formatUserToolCall:s,markdownComponents:o,markdownPlugins:a,rehypePlugins:i})=>{var w;const{t:c}=qe(),d=m=>(m??"").trim().toLowerCase()==="conclusion";if(xv(t)){const m=t.result.result??"",x=t.isError?m||c("components.toolResult.executionFailed"):void 0,k=!x&&m.trim().length===0;if(t.result.display_preference==="Hidden")return null;const C=(t.toolName??"").trim().toLowerCase(),E=C==="conclusion",T=FP(m),P=(C==="conclusion_with_options"||C==="exitplanmode"||C==="request_permissions"||NP(m))&&!t.isError&&T,A=C==="conclusion"?uv(m):null;return P&&T?l.jsx(gj,{sessionId:e,question:T.question,options:T.options,allowCustom:T.allow_custom,toolCallId:t.toolCallId,conclusionMarkdown:zP(T.conclusion),markdownComponents:o,markdownPlugins:a,rehypePlugins:i}):A?l.jsx(ze,{direction:"vertical",style:{width:"100%"},size:"small",children:l.jsx(hr,{remarkPlugins:a,rehypePlugins:i,components:o,children:A})}):l.jsx(Yv,{content:m,toolName:t.toolName,status:t.isError?"error":k?"warning":"success",timestamp:t.createdAt,defaultCollapsed:!E,isLoading:k,errorMessage:x})}if(rR(t)){const m=t.content??"",x=t.status==="error"?m||c("components.workflowResult.executionFailed"):void 0,k=!x&&m.trim().length===0;return l.jsx(Jv,{content:m,workflowName:t.workflowName,parameters:t.parameters,status:k?"warning":t.status??"success",timestamp:t.createdAt,isLoading:k,errorMessage:x})}if(nR(t)){const m=t.toolCalls.filter(x=>!d(x.toolName));return m.length===0?null:l.jsx(tf,{sessionId:e,toolCalls:m,metadata:t.metadata,defaultExpanded:!1})}if(t.isAuthError)return l.jsxs(ze,{direction:"vertical",style:{width:"100%"},size:"middle",children:[l.jsx(Jn,{message:c("chat.messageCard.authRequired"),description:l.jsx(hr,{remarkPlugins:a,rehypePlugins:i,components:o,children:n}),type:"error",showIcon:!0}),l.jsx(Ee,{type:"primary",icon:l.jsx(Nl,{}),onClick:()=>{window.location.hash="/settings"},children:c("chat.messageCard.goToSettings")})]});const{cleanText:f,hints:p}=t.role==="user"?yj(n):{cleanText:n,hints:[]},v=t.role==="assistant"&&"type"in t&&t.type==="text"&&"metadata"in t&&typeof((w=t.metadata)==null?void 0:w.reasoning)=="string"?t.metadata.reasoning:"",g=v.trim().length>0;return t.role==="assistant"&&!n&&!g?l.jsx(Yn,{italic:!0,children:c("chat.messageCard.assistantThinking")}):l.jsxs(ze,{direction:"vertical",style:{width:"100%"},size:"small",children:[g?l.jsx(ao,{size:"small",defaultActiveKey:["reasoning"],items:[{key:"reasoning",label:l.jsx(Yn,{strong:!0,children:c("chat.messageCard.reasoning")}),children:l.jsx(hr,{remarkPlugins:a,rehypePlugins:i,components:o,children:v})}]}):null,p.map((m,x)=>m.type==="mcp"?l.jsx(Jn,{type:"info",showIcon:!1,message:l.jsxs(ze,{wrap:!0,size:"small",children:[l.jsx(Ye,{color:"purple",children:"MCP"}),l.jsx(Yn,{strong:!0,children:c("chat.messageCard.selectedTool")}),m.serverId&&l.jsx(Yn,{type:"secondary",children:l.jsx(Yn,{code:!0,children:m.serverId})}),m.toolName&&l.jsx(Yn,{type:"secondary",children:l.jsx(Yn,{code:!0,children:m.toolName})})]}),style:{marginBottom:0}},`hint-mcp-${x}`):l.jsx(Jn,{type:"success",showIcon:!1,message:l.jsxs(ze,{wrap:!0,size:"small",children:[l.jsx(Ye,{color:"success",children:"Skill"}),l.jsx(Yn,{strong:!0,children:c("chat.messageCard.selected")}),m.label&&l.jsx(Yn,{children:m.label}),m.skillId&&l.jsx(Yn,{type:"secondary",children:l.jsx(Yn,{code:!0,children:m.skillId})})]}),style:{marginBottom:0}},`hint-skill-${x}`)),f?l.jsx(hr,{remarkPlugins:a,rehypePlugins:i,components:o,children:r?s(f):f}):null]})},bj=S.memo(vj),{Text:Jc}=ot,Sj=({role:e,formattedTimestamp:t,token:n})=>{const{t:r}=qe(),s=e==="user",o=e==="assistant",a=e==="system",i=r(s?"chat.view.roleUser":o?"chat.view.brandName":"chat.view.roleDefault"),c=s?r("chat.view.roleUser").slice(0,1):o?r("chat.view.brandName").slice(0,1):e.slice(0,1).toUpperCase();return l.jsxs(we,{align:"center",justify:"space-between",gap:n.marginXS,style:{marginBottom:n.marginXS},children:[l.jsxs(we,{align:"center",gap:10,children:[l.jsx("div",{style:{width:30,height:30,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",fontSize:12,fontWeight:700,letterSpacing:"0.3px",background:s?"var(--lotus-avatar-user-bg)":o?"var(--lotus-avatar-assistant-bg)":"var(--lotus-avatar-system-bg)",color:"white",boxShadow:s?"var(--lotus-avatar-user-shadow)":o?"var(--lotus-avatar-assistant-shadow)":"var(--lotus-avatar-system-shadow)",border:"var(--lotus-avatar-border)"},children:c}),l.jsxs(we,{vertical:!0,gap:0,children:[l.jsx(Jc,{strong:!0,style:{fontSize:13,color:s?"var(--lotus-primary)":n.colorText,letterSpacing:"0.2px",lineHeight:1.1},children:i}),l.jsx(Jc,{type:"secondary",style:{fontSize:11,lineHeight:1.1},children:r(s?"chat.view.subTitleUser":o?"chat.view.roleAssistant":a?"chat.view.roleSystem":"chat.view.roleDefault")})]})]}),t&&l.jsx(Jc,{type:"secondary",style:{fontSize:11,whiteSpace:"nowrap",opacity:.92,padding:"4px 8px",borderRadius:999,background:"var(--lotus-timestamp-bg)",border:"1px solid var(--lotus-timestamp-border)"},children:t})]})},nf=e=>{if(e.includes("```json")){const t=e.indexOf("```json")+7,n=e.indexOf("```",t);if(n>t)return e.substring(t,n).trim()}else if(e.includes("{")){const t=e.indexOf("{"),n=e.lastIndexOf("}");if(n>t)return e.substring(t,n+1).trim()}return null},wj=e=>e==="text"||e==="plan"||e==="question"||e==="tool_call"||e==="tool_result",xj=(e,t)=>{if(t)return t;if("message_type"in e&&e.message_type){const n=e.message_type;if(wj(n))return n}if(e.role==="assistant"&&e.type==="text"){const n=typeof e.content=="string"?e.content:"";try{const r=nf(n);if(r){const s=JSON.parse(r);if(s.goal&&s.steps&&Array.isArray(s.steps))return"plan";if(s.type==="question"&&s.question)return"question"}}catch{return"text"}}return"text"},_j=(e,t)=>{if(t!=="plan"||e.role!=="assistant"||e.type!=="text")return null;const n=e.content??"";try{const r=nf(n);if(r){const s=JSON.parse(r);if(s.goal&&s.steps)return{goal:s.goal,steps:s.steps.map(o=>({step_number:o.step_number||o.stepNumber||0,action:o.action||"",reason:o.reason||o.rationale||"",tools_needed:o.tools_needed||o.tools||[],estimated_time:o.estimated_time||o.estimatedTime||""})),estimated_total_time:s.estimated_total_time||s.estimatedTotalTime||"",risks:s.risks||[],prerequisites:s.prerequisites||[]}}}catch(r){console.error("Failed to parse plan:",r)}return null},Cj=(e,t)=>{if(t!=="question"||e.role!=="assistant"||e.type!=="text")return null;const n=e.content??"";try{const r=nf(n);if(r){const s=JSON.parse(r);if(s.type==="question"&&s.question)return{type:"question",question:s.question,context:s.context||"",severity:s.severity||"minor",options:s.options||[],default:s.default,allow_custom:s.allow_custom||!1}}}catch(r){console.error("Failed to parse question:",r)}return null},Qv=e=>{if(e.role==="system")return typeof e.content=="string"?e.content:"";if(e.role==="user")return"type"in e&&e.type==="file_reference"?"":typeof e.content=="string"?e.content:"";if(e.role==="assistant"){if(e.type==="text")return typeof e.content=="string"?e.content:"";if(e.type==="tool_result")return(e.toolName??"").trim().toLowerCase()==="conclusion"?uv(e.result.result)??e.result.result:`Tool ${e.toolName} Result: ${e.result.result}`;if(e.type==="tool_call")return`Requesting to call ${e.toolCalls.map(t=>t.toolName).join(", ")}`;if(e.type==="workflow_result")return e.content}return""},kj=e=>{if(!e.startsWith("/"))return e;const t=e.split(" "),n=t[0].substring(1),r=t.slice(1).join(" ");if(n.startsWith("mcp__")){const o=n.slice(5),a=o.indexOf("__");if(a>0){const i=o.slice(0,a),c=o.slice(a+2);if(i&&c)return`🔌 MCP ${i}/${c}: ${r}`}}return`🔧 ${n.replace(/_/g," ").replace(/\b\w/g,o=>o.toUpperCase())}: ${r}`},Tj=1.4;function Pj(e,t){const n=e.getBoundingClientRect();if(!n.height)return[];const r=t.height/n.height,s=e.clientWidth-48,o=[];return e.querySelectorAll("[data-mermaid-loading] img").forEach(i=>{const c=i.naturalWidth,d=i.naturalHeight;if(!c||!d)return;const f=c/d,p=parseFloat(i.style.width)||c;if(f<=Tj||p<=s)return;const v=i.getBoundingClientRect(),g=Math.max(0,Math.floor((v.top-n.top)*r)),w=Math.min(t.height,Math.ceil((v.bottom-n.top)*r));w>g&&o.push({topPx:g,bottomPx:w,src:i.src,ratio:f})}),o.sort((i,c)=>i.topPx-c.topPx),o}function Wp(e,t,n,r,s,o){if(r-n<1)return;let a=n;for(;a<r;){const i=r-a;let c;if(i<=o.sliceHeightPx)c=i;else{const v=Mj(t,a,o.sliceHeightPx);c=Math.max(1,Math.min(v,i))}const d=document.createElement("canvas");d.width=t.width,d.height=c;const f=d.getContext("2d");if(!f)throw new Error("PDF render failed (no canvas context)");f.fillStyle="#ffffff",f.fillRect(0,0,d.width,d.height),f.drawImage(t,0,a,t.width,c,0,0,t.width,c);const p=d.toDataURL("image/jpeg",.92);s(),e.addImage(p,"JPEG",o.marginPt,o.marginPt,o.contentWidthPt,c/o.pxPerPt),a+=c}}function Ej(e,t,n,r){r();const s=e.internal.pageSize.getWidth()-n*2,o=e.internal.pageSize.getHeight()-n*2;let a=s,i=s/t.ratio;i>o&&(i=o,a=o*t.ratio);const c=n+(s-a)/2,d=n+(o-i)/2;e.addImage(t.src,"PNG",c,d,a,i)}function Mj(e,t,n){const r=e.height-t;if(r<=n)return r;const s=t+n,o=Math.max(1,Math.floor(n*.72)),a=Math.max(8,Math.floor(n*.12)),i=Math.max(t+o,s-a),c=Math.min(e.height-1,s+a),d=Rj(e,s,i,c);return d===null||d<=t?n:d-t}function Rj(e,t,n,r){if(n>r||e.width<=0)return null;try{const s=e.getContext("2d",{willReadFrequently:!0});if(!s||typeof s.getImageData!="function")return null;const o=r-n+1,a=s.getImageData(0,n,e.width,o).data,i=e.width*4,c=Math.max(1,Math.floor(e.width/320)),d=245,f=16,p=.03;let v=null,g=Number.POSITIVE_INFINITY,w=Number.POSITIVE_INFINITY;for(let m=0;m<o;m+=1){let x=0,k=0;const C=m*i;for(let O=0;O<e.width;O+=c){const $=C+O*4,U=a[$+3];if(k+=1,U<=f)continue;const J=a[$],ee=a[$+1],I=a[$+2];(J<d||ee<d||I<d)&&(x+=1)}if(k===0)continue;const E=x/k,T=n+m,P=Math.abs(T-t);(E<g||E===g&&P<w)&&(g=E,w=P,v=T)}return v===null||g>p?null:v}catch{return null}}const Up=e=>e.map(t=>({name:t.name,extensions:[...t.extensions]})),qp=e=>e.trim().slice(0,64).replace(/[^a-zA-Z0-9._-]+/g,"-").replace(/-+/g,"-")||"message",Aj={},jj='[data-mermaid-loading="true"]';class Zv{static async exportMessageText(t){const{format:n,content:r,sessionId:s=null,messageId:o=null,filenamePrefix:a}=t,i=a||["chat-message",s?qp(s.slice(0,8)):null,o?qp(o.slice(0,8)):null].filter(Boolean).join("-"),c=n==="markdown"?ur.generateTimestampedFilename(i,"md"):ur.generateTimestampedFilename(i,"pdf");if(n==="markdown"){const d=await ur.saveTextFile(r,Up(ur.FILTERS.MARKDOWN),c);return d.success?{success:!0,filename:d.filename}:{success:!1,error:d.error}}try{const d=await this.generatePdfFromText(r),f=await ur.saveBinaryFile(d,Up(ur.FILTERS.PDF),c);return f.success?{success:!0,filename:f.filename}:{success:!1,error:f.error}}catch(d){return{success:!1,error:d instanceof Error?d.message:kt.t("chat.messageActions.exportFailed")}}}static async generatePdfFromText(t){if(typeof document>"u")throw new Error(kt.t("chat.messageActions.pdfUnavailable"));const n=(await Lt(async()=>{const{default:g}=await import("./vendor-pdf-Y2ffvHQu.js").then(w=>w.h);return{default:g}},__vite__mapDeps([15,4,3,2]),import.meta.url)).default,{jsPDF:r}=await Lt(async()=>{const{jsPDF:g}=await import("./vendor-pdf-Y2ffvHQu.js").then(w=>w.j);return{jsPDF:g}},__vite__mapDeps([15,4,3,2]),import.meta.url),{createRoot:s}=await Lt(async()=>{const{createRoot:g}=await import("./main-ChXolejH.js").then(w=>w.c);return{createRoot:g}},__vite__mapDeps([5,4,3,2,1,6]),import.meta.url),{flushSync:o}=await Lt(async()=>{const{flushSync:g}=await import("./vendor-antd-Ce-qhZOr.js").then(w=>w.R);return{flushSync:g}},__vite__mapDeps([3,2]),import.meta.url),a=Xv(Aj,{mermaidRenderMode:"static"}),i=document.createElement("div");i.style.position="fixed",i.style.left="0",i.style.top="0",i.style.right="0",i.style.bottom="0",i.style.zIndex="2147483647",i.style.background="rgba(0,0,0,0.15)",i.style.display="flex",i.style.alignItems="center",i.style.justifyContent="center",i.style.fontFamily="system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif",i.style.fontSize="14px",i.style.color="#111";const c=document.createElement("div");c.style.background="#fff",c.style.border="1px solid rgba(0,0,0,0.12)",c.style.borderRadius="10px",c.style.padding="12px 14px",c.style.boxShadow="0 8px 24px rgba(0,0,0,0.12)",c.textContent=kt.t("chat.messageActions.exportingPdf"),i.appendChild(c);const d=document.createElement("div");d.style.position="fixed",d.style.left="0",d.style.top="0",d.style.zIndex="2147483646",d.style.pointerEvents="none",d.style.width="794px",d.style.background="#fff",d.style.color="#111",d.style.padding="24px",d.style.boxSizing="border-box",d.style.fontFamily="system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif",d.style.fontSize="14px",d.style.lineHeight="1.35";const f=document.createElement("style");f.textContent=`
207
207
  .md-export { color: #111; }
208
208
  .md-export h1 { font-size: 24px; margin: 0 0 16px; }
209
209
  .md-export h2 { font-size: 18px; margin: 18px 0 12px; }
@@ -237,11 +237,11 @@ ${s}
237
237
  \`\`\``));return a?i:e.match(o)?e.replace(o,d=>a?d:(a=!0,`\`\`\`mermaid
238
238
  ${s}
239
239
  \`\`\``)):null},vm="_text",Dl=e=>!!(e&&e.role==="assistant"&&"type"in e&&e.type==="text"),bm=(e,t,n)=>{var s;const r=typeof((s=t.metadata)==null?void 0:s.backendMessageId)=="string"?t.metadata.backendMessageId.trim():"";if(r)return r;if(e.endsWith(vm)){const o=e.slice(0,-vm.length);if(o&&n.some(a=>a.id===o))return o}return e},H1=(e,t)=>{const n=t.trim();if(!n)return!1;const r=e.matchAll(/```mermaid\s*([\s\S]*?)```/gi);for(const s of r)if((s[1]||"").trim()===n)return!0;return!1},X1=e=>(e instanceof Error?e.message:String(e)).toLowerCase().includes("message not found"),Y1=(e,t,n,r)=>{const s=e.find(o=>o.id===t);return Dl(s)?s:e.find(o=>Dl(o)&&(o.content===n||H1(o.content,r)))},K1=(e,t)=>{const n=(t??"").trim(),r=["Original Mermaid code:","```mermaid",e.trim(),"```"];return n&&r.push("","Mermaid parser/render error:",n),r.push("","Please fix the Mermaid syntax while preserving the original meaning and labels."),r.join(`
240
- `)},V1=async(e,t,n)=>{var i,c,d;const r=t==null?void 0:t.trim();if(!r)throw new Error("No model configured. Please select a default model in Provider Settings.");const a=((d=(c=(i=(await U1().chat.completions.create({model:r,messages:[{role:"system",content:"You fix Mermaid diagrams using the parser/render error context. Return only corrected Mermaid code without markdown fences or extra text."},{role:"user",content:K1(e,n)}],temperature:0})).choices)==null?void 0:i[0])==null?void 0:c.message)==null?void 0:d.content)??"";return _S(a)},G1=(e,t)=>{const n=VT(),r=GT(),s=(r==null?void 0:r.model)??n;return S.useCallback(async(o,a)=>{const i=Z.getState(),c=t??i.currentSessionId,d=i.chats.find(C=>C.id===c);if(!c||!d)throw new Error("No active chat available");const f=d.messages.find(C=>C.id===e);if(!Dl(f))throw new Error("Mermaid fix is only available for assistant text messages");const p=await V1(o,s,a);if(!p)throw new Error("AI did not return a Mermaid fix");const v=q1(f.content,o,p);if(!v)throw new Error("Unable to locate Mermaid block to update");let g=bm(e,f,d.messages);try{await Vs.patchSessionMessage(c,g,{content:v})}catch(C){if(!X1(C))throw C;await i.loadChatHistory(c,{mode:"replace",retries:2,retryDelayMs:150,waitForAssistant:!0});const T=Z.getState().chats.find(A=>A.id===c);if(!T)throw C;const P=Y1(T.messages,e,f.content,o);if(!P)throw C;g=bm(P.id,P,T.messages),await Vs.patchSessionMessage(c,g,{content:v})}const w=Z.getState(),m=w.chats.find(C=>C.id===c);if(!m)throw new Error("No active chat available");const x=new Set([e,g]),k=m.messages.map(C=>!x.has(C.id)||!Dl(C)?C:{...C,content:v});w.updateSession(c,{messages:k})},[e,t,s])},J1=e=>e.xs?"100%":e.sm?"95%":"800px",Q1=[{key:"shorter",labelKey:"feedback.retry.shorter",fallbackLabel:"Shorter",color:"blue",prefix:"Please give a shorter, more concise answer:"},{key:"deeper",labelKey:"feedback.retry.deeper",fallbackLabel:"Deeper",color:"purple",prefix:"Please provide a more detailed, in-depth answer:"},{key:"actionable",labelKey:"feedback.retry.actionable",fallbackLabel:"More actionable",color:"green",prefix:"Please make your answer more actionable with specific steps:"}],Z1=({messageId:e,isVisible:t,onRetryWithVariation:n})=>{const{t:r}=qe(),[s,o]=S.useState(null),[a,i]=S.useState(!1),c=S.useCallback(()=>{o(g=>g==="like"?null:"like"),i(!1)},[]),d=S.useCallback(()=>{o(g=>{const w=g==="dislike"?null:"dislike";return i(w==="dislike"),w})},[]),f=S.useCallback(g=>{n&&n(g.prefix)},[n]),v=["lotus-msg-feedback",t?"is-visible":"",s!==null?"has-rating":""].filter(Boolean).join(" ");return l.jsxs("div",{className:v,"data-message-id":e,children:[l.jsx(dn,{title:r("feedback.helpful","Helpful"),children:l.jsx("button",{type:"button",className:`lotus-msg-feedback-btn ${s==="like"?"is-liked":""}`,onClick:c,"aria-label":r("feedback.helpful","Helpful"),children:s==="like"?l.jsx(tx,{}):l.jsx(nx,{})})}),l.jsx(dn,{title:r("feedback.notHelpful","Not helpful"),children:l.jsx("button",{type:"button",className:`lotus-msg-feedback-btn ${s==="dislike"?"is-disliked":""}`,onClick:d,"aria-label":r("feedback.notHelpful","Not helpful"),children:s==="dislike"?l.jsx(rx,{}):l.jsx(sx,{})})}),a&&n&&l.jsxs(l.Fragment,{children:[l.jsx("span",{className:"lotus-msg-feedback-sep"}),l.jsx("span",{className:"lotus-msg-feedback-retry",children:Q1.map(g=>l.jsx(Ye,{color:g.color,bordered:!1,className:"lotus-msg-feedback-retry-tag",onClick:()=>f(g),children:r(g.labelKey,g.fallbackLabel)},g.key))})]})]})},{useToken:eI}=st,{useBreakpoint:tI}=zl,nI="chat-send-message",rI=({sessionId:e,message:t,onDelete:n,messageType:r})=>{const{role:s,id:o}=t,{token:a}=eI(),i=typeof document<"u"&&document.body.getAttribute("data-vdi-safe")==="true",{t:c}=qe(),{message:d}=Tn.useApp(),f=tI(),p=Z(le=>le.updateSession),v=Z(le=>le.loadChatHistory),g=Z(le=>le.refreshChats),w=S.useRef(null),[m,x]=S.useState(!1),k=Z(si(e)),C=S.useCallback(le=>typeof window>"u"?Promise.reject(new Error("window is unavailable")):new Promise((de,pe)=>{const Ae={content:le,sessionId:e,handled:!1,resolve:de,reject:pe};window.dispatchEvent(new CustomEvent(nI,{detail:Ae})),Ae.handled||pe(new Error("No chat message dispatcher available"))}),[e]),E=S.useMemo(()=>{if(!t.createdAt)return null;const le=new Date(t.createdAt);if(Number.isNaN(le.getTime()))return null;try{return YM(le,"MMM d, yyyy HH:mm")}catch{return le.toLocaleString()}},[t.createdAt]),T=S.useMemo(()=>xj(t,r),[t,r]),P=S.useMemo(()=>_j(t,T),[t,T]),A=S.useMemo(()=>Cj(t,T),[t,T]),O=S.useMemo(()=>Qv(t),[t]),$=G1(o,e),U=S.useCallback(async le=>{var de;if(!e||!o){d.warning(c("chat.messageActions.cannotRestore"));return}try{const pe=await Vs.restoreSessionState(e,{target_message_id:o,restore_files:le});await v(e,{mode:"replace"}),await g();const Ae=((de=pe.file_errors)==null?void 0:de.length)??0;if(Ae>0){d.warning(c("chat.messageActions.restorePartial",{count:Ae}));return}le?d.success(c("chat.messageActions.restoreFilesSuccess",{count:pe.messages_removed})):d.success(c("chat.messageActions.restoreSuccess",{count:pe.messages_removed}))}catch(pe){const Ae=pe instanceof Error?pe.message:c("chat.messageActions.restoreFailed");d.error(Ae)}},[d,e,v,o,g,c]),J=S.useCallback(()=>{U(!1)},[U]),ee=S.useCallback(()=>{U(!0)},[U]),{contextMenuItems:I,handleMouseUp:Y,copyToClipboard:z,referenceMessage:D}=Ij({messageText:O,messageId:o,currentSessionId:e,onDelete:n,onRestoreChat:J,onRestoreFilesAndChat:ee,cardRef:w}),ie=S.useMemo(()=>s==="user"&&O.startsWith("/"),[s,O]),Q=S.useMemo(()=>Xv(void 0,{onFixMermaid:$}),[$]),ue=S.useMemo(()=>[Sd,wd],[]),me=S.useMemo(()=>[bd],[]),V=S.useMemo(()=>[eR(()=>z(O),c("chat.actions.copyMessage")),tR(D,c("chat.actions.referenceMessage"))],[O,z,D,c]),{handleExecutePlan:ae,handleRefinePlan:ve,handleQuestionAnswer:re}=Oj({currentSessionId:e,updateSession:p,sendMessage:C});return T==="plan"&&P&&s==="assistant"?l.jsx(_v,{plan:P,contextId:e||"",onExecute:ae,onRefine:ve,timestamp:E??void 0}):T==="question"&&A&&s==="assistant"?l.jsx(Cv,{question:A,contextId:e||"",onAnswer:re,disabled:k||!1,timestamp:E??void 0}):oR(t)?l.jsx(hR,{taskList:t.taskList}):sR(t)?(ke("[MessageCard]","[MessageCard] Rendering FileReferenceCard for message:",t.id,"paths:",t.paths),l.jsx(we,{justify:"flex-end",style:{width:"100%"},children:l.jsx(kv,{paths:t.paths,displayText:t.displayText,timestamp:E??void 0})})):l.jsxs(we,{vertical:!0,onContextMenu:le=>Y(le),style:{width:"100%"},children:[l.jsx(Zs,{menu:{items:I},trigger:["contextMenu"],children:l.jsx(Bt,{"data-testid":s==="assistant"?"assistant-message":"user-message",id:o?`message-${o}`:void 0,ref:w,style:{width:"100%",minWidth:"100%",maxWidth:J1(f),margin:"0 auto",background:s==="user"?"var(--lotus-message-user-bg)":s==="assistant"?"var(--lotus-message-assistant-bg)":a.colorBgContainer,backdropFilter:i?"none":"blur(14px)",WebkitBackdropFilter:i?"none":"blur(14px)",border:s==="user"?"1px solid var(--lotus-message-user-border)":"1px solid var(--lotus-glass-border-subtle)",borderRadius:a.borderRadiusLG,boxShadow:m?"var(--lotus-card-hover-shadow)":"var(--lotus-shadow-soft)",position:"relative",wordWrap:"break-word",overflowWrap:"break-word",transition:"all 0.26s cubic-bezier(0.16, 1, 0.3, 1)",transform:m?"translateY(-2px) scale(1.002)":"none",overflow:"hidden"},styles:{body:{padding:a.paddingMD}},onMouseEnter:()=>x(!0),onMouseLeave:()=>x(!1),children:l.jsxs(ze,{direction:"vertical",size:a.marginXS,style:{width:"100%",maxWidth:"100%"},children:[l.jsx(Sj,{role:s,formattedTimestamp:E,token:a}),t.role==="user"&&t.images&&l.jsx(GM,{images:t.images}),l.jsx(we,{vertical:!0,style:{width:"100%",maxWidth:"100%"},children:l.jsx(bj,{sessionId:e,message:t,messageText:O,isUserToolCall:ie,formatUserToolCall:kj,markdownComponents:Q,markdownPlugins:ue,rehypePlugins:me})}),l.jsx(ZM,{isVisible:m,position:{bottom:a.paddingXS,right:a.paddingXS},buttons:V})]})})}),s==="assistant"&&T==="text"&&o&&l.jsx(Z1,{messageId:o,isVisible:m})]})},CS=S.memo(rI,(e,t)=>e.message===t.message&&e.messageType===t.messageType&&e.onDelete===t.onDelete&&e.sessionId===t.sessionId);CS.displayName="MessageCard";const sI=({key:e,atomFamily:t,store:n,emptyState:r})=>{const s=S.useMemo(()=>e?t(e):null,[t,e]),[o,a]=S.useState(()=>Bu(n,t,e,r));return S.useEffect(()=>{if(a(Bu(n,t,e,r)),!s||!e)return;let i=null,c=n.get(s);const d=n.sub(s,()=>{c=n.get(s),i===null&&(i=requestAnimationFrame(()=>{a(c),i=null}))});return()=>{d(),i!==null&&cancelAnimationFrame(i)}},[t,r,e,s,n]),o},oI=e=>{const t=Bn(e);return sI({key:t,atomFamily:Xl,store:Hl,emptyState:Gy})},{Text:Ua}=ot,{useToken:aI}=st,La=8,lu=4,iI=new Set(["mermaid","graph","flowchart","sequencediagram","classdiagram","statediagram","statediagram-v2","erdiagram","journey","gantt","pie","gitgraph","mindmap","timeline","quadrantchart","requirementdiagram","c4context","c4container","c4component","c4dynamic","c4deployment","sankey","sankey-beta","xychart","xychart-beta","block","block-beta","packet","packet-beta","kanban","architecture"]),lI=(e,t)=>l.jsx(Bt,{size:"small",styles:{body:{padding:0}},style:{position:"relative",maxWidth:"100%",overflow:"auto",marginBottom:La,background:t.colorBgContainer,borderColor:t.colorBorder},children:l.jsx("pre",{style:{margin:0,padding:t.paddingSM,background:t.colorBgContainer,color:t.colorText,borderRadius:t.borderRadiusSM,fontSize:t.fontSizeSM,overflowX:"auto",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:l.jsx("code",{style:{color:t.colorText},children:e})})}),cI=e=>({p:({children:t})=>l.jsx(Ua,{style:{marginBottom:La,display:"block"},children:t}),ol:({children:t})=>l.jsx("ol",{style:{marginBottom:La,paddingLeft:20},children:t}),ul:({children:t})=>l.jsx("ul",{style:{marginBottom:La,paddingLeft:20},children:t}),li:({children:t})=>l.jsx("li",{style:{marginBottom:lu},children:t}),code({className:t,children:n,inline:r,...s}){const o=/language-([^\s]+)/i.exec(t||""),a=o?o[1]:"",i=r??(!o&&!t),c=n?String(n).replace(/\n$/,""):"";if(i)return l.jsx(Ua,{code:!0,className:t,...s,children:n});if(!c.trim())return null;const d=a.toLowerCase();return iI.has(d)?lI(c,e):qv(a,c,void 0,void 0)},pre:({children:t})=>l.jsx(l.Fragment,{children:t}),blockquote:({children:t})=>l.jsx(Bt,{size:"small",styles:{body:{padding:"4px 8px"}},style:{borderLeft:"3px solid var(--ant-color-primary, #0d9488)",background:"var(--ant-color-primary-bg, rgba(13, 148, 136, 0.08))",margin:`${lu}px 0`,color:"var(--ant-color-text-secondary, #64748b)",fontStyle:"italic"},children:t}),a:({children:t,href:n})=>{const r=typeof n=="string"?n.trim():"";return r?l.jsx("a",{href:r,target:"_blank",rel:"noopener noreferrer",onClick:s=>{s.preventDefault(),Hv(r)},style:{color:"var(--ant-color-link, #0d9488)",textDecoration:"underline",overflowWrap:"anywhere"},children:t}):l.jsx(l.Fragment,{children:t})},table:({children:t})=>l.jsx(Bt,{size:"small",styles:{body:{padding:0}},style:{overflow:"auto",margin:`${La}px 0`},children:l.jsx("table",{style:{width:"100%",borderCollapse:"collapse",border:`1px solid ${e.colorBorder}`},children:t})}),thead:({children:t})=>l.jsx("thead",{style:{backgroundColor:e.colorFillTertiary,color:e.colorText},children:t}),tbody:({children:t})=>l.jsx("tbody",{children:t}),tr:({children:t})=>l.jsx("tr",{style:{borderBottom:`1px solid ${e.colorBorderSecondary}`},children:t}),th:({children:t})=>l.jsx("th",{style:{padding:"4px 8px",textAlign:"left",fontWeight:"bold",color:e.colorText,borderRight:`1px solid ${e.colorBorder}`},children:t}),td:({children:t})=>l.jsx("td",{style:{padding:"4px 8px",borderRight:`1px solid ${e.colorBorder}`},children:t}),input:({type:t,checked:n,disabled:r})=>t==="checkbox"?l.jsx("input",{type:"checkbox",checked:n,disabled:r,style:{marginRight:lu,accentColor:"var(--ant-color-primary, #0d9488)"},readOnly:!0}):l.jsx("input",{type:t,checked:n,disabled:r})}),kS=S.memo(({sessionId:e})=>{const{token:t}=aI(),n=typeof document<"u"&&document.body.getAttribute("data-vdi-safe")==="true",{t:r}=qe(),s=`streaming-status-${e}`,o=oI(e),a=o.content,i=o.reasoningContent,[c,d]=S.useState(()=>Et.getLatest(s)??"");S.useEffect(()=>{let w=null,m=null;const x=Et.subscribeMessage(s,k=>{m=k,w===null&&(w=requestAnimationFrame(()=>{d(m??""),w=null}))});return()=>{x(),w!==null&&cancelAnimationFrame(w)}},[s]);const f=S.useMemo(()=>{const w=c.trim().toLowerCase();if(!w)return r("chat.messageCard.assistantThinking");if(w==="context_compacting")return r("chat.messageCard.assistantCompactingContext");if(w==="context_compaction_degraded")return r("chat.messageCard.assistantCompactingContextDegraded");if(w==="context_compaction_failed")return r("chat.messageCard.assistantCompactingContextFailed");if(w==="memory_updating")return r("chat.messageCard.assistantUpdatingMemory");if(w.startsWith("tool_running:")){const x=(w.slice(13).trim()||"tool").replace(/[_-]+/g," ");return r("chat.messageCard.assistantRunningTool",{tool:x})}return r("chat.messageCard.assistantThinking")},[c,r]),p=S.useMemo(()=>[Sd,wd],[]),v=S.useMemo(()=>[bd],[]),g=S.useMemo(()=>cI(t),[t]);return l.jsx(Bt,{"data-testid":"streaming-indicator",role:"status","aria-live":"polite","aria-busy":!0,"aria-label":r("chat.view.aiRespondingAria"),style:{width:"100%",minWidth:"100%",maxWidth:"800px",margin:"0 auto",background:"var(--lotus-message-streaming-bg)",backdropFilter:n?"none":"blur(14px)",WebkitBackdropFilter:n?"none":"blur(14px)",borderRadius:t.borderRadiusLG,boxShadow:"none",position:"relative",wordWrap:"break-word",overflowWrap:"break-word"},children:l.jsxs(ze,{direction:"vertical",size:t.marginXS,style:{width:"100%",maxWidth:"100%"},children:[l.jsx(we,{align:"baseline",justify:"space-between",gap:t.marginXS,children:l.jsx(Ua,{type:"secondary",strong:!0,style:{fontSize:t.fontSizeSM},children:r("chat.streaming.assistant")})}),l.jsxs(we,{vertical:!0,style:{width:"100%",maxWidth:"100%"},children:[i?l.jsx(ao,{size:"small",defaultActiveKey:["reasoning"],style:{marginBottom:t.marginSM,background:t.colorBgContainer,borderColor:t.colorBorderSecondary},items:[{key:"reasoning",label:l.jsx(Ua,{strong:!0,children:r("chat.messageCard.reasoning")}),children:l.jsx(hr,{remarkPlugins:p,rehypePlugins:v,components:g,children:i})}]}):null,!a||c?l.jsx(Ua,{italic:!0,className:"thinking-shimmer",children:f}):null,a?l.jsx(hr,{remarkPlugins:p,rehypePlugins:v,components:g,children:a}):null,l.jsx("span",{className:"blinking-cursor",style:{display:"inline-block",marginLeft:"0.2em",color:t.colorText}})]})]})})});kS.displayName="StreamingMessageCard";const{Text:Qi}=ot,uI="chat-session-tool-collapse:",TS=(e,t)=>`${uI}${e}:${t}`,Sm=(e,t)=>{if(typeof window>"u")return null;try{const n=window.localStorage.getItem(TS(e,t));if(!n)return null;const r=JSON.parse(n);return!r||typeof r!="object"?null:{isExpanded:"isExpanded"in r&&typeof r.isExpanded=="boolean"?r.isExpanded:!0,expandedTools:[]}}catch{return null}},dI=async(e,t,n)=>{if(typeof window>"u")return;await On.getInstance().saveToolSessionCollapse(e,t,n);try{window.localStorage.setItem(TS(e,t),JSON.stringify(n))}catch{}},fI="synthetic-tool-call:",hI=e=>{var n,r,s,o;const t=new Set;return(n=e.callMessageId)!=null&&n.trim()?t.add(e.callMessageId.trim()):e.call.id&&!e.call.id.includes(":")&&!e.call.id.startsWith(fI)&&t.add(e.call.id),(r=e.resultMessageId)!=null&&r.trim()?t.add(e.resultMessageId.trim()):(o=(s=e.result)==null?void 0:s.id)!=null&&o.trim()&&t.add(e.result.id.trim()),Array.from(t)},pI=e=>{const t=new Set;return e.forEach(n=>{hI(n).forEach(r=>t.add(r))}),Array.from(t)},mI=({tools:e,sessionId:t,defaultExpanded:n=!1,autoCollapseWhenStale:r=!1,onDeleteMessageIds:s})=>{const{t:o}=qe(),{token:a}=st.useToken(),i=S.useMemo(()=>{var O,$,U,J;const T=e[0],P=($=(O=T==null?void 0:T.call)==null?void 0:O.toolCalls)==null?void 0:$[0];return`${(T==null?void 0:T.callMessageId)||((U=T==null?void 0:T.call)==null?void 0:U.id)||(T==null?void 0:T.resultMessageId)||((J=T==null?void 0:T.result)==null?void 0:J.id)||"tool-message-missing"}:${(P==null?void 0:P.toolCallId)||"tool-call-missing"}`},[e]),[c,d]=S.useState(()=>{const T=Sm(t,i);return T?T.isExpanded:n});S.useEffect(()=>{const T=Sm(t,i);d(T?T.isExpanded:n),On.getInstance().loadToolSessionCollapse(t,i).then(A=>{A&&d(A.isExpanded)}).catch(()=>{})},[n,t,i]),S.useEffect(()=>{dI(t,i,{isExpanded:c,expandedTools:[]}).catch(()=>{})},[t,i,c]);const f=S.useRef(r);S.useEffect(()=>{!f.current&&r&&d(!1),f.current=r},[r]);const{completedCount:p,pendingCount:v,hasErrors:g}=S.useMemo(()=>{let T=0,P=0,A=!1;return e.forEach(O=>{O.result?(T++,O.result.isError&&(A=!0)):P++}),{completedCount:T,pendingCount:P,hasErrors:A}},[e]),w=S.useMemo(()=>v>0?{color:"processing",text:o("components.toolSession.completedProgress",{completed:p,total:e.length})}:g?{color:"warning",text:o("components.toolSession.completedWithErrors",{completed:p})}:{color:"success",text:o("components.toolSession.completedOnly",{completed:p})},[p,v,g,e.length,o]),m=S.useMemo(()=>{let T=0,P=0,A=0;return e.forEach(O=>{var J,ee;const $=(ee=(J=O.result)==null?void 0:J.result)==null?void 0:ee.result;if(!$)return;const U=Gd($);U&&(T+=U.added,P+=U.removed,A+=1)}),{added:T,removed:P,changedTools:A}},[e]),x=S.useMemo(()=>{const T=e.map(O=>{var J,ee;const $=(ee=(J=O.call)==null?void 0:J.toolCalls)==null?void 0:ee[0];if(!$)return null;const U=lo($.toolName);return U?U.toolName:$.toolName||null}).filter(O=>!!O);if(T.length===0)return o("components.toolSession.title");if(T.length===1)return T[0];const P=T.filter((O,$)=>$===0||O!==T[$-1]),A=3;return P.length<=A?P.join(" → "):`${P.slice(0,A).join(" → ")} +${P.length-A}`},[e,o]),k=S.useMemo(()=>pI(e),[e]),C=l.jsx(tf,{sessionId:t,tools:e,defaultExpanded:!0,hideHeader:!0}),E={background:"transparent"};return l.jsxs("div",{style:E,children:[l.jsxs("div",{style:{padding:`${a.paddingXS}px 0`,backgroundColor:"transparent",borderBottom:"none",cursor:"pointer",display:"flex",alignItems:"center",gap:a.marginSM,transition:"border-color 240ms ease, background-color 240ms ease"},onClick:()=>d(!c),"data-testid":"tool-session-card-header",children:[l.jsx(Td,{style:{color:a.colorPrimary}}),l.jsx(Qi,{strong:!0,style:{flex:1},children:x}),l.jsx(ox,{count:e.length,style:{backgroundColor:a.colorPrimary}}),m.changedTools>0&&l.jsxs(ze,{size:4,style:{marginInlineStart:a.marginXS},children:[l.jsxs(Qi,{style:{color:a.colorSuccess,fontSize:a.fontSizeSM,fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace"},children:["+",m.added]}),l.jsxs(Qi,{style:{color:a.colorError,fontSize:a.fontSizeSM,fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace"},children:["-",m.removed]})]}),l.jsx(Qi,{type:"secondary",style:{fontSize:a.fontSizeSM},children:w.text}),s&&l.jsx(dn,{title:k.length>0?o("components.toolSession.deleteMessage"):o("components.toolSession.noPersistedMessage"),children:l.jsx(Ee,{type:"text",size:"small",danger:!0,icon:l.jsx(Fl,{}),"aria-label":o("components.toolSession.deleteMessage"),"data-testid":"delete-tool-session",disabled:k.length===0,onClick:T=>{T.preventDefault(),T.stopPropagation(),k.length!==0&&s(k)}})}),l.jsx("div",{style:{marginLeft:a.marginXS},children:c?l.jsx(eo,{style:{color:a.colorTextSecondary}}):l.jsx(bs,{style:{color:a.colorTextSecondary}})})]}),c&&C]})},PS=S.memo(mI);PS.displayName="ToolSessionCard";const{Content:gI}=Hs,{Text:wm}=ot,xm=120,yI=140,vI=220,bI=140,SI=72,_m=68,wI=84,xI=720,_I=e=>{const t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})};function Cm(e){return"type"in e&&(e.type==="tool_session"||e.type==="compression_divider")?e.id:e.message.id}function CI(e,t){const n=e[t];if(!n)return xm;if("type"in n){if(n.type==="compression_divider")return SI;if(n.type==="tool_session"){if(!(t===e.length-1))return _m;const o=_m+Math.min(n.tools.length,8)*wI;return Math.min(xI,o)}}const r="message"in n?n.message:void 0;return r?r.role==="system"?bI:r.role==="user"?yI:vI:xm}const kI=({currentChat:e,currentSessionId:t,convertRenderableEntry:n,handleDeleteMessage:r,handleDeleteToolMessages:s,handleMessagesScroll:o,hasSystemPrompt:a,messagesListRef:i,bottomAnchorRef:c,renderableMessages:d,rowGap:f,showMessagesView:p,screens:v,workflowDraftId:g,isThinking:w,padding:m,selectionMode:x,selectedMessageIds:k,selectableMessageIds:C,onToggleMessageSelection:E})=>{const{t:T}=qe(),P=S.useRef(d);P.current=d;const A=S.useCallback(Y=>{const z=P.current[Y];return z?Cm(z):String(Y)},[]),O=S.useCallback(Y=>CI(P.current,Y),[]),$=IE({count:d.length,getScrollElement:()=>i.current,estimateSize:O,overscan:5,gap:f,getItemKey:A}),U=(Y,z)=>{if(!x)return null;const D=C.has(Y);return l.jsx(ax,{checked:k.has(Y),disabled:!D,onChange:()=>{D&&E(Y)},style:{marginTop:8,marginLeft:z==="flex-end"?8:0,marginRight:z==="flex-start"?8:0}})},J=(Y,z)=>{const D=n(Y),ie=z===void 0||z===d.length-1;if(D.type==="compression_divider"){const Q=_I(D.createdAt);return l.jsx("div",{role:"note","aria-label":T("chat.compression.timelineAria",{detail:D.label,time:Q,defaultValue:"{{detail}} at {{time}}"}),style:{margin:"6px 0 10px 0",borderRadius:10,border:"1px solid rgba(250, 173, 20, 0.45)",background:"rgba(250, 173, 20, 0.12)",padding:v.xs?"8px 10px":"10px 12px"},children:l.jsxs(we,{align:"center",justify:"space-between",gap:8,wrap:!0,children:[l.jsxs(we,{align:"center",gap:8,wrap:!0,children:[l.jsx(Ye,{color:"gold",icon:l.jsx(Zg,{}),children:T("chat.compression.tag","Context compressed")}),l.jsx(wm,{strong:!0,style:{fontSize:12},children:D.label})]}),l.jsx(wm,{type:"secondary",style:{fontSize:11},children:Q})]})})}return D.type==="tool_session"?l.jsx(we,{justify:"flex-start",style:{width:"100%",maxWidth:"100%"},children:l.jsx("div",{id:`message-${D.id}`,style:{width:"100%",maxWidth:v.xs?"100%":"90%"},children:l.jsx(PS,{tools:D.tools,sessionId:D.sessionId,createdAt:D.createdAt,defaultExpanded:ie,autoCollapseWhenStale:!ie,onDeleteMessageIds:t?s:void 0})})}):D.message.role==="system"?l.jsxs(we,{align:"flex-start",style:{width:"100%",maxWidth:"100%"},children:[U(D.message.id,"flex-start"),l.jsx("div",{style:{flex:1,minWidth:0},children:l.jsx(yv,{currentChat:e,message:D.message})})]}):l.jsxs(we,{justify:D.align,align:"flex-start",style:{width:"100%",maxWidth:"100%"},children:[D.align==="flex-start"&&U(D.message.id,D.align),l.jsx("div",{style:{width:D.message.role==="user"?"85%":"100%",maxWidth:v.xs?"100%":"90%"},children:l.jsx(CS,{sessionId:t,message:D.message,messageType:D.messageType,onDelete:D.message.id===g?void 0:r})}),D.align==="flex-end"&&U(D.message.id,D.align)]})},ee=(p||a)&&d.length>0,I=$.getVirtualItems();return l.jsx(gI,{role:"log","aria-live":"polite","aria-label":T("chat.view.chatMessagesAria"),className:`chat-view-messages-list ${p?"visible":"hidden"}`,style:{flex:1,minHeight:0,padding:m,overflowY:"auto",opacity:p?1:0,scrollbarWidth:"none",msOverflowStyle:"none"},ref:i,onScroll:o,children:l.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:f,width:"100%",minHeight:"100%"},children:[ee&&l.jsx("div",{style:{position:"relative",width:"100%",height:$.getTotalSize()},children:I.map(Y=>{const z=d[Y.index];if(!z)return null;const D=Cm(z);return l.jsx("div",{"data-chat-entry-id":D,"data-index":Y.index,ref:$.measureElement,style:{position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${Y.start}px)`},children:l.jsx("div",{className:"messageEnter",children:J(z,Y.index)})},Y.key)})}),w&&t&&l.jsx("div",{className:"streaming-card-enter",children:l.jsx(we,{justify:"flex-start",style:{width:"100%",maxWidth:"100%"},children:l.jsx("div",{style:{width:"100%",maxWidth:v.xs?"100%":"90%"},children:l.jsx(kS,{sessionId:t})})})}),l.jsx("div",{ref:c,"data-chat-bottom-anchor":"true","aria-hidden":"true",style:{width:"100%",height:1,flexShrink:0}})]})})},TI=rt.memo(kI),PI={green:{backgroundColor:"color-mix(in srgb, var(--lotus-success) 14%, transparent)",borderColor:"color-mix(in srgb, var(--lotus-success) 30%, transparent)",color:"var(--lotus-success)"},blue:{backgroundColor:"color-mix(in srgb, var(--lotus-accent-secondary) 14%, transparent)",borderColor:"color-mix(in srgb, var(--lotus-accent-secondary) 30%, transparent)",color:"var(--lotus-accent-secondary)"},purple:{backgroundColor:"color-mix(in srgb, var(--lotus-gold) 16%, transparent)",borderColor:"color-mix(in srgb, var(--lotus-gold) 32%, transparent)",color:"var(--lotus-gold)"}},EI=({label:e,tone:t})=>{const n=PI[t];return l.jsx("span",{style:{display:"inline-flex",alignItems:"center",padding:"1px 6px",borderRadius:999,fontSize:10,lineHeight:1.4,fontWeight:600,whiteSpace:"nowrap",backgroundColor:n.backgroundColor,border:`1px solid ${n.borderColor}`,color:n.color},children:e})},MI=({usage:e,showDetails:t=!0,size:n="small",className:r=""})=>{const{t:s}=qe(),o=py(e),a=my(e),i=E_(e),c=e.promptCachedToolOutputs??0,d=e.promptCachedToolTokensSaved??0,f=e.thinkingTokens??0,p=e.cacheReadInputTokens??0,v=c>0||d>0,g=f>0||p>0,w=E=>{const T=Math.round(E*10)/10;return Number.isInteger(T)?T.toFixed(0):T.toFixed(1)},m=()=>a>=90?"var(--lotus-chart-danger)":a>=70?"var(--lotus-chart-accent)":"var(--lotus-chart-secondary)",x=[];d>0&&x.push({key:"prompt-saved",label:s("components.tokenUsage.promptSavedBadge",{value:jc(d)}),tone:"green"}),p>0&&x.push({key:"cache-read",label:s("components.tokenUsage.cacheReadBadge",{value:jc(p)}),tone:"blue"}),f>0&&x.push({key:"thinking",label:s("components.tokenUsage.thinkingBadge",{value:jc(f)}),tone:"purple"});const k={marginTop:8,marginBottom:4,fontSize:11,fontWeight:700,color:"var(--lotus-metric-text-muted)"},C=l.jsxs("div",{style:{minWidth:220,color:"var(--lotus-metric-text-strong)"},children:[l.jsx("div",{style:{marginBottom:4,fontWeight:"bold"},children:s("components.tokenUsage.title")}),l.jsxs("div",{style:{fontSize:12},children:[s("components.tokenUsage.contextWindow"),": ",Ar(e.totalTokens)," /"," ",Ar(o)," ",s("components.tokenUsage.tokens")]}),l.jsx("div",{style:{fontSize:12,color:"var(--lotus-metric-text-muted)"},children:s("components.tokenUsage.usedPercent",{value:a.toFixed(1)})}),t&&l.jsxs("div",{style:{marginTop:6,borderTop:"1px solid var(--lotus-metric-tooltip-border)",paddingTop:6,fontSize:11},children:[l.jsx("div",{style:k,children:s("components.tokenUsage.contextPrepared")}),l.jsxs("div",{children:[s("components.tokenUsage.system"),": ",Ar(e.systemTokens)]}),e.summaryTokens>0&&l.jsxs("div",{children:[s("components.tokenUsage.summary"),": ",Ar(e.summaryTokens)]}),l.jsxs("div",{children:[s("components.tokenUsage.messages"),": ",Ar(e.windowTokens)]}),v?l.jsxs(l.Fragment,{children:[l.jsx("div",{style:k,children:s("components.tokenUsage.promptCacheTitle")}),c>0&&l.jsx("div",{style:{color:"var(--lotus-metric-text-muted)"},children:s("components.tokenUsage.cachedToolOutputs",{count:c})}),d>0&&l.jsxs("div",{style:{color:"var(--lotus-metric-text-muted)"},children:[s("components.tokenUsage.promptSaved"),":"," ",Ar(d)]})]}):null,g?l.jsxs(l.Fragment,{children:[l.jsx("div",{style:k,children:s("components.tokenUsage.providerResult")}),p>0&&l.jsxs("div",{children:[s("components.tokenUsage.cacheRead"),": ",Ar(p)]}),f>0&&l.jsxs("div",{children:[s("components.tokenUsage.thinking"),": ",Ar(f)]})]}):null]})]});return l.jsx(dn,{title:C,placement:"top",arrow:!0,color:"var(--lotus-metric-tooltip-bg)",children:l.jsxs(ze,{className:`token-usage-display ${r}`,size:4,align:"center",style:{lineHeight:1},children:[l.jsx(Qg,{type:"line",percent:Math.min(a,100),size:{height:n==="small"?6:8,width:80},strokeColor:m(),showInfo:!1,style:{margin:0,lineHeight:1}}),l.jsxs("span",{style:{fontSize:n==="small"?11:12,color:i==="error"?"var(--lotus-chart-danger)":i==="warning"?"var(--lotus-chart-accent)":"var(--lotus-chart-secondary)",whiteSpace:"nowrap",fontWeight:600},children:[w(a),"%"]}),x.map(E=>l.jsx(EI,{label:E.label,tone:E.tone},E.key))]})})},md="chat_scroll_anchors_v1",ES="chat_scroll_anchor_v2:";function MS(e){if(!e||typeof e!="object")return!1;const t=e;return t.v===1&&typeof t.anchorId=="string"&&typeof t.offsetPx=="number"&&typeof t.ts=="number"}function RI(){try{const e=localStorage.getItem(md);if(!e)return{};const t=JSON.parse(e);if(!t||typeof t!="object")return{};const n={};for(const[r,s]of Object.entries(t))MS(s)&&(n[r]=s);return n}catch{return{}}}function AI(e){const t=RI(),n=t[e];if(!n)return null;On.getInstance().saveScrollAnchor(e,n).catch(()=>{}),delete t[e];const s=Object.keys(t).length;try{s===0?localStorage.removeItem(md):localStorage.setItem(md,JSON.stringify(t))}catch{}return n}async function jI(e){if(typeof window>"u")return null;try{const n=await On.getInstance().loadScrollAnchor(e);if(n)return n}catch{}try{const t=localStorage.getItem(`${ES}${e}`);if(t){const n=JSON.parse(t);if(MS(n))return On.getInstance().saveScrollAnchor(e,n).catch(()=>{}),n}}catch{}return AI(e)}async function II(e,t){if(!(typeof window>"u")){try{await On.getInstance().saveScrollAnchor(e,t)}catch(n){console.warn("[ScrollAnchor] IndexedDB save failed:",n)}try{localStorage.setItem(`${ES}${e}`,JSON.stringify(t))}catch{}}}const cu=1,OI=3,$I=2e3;function LI(e,t){const n=Math.max(0,e.scrollHeight-e.clientHeight);return Math.min(Math.max(0,t),n)}function DI(e){const{scrollEl:t,getAnchorElement:n,offsetPx:r,isCancelled:s}=e;return new Promise(o=>{const a=performance.now();let i=0,c=-1,d=Number.NaN;const f=()=>{if(s()){o();return}const p=n();if(!p){requestAnimationFrame(f);return}const v=t.getBoundingClientRect(),w=p.getBoundingClientRect().top-v.top,m=LI(t,t.scrollTop+(w-r));if(Math.abs(t.scrollTop-m)>cu)t.scrollTop=m,i=0;else{const k=Number.isFinite(d)?Math.abs(m-d)<=cu:!1,C=Math.abs(t.scrollTop-c)<=cu;i=k&&C?i+1:0}d=m,c=t.scrollTop;const x=performance.now()-a>$I;if(i>=OI||x){o();return}requestAnimationFrame(f)};requestAnimationFrame(f)})}const FI=300,NI=.5;function zI(e){return"type"in e&&(e.type==="tool_session"||e.type==="compression_divider")?e.id:"message"in e&&e.message?e.message.id:null}function RS(e){if("type"in e&&(e.type==="tool_session"||e.type==="compression_divider"))return e.createdAt;if("message"in e&&e.message)return e.message.createdAt}function km(e){if(!e)return null;const t=Date.parse(e);return Number.isFinite(t)?t:null}function BI(e,t){const n=km(e.createdAt);if(n!=null){let r=null,s=Number.POSITIVE_INFINITY;for(let o=0;o<t.length;o++){const a=km(RS(t[o]));if(a==null)continue;const i=Math.abs(a-n);i<s&&(s=i,r=o)}if(r!=null)return r}if(typeof e.indexHint=="number"){const r=Math.max(0,Math.min(t.length-1,e.indexHint));return Number.isFinite(r)?r:null}return null}function kf(e){return Array.from(e.querySelectorAll("[data-chat-entry-id]"))}function WI(e,t){const n=kf(e);for(const r of n)if(r.dataset.chatEntryId===t)return r;return null}function UI(e,t){const n=kf(e);if(n.length===0)return null;const r=Math.max(0,Math.min(n.length-1,t));return n[r]??null}function qI(e){const t=kf(e);if(t.length===0)return null;const n=e.getBoundingClientRect().top;for(const r of t)if(r.getBoundingClientRect().bottom>n)return r;return t[t.length-1]??null}function HI(e){const{currentSessionId:t,messagesListRef:n,renderableMessages:r}=e,s=S.useRef(new Set),o=S.useRef(!1),a=S.useRef(0),i=S.useRef(null),c=S.useRef(null),d=S.useRef(!1);S.useEffect(()=>{const w=n.current;if(!w)return;const m=()=>{d.current=!0};return w.addEventListener("wheel",m,{passive:!0}),w.addEventListener("touchmove",m,{passive:!0}),w.addEventListener("pointerdown",m),()=>{w.removeEventListener("wheel",m),w.removeEventListener("touchmove",m),w.removeEventListener("pointerdown",m)}},[n]);const f=S.useMemo(()=>{const w=new Map;for(let m=0;m<r.length;m++){const x=zI(r[m]);x&&w.set(x,m)}return w},[r]),p=S.useCallback(()=>{const w=n.current;if(!w||r.length===0)return null;const m=qI(w);if(!m)return null;const x=m.dataset.chatEntryId;if(!x)return null;const k=w.getBoundingClientRect(),C=m.getBoundingClientRect(),E=f.get(x),T=typeof E=="number"?r[E]:void 0;return{v:1,anchorId:x,offsetPx:C.top-k.top,ts:Date.now(),indexHint:E,createdAt:T?RS(T):void 0}},[f,n,r]),v=S.useCallback(async w=>{if(o.current)return;const m=p();if(!m)return;const x=c.current;x&&x.anchorId===m.anchorId&&Math.abs(x.offsetPx-m.offsetPx)<=NI||(await II(w,m),c.current=m)},[p]),g=S.useCallback(w=>{if(!t||o.current)return;i.current&&clearTimeout(i.current);const m=t;i.current=setTimeout(()=>{v(m).catch(()=>{})},FI)},[t,v]);return S.useEffect(()=>{const w=t;return()=>{w&&(i.current&&(clearTimeout(i.current),i.current=null),v(w).catch(()=>{}))}},[t,v]),S.useLayoutEffect(()=>{if(!t)return;const w=n.current;if(!w||r.length===0||s.current.has(t))return;let m=!1;return jI(t).then(x=>{if(m||!x){m||s.current.add(t);return}const k=f.get(x.anchorId),C=typeof k=="number"?k:BI(x,r);if(C==null){s.current.add(t);return}i.current&&(clearTimeout(i.current),i.current=null);const E=++a.current;o.current=!0,d.current=!1,w.style.overflowAnchor="none";const T=()=>a.current!==E||d.current;DI({scrollEl:w,getAnchorElement:()=>WI(w,x.anchorId)??UI(w,C),offsetPx:x.offsetPx,isCancelled:T}).finally(()=>{a.current===E&&(o.current=!1,s.current.add(t),w.style.overflowAnchor="",v(t).catch(()=>{}))})}),()=>{m=!0}},[t,f,r,r.length,n,v]),{handleScroll:g}}const Tm=2,Pm=6,uu=150,XI="streaming-",YI="streaming-reasoning-",KI="streaming-status-",VI=e=>e.startsWith(XI)&&!e.startsWith(YI)&&!e.startsWith(KI),GI=({currentSessionId:e,isThinking:t,messagesListRef:n,bottomAnchorRef:r,renderableMessages:s})=>{const[o,a]=S.useState(!1),[i,c]=S.useState(!1),[d,f]=S.useState(!1),[p,v]=S.useState(0),g=S.useRef(!1),w=S.useRef(!1),m=S.useRef(!0),x=S.useRef(s.length),k=S.useRef(new Set),C=S.useRef(0),{handleScroll:E}=HI({currentSessionId:e,messagesListRef:n,renderableMessages:s}),T=S.useCallback(()=>{k.current.clear(),f(!1),v(0)},[]),P=S.useCallback(I=>{if(I<=0)return 0;const Y=k.current;if(Y.size===0)return I;let z=I;for(const D of Array.from(Y)){if(z<=0)break;Y.delete(D),z-=1}return z},[]),A=S.useCallback(()=>{const I=n.current;if(!I||s.length===0)return a(!1),c(!1),T(),null;const Y=Math.max(0,I.scrollHeight-I.scrollTop-I.clientHeight),z=Y<=uu,D=I.scrollTop<=uu;return a(!z),c(!D&&s.length>3),z&&(w.current=!0,T()),{atBottom:z,distanceFromBottom:Y}},[T,n,s.length]),O=S.useCallback(I=>{const Y=A();Y&&(Y.distanceFromBottom>uu?(g.current=!0,w.current=!1):Y.atBottom&&(g.current=!1,w.current=!0,T()),E(I))},[T,A,E]),$=S.useCallback(I=>{cancelAnimationFrame(C.current);const Y=n.current,z=r.current;if(!Y||!z||s.length===0)return;const D=(I==null?void 0:I.behavior)??"smooth";let ie=0,Q=Number.NaN;const ue=()=>{C.current=0,g.current=!1,w.current=!0,T(),A()},me=()=>{const V=n.current,ae=r.current;if(!V||!ae)return;const ve=Math.max(0,V.scrollHeight-V.scrollTop-V.clientHeight),re=ae.getBoundingClientRect(),le=V.getBoundingClientRect(),de=re.top-le.top,pe=!Number.isFinite(Q)||Math.abs(de-Q)>.5,Ae=ve>Tm||pe||ie===0;if(Ae&&ae.scrollIntoView({block:"end",behavior:ie===0?D:"auto"}),Q=de,ie+=1,ie<Pm&&Ae){C.current=requestAnimationFrame(me);return}ue()};C.current=requestAnimationFrame(me)},[r,T,n,A,s.length]),U=S.useCallback(()=>{if(!n.current)return;let Y=0;const z=()=>{A()},D=()=>{const ie=n.current;if(!ie)return;const Q=ie.scrollTop>Tm||Y===0;if(Q&&ie.scrollTo({top:0,behavior:"auto"}),Y+=1,Y<Pm&&Q){requestAnimationFrame(D);return}z()};requestAnimationFrame(D)},[n,A]),J=S.useCallback(()=>{g.current=!1,w.current=!0,T()},[T]);S.useEffect(()=>{const I=Y=>{var ve,re;const D=(ve=Y.detail)==null?void 0:ve.messageId;if(!D){console.error("No messageId provided for navigation");return}const ie=s.findIndex(le=>"message"in le&&le.message?le.message.id===D:"id"in le?le.id===D:!1);if(ie===-1){console.warn("Message not found for navigation:",D);return}const Q=s[ie],ue=Q&&"message"in Q?Q.message.id:Q&&"id"in Q?Q.id:D,me=document.getElementById(`message-${ue}`),V=Array.from(((re=n.current)==null?void 0:re.querySelectorAll("[data-chat-entry-id]"))||[]),ae=me||V.find(le=>le.dataset.chatEntryId===ue);if(!ae){console.warn("Message element not found for navigation:",D);return}ae.scrollIntoView({behavior:"smooth",block:"center"}),ae.classList.add("highlight-message"),setTimeout(()=>{ae.classList.remove("highlight-message")},2e3)};return window.addEventListener("navigate-to-message",I),()=>{window.removeEventListener("navigate-to-message",I)}},[n,s]);const ee=S.useRef(t);return S.useEffect(()=>{!ee.current&&t&&(J(),$()),ee.current=t},[t,J,$]),S.useEffect(()=>Et.subscribe(I=>{var Y;if(I.sessionId===e){if(g.current){(((Y=I.content)==null?void 0:Y.trim())??"")&&VI(I.messageId)&&(k.current.has(I.messageId)||(k.current.add(I.messageId),v(D=>D+1)),f(!0)),A();return}if(!I.content){A();return}$()}}),[e,A,$]),S.useEffect(()=>{const I=s.length,Y=x.current,z=I>Y;if(I===0){T(),A(),x.current=I;return}if(m.current){A(),m.current=!1,x.current=I;return}if(z&&g.current){const D=P(I-Y);f(!0),D>0&&v(ie=>ie+D)}!g.current&&z?$():A(),x.current=I},[T,P,A,s.length,$]),S.useEffect(()=>{const I=n.current;if(!I||typeof ResizeObserver>"u")return;let Y=0,z=!1;const D=()=>{cancelAnimationFrame(Y);const me=w.current;Y=requestAnimationFrame(()=>{if(z&&me&&!g.current){$({behavior:"auto"});return}A()})},ie=new ResizeObserver(()=>{z=!0,D()});ie.observe(I);const Q=I.firstElementChild;Q instanceof HTMLElement&&ie.observe(Q);const ue=r.current;return ue instanceof HTMLElement&&ie.observe(ue),D(),()=>{cancelAnimationFrame(Y),ie.disconnect()}},[r,e,n,A,s.length,$]),S.useEffect(()=>{if(!n.current||s.length===0){A();return}A();let Y=0;const z=requestAnimationFrame(()=>{A(),Y=requestAnimationFrame(()=>{A()})});return()=>{cancelAnimationFrame(z),cancelAnimationFrame(Y)}},[n,s.length,e,A]),S.useEffect(()=>{m.current=!0,g.current=!1,w.current=!1,x.current=0,T()},[T,e]),{handleMessagesScroll:O,hasUnreadActivity:d,resetUserScroll:J,scrollToBottom:$,scrollToTop:U,showScrollToBottom:o,showScrollToTop:i,unreadCount:p}};function JI(e){return"type"in e&&e.type==="tool_session"}function QI(e){return"type"in e&&e.type==="compression_divider"}const Em=e=>{const t=Date.parse(e||"");return Number.isFinite(t)?t:Number.MAX_SAFE_INTEGER},ZI=e=>"type"in e?e.createdAt:e.message.createdAt,eO=e=>!("type"in e)&&e.message.role==="system";function tO(e){return e.role==="assistant"&&"type"in e&&e.type==="tool_call"}function nO(e){return e.role==="assistant"&&"type"in e&&e.type==="tool_result"}const Mm=e=>(e??"").trim().toLowerCase()==="conclusion",rO=e=>{const t=(e??"").trim().toLowerCase();return t==="conclusion_with_options"||t==="exitplanmode"||t==="request_permissions"},sO=e=>{var t,n,r;return((n=(t=e.call.toolCalls)==null?void 0:t[0])==null?void 0:n.toolCallId)||((r=e.result)==null?void 0:r.toolCallId)||"tool-call-missing"},oO=(e,t)=>{var n;return e.call.id||e.callMessageId||e.resultMessageId||((n=e.result)==null?void 0:n.id)||`tool-message-missing-${t}`},aO=(e,t)=>`tool-session-${oO(e,t)}:${sO(e)}`;function iO(e){const t=[],n=new Map,r=new Set,s=(a,i)=>{const c=n.get(a)||[];c.push(i),n.set(a,c)},o=a=>{const i=n.get(a);if(!i||i.length===0)return;let c;for(;i.length>0&&!c;){const d=i.shift();d&&!d.result&&(c=d)}return i.length===0?n.delete(a):n.set(a,i),c};for(const a of e){if(tO(a)){const i=a.toolCalls||[];if(i.length===0){t.push(a);continue}i.forEach((c,d)=>{const f=c.toolCallId||`${a.id}-${d}`;if(Mm(c.toolName)){r.add(f);return}if(rO(c.toolName)){r.add(f);const w={...a,id:`${a.id}:tool-call:${d}:${f}`,toolCalls:[{...c,toolCallId:f}]};t.push(w);return}const v={call:{...a,id:`${a.id}:tool-call:${d}:${f}`,toolCalls:[{...c,toolCallId:f}]},callMessageId:a.id};s(f,v);const g=t[t.length-1];Array.isArray(g)?g.push(v):t.push([v])});continue}if(nO(a)){const i=a.toolCallId;if(i&&r.has(i)){r.delete(i),t.push(a);continue}if(Mm(a.toolName)){t.push(a);continue}const c=i?o(i):void 0;if(c)c.result=a,c.resultMessageId=a.id;else{const d=i||`orphan-tool-call:${a.id}`,p={call:{role:"assistant",type:"tool_call",id:`synthetic-tool-call:${a.id}`,createdAt:a.createdAt,toolCalls:[{toolCallId:d,toolName:(a.toolName||"").trim()||"tool",parameters:{},streamingOutput:""}],isCompressed:a.isCompressed,compressedEventId:a.compressedEventId},result:a,resultMessageId:a.id},v=t[t.length-1];Array.isArray(v)?v.push(p):t.push([p])}continue}t.push(a)}return t}const lO=(e,t)=>{var i;const{t:n}=qe(),r=S.useMemo(()=>{var d;const c=t.find(f=>f.role==="system");return c||((d=e==null?void 0:e.config)!=null&&d.baseSystemPrompt?{id:`system-prompt-${e.id}`,role:"system",content:e.config.baseSystemPrompt,createdAt:new Date(e.createdAt).toISOString()}:null)},[e,t]),s=S.useCallback(c=>!1,[]),o=S.useCallback(c=>{if(QI(c))return{type:"compression_divider",id:c.id,createdAt:c.createdAt,label:c.label};if(JI(c))return{type:"tool_session",id:c.id,sessionId:c.sessionId,tools:c.tools,createdAt:c.createdAt};const d=c.message.role==="user"?"flex-end":"flex-start";let f=c.messageType;if(!f&&c.message.role==="assistant"&&"type"in c.message){const p="type"in c.message?c.message.type:void 0;(p==="text"||p==="plan"||p==="question"||p==="tool_call"||p==="tool_result")&&(f=p)}return{type:"message",message:c.message,align:d,messageType:f}},[]),a=S.useMemo(()=>{var m;const c=t.filter(x=>{const k=x.role;return!(k!=="user"&&k!=="assistant"&&k!=="system"&&k!=="tool"||s(x))}),d=iO(c),f=[];d.forEach((x,k)=>{var T,P;if(Array.isArray(x)){const A=x[0];f.push({type:"tool_session",id:A?aO(A,k):`tool-session-unknown-${k}`,sessionId:(e==null?void 0:e.id)||"default",tools:x,createdAt:((T=A==null?void 0:A.call)==null?void 0:T.createdAt)||((P=A==null?void 0:A.result)==null?void 0:P.createdAt)||new Date().toISOString()});return}const C=x;let E;if(C.role==="assistant"&&"type"in C){const A="type"in C?C.type:void 0;(A==="text"||A==="plan"||A==="question"||A==="tool_call"||A==="tool_result")&&(E=A)}f.push({message:C,messageType:E})}),!c.some(x=>x.role==="system")&&r&&f.unshift({message:r});const v=((m=e==null?void 0:e.config)==null?void 0:m.compressionEvents)||[],g=f.findIndex(x=>!eO(x)),w=g===-1?f.length:g;for(const x of v){const k={type:"compression_divider",id:`compression-divider-${x.id}`,createdAt:x.createdAt,label:n("chat.compression.timelineDetail",{count:x.messagesCompressed,defaultValue:"{{count}} messages archived"})},C=Em(x.createdAt),E=f.findIndex((T,P)=>P>=w&&Em(ZI(T))>C);E===-1?f.push(k):f.splice(E,0,k)}return f},[(i=e==null?void 0:e.config)==null?void 0:i.compressionEvents,e==null?void 0:e.id,t,s,r,n]);return{systemPromptMessage:r,renderableMessages:a,convertRenderableEntry:o}},{Text:cO}=ot,uO=({visible:e,selectionMode:t,selectedCount:n,totalCount:r,paddingTop:s,paddingRight:o,paddingBottom:a,paddingLeft:i,maxWidth:c,onToggleSelectionMode:d,onSelectAll:f,onClear:p,onExportMarkdown:v,onExportPdf:g,t:w})=>e?l.jsx("div",{style:{paddingTop:s,paddingRight:o,paddingBottom:a,paddingLeft:i,maxWidth:c,margin:"0 auto",width:"100%"},children:t?l.jsxs(we,{align:"center",justify:"space-between",wrap:"wrap",gap:8,children:[l.jsx(cO,{type:"secondary",children:w("chat.selectionToolbar.selectedCount",{selected:n,total:r})}),l.jsxs(ze,{size:8,wrap:!0,children:[l.jsx(Ee,{size:"small",onClick:f,children:w("chat.selectionToolbar.selectAll")}),l.jsx(Ee,{size:"small",onClick:p,children:w("chat.selectionToolbar.clear")}),l.jsx(Ee,{size:"small",icon:l.jsx(to,{}),onClick:v,disabled:n===0,children:w("chat.selectionToolbar.exportMarkdown")}),l.jsx(Ee,{size:"small",type:"primary",icon:l.jsx(to,{}),onClick:g,disabled:n===0,children:w("chat.selectionToolbar.exportPdf")}),l.jsx(Ee,{size:"small",icon:l.jsx(ks,{}),onClick:d,children:w("chat.selectionToolbar.done")})]})]}):l.jsx(we,{justify:"flex-end",children:l.jsx(dn,{title:w("chat.selectionToolbar.selectMessages"),children:l.jsx(Ee,{"aria-label":w("chat.selectionToolbar.selectMessages"),icon:l.jsx(ey,{}),size:"small",onClick:d})})})}):null,dO=({visible:e,showScrollToTop:t,showScrollToBottom:n,hasUnreadActivity:r,unreadCount:s,onScrollToTop:o,onScrollToBottom:a,onResetUserScroll:i,t:c})=>!e||!t&&!n?null:l.jsx("div",{className:"chat-scroll-capsule-wrapper","data-testid":"chat-scroll-capsule-wrapper",children:l.jsxs("div",{className:"chat-scroll-capsule","data-testid":"chat-scroll-capsule",children:[t?l.jsx(Ee,{"data-testid":"chat-scroll-top-button",className:"chat-scroll-capsule__button",type:"text",icon:l.jsx("span",{"aria-hidden":"true",children:"↑"}),size:"small",onClick:o,children:c("chat.scroll.jumpToTop",{defaultValue:"Jump to top"})}):null,n?l.jsxs("span",{style:{display:"inline-flex"},children:[l.jsx("span",{style:{display:"inline-flex"},children:l.jsx(Ee,{"data-testid":"chat-scroll-bottom-button",className:`chat-scroll-capsule__button ${r?"chat-scroll-capsule__button--active":""}`,type:r?"primary":"text",icon:l.jsx("span",{"aria-hidden":"true",children:"↓"}),size:"small",onClick:()=>{i(),a()},children:r?c("chat.scroll.newMessagesWithCount",{count:s,defaultValue:s>0?"{{count}} new messages":"New messages"}):c("chat.scroll.backToLatest",{defaultValue:"Back to latest"})})}),r&&s>0?l.jsx("span",{className:"chat-scroll-capsule__count","data-testid":"chat-scroll-unread-count",children:s}):null]}):null]})}),fO=rt.lazy(()=>Lt(()=>import("./index-DZwtEBJ8.js"),__vite__mapDeps([16,1,2,3,4,5,6,17]),import.meta.url).then(e=>({default:e.ContextBar}))),hO=({sessionId:e,auxReady:t,maxWidth:n,paddingLeft:r,paddingRight:s,workspaceState:o,inspectorEligible:a,planMode:i,onRequestOpenInspector:c,t:d})=>{const{token:f}=st.useToken();if(!e)return null;const p=i?l.jsx(dn,{title:d("chat.planMode.tooltip",{status:i.status,mode:i.pre_permission_mode,defaultValue:"Plan mode active · phase: {{status}} · previous mode: {{mode}}"}),children:l.jsx(Ye,{color:"purple",icon:l.jsx(qg,{}),style:{marginInlineEnd:0},children:d("chat.planMode.active",{defaultValue:"Plan mode"})})}):null,v=a&&o.inspectorTogglePlacement==="meta_strip"&&!!c,g=!!(p||o.isMultiPane||v);return l.jsxs(l.Fragment,{children:[t?l.jsx(rt.Suspense,{fallback:null,children:l.jsx(fO,{sessionId:e})}):null,g?l.jsx("div",{"data-conversation-meta-strip":!0,"data-inspector-toggle-placement":o.inspectorTogglePlacement,style:{paddingTop:f.paddingXS,paddingRight:s,paddingBottom:0,paddingLeft:r,maxWidth:n,margin:"0 auto",width:"100%"},children:l.jsxs(we,{align:"center",justify:"space-between",gap:f.marginXS,wrap:!0,children:[l.jsxs(we,{align:"center",gap:f.marginXS,wrap:!0,children:[p,o.isMultiPane?l.jsx(Ye,{color:"blue",style:{marginInlineEnd:0},children:d("chat.workspace.multiPane",{count:o.leafCount,defaultValue:"{{count}} panes"})}):null]}),v&&c?l.jsx(Ee,{size:"small",icon:l.jsx(Md,{}),onClick:c,"aria-label":d("chat.workspace.toggleInspector",{defaultValue:"Open inspector"}),children:o.inspectorMode==="drawer"?d("chat.workspace.openInspector",{defaultValue:"Inspector"}):d("chat.workspace.toggleInspector",{defaultValue:"Inspector"})}):null]})}):null]})},Tf=({isEmbedded:e,leafCount:t,isMobileViewport:n})=>{const r=Number.isFinite(t)&&t>0?Math.floor(t):1,s=r>1;return{isEmbedded:e,leafCount:r,isMultiPane:s,isMobileViewport:n,inspectorMode:n||s?"drawer":"rail",inspectorTogglePlacement:s&&!n?"pane_header":"meta_strip"}},pO=rt.lazy(()=>Lt(()=>import("./index-DD799l9l.js"),__vite__mapDeps([18,1,2,3,4,5,6,19]),import.meta.url).then(e=>({default:e.QuestionDialog}))),{useToken:mO}=st,{useBreakpoint:gO}=zl,yO=e=>{const{t}=kt;return e.role==="user"?t("chat.view.roleUser"):e.role==="assistant"?t("chat.view.roleAssistant"):e.role==="system"?t("chat.view.roleSystem"):t("chat.view.roleDefault")},AS=e=>{const t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()},vO=e=>e.map(({message:t,text:n},r)=>{const s=yO(t),o=AS(t.createdAt);return[`## ${r+1}. ${s} · ${o}`,"",n].join(`
240
+ `)},V1=async(e,t,n)=>{var i,c,d;const r=t==null?void 0:t.trim();if(!r)throw new Error("No model configured. Please select a default model in Provider Settings.");const a=((d=(c=(i=(await U1().chat.completions.create({model:r,messages:[{role:"system",content:"You fix Mermaid diagrams using the parser/render error context. Return only corrected Mermaid code without markdown fences or extra text."},{role:"user",content:K1(e,n)}],temperature:0})).choices)==null?void 0:i[0])==null?void 0:c.message)==null?void 0:d.content)??"";return _S(a)},G1=(e,t)=>{const n=VT(),r=GT(),s=(r==null?void 0:r.model)??n;return S.useCallback(async(o,a)=>{const i=Z.getState(),c=t??i.currentSessionId,d=i.chats.find(C=>C.id===c);if(!c||!d)throw new Error("No active chat available");const f=d.messages.find(C=>C.id===e);if(!Dl(f))throw new Error("Mermaid fix is only available for assistant text messages");const p=await V1(o,s,a);if(!p)throw new Error("AI did not return a Mermaid fix");const v=q1(f.content,o,p);if(!v)throw new Error("Unable to locate Mermaid block to update");let g=bm(e,f,d.messages);try{await Vs.patchSessionMessage(c,g,{content:v})}catch(C){if(!X1(C))throw C;await i.loadChatHistory(c,{mode:"replace",retries:2,retryDelayMs:150,waitForAssistant:!0});const T=Z.getState().chats.find(A=>A.id===c);if(!T)throw C;const P=Y1(T.messages,e,f.content,o);if(!P)throw C;g=bm(P.id,P,T.messages),await Vs.patchSessionMessage(c,g,{content:v})}const w=Z.getState(),m=w.chats.find(C=>C.id===c);if(!m)throw new Error("No active chat available");const x=new Set([e,g]),k=m.messages.map(C=>!x.has(C.id)||!Dl(C)?C:{...C,content:v});w.updateSession(c,{messages:k})},[e,t,s])},J1=e=>e.xs?"100%":e.sm?"95%":"800px",Q1=[{key:"shorter",labelKey:"feedback.retry.shorter",fallbackLabel:"Shorter",color:"blue",prefix:"Please give a shorter, more concise answer:"},{key:"deeper",labelKey:"feedback.retry.deeper",fallbackLabel:"Deeper",color:"purple",prefix:"Please provide a more detailed, in-depth answer:"},{key:"actionable",labelKey:"feedback.retry.actionable",fallbackLabel:"More actionable",color:"green",prefix:"Please make your answer more actionable with specific steps:"}],Z1=({messageId:e,isVisible:t,onRetryWithVariation:n})=>{const{t:r}=qe(),[s,o]=S.useState(null),[a,i]=S.useState(!1),c=S.useCallback(()=>{o(g=>g==="like"?null:"like"),i(!1)},[]),d=S.useCallback(()=>{o(g=>{const w=g==="dislike"?null:"dislike";return i(w==="dislike"),w})},[]),f=S.useCallback(g=>{n&&n(g.prefix)},[n]),v=["lotus-msg-feedback",t?"is-visible":"",s!==null?"has-rating":""].filter(Boolean).join(" ");return l.jsxs("div",{className:v,"data-message-id":e,children:[l.jsx(dn,{title:r("feedback.helpful","Helpful"),children:l.jsx("button",{type:"button",className:`lotus-msg-feedback-btn ${s==="like"?"is-liked":""}`,onClick:c,"aria-label":r("feedback.helpful","Helpful"),children:s==="like"?l.jsx(tx,{}):l.jsx(nx,{})})}),l.jsx(dn,{title:r("feedback.notHelpful","Not helpful"),children:l.jsx("button",{type:"button",className:`lotus-msg-feedback-btn ${s==="dislike"?"is-disliked":""}`,onClick:d,"aria-label":r("feedback.notHelpful","Not helpful"),children:s==="dislike"?l.jsx(rx,{}):l.jsx(sx,{})})}),a&&n&&l.jsxs(l.Fragment,{children:[l.jsx("span",{className:"lotus-msg-feedback-sep"}),l.jsx("span",{className:"lotus-msg-feedback-retry",children:Q1.map(g=>l.jsx(Ye,{color:g.color,bordered:!1,className:"lotus-msg-feedback-retry-tag",onClick:()=>f(g),children:r(g.labelKey,g.fallbackLabel)},g.key))})]})]})},{useToken:eI}=st,{useBreakpoint:tI}=zl,nI="chat-send-message",rI=({sessionId:e,message:t,onDelete:n,messageType:r})=>{const{role:s,id:o}=t,{token:a}=eI(),i=typeof document<"u"&&document.body.getAttribute("data-vdi-safe")==="true",{t:c}=qe(),{message:d}=Tn.useApp(),f=tI(),p=Z(le=>le.updateSession),v=Z(le=>le.loadChatHistory),g=Z(le=>le.refreshChats),w=S.useRef(null),[m,x]=S.useState(!1),k=Z(si(e)),C=S.useCallback(le=>typeof window>"u"?Promise.reject(new Error("window is unavailable")):new Promise((de,pe)=>{const Ae={content:le,sessionId:e,handled:!1,resolve:de,reject:pe};window.dispatchEvent(new CustomEvent(nI,{detail:Ae})),Ae.handled||pe(new Error("No chat message dispatcher available"))}),[e]),E=S.useMemo(()=>{if(!t.createdAt)return null;const le=new Date(t.createdAt);if(Number.isNaN(le.getTime()))return null;try{return YM(le,"MMM d, yyyy HH:mm")}catch{return le.toLocaleString()}},[t.createdAt]),T=S.useMemo(()=>xj(t,r),[t,r]),P=S.useMemo(()=>_j(t,T),[t,T]),A=S.useMemo(()=>Cj(t,T),[t,T]),O=S.useMemo(()=>Qv(t),[t]),$=G1(o,e),U=S.useCallback(async le=>{var de;if(!e||!o){d.warning(c("chat.messageActions.cannotRestore"));return}try{const pe=await Vs.restoreSessionState(e,{target_message_id:o,restore_files:le});await v(e,{mode:"replace"}),await g();const Ae=((de=pe.file_errors)==null?void 0:de.length)??0;if(Ae>0){d.warning(c("chat.messageActions.restorePartial",{count:Ae}));return}le?d.success(c("chat.messageActions.restoreFilesSuccess",{count:pe.messages_removed})):d.success(c("chat.messageActions.restoreSuccess",{count:pe.messages_removed}))}catch(pe){const Ae=pe instanceof Error?pe.message:c("chat.messageActions.restoreFailed");d.error(Ae)}},[d,e,v,o,g,c]),J=S.useCallback(()=>{U(!1)},[U]),ee=S.useCallback(()=>{U(!0)},[U]),{contextMenuItems:I,handleMouseUp:Y,copyToClipboard:z,referenceMessage:D}=Ij({messageText:O,messageId:o,currentSessionId:e,onDelete:n,onRestoreChat:J,onRestoreFilesAndChat:ee,cardRef:w}),ie=S.useMemo(()=>s==="user"&&O.startsWith("/"),[s,O]),Q=S.useMemo(()=>Xv(void 0,{onFixMermaid:$}),[$]),ue=S.useMemo(()=>[Sd,wd],[]),me=S.useMemo(()=>[bd],[]),V=S.useMemo(()=>[eR(()=>z(O),c("chat.actions.copyMessage")),tR(D,c("chat.actions.referenceMessage"))],[O,z,D,c]),{handleExecutePlan:ae,handleRefinePlan:ve,handleQuestionAnswer:re}=Oj({currentSessionId:e,updateSession:p,sendMessage:C});return T==="plan"&&P&&s==="assistant"?l.jsx(_v,{plan:P,contextId:e||"",onExecute:ae,onRefine:ve,timestamp:E??void 0}):T==="question"&&A&&s==="assistant"?l.jsx(Cv,{question:A,contextId:e||"",onAnswer:re,disabled:k||!1,timestamp:E??void 0}):oR(t)?l.jsx(hR,{taskList:t.taskList}):sR(t)?(ke("[MessageCard]","[MessageCard] Rendering FileReferenceCard for message:",t.id,"paths:",t.paths),l.jsx(we,{justify:"flex-end",style:{width:"100%"},children:l.jsx(kv,{paths:t.paths,displayText:t.displayText,timestamp:E??void 0})})):l.jsxs(we,{vertical:!0,onContextMenu:le=>Y(le),style:{width:"100%"},children:[l.jsx(Zs,{menu:{items:I},trigger:["contextMenu"],children:l.jsx(Bt,{"data-testid":s==="assistant"?"assistant-message":"user-message",id:o?`message-${o}`:void 0,ref:w,style:{width:"100%",minWidth:"100%",maxWidth:J1(f),margin:"0 auto",background:s==="user"?"var(--lotus-message-user-bg)":s==="assistant"?"var(--lotus-message-assistant-bg)":a.colorBgContainer,backdropFilter:i?"none":"blur(14px)",WebkitBackdropFilter:i?"none":"blur(14px)",border:s==="user"?"1px solid var(--lotus-message-user-border)":"1px solid var(--lotus-glass-border-subtle)",borderRadius:a.borderRadiusLG,boxShadow:m?"var(--lotus-card-hover-shadow)":"var(--lotus-shadow-soft)",position:"relative",wordWrap:"break-word",overflowWrap:"break-word",transition:"all 0.26s cubic-bezier(0.16, 1, 0.3, 1)",transform:m?"translateY(-2px) scale(1.002)":"none",overflow:"hidden"},styles:{body:{padding:a.paddingMD}},onMouseEnter:()=>x(!0),onMouseLeave:()=>x(!1),children:l.jsxs(ze,{direction:"vertical",size:a.marginXS,style:{width:"100%",maxWidth:"100%"},children:[l.jsx(Sj,{role:s,formattedTimestamp:E,token:a}),t.role==="user"&&t.images&&l.jsx(GM,{images:t.images}),l.jsx(we,{vertical:!0,style:{width:"100%",maxWidth:"100%"},children:l.jsx(bj,{sessionId:e,message:t,messageText:O,isUserToolCall:ie,formatUserToolCall:kj,markdownComponents:Q,markdownPlugins:ue,rehypePlugins:me})}),l.jsx(ZM,{isVisible:m,position:{bottom:a.paddingXS,right:a.paddingXS},buttons:V})]})})}),s==="assistant"&&T==="text"&&o&&l.jsx(Z1,{messageId:o,isVisible:m})]})},CS=S.memo(rI,(e,t)=>e.message===t.message&&e.messageType===t.messageType&&e.onDelete===t.onDelete&&e.sessionId===t.sessionId);CS.displayName="MessageCard";const sI=({key:e,atomFamily:t,store:n,emptyState:r})=>{const s=S.useMemo(()=>e?t(e):null,[t,e]),[o,a]=S.useState(()=>Bu(n,t,e,r));return S.useEffect(()=>{if(a(Bu(n,t,e,r)),!s||!e)return;let i=null,c=n.get(s);const d=n.sub(s,()=>{c=n.get(s),i===null&&(i=requestAnimationFrame(()=>{a(c),i=null}))});return()=>{d(),i!==null&&cancelAnimationFrame(i)}},[t,r,e,s,n]),o},oI=e=>{const t=Bn(e);return sI({key:t,atomFamily:Xl,store:Hl,emptyState:Gy})},{Text:Ua}=ot,{useToken:aI}=st,La=8,lu=4,iI=new Set(["mermaid","graph","flowchart","sequencediagram","classdiagram","statediagram","statediagram-v2","erdiagram","journey","gantt","pie","gitgraph","mindmap","timeline","quadrantchart","requirementdiagram","c4context","c4container","c4component","c4dynamic","c4deployment","sankey","sankey-beta","xychart","xychart-beta","block","block-beta","packet","packet-beta","kanban","architecture"]),lI=(e,t)=>l.jsx(Bt,{size:"small",styles:{body:{padding:0}},style:{position:"relative",maxWidth:"100%",overflow:"auto",marginBottom:La,background:t.colorBgContainer,borderColor:t.colorBorder},children:l.jsx("pre",{style:{margin:0,padding:t.paddingSM,background:t.colorBgContainer,color:t.colorText,borderRadius:t.borderRadiusSM,fontSize:t.fontSizeSM,overflowX:"auto",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:l.jsx("code",{style:{color:t.colorText},children:e})})}),cI=e=>({p:({children:t})=>l.jsx(Ua,{style:{marginBottom:La,display:"block"},children:t}),ol:({children:t})=>l.jsx("ol",{style:{marginBottom:La,paddingLeft:20},children:t}),ul:({children:t})=>l.jsx("ul",{style:{marginBottom:La,paddingLeft:20},children:t}),li:({children:t})=>l.jsx("li",{style:{marginBottom:lu},children:t}),code({className:t,children:n,inline:r,...s}){const o=/language-([^\s]+)/i.exec(t||""),a=o?o[1]:"",i=r??(!o&&!t),c=n?String(n).replace(/\n$/,""):"";if(i)return l.jsx(Ua,{code:!0,className:t,...s,children:n});if(!c.trim())return null;const d=a.toLowerCase();return iI.has(d)?lI(c,e):qv(a,c,void 0,void 0)},pre:({children:t})=>l.jsx(l.Fragment,{children:t}),blockquote:({children:t})=>l.jsx(Bt,{size:"small",styles:{body:{padding:"4px 8px"}},style:{borderLeft:"3px solid var(--ant-color-primary, #0d9488)",background:"var(--ant-color-primary-bg, rgba(13, 148, 136, 0.08))",margin:`${lu}px 0`,color:"var(--ant-color-text-secondary, #64748b)",fontStyle:"italic"},children:t}),a:({children:t,href:n})=>{const r=typeof n=="string"?n.trim():"";return r?l.jsx("a",{href:r,target:"_blank",rel:"noopener noreferrer",onClick:s=>{s.preventDefault(),Hv(r)},style:{color:"var(--ant-color-link, #0d9488)",textDecoration:"underline",overflowWrap:"anywhere"},children:t}):l.jsx(l.Fragment,{children:t})},table:({children:t})=>l.jsx(Bt,{size:"small",styles:{body:{padding:0}},style:{overflow:"auto",margin:`${La}px 0`},children:l.jsx("table",{style:{width:"100%",borderCollapse:"collapse",border:`1px solid ${e.colorBorder}`},children:t})}),thead:({children:t})=>l.jsx("thead",{style:{backgroundColor:e.colorFillTertiary,color:e.colorText},children:t}),tbody:({children:t})=>l.jsx("tbody",{children:t}),tr:({children:t})=>l.jsx("tr",{style:{borderBottom:`1px solid ${e.colorBorderSecondary}`},children:t}),th:({children:t})=>l.jsx("th",{style:{padding:"4px 8px",textAlign:"left",fontWeight:"bold",color:e.colorText,borderRight:`1px solid ${e.colorBorder}`},children:t}),td:({children:t})=>l.jsx("td",{style:{padding:"4px 8px",borderRight:`1px solid ${e.colorBorder}`},children:t}),input:({type:t,checked:n,disabled:r})=>t==="checkbox"?l.jsx("input",{type:"checkbox",checked:n,disabled:r,style:{marginRight:lu,accentColor:"var(--ant-color-primary, #0d9488)"},readOnly:!0}):l.jsx("input",{type:t,checked:n,disabled:r})}),kS=S.memo(({sessionId:e})=>{const{token:t}=aI(),n=typeof document<"u"&&document.body.getAttribute("data-vdi-safe")==="true",{t:r}=qe(),s=`streaming-status-${e}`,o=oI(e),a=o.content,i=o.reasoningContent,[c,d]=S.useState(()=>Et.getLatest(s)??"");S.useEffect(()=>{let w=null,m=null;const x=Et.subscribeMessage(s,k=>{m=k,w===null&&(w=requestAnimationFrame(()=>{d(m??""),w=null}))});return()=>{x(),w!==null&&cancelAnimationFrame(w)}},[s]);const f=S.useMemo(()=>{const w=c.trim().toLowerCase();if(!w)return r("chat.messageCard.assistantThinking");if(w==="context_compacting")return r("chat.messageCard.assistantCompactingContext");if(w==="context_compaction_degraded")return r("chat.messageCard.assistantCompactingContextDegraded");if(w==="context_compaction_failed")return r("chat.messageCard.assistantCompactingContextFailed");if(w==="memory_updating")return r("chat.messageCard.assistantUpdatingMemory");if(w.startsWith("tool_running:")){const x=(w.slice(13).trim()||"tool").replace(/[_-]+/g," ");return r("chat.messageCard.assistantRunningTool",{tool:x})}return r("chat.messageCard.assistantThinking")},[c,r]),p=S.useMemo(()=>[Sd,wd],[]),v=S.useMemo(()=>[bd],[]),g=S.useMemo(()=>cI(t),[t]);return l.jsx(Bt,{"data-testid":"streaming-indicator",role:"status","aria-live":"polite","aria-busy":!0,"aria-label":r("chat.view.aiRespondingAria"),style:{width:"100%",minWidth:"100%",maxWidth:"800px",margin:"0 auto",background:"var(--lotus-message-streaming-bg)",backdropFilter:n?"none":"blur(14px)",WebkitBackdropFilter:n?"none":"blur(14px)",borderRadius:t.borderRadiusLG,boxShadow:"none",position:"relative",wordWrap:"break-word",overflowWrap:"break-word"},children:l.jsxs(ze,{direction:"vertical",size:t.marginXS,style:{width:"100%",maxWidth:"100%"},children:[l.jsx(we,{align:"baseline",justify:"space-between",gap:t.marginXS,children:l.jsx(Ua,{type:"secondary",strong:!0,style:{fontSize:t.fontSizeSM},children:r("chat.streaming.assistant")})}),l.jsxs(we,{vertical:!0,style:{width:"100%",maxWidth:"100%"},children:[i?l.jsx(ao,{size:"small",defaultActiveKey:["reasoning"],style:{marginBottom:t.marginSM,background:t.colorBgContainer,borderColor:t.colorBorderSecondary},items:[{key:"reasoning",label:l.jsx(Ua,{strong:!0,children:r("chat.messageCard.reasoning")}),children:l.jsx(hr,{remarkPlugins:p,rehypePlugins:v,components:g,children:i})}]}):null,!a||c?l.jsx(Ua,{italic:!0,className:"thinking-shimmer",children:f}):null,a?l.jsx(hr,{remarkPlugins:p,rehypePlugins:v,components:g,children:a}):null,l.jsx("span",{className:"blinking-cursor",style:{display:"inline-block",marginLeft:"0.2em",color:t.colorText}})]})]})})});kS.displayName="StreamingMessageCard";const{Text:Qi}=ot,uI="chat-session-tool-collapse:",TS=(e,t)=>`${uI}${e}:${t}`,Sm=(e,t)=>{if(typeof window>"u")return null;try{const n=window.localStorage.getItem(TS(e,t));if(!n)return null;const r=JSON.parse(n);return!r||typeof r!="object"?null:{isExpanded:"isExpanded"in r&&typeof r.isExpanded=="boolean"?r.isExpanded:!0,expandedTools:[]}}catch{return null}},dI=async(e,t,n)=>{if(typeof window>"u")return;await On.getInstance().saveToolSessionCollapse(e,t,n);try{window.localStorage.setItem(TS(e,t),JSON.stringify(n))}catch{}},fI="synthetic-tool-call:",hI=e=>{var n,r,s,o;const t=new Set;return(n=e.callMessageId)!=null&&n.trim()?t.add(e.callMessageId.trim()):e.call.id&&!e.call.id.includes(":")&&!e.call.id.startsWith(fI)&&t.add(e.call.id),(r=e.resultMessageId)!=null&&r.trim()?t.add(e.resultMessageId.trim()):(o=(s=e.result)==null?void 0:s.id)!=null&&o.trim()&&t.add(e.result.id.trim()),Array.from(t)},pI=e=>{const t=new Set;return e.forEach(n=>{hI(n).forEach(r=>t.add(r))}),Array.from(t)},mI=({tools:e,sessionId:t,defaultExpanded:n=!1,autoCollapseWhenStale:r=!1,onDeleteMessageIds:s})=>{const{t:o}=qe(),{token:a}=st.useToken(),i=S.useMemo(()=>{var O,$,U,J;const T=e[0],P=($=(O=T==null?void 0:T.call)==null?void 0:O.toolCalls)==null?void 0:$[0];return`${(T==null?void 0:T.callMessageId)||((U=T==null?void 0:T.call)==null?void 0:U.id)||(T==null?void 0:T.resultMessageId)||((J=T==null?void 0:T.result)==null?void 0:J.id)||"tool-message-missing"}:${(P==null?void 0:P.toolCallId)||"tool-call-missing"}`},[e]),[c,d]=S.useState(()=>{const T=Sm(t,i);return T?T.isExpanded:n});S.useEffect(()=>{const T=Sm(t,i);d(T?T.isExpanded:n),On.getInstance().loadToolSessionCollapse(t,i).then(A=>{A&&d(A.isExpanded)}).catch(()=>{})},[n,t,i]),S.useEffect(()=>{dI(t,i,{isExpanded:c,expandedTools:[]}).catch(()=>{})},[t,i,c]);const f=S.useRef(r);S.useEffect(()=>{!f.current&&r&&d(!1),f.current=r},[r]);const{completedCount:p,pendingCount:v,hasErrors:g}=S.useMemo(()=>{let T=0,P=0,A=!1;return e.forEach(O=>{O.result?(T++,O.result.isError&&(A=!0)):P++}),{completedCount:T,pendingCount:P,hasErrors:A}},[e]),w=S.useMemo(()=>v>0?{color:"processing",text:o("components.toolSession.completedProgress",{completed:p,total:e.length})}:g?{color:"warning",text:o("components.toolSession.completedWithErrors",{completed:p})}:{color:"success",text:o("components.toolSession.completedOnly",{completed:p})},[p,v,g,e.length,o]),m=S.useMemo(()=>{let T=0,P=0,A=0;return e.forEach(O=>{var J,ee;const $=(ee=(J=O.result)==null?void 0:J.result)==null?void 0:ee.result;if(!$)return;const U=Gd($);U&&(T+=U.added,P+=U.removed,A+=1)}),{added:T,removed:P,changedTools:A}},[e]),x=S.useMemo(()=>{const T=e.map(O=>{var J,ee;const $=(ee=(J=O.call)==null?void 0:J.toolCalls)==null?void 0:ee[0];if(!$)return null;const U=lo($.toolName);return U?U.toolName:$.toolName||null}).filter(O=>!!O);if(T.length===0)return o("components.toolSession.title");if(T.length===1)return T[0];const P=T.filter((O,$)=>$===0||O!==T[$-1]),A=3;return P.length<=A?P.join(" → "):`${P.slice(0,A).join(" → ")} +${P.length-A}`},[e,o]),k=S.useMemo(()=>pI(e),[e]),C=l.jsx(tf,{sessionId:t,tools:e,defaultExpanded:!0,hideHeader:!0}),E={background:"transparent"};return l.jsxs("div",{style:E,children:[l.jsxs("div",{style:{padding:`${a.paddingXS}px 0`,backgroundColor:"transparent",borderBottom:"none",cursor:"pointer",display:"flex",alignItems:"center",gap:a.marginSM,transition:"border-color 240ms ease, background-color 240ms ease"},onClick:()=>d(!c),"data-testid":"tool-session-card-header",children:[l.jsx(Td,{style:{color:a.colorPrimary}}),l.jsx(Qi,{strong:!0,style:{flex:1},children:x}),l.jsx(ox,{count:e.length,style:{backgroundColor:a.colorPrimary}}),m.changedTools>0&&l.jsxs(ze,{size:4,style:{marginInlineStart:a.marginXS},children:[l.jsxs(Qi,{style:{color:a.colorSuccess,fontSize:a.fontSizeSM,fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace"},children:["+",m.added]}),l.jsxs(Qi,{style:{color:a.colorError,fontSize:a.fontSizeSM,fontFamily:"ui-monospace, SFMono-Regular, Menlo, monospace"},children:["-",m.removed]})]}),l.jsx(Qi,{type:"secondary",style:{fontSize:a.fontSizeSM},children:w.text}),s&&l.jsx(dn,{title:k.length>0?o("components.toolSession.deleteMessage"):o("components.toolSession.noPersistedMessage"),children:l.jsx(Ee,{type:"text",size:"small",danger:!0,icon:l.jsx(Fl,{}),"aria-label":o("components.toolSession.deleteMessage"),"data-testid":"delete-tool-session",disabled:k.length===0,onClick:T=>{T.preventDefault(),T.stopPropagation(),k.length!==0&&s(k)}})}),l.jsx("div",{style:{marginLeft:a.marginXS},children:c?l.jsx(eo,{style:{color:a.colorTextSecondary}}):l.jsx(bs,{style:{color:a.colorTextSecondary}})})]}),c&&C]})},PS=S.memo(mI);PS.displayName="ToolSessionCard";const{Content:gI}=Hs,{Text:wm}=ot,xm=120,yI=140,vI=220,bI=140,SI=72,_m=68,wI=84,xI=720,_I=e=>{const t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})};function Cm(e){return"type"in e&&(e.type==="tool_session"||e.type==="compression_divider")?e.id:e.message.id}function CI(e,t){const n=e[t];if(!n)return xm;if("type"in n){if(n.type==="compression_divider")return SI;if(n.type==="tool_session"){if(!(t===e.length-1))return _m;const o=_m+Math.min(n.tools.length,8)*wI;return Math.min(xI,o)}}const r="message"in n?n.message:void 0;return r?r.role==="system"?bI:r.role==="user"?yI:vI:xm}const kI=({currentChat:e,currentSessionId:t,convertRenderableEntry:n,handleDeleteMessage:r,handleDeleteToolMessages:s,handleMessagesScroll:o,hasSystemPrompt:a,messagesListRef:i,bottomAnchorRef:c,renderableMessages:d,rowGap:f,showMessagesView:p,screens:v,workflowDraftId:g,isThinking:w,padding:m,selectionMode:x,selectedMessageIds:k,selectableMessageIds:C,onToggleMessageSelection:E})=>{const{t:T}=qe(),P=S.useRef(d);P.current=d;const A=S.useCallback(Y=>{const z=P.current[Y];return z?Cm(z):String(Y)},[]),O=S.useCallback(Y=>CI(P.current,Y),[]),$=IE({count:d.length,getScrollElement:()=>i.current,estimateSize:O,overscan:5,gap:f,getItemKey:A}),U=(Y,z)=>{if(!x)return null;const D=C.has(Y);return l.jsx(ax,{checked:k.has(Y),disabled:!D,onChange:()=>{D&&E(Y)},style:{marginTop:8,marginLeft:z==="flex-end"?8:0,marginRight:z==="flex-start"?8:0}})},J=(Y,z)=>{const D=n(Y),ie=z===void 0||z===d.length-1;if(D.type==="compression_divider"){const Q=_I(D.createdAt);return l.jsx("div",{role:"note","aria-label":T("chat.compression.timelineAria",{detail:D.label,time:Q,defaultValue:"{{detail}} at {{time}}"}),style:{margin:"6px 0 10px 0",borderRadius:10,border:"1px solid rgba(250, 173, 20, 0.45)",background:"rgba(250, 173, 20, 0.12)",padding:v.xs?"8px 10px":"10px 12px"},children:l.jsxs(we,{align:"center",justify:"space-between",gap:8,wrap:!0,children:[l.jsxs(we,{align:"center",gap:8,wrap:!0,children:[l.jsx(Ye,{color:"gold",icon:l.jsx(Zg,{}),children:T("chat.compression.tag","Context compressed")}),l.jsx(wm,{strong:!0,style:{fontSize:12},children:D.label})]}),l.jsx(wm,{type:"secondary",style:{fontSize:11},children:Q})]})})}return D.type==="tool_session"?l.jsx(we,{justify:"flex-start",style:{width:"100%",maxWidth:"100%"},children:l.jsx("div",{id:`message-${D.id}`,style:{width:"100%",maxWidth:v.xs?"100%":"90%"},children:l.jsx(PS,{tools:D.tools,sessionId:D.sessionId,createdAt:D.createdAt,defaultExpanded:ie,autoCollapseWhenStale:!ie,onDeleteMessageIds:t?s:void 0})})}):D.message.role==="system"?l.jsxs(we,{align:"flex-start",style:{width:"100%",maxWidth:"100%"},children:[U(D.message.id,"flex-start"),l.jsx("div",{style:{flex:1,minWidth:0},children:l.jsx(yv,{currentChat:e,message:D.message})})]}):l.jsxs(we,{justify:D.align,align:"flex-start",style:{width:"100%",maxWidth:"100%"},children:[D.align==="flex-start"&&U(D.message.id,D.align),l.jsx("div",{style:{width:D.message.role==="user"?"85%":"100%",maxWidth:v.xs?"100%":"90%"},children:l.jsx(CS,{sessionId:t,message:D.message,messageType:D.messageType,onDelete:D.message.id===g?void 0:r})}),D.align==="flex-end"&&U(D.message.id,D.align)]})},ee=(p||a)&&d.length>0,I=$.getVirtualItems();return l.jsx(gI,{role:"log","aria-live":"polite","aria-label":T("chat.view.chatMessagesAria"),className:`chat-view-messages-list ${p?"visible":"hidden"}`,style:{flex:1,minHeight:0,padding:m,overflowY:"auto",opacity:p?1:0,scrollbarWidth:"none",msOverflowStyle:"none"},ref:i,onScroll:o,children:l.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:f,width:"100%",minHeight:"100%"},children:[ee&&l.jsx("div",{style:{position:"relative",width:"100%",height:$.getTotalSize()},children:I.map(Y=>{const z=d[Y.index];if(!z)return null;const D=Cm(z);return l.jsx("div",{"data-chat-entry-id":D,"data-index":Y.index,ref:$.measureElement,style:{position:"absolute",top:0,left:0,width:"100%",transform:`translateY(${Y.start}px)`},children:l.jsx("div",{className:"messageEnter",children:J(z,Y.index)})},Y.key)})}),w&&t&&l.jsx("div",{className:"streaming-card-enter",children:l.jsx(we,{justify:"flex-start",style:{width:"100%",maxWidth:"100%"},children:l.jsx("div",{style:{width:"100%",maxWidth:v.xs?"100%":"90%"},children:l.jsx(kS,{sessionId:t})})})}),l.jsx("div",{ref:c,"data-chat-bottom-anchor":"true","aria-hidden":"true",style:{width:"100%",height:1,flexShrink:0}})]})})},TI=rt.memo(kI),PI={green:{backgroundColor:"color-mix(in srgb, var(--lotus-success) 14%, transparent)",borderColor:"color-mix(in srgb, var(--lotus-success) 30%, transparent)",color:"var(--lotus-success)"},blue:{backgroundColor:"color-mix(in srgb, var(--lotus-accent-secondary) 14%, transparent)",borderColor:"color-mix(in srgb, var(--lotus-accent-secondary) 30%, transparent)",color:"var(--lotus-accent-secondary)"},purple:{backgroundColor:"color-mix(in srgb, var(--lotus-gold) 16%, transparent)",borderColor:"color-mix(in srgb, var(--lotus-gold) 32%, transparent)",color:"var(--lotus-gold)"}},EI=({label:e,tone:t})=>{const n=PI[t];return l.jsx("span",{style:{display:"inline-flex",alignItems:"center",padding:"1px 6px",borderRadius:999,fontSize:10,lineHeight:1.4,fontWeight:600,whiteSpace:"nowrap",backgroundColor:n.backgroundColor,border:`1px solid ${n.borderColor}`,color:n.color},children:e})},MI=({usage:e,showDetails:t=!0,size:n="small",className:r=""})=>{const{t:s}=qe(),o=py(e),a=my(e),i=E_(e),c=e.promptCachedToolOutputs??0,d=e.promptCachedToolTokensSaved??0,f=e.thinkingTokens??0,p=e.cacheReadInputTokens??0,v=c>0||d>0,g=f>0||p>0,w=E=>{const T=Math.round(E*10)/10;return Number.isInteger(T)?T.toFixed(0):T.toFixed(1)},m=()=>a>=90?"var(--lotus-chart-danger)":a>=70?"var(--lotus-chart-accent)":"var(--lotus-chart-secondary)",x=[];d>0&&x.push({key:"prompt-saved",label:s("components.tokenUsage.promptSavedBadge",{value:jc(d)}),tone:"green"}),p>0&&x.push({key:"cache-read",label:s("components.tokenUsage.cacheReadBadge",{value:jc(p)}),tone:"blue"}),f>0&&x.push({key:"thinking",label:s("components.tokenUsage.thinkingBadge",{value:jc(f)}),tone:"purple"});const k={marginTop:8,marginBottom:4,fontSize:11,fontWeight:700,color:"var(--lotus-metric-text-muted)"},C=l.jsxs("div",{style:{minWidth:220,color:"var(--lotus-metric-text-strong)"},children:[l.jsx("div",{style:{marginBottom:4,fontWeight:"bold"},children:s("components.tokenUsage.title")}),l.jsxs("div",{style:{fontSize:12},children:[s("components.tokenUsage.contextWindow"),": ",Ar(e.totalTokens)," /"," ",Ar(o)," ",s("components.tokenUsage.tokens")]}),l.jsx("div",{style:{fontSize:12,color:"var(--lotus-metric-text-muted)"},children:s("components.tokenUsage.usedPercent",{value:a.toFixed(1)})}),t&&l.jsxs("div",{style:{marginTop:6,borderTop:"1px solid var(--lotus-metric-tooltip-border)",paddingTop:6,fontSize:11},children:[l.jsx("div",{style:k,children:s("components.tokenUsage.contextPrepared")}),l.jsxs("div",{children:[s("components.tokenUsage.system"),": ",Ar(e.systemTokens)]}),e.summaryTokens>0&&l.jsxs("div",{children:[s("components.tokenUsage.summary"),": ",Ar(e.summaryTokens)]}),l.jsxs("div",{children:[s("components.tokenUsage.messages"),": ",Ar(e.windowTokens)]}),v?l.jsxs(l.Fragment,{children:[l.jsx("div",{style:k,children:s("components.tokenUsage.promptCacheTitle")}),c>0&&l.jsx("div",{style:{color:"var(--lotus-metric-text-muted)"},children:s("components.tokenUsage.cachedToolOutputs",{count:c})}),d>0&&l.jsxs("div",{style:{color:"var(--lotus-metric-text-muted)"},children:[s("components.tokenUsage.promptSaved"),":"," ",Ar(d)]})]}):null,g?l.jsxs(l.Fragment,{children:[l.jsx("div",{style:k,children:s("components.tokenUsage.providerResult")}),p>0&&l.jsxs("div",{children:[s("components.tokenUsage.cacheRead"),": ",Ar(p)]}),f>0&&l.jsxs("div",{children:[s("components.tokenUsage.thinking"),": ",Ar(f)]})]}):null]})]});return l.jsx(dn,{title:C,placement:"top",arrow:!0,color:"var(--lotus-metric-tooltip-bg)",children:l.jsxs(ze,{className:`token-usage-display ${r}`,size:4,align:"center",style:{lineHeight:1},children:[l.jsx(Qg,{type:"line",percent:Math.min(a,100),size:{height:n==="small"?6:8,width:80},strokeColor:m(),showInfo:!1,style:{margin:0,lineHeight:1}}),l.jsxs("span",{style:{fontSize:n==="small"?11:12,color:i==="error"?"var(--lotus-chart-danger)":i==="warning"?"var(--lotus-chart-accent)":"var(--lotus-chart-secondary)",whiteSpace:"nowrap",fontWeight:600},children:[w(a),"%"]}),x.map(E=>l.jsx(EI,{label:E.label,tone:E.tone},E.key))]})})},md="chat_scroll_anchors_v1",ES="chat_scroll_anchor_v2:";function MS(e){if(!e||typeof e!="object")return!1;const t=e;return t.v===1&&typeof t.anchorId=="string"&&typeof t.offsetPx=="number"&&typeof t.ts=="number"}function RI(){try{const e=localStorage.getItem(md);if(!e)return{};const t=JSON.parse(e);if(!t||typeof t!="object")return{};const n={};for(const[r,s]of Object.entries(t))MS(s)&&(n[r]=s);return n}catch{return{}}}function AI(e){const t=RI(),n=t[e];if(!n)return null;On.getInstance().saveScrollAnchor(e,n).catch(()=>{}),delete t[e];const s=Object.keys(t).length;try{s===0?localStorage.removeItem(md):localStorage.setItem(md,JSON.stringify(t))}catch{}return n}async function jI(e){if(typeof window>"u")return null;try{const n=await On.getInstance().loadScrollAnchor(e);if(n)return n}catch{}try{const t=localStorage.getItem(`${ES}${e}`);if(t){const n=JSON.parse(t);if(MS(n))return On.getInstance().saveScrollAnchor(e,n).catch(()=>{}),n}}catch{}return AI(e)}async function II(e,t){if(!(typeof window>"u")){try{await On.getInstance().saveScrollAnchor(e,t)}catch(n){console.warn("[ScrollAnchor] IndexedDB save failed:",n)}try{localStorage.setItem(`${ES}${e}`,JSON.stringify(t))}catch{}}}const cu=1,OI=3,$I=2e3;function LI(e,t){const n=Math.max(0,e.scrollHeight-e.clientHeight);return Math.min(Math.max(0,t),n)}function DI(e){const{scrollEl:t,getAnchorElement:n,offsetPx:r,isCancelled:s}=e;return new Promise(o=>{const a=performance.now();let i=0,c=-1,d=Number.NaN;const f=()=>{if(s()){o();return}const p=n();if(!p){requestAnimationFrame(f);return}const v=t.getBoundingClientRect(),w=p.getBoundingClientRect().top-v.top,m=LI(t,t.scrollTop+(w-r));if(Math.abs(t.scrollTop-m)>cu)t.scrollTop=m,i=0;else{const k=Number.isFinite(d)?Math.abs(m-d)<=cu:!1,C=Math.abs(t.scrollTop-c)<=cu;i=k&&C?i+1:0}d=m,c=t.scrollTop;const x=performance.now()-a>$I;if(i>=OI||x){o();return}requestAnimationFrame(f)};requestAnimationFrame(f)})}const FI=300,NI=.5;function zI(e){return"type"in e&&(e.type==="tool_session"||e.type==="compression_divider")?e.id:"message"in e&&e.message?e.message.id:null}function RS(e){if("type"in e&&(e.type==="tool_session"||e.type==="compression_divider"))return e.createdAt;if("message"in e&&e.message)return e.message.createdAt}function km(e){if(!e)return null;const t=Date.parse(e);return Number.isFinite(t)?t:null}function BI(e,t){const n=km(e.createdAt);if(n!=null){let r=null,s=Number.POSITIVE_INFINITY;for(let o=0;o<t.length;o++){const a=km(RS(t[o]));if(a==null)continue;const i=Math.abs(a-n);i<s&&(s=i,r=o)}if(r!=null)return r}if(typeof e.indexHint=="number"){const r=Math.max(0,Math.min(t.length-1,e.indexHint));return Number.isFinite(r)?r:null}return null}function kf(e){return Array.from(e.querySelectorAll("[data-chat-entry-id]"))}function WI(e,t){const n=kf(e);for(const r of n)if(r.dataset.chatEntryId===t)return r;return null}function UI(e,t){const n=kf(e);if(n.length===0)return null;const r=Math.max(0,Math.min(n.length-1,t));return n[r]??null}function qI(e){const t=kf(e);if(t.length===0)return null;const n=e.getBoundingClientRect().top;for(const r of t)if(r.getBoundingClientRect().bottom>n)return r;return t[t.length-1]??null}function HI(e){const{currentSessionId:t,messagesListRef:n,renderableMessages:r}=e,s=S.useRef(new Set),o=S.useRef(!1),a=S.useRef(0),i=S.useRef(null),c=S.useRef(null),d=S.useRef(!1);S.useEffect(()=>{const w=n.current;if(!w)return;const m=()=>{d.current=!0};return w.addEventListener("wheel",m,{passive:!0}),w.addEventListener("touchmove",m,{passive:!0}),w.addEventListener("pointerdown",m),()=>{w.removeEventListener("wheel",m),w.removeEventListener("touchmove",m),w.removeEventListener("pointerdown",m)}},[n]);const f=S.useMemo(()=>{const w=new Map;for(let m=0;m<r.length;m++){const x=zI(r[m]);x&&w.set(x,m)}return w},[r]),p=S.useCallback(()=>{const w=n.current;if(!w||r.length===0)return null;const m=qI(w);if(!m)return null;const x=m.dataset.chatEntryId;if(!x)return null;const k=w.getBoundingClientRect(),C=m.getBoundingClientRect(),E=f.get(x),T=typeof E=="number"?r[E]:void 0;return{v:1,anchorId:x,offsetPx:C.top-k.top,ts:Date.now(),indexHint:E,createdAt:T?RS(T):void 0}},[f,n,r]),v=S.useCallback(async w=>{if(o.current)return;const m=p();if(!m)return;const x=c.current;x&&x.anchorId===m.anchorId&&Math.abs(x.offsetPx-m.offsetPx)<=NI||(await II(w,m),c.current=m)},[p]),g=S.useCallback(w=>{if(!t||o.current)return;i.current&&clearTimeout(i.current);const m=t;i.current=setTimeout(()=>{v(m).catch(()=>{})},FI)},[t,v]);return S.useEffect(()=>{const w=t;return()=>{w&&(i.current&&(clearTimeout(i.current),i.current=null),v(w).catch(()=>{}))}},[t,v]),S.useLayoutEffect(()=>{if(!t)return;const w=n.current;if(!w||r.length===0||s.current.has(t))return;let m=!1;return jI(t).then(x=>{if(m||!x){m||s.current.add(t);return}const k=f.get(x.anchorId),C=typeof k=="number"?k:BI(x,r);if(C==null){s.current.add(t);return}i.current&&(clearTimeout(i.current),i.current=null);const E=++a.current;o.current=!0,d.current=!1,w.style.overflowAnchor="none";const T=()=>a.current!==E||d.current;DI({scrollEl:w,getAnchorElement:()=>WI(w,x.anchorId)??UI(w,C),offsetPx:x.offsetPx,isCancelled:T}).finally(()=>{a.current===E&&(o.current=!1,s.current.add(t),w.style.overflowAnchor="",v(t).catch(()=>{}))})}),()=>{m=!0}},[t,f,r,r.length,n,v]),{handleScroll:g}}const Tm=2,Pm=6,uu=150,XI="streaming-",YI="streaming-reasoning-",KI="streaming-status-",VI=e=>e.startsWith(XI)&&!e.startsWith(YI)&&!e.startsWith(KI),GI=({currentSessionId:e,isThinking:t,messagesListRef:n,bottomAnchorRef:r,renderableMessages:s})=>{const[o,a]=S.useState(!1),[i,c]=S.useState(!1),[d,f]=S.useState(!1),[p,v]=S.useState(0),g=S.useRef(!1),w=S.useRef(!1),m=S.useRef(!0),x=S.useRef(s.length),k=S.useRef(new Set),C=S.useRef(0),{handleScroll:E}=HI({currentSessionId:e,messagesListRef:n,renderableMessages:s}),T=S.useCallback(()=>{k.current.clear(),f(!1),v(0)},[]),P=S.useCallback(I=>{if(I<=0)return 0;const Y=k.current;if(Y.size===0)return I;let z=I;for(const D of Array.from(Y)){if(z<=0)break;Y.delete(D),z-=1}return z},[]),A=S.useCallback(()=>{const I=n.current;if(!I||s.length===0)return a(!1),c(!1),T(),null;const Y=Math.max(0,I.scrollHeight-I.scrollTop-I.clientHeight),z=Y<=uu,D=I.scrollTop<=uu;return a(!z),c(!D&&s.length>3),z&&(w.current=!0,T()),{atBottom:z,distanceFromBottom:Y}},[T,n,s.length]),O=S.useCallback(I=>{const Y=A();Y&&(Y.distanceFromBottom>uu?(g.current=!0,w.current=!1):Y.atBottom&&(g.current=!1,w.current=!0,T()),E(I))},[T,A,E]),$=S.useCallback(I=>{cancelAnimationFrame(C.current);const Y=n.current,z=r.current;if(!Y||!z||s.length===0)return;const D=(I==null?void 0:I.behavior)??"smooth";let ie=0,Q=Number.NaN;const ue=()=>{C.current=0,g.current=!1,w.current=!0,T(),A()},me=()=>{const V=n.current,ae=r.current;if(!V||!ae)return;const ve=Math.max(0,V.scrollHeight-V.scrollTop-V.clientHeight),re=ae.getBoundingClientRect(),le=V.getBoundingClientRect(),de=re.top-le.top,pe=!Number.isFinite(Q)||Math.abs(de-Q)>.5,Ae=ve>Tm||pe||ie===0;if(Ae&&ae.scrollIntoView({block:"end",behavior:ie===0?D:"auto"}),Q=de,ie+=1,ie<Pm&&Ae){C.current=requestAnimationFrame(me);return}ue()};C.current=requestAnimationFrame(me)},[r,T,n,A,s.length]),U=S.useCallback(()=>{if(!n.current)return;let Y=0;const z=()=>{A()},D=()=>{const ie=n.current;if(!ie)return;const Q=ie.scrollTop>Tm||Y===0;if(Q&&ie.scrollTo({top:0,behavior:"auto"}),Y+=1,Y<Pm&&Q){requestAnimationFrame(D);return}z()};requestAnimationFrame(D)},[n,A]),J=S.useCallback(()=>{g.current=!1,w.current=!0,T()},[T]);S.useEffect(()=>{const I=Y=>{var ve,re;const D=(ve=Y.detail)==null?void 0:ve.messageId;if(!D){console.error("No messageId provided for navigation");return}const ie=s.findIndex(le=>"message"in le&&le.message?le.message.id===D:"id"in le?le.id===D:!1);if(ie===-1){console.warn("Message not found for navigation:",D);return}const Q=s[ie],ue=Q&&"message"in Q?Q.message.id:Q&&"id"in Q?Q.id:D,me=document.getElementById(`message-${ue}`),V=Array.from(((re=n.current)==null?void 0:re.querySelectorAll("[data-chat-entry-id]"))||[]),ae=me||V.find(le=>le.dataset.chatEntryId===ue);if(!ae){console.warn("Message element not found for navigation:",D);return}ae.scrollIntoView({behavior:"smooth",block:"center"}),ae.classList.add("highlight-message"),setTimeout(()=>{ae.classList.remove("highlight-message")},2e3)};return window.addEventListener("navigate-to-message",I),()=>{window.removeEventListener("navigate-to-message",I)}},[n,s]);const ee=S.useRef(t);return S.useEffect(()=>{!ee.current&&t&&(J(),$()),ee.current=t},[t,J,$]),S.useEffect(()=>Et.subscribe(I=>{var Y;if(I.sessionId===e){if(g.current){(((Y=I.content)==null?void 0:Y.trim())??"")&&VI(I.messageId)&&(k.current.has(I.messageId)||(k.current.add(I.messageId),v(D=>D+1)),f(!0)),A();return}if(!I.content){A();return}$()}}),[e,A,$]),S.useEffect(()=>{const I=s.length,Y=x.current,z=I>Y;if(I===0){T(),A(),x.current=I;return}if(m.current){A(),m.current=!1,x.current=I;return}if(z&&g.current){const D=P(I-Y);f(!0),D>0&&v(ie=>ie+D)}!g.current&&z?$():A(),x.current=I},[T,P,A,s.length,$]),S.useEffect(()=>{const I=n.current;if(!I||typeof ResizeObserver>"u")return;let Y=0,z=!1;const D=()=>{cancelAnimationFrame(Y);const me=w.current;Y=requestAnimationFrame(()=>{if(z&&me&&!g.current){$({behavior:"auto"});return}A()})},ie=new ResizeObserver(()=>{z=!0,D()});ie.observe(I);const Q=I.firstElementChild;Q instanceof HTMLElement&&ie.observe(Q);const ue=r.current;return ue instanceof HTMLElement&&ie.observe(ue),D(),()=>{cancelAnimationFrame(Y),ie.disconnect()}},[r,e,n,A,s.length,$]),S.useEffect(()=>{if(!n.current||s.length===0){A();return}A();let Y=0;const z=requestAnimationFrame(()=>{A(),Y=requestAnimationFrame(()=>{A()})});return()=>{cancelAnimationFrame(z),cancelAnimationFrame(Y)}},[n,s.length,e,A]),S.useEffect(()=>{m.current=!0,g.current=!1,w.current=!1,x.current=0,T()},[T,e]),{handleMessagesScroll:O,hasUnreadActivity:d,resetUserScroll:J,scrollToBottom:$,scrollToTop:U,showScrollToBottom:o,showScrollToTop:i,unreadCount:p}};function JI(e){return"type"in e&&e.type==="tool_session"}function QI(e){return"type"in e&&e.type==="compression_divider"}const Em=e=>{const t=Date.parse(e||"");return Number.isFinite(t)?t:Number.MAX_SAFE_INTEGER},ZI=e=>"type"in e?e.createdAt:e.message.createdAt,eO=e=>!("type"in e)&&e.message.role==="system";function tO(e){return e.role==="assistant"&&"type"in e&&e.type==="tool_call"}function nO(e){return e.role==="assistant"&&"type"in e&&e.type==="tool_result"}const Mm=e=>(e??"").trim().toLowerCase()==="conclusion",rO=e=>{const t=(e??"").trim().toLowerCase();return t==="conclusion_with_options"||t==="exitplanmode"||t==="request_permissions"},sO=e=>{var t,n,r;return((n=(t=e.call.toolCalls)==null?void 0:t[0])==null?void 0:n.toolCallId)||((r=e.result)==null?void 0:r.toolCallId)||"tool-call-missing"},oO=(e,t)=>{var n;return e.call.id||e.callMessageId||e.resultMessageId||((n=e.result)==null?void 0:n.id)||`tool-message-missing-${t}`},aO=(e,t)=>`tool-session-${oO(e,t)}:${sO(e)}`;function iO(e){const t=[],n=new Map,r=new Set,s=(a,i)=>{const c=n.get(a)||[];c.push(i),n.set(a,c)},o=a=>{const i=n.get(a);if(!i||i.length===0)return;let c;for(;i.length>0&&!c;){const d=i.shift();d&&!d.result&&(c=d)}return i.length===0?n.delete(a):n.set(a,i),c};for(const a of e){if(tO(a)){const i=a.toolCalls||[];if(i.length===0){t.push(a);continue}i.forEach((c,d)=>{const f=c.toolCallId||`${a.id}-${d}`;if(Mm(c.toolName)){r.add(f);return}if(rO(c.toolName)){r.add(f);const w={...a,id:`${a.id}:tool-call:${d}:${f}`,toolCalls:[{...c,toolCallId:f}]};t.push(w);return}const v={call:{...a,id:`${a.id}:tool-call:${d}:${f}`,toolCalls:[{...c,toolCallId:f}]},callMessageId:a.id};s(f,v);const g=t[t.length-1];Array.isArray(g)?g.push(v):t.push([v])});continue}if(nO(a)){const i=a.toolCallId;if(i&&r.has(i)){r.delete(i),t.push(a);continue}if(Mm(a.toolName)){t.push(a);continue}const c=i?o(i):void 0;if(c)c.result=a,c.resultMessageId=a.id;else{const d=i||`orphan-tool-call:${a.id}`,p={call:{role:"assistant",type:"tool_call",id:`synthetic-tool-call:${a.id}`,createdAt:a.createdAt,toolCalls:[{toolCallId:d,toolName:(a.toolName||"").trim()||"tool",parameters:{},streamingOutput:""}],isCompressed:a.isCompressed,compressedEventId:a.compressedEventId},result:a,resultMessageId:a.id},v=t[t.length-1];Array.isArray(v)?v.push(p):t.push([p])}continue}t.push(a)}return t}const lO=(e,t)=>{var i;const{t:n}=qe(),r=S.useMemo(()=>{var d;const c=t.find(f=>f.role==="system");return c||((d=e==null?void 0:e.config)!=null&&d.baseSystemPrompt?{id:`system-prompt-${e.id}`,role:"system",content:e.config.baseSystemPrompt,createdAt:new Date(e.createdAt).toISOString()}:null)},[e,t]),s=S.useCallback(c=>!1,[]),o=S.useCallback(c=>{if(QI(c))return{type:"compression_divider",id:c.id,createdAt:c.createdAt,label:c.label};if(JI(c))return{type:"tool_session",id:c.id,sessionId:c.sessionId,tools:c.tools,createdAt:c.createdAt};const d=c.message.role==="user"?"flex-end":"flex-start";let f=c.messageType;if(!f&&c.message.role==="assistant"&&"type"in c.message){const p="type"in c.message?c.message.type:void 0;(p==="text"||p==="plan"||p==="question"||p==="tool_call"||p==="tool_result")&&(f=p)}return{type:"message",message:c.message,align:d,messageType:f}},[]),a=S.useMemo(()=>{var m;const c=t.filter(x=>{const k=x.role;return!(k!=="user"&&k!=="assistant"&&k!=="system"&&k!=="tool"||s(x))}),d=iO(c),f=[];d.forEach((x,k)=>{var T,P;if(Array.isArray(x)){const A=x[0];f.push({type:"tool_session",id:A?aO(A,k):`tool-session-unknown-${k}`,sessionId:(e==null?void 0:e.id)||"default",tools:x,createdAt:((T=A==null?void 0:A.call)==null?void 0:T.createdAt)||((P=A==null?void 0:A.result)==null?void 0:P.createdAt)||new Date().toISOString()});return}const C=x;let E;if(C.role==="assistant"&&"type"in C){const A="type"in C?C.type:void 0;(A==="text"||A==="plan"||A==="question"||A==="tool_call"||A==="tool_result")&&(E=A)}f.push({message:C,messageType:E})}),!c.some(x=>x.role==="system")&&r&&f.unshift({message:r});const v=((m=e==null?void 0:e.config)==null?void 0:m.compressionEvents)||[],g=f.findIndex(x=>!eO(x)),w=g===-1?f.length:g;for(const x of v){const k={type:"compression_divider",id:`compression-divider-${x.id}`,createdAt:x.createdAt,label:n("chat.compression.timelineDetail",{count:x.messagesCompressed,defaultValue:"{{count}} messages archived"})},C=Em(x.createdAt),E=f.findIndex((T,P)=>P>=w&&Em(ZI(T))>C);E===-1?f.push(k):f.splice(E,0,k)}return f},[(i=e==null?void 0:e.config)==null?void 0:i.compressionEvents,e==null?void 0:e.id,t,s,r,n]);return{systemPromptMessage:r,renderableMessages:a,convertRenderableEntry:o}},{Text:cO}=ot,uO=({visible:e,selectionMode:t,selectedCount:n,totalCount:r,paddingTop:s,paddingRight:o,paddingBottom:a,paddingLeft:i,maxWidth:c,onToggleSelectionMode:d,onSelectAll:f,onClear:p,onExportMarkdown:v,onExportPdf:g,t:w})=>e?l.jsx("div",{style:{paddingTop:s,paddingRight:o,paddingBottom:a,paddingLeft:i,maxWidth:c,margin:"0 auto",width:"100%"},children:t?l.jsxs(we,{align:"center",justify:"space-between",wrap:"wrap",gap:8,children:[l.jsx(cO,{type:"secondary",children:w("chat.selectionToolbar.selectedCount",{selected:n,total:r})}),l.jsxs(ze,{size:8,wrap:!0,children:[l.jsx(Ee,{size:"small",onClick:f,children:w("chat.selectionToolbar.selectAll")}),l.jsx(Ee,{size:"small",onClick:p,children:w("chat.selectionToolbar.clear")}),l.jsx(Ee,{size:"small",icon:l.jsx(to,{}),onClick:v,disabled:n===0,children:w("chat.selectionToolbar.exportMarkdown")}),l.jsx(Ee,{size:"small",type:"primary",icon:l.jsx(to,{}),onClick:g,disabled:n===0,children:w("chat.selectionToolbar.exportPdf")}),l.jsx(Ee,{size:"small",icon:l.jsx(ks,{}),onClick:d,children:w("chat.selectionToolbar.done")})]})]}):l.jsx(we,{justify:"flex-end",children:l.jsx(dn,{title:w("chat.selectionToolbar.selectMessages"),children:l.jsx(Ee,{"aria-label":w("chat.selectionToolbar.selectMessages"),icon:l.jsx(ey,{}),size:"small",onClick:d})})})}):null,dO=({visible:e,showScrollToTop:t,showScrollToBottom:n,hasUnreadActivity:r,unreadCount:s,onScrollToTop:o,onScrollToBottom:a,onResetUserScroll:i,t:c})=>!e||!t&&!n?null:l.jsx("div",{className:"chat-scroll-capsule-wrapper","data-testid":"chat-scroll-capsule-wrapper",children:l.jsxs("div",{className:"chat-scroll-capsule","data-testid":"chat-scroll-capsule",children:[t?l.jsx(Ee,{"data-testid":"chat-scroll-top-button",className:"chat-scroll-capsule__button",type:"text",icon:l.jsx("span",{"aria-hidden":"true",children:"↑"}),size:"small",onClick:o,children:c("chat.scroll.jumpToTop",{defaultValue:"Jump to top"})}):null,n?l.jsxs("span",{style:{display:"inline-flex"},children:[l.jsx("span",{style:{display:"inline-flex"},children:l.jsx(Ee,{"data-testid":"chat-scroll-bottom-button",className:`chat-scroll-capsule__button ${r?"chat-scroll-capsule__button--active":""}`,type:r?"primary":"text",icon:l.jsx("span",{"aria-hidden":"true",children:"↓"}),size:"small",onClick:()=>{i(),a()},children:r?c("chat.scroll.newMessagesWithCount",{count:s,defaultValue:s>0?"{{count}} new messages":"New messages"}):c("chat.scroll.backToLatest",{defaultValue:"Back to latest"})})}),r&&s>0?l.jsx("span",{className:"chat-scroll-capsule__count","data-testid":"chat-scroll-unread-count",children:s}):null]}):null]})}),fO=rt.lazy(()=>Lt(()=>import("./index-BxpXZ_sE.js"),__vite__mapDeps([16,1,2,3,4,5,6,17]),import.meta.url).then(e=>({default:e.ContextBar}))),hO=({sessionId:e,auxReady:t,maxWidth:n,paddingLeft:r,paddingRight:s,workspaceState:o,inspectorEligible:a,planMode:i,onRequestOpenInspector:c,t:d})=>{const{token:f}=st.useToken();if(!e)return null;const p=i?l.jsx(dn,{title:d("chat.planMode.tooltip",{status:i.status,mode:i.pre_permission_mode,defaultValue:"Plan mode active · phase: {{status}} · previous mode: {{mode}}"}),children:l.jsx(Ye,{color:"purple",icon:l.jsx(qg,{}),style:{marginInlineEnd:0},children:d("chat.planMode.active",{defaultValue:"Plan mode"})})}):null,v=a&&o.inspectorTogglePlacement==="meta_strip"&&!!c,g=!!(p||o.isMultiPane||v);return l.jsxs(l.Fragment,{children:[t?l.jsx(rt.Suspense,{fallback:null,children:l.jsx(fO,{sessionId:e})}):null,g?l.jsx("div",{"data-conversation-meta-strip":!0,"data-inspector-toggle-placement":o.inspectorTogglePlacement,style:{paddingTop:f.paddingXS,paddingRight:s,paddingBottom:0,paddingLeft:r,maxWidth:n,margin:"0 auto",width:"100%"},children:l.jsxs(we,{align:"center",justify:"space-between",gap:f.marginXS,wrap:!0,children:[l.jsxs(we,{align:"center",gap:f.marginXS,wrap:!0,children:[p,o.isMultiPane?l.jsx(Ye,{color:"blue",style:{marginInlineEnd:0},children:d("chat.workspace.multiPane",{count:o.leafCount,defaultValue:"{{count}} panes"})}):null]}),v&&c?l.jsx(Ee,{size:"small",icon:l.jsx(Md,{}),onClick:c,"aria-label":d("chat.workspace.toggleInspector",{defaultValue:"Open inspector"}),children:o.inspectorMode==="drawer"?d("chat.workspace.openInspector",{defaultValue:"Inspector"}):d("chat.workspace.toggleInspector",{defaultValue:"Inspector"})}):null]})}):null]})},Tf=({isEmbedded:e,leafCount:t,isMobileViewport:n})=>{const r=Number.isFinite(t)&&t>0?Math.floor(t):1,s=r>1;return{isEmbedded:e,leafCount:r,isMultiPane:s,isMobileViewport:n,inspectorMode:n||s?"drawer":"rail",inspectorTogglePlacement:s&&!n?"pane_header":"meta_strip"}},pO=rt.lazy(()=>Lt(()=>import("./index-DL-W0HGE.js"),__vite__mapDeps([18,1,2,3,4,5,6,19]),import.meta.url).then(e=>({default:e.QuestionDialog}))),{useToken:mO}=st,{useBreakpoint:gO}=zl,yO=e=>{const{t}=kt;return e.role==="user"?t("chat.view.roleUser"):e.role==="assistant"?t("chat.view.roleAssistant"):e.role==="system"?t("chat.view.roleSystem"):t("chat.view.roleDefault")},AS=e=>{const t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()},vO=e=>e.map(({message:t,text:n},r)=>{const s=yO(t),o=AS(t.createdAt);return[`## ${r+1}. ${s} · ${o}`,"",n].join(`
241
241
  `)}).join(`
242
242
 
243
243
  ---
244
244
 
245
- `),Rm=({sessionId:e,embedded:t=!1,paneCount:n=1,auxReady:r=!1,sessionDiffSummary:s=null,workspaceState:o,inspectorEligible:a=!1,onRequestOpenInspector:i})=>{var Es,Wn,Cn,tr,nr;const c=n,{message:d}=Tn.useApp(),{t:f}=qe(),p=Z(Ce=>e??Ce.currentSessionId),v=Z(mr(p)),g=Z(Ce=>Ce.deleteMessage),w=Z(Ce=>Ce.loadChatHistory),m=Z(Ce=>p?Ce.tokenUsages[p]??null:null),x=Z(Ce=>p?Ce.truncationOccurred[p]??!1:!1),k=Z(Ce=>p?Ce.segmentsRemoved[p]??0:0),C=S.useMemo(()=>(v==null?void 0:v.messages)||[],[v]),E=Z(si(p));S.useEffect(()=>{if(!p)return;const Ce=Z.getState().chats.find(Xe=>Xe.id===p);Ce&&Array.isArray(Ce.messages)&&Ce.messages.length>0||w(p)},[p,w]);const T=(v==null?void 0:v.messageCount)??0,P=((Es=v==null?void 0:v.messages)==null?void 0:Es.length)??0;S.useEffect(()=>{if(!p)return;T-P>0&&w(p,{mode:"monotonic"})},[p,T,P,w]);const A=E,O=S.useCallback(Ce=>{if(Ce.success)return null;switch(Ce.reason){case"session_not_found":case"message_not_found":case"backend_not_found":return f("chat.messageActions.deleteNotFound");case"session_running":return f("chat.messageActions.deleteConflict");default:return Ce.errorMessage||f("chat.messageActions.deleteFailed")}},[f]),$=S.useCallback(async(Ce,Xe)=>{if(!p){const Pt={success:!1,sessionId:"",messageId:Ce,reason:"session_not_found"};return(Xe==null?void 0:Xe.notify)!==!1&&d.error(O(Pt)),Pt}const yt=await g(p,Ce);return!yt.success&&(Xe==null?void 0:Xe.notify)!==!1&&d.error(O(yt)),yt},[p,g,d,O]),U=S.useCallback(async Ce=>{const Xe=Array.from(new Set(Ce.map(nn=>nn.trim()).filter(Boolean)));if(Xe.length===0)return;const Pt=(await Promise.all(Xe.map(nn=>$(nn,{notify:!1})))).filter(nn=>!nn.success);if(Pt.length!==0){if(Pt.length===1){d.error(O(Pt[0]));return}d.error(f("chat.messageActions.deleteBatchFailed",{failed:Pt.length,total:Xe.length}))}},[$,d,O,f]),J=S.useRef(null),ee=S.useRef(null),{token:I}=mO(),Y=gO(),z=S.useMemo(()=>({xs:Y.xs}),[Y.xs]),D=Wl(),[ie,Q]=S.useState(null),[ue,me]=S.useState(!1),[V,ae]=S.useState(new Set),ve=ct(Ce=>Ce.sidebar.collapsed),re=r,le=s,de=()=>t||Y.xs||Y.sm?"100%":Y.md?"90%":Y.lg?"85%":"1024px",pe=()=>{let Ce;return t?Ce=I.paddingSM:Y.xs?Ce=I.paddingXS:Y.sm?Ce=I.paddingSM:Ce=I.padding,!t&&ve&&!D?Ce+18:Ce},Ae=S.useMemo(()=>o||Tf({isEmbedded:t,leafCount:c,isMobileViewport:D}),[t,D,c,o]);S.useEffect(()=>{Q(null),me(!1),ae(new Set)},[p]);const{systemPromptMessage:Me,renderableMessages:F,convertRenderableEntry:L}=lO(v,C),fe=C.length>0,Se=!!(ie!=null&&ie.content),De=!!Me,We=!!p&&(fe||Se),Ge=0,He=S.useMemo(()=>{if(!(ie!=null&&ie.content))return F;const Ce={message:{id:ie.id,role:"user",content:ie.content,createdAt:ie.createdAt},messageType:"text"};return[...F,Ce]},[F,ie]),at=S.useMemo(()=>{const Ce=[];for(const Xe of He){if(!("message"in Xe))continue;const yt=Qv(Xe.message).trim();yt&&Ce.push({id:Xe.message.id,message:Xe.message,text:yt})}return Ce},[He]),St=S.useMemo(()=>new Set(at.map(Ce=>Ce.id)),[at]);S.useEffect(()=>{ae(Ce=>{let Xe=!1;const yt=new Set;for(const Pt of Ce)St.has(Pt)?yt.add(Pt):Xe=!0;return Xe?yt:Ce})},[St]);const Ot=S.useMemo(()=>at.filter(Ce=>V.has(Ce.id)),[at,V]),xt=at.length>0,Fe=S.useCallback(Ce=>{ae(Xe=>{const yt=new Set(Xe);return yt.has(Ce)?yt.delete(Ce):yt.add(Ce),yt})},[]),lt=S.useCallback(()=>{if(!xt){d.warning(f("chat.view.noExportableMessages"));return}me(!0)},[d,xt,f]),_t=S.useCallback(()=>{me(!1),ae(new Set)},[]),Qt=S.useCallback(()=>{if(ue){_t();return}lt()},[lt,_t,ue]),At=S.useCallback(()=>{ae(new Set(at.map(Ce=>Ce.id)))},[at]),Tt=S.useCallback(()=>{ae(new Set)},[]),Ht=S.useCallback(async Ce=>{var Pt;if(!p){d.warning(f("chat.view.noActiveChat"));return}if(Ot.length===0){d.warning(f("chat.view.selectAtLeastOneMessage"));return}const Xe=vO(Ot),yt=await Zv.exportMessageText({format:Ce,content:Xe,sessionId:p,filenamePrefix:`chat-messages-${Ot.length}`});if(yt.success){d.success(f("chat.view.exportSaved",{filename:yt.filename}));return}(Pt=yt.error)!=null&&Pt.toLowerCase().includes("cancel")||d.error(yt.error||f("chat.view.exportFailed"))},[d,p,Ot,f]);S.useEffect(()=>{if(typeof window>"u")return;const Ce=Xe=>{var nn;const Pt=((nn=Xe.detail)==null?void 0:nn.sessionId)??null;!p||Pt!==p||Qt()};return window.addEventListener(Hu,Ce),()=>{window.removeEventListener(Hu,Ce)}},[p,Qt]);const $n=(Wn=v==null?void 0:v.config)==null?void 0:Wn.tokenUsage,Zt=m||$n||null,he=(Cn=v==null?void 0:v.config)==null?void 0:Cn.truncationOccurred,Ne=x||he||!1,Ie=(tr=v==null?void 0:v.config)==null?void 0:tr.segmentsRemoved,Je=k||Ie||0,Wt=S.useMemo(()=>{var Xe;const Ce=(Xe=v==null?void 0:v.config)==null?void 0:Xe.compressionEvents;return!Ce||Ce.length===0?null:Ce.reduce((yt,Pt)=>{const nn=Date.parse(yt.createdAt),gr=Date.parse(Pt.createdAt);return Number.isFinite(nn)?Number.isFinite(gr)&&gr>nn?Pt:yt:Pt})},[(nr=v==null?void 0:v.config)==null?void 0:nr.compressionEvents]),yn=I.marginMD,{handleMessagesScroll:Oe,hasUnreadActivity:Dt,resetUserScroll:en,scrollToBottom:tn,scrollToTop:Re,showScrollToBottom:Zn,showScrollToTop:Tr,unreadCount:Pr}=GI({currentSessionId:p,isThinking:A,messagesListRef:J,bottomAnchorRef:ee,renderableMessages:He}),Vr=!!We&&xt&&(!t||ue),er=Wt?l.jsx(dn,{title:f("chat.compression.tooltip",{count:Wt.messagesCompressed,time:AS(Wt.createdAt),defaultValue:"Latest compression at {{time}}: {{count}} messages archived"}),children:l.jsx(Ye,{color:"gold",icon:l.jsx(Zg,{}),style:{marginInlineEnd:0,whiteSpace:"nowrap"},children:f("chat.compression.archivedShort",{count:Wt.messagesCompressed,defaultValue:"{{count}} archived"})})}):null,po=Zt&&Zt.budgetLimit>0?l.jsxs("div",{style:{display:"inline-flex",alignItems:"center",gap:I.marginXS},children:[l.jsx(MI,{usage:Zt,showDetails:!0,size:"small"}),Ne&&l.jsxs("span",{style:{fontSize:11,color:I.colorTextSecondary,whiteSpace:"nowrap"},children:["(",f("components.tokenUsage.truncatedBadge",{count:Je,defaultValue:"{{count}} truncated"}),")"]}),er]}):er?l.jsx("div",{style:{display:"inline-flex",alignItems:"center",gap:I.marginXS},children:er}):null;return l.jsx(Hs,{role:"region","aria-label":f("chat.view.chatRegion","Chat conversation"),style:{flex:1,minHeight:0,height:"100%",background:I.colorBgContainer,position:"relative",overflow:"hidden"},children:l.jsxs(we,{vertical:!0,style:{flex:1,minHeight:0,height:"100%"},children:[l.jsx(hO,{sessionId:p,auxReady:re,maxWidth:de(),paddingLeft:pe(),paddingRight:pe(),workspaceState:Ae,inspectorEligible:a,planMode:(v==null?void 0:v.planMode)??null,onRequestOpenInspector:i,t:f}),l.jsx(uO,{visible:Vr,selectionMode:ue,selectedCount:Ot.length,totalCount:at.length,paddingTop:I.paddingXS,paddingRight:pe()+Ge,paddingBottom:0,paddingLeft:pe(),maxWidth:de(),onToggleSelectionMode:Qt,onSelectAll:At,onClear:Tt,onExportMarkdown:()=>{Ht("markdown")},onExportPdf:()=>{Ht("pdf")},t:f}),l.jsx(TI,{currentChat:v,currentSessionId:p,convertRenderableEntry:L,handleDeleteMessage:$,handleDeleteToolMessages:U,handleMessagesScroll:Oe,hasSystemPrompt:De,messagesListRef:J,bottomAnchorRef:ee,renderableMessages:He,rowGap:yn,showMessagesView:!!We,screens:z,workflowDraftId:ie==null?void 0:ie.id,isThinking:A,padding:pe(),selectionMode:ue,selectedMessageIds:V,selectableMessageIds:St,onToggleMessageSelection:Fe}),l.jsxs("div",{className:`chat-bottom-stack ${We?"":"is-empty-centered"}`,"data-testid":"chat-bottom-stack",children:[l.jsx(dO,{visible:We,showScrollToTop:Tr,showScrollToBottom:Zn,hasUnreadActivity:Dt,unreadCount:Pr,onScrollToTop:Re,onScrollToBottom:tn,onResetUserScroll:en,t:f}),p&&re&&l.jsx("div",{style:{paddingTop:I.paddingXS,paddingRight:pe(),paddingBottom:0,paddingLeft:pe(),maxWidth:de(),margin:"0 auto",width:"100%"},children:l.jsx(rt.Suspense,{fallback:null,children:l.jsx(pO,{sessionId:p},p)})}),l.jsx(wE,{sessionId:p,isCenteredLayout:!We,maxWidth:We?de():"100%",onWorkflowDraftChange:Q,showMessagesView:!!We,sessionDiffSummary:le,contextUsageIndicator:po,showSessionDiffCard:!1})]})]})})},gd="lotus_experience_mode_v1",TL=new Set(["skills","hooks","masking","env-vars","metrics","sessions","config"]);function Am(){try{const e=localStorage.getItem(gd);if(e==="simple"||e==="advanced")return e}catch{}return"advanced"}const jS=Xr(e=>({mode:Am(),isAdvanced:Am()==="advanced",setMode:t=>{try{localStorage.setItem(gd,t)}catch{}e({mode:t,isAdvanced:t==="advanced"})},toggleMode:()=>e(t=>{const n=t.mode==="simple"?"advanced":"simple";try{localStorage.setItem(gd,n)}catch{}return{mode:n,isAdvanced:n==="advanced"}})})),bO={low:"Low",medium:"Medium",high:"High",xhigh:"Extra high",max:"Max"},SO=rt.lazy(()=>Lt(()=>import("./index-DTwjPw3W.js"),__vite__mapDeps([20,1,2,3,21,4,5,6,22]),import.meta.url).then(e=>({default:e.SessionSummaryCard}))),wO=rt.lazy(()=>Lt(()=>import("./index-IUnDhddK.js"),__vite__mapDeps([23,1,2,3,4,5,6]),import.meta.url).then(e=>({default:e.TodoList}))),xO=rt.lazy(()=>Lt(()=>import("./SubAgentsPanel-Cv5BQdXg.js"),__vite__mapDeps([24,1,2,3,4,5,6]),import.meta.url).then(e=>({default:e.SubAgentsPanel}))),{Title:_O,Text:fr}=ot,jm={active:{label:"Active",color:"processing"},complete:{label:"Complete",color:"success"},blocked:{label:"Blocked",color:"error"},need_input:{label:"Needs input",color:"warning"},budget_limited:{label:"Budget limited",color:"warning"}},CO=({sessionId:e})=>{var p,v,g,w,m,x,k;const{token:t}=st.useToken(),n=Z(mr(e)),r=Z(C=>C.setInputContent),s=((p=n==null?void 0:n.config)==null?void 0:p.goldConfig)??null,o=((v=n==null?void 0:n.config)==null?void 0:v.goalState)??null,a=((g=(s==null?void 0:s.goal)??(s==null?void 0:s.evaluation_prompt))==null?void 0:g.trim())??"",i=(s==null?void 0:s.enabled)===!0,c=a.length>0,d=((w=o==null?void 0:o.eval_history)==null?void 0:w[o.eval_history.length-1])??null;if(!n||!s||!c&&!i)return null;const f=()=>{const C=c?`/goal ${a}`:"/goal ";r(e,C),typeof window<"u"&&window.dispatchEvent(new CustomEvent(Tl,{detail:{sessionId:e}}))};return l.jsx("div",{"data-testid":"session-goal-card",style:{padding:`${t.paddingXXS}px ${t.paddingXS}px`,borderRadius:t.borderRadiusLG,border:`1px solid ${i?t.colorWarningBorder:t.colorBorderSecondary}`,background:i?t.colorWarningBg:t.colorFillQuaternary},children:l.jsxs(we,{vertical:!0,gap:4,style:{width:"100%",minWidth:0},children:[l.jsxs(we,{align:"center",justify:"space-between",gap:8,children:[l.jsxs(we,{align:"center",gap:6,style:{minWidth:0},children:[l.jsx(ix,{style:{color:i?t.colorWarning:t.colorTextSecondary}}),l.jsx(fr,{strong:!0,style:{fontSize:12},children:"Goal"})]}),l.jsx(Ee,{size:"small",type:"text",onClick:f,style:{paddingInline:6},children:"Edit /goal"})]}),l.jsx(ol,{items:[i?"Enabled":"Disabled",s.auto_answer_enabled?"Auto-answer":null,s.auto_continue_enabled?"Auto-continue":null],block:!0}),l.jsx(fr,{style:{fontSize:12,lineHeight:1.45,color:c?t.colorText:t.colorTextSecondary,whiteSpace:"pre-wrap"},children:c?a:"Use /goal <prompt> in the composer to set a session goal."}),o?l.jsxs(we,{vertical:!0,gap:4,style:{marginTop:2},children:[l.jsxs(we,{align:"center",gap:6,wrap:"wrap",children:[l.jsx(Ye,{color:((m=jm[o.status])==null?void 0:m.color)??"default",style:{marginInlineEnd:0},children:((x=jm[o.status])==null?void 0:x.label)??o.status}),o.continuation_count>0?l.jsxs(fr,{type:"secondary",style:{fontSize:11},children:[o.continuation_count," continuation",o.continuation_count===1?"":"s"]}):null,(k=o.eval_history)!=null&&k.length?l.jsxs(fr,{type:"secondary",style:{fontSize:11},children:[o.eval_history.length," double-check",o.eval_history.length===1?"":"s"]}):null]}),d?l.jsx(fr,{type:"secondary",style:{fontSize:11,lineHeight:1.4,whiteSpace:"pre-wrap"},children:`Last check [${d.checkpoint}] ${d.decision}/${d.confidence}: ${d.reasoning}`}):null]}):null]})})},kO=({sessionId:e})=>{var g,w;const{token:t}=st.useToken(),{t:n}=qe(),r=Z(mr(e)),s=mt(m=>m.providerInstances),o=r==null?void 0:r.config,a=((g=o==null?void 0:o.model_ref)==null?void 0:g.model)??(o==null?void 0:o.model)??null,i=((w=o==null?void 0:o.model_ref)==null?void 0:w.provider)??null,c=S.useMemo(()=>{if(!i)return null;const m=s.find(x=>x.id===i);return m?m.label||m.id:gP[i]??i},[i,s]);if(!r||!a)return null;const d=(o==null?void 0:o.reasoningEffort)??null,f=d?bO[d]??d:"Provider default",p=(o==null?void 0:o.agentRole)??null,v=[{label:"Model",value:a},...c?[{label:"Provider",value:c}]:[],{label:"Reasoning",value:f,muted:!d},...p?[{label:"Role",value:p}]:[]];return l.jsx("div",{"data-testid":"session-config-card",style:{padding:`${t.paddingXXS}px ${t.paddingXS}px`,borderRadius:t.borderRadiusLG,border:`1px solid ${t.colorBorderSecondary}`,background:t.colorFillQuaternary},children:l.jsxs(we,{vertical:!0,gap:4,style:{width:"100%",minWidth:0},children:[l.jsxs(we,{align:"center",gap:6,style:{minWidth:0},children:[l.jsx(kd,{style:{color:t.colorTextSecondary}}),l.jsx(fr,{strong:!0,style:{fontSize:12},children:n("inspector.configuration","Configuration")})]}),l.jsx(we,{vertical:!0,gap:2,style:{width:"100%",minWidth:0},children:v.map(m=>l.jsxs(we,{align:"center",justify:"space-between",gap:8,children:[l.jsx(fr,{type:"secondary",style:{fontSize:12,flexShrink:0},children:m.label}),l.jsx(fr,{style:{fontSize:12,textAlign:"right",color:m.muted?t.colorTextTertiary:t.colorText,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:m.value,children:m.value})]},m.label))})]})})},TO=({sessionId:e,auxReady:t,showMessagesView:n,shouldShowTaskPanel:r,hasSubAgents:s,sessionDiffSummary:o})=>{var v,g,w,m,x,k;const{token:a}=st.useToken(),i=jS(C=>C.isAdvanced),c=Z(mr(e)),d=!!((v=c==null?void 0:c.config)!=null&&v.goldConfig&&((((w=(g=c.config.goldConfig.goal??c.config.goldConfig.evaluation_prompt)==null?void 0:g.trim())==null?void 0:w.length)??0)>0||c.config.goldConfig.enabled===!0)),f=!!((x=(m=c==null?void 0:c.config)==null?void 0:m.model_ref)!=null&&x.model||(k=c==null?void 0:c.config)!=null&&k.model),p=S.useMemo(()=>[{key:"goal",title:"Goal",showTitle:!1,visible:d,node:l.jsx(CO,{sessionId:e})},{key:"config",title:"Configuration",showTitle:!1,visible:f,node:l.jsx(kO,{sessionId:e})},{key:"overview",title:"Overview",showTitle:!1,visible:i&&n,node:t?l.jsx(rt.Suspense,{fallback:null,children:l.jsx(SO,{sessionId:e,compact:!0})}):null},{key:"tasks",title:"Tasks",showTitle:!1,visible:r,node:t?l.jsx(rt.Suspense,{fallback:null,children:l.jsx(wO,{sessionId:e,initialCollapsed:!1,compact:!0})}):null},{key:"agents",title:"Sub-agents",showTitle:!1,visible:s,node:t?l.jsx(rt.Suspense,{fallback:null,children:l.jsx(xO,{parentSessionId:e,compact:!0})}):null},{key:"diffs",title:"Diffs",showTitle:!1,visible:!!o,node:l.jsx(mv,{sessionDiffSummary:o,sessionId:e,compact:!0})}].filter(C=>C.visible),[t,f,d,s,i,o,e,r,n]);return p.length===0?l.jsx(we,{vertical:!0,align:"center",justify:"center",style:{minHeight:180,color:a.colorTextSecondary,padding:a.paddingLG,textAlign:"center"},children:l.jsx(fr,{type:"secondary",children:"No session details available yet."})}):l.jsx(we,{vertical:!0,gap:2,style:{width:"100%",minWidth:0},children:p.map((C,E)=>l.jsx("section",{style:{width:"100%",minWidth:0,paddingTop:E===0?0:6,borderTop:E===0?"none":`1px solid ${a.colorBorderSecondary}`},children:C.showTitle?l.jsxs(we,{vertical:!0,gap:6,style:{width:"100%",minWidth:0},children:[l.jsx(_O,{level:5,style:{margin:0,fontSize:a.fontSizeLG},children:C.title}),C.node]}):C.node},C.key))})},Im=({sessionId:e,auxReady:t,mode:n,open:r,onOpenChange:s,showMessagesView:o,shouldShowTaskPanel:a,hasSubAgents:i,sessionDiffSummary:c})=>{const{token:d}=st.useToken(),{t:f}=qe(),p=ct(m=>m.inspector.widthPx),v=ct(m=>m.inspector.minWidthPx),g=ct(m=>m.inspector.maxWidthPx);if(!e)return null;const w=l.jsx(TO,{sessionId:e,auxReady:t,showMessagesView:o,shouldShowTaskPanel:a,hasSubAgents:i,sessionDiffSummary:c});return n==="drawer"?l.jsx(Bl,{title:f("inspector.title","Inspector"),placement:"right",open:r,onClose:()=>s(!1),width:p,children:w}):r?l.jsxs("aside",{"data-session-inspector-pane":!0,style:{width:"100%",minWidth:v,maxWidth:g,height:"100%",minHeight:0,borderLeft:`1px solid ${d.colorBorderSecondary}`,background:d.colorBgLayout,overflow:"auto"},children:[l.jsxs(we,{align:"center",justify:"space-between",style:{position:"sticky",top:0,zIndex:1,padding:`6px ${d.paddingSM}px`,borderBottom:`1px solid ${d.colorBorderSecondary}`,background:d.colorBgLayout},children:[l.jsxs(we,{align:"center",gap:d.marginXS,children:[l.jsx(Md,{}),l.jsx(fr,{strong:!0,children:f("inspector.title","Inspector")})]}),l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(ks,{}),"aria-label":"Close inspector",onClick:()=>s(!1)})]}),l.jsx("div",{style:{padding:`6px ${d.paddingSM}px ${d.paddingSM}px`,minWidth:0},children:w})]}):null},PO=({sessionId:e,embedded:t=!1,paneCount:n=1,workspaceState:r})=>{var D,ie,Q;const s=n,o=Wl(),a=Z(ue=>e??ue.currentSessionId),i=Z(mr(a)),c=S.useMemo(()=>(i==null?void 0:i.messages)||[],[i]),d=Z(ue=>ue.loadTaskList),f=jS(ue=>ue.isAdvanced),p=S.useMemo(()=>!a||!i?a:i.kind==="child"&&(i.parentSessionId||i.rootSessionId)||a,[i,a]),v=Z(ue=>p?!!ue.taskLists[p]:!1),g=Z(si(a)),w=S.useMemo(()=>!a||!i?!1:!!(v||i.kind==="child"||g),[i,v,g,a]),m=Z(ue=>{if(!a)return!1;const me=Ul(a)(ue);return Object.keys(me).length>0?!0:ue.chats.some(V=>V.kind==="child"&&V.parentSessionId===a)});S.useEffect(()=>{!p||v||w&&d(p).catch(ue=>{console.warn(`[SessionWorkspaceShell] Failed to load task list for ${p}:`,ue)})},[p,v,w,d]);const x=S.useMemo(()=>{var re;if(!c||c.length===0)return null;const ue=new Map;let me=0,V=0,ae=0;for(const le of c){if(!xv(le))continue;const de=((re=le.result)==null?void 0:re.result)??"",pe=co(de),Ae=Gd(de);if(!pe||!Ae)continue;ae+=1,me+=Ae.added,V+=Ae.removed;const Me=ue.get(pe.file_path);Me?(Me.added+=Ae.added,Me.removed+=Ae.removed,Me.diffChunks.push(pe.diff.unified),Me.truncated=Me.truncated||!!pe.diff.truncated,Me.toolCount+=1,Me.workspace=Me.workspace??pe.workspace):ue.set(pe.file_path,{added:Ae.added,removed:Ae.removed,diffChunks:[pe.diff.unified],truncated:!!pe.diff.truncated,toolCount:1,workspace:pe.workspace})}if(ue.size===0)return null;const ve=Array.from(ue.entries()).map(([le,de])=>({filePath:le,added:de.added,removed:de.removed,unifiedDiff:de.diffChunks.join(`
245
+ `),Rm=({sessionId:e,embedded:t=!1,paneCount:n=1,auxReady:r=!1,sessionDiffSummary:s=null,workspaceState:o,inspectorEligible:a=!1,onRequestOpenInspector:i})=>{var Es,Wn,Cn,tr,nr;const c=n,{message:d}=Tn.useApp(),{t:f}=qe(),p=Z(Ce=>e??Ce.currentSessionId),v=Z(mr(p)),g=Z(Ce=>Ce.deleteMessage),w=Z(Ce=>Ce.loadChatHistory),m=Z(Ce=>p?Ce.tokenUsages[p]??null:null),x=Z(Ce=>p?Ce.truncationOccurred[p]??!1:!1),k=Z(Ce=>p?Ce.segmentsRemoved[p]??0:0),C=S.useMemo(()=>(v==null?void 0:v.messages)||[],[v]),E=Z(si(p));S.useEffect(()=>{if(!p)return;const Ce=Z.getState().chats.find(Xe=>Xe.id===p);Ce&&Array.isArray(Ce.messages)&&Ce.messages.length>0||w(p)},[p,w]);const T=(v==null?void 0:v.messageCount)??0,P=((Es=v==null?void 0:v.messages)==null?void 0:Es.length)??0;S.useEffect(()=>{if(!p)return;T-P>0&&w(p,{mode:"monotonic"})},[p,T,P,w]);const A=E,O=S.useCallback(Ce=>{if(Ce.success)return null;switch(Ce.reason){case"session_not_found":case"message_not_found":case"backend_not_found":return f("chat.messageActions.deleteNotFound");case"session_running":return f("chat.messageActions.deleteConflict");default:return Ce.errorMessage||f("chat.messageActions.deleteFailed")}},[f]),$=S.useCallback(async(Ce,Xe)=>{if(!p){const Pt={success:!1,sessionId:"",messageId:Ce,reason:"session_not_found"};return(Xe==null?void 0:Xe.notify)!==!1&&d.error(O(Pt)),Pt}const yt=await g(p,Ce);return!yt.success&&(Xe==null?void 0:Xe.notify)!==!1&&d.error(O(yt)),yt},[p,g,d,O]),U=S.useCallback(async Ce=>{const Xe=Array.from(new Set(Ce.map(nn=>nn.trim()).filter(Boolean)));if(Xe.length===0)return;const Pt=(await Promise.all(Xe.map(nn=>$(nn,{notify:!1})))).filter(nn=>!nn.success);if(Pt.length!==0){if(Pt.length===1){d.error(O(Pt[0]));return}d.error(f("chat.messageActions.deleteBatchFailed",{failed:Pt.length,total:Xe.length}))}},[$,d,O,f]),J=S.useRef(null),ee=S.useRef(null),{token:I}=mO(),Y=gO(),z=S.useMemo(()=>({xs:Y.xs}),[Y.xs]),D=Wl(),[ie,Q]=S.useState(null),[ue,me]=S.useState(!1),[V,ae]=S.useState(new Set),ve=ct(Ce=>Ce.sidebar.collapsed),re=r,le=s,de=()=>t||Y.xs||Y.sm?"100%":Y.md?"90%":Y.lg?"85%":"1024px",pe=()=>{let Ce;return t?Ce=I.paddingSM:Y.xs?Ce=I.paddingXS:Y.sm?Ce=I.paddingSM:Ce=I.padding,!t&&ve&&!D?Ce+18:Ce},Ae=S.useMemo(()=>o||Tf({isEmbedded:t,leafCount:c,isMobileViewport:D}),[t,D,c,o]);S.useEffect(()=>{Q(null),me(!1),ae(new Set)},[p]);const{systemPromptMessage:Me,renderableMessages:F,convertRenderableEntry:L}=lO(v,C),fe=C.length>0,Se=!!(ie!=null&&ie.content),De=!!Me,We=!!p&&(fe||Se),Ge=0,He=S.useMemo(()=>{if(!(ie!=null&&ie.content))return F;const Ce={message:{id:ie.id,role:"user",content:ie.content,createdAt:ie.createdAt},messageType:"text"};return[...F,Ce]},[F,ie]),at=S.useMemo(()=>{const Ce=[];for(const Xe of He){if(!("message"in Xe))continue;const yt=Qv(Xe.message).trim();yt&&Ce.push({id:Xe.message.id,message:Xe.message,text:yt})}return Ce},[He]),St=S.useMemo(()=>new Set(at.map(Ce=>Ce.id)),[at]);S.useEffect(()=>{ae(Ce=>{let Xe=!1;const yt=new Set;for(const Pt of Ce)St.has(Pt)?yt.add(Pt):Xe=!0;return Xe?yt:Ce})},[St]);const Ot=S.useMemo(()=>at.filter(Ce=>V.has(Ce.id)),[at,V]),xt=at.length>0,Fe=S.useCallback(Ce=>{ae(Xe=>{const yt=new Set(Xe);return yt.has(Ce)?yt.delete(Ce):yt.add(Ce),yt})},[]),lt=S.useCallback(()=>{if(!xt){d.warning(f("chat.view.noExportableMessages"));return}me(!0)},[d,xt,f]),_t=S.useCallback(()=>{me(!1),ae(new Set)},[]),Qt=S.useCallback(()=>{if(ue){_t();return}lt()},[lt,_t,ue]),At=S.useCallback(()=>{ae(new Set(at.map(Ce=>Ce.id)))},[at]),Tt=S.useCallback(()=>{ae(new Set)},[]),Ht=S.useCallback(async Ce=>{var Pt;if(!p){d.warning(f("chat.view.noActiveChat"));return}if(Ot.length===0){d.warning(f("chat.view.selectAtLeastOneMessage"));return}const Xe=vO(Ot),yt=await Zv.exportMessageText({format:Ce,content:Xe,sessionId:p,filenamePrefix:`chat-messages-${Ot.length}`});if(yt.success){d.success(f("chat.view.exportSaved",{filename:yt.filename}));return}(Pt=yt.error)!=null&&Pt.toLowerCase().includes("cancel")||d.error(yt.error||f("chat.view.exportFailed"))},[d,p,Ot,f]);S.useEffect(()=>{if(typeof window>"u")return;const Ce=Xe=>{var nn;const Pt=((nn=Xe.detail)==null?void 0:nn.sessionId)??null;!p||Pt!==p||Qt()};return window.addEventListener(Hu,Ce),()=>{window.removeEventListener(Hu,Ce)}},[p,Qt]);const $n=(Wn=v==null?void 0:v.config)==null?void 0:Wn.tokenUsage,Zt=m||$n||null,he=(Cn=v==null?void 0:v.config)==null?void 0:Cn.truncationOccurred,Ne=x||he||!1,Ie=(tr=v==null?void 0:v.config)==null?void 0:tr.segmentsRemoved,Je=k||Ie||0,Wt=S.useMemo(()=>{var Xe;const Ce=(Xe=v==null?void 0:v.config)==null?void 0:Xe.compressionEvents;return!Ce||Ce.length===0?null:Ce.reduce((yt,Pt)=>{const nn=Date.parse(yt.createdAt),gr=Date.parse(Pt.createdAt);return Number.isFinite(nn)?Number.isFinite(gr)&&gr>nn?Pt:yt:Pt})},[(nr=v==null?void 0:v.config)==null?void 0:nr.compressionEvents]),yn=I.marginMD,{handleMessagesScroll:Oe,hasUnreadActivity:Dt,resetUserScroll:en,scrollToBottom:tn,scrollToTop:Re,showScrollToBottom:Zn,showScrollToTop:Tr,unreadCount:Pr}=GI({currentSessionId:p,isThinking:A,messagesListRef:J,bottomAnchorRef:ee,renderableMessages:He}),Vr=!!We&&xt&&(!t||ue),er=Wt?l.jsx(dn,{title:f("chat.compression.tooltip",{count:Wt.messagesCompressed,time:AS(Wt.createdAt),defaultValue:"Latest compression at {{time}}: {{count}} messages archived"}),children:l.jsx(Ye,{color:"gold",icon:l.jsx(Zg,{}),style:{marginInlineEnd:0,whiteSpace:"nowrap"},children:f("chat.compression.archivedShort",{count:Wt.messagesCompressed,defaultValue:"{{count}} archived"})})}):null,po=Zt&&Zt.budgetLimit>0?l.jsxs("div",{style:{display:"inline-flex",alignItems:"center",gap:I.marginXS},children:[l.jsx(MI,{usage:Zt,showDetails:!0,size:"small"}),Ne&&l.jsxs("span",{style:{fontSize:11,color:I.colorTextSecondary,whiteSpace:"nowrap"},children:["(",f("components.tokenUsage.truncatedBadge",{count:Je,defaultValue:"{{count}} truncated"}),")"]}),er]}):er?l.jsx("div",{style:{display:"inline-flex",alignItems:"center",gap:I.marginXS},children:er}):null;return l.jsx(Hs,{role:"region","aria-label":f("chat.view.chatRegion","Chat conversation"),style:{flex:1,minHeight:0,height:"100%",background:I.colorBgContainer,position:"relative",overflow:"hidden"},children:l.jsxs(we,{vertical:!0,style:{flex:1,minHeight:0,height:"100%"},children:[l.jsx(hO,{sessionId:p,auxReady:re,maxWidth:de(),paddingLeft:pe(),paddingRight:pe(),workspaceState:Ae,inspectorEligible:a,planMode:(v==null?void 0:v.planMode)??null,onRequestOpenInspector:i,t:f}),l.jsx(uO,{visible:Vr,selectionMode:ue,selectedCount:Ot.length,totalCount:at.length,paddingTop:I.paddingXS,paddingRight:pe()+Ge,paddingBottom:0,paddingLeft:pe(),maxWidth:de(),onToggleSelectionMode:Qt,onSelectAll:At,onClear:Tt,onExportMarkdown:()=>{Ht("markdown")},onExportPdf:()=>{Ht("pdf")},t:f}),l.jsx(TI,{currentChat:v,currentSessionId:p,convertRenderableEntry:L,handleDeleteMessage:$,handleDeleteToolMessages:U,handleMessagesScroll:Oe,hasSystemPrompt:De,messagesListRef:J,bottomAnchorRef:ee,renderableMessages:He,rowGap:yn,showMessagesView:!!We,screens:z,workflowDraftId:ie==null?void 0:ie.id,isThinking:A,padding:pe(),selectionMode:ue,selectedMessageIds:V,selectableMessageIds:St,onToggleMessageSelection:Fe}),l.jsxs("div",{className:`chat-bottom-stack ${We?"":"is-empty-centered"}`,"data-testid":"chat-bottom-stack",children:[l.jsx(dO,{visible:We,showScrollToTop:Tr,showScrollToBottom:Zn,hasUnreadActivity:Dt,unreadCount:Pr,onScrollToTop:Re,onScrollToBottom:tn,onResetUserScroll:en,t:f}),p&&re&&l.jsx("div",{style:{paddingTop:I.paddingXS,paddingRight:pe(),paddingBottom:0,paddingLeft:pe(),maxWidth:de(),margin:"0 auto",width:"100%"},children:l.jsx(rt.Suspense,{fallback:null,children:l.jsx(pO,{sessionId:p},p)})}),l.jsx(wE,{sessionId:p,isCenteredLayout:!We,maxWidth:We?de():"100%",onWorkflowDraftChange:Q,showMessagesView:!!We,sessionDiffSummary:le,contextUsageIndicator:po,showSessionDiffCard:!1})]})]})})},gd="lotus_experience_mode_v1",TL=new Set(["skills","hooks","masking","env-vars","metrics","sessions","config"]);function Am(){try{const e=localStorage.getItem(gd);if(e==="simple"||e==="advanced")return e}catch{}return"advanced"}const jS=Xr(e=>({mode:Am(),isAdvanced:Am()==="advanced",setMode:t=>{try{localStorage.setItem(gd,t)}catch{}e({mode:t,isAdvanced:t==="advanced"})},toggleMode:()=>e(t=>{const n=t.mode==="simple"?"advanced":"simple";try{localStorage.setItem(gd,n)}catch{}return{mode:n,isAdvanced:n==="advanced"}})})),bO={low:"Low",medium:"Medium",high:"High",xhigh:"Extra high",max:"Max"},SO=rt.lazy(()=>Lt(()=>import("./index-cUeYfAGY.js"),__vite__mapDeps([20,1,2,3,21,4,5,6,22]),import.meta.url).then(e=>({default:e.SessionSummaryCard}))),wO=rt.lazy(()=>Lt(()=>import("./index-BKJIPbua.js"),__vite__mapDeps([23,1,2,3,4,5,6]),import.meta.url).then(e=>({default:e.TodoList}))),xO=rt.lazy(()=>Lt(()=>import("./SubAgentsPanel-DAY10sR_.js"),__vite__mapDeps([24,1,2,3,4,5,6]),import.meta.url).then(e=>({default:e.SubAgentsPanel}))),{Title:_O,Text:fr}=ot,jm={active:{label:"Active",color:"processing"},complete:{label:"Complete",color:"success"},blocked:{label:"Blocked",color:"error"},need_input:{label:"Needs input",color:"warning"},budget_limited:{label:"Budget limited",color:"warning"}},CO=({sessionId:e})=>{var p,v,g,w,m,x,k;const{token:t}=st.useToken(),n=Z(mr(e)),r=Z(C=>C.setInputContent),s=((p=n==null?void 0:n.config)==null?void 0:p.goldConfig)??null,o=((v=n==null?void 0:n.config)==null?void 0:v.goalState)??null,a=((g=(s==null?void 0:s.goal)??(s==null?void 0:s.evaluation_prompt))==null?void 0:g.trim())??"",i=(s==null?void 0:s.enabled)===!0,c=a.length>0,d=((w=o==null?void 0:o.eval_history)==null?void 0:w[o.eval_history.length-1])??null;if(!n||!s||!c&&!i)return null;const f=()=>{const C=c?`/goal ${a}`:"/goal ";r(e,C),typeof window<"u"&&window.dispatchEvent(new CustomEvent(Tl,{detail:{sessionId:e}}))};return l.jsx("div",{"data-testid":"session-goal-card",style:{padding:`${t.paddingXXS}px ${t.paddingXS}px`,borderRadius:t.borderRadiusLG,border:`1px solid ${i?t.colorWarningBorder:t.colorBorderSecondary}`,background:i?t.colorWarningBg:t.colorFillQuaternary},children:l.jsxs(we,{vertical:!0,gap:4,style:{width:"100%",minWidth:0},children:[l.jsxs(we,{align:"center",justify:"space-between",gap:8,children:[l.jsxs(we,{align:"center",gap:6,style:{minWidth:0},children:[l.jsx(ix,{style:{color:i?t.colorWarning:t.colorTextSecondary}}),l.jsx(fr,{strong:!0,style:{fontSize:12},children:"Goal"})]}),l.jsx(Ee,{size:"small",type:"text",onClick:f,style:{paddingInline:6},children:"Edit /goal"})]}),l.jsx(ol,{items:[i?"Enabled":"Disabled",s.auto_answer_enabled?"Auto-answer":null,s.auto_continue_enabled?"Auto-continue":null],block:!0}),l.jsx(fr,{style:{fontSize:12,lineHeight:1.45,color:c?t.colorText:t.colorTextSecondary,whiteSpace:"pre-wrap"},children:c?a:"Use /goal <prompt> in the composer to set a session goal."}),o?l.jsxs(we,{vertical:!0,gap:4,style:{marginTop:2},children:[l.jsxs(we,{align:"center",gap:6,wrap:"wrap",children:[l.jsx(Ye,{color:((m=jm[o.status])==null?void 0:m.color)??"default",style:{marginInlineEnd:0},children:((x=jm[o.status])==null?void 0:x.label)??o.status}),o.continuation_count>0?l.jsxs(fr,{type:"secondary",style:{fontSize:11},children:[o.continuation_count," continuation",o.continuation_count===1?"":"s"]}):null,(k=o.eval_history)!=null&&k.length?l.jsxs(fr,{type:"secondary",style:{fontSize:11},children:[o.eval_history.length," double-check",o.eval_history.length===1?"":"s"]}):null]}),d?l.jsx(fr,{type:"secondary",style:{fontSize:11,lineHeight:1.4,whiteSpace:"pre-wrap"},children:`Last check [${d.checkpoint}] ${d.decision}/${d.confidence}: ${d.reasoning}`}):null]}):null]})})},kO=({sessionId:e})=>{var g,w;const{token:t}=st.useToken(),{t:n}=qe(),r=Z(mr(e)),s=mt(m=>m.providerInstances),o=r==null?void 0:r.config,a=((g=o==null?void 0:o.model_ref)==null?void 0:g.model)??(o==null?void 0:o.model)??null,i=((w=o==null?void 0:o.model_ref)==null?void 0:w.provider)??null,c=S.useMemo(()=>{if(!i)return null;const m=s.find(x=>x.id===i);return m?m.label||m.id:gP[i]??i},[i,s]);if(!r||!a)return null;const d=(o==null?void 0:o.reasoningEffort)??null,f=d?bO[d]??d:"Provider default",p=(o==null?void 0:o.agentRole)??null,v=[{label:"Model",value:a},...c?[{label:"Provider",value:c}]:[],{label:"Reasoning",value:f,muted:!d},...p?[{label:"Role",value:p}]:[]];return l.jsx("div",{"data-testid":"session-config-card",style:{padding:`${t.paddingXXS}px ${t.paddingXS}px`,borderRadius:t.borderRadiusLG,border:`1px solid ${t.colorBorderSecondary}`,background:t.colorFillQuaternary},children:l.jsxs(we,{vertical:!0,gap:4,style:{width:"100%",minWidth:0},children:[l.jsxs(we,{align:"center",gap:6,style:{minWidth:0},children:[l.jsx(kd,{style:{color:t.colorTextSecondary}}),l.jsx(fr,{strong:!0,style:{fontSize:12},children:n("inspector.configuration","Configuration")})]}),l.jsx(we,{vertical:!0,gap:2,style:{width:"100%",minWidth:0},children:v.map(m=>l.jsxs(we,{align:"center",justify:"space-between",gap:8,children:[l.jsx(fr,{type:"secondary",style:{fontSize:12,flexShrink:0},children:m.label}),l.jsx(fr,{style:{fontSize:12,textAlign:"right",color:m.muted?t.colorTextTertiary:t.colorText,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:m.value,children:m.value})]},m.label))})]})})},TO=({sessionId:e,auxReady:t,showMessagesView:n,shouldShowTaskPanel:r,hasSubAgents:s,sessionDiffSummary:o})=>{var v,g,w,m,x,k;const{token:a}=st.useToken(),i=jS(C=>C.isAdvanced),c=Z(mr(e)),d=!!((v=c==null?void 0:c.config)!=null&&v.goldConfig&&((((w=(g=c.config.goldConfig.goal??c.config.goldConfig.evaluation_prompt)==null?void 0:g.trim())==null?void 0:w.length)??0)>0||c.config.goldConfig.enabled===!0)),f=!!((x=(m=c==null?void 0:c.config)==null?void 0:m.model_ref)!=null&&x.model||(k=c==null?void 0:c.config)!=null&&k.model),p=S.useMemo(()=>[{key:"goal",title:"Goal",showTitle:!1,visible:d,node:l.jsx(CO,{sessionId:e})},{key:"config",title:"Configuration",showTitle:!1,visible:f,node:l.jsx(kO,{sessionId:e})},{key:"overview",title:"Overview",showTitle:!1,visible:i&&n,node:t?l.jsx(rt.Suspense,{fallback:null,children:l.jsx(SO,{sessionId:e,compact:!0})}):null},{key:"tasks",title:"Tasks",showTitle:!1,visible:r,node:t?l.jsx(rt.Suspense,{fallback:null,children:l.jsx(wO,{sessionId:e,initialCollapsed:!1,compact:!0})}):null},{key:"agents",title:"Sub-agents",showTitle:!1,visible:s,node:t?l.jsx(rt.Suspense,{fallback:null,children:l.jsx(xO,{parentSessionId:e,compact:!0})}):null},{key:"diffs",title:"Diffs",showTitle:!1,visible:!!o,node:l.jsx(mv,{sessionDiffSummary:o,sessionId:e,compact:!0})}].filter(C=>C.visible),[t,f,d,s,i,o,e,r,n]);return p.length===0?l.jsx(we,{vertical:!0,align:"center",justify:"center",style:{minHeight:180,color:a.colorTextSecondary,padding:a.paddingLG,textAlign:"center"},children:l.jsx(fr,{type:"secondary",children:"No session details available yet."})}):l.jsx(we,{vertical:!0,gap:2,style:{width:"100%",minWidth:0},children:p.map((C,E)=>l.jsx("section",{style:{width:"100%",minWidth:0,paddingTop:E===0?0:6,borderTop:E===0?"none":`1px solid ${a.colorBorderSecondary}`},children:C.showTitle?l.jsxs(we,{vertical:!0,gap:6,style:{width:"100%",minWidth:0},children:[l.jsx(_O,{level:5,style:{margin:0,fontSize:a.fontSizeLG},children:C.title}),C.node]}):C.node},C.key))})},Im=({sessionId:e,auxReady:t,mode:n,open:r,onOpenChange:s,showMessagesView:o,shouldShowTaskPanel:a,hasSubAgents:i,sessionDiffSummary:c})=>{const{token:d}=st.useToken(),{t:f}=qe(),p=ct(m=>m.inspector.widthPx),v=ct(m=>m.inspector.minWidthPx),g=ct(m=>m.inspector.maxWidthPx);if(!e)return null;const w=l.jsx(TO,{sessionId:e,auxReady:t,showMessagesView:o,shouldShowTaskPanel:a,hasSubAgents:i,sessionDiffSummary:c});return n==="drawer"?l.jsx(Bl,{title:f("inspector.title","Inspector"),placement:"right",open:r,onClose:()=>s(!1),width:p,children:w}):r?l.jsxs("aside",{"data-session-inspector-pane":!0,style:{width:"100%",minWidth:v,maxWidth:g,height:"100%",minHeight:0,borderLeft:`1px solid ${d.colorBorderSecondary}`,background:d.colorBgLayout,overflow:"auto"},children:[l.jsxs(we,{align:"center",justify:"space-between",style:{position:"sticky",top:0,zIndex:1,padding:`6px ${d.paddingSM}px`,borderBottom:`1px solid ${d.colorBorderSecondary}`,background:d.colorBgLayout},children:[l.jsxs(we,{align:"center",gap:d.marginXS,children:[l.jsx(Md,{}),l.jsx(fr,{strong:!0,children:f("inspector.title","Inspector")})]}),l.jsx(Ee,{type:"text",size:"small",icon:l.jsx(ks,{}),"aria-label":"Close inspector",onClick:()=>s(!1)})]}),l.jsx("div",{style:{padding:`6px ${d.paddingSM}px ${d.paddingSM}px`,minWidth:0},children:w})]}):null},PO=({sessionId:e,embedded:t=!1,paneCount:n=1,workspaceState:r})=>{var D,ie,Q;const s=n,o=Wl(),a=Z(ue=>e??ue.currentSessionId),i=Z(mr(a)),c=S.useMemo(()=>(i==null?void 0:i.messages)||[],[i]),d=Z(ue=>ue.loadTaskList),f=jS(ue=>ue.isAdvanced),p=S.useMemo(()=>!a||!i?a:i.kind==="child"&&(i.parentSessionId||i.rootSessionId)||a,[i,a]),v=Z(ue=>p?!!ue.taskLists[p]:!1),g=Z(si(a)),w=S.useMemo(()=>!a||!i?!1:!!(v||i.kind==="child"||g),[i,v,g,a]),m=Z(ue=>{if(!a)return!1;const me=Ul(a)(ue);return Object.keys(me).length>0?!0:ue.chats.some(V=>V.kind==="child"&&V.parentSessionId===a)});S.useEffect(()=>{!p||v||w&&d(p).catch(ue=>{console.warn(`[SessionWorkspaceShell] Failed to load task list for ${p}:`,ue)})},[p,v,w,d]);const x=S.useMemo(()=>{var re;if(!c||c.length===0)return null;const ue=new Map;let me=0,V=0,ae=0;for(const le of c){if(!xv(le))continue;const de=((re=le.result)==null?void 0:re.result)??"",pe=co(de),Ae=Gd(de);if(!pe||!Ae)continue;ae+=1,me+=Ae.added,V+=Ae.removed;const Me=ue.get(pe.file_path);Me?(Me.added+=Ae.added,Me.removed+=Ae.removed,Me.diffChunks.push(pe.diff.unified),Me.truncated=Me.truncated||!!pe.diff.truncated,Me.toolCount+=1,Me.workspace=Me.workspace??pe.workspace):ue.set(pe.file_path,{added:Ae.added,removed:Ae.removed,diffChunks:[pe.diff.unified],truncated:!!pe.diff.truncated,toolCount:1,workspace:pe.workspace})}if(ue.size===0)return null;const ve=Array.from(ue.entries()).map(([le,de])=>({filePath:le,added:de.added,removed:de.removed,unifiedDiff:de.diffChunks.join(`
246
246
 
247
- `),truncated:de.truncated,toolCount:de.toolCount,workspace:de.workspace})).sort((le,de)=>le.filePath.localeCompare(de.filePath));return{totalAdded:me,totalRemoved:V,files:ve,changedTools:ae}},[c]),k=ct(ue=>ue.inspector.widthPx),C=ct(ue=>ue.inspector.minWidthPx),E=ct(ue=>ue.inspector.maxWidthPx),T=ct(ue=>ue.setInspectorWidthPx),P=c.length>0,A=!!((D=i==null?void 0:i.config)!=null&&D.goldConfig&&((((Q=(ie=i.config.goldConfig.evaluation_prompt)==null?void 0:ie.trim())==null?void 0:Q.length)??0)>0||i.config.goldConfig.enabled===!0)),O=S.useMemo(()=>r||Tf({isEmbedded:t,leafCount:s,isMobileViewport:o}),[t,o,s,r]),$=O.inspectorMode,U=!!(a&&(f&&P||A||w||m||x)),J=!!a&&($==="drawer"||U),[ee,I]=S.useState(()=>$==="rail"),[Y,z]=S.useState(!1);return S.useEffect(()=>{I($==="rail"?U:!1)},[U,$,a]),S.useEffect(()=>{if(typeof requestIdleCallback=="function"){const me=requestIdleCallback(()=>z(!0));return()=>cancelIdleCallback(me)}const ue=window.setTimeout(()=>z(!0),300);return()=>window.clearTimeout(ue)},[]),S.useEffect(()=>{if(typeof window>"u"||!a)return;const ue=me=>{var ve;(((ve=me.detail)==null?void 0:ve.sessionId)??null)===a&&I(!0)};return window.addEventListener(Xu,ue),()=>{window.removeEventListener(Xu,ue)}},[a]),l.jsx("div",{"data-session-workspace-shell":!0,"data-inspector-mode":$,"data-multi-pane":O.isMultiPane?"true":"false","data-inspector-toggle-placement":O.inspectorTogglePlacement,style:{height:"100%",minHeight:0,display:"flex",flexDirection:"column"},children:l.jsx(we,{style:{flex:1,minHeight:0},children:J&&$==="rail"&&ee?l.jsx(Yd,{layout:"horizontal",sizesPx:[0,k],minFirstPx:320,minSecondPx:C,style:{flex:1,minHeight:0},handleSizePx:4,onResizeEnd:([,ue])=>{const me=Math.max(C,Math.min(E,ue));T(me)},first:l.jsx("div",{style:{flex:1,minWidth:0,minHeight:0,display:"flex",flexDirection:"column"},children:l.jsx(Rm,{sessionId:a,embedded:t,paneCount:s,auxReady:Y,sessionDiffSummary:x,workspaceState:O,inspectorEligible:U,onRequestOpenInspector:()=>I(!0)})}),second:l.jsx(Im,{sessionId:a,auxReady:Y,mode:$,open:ee,onOpenChange:I,showMessagesView:P,shouldShowTaskPanel:w,hasSubAgents:m,sessionDiffSummary:x})}):l.jsxs(l.Fragment,{children:[l.jsx("div",{style:{flex:1,minWidth:0,minHeight:0,display:"flex",flexDirection:"column"},children:l.jsx(Rm,{sessionId:a,embedded:t,paneCount:s,auxReady:Y,sessionDiffSummary:x,workspaceState:O,inspectorEligible:U,onRequestOpenInspector:()=>I(!0)})}),J?l.jsx(Im,{sessionId:a,auxReady:Y,mode:$,open:ee,onOpenChange:I,showMessagesView:P,shouldShowTaskPanel:w,hasSubAgents:m,sessionDiffSummary:x}):null]})})})},EO=({sessionId:e,embedded:t=!1,paneCount:n=1,workspaceState:r})=>l.jsx(PO,{sessionId:e,embedded:t,paneCount:n,workspaceState:r}),MO=rt.lazy(()=>Lt(()=>import("./index-BtKDULhw.js"),__vite__mapDeps([25,1,2,3,4,5,6,26]),import.meta.url).then(e=>({default:e.HomeDashboard}))),{useToken:RO}=st,{Text:AO}=ot,jO=4,IO=({leafId:e})=>{var ie;const{token:t}=RO(),{t:n}=qe(),r=ct(Q=>Q.tree),s=ct(Q=>Q.leafSessionIds),o=ct(Q=>Q.activeLeafId),a=ct(Q=>Q.setActiveLeafId),i=ct(Q=>Q.splitLeaf),c=ct(Q=>Q.closeLeaf),d=ct(Q=>Q.setLeafSessionId),f=Z(Q=>Q.selectSession),p=Z(Q=>Q.addChat),v=Z(Q=>Q.systemPrompts),g=Z(Q=>Q.lastSelectedPromptId),w=s[e]??null,m=Z(mr(w)),x=S.useMemo(()=>Fn(r),[r]),k=x.length,C=Math.max(0,x.indexOf(e))+1,E=k<jO,T=ty("(max-width: 768px)"),P=S.useMemo(()=>Tf({isEmbedded:!0,leafCount:k,isMobileViewport:T}),[T,k]),A=P.isMultiPane,$=A||!!w,U=P.isMultiPane,J=o===e,ee=((ie=m==null?void 0:m.title)==null?void 0:ie.trim())||n("chat.multiPane.selectSessionHint"),I=!T,Y=P.inspectorTogglePlacement==="pane_header"&&!!w,z=S.useCallback(Q=>{d(e,Q),a(e),f(Q)},[e,f,a,d]),D=S.useCallback(async()=>{var V,ae;const Q=v.find(ve=>ve.id===g),ue=(Q==null?void 0:Q.id)||(v.length>0?((V=v.find(ve=>ve.id==="general_assistant"))==null?void 0:V.id)||v[0].id:""),me=await p({title:n("chat.sidebar.newSession"),createdAt:Date.now(),messages:[],config:{systemPromptId:ue,baseSystemPrompt:(Q==null?void 0:Q.content)||(v.length>0?((ae=v.find(ve=>ve.id==="general_assistant"))==null?void 0:ae.content)||v[0].content:""),lastUsedEnhancedPrompt:null}});d(e,me),a(e)},[p,g,v,n,e,d,a]);return l.jsxs("div",{className:"chat-pane-shell",onMouseDownCapture:()=>{Dn("pane focus (mouse)",{leafId:e,sessionId:w,prevActiveLeafId:o}),a(e),w&&f(w)},onFocusCapture:()=>{Dn("pane focus (focus)",{leafId:e,sessionId:w,prevActiveLeafId:o}),a(e)},style:{height:"100%",minHeight:0,border:U?`1px solid ${J?t.colorPrimaryBorder:t.colorBorderSecondary}`:"none",borderRadius:U?t.borderRadiusLG:0,overflow:"hidden",background:t.colorBgContainer,position:"relative"},children:[I?l.jsx("div",{className:"chat-pane-shell__header",style:{padding:`${t.paddingXS}px ${t.paddingSM}px`,borderBottom:`1px solid ${t.colorBorderSecondary}`,background:U?t.colorBgElevated:t.colorBgContainer},children:l.jsxs(we,{align:"center",justify:"space-between",gap:t.marginSM,style:{minWidth:0},children:[l.jsxs(we,{align:"center",gap:t.marginXS,style:{minWidth:0,flex:1},children:[U?l.jsx(Ye,{color:J?"blue":"default",style:{marginInlineEnd:0},children:n("chat.multiPane.paneLabel",{index:C,defaultValue:"Pane {{index}}"})}):null,l.jsx("div",{className:"chat-pane-shell__title",children:l.jsx(AO,{strong:!!w,type:w?void 0:"secondary",ellipsis:{tooltip:ee},children:ee})})]}),l.jsxs(we,{className:"chat-pane-shell__actions",align:"center",gap:4,children:[l.jsx(Ee,{size:"small",type:"text",icon:l.jsx(lx,{}),disabled:!E,title:n("chat.multiPane.splitHorizontal"),"aria-label":n("chat.multiPane.splitHorizontal"),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),Dn("pane split request",{leafId:e,layout:"horizontal"}),i(e,"horizontal");const ue=ct.getState(),me=ue.leafSessionIds[ue.activeLeafId]??null;me&&f(me)}}),l.jsx(Ee,{size:"small",type:"text",icon:l.jsx(cx,{}),disabled:!E,title:n("chat.multiPane.splitVertical"),"aria-label":n("chat.multiPane.splitVertical"),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),Dn("pane split request",{leafId:e,layout:"vertical"}),i(e,"vertical");const ue=ct.getState(),me=ue.leafSessionIds[ue.activeLeafId]??null;me&&f(me)}}),l.jsx(Ee,{size:"small",type:"text",icon:l.jsx(ey,{}),disabled:!w,title:n("chat.multiPane.selectMessagesToExport"),"aria-label":n("chat.multiPane.selectMessagesToExport"),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),w&&window.dispatchEvent(new CustomEvent(Hu,{detail:{sessionId:w}}))}}),Y?l.jsx(Ee,{size:"small",type:"text",icon:l.jsx(Md,{}),title:n("chat.workspace.openInspector",{defaultValue:"Open inspector"}),"aria-label":n("chat.workspace.openInspector",{defaultValue:"Open inspector"}),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),w&&window.dispatchEvent(new CustomEvent(Xu,{detail:{sessionId:w}}))}}):null,l.jsx(Ee,{size:"small",type:"text",danger:!0,icon:l.jsx(ks,{}),disabled:!$,title:n("chat.multiPane.closePane"),"aria-label":n("chat.multiPane.closePane"),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),Dn("pane close request",{leafId:e}),A?c(e):d(e,null);const ue=ct.getState(),me=ue.leafSessionIds[ue.activeLeafId]??null;f(me)}})]})]})}):null,l.jsx("div",{className:"chat-pane-shell__content",children:w?l.jsx(Ka,{name:"ChatView",children:l.jsx(EO,{sessionId:w,embedded:!0,paneCount:k,workspaceState:P})}):l.jsx(Ka,{name:"HomeDashboard",children:l.jsx(rt.Suspense,{fallback:null,children:l.jsx(MO,{onOpenSession:z,onCreateSession:D})})})})]})},OO=({node:e})=>{const t=ct(r=>r.splitSizesPx[e.id]??null),n=ct(r=>r.setSplitSizesPx);return l.jsx(Yd,{layout:e.layout,sizesPx:t,defaultSplitRatio:.5,minFirstPx:240,minSecondPx:240,style:{height:"100%",minHeight:0},onResizeEnd:r=>{n(e.id,r)},first:l.jsx(yd,{node:e.children[0]}),second:l.jsx(yd,{node:e.children[1]})})},yd=({node:e})=>e.type==="leaf"?l.jsx(IO,{leafId:e.id}):l.jsx(OO,{node:e}),Om=()=>{const e=ct(f=>f.tree),t=ct(f=>f.leafSessionIds),n=ct(f=>f.activeLeafId),r=ct(f=>f.setActiveLeafId),s=ct(f=>f.setLeafSessionId),o=Z(f=>f.chats.map(p=>p.id).join(",")),a=S.useMemo(()=>new Set(o.split(",")),[o]),i=Z(f=>f.currentSessionId),c=S.useRef(!1),d=S.useMemo(()=>Fn(e),[e]);return S.useEffect(()=>{d.length!==0&&(d.includes(n)||r(d[0]))},[n,d,r]),S.useEffect(()=>{const f=new Set(Object.values(t).filter(Boolean));let p=!1;for(const v of f)if(!a.has(v)){p=!0;break}if(p)for(const[v,g]of Object.entries(t))g&&!a.has(g)&&s(v,null)},[a,t,s]),S.useEffect(()=>{if(!i||c.current)return;if(!Object.values(t).some(Boolean)){s(n,i),c.current=!0;return}c.current=!0},[n,i,t,s]),l.jsx("div",{style:{height:"100%",minHeight:0,padding:0},children:l.jsx(yd,{node:e})})},$O=rt.lazy(()=>Lt(()=>import("./index-BPzdRxWR.js"),__vite__mapDeps([27,1,2,3,4,28,5,6,21,29]),import.meta.url).then(e=>({default:e.SystemSettingsPage}))),LO=rt.lazy(()=>Lt(()=>import("./index-Dx9gwpkf.js"),__vite__mapDeps([30,1,2,3,4,5,6,31]),import.meta.url).then(e=>({default:e.CommandPalette}))),DO=rt.lazy(()=>Lt(()=>import("./FeatureGuide-pqK-Gb1K.js"),__vite__mapDeps([32,1,2,3,28]),import.meta.url).then(e=>({default:e.FeatureGuide}))),$m="bodhi_open_provider_on_entry",FO="__LOTUS_COMMAND_PALETTE_FORCE_OPEN__",NO=()=>(Dk(),null),zO=({themeMode:e,onThemeModeChange:t,locale:n,onLocaleChange:r})=>{const s=Fa(I=>I.isOpen),o=Fa(I=>I.close),{t:a}=qe(),{token:i}=st.useToken(),c=zd(),d=S.useMemo(()=>nv()==="macos",[]);S.useEffect(()=>{localStorage.getItem($m)==="true"&&(localStorage.removeItem($m),Fa.getState().open("chat","provider"))},[]),lC(),S.useEffect(()=>{Fh.clear(),Nh()},[e]),S.useEffect(()=>{Fh.clear(),Nh()},[c]);const f=ct(I=>I.sidebar.collapsed),p=ct(I=>I.sidebar.widthPx),v=ct(I=>I.sidebar.minWidthPx),g=ct(I=>I.sidebar.maxWidthPx),w=ct(I=>I.setSidebarCollapsed),m=ct(I=>I.setSidebarWidthPx),x=18,k=0,E=!s&&f&&d?44:k,T=0,P=88,A=10,O="none",$=Wl(),U="min(86vw, 360px)",[J,ee]=S.useState(!1);return S.useEffect(()=>{if(typeof requestIdleCallback=="function"){const Y=requestIdleCallback(()=>ee(!0));return()=>cancelIdleCallback(Y)}const I=window.setTimeout(()=>ee(!0),200);return()=>window.clearTimeout(I)},[]),S.useEffect(()=>{const I=Y=>{!((Y.metaKey||Y.ctrlKey)&&Y.key.toLowerCase()==="k")||J||(Y.preventDefault(),window[FO]=!0,ee(!0))};return window.addEventListener("keydown",I),()=>window.removeEventListener("keydown",I)},[J]),l.jsxs(l.Fragment,{children:[l.jsx("a",{href:"#lotus-main-content",className:"lotus-skip-link",style:{position:"absolute",top:-9999,left:-9999,zIndex:1e4,padding:"8px 16px",background:"var(--lotus-main-surface, #fff)",color:"var(--ant-color-primary, #0d9488)",borderRadius:8,fontWeight:600,textDecoration:"none"},onFocus:I=>{I.currentTarget.style.top="8px",I.currentTarget.style.left="8px"},onBlur:I=>{I.currentTarget.style.top="-9999px",I.currentTarget.style.left="-9999px"},children:a("app.skipToContent","Skip to main content")}),J&&l.jsx(rt.Suspense,{fallback:null,children:l.jsx(LO,{})}),J&&l.jsx(rt.Suspense,{fallback:null,children:l.jsx(DO,{disabled:s})}),J&&l.jsx(NO,{}),l.jsx(Hs,{style:{minHeight:"100vh",height:"100vh",overflow:"hidden",background:"transparent",display:"flex",flexDirection:"row",position:"relative"},children:l.jsxs("div",{style:{display:"flex",flex:1,minHeight:0,height:"100%",width:"100%",boxSizing:"border-box",paddingTop:E,paddingLeft:k,paddingRight:k,paddingBottom:k,background:"transparent"},children:[s?l.jsx(Hs,{className:"lotus-shell-panel lotus-settings-panel lotus-page-enter",style:{flex:1,display:"flex",flexDirection:"column",background:"var(--lotus-main-surface)",minHeight:0,borderRadius:`${x}px 0 0 ${x}px`,border:O,overflow:"hidden"},children:l.jsx(Ka,{name:"SystemSettings",children:l.jsx(rt.Suspense,{fallback:l.jsx("div",{style:{padding:24,color:"var(--ant-color-text-secondary)"},children:a("app.loading","Loading…")}),children:l.jsx($O,{themeMode:e,onThemeModeChange:t,locale:n,onLocaleChange:r,onBack:o})})})}):l.jsx(l.Fragment,{children:$?l.jsxs(l.Fragment,{children:[l.jsx(Bl,{placement:"left",closable:!1,onClose:()=>w(!0),open:!f,width:U,styles:{body:{padding:0,background:"var(--lotus-sidebar-bg)"}},children:l.jsx($h,{})}),l.jsx("main",{id:"lotus-main-content",className:"lotus-shell-panel lotus-shell-main",style:{flex:1,height:"100%",minHeight:0,borderRadius:`${x}px`,border:O,overflow:"hidden",background:"var(--lotus-main-surface)",boxShadow:"var(--lotus-shadow-shell)"},children:l.jsx(Hs,{style:{display:"flex",flexDirection:"column",background:"transparent",minHeight:0,height:"100%"},children:l.jsx(Om,{})})})]}):l.jsx(Yd,{layout:"horizontal",style:{flex:1,minHeight:0,height:"100%",background:"transparent"},sizesPx:[f?T:p,0],minFirstPx:f?T:v,minSecondPx:320,disabled:f,handleSizePx:f?0:2,onResizeEnd:([I])=>{if(f)return;const Y=Math.max(v,Math.min(g,I));m(Y)},first:l.jsx("div",{className:"lotus-shell-panel lotus-shell-sidebar",style:{height:"100%",minHeight:0,borderRadius:`${x}px 0 0 ${x}px`,border:O,overflow:"hidden",background:"var(--lotus-sidebar-bg)"},children:l.jsx($h,{})}),second:l.jsx("main",{id:"lotus-main-content",className:"lotus-shell-panel lotus-shell-main",style:{height:"100%",minHeight:0,borderRadius:f?`${x}px`:`0 ${x}px ${x}px 0`,border:O,overflow:"hidden",background:"var(--lotus-main-surface)",boxShadow:"var(--lotus-shadow-shell)"},children:l.jsx(Hs,{style:{display:"flex",flexDirection:"column",background:"transparent",minHeight:0,height:"100%"},children:l.jsx(Om,{})})})})}),!s&&f?l.jsx(Ee,{"data-testid":"show-sidebar",type:"text",size:"small",icon:l.jsx(ux,{}),onClick:()=>w(!1),title:a("layout.showSidebar"),"aria-label":a("layout.showSidebar"),className:"lotus-toolbar-icon lotus-floating-sidebar-toggle",style:{position:"absolute",top:$?8:A,left:$?8:P,zIndex:40,width:36,height:36,borderRadius:12,border:`1px solid ${i.colorBorderSecondary}`,background:i.colorBgElevated,boxShadow:i.boxShadowSecondary}}):null]})})]})},BO="bodhi_open_provider_on_entry",{Title:Lm,Paragraph:Dm}=ot,WO=()=>{const{t:e}=qe(),[t,n]=S.useState(!1),[r,s]=S.useState(null),[o,a]=S.useState(!1),i=async c=>{try{s(null),a(!0),await ro.getInstance().markSetupComplete(),c&&localStorage.setItem(BO,"true"),n(!0)}catch(d){console.error("Failed to complete setup:",d),s(e("setup.error.completeFailed"))}finally{a(!1)}};return t?l.jsxs("div",{"data-testid":"setup-complete",className:"setup-complete",children:[l.jsx(Lm,{level:2,children:e("setup.complete.title")}),l.jsx(Dm,{children:e("setup.complete.restartMessage")}),l.jsx(Ee,{"data-testid":"setup-restart",onClick:()=>window.location.reload(),children:e("setup.complete.restartMessage")})]}):l.jsx("div",{className:"setup-page",children:l.jsxs(Bt,{className:"setup-page__card",children:[l.jsxs("div",{className:"setup-page__hero",children:[l.jsx("div",{className:"setup-page__hero-icon",children:l.jsx(rh,{})}),l.jsx(Lm,{level:2,style:{marginTop:0},children:e("setup.welcome.heading")}),l.jsx(Dm,{type:"secondary",children:e("setup.welcome.description")})]}),l.jsx(Jn,{message:e("setup.welcome.providerHint"),type:"info",showIcon:!0,style:{marginBottom:16}}),l.jsx(Jn,{message:e("setup.welcome.proxyHint"),type:"info",showIcon:!0,style:{marginBottom:24}}),r?l.jsx(Jn,{message:r,type:"error",showIcon:!0,style:{marginBottom:16}}):null,l.jsxs("div",{className:"setup-page__actions",children:[l.jsx(Ee,{"data-testid":"setup-configure-provider",icon:l.jsx(Nl,{}),onClick:()=>void i(!0),loading:o,children:e("setup.button.configureProvider")}),l.jsx(Ee,{"data-testid":"setup-get-started",type:"primary",icon:l.jsx(rh,{}),onClick:()=>void i(!1),loading:o,children:e("setup.button.getStarted")})]})]})})},{Title:UO,Text:Fm}=ot,qO=({onVerified:e,verifyPassword:t})=>{const{t:n}=qe(),[r,s]=S.useState(""),[o,a]=S.useState(null),[i,c]=S.useState(!1),d=async()=>{const f=r.trim();if(!f){a(n("app.passwordGate.validation.required"));return}c(!0),a(null);try{await t(f),await e(),s("")}catch(p){const v=p instanceof Error?p.message:n("app.passwordGate.validation.verifyFailed");a(v)}finally{c(!1)}};return l.jsx("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",padding:24},children:l.jsx(Bt,{style:{width:"100%",maxWidth:480},children:l.jsxs(ze,{direction:"vertical",size:20,style:{width:"100%"},children:[l.jsxs("div",{children:[l.jsx(UO,{level:3,style:{marginBottom:8},children:n("app.passwordGate.title")}),l.jsx(Fm,{type:"secondary",children:n("app.passwordGate.description")})]}),o?l.jsx(Jn,{type:"error",showIcon:!0,message:o}):null,l.jsxs(ze,{direction:"vertical",size:8,style:{width:"100%"},children:[l.jsx(Fm,{strong:!0,children:n("app.passwordGate.passwordLabel")}),l.jsx(Ts.Password,{value:r,autoFocus:!0,autoComplete:"current-password",onChange:f=>s(f.target.value),onPressEnter:()=>void d(),placeholder:n("app.passwordGate.passwordPlaceholder")})]}),l.jsx(Ee,{type:"primary",block:!0,loading:i,onClick:()=>void d(),children:n("app.passwordGate.submit")})]})})})};var zo={},du={exports:{}},Nm;function It(){return Nm||(Nm=1,function(e){function t(n){return n&&n.__esModule?n:{default:n}}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports}(du)),du.exports}var Bo={},zm;function HO(){if(zm)return Bo;zm=1,Object.defineProperty(Bo,"__esModule",{value:!0}),Bo.default=void 0;var e={items_per_page:"/ page",jump_to:"Go to",jump_to_confirm:"confirm",page:"Page",prev_page:"Previous Page",next_page:"Next Page",prev_5:"Previous 5 Pages",next_5:"Next 5 Pages",prev_3:"Previous 3 Pages",next_3:"Next 3 Pages",page_size:"Page Size"};return Bo.default=e,Bo}var Wo={},Uo={},qo={},fu={exports:{}},hu={exports:{}},pu={exports:{}},mu={exports:{}},Bm;function XO(){return Bm||(Bm=1,function(e){var t=Wg().default;function n(r,s){if(t(r)!="object"||!r)return r;var o=r[Symbol.toPrimitive];if(o!==void 0){var a=o.call(r,s||"default");if(t(a)!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(s==="string"?String:Number)(r)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(mu)),mu.exports}var Wm;function YO(){return Wm||(Wm=1,function(e){var t=Wg().default,n=XO();function r(s){var o=n(s,"string");return t(o)=="symbol"?o:o+""}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports}(pu)),pu.exports}var Um;function KO(){return Um||(Um=1,function(e){var t=YO();function n(r,s,o){return(s=t(s))in r?Object.defineProperty(r,s,{value:o,enumerable:!0,configurable:!0,writable:!0}):r[s]=o,r}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(hu)),hu.exports}var qm;function fo(){return qm||(qm=1,function(e){var t=KO();function n(s,o){var a=Object.keys(s);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(s);o&&(i=i.filter(function(c){return Object.getOwnPropertyDescriptor(s,c).enumerable})),a.push.apply(a,i)}return a}function r(s){for(var o=1;o<arguments.length;o++){var a=arguments[o]!=null?arguments[o]:{};o%2?n(Object(a),!0).forEach(function(i){t(s,i,a[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(s,Object.getOwnPropertyDescriptors(a)):n(Object(a)).forEach(function(i){Object.defineProperty(s,i,Object.getOwnPropertyDescriptor(a,i))})}return s}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports}(fu)),fu.exports}var Ho={},Hm;function ho(){return Hm||(Hm=1,Object.defineProperty(Ho,"__esModule",{value:!0}),Ho.commonLocale=void 0,Ho.commonLocale={yearFormat:"YYYY",dayFormat:"D",cellMeridiemFormat:"A",monthBeforeYear:!0}),Ho}var Xm;function VO(){if(Xm)return qo;Xm=1;var e=It().default;Object.defineProperty(qo,"__esModule",{value:!0}),qo.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"en_US",today:"Today",now:"Now",backToToday:"Back to today",ok:"OK",clear:"Clear",week:"Week",month:"Month",year:"Year",timeSelect:"select time",dateSelect:"select date",weekSelect:"Choose a week",monthSelect:"Choose a month",yearSelect:"Choose a year",decadeSelect:"Choose a decade",dateFormat:"M/D/YYYY",dateTimeFormat:"M/D/YYYY HH:mm:ss",previousMonth:"Previous month (PageUp)",nextMonth:"Next month (PageDown)",previousYear:"Last year (Control + left)",nextYear:"Next year (Control + right)",previousDecade:"Last decade",nextDecade:"Next decade",previousCentury:"Last century",nextCentury:"Next century"});return qo.default=r,qo}var Xo={},Ym;function IS(){if(Ym)return Xo;Ym=1,Object.defineProperty(Xo,"__esModule",{value:!0}),Xo.default=void 0;const e={placeholder:"Select time",rangePlaceholder:["Start time","End time"]};return Xo.default=e,Xo}var Km;function OS(){if(Km)return Uo;Km=1;var e=It().default;Object.defineProperty(Uo,"__esModule",{value:!0}),Uo.default=void 0;var t=e(VO()),n=e(IS());const r={lang:Object.assign({placeholder:"Select date",yearPlaceholder:"Select year",quarterPlaceholder:"Select quarter",monthPlaceholder:"Select month",weekPlaceholder:"Select week",rangePlaceholder:["Start date","End date"],rangeYearPlaceholder:["Start year","End year"],rangeQuarterPlaceholder:["Start quarter","End quarter"],rangeMonthPlaceholder:["Start month","End month"],rangeWeekPlaceholder:["Start week","End week"]},t.default),timePickerLocale:Object.assign({},n.default)};return Uo.default=r,Uo}var Vm;function GO(){if(Vm)return Wo;Vm=1;var e=It().default;Object.defineProperty(Wo,"__esModule",{value:!0}),Wo.default=void 0;var t=e(OS());return Wo.default=t.default,Wo}var Gm;function JO(){if(Gm)return zo;Gm=1;var e=It().default;Object.defineProperty(zo,"__esModule",{value:!0}),zo.default=void 0;var t=e(HO()),n=e(GO()),r=e(OS()),s=e(IS());const o="${label} is not a valid ${type}",a={locale:"en",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"Please select"},Table:{filterTitle:"Filter menu",filterConfirm:"OK",filterReset:"Reset",filterEmptyText:"No filters",filterCheckAll:"Select all items",filterSearchPlaceholder:"Search in filters",emptyText:"No data",selectAll:"Select current page",selectInvert:"Invert current page",selectNone:"Clear all data",selectionAll:"Select all data",sortTitle:"Sort",expand:"Expand row",collapse:"Collapse row",triggerDesc:"Click to sort descending",triggerAsc:"Click to sort ascending",cancelSort:"Click to cancel sorting"},Tour:{Next:"Next",Previous:"Previous",Finish:"Finish"},Modal:{okText:"OK",cancelText:"Cancel",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"Cancel"},Transfer:{titles:["",""],searchPlaceholder:"Search here",itemUnit:"item",itemsUnit:"items",remove:"Remove",selectCurrent:"Select current page",removeCurrent:"Remove current page",selectAll:"Select all data",deselectAll:"Deselect all data",removeAll:"Remove all data",selectInvert:"Invert current page"},Upload:{uploading:"Uploading...",removeFile:"Remove file",uploadError:"Upload error",previewFile:"Preview file",downloadFile:"Download file"},Empty:{description:"No data"},Icon:{icon:"icon"},Text:{edit:"Edit",copy:"Copy",copied:"Copied",expand:"Expand",collapse:"Collapse"},Form:{optional:"(optional)",defaultValidateMessages:{default:"Field validation error for ${label}",required:"Please enter ${label}",enum:"${label} must be one of [${enum}]",whitespace:"${label} cannot be a blank character",date:{format:"${label} date format is invalid",parse:"${label} cannot be converted to a date",invalid:"${label} is an invalid date"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label} must be ${len} characters",min:"${label} must be at least ${min} characters",max:"${label} must be up to ${max} characters",range:"${label} must be between ${min}-${max} characters"},number:{len:"${label} must be equal to ${len}",min:"${label} must be minimum ${min}",max:"${label} must be maximum ${max}",range:"${label} must be between ${min}-${max}"},array:{len:"Must be ${len} ${label}",min:"At least ${min} ${label}",max:"At most ${max} ${label}",range:"The amount of ${label} must be between ${min}-${max}"},pattern:{mismatch:"${label} does not match the pattern ${pattern}"}}},Image:{preview:"Preview"},QRCode:{expired:"QR code expired",refresh:"Refresh",scanned:"Scanned"},ColorPicker:{presetEmpty:"Empty",transparent:"Transparent",singleColor:"Single",gradientColor:"Gradient"}};return zo.default=a,zo}var gu,Jm;function QO(){return Jm||(Jm=1,gu=JO()),gu}var ZO=QO();const e$=Cs(ZO);var Yo={},Ko={},Qm;function t$(){if(Qm)return Ko;Qm=1,Object.defineProperty(Ko,"__esModule",{value:!0}),Ko.default=void 0;var e={items_per_page:"/ page",jump_to:"Aller à",jump_to_confirm:"confirmer",page:"Page",prev_page:"Page précédente",next_page:"Page suivante",prev_5:"5 Pages précédentes",next_5:"5 Pages suivantes",prev_3:"3 Pages précédentes",next_3:"3 Pages suivantes",page_size:"taille de la page"};return Ko.default=e,Ko}var Vo={},Go={},Jo={},Zm;function n$(){if(Zm)return Jo;Zm=1;var e=It().default;Object.defineProperty(Jo,"__esModule",{value:!0}),Jo.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"fr_FR",today:"Aujourd'hui",now:"Maintenant",backToToday:"Aujourd'hui",ok:"OK",clear:"Rétablir",week:"Semaine",month:"Mois",year:"Année",timeSelect:"Sélectionner l'heure",dateSelect:"Sélectionner la date",monthSelect:"Choisissez un mois",yearSelect:"Choisissez une année",decadeSelect:"Choisissez une décennie",dateFormat:"DD/MM/YYYY",dayFormat:"DD",dateTimeFormat:"DD/MM/YYYY HH:mm:ss",previousMonth:"Mois précédent (PageUp)",nextMonth:"Mois suivant (PageDown)",previousYear:"Année précédente (Ctrl + gauche)",nextYear:"Année prochaine (Ctrl + droite)",previousDecade:"Décennie précédente",nextDecade:"Décennie suivante",previousCentury:"Siècle précédent",nextCentury:"Siècle suivant"});return Jo.default=r,Jo}var Qo={},eg;function $S(){if(eg)return Qo;eg=1,Object.defineProperty(Qo,"__esModule",{value:!0}),Qo.default=void 0;const e={placeholder:"Sélectionner l'heure",rangePlaceholder:["Heure de début","Heure de fin"]};return Qo.default=e,Qo}var tg;function LS(){if(tg)return Go;tg=1;var e=It().default;Object.defineProperty(Go,"__esModule",{value:!0}),Go.default=void 0;var t=e(n$()),n=e($S());const r={lang:Object.assign({placeholder:"Sélectionner une date",yearPlaceholder:"Sélectionner une année",quarterPlaceholder:"Sélectionner un trimestre",monthPlaceholder:"Sélectionner un mois",weekPlaceholder:"Sélectionner une semaine",rangePlaceholder:["Date de début","Date de fin"],rangeYearPlaceholder:["Année de début","Année de fin"],rangeMonthPlaceholder:["Mois de début","Mois de fin"],rangeWeekPlaceholder:["Semaine de début","Semaine de fin"]},t.default),timePickerLocale:Object.assign({},n.default)};return Go.default=r,Go}var ng;function r$(){if(ng)return Vo;ng=1;var e=It().default;Object.defineProperty(Vo,"__esModule",{value:!0}),Vo.default=void 0;var t=e(LS());return Vo.default=t.default,Vo}var rg;function s$(){if(rg)return Yo;rg=1;var e=It().default;Object.defineProperty(Yo,"__esModule",{value:!0}),Yo.default=void 0;var t=e(t$()),n=e(r$()),r=e(LS()),s=e($S());const o="La valeur du champ ${label} n'est pas valide pour le type ${type}",a={locale:"fr",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,Table:{filterTitle:"Filtrer",filterConfirm:"OK",filterReset:"Réinitialiser",filterEmptyText:"Aucun filtre",filterCheckAll:"Tout sélectionner",filterSearchPlaceholder:"Chercher dans les filtres",emptyText:"Aucune donnée",selectAll:"Sélectionner la page actuelle",selectInvert:"Inverser la sélection de la page actuelle",selectNone:"Désélectionner toutes les données",selectionAll:"Sélectionner toutes les données",sortTitle:"Trier",expand:"Développer la ligne",collapse:"Réduire la ligne",triggerDesc:"Trier par ordre décroissant",triggerAsc:"Trier par ordre croissant",cancelSort:"Annuler le tri"},Tour:{Next:"Étape suivante",Previous:"Étape précédente",Finish:"Fin de la visite guidée"},Modal:{okText:"OK",cancelText:"Annuler",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"Annuler"},Transfer:{titles:["",""],searchPlaceholder:"Rechercher",itemUnit:"élément",itemsUnit:"éléments",remove:"Désélectionner",selectCurrent:"Sélectionner la page actuelle",removeCurrent:"Désélectionner la page actuelle",selectAll:"Sélectionner toutes les données",removeAll:"Désélectionner toutes les données",selectInvert:"Inverser la sélection de la page actuelle"},Upload:{uploading:"Téléchargement...",removeFile:"Effacer le fichier",uploadError:"Erreur de téléchargement",previewFile:"Fichier de prévisualisation",downloadFile:"Télécharger un fichier"},Empty:{description:"Aucune donnée"},Icon:{icon:"icône"},Text:{edit:"Éditer",copy:"Copier",copied:"Copie effectuée",expand:"Développer"},Form:{optional:"(optionnel)",defaultValidateMessages:{default:"Erreur de validation pour le champ ${label}",required:"Le champ ${label} est obligatoire",enum:"La valeur du champ ${label} doit être parmi [${enum}]",whitespace:"La valeur du champ ${label} ne peut pas être vide",date:{format:"La valeur du champ ${label} n'est pas au format date",parse:"La valeur du champ ${label} ne peut pas être convertie vers une date",invalid:"La valeur du champ ${label} n'est pas une date valide"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"La taille du champ ${label} doit être de ${len} caractères",min:"La taille du champ ${label} doit être au minimum de ${min} caractères",max:"La taille du champ ${label} doit être au maximum de ${max} caractères",range:"La taille du champ ${label} doit être entre ${min} et ${max} caractères"},number:{len:"La valeur du champ ${label} doit être égale à ${len}",min:"La valeur du champ ${label} doit être plus grande que ${min}",max:"La valeur du champ ${label} doit être plus petit que ${max}",range:"La valeur du champ ${label} doit être entre ${min} et ${max}"},array:{len:"La taille du tableau ${label} doit être de ${len}",min:"La taille du tableau ${label} doit être au minimum de ${min}",max:"La taille du tableau ${label} doit être au maximum de ${max}",range:"La taille du tableau ${label} doit être entre ${min}-${max}"},pattern:{mismatch:"La valeur du champ ${label} ne correspond pas au modèle ${pattern}"}}},Image:{preview:"Aperçu"}};return Yo.default=a,Yo}var yu,sg;function o$(){return sg||(sg=1,yu=s$()),yu}var a$=o$();const i$=Cs(a$);var Zo={},ea={},og;function l$(){if(og)return ea;og=1,Object.defineProperty(ea,"__esModule",{value:!0}),ea.default=void 0;var e={items_per_page:"/ पृष्ठ",jump_to:"इस पर चलें",jump_to_confirm:"पुष्टि करें",page:"",prev_page:"पिछला पृष्ठ",next_page:"अगला पृष्ठ",prev_5:"पिछले 5 पृष्ठ",next_5:"अगले 5 पृष्ठ",prev_3:"पिछले 3 पृष्ठ",next_3:"अगले 3 पेज",page_size:"Page Size"};return ea.default=e,ea}var ta={},na={},ra={},ag;function c$(){if(ag)return ra;ag=1;var e=It().default;Object.defineProperty(ra,"__esModule",{value:!0}),ra.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"hi_IN",today:"आज",now:"अभी",backToToday:"आज तक",ok:"ठीक",clear:"स्पष्ट",week:"सप्ताह",month:"महीना",year:"साल",timeSelect:"समय का चयन करें",dateSelect:"तारीख़ चुनें",weekSelect:"एक सप्ताह चुनें",monthSelect:"एक महीना चुनें",yearSelect:"एक वर्ष चुनें",decadeSelect:"एक दशक चुनें",dateFormat:"M/D/YYYY",dateTimeFormat:"M/D/YYYY HH:mm:ss",previousMonth:"पिछला महीना (पेजअप)",nextMonth:"अगले महीने (पेजडाउन)",previousYear:"पिछले साल (Ctrl + बाएं)",nextYear:"अगले साल (Ctrl + दाहिना)",previousDecade:"पिछला दशक",nextDecade:"अगले दशक",previousCentury:"पीछ्ली शताब्दी",nextCentury:"अगली सदी"});return ra.default=r,ra}var sa={},ig;function DS(){if(ig)return sa;ig=1,Object.defineProperty(sa,"__esModule",{value:!0}),sa.default=void 0;const e={placeholder:"समय का चयन करें",rangePlaceholder:["आरंभिक समय","अंत समय"]};return sa.default=e,sa}var lg;function FS(){if(lg)return na;lg=1;var e=It().default;Object.defineProperty(na,"__esModule",{value:!0}),na.default=void 0;var t=e(c$()),n=e(DS());const r={lang:Object.assign({placeholder:"तारीख़ चुनें",yearPlaceholder:"वर्ष चुनें",quarterPlaceholder:"तिमाही चुनें",monthPlaceholder:"महीना चुनिए",weekPlaceholder:"सप्ताह चुनें",rangePlaceholder:["प्रारंभ तिथि","समाप्ति तिथि"],rangeYearPlaceholder:["आरंभिक वर्ष","अंत वर्ष"],rangeMonthPlaceholder:["आरंभिक महीना","अंत महीना"],rangeWeekPlaceholder:["आरंभिक सप्ताह","अंत सप्ताह"]},t.default),timePickerLocale:Object.assign({},n.default)};return na.default=r,na}var cg;function u$(){if(cg)return ta;cg=1;var e=It().default;Object.defineProperty(ta,"__esModule",{value:!0}),ta.default=void 0;var t=e(FS());return ta.default=t.default,ta}var ug;function d$(){if(ug)return Zo;ug=1;var e=It().default;Object.defineProperty(Zo,"__esModule",{value:!0}),Zo.default=void 0;var t=e(l$()),n=e(u$()),r=e(FS()),s=e(DS());const o="${label} मान्य ${type} नहीं है",a={locale:"hi",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"कृपया चुनें"},Table:{filterTitle:"सूची बंद करें",filterConfirm:"अच्छी तरह से",filterReset:"रीसेट",filterEmptyText:"कोई फ़िल्टर नहीं",emptyText:"कोई जानकारी नहीं",selectAll:"वर्तमान पृष्ठ का चयन करें",selectInvert:"वर्तमान पृष्ठ घुमाएं",selectNone:"सभी डेटा साफ़ करें",selectionAll:"सभी डेटा का चयन करें",sortTitle:"द्वारा क्रमबद्ध करें",expand:"पंक्ति का विस्तार करें",collapse:"पंक्ति संक्षिप्त करें",triggerDesc:"अवरोही क्रमित करने के लिए क्लिक करें",triggerAsc:"आरोही क्रमित करने के लिए क्लिक करें",cancelSort:"छँटाई रद्द करने के लिए क्लिक करें"},Modal:{okText:"अच्छी तरह से",cancelText:"रद्द करना",justOkText:"अच्छी तरह से"},Popconfirm:{okText:"अच्छी तरह से",cancelText:"रद्द करना"},Transfer:{titles:["",""],searchPlaceholder:"यहां खोजें",itemUnit:"तत्त्व",itemsUnit:"विषय-वस्तु",remove:"हटाए",selectCurrent:"वर्तमान पृष्ठ का चयन करें",removeCurrent:"वर्तमान पृष्ठ हटाएं",selectAll:"सभी डेटा का चयन करें",removeAll:"सभी डेटा हटाएं",selectInvert:"वर्तमान पृष्ठ को उल्टा करें"},Upload:{uploading:"अपलोड हो रहा...",removeFile:"फ़ाइल निकालें",uploadError:"अपलोड में त्रुटि",previewFile:"फ़ाइल पूर्वावलोकन",downloadFile:"फ़ाइल डाउनलोड करें"},Empty:{description:"कोई आकड़ा उपलब्ध नहीं है"},Icon:{icon:"आइकन"},Text:{edit:"संपादित करें",copy:"प्रतिलिपि",copied:"कॉपी किया गया",expand:"विस्तार"},Form:{optional:"(ऐच्छिक)",defaultValidateMessages:{default:"${label} के लिए फील्ड सत्यापन त्रुटि",required:"कृपया ${label} दर्ज करें",enum:"${label} [${enum}] में से एक होना चाहिए",whitespace:"${label} एक खाली अक्षर नहीं हो सकता",date:{format:"${label} तिथि प्रारूप अमान्य है",parse:"${label} को तारीख में नहीं बदला जा सकता",invalid:"${label} एक अमान्य तिथि है"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label} ${len} अक्षर का होना चाहिए",min:"${label} कम से कम ${min} वर्णों का होना चाहिए",max:"${label} अधिकतम ${max} वर्णों का होना चाहिए",range:"${label} ${min}-${max} वर्णों के बीच होना चाहिए"},number:{len:"${label} ${len} के बराबर होना चाहिए",min:"${label} कम से कम ${min} होना चाहिए",max:"${label} अधिकतम ${max} होना चाहिए",range:"${label} ${min}-${max} के बीच होना चाहिए"},array:{len:"${len} ${label} होना चाहिए",min:"कम से कम ${min} ${label}",max:"ज्यादा से ज्यादा ${max} ${label}",range:"${label} की राशि ${min}-${max} के बीच होनी चाहिए"},pattern:{mismatch:"${label} ${pattern} पैटर्न से मेल नहीं खाता"}}},Image:{preview:"पूर्वावलोकन"}};return Zo.default=a,Zo}var vu,dg;function f$(){return dg||(dg=1,vu=d$()),vu}var h$=f$();const p$=Cs(h$);var oa={},aa={},fg;function m$(){if(fg)return aa;fg=1,Object.defineProperty(aa,"__esModule",{value:!0}),aa.default=void 0;var e={items_per_page:"件 / ページ",jump_to:"移動",jump_to_confirm:"確認する",page:"ページ",prev_page:"前のページ",next_page:"次のページ",prev_5:"前 5ページ",next_5:"次 5ページ",prev_3:"前 3ページ",next_3:"次 3ページ",page_size:"ページサイズ"};return aa.default=e,aa}var ia={},la={},ca={},hg;function g$(){if(hg)return ca;hg=1;var e=It().default;Object.defineProperty(ca,"__esModule",{value:!0}),ca.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"ja_JP",today:"今日",now:"現在時刻",backToToday:"今日に戻る",ok:"確定",timeSelect:"時間を選択",dateSelect:"日時を選択",weekSelect:"週を選択",clear:"クリア",week:"週",month:"月",year:"年",previousMonth:"前月 (ページアップキー)",nextMonth:"翌月 (ページダウンキー)",monthSelect:"月を選択",yearSelect:"年を選択",decadeSelect:"年代を選択",yearFormat:"YYYY年",dateFormat:"YYYY年M月D日",dateTimeFormat:"YYYY年M月D日 HH時mm分ss秒",previousYear:"前年 (Controlを押しながら左キー)",nextYear:"翌年 (Controlを押しながら右キー)",previousDecade:"前の年代",nextDecade:"次の年代",previousCentury:"前の世紀",nextCentury:"次の世紀",monthBeforeYear:!1});return ca.default=r,ca}var ua={},pg;function NS(){if(pg)return ua;pg=1,Object.defineProperty(ua,"__esModule",{value:!0}),ua.default=void 0;const e={placeholder:"時間を選択",rangePlaceholder:["開始時間","終了時間"]};return ua.default=e,ua}var mg;function zS(){if(mg)return la;mg=1;var e=It().default;Object.defineProperty(la,"__esModule",{value:!0}),la.default=void 0;var t=e(g$()),n=e(NS());const r={lang:Object.assign({placeholder:"日付を選択",yearPlaceholder:"年を選択",quarterPlaceholder:"四半期を選択",monthPlaceholder:"月を選択",weekPlaceholder:"週を選択",rangePlaceholder:["開始日付","終了日付"],rangeYearPlaceholder:["開始年","終了年"],rangeMonthPlaceholder:["開始月","終了月"],rangeQuarterPlaceholder:["開始四半期","終了四半期"],rangeWeekPlaceholder:["開始週","終了週"],shortWeekDays:["日","月","火","水","木","金","土"],shortMonths:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"]},t.default),timePickerLocale:Object.assign({},n.default)};return la.default=r,la}var gg;function y$(){if(gg)return ia;gg=1;var e=It().default;Object.defineProperty(ia,"__esModule",{value:!0}),ia.default=void 0;var t=e(zS());return ia.default=t.default,ia}var yg;function v$(){if(yg)return oa;yg=1;var e=It().default;Object.defineProperty(oa,"__esModule",{value:!0}),oa.default=void 0;var t=e(m$()),n=e(y$()),r=e(zS()),s=e(NS());const o="${label}は有効な${type}ではありません",a={locale:"ja",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"選んでください"},Table:{filterTitle:"フィルター",filterConfirm:"OK",filterReset:"リセット",filterEmptyText:"フィルターなし",filterCheckAll:"すべてを選択",filterSearchPlaceholder:"フィルターで検索",emptyText:"データなし",selectAll:"ページ単位で選択",selectInvert:"ページ単位で反転",selectNone:"クリア",selectionAll:"すべてを選択",sortTitle:"ソート",expand:"展開する",collapse:"折り畳む",triggerDesc:"クリックで降順にソート",triggerAsc:"クリックで昇順にソート",cancelSort:"ソートをキャンセル"},Tour:{Next:"次",Previous:"前の",Finish:"仕上げる"},Modal:{okText:"OK",cancelText:"キャンセル",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"キャンセル"},Transfer:{titles:["",""],searchPlaceholder:"ここを検索",itemUnit:"アイテム",itemsUnit:"アイテム",remove:"削除",selectCurrent:"現在のページを選択",removeCurrent:"現在のページを削除",selectAll:"ページ単位で選択",deselectAll:"すべてのデータの選択を解除する",removeAll:"ページ単位で削除",selectInvert:"ページ単位で反転"},Upload:{uploading:"アップロード中...",removeFile:"ファイルを削除",uploadError:"アップロードエラー",previewFile:"ファイルをプレビュー",downloadFile:"ダウンロードファイル"},Empty:{description:"データがありません"},Icon:{icon:"アイコン"},Text:{edit:"編集",copy:"コピー",copied:"コピーされました",expand:"拡大する",collapse:"崩壊"},Form:{optional:"(オプション)",defaultValidateMessages:{default:"${label}のフィールド検証エラー",required:"${label}を入力してください",enum:"${label}は[${enum}]のいずれかである必要があります",whitespace:"${label}は空白文字にすることはできません",date:{format:"${label}の日付形式は不正です",parse:"${label}は日付に変換できません",invalid:"${label}は不正な日付です"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label}は${len}文字である必要があります",min:"${label}は${min}文字以上である必要があります",max:"${label}は${max}文字以下である必要があります",range:"${label}は${min}-${max}文字の範囲である必要があります"},number:{len:"${label}は${len}と等しい必要があります",min:"${label}の最小値は${min}です",max:"${label}の最大値は${max}です",range:"${label}は${min}-${max}の範囲である必要があります"},array:{len:"${label}は${len}である必要があります",min:"${label}の最小は${min}です",max:"${label}の最大は${max}です",range:"${label}の合計は${min}-${max}の範囲である必要があります"},pattern:{mismatch:"${label}はパターン${pattern}と一致しません"}}},Image:{preview:"プレビュー"},QRCode:{expired:"QRコードの有効期限が切れました",refresh:"リフレッシュ",scanned:"スキャン済み"},ColorPicker:{presetEmpty:"空の",transparent:"透明",singleColor:"単色",gradientColor:"グラデーション"}};return oa.default=a,oa}var bu,vg;function b$(){return vg||(vg=1,bu=v$()),bu}var S$=b$();const w$=Cs(S$);var da={},fa={},bg;function x$(){if(bg)return fa;bg=1,Object.defineProperty(fa,"__esModule",{value:!0}),fa.default=void 0;var e={items_per_page:"条/页",jump_to:"跳至",jump_to_confirm:"确定",page:"页",prev_page:"上一页",next_page:"下一页",prev_5:"向前 5 页",next_5:"向后 5 页",prev_3:"向前 3 页",next_3:"向后 3 页",page_size:"页码"};return fa.default=e,fa}var ha={},pa={},ma={},Sg;function _$(){if(Sg)return ma;Sg=1;var e=It().default;Object.defineProperty(ma,"__esModule",{value:!0}),ma.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"zh_CN",today:"今天",now:"此刻",backToToday:"返回今天",ok:"确定",timeSelect:"选择时间",dateSelect:"选择日期",weekSelect:"选择周",clear:"清除",week:"周",month:"月",year:"年",previousMonth:"上个月 (翻页上键)",nextMonth:"下个月 (翻页下键)",monthSelect:"选择月份",yearSelect:"选择年份",decadeSelect:"选择年代",previousYear:"上一年 (Control键加左方向键)",nextYear:"下一年 (Control键加右方向键)",previousDecade:"上一年代",nextDecade:"下一年代",previousCentury:"上一世纪",nextCentury:"下一世纪",yearFormat:"YYYY年",cellDateFormat:"D",monthBeforeYear:!1});return ma.default=r,ma}var ga={},wg;function BS(){if(wg)return ga;wg=1,Object.defineProperty(ga,"__esModule",{value:!0}),ga.default=void 0;const e={placeholder:"请选择时间",rangePlaceholder:["开始时间","结束时间"]};return ga.default=e,ga}var xg;function WS(){if(xg)return pa;xg=1;var e=It().default;Object.defineProperty(pa,"__esModule",{value:!0}),pa.default=void 0;var t=e(_$()),n=e(BS());const r={lang:Object.assign({placeholder:"请选择日期",yearPlaceholder:"请选择年份",quarterPlaceholder:"请选择季度",monthPlaceholder:"请选择月份",weekPlaceholder:"请选择周",rangePlaceholder:["开始日期","结束日期"],rangeYearPlaceholder:["开始年份","结束年份"],rangeMonthPlaceholder:["开始月份","结束月份"],rangeQuarterPlaceholder:["开始季度","结束季度"],rangeWeekPlaceholder:["开始周","结束周"]},t.default),timePickerLocale:Object.assign({},n.default)};return r.lang.ok="确定",pa.default=r,pa}var _g;function C$(){if(_g)return ha;_g=1;var e=It().default;Object.defineProperty(ha,"__esModule",{value:!0}),ha.default=void 0;var t=e(WS());return ha.default=t.default,ha}var Cg;function k$(){if(Cg)return da;Cg=1;var e=It().default;Object.defineProperty(da,"__esModule",{value:!0}),da.default=void 0;var t=e(x$()),n=e(C$()),r=e(WS()),s=e(BS());const o="${label}不是一个有效的${type}",a={locale:"zh-cn",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"请选择"},Table:{filterTitle:"筛选",filterConfirm:"确定",filterReset:"重置",filterEmptyText:"无筛选项",filterCheckAll:"全选",filterSearchPlaceholder:"在筛选项中搜索",emptyText:"暂无数据",selectAll:"全选当页",selectInvert:"反选当页",selectNone:"清空所有",selectionAll:"全选所有",sortTitle:"排序",expand:"展开行",collapse:"关闭行",triggerDesc:"点击降序",triggerAsc:"点击升序",cancelSort:"取消排序"},Modal:{okText:"确定",cancelText:"取消",justOkText:"知道了"},Tour:{Next:"下一步",Previous:"上一步",Finish:"结束导览"},Popconfirm:{cancelText:"取消",okText:"确定"},Transfer:{titles:["",""],searchPlaceholder:"请输入搜索内容",itemUnit:"项",itemsUnit:"项",remove:"删除",selectCurrent:"全选当页",removeCurrent:"删除当页",selectAll:"全选所有",deselectAll:"取消全选",removeAll:"删除全部",selectInvert:"反选当页"},Upload:{uploading:"文件上传中",removeFile:"删除文件",uploadError:"上传错误",previewFile:"预览文件",downloadFile:"下载文件"},Empty:{description:"暂无数据"},Icon:{icon:"图标"},Text:{edit:"编辑",copy:"复制",copied:"复制成功",expand:"展开",collapse:"收起"},Form:{optional:"(可选)",defaultValidateMessages:{default:"字段验证错误${label}",required:"请输入${label}",enum:"${label}必须是其中一个[${enum}]",whitespace:"${label}不能为空字符",date:{format:"${label}日期格式无效",parse:"${label}不能转换为日期",invalid:"${label}是一个无效日期"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label}须为${len}个字符",min:"${label}最少${min}个字符",max:"${label}最多${max}个字符",range:"${label}须在${min}-${max}字符之间"},number:{len:"${label}必须等于${len}",min:"${label}最小值为${min}",max:"${label}最大值为${max}",range:"${label}须在${min}-${max}之间"},array:{len:"须为${len}个${label}",min:"最少${min}个${label}",max:"最多${max}个${label}",range:"${label}数量须在${min}-${max}之间"},pattern:{mismatch:"${label}与模式不匹配${pattern}"}}},Image:{preview:"预览"},QRCode:{expired:"二维码过期",refresh:"点击刷新",scanned:"已扫描"},ColorPicker:{presetEmpty:"暂无",transparent:"无色",singleColor:"单色",gradientColor:"渐变色"}};return da.default=a,da}var Su,kg;function T$(){return kg||(kg=1,Su=k$()),Su}var P$=T$();const E$=Cs(P$);var ya={},va={},Tg;function M$(){if(Tg)return va;Tg=1,Object.defineProperty(va,"__esModule",{value:!0}),va.default=void 0;var e={items_per_page:"條/頁",jump_to:"跳至",jump_to_confirm:"確定",page:"頁",prev_page:"上一頁",next_page:"下一頁",prev_5:"向前 5 頁",next_5:"向後 5 頁",prev_3:"向前 3 頁",next_3:"向後 3 頁",page_size:"頁碼"};return va.default=e,va}var ba={},Sa={},wa={},Pg;function R$(){if(Pg)return wa;Pg=1;var e=It().default;Object.defineProperty(wa,"__esModule",{value:!0}),wa.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"zh_TW",today:"今天",now:"此刻",backToToday:"返回今天",ok:"確定",timeSelect:"選擇時間",dateSelect:"選擇日期",weekSelect:"選擇周",clear:"清除",week:"週",month:"月",year:"年",previousMonth:"上個月 (翻頁上鍵)",nextMonth:"下個月 (翻頁下鍵)",monthSelect:"選擇月份",yearSelect:"選擇年份",decadeSelect:"選擇年代",yearFormat:"YYYY年",dateFormat:"YYYY年M月D日",dateTimeFormat:"YYYY年M月D日 HH時mm分ss秒",previousYear:"上一年 (Control鍵加左方向鍵)",nextYear:"下一年 (Control鍵加右方向鍵)",previousDecade:"上一年代",nextDecade:"下一年代",previousCentury:"上一世紀",nextCentury:"下一世紀",cellDateFormat:"D",monthBeforeYear:!1});return wa.default=r,wa}var xa={},Eg;function US(){if(Eg)return xa;Eg=1,Object.defineProperty(xa,"__esModule",{value:!0}),xa.default=void 0;const e={placeholder:"請選擇時間"};return xa.default=e,xa}var Mg;function qS(){if(Mg)return Sa;Mg=1;var e=It().default;Object.defineProperty(Sa,"__esModule",{value:!0}),Sa.default=void 0;var t=e(R$()),n=e(US());const r={lang:Object.assign({placeholder:"請選擇日期",yearPlaceholder:"請選擇年份",quarterPlaceholder:"請選擇季度",monthPlaceholder:"請選擇月份",weekPlaceholder:"請選擇周",rangePlaceholder:["開始日期","結束日期"],rangeYearPlaceholder:["開始年份","結束年份"],rangeMonthPlaceholder:["開始月份","結束月份"],rangeQuarterPlaceholder:["開始季度","結束季度"],rangeWeekPlaceholder:["開始周","結束周"]},t.default),timePickerLocale:Object.assign({},n.default)};return r.lang.ok="確 定",Sa.default=r,Sa}var Rg;function A$(){if(Rg)return ba;Rg=1;var e=It().default;Object.defineProperty(ba,"__esModule",{value:!0}),ba.default=void 0;var t=e(qS());return ba.default=t.default,ba}var Ag;function j$(){if(Ag)return ya;Ag=1;var e=It().default;Object.defineProperty(ya,"__esModule",{value:!0}),ya.default=void 0;var t=e(M$()),n=e(A$()),r=e(qS()),s=e(US());const o="${label}不是一個有效的${type}",a={locale:"zh-tw",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"請選擇"},Table:{filterTitle:"篩選器",filterConfirm:"確定",filterReset:"重置",filterEmptyText:"無篩選項",filterCheckAll:"全選",filterSearchPlaceholder:"在篩選項中搜尋",emptyText:"暫無數據",selectAll:"全部選取",selectInvert:"反向選取",selectNone:"清空所有",selectionAll:"全選所有",sortTitle:"排序",expand:"展開行",collapse:"關閉行",triggerDesc:"點擊降序",triggerAsc:"點擊升序",cancelSort:"取消排序"},Modal:{okText:"確定",cancelText:"取消",justOkText:"知道了"},Tour:{Next:"下一步",Previous:"上一步",Finish:"結束導覽"},Popconfirm:{okText:"確定",cancelText:"取消"},Transfer:{titles:["",""],searchPlaceholder:"搜尋資料",itemUnit:"項目",itemsUnit:"項目",remove:"删除",selectCurrent:"全選當頁",removeCurrent:"删除當頁",selectAll:"全選所有",removeAll:"删除全部",selectInvert:"反選當頁"},Upload:{uploading:"正在上傳...",removeFile:"刪除檔案",uploadError:"上傳失敗",previewFile:"檔案預覽",downloadFile:"下载文件"},Empty:{description:"無此資料"},Icon:{icon:"圖標"},Text:{edit:"編輯",copy:"複製",copied:"複製成功",expand:"展開",collapse:"收起"},Form:{optional:"(可選)",defaultValidateMessages:{default:"字段驗證錯誤${label}",required:"請輸入${label}",enum:"${label}必須是其中一個[${enum}]",whitespace:"${label}不能為空字符",date:{format:"${label}日期格式無效",parse:"${label}不能轉換為日期",invalid:"${label}是一個無效日期"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label}須為${len}個字符",min:"${label}最少${min}個字符",max:"${label}最多${max}個字符",range:"${label}須在${min}-${max}字符之間"},number:{len:"${label}必須等於${len}",min:"${label}最小值為${min}",max:"${label}最大值為${max}",range:"${label}須在${min}-${max}之間"},array:{len:"須為${len}個${label}",min:"最少${min}個${label}",max:"最多${max}個${label}",range:"${label}數量須在${min}-${max}之間"},pattern:{mismatch:"${label}與模式不匹配${pattern}"}}},Image:{preview:"預覽"},QRCode:{expired:"二維碼過期",refresh:"點擊刷新",scanned:"已掃描"},ColorPicker:{presetEmpty:"暫無",transparent:"透明",singleColor:"單色",gradientColor:"漸變色"}};return ya.default=a,ya}var wu,jg;function I$(){return jg||(jg=1,wu=j$()),wu}var O$=I$();const $$=Cs(O$),Ig=e=>{switch(e){case"zh-CN":return E$;case"zh-TW":return $$;case"fr-FR":return i$;case"ja-JP":return w$;case"hi-IN":return p$;default:return e$}},HS="lotus_vdi_safe_mode",Og=()=>{try{return localStorage.getItem(HS)==="true"}catch{return!1}},PL=e=>{try{localStorage.setItem(HS,e.toString())}catch(t){console.error("[vdiSafeMode] Failed to persist setting:",t)}},XS={colorPrimary:"#157f6b",colorPrimaryHover:"#1b9a82",colorPrimaryActive:"#0f5f51",colorInfo:"#2b6e8f",colorLink:"#157f6b",colorLinkHover:"#1b9a82",colorLinkActive:"#0f5f51",colorSuccess:"#2e9e6f",colorWarning:"#c08a2e",colorError:"#d24b3c",colorText:"#0f172a",colorTextSecondary:"#475569",colorTextTertiary:"#64748b",colorTextDisabled:"#94a3b8",colorTextLightSolid:"#ffffff",colorBorder:"#d1e3e0",colorBorderSecondary:"#e2f0ee",colorFill:"#f0fdfa",colorFillSecondary:"#f7fdfb",colorFillTertiary:"rgba(255, 255, 255, 0.82)",colorFillQuaternary:"transparent",colorBgLayout:"#eef5f1",colorBgContainer:"rgba(255, 255, 255, 0.82)",colorBgElevated:"rgba(255, 255, 255, 0.9)",colorBgSpotlight:"rgba(21, 127, 107, 0.16)",colorPrimaryBg:"#e6f1ec",colorPrimaryBgHover:"#cfe6dd",colorPrimaryBorder:"#9fd0c1",borderRadius:10,borderRadiusLG:18,borderRadiusSM:10,boxShadow:"0 12px 36px rgba(15, 118, 110, 0.10), 0 6px 18px rgba(15, 23, 42, 0.06)",boxShadowSecondary:"0 20px 48px rgba(15, 118, 110, 0.12), 0 8px 24px rgba(15, 23, 42, 0.08)"},YS={colorPrimary:"#46c2a0",colorPrimaryHover:"#6ad7b8",colorPrimaryActive:"#2e9e7f",colorInfo:"#5aa9cf",colorLink:"#46c2a0",colorLinkHover:"#6ad7b8",colorLinkActive:"#2e9e7f",colorSuccess:"#4cc08c",colorWarning:"#dcae4c",colorError:"#ef6a5c",colorText:"#e5edf8",colorTextSecondary:"#b7c4d6",colorTextTertiary:"#8d9bb0",colorTextDisabled:"#627085",colorBorder:"rgba(255, 255, 255, 0.10)",colorBorderSecondary:"rgba(255, 255, 255, 0.06)",colorFill:"#0c1a17",colorFillSecondary:"#091412",colorFillTertiary:"rgba(15, 23, 42, 0.74)",colorFillQuaternary:"transparent",colorBgLayout:"#070f0d",colorBgContainer:"rgba(11, 23, 20, 0.76)",colorBgElevated:"rgba(15, 31, 27, 0.9)",colorBgSpotlight:"rgba(21, 127, 107, 0.22)",colorPrimaryBg:"rgba(21, 127, 107, 0.16)",colorPrimaryBgHover:"rgba(21, 127, 107, 0.22)",colorPrimaryBorder:"rgba(70, 194, 160, 0.30)",borderRadius:10,borderRadiusLG:18,borderRadiusSM:10,boxShadow:"0 16px 40px rgba(2, 6, 23, 0.42), 0 8px 20px rgba(15, 23, 42, 0.24)",boxShadowSecondary:"0 24px 56px rgba(2, 6, 23, 0.5), 0 10px 28px rgba(15, 23, 42, 0.28)"},KS={Tag:{defaultBg:"rgba(21, 127, 107, 0.10)",defaultColor:"#0f5f51"},Table:{bodySortBg:"rgba(21, 127, 107, 0.08)"}},VS={Tag:{defaultBg:"rgba(70, 194, 160, 0.18)",defaultColor:"#c8efe2"},Table:{bodySortBg:"rgba(70, 194, 160, 0.14)"}},L$={...XS,colorBgElevated:"#ffffff",colorBgSpotlight:"#0f172a",colorFillTertiary:"#f3f7f6"},D$={...YS,colorBgElevated:"#0f1b18",colorBgSpotlight:"#22332f",colorFillTertiary:"#162622"},F$={...KS,Menu:{popupBg:"#ffffff",itemBg:"transparent",itemHoverBg:"#f3f7f6",itemActiveBg:"#eef7f5",itemSelectedBg:"#e7f8f4",subMenuItemBg:"#ffffff",dangerItemActiveBg:"#fdecec",dangerItemSelectedBg:"#fdecec"},Select:{selectorBg:"#ffffff",clearBg:"#ffffff",optionActiveBg:"#f3f7f6",optionSelectedBg:"#e7f8f4"},Modal:{contentBg:"#ffffff",headerBg:"#ffffff",footerBg:"#ffffff"}},N$={...VS,Menu:{popupBg:"#0f1b18",darkPopupBg:"#0f1b18",itemBg:"transparent",itemHoverBg:"#162622",itemActiveBg:"#162622",itemSelectedBg:"#12332d",subMenuItemBg:"#0f1b18",dangerItemActiveBg:"#3a161c",dangerItemSelectedBg:"#3a161c"},Select:{selectorBg:"#0f1b18",clearBg:"#0f1b18",optionActiveBg:"#162622",optionSelectedBg:"#12332d"},Modal:{contentBg:"#0f1b18",headerBg:"#0f1b18",footerBg:"#0f1b18"}};function z$(e,t){const n=e==="dark"?t?D$:YS:t?L$:XS,r=e==="dark"?t?N$:VS:t?F$:KS,s=e==="dark"?st.darkAlgorithm:st.defaultAlgorithm;return{token:n,components:r,algorithm:s}}async function B$(){const e=On.getInstance();for(const t of Object.keys(localStorage))if(t.startsWith("chat-model-options-cache-v1:")){const n=t.split(":")[1];try{const r=localStorage.getItem(t);if(r){const s=JSON.parse(r);s&&Array.isArray(s.options)&&(await e.saveModelOptionsCache(n,s.options,s.timestamp),localStorage.removeItem(t))}}catch{localStorage.removeItem(t)}}for(const t of Object.keys(localStorage))if(t.startsWith("chat-session-diff-collapse:")){const n=t.split(":")[1];try{const r=localStorage.getItem(t);if(r){const s=JSON.parse(r);s&&typeof s.isExpanded=="boolean"&&(await e.saveDiffCollapse(n,{isExpanded:s.isExpanded,expandedFiles:s.expandedFiles||[]}),localStorage.removeItem(t))}}catch{localStorage.removeItem(t)}}for(const t of Object.keys(localStorage))if(t.startsWith("chat-session-tool-collapse:")){const n=t.split(":");if(n.length>=3){const r=n[1],s=n.slice(2).join(":");try{const o=localStorage.getItem(t);if(o){const a=JSON.parse(o);a&&typeof a.isExpanded=="boolean"&&(await e.saveToolSessionCollapse(r,s,{isExpanded:a.isExpanded,expandedTools:a.expandedTools||[]}),localStorage.removeItem(t))}}catch{localStorage.removeItem(t)}}}try{const t=localStorage.getItem("chat_input_reasoning_by_session_v1");if(t){const n=JSON.parse(t);for(const[r,s]of Object.entries(n))typeof s=="string"&&await e.saveInputReasoning(r,s);localStorage.removeItem("chat_input_reasoning_by_session_v1")}}catch{localStorage.removeItem("chat_input_reasoning_by_session_v1")}try{const t=localStorage.getItem("chat_input_reasoning_last_used_v1");t&&typeof t=="string"&&(await e.saveLastUsedReasoningEffort(t),localStorage.removeItem("chat_input_reasoning_last_used_v1"))}catch{localStorage.removeItem("chat_input_reasoning_last_used_v1")}for(const t of Object.keys(localStorage))if(t.startsWith("chat_scroll_anchor_v2:")){const n=t.split(":")[1];try{const r=localStorage.getItem(t);if(r){const s=JSON.parse(r);s&&s.v===1&&typeof s.anchorId=="string"&&(await e.saveScrollAnchor(n,s),localStorage.removeItem(t))}}catch{localStorage.removeItem(t)}}localStorage.removeItem("chat_scroll_anchors_v1")}function W$(){const{t:e}=qe(),t=bl(P=>P.themeMode),n=bl(P=>P.setThemeMode),[r,s]=S.useState(()=>dx()),[o,a]=S.useState(()=>Og()),[i,c]=S.useState(null),[d,f]=S.useState(null),[p,v]=S.useState(0),[g,w]=S.useState(null),[m,x]=S.useState(!1);S.useEffect(()=>{localStorage.setItem(ry,t)},[t]),S.useEffect(()=>{localStorage.setItem(fx,r),hx(r)},[r]),S.useEffect(()=>{let P=!1;const A=Date.now(),O=async()=>{try{const $=ro.getInstance(),U=await $.getAccessStatus();if(P)return;if(f(null),w(U),U.requires_password&&!m){c(!1);return}const J=await $.getSetupStatus();if(P)return;c(J.is_complete)}catch($){if(P)return;const U=Date.now()-A;if(U>=2e4){const I=xs(),Y=$ instanceof Error&&$.message.trim()?$.message:"Unknown error";f(e("app.backendNotReachable",{baseUrl:I,message:Y}));return}const ee=Math.min(500+Math.floor(U/2),2e3);setTimeout(()=>{P||O()},ee)}};return O(),()=>{P=!0}},[m,p,e]),S.useEffect(()=>{document.body.setAttribute("data-theme",t)},[t]),S.useEffect(()=>{const P=()=>{const A=Og();a(A),document.body.setAttribute("data-vdi-safe",A?"true":"false");const O=document.getElementById("root");O&&O.setAttribute("data-vdi-safe",A?"true":"false")};return P(),window.addEventListener("storage",P),window.addEventListener("lotus-vdi-safe-mode-change",P),()=>{window.removeEventListener("storage",P),window.removeEventListener("lotus-vdi-safe-mode-change",P)}},[]),S.useEffect(()=>{var A;const P=(A=window.__TAURI_INTERNALS__)==null?void 0:A.invoke;typeof P=="function"&&P("set_window_theme",{theme:t}).catch(O=>{console.warn("[App] Failed to sync native window theme:",O)})},[t]),S.useEffect(()=>{i&&Ld().then(()=>Dd()).catch(P=>{console.error("[App] Bootstrap error:",P)})},[i]),S.useEffect(()=>{const P=On.getInstance();P.cleanupStaleData(30).catch(O=>{console.warn("[App] Failed to cleanup stale storage data:",O)});const A=setInterval(()=>{P.cleanupStaleData(30).catch(()=>{})},24*60*60*1e3);return()=>clearInterval(A)},[]),S.useEffect(()=>{const P=setTimeout(()=>{B$().catch(A=>{console.warn("[App] Storage migration failed:",A)})},5e3);return()=>clearTimeout(P)},[]);const{token:k,components:C,algorithm:E}=z$(t,o);if(g!=null&&g.requires_password&&!m)return l.jsx(sh,{locale:Ig(r),theme:{token:k,algorithm:E,components:C},children:l.jsx(Tn,{children:l.jsx(Ka,{name:"PasswordGatePage",children:l.jsx(qO,{verifyPassword:async P=>{await ro.getInstance().verifyAccessPassword(P)},onVerified:async()=>{x(!0),f(null),v(P=>P+1)}})})})});if(i===null)return d?l.jsxs("div",{style:{padding:40,textAlign:"center"},children:[l.jsx("div",{style:{marginBottom:12},children:d}),l.jsx(Ee,{type:"primary",onClick:()=>{f(null),w(null),c(null),v(P=>P+1)},children:e("app.retry")})]}):l.jsx("div",{style:{padding:40,textAlign:"center"},children:e("app.loading")});const T=i?l.jsx(zO,{themeMode:t,onThemeModeChange:n,locale:r,onLocaleChange:s}):l.jsx(WO,{});return l.jsx(sh,{locale:Ig(r),theme:{token:k,algorithm:E,components:C},children:l.jsx(Tn,{children:l.jsx(Ka,{name:"App",children:l.jsx("div",{style:{position:"relative"},children:T})})})})}const EL=Object.freeze(Object.defineProperty({__proto__:null,default:W$},Symbol.toStringTag,{value:"Module"}));export{ro as $,TL as A,kr as B,Yu as C,Ue as D,SE as E,Ha as F,Hd as G,sI as H,ol as I,ck as J,lk as K,ik as L,fk as M,Vs as N,vk as O,Ul as P,rP as Q,Ly as R,Pn as S,JT as T,Iu as U,as as V,zd as W,cL as X,uL as Y,pL as Z,Px as _,ht as a,Ca as a0,ys as a1,Xd as a2,gP as a3,V$ as a4,uP as a5,Ch as a6,gL as a7,yL as a8,LT as a9,NT as aa,sv as ab,Og as ac,XT as ad,mL as ae,hL as af,fL as ag,dL as ah,PL as ai,G$ as aj,lL as ak,EL as al,Da as b,Fa as c,bl as d,ct as e,jS as f,Fn as g,so as h,Ad as i,av as j,mt as k,Ry as l,k_ as m,mj as n,G0 as o,mr as p,jc as q,fy as r,si as s,Ar as t,Z as u,Zh as v,Na as w,ke as x,lo as y,ei as z};
247
+ `),truncated:de.truncated,toolCount:de.toolCount,workspace:de.workspace})).sort((le,de)=>le.filePath.localeCompare(de.filePath));return{totalAdded:me,totalRemoved:V,files:ve,changedTools:ae}},[c]),k=ct(ue=>ue.inspector.widthPx),C=ct(ue=>ue.inspector.minWidthPx),E=ct(ue=>ue.inspector.maxWidthPx),T=ct(ue=>ue.setInspectorWidthPx),P=c.length>0,A=!!((D=i==null?void 0:i.config)!=null&&D.goldConfig&&((((Q=(ie=i.config.goldConfig.evaluation_prompt)==null?void 0:ie.trim())==null?void 0:Q.length)??0)>0||i.config.goldConfig.enabled===!0)),O=S.useMemo(()=>r||Tf({isEmbedded:t,leafCount:s,isMobileViewport:o}),[t,o,s,r]),$=O.inspectorMode,U=!!(a&&(f&&P||A||w||m||x)),J=!!a&&($==="drawer"||U),[ee,I]=S.useState(()=>$==="rail"),[Y,z]=S.useState(!1);return S.useEffect(()=>{I($==="rail"?U:!1)},[U,$,a]),S.useEffect(()=>{if(typeof requestIdleCallback=="function"){const me=requestIdleCallback(()=>z(!0));return()=>cancelIdleCallback(me)}const ue=window.setTimeout(()=>z(!0),300);return()=>window.clearTimeout(ue)},[]),S.useEffect(()=>{if(typeof window>"u"||!a)return;const ue=me=>{var ve;(((ve=me.detail)==null?void 0:ve.sessionId)??null)===a&&I(!0)};return window.addEventListener(Xu,ue),()=>{window.removeEventListener(Xu,ue)}},[a]),l.jsx("div",{"data-session-workspace-shell":!0,"data-inspector-mode":$,"data-multi-pane":O.isMultiPane?"true":"false","data-inspector-toggle-placement":O.inspectorTogglePlacement,style:{height:"100%",minHeight:0,display:"flex",flexDirection:"column"},children:l.jsx(we,{style:{flex:1,minHeight:0},children:J&&$==="rail"&&ee?l.jsx(Yd,{layout:"horizontal",sizesPx:[0,k],minFirstPx:320,minSecondPx:C,style:{flex:1,minHeight:0},handleSizePx:4,onResizeEnd:([,ue])=>{const me=Math.max(C,Math.min(E,ue));T(me)},first:l.jsx("div",{style:{flex:1,minWidth:0,minHeight:0,display:"flex",flexDirection:"column"},children:l.jsx(Rm,{sessionId:a,embedded:t,paneCount:s,auxReady:Y,sessionDiffSummary:x,workspaceState:O,inspectorEligible:U,onRequestOpenInspector:()=>I(!0)})}),second:l.jsx(Im,{sessionId:a,auxReady:Y,mode:$,open:ee,onOpenChange:I,showMessagesView:P,shouldShowTaskPanel:w,hasSubAgents:m,sessionDiffSummary:x})}):l.jsxs(l.Fragment,{children:[l.jsx("div",{style:{flex:1,minWidth:0,minHeight:0,display:"flex",flexDirection:"column"},children:l.jsx(Rm,{sessionId:a,embedded:t,paneCount:s,auxReady:Y,sessionDiffSummary:x,workspaceState:O,inspectorEligible:U,onRequestOpenInspector:()=>I(!0)})}),J?l.jsx(Im,{sessionId:a,auxReady:Y,mode:$,open:ee,onOpenChange:I,showMessagesView:P,shouldShowTaskPanel:w,hasSubAgents:m,sessionDiffSummary:x}):null]})})})},EO=({sessionId:e,embedded:t=!1,paneCount:n=1,workspaceState:r})=>l.jsx(PO,{sessionId:e,embedded:t,paneCount:n,workspaceState:r}),MO=rt.lazy(()=>Lt(()=>import("./index-BUT6M9A_.js"),__vite__mapDeps([25,1,2,3,4,5,6,26]),import.meta.url).then(e=>({default:e.HomeDashboard}))),{useToken:RO}=st,{Text:AO}=ot,jO=4,IO=({leafId:e})=>{var ie;const{token:t}=RO(),{t:n}=qe(),r=ct(Q=>Q.tree),s=ct(Q=>Q.leafSessionIds),o=ct(Q=>Q.activeLeafId),a=ct(Q=>Q.setActiveLeafId),i=ct(Q=>Q.splitLeaf),c=ct(Q=>Q.closeLeaf),d=ct(Q=>Q.setLeafSessionId),f=Z(Q=>Q.selectSession),p=Z(Q=>Q.addChat),v=Z(Q=>Q.systemPrompts),g=Z(Q=>Q.lastSelectedPromptId),w=s[e]??null,m=Z(mr(w)),x=S.useMemo(()=>Fn(r),[r]),k=x.length,C=Math.max(0,x.indexOf(e))+1,E=k<jO,T=ty("(max-width: 768px)"),P=S.useMemo(()=>Tf({isEmbedded:!0,leafCount:k,isMobileViewport:T}),[T,k]),A=P.isMultiPane,$=A||!!w,U=P.isMultiPane,J=o===e,ee=((ie=m==null?void 0:m.title)==null?void 0:ie.trim())||n("chat.multiPane.selectSessionHint"),I=!T,Y=P.inspectorTogglePlacement==="pane_header"&&!!w,z=S.useCallback(Q=>{d(e,Q),a(e),f(Q)},[e,f,a,d]),D=S.useCallback(async()=>{var V,ae;const Q=v.find(ve=>ve.id===g),ue=(Q==null?void 0:Q.id)||(v.length>0?((V=v.find(ve=>ve.id==="general_assistant"))==null?void 0:V.id)||v[0].id:""),me=await p({title:n("chat.sidebar.newSession"),createdAt:Date.now(),messages:[],config:{systemPromptId:ue,baseSystemPrompt:(Q==null?void 0:Q.content)||(v.length>0?((ae=v.find(ve=>ve.id==="general_assistant"))==null?void 0:ae.content)||v[0].content:""),lastUsedEnhancedPrompt:null}});d(e,me),a(e)},[p,g,v,n,e,d,a]);return l.jsxs("div",{className:"chat-pane-shell",onMouseDownCapture:()=>{Dn("pane focus (mouse)",{leafId:e,sessionId:w,prevActiveLeafId:o}),a(e),w&&f(w)},onFocusCapture:()=>{Dn("pane focus (focus)",{leafId:e,sessionId:w,prevActiveLeafId:o}),a(e)},style:{height:"100%",minHeight:0,border:U?`1px solid ${J?t.colorPrimaryBorder:t.colorBorderSecondary}`:"none",borderRadius:U?t.borderRadiusLG:0,overflow:"hidden",background:t.colorBgContainer,position:"relative"},children:[I?l.jsx("div",{className:"chat-pane-shell__header",style:{padding:`${t.paddingXS}px ${t.paddingSM}px`,borderBottom:`1px solid ${t.colorBorderSecondary}`,background:U?t.colorBgElevated:t.colorBgContainer},children:l.jsxs(we,{align:"center",justify:"space-between",gap:t.marginSM,style:{minWidth:0},children:[l.jsxs(we,{align:"center",gap:t.marginXS,style:{minWidth:0,flex:1},children:[U?l.jsx(Ye,{color:J?"blue":"default",style:{marginInlineEnd:0},children:n("chat.multiPane.paneLabel",{index:C,defaultValue:"Pane {{index}}"})}):null,l.jsx("div",{className:"chat-pane-shell__title",children:l.jsx(AO,{strong:!!w,type:w?void 0:"secondary",ellipsis:{tooltip:ee},children:ee})})]}),l.jsxs(we,{className:"chat-pane-shell__actions",align:"center",gap:4,children:[l.jsx(Ee,{size:"small",type:"text",icon:l.jsx(lx,{}),disabled:!E,title:n("chat.multiPane.splitHorizontal"),"aria-label":n("chat.multiPane.splitHorizontal"),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),Dn("pane split request",{leafId:e,layout:"horizontal"}),i(e,"horizontal");const ue=ct.getState(),me=ue.leafSessionIds[ue.activeLeafId]??null;me&&f(me)}}),l.jsx(Ee,{size:"small",type:"text",icon:l.jsx(cx,{}),disabled:!E,title:n("chat.multiPane.splitVertical"),"aria-label":n("chat.multiPane.splitVertical"),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),Dn("pane split request",{leafId:e,layout:"vertical"}),i(e,"vertical");const ue=ct.getState(),me=ue.leafSessionIds[ue.activeLeafId]??null;me&&f(me)}}),l.jsx(Ee,{size:"small",type:"text",icon:l.jsx(ey,{}),disabled:!w,title:n("chat.multiPane.selectMessagesToExport"),"aria-label":n("chat.multiPane.selectMessagesToExport"),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),w&&window.dispatchEvent(new CustomEvent(Hu,{detail:{sessionId:w}}))}}),Y?l.jsx(Ee,{size:"small",type:"text",icon:l.jsx(Md,{}),title:n("chat.workspace.openInspector",{defaultValue:"Open inspector"}),"aria-label":n("chat.workspace.openInspector",{defaultValue:"Open inspector"}),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),w&&window.dispatchEvent(new CustomEvent(Xu,{detail:{sessionId:w}}))}}):null,l.jsx(Ee,{size:"small",type:"text",danger:!0,icon:l.jsx(ks,{}),disabled:!$,title:n("chat.multiPane.closePane"),"aria-label":n("chat.multiPane.closePane"),onClick:Q=>{Q.preventDefault(),Q.stopPropagation(),Dn("pane close request",{leafId:e}),A?c(e):d(e,null);const ue=ct.getState(),me=ue.leafSessionIds[ue.activeLeafId]??null;f(me)}})]})]})}):null,l.jsx("div",{className:"chat-pane-shell__content",children:w?l.jsx(Ka,{name:"ChatView",children:l.jsx(EO,{sessionId:w,embedded:!0,paneCount:k,workspaceState:P})}):l.jsx(Ka,{name:"HomeDashboard",children:l.jsx(rt.Suspense,{fallback:null,children:l.jsx(MO,{onOpenSession:z,onCreateSession:D})})})})]})},OO=({node:e})=>{const t=ct(r=>r.splitSizesPx[e.id]??null),n=ct(r=>r.setSplitSizesPx);return l.jsx(Yd,{layout:e.layout,sizesPx:t,defaultSplitRatio:.5,minFirstPx:240,minSecondPx:240,style:{height:"100%",minHeight:0},onResizeEnd:r=>{n(e.id,r)},first:l.jsx(yd,{node:e.children[0]}),second:l.jsx(yd,{node:e.children[1]})})},yd=({node:e})=>e.type==="leaf"?l.jsx(IO,{leafId:e.id}):l.jsx(OO,{node:e}),Om=()=>{const e=ct(f=>f.tree),t=ct(f=>f.leafSessionIds),n=ct(f=>f.activeLeafId),r=ct(f=>f.setActiveLeafId),s=ct(f=>f.setLeafSessionId),o=Z(f=>f.chats.map(p=>p.id).join(",")),a=S.useMemo(()=>new Set(o.split(",")),[o]),i=Z(f=>f.currentSessionId),c=S.useRef(!1),d=S.useMemo(()=>Fn(e),[e]);return S.useEffect(()=>{d.length!==0&&(d.includes(n)||r(d[0]))},[n,d,r]),S.useEffect(()=>{const f=new Set(Object.values(t).filter(Boolean));let p=!1;for(const v of f)if(!a.has(v)){p=!0;break}if(p)for(const[v,g]of Object.entries(t))g&&!a.has(g)&&s(v,null)},[a,t,s]),S.useEffect(()=>{if(!i||c.current)return;if(!Object.values(t).some(Boolean)){s(n,i),c.current=!0;return}c.current=!0},[n,i,t,s]),l.jsx("div",{style:{height:"100%",minHeight:0,padding:0},children:l.jsx(yd,{node:e})})},$O=rt.lazy(()=>Lt(()=>import("./index-DTUhSEaL.js"),__vite__mapDeps([27,1,2,3,4,28,5,6,21,29]),import.meta.url).then(e=>({default:e.SystemSettingsPage}))),LO=rt.lazy(()=>Lt(()=>import("./index-CDWEKccv.js"),__vite__mapDeps([30,1,2,3,4,5,6,31]),import.meta.url).then(e=>({default:e.CommandPalette}))),DO=rt.lazy(()=>Lt(()=>import("./FeatureGuide-pqK-Gb1K.js"),__vite__mapDeps([32,1,2,3,28]),import.meta.url).then(e=>({default:e.FeatureGuide}))),$m="bodhi_open_provider_on_entry",FO="__LOTUS_COMMAND_PALETTE_FORCE_OPEN__",NO=()=>(Dk(),null),zO=({themeMode:e,onThemeModeChange:t,locale:n,onLocaleChange:r})=>{const s=Fa(I=>I.isOpen),o=Fa(I=>I.close),{t:a}=qe(),{token:i}=st.useToken(),c=zd(),d=S.useMemo(()=>nv()==="macos",[]);S.useEffect(()=>{localStorage.getItem($m)==="true"&&(localStorage.removeItem($m),Fa.getState().open("chat","provider"))},[]),lC(),S.useEffect(()=>{Fh.clear(),Nh()},[e]),S.useEffect(()=>{Fh.clear(),Nh()},[c]);const f=ct(I=>I.sidebar.collapsed),p=ct(I=>I.sidebar.widthPx),v=ct(I=>I.sidebar.minWidthPx),g=ct(I=>I.sidebar.maxWidthPx),w=ct(I=>I.setSidebarCollapsed),m=ct(I=>I.setSidebarWidthPx),x=18,k=0,E=!s&&f&&d?44:k,T=0,P=88,A=10,O="none",$=Wl(),U="min(86vw, 360px)",[J,ee]=S.useState(!1);return S.useEffect(()=>{if(typeof requestIdleCallback=="function"){const Y=requestIdleCallback(()=>ee(!0));return()=>cancelIdleCallback(Y)}const I=window.setTimeout(()=>ee(!0),200);return()=>window.clearTimeout(I)},[]),S.useEffect(()=>{const I=Y=>{!((Y.metaKey||Y.ctrlKey)&&Y.key.toLowerCase()==="k")||J||(Y.preventDefault(),window[FO]=!0,ee(!0))};return window.addEventListener("keydown",I),()=>window.removeEventListener("keydown",I)},[J]),l.jsxs(l.Fragment,{children:[l.jsx("a",{href:"#lotus-main-content",className:"lotus-skip-link",style:{position:"absolute",top:-9999,left:-9999,zIndex:1e4,padding:"8px 16px",background:"var(--lotus-main-surface, #fff)",color:"var(--ant-color-primary, #0d9488)",borderRadius:8,fontWeight:600,textDecoration:"none"},onFocus:I=>{I.currentTarget.style.top="8px",I.currentTarget.style.left="8px"},onBlur:I=>{I.currentTarget.style.top="-9999px",I.currentTarget.style.left="-9999px"},children:a("app.skipToContent","Skip to main content")}),J&&l.jsx(rt.Suspense,{fallback:null,children:l.jsx(LO,{})}),J&&l.jsx(rt.Suspense,{fallback:null,children:l.jsx(DO,{disabled:s})}),J&&l.jsx(NO,{}),l.jsx(Hs,{style:{minHeight:"100vh",height:"100vh",overflow:"hidden",background:"transparent",display:"flex",flexDirection:"row",position:"relative"},children:l.jsxs("div",{style:{display:"flex",flex:1,minHeight:0,height:"100%",width:"100%",boxSizing:"border-box",paddingTop:E,paddingLeft:k,paddingRight:k,paddingBottom:k,background:"transparent"},children:[s?l.jsx(Hs,{className:"lotus-shell-panel lotus-settings-panel lotus-page-enter",style:{flex:1,display:"flex",flexDirection:"column",background:"var(--lotus-main-surface)",minHeight:0,borderRadius:`${x}px 0 0 ${x}px`,border:O,overflow:"hidden"},children:l.jsx(Ka,{name:"SystemSettings",children:l.jsx(rt.Suspense,{fallback:l.jsx("div",{style:{padding:24,color:"var(--ant-color-text-secondary)"},children:a("app.loading","Loading…")}),children:l.jsx($O,{themeMode:e,onThemeModeChange:t,locale:n,onLocaleChange:r,onBack:o})})})}):l.jsx(l.Fragment,{children:$?l.jsxs(l.Fragment,{children:[l.jsx(Bl,{placement:"left",closable:!1,onClose:()=>w(!0),open:!f,width:U,styles:{body:{padding:0,background:"var(--lotus-sidebar-bg)"}},children:l.jsx($h,{})}),l.jsx("main",{id:"lotus-main-content",className:"lotus-shell-panel lotus-shell-main",style:{flex:1,height:"100%",minHeight:0,borderRadius:`${x}px`,border:O,overflow:"hidden",background:"var(--lotus-main-surface)",boxShadow:"var(--lotus-shadow-shell)"},children:l.jsx(Hs,{style:{display:"flex",flexDirection:"column",background:"transparent",minHeight:0,height:"100%"},children:l.jsx(Om,{})})})]}):l.jsx(Yd,{layout:"horizontal",style:{flex:1,minHeight:0,height:"100%",background:"transparent"},sizesPx:[f?T:p,0],minFirstPx:f?T:v,minSecondPx:320,disabled:f,handleSizePx:f?0:2,onResizeEnd:([I])=>{if(f)return;const Y=Math.max(v,Math.min(g,I));m(Y)},first:l.jsx("div",{className:"lotus-shell-panel lotus-shell-sidebar",style:{height:"100%",minHeight:0,borderRadius:`${x}px 0 0 ${x}px`,border:O,overflow:"hidden",background:"var(--lotus-sidebar-bg)"},children:l.jsx($h,{})}),second:l.jsx("main",{id:"lotus-main-content",className:"lotus-shell-panel lotus-shell-main",style:{height:"100%",minHeight:0,borderRadius:f?`${x}px`:`0 ${x}px ${x}px 0`,border:O,overflow:"hidden",background:"var(--lotus-main-surface)",boxShadow:"var(--lotus-shadow-shell)"},children:l.jsx(Hs,{style:{display:"flex",flexDirection:"column",background:"transparent",minHeight:0,height:"100%"},children:l.jsx(Om,{})})})})}),!s&&f?l.jsx(Ee,{"data-testid":"show-sidebar",type:"text",size:"small",icon:l.jsx(ux,{}),onClick:()=>w(!1),title:a("layout.showSidebar"),"aria-label":a("layout.showSidebar"),className:"lotus-toolbar-icon lotus-floating-sidebar-toggle",style:{position:"absolute",top:$?8:A,left:$?8:P,zIndex:40,width:36,height:36,borderRadius:12,border:`1px solid ${i.colorBorderSecondary}`,background:i.colorBgElevated,boxShadow:i.boxShadowSecondary}}):null]})})]})},BO="bodhi_open_provider_on_entry",{Title:Lm,Paragraph:Dm}=ot,WO=()=>{const{t:e}=qe(),[t,n]=S.useState(!1),[r,s]=S.useState(null),[o,a]=S.useState(!1),i=async c=>{try{s(null),a(!0),await ro.getInstance().markSetupComplete(),c&&localStorage.setItem(BO,"true"),n(!0)}catch(d){console.error("Failed to complete setup:",d),s(e("setup.error.completeFailed"))}finally{a(!1)}};return t?l.jsxs("div",{"data-testid":"setup-complete",className:"setup-complete",children:[l.jsx(Lm,{level:2,children:e("setup.complete.title")}),l.jsx(Dm,{children:e("setup.complete.restartMessage")}),l.jsx(Ee,{"data-testid":"setup-restart",onClick:()=>window.location.reload(),children:e("setup.complete.restartMessage")})]}):l.jsx("div",{className:"setup-page",children:l.jsxs(Bt,{className:"setup-page__card",children:[l.jsxs("div",{className:"setup-page__hero",children:[l.jsx("div",{className:"setup-page__hero-icon",children:l.jsx(rh,{})}),l.jsx(Lm,{level:2,style:{marginTop:0},children:e("setup.welcome.heading")}),l.jsx(Dm,{type:"secondary",children:e("setup.welcome.description")})]}),l.jsx(Jn,{message:e("setup.welcome.providerHint"),type:"info",showIcon:!0,style:{marginBottom:16}}),l.jsx(Jn,{message:e("setup.welcome.proxyHint"),type:"info",showIcon:!0,style:{marginBottom:24}}),r?l.jsx(Jn,{message:r,type:"error",showIcon:!0,style:{marginBottom:16}}):null,l.jsxs("div",{className:"setup-page__actions",children:[l.jsx(Ee,{"data-testid":"setup-configure-provider",icon:l.jsx(Nl,{}),onClick:()=>void i(!0),loading:o,children:e("setup.button.configureProvider")}),l.jsx(Ee,{"data-testid":"setup-get-started",type:"primary",icon:l.jsx(rh,{}),onClick:()=>void i(!1),loading:o,children:e("setup.button.getStarted")})]})]})})},{Title:UO,Text:Fm}=ot,qO=({onVerified:e,verifyPassword:t})=>{const{t:n}=qe(),[r,s]=S.useState(""),[o,a]=S.useState(null),[i,c]=S.useState(!1),d=async()=>{const f=r.trim();if(!f){a(n("app.passwordGate.validation.required"));return}c(!0),a(null);try{await t(f),await e(),s("")}catch(p){const v=p instanceof Error?p.message:n("app.passwordGate.validation.verifyFailed");a(v)}finally{c(!1)}};return l.jsx("div",{style:{minHeight:"100vh",display:"flex",alignItems:"center",justifyContent:"center",padding:24},children:l.jsx(Bt,{style:{width:"100%",maxWidth:480},children:l.jsxs(ze,{direction:"vertical",size:20,style:{width:"100%"},children:[l.jsxs("div",{children:[l.jsx(UO,{level:3,style:{marginBottom:8},children:n("app.passwordGate.title")}),l.jsx(Fm,{type:"secondary",children:n("app.passwordGate.description")})]}),o?l.jsx(Jn,{type:"error",showIcon:!0,message:o}):null,l.jsxs(ze,{direction:"vertical",size:8,style:{width:"100%"},children:[l.jsx(Fm,{strong:!0,children:n("app.passwordGate.passwordLabel")}),l.jsx(Ts.Password,{value:r,autoFocus:!0,autoComplete:"current-password",onChange:f=>s(f.target.value),onPressEnter:()=>void d(),placeholder:n("app.passwordGate.passwordPlaceholder")})]}),l.jsx(Ee,{type:"primary",block:!0,loading:i,onClick:()=>void d(),children:n("app.passwordGate.submit")})]})})})};var zo={},du={exports:{}},Nm;function It(){return Nm||(Nm=1,function(e){function t(n){return n&&n.__esModule?n:{default:n}}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports}(du)),du.exports}var Bo={},zm;function HO(){if(zm)return Bo;zm=1,Object.defineProperty(Bo,"__esModule",{value:!0}),Bo.default=void 0;var e={items_per_page:"/ page",jump_to:"Go to",jump_to_confirm:"confirm",page:"Page",prev_page:"Previous Page",next_page:"Next Page",prev_5:"Previous 5 Pages",next_5:"Next 5 Pages",prev_3:"Previous 3 Pages",next_3:"Next 3 Pages",page_size:"Page Size"};return Bo.default=e,Bo}var Wo={},Uo={},qo={},fu={exports:{}},hu={exports:{}},pu={exports:{}},mu={exports:{}},Bm;function XO(){return Bm||(Bm=1,function(e){var t=Wg().default;function n(r,s){if(t(r)!="object"||!r)return r;var o=r[Symbol.toPrimitive];if(o!==void 0){var a=o.call(r,s||"default");if(t(a)!="object")return a;throw new TypeError("@@toPrimitive must return a primitive value.")}return(s==="string"?String:Number)(r)}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(mu)),mu.exports}var Wm;function YO(){return Wm||(Wm=1,function(e){var t=Wg().default,n=XO();function r(s){var o=n(s,"string");return t(o)=="symbol"?o:o+""}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports}(pu)),pu.exports}var Um;function KO(){return Um||(Um=1,function(e){var t=YO();function n(r,s,o){return(s=t(s))in r?Object.defineProperty(r,s,{value:o,enumerable:!0,configurable:!0,writable:!0}):r[s]=o,r}e.exports=n,e.exports.__esModule=!0,e.exports.default=e.exports}(hu)),hu.exports}var qm;function fo(){return qm||(qm=1,function(e){var t=KO();function n(s,o){var a=Object.keys(s);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(s);o&&(i=i.filter(function(c){return Object.getOwnPropertyDescriptor(s,c).enumerable})),a.push.apply(a,i)}return a}function r(s){for(var o=1;o<arguments.length;o++){var a=arguments[o]!=null?arguments[o]:{};o%2?n(Object(a),!0).forEach(function(i){t(s,i,a[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(s,Object.getOwnPropertyDescriptors(a)):n(Object(a)).forEach(function(i){Object.defineProperty(s,i,Object.getOwnPropertyDescriptor(a,i))})}return s}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports}(fu)),fu.exports}var Ho={},Hm;function ho(){return Hm||(Hm=1,Object.defineProperty(Ho,"__esModule",{value:!0}),Ho.commonLocale=void 0,Ho.commonLocale={yearFormat:"YYYY",dayFormat:"D",cellMeridiemFormat:"A",monthBeforeYear:!0}),Ho}var Xm;function VO(){if(Xm)return qo;Xm=1;var e=It().default;Object.defineProperty(qo,"__esModule",{value:!0}),qo.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"en_US",today:"Today",now:"Now",backToToday:"Back to today",ok:"OK",clear:"Clear",week:"Week",month:"Month",year:"Year",timeSelect:"select time",dateSelect:"select date",weekSelect:"Choose a week",monthSelect:"Choose a month",yearSelect:"Choose a year",decadeSelect:"Choose a decade",dateFormat:"M/D/YYYY",dateTimeFormat:"M/D/YYYY HH:mm:ss",previousMonth:"Previous month (PageUp)",nextMonth:"Next month (PageDown)",previousYear:"Last year (Control + left)",nextYear:"Next year (Control + right)",previousDecade:"Last decade",nextDecade:"Next decade",previousCentury:"Last century",nextCentury:"Next century"});return qo.default=r,qo}var Xo={},Ym;function IS(){if(Ym)return Xo;Ym=1,Object.defineProperty(Xo,"__esModule",{value:!0}),Xo.default=void 0;const e={placeholder:"Select time",rangePlaceholder:["Start time","End time"]};return Xo.default=e,Xo}var Km;function OS(){if(Km)return Uo;Km=1;var e=It().default;Object.defineProperty(Uo,"__esModule",{value:!0}),Uo.default=void 0;var t=e(VO()),n=e(IS());const r={lang:Object.assign({placeholder:"Select date",yearPlaceholder:"Select year",quarterPlaceholder:"Select quarter",monthPlaceholder:"Select month",weekPlaceholder:"Select week",rangePlaceholder:["Start date","End date"],rangeYearPlaceholder:["Start year","End year"],rangeQuarterPlaceholder:["Start quarter","End quarter"],rangeMonthPlaceholder:["Start month","End month"],rangeWeekPlaceholder:["Start week","End week"]},t.default),timePickerLocale:Object.assign({},n.default)};return Uo.default=r,Uo}var Vm;function GO(){if(Vm)return Wo;Vm=1;var e=It().default;Object.defineProperty(Wo,"__esModule",{value:!0}),Wo.default=void 0;var t=e(OS());return Wo.default=t.default,Wo}var Gm;function JO(){if(Gm)return zo;Gm=1;var e=It().default;Object.defineProperty(zo,"__esModule",{value:!0}),zo.default=void 0;var t=e(HO()),n=e(GO()),r=e(OS()),s=e(IS());const o="${label} is not a valid ${type}",a={locale:"en",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"Please select"},Table:{filterTitle:"Filter menu",filterConfirm:"OK",filterReset:"Reset",filterEmptyText:"No filters",filterCheckAll:"Select all items",filterSearchPlaceholder:"Search in filters",emptyText:"No data",selectAll:"Select current page",selectInvert:"Invert current page",selectNone:"Clear all data",selectionAll:"Select all data",sortTitle:"Sort",expand:"Expand row",collapse:"Collapse row",triggerDesc:"Click to sort descending",triggerAsc:"Click to sort ascending",cancelSort:"Click to cancel sorting"},Tour:{Next:"Next",Previous:"Previous",Finish:"Finish"},Modal:{okText:"OK",cancelText:"Cancel",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"Cancel"},Transfer:{titles:["",""],searchPlaceholder:"Search here",itemUnit:"item",itemsUnit:"items",remove:"Remove",selectCurrent:"Select current page",removeCurrent:"Remove current page",selectAll:"Select all data",deselectAll:"Deselect all data",removeAll:"Remove all data",selectInvert:"Invert current page"},Upload:{uploading:"Uploading...",removeFile:"Remove file",uploadError:"Upload error",previewFile:"Preview file",downloadFile:"Download file"},Empty:{description:"No data"},Icon:{icon:"icon"},Text:{edit:"Edit",copy:"Copy",copied:"Copied",expand:"Expand",collapse:"Collapse"},Form:{optional:"(optional)",defaultValidateMessages:{default:"Field validation error for ${label}",required:"Please enter ${label}",enum:"${label} must be one of [${enum}]",whitespace:"${label} cannot be a blank character",date:{format:"${label} date format is invalid",parse:"${label} cannot be converted to a date",invalid:"${label} is an invalid date"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label} must be ${len} characters",min:"${label} must be at least ${min} characters",max:"${label} must be up to ${max} characters",range:"${label} must be between ${min}-${max} characters"},number:{len:"${label} must be equal to ${len}",min:"${label} must be minimum ${min}",max:"${label} must be maximum ${max}",range:"${label} must be between ${min}-${max}"},array:{len:"Must be ${len} ${label}",min:"At least ${min} ${label}",max:"At most ${max} ${label}",range:"The amount of ${label} must be between ${min}-${max}"},pattern:{mismatch:"${label} does not match the pattern ${pattern}"}}},Image:{preview:"Preview"},QRCode:{expired:"QR code expired",refresh:"Refresh",scanned:"Scanned"},ColorPicker:{presetEmpty:"Empty",transparent:"Transparent",singleColor:"Single",gradientColor:"Gradient"}};return zo.default=a,zo}var gu,Jm;function QO(){return Jm||(Jm=1,gu=JO()),gu}var ZO=QO();const e$=Cs(ZO);var Yo={},Ko={},Qm;function t$(){if(Qm)return Ko;Qm=1,Object.defineProperty(Ko,"__esModule",{value:!0}),Ko.default=void 0;var e={items_per_page:"/ page",jump_to:"Aller à",jump_to_confirm:"confirmer",page:"Page",prev_page:"Page précédente",next_page:"Page suivante",prev_5:"5 Pages précédentes",next_5:"5 Pages suivantes",prev_3:"3 Pages précédentes",next_3:"3 Pages suivantes",page_size:"taille de la page"};return Ko.default=e,Ko}var Vo={},Go={},Jo={},Zm;function n$(){if(Zm)return Jo;Zm=1;var e=It().default;Object.defineProperty(Jo,"__esModule",{value:!0}),Jo.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"fr_FR",today:"Aujourd'hui",now:"Maintenant",backToToday:"Aujourd'hui",ok:"OK",clear:"Rétablir",week:"Semaine",month:"Mois",year:"Année",timeSelect:"Sélectionner l'heure",dateSelect:"Sélectionner la date",monthSelect:"Choisissez un mois",yearSelect:"Choisissez une année",decadeSelect:"Choisissez une décennie",dateFormat:"DD/MM/YYYY",dayFormat:"DD",dateTimeFormat:"DD/MM/YYYY HH:mm:ss",previousMonth:"Mois précédent (PageUp)",nextMonth:"Mois suivant (PageDown)",previousYear:"Année précédente (Ctrl + gauche)",nextYear:"Année prochaine (Ctrl + droite)",previousDecade:"Décennie précédente",nextDecade:"Décennie suivante",previousCentury:"Siècle précédent",nextCentury:"Siècle suivant"});return Jo.default=r,Jo}var Qo={},eg;function $S(){if(eg)return Qo;eg=1,Object.defineProperty(Qo,"__esModule",{value:!0}),Qo.default=void 0;const e={placeholder:"Sélectionner l'heure",rangePlaceholder:["Heure de début","Heure de fin"]};return Qo.default=e,Qo}var tg;function LS(){if(tg)return Go;tg=1;var e=It().default;Object.defineProperty(Go,"__esModule",{value:!0}),Go.default=void 0;var t=e(n$()),n=e($S());const r={lang:Object.assign({placeholder:"Sélectionner une date",yearPlaceholder:"Sélectionner une année",quarterPlaceholder:"Sélectionner un trimestre",monthPlaceholder:"Sélectionner un mois",weekPlaceholder:"Sélectionner une semaine",rangePlaceholder:["Date de début","Date de fin"],rangeYearPlaceholder:["Année de début","Année de fin"],rangeMonthPlaceholder:["Mois de début","Mois de fin"],rangeWeekPlaceholder:["Semaine de début","Semaine de fin"]},t.default),timePickerLocale:Object.assign({},n.default)};return Go.default=r,Go}var ng;function r$(){if(ng)return Vo;ng=1;var e=It().default;Object.defineProperty(Vo,"__esModule",{value:!0}),Vo.default=void 0;var t=e(LS());return Vo.default=t.default,Vo}var rg;function s$(){if(rg)return Yo;rg=1;var e=It().default;Object.defineProperty(Yo,"__esModule",{value:!0}),Yo.default=void 0;var t=e(t$()),n=e(r$()),r=e(LS()),s=e($S());const o="La valeur du champ ${label} n'est pas valide pour le type ${type}",a={locale:"fr",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,Table:{filterTitle:"Filtrer",filterConfirm:"OK",filterReset:"Réinitialiser",filterEmptyText:"Aucun filtre",filterCheckAll:"Tout sélectionner",filterSearchPlaceholder:"Chercher dans les filtres",emptyText:"Aucune donnée",selectAll:"Sélectionner la page actuelle",selectInvert:"Inverser la sélection de la page actuelle",selectNone:"Désélectionner toutes les données",selectionAll:"Sélectionner toutes les données",sortTitle:"Trier",expand:"Développer la ligne",collapse:"Réduire la ligne",triggerDesc:"Trier par ordre décroissant",triggerAsc:"Trier par ordre croissant",cancelSort:"Annuler le tri"},Tour:{Next:"Étape suivante",Previous:"Étape précédente",Finish:"Fin de la visite guidée"},Modal:{okText:"OK",cancelText:"Annuler",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"Annuler"},Transfer:{titles:["",""],searchPlaceholder:"Rechercher",itemUnit:"élément",itemsUnit:"éléments",remove:"Désélectionner",selectCurrent:"Sélectionner la page actuelle",removeCurrent:"Désélectionner la page actuelle",selectAll:"Sélectionner toutes les données",removeAll:"Désélectionner toutes les données",selectInvert:"Inverser la sélection de la page actuelle"},Upload:{uploading:"Téléchargement...",removeFile:"Effacer le fichier",uploadError:"Erreur de téléchargement",previewFile:"Fichier de prévisualisation",downloadFile:"Télécharger un fichier"},Empty:{description:"Aucune donnée"},Icon:{icon:"icône"},Text:{edit:"Éditer",copy:"Copier",copied:"Copie effectuée",expand:"Développer"},Form:{optional:"(optionnel)",defaultValidateMessages:{default:"Erreur de validation pour le champ ${label}",required:"Le champ ${label} est obligatoire",enum:"La valeur du champ ${label} doit être parmi [${enum}]",whitespace:"La valeur du champ ${label} ne peut pas être vide",date:{format:"La valeur du champ ${label} n'est pas au format date",parse:"La valeur du champ ${label} ne peut pas être convertie vers une date",invalid:"La valeur du champ ${label} n'est pas une date valide"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"La taille du champ ${label} doit être de ${len} caractères",min:"La taille du champ ${label} doit être au minimum de ${min} caractères",max:"La taille du champ ${label} doit être au maximum de ${max} caractères",range:"La taille du champ ${label} doit être entre ${min} et ${max} caractères"},number:{len:"La valeur du champ ${label} doit être égale à ${len}",min:"La valeur du champ ${label} doit être plus grande que ${min}",max:"La valeur du champ ${label} doit être plus petit que ${max}",range:"La valeur du champ ${label} doit être entre ${min} et ${max}"},array:{len:"La taille du tableau ${label} doit être de ${len}",min:"La taille du tableau ${label} doit être au minimum de ${min}",max:"La taille du tableau ${label} doit être au maximum de ${max}",range:"La taille du tableau ${label} doit être entre ${min}-${max}"},pattern:{mismatch:"La valeur du champ ${label} ne correspond pas au modèle ${pattern}"}}},Image:{preview:"Aperçu"}};return Yo.default=a,Yo}var yu,sg;function o$(){return sg||(sg=1,yu=s$()),yu}var a$=o$();const i$=Cs(a$);var Zo={},ea={},og;function l$(){if(og)return ea;og=1,Object.defineProperty(ea,"__esModule",{value:!0}),ea.default=void 0;var e={items_per_page:"/ पृष्ठ",jump_to:"इस पर चलें",jump_to_confirm:"पुष्टि करें",page:"",prev_page:"पिछला पृष्ठ",next_page:"अगला पृष्ठ",prev_5:"पिछले 5 पृष्ठ",next_5:"अगले 5 पृष्ठ",prev_3:"पिछले 3 पृष्ठ",next_3:"अगले 3 पेज",page_size:"Page Size"};return ea.default=e,ea}var ta={},na={},ra={},ag;function c$(){if(ag)return ra;ag=1;var e=It().default;Object.defineProperty(ra,"__esModule",{value:!0}),ra.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"hi_IN",today:"आज",now:"अभी",backToToday:"आज तक",ok:"ठीक",clear:"स्पष्ट",week:"सप्ताह",month:"महीना",year:"साल",timeSelect:"समय का चयन करें",dateSelect:"तारीख़ चुनें",weekSelect:"एक सप्ताह चुनें",monthSelect:"एक महीना चुनें",yearSelect:"एक वर्ष चुनें",decadeSelect:"एक दशक चुनें",dateFormat:"M/D/YYYY",dateTimeFormat:"M/D/YYYY HH:mm:ss",previousMonth:"पिछला महीना (पेजअप)",nextMonth:"अगले महीने (पेजडाउन)",previousYear:"पिछले साल (Ctrl + बाएं)",nextYear:"अगले साल (Ctrl + दाहिना)",previousDecade:"पिछला दशक",nextDecade:"अगले दशक",previousCentury:"पीछ्ली शताब्दी",nextCentury:"अगली सदी"});return ra.default=r,ra}var sa={},ig;function DS(){if(ig)return sa;ig=1,Object.defineProperty(sa,"__esModule",{value:!0}),sa.default=void 0;const e={placeholder:"समय का चयन करें",rangePlaceholder:["आरंभिक समय","अंत समय"]};return sa.default=e,sa}var lg;function FS(){if(lg)return na;lg=1;var e=It().default;Object.defineProperty(na,"__esModule",{value:!0}),na.default=void 0;var t=e(c$()),n=e(DS());const r={lang:Object.assign({placeholder:"तारीख़ चुनें",yearPlaceholder:"वर्ष चुनें",quarterPlaceholder:"तिमाही चुनें",monthPlaceholder:"महीना चुनिए",weekPlaceholder:"सप्ताह चुनें",rangePlaceholder:["प्रारंभ तिथि","समाप्ति तिथि"],rangeYearPlaceholder:["आरंभिक वर्ष","अंत वर्ष"],rangeMonthPlaceholder:["आरंभिक महीना","अंत महीना"],rangeWeekPlaceholder:["आरंभिक सप्ताह","अंत सप्ताह"]},t.default),timePickerLocale:Object.assign({},n.default)};return na.default=r,na}var cg;function u$(){if(cg)return ta;cg=1;var e=It().default;Object.defineProperty(ta,"__esModule",{value:!0}),ta.default=void 0;var t=e(FS());return ta.default=t.default,ta}var ug;function d$(){if(ug)return Zo;ug=1;var e=It().default;Object.defineProperty(Zo,"__esModule",{value:!0}),Zo.default=void 0;var t=e(l$()),n=e(u$()),r=e(FS()),s=e(DS());const o="${label} मान्य ${type} नहीं है",a={locale:"hi",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"कृपया चुनें"},Table:{filterTitle:"सूची बंद करें",filterConfirm:"अच्छी तरह से",filterReset:"रीसेट",filterEmptyText:"कोई फ़िल्टर नहीं",emptyText:"कोई जानकारी नहीं",selectAll:"वर्तमान पृष्ठ का चयन करें",selectInvert:"वर्तमान पृष्ठ घुमाएं",selectNone:"सभी डेटा साफ़ करें",selectionAll:"सभी डेटा का चयन करें",sortTitle:"द्वारा क्रमबद्ध करें",expand:"पंक्ति का विस्तार करें",collapse:"पंक्ति संक्षिप्त करें",triggerDesc:"अवरोही क्रमित करने के लिए क्लिक करें",triggerAsc:"आरोही क्रमित करने के लिए क्लिक करें",cancelSort:"छँटाई रद्द करने के लिए क्लिक करें"},Modal:{okText:"अच्छी तरह से",cancelText:"रद्द करना",justOkText:"अच्छी तरह से"},Popconfirm:{okText:"अच्छी तरह से",cancelText:"रद्द करना"},Transfer:{titles:["",""],searchPlaceholder:"यहां खोजें",itemUnit:"तत्त्व",itemsUnit:"विषय-वस्तु",remove:"हटाए",selectCurrent:"वर्तमान पृष्ठ का चयन करें",removeCurrent:"वर्तमान पृष्ठ हटाएं",selectAll:"सभी डेटा का चयन करें",removeAll:"सभी डेटा हटाएं",selectInvert:"वर्तमान पृष्ठ को उल्टा करें"},Upload:{uploading:"अपलोड हो रहा...",removeFile:"फ़ाइल निकालें",uploadError:"अपलोड में त्रुटि",previewFile:"फ़ाइल पूर्वावलोकन",downloadFile:"फ़ाइल डाउनलोड करें"},Empty:{description:"कोई आकड़ा उपलब्ध नहीं है"},Icon:{icon:"आइकन"},Text:{edit:"संपादित करें",copy:"प्रतिलिपि",copied:"कॉपी किया गया",expand:"विस्तार"},Form:{optional:"(ऐच्छिक)",defaultValidateMessages:{default:"${label} के लिए फील्ड सत्यापन त्रुटि",required:"कृपया ${label} दर्ज करें",enum:"${label} [${enum}] में से एक होना चाहिए",whitespace:"${label} एक खाली अक्षर नहीं हो सकता",date:{format:"${label} तिथि प्रारूप अमान्य है",parse:"${label} को तारीख में नहीं बदला जा सकता",invalid:"${label} एक अमान्य तिथि है"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label} ${len} अक्षर का होना चाहिए",min:"${label} कम से कम ${min} वर्णों का होना चाहिए",max:"${label} अधिकतम ${max} वर्णों का होना चाहिए",range:"${label} ${min}-${max} वर्णों के बीच होना चाहिए"},number:{len:"${label} ${len} के बराबर होना चाहिए",min:"${label} कम से कम ${min} होना चाहिए",max:"${label} अधिकतम ${max} होना चाहिए",range:"${label} ${min}-${max} के बीच होना चाहिए"},array:{len:"${len} ${label} होना चाहिए",min:"कम से कम ${min} ${label}",max:"ज्यादा से ज्यादा ${max} ${label}",range:"${label} की राशि ${min}-${max} के बीच होनी चाहिए"},pattern:{mismatch:"${label} ${pattern} पैटर्न से मेल नहीं खाता"}}},Image:{preview:"पूर्वावलोकन"}};return Zo.default=a,Zo}var vu,dg;function f$(){return dg||(dg=1,vu=d$()),vu}var h$=f$();const p$=Cs(h$);var oa={},aa={},fg;function m$(){if(fg)return aa;fg=1,Object.defineProperty(aa,"__esModule",{value:!0}),aa.default=void 0;var e={items_per_page:"件 / ページ",jump_to:"移動",jump_to_confirm:"確認する",page:"ページ",prev_page:"前のページ",next_page:"次のページ",prev_5:"前 5ページ",next_5:"次 5ページ",prev_3:"前 3ページ",next_3:"次 3ページ",page_size:"ページサイズ"};return aa.default=e,aa}var ia={},la={},ca={},hg;function g$(){if(hg)return ca;hg=1;var e=It().default;Object.defineProperty(ca,"__esModule",{value:!0}),ca.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"ja_JP",today:"今日",now:"現在時刻",backToToday:"今日に戻る",ok:"確定",timeSelect:"時間を選択",dateSelect:"日時を選択",weekSelect:"週を選択",clear:"クリア",week:"週",month:"月",year:"年",previousMonth:"前月 (ページアップキー)",nextMonth:"翌月 (ページダウンキー)",monthSelect:"月を選択",yearSelect:"年を選択",decadeSelect:"年代を選択",yearFormat:"YYYY年",dateFormat:"YYYY年M月D日",dateTimeFormat:"YYYY年M月D日 HH時mm分ss秒",previousYear:"前年 (Controlを押しながら左キー)",nextYear:"翌年 (Controlを押しながら右キー)",previousDecade:"前の年代",nextDecade:"次の年代",previousCentury:"前の世紀",nextCentury:"次の世紀",monthBeforeYear:!1});return ca.default=r,ca}var ua={},pg;function NS(){if(pg)return ua;pg=1,Object.defineProperty(ua,"__esModule",{value:!0}),ua.default=void 0;const e={placeholder:"時間を選択",rangePlaceholder:["開始時間","終了時間"]};return ua.default=e,ua}var mg;function zS(){if(mg)return la;mg=1;var e=It().default;Object.defineProperty(la,"__esModule",{value:!0}),la.default=void 0;var t=e(g$()),n=e(NS());const r={lang:Object.assign({placeholder:"日付を選択",yearPlaceholder:"年を選択",quarterPlaceholder:"四半期を選択",monthPlaceholder:"月を選択",weekPlaceholder:"週を選択",rangePlaceholder:["開始日付","終了日付"],rangeYearPlaceholder:["開始年","終了年"],rangeMonthPlaceholder:["開始月","終了月"],rangeQuarterPlaceholder:["開始四半期","終了四半期"],rangeWeekPlaceholder:["開始週","終了週"],shortWeekDays:["日","月","火","水","木","金","土"],shortMonths:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"]},t.default),timePickerLocale:Object.assign({},n.default)};return la.default=r,la}var gg;function y$(){if(gg)return ia;gg=1;var e=It().default;Object.defineProperty(ia,"__esModule",{value:!0}),ia.default=void 0;var t=e(zS());return ia.default=t.default,ia}var yg;function v$(){if(yg)return oa;yg=1;var e=It().default;Object.defineProperty(oa,"__esModule",{value:!0}),oa.default=void 0;var t=e(m$()),n=e(y$()),r=e(zS()),s=e(NS());const o="${label}は有効な${type}ではありません",a={locale:"ja",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"選んでください"},Table:{filterTitle:"フィルター",filterConfirm:"OK",filterReset:"リセット",filterEmptyText:"フィルターなし",filterCheckAll:"すべてを選択",filterSearchPlaceholder:"フィルターで検索",emptyText:"データなし",selectAll:"ページ単位で選択",selectInvert:"ページ単位で反転",selectNone:"クリア",selectionAll:"すべてを選択",sortTitle:"ソート",expand:"展開する",collapse:"折り畳む",triggerDesc:"クリックで降順にソート",triggerAsc:"クリックで昇順にソート",cancelSort:"ソートをキャンセル"},Tour:{Next:"次",Previous:"前の",Finish:"仕上げる"},Modal:{okText:"OK",cancelText:"キャンセル",justOkText:"OK"},Popconfirm:{okText:"OK",cancelText:"キャンセル"},Transfer:{titles:["",""],searchPlaceholder:"ここを検索",itemUnit:"アイテム",itemsUnit:"アイテム",remove:"削除",selectCurrent:"現在のページを選択",removeCurrent:"現在のページを削除",selectAll:"ページ単位で選択",deselectAll:"すべてのデータの選択を解除する",removeAll:"ページ単位で削除",selectInvert:"ページ単位で反転"},Upload:{uploading:"アップロード中...",removeFile:"ファイルを削除",uploadError:"アップロードエラー",previewFile:"ファイルをプレビュー",downloadFile:"ダウンロードファイル"},Empty:{description:"データがありません"},Icon:{icon:"アイコン"},Text:{edit:"編集",copy:"コピー",copied:"コピーされました",expand:"拡大する",collapse:"崩壊"},Form:{optional:"(オプション)",defaultValidateMessages:{default:"${label}のフィールド検証エラー",required:"${label}を入力してください",enum:"${label}は[${enum}]のいずれかである必要があります",whitespace:"${label}は空白文字にすることはできません",date:{format:"${label}の日付形式は不正です",parse:"${label}は日付に変換できません",invalid:"${label}は不正な日付です"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label}は${len}文字である必要があります",min:"${label}は${min}文字以上である必要があります",max:"${label}は${max}文字以下である必要があります",range:"${label}は${min}-${max}文字の範囲である必要があります"},number:{len:"${label}は${len}と等しい必要があります",min:"${label}の最小値は${min}です",max:"${label}の最大値は${max}です",range:"${label}は${min}-${max}の範囲である必要があります"},array:{len:"${label}は${len}である必要があります",min:"${label}の最小は${min}です",max:"${label}の最大は${max}です",range:"${label}の合計は${min}-${max}の範囲である必要があります"},pattern:{mismatch:"${label}はパターン${pattern}と一致しません"}}},Image:{preview:"プレビュー"},QRCode:{expired:"QRコードの有効期限が切れました",refresh:"リフレッシュ",scanned:"スキャン済み"},ColorPicker:{presetEmpty:"空の",transparent:"透明",singleColor:"単色",gradientColor:"グラデーション"}};return oa.default=a,oa}var bu,vg;function b$(){return vg||(vg=1,bu=v$()),bu}var S$=b$();const w$=Cs(S$);var da={},fa={},bg;function x$(){if(bg)return fa;bg=1,Object.defineProperty(fa,"__esModule",{value:!0}),fa.default=void 0;var e={items_per_page:"条/页",jump_to:"跳至",jump_to_confirm:"确定",page:"页",prev_page:"上一页",next_page:"下一页",prev_5:"向前 5 页",next_5:"向后 5 页",prev_3:"向前 3 页",next_3:"向后 3 页",page_size:"页码"};return fa.default=e,fa}var ha={},pa={},ma={},Sg;function _$(){if(Sg)return ma;Sg=1;var e=It().default;Object.defineProperty(ma,"__esModule",{value:!0}),ma.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"zh_CN",today:"今天",now:"此刻",backToToday:"返回今天",ok:"确定",timeSelect:"选择时间",dateSelect:"选择日期",weekSelect:"选择周",clear:"清除",week:"周",month:"月",year:"年",previousMonth:"上个月 (翻页上键)",nextMonth:"下个月 (翻页下键)",monthSelect:"选择月份",yearSelect:"选择年份",decadeSelect:"选择年代",previousYear:"上一年 (Control键加左方向键)",nextYear:"下一年 (Control键加右方向键)",previousDecade:"上一年代",nextDecade:"下一年代",previousCentury:"上一世纪",nextCentury:"下一世纪",yearFormat:"YYYY年",cellDateFormat:"D",monthBeforeYear:!1});return ma.default=r,ma}var ga={},wg;function BS(){if(wg)return ga;wg=1,Object.defineProperty(ga,"__esModule",{value:!0}),ga.default=void 0;const e={placeholder:"请选择时间",rangePlaceholder:["开始时间","结束时间"]};return ga.default=e,ga}var xg;function WS(){if(xg)return pa;xg=1;var e=It().default;Object.defineProperty(pa,"__esModule",{value:!0}),pa.default=void 0;var t=e(_$()),n=e(BS());const r={lang:Object.assign({placeholder:"请选择日期",yearPlaceholder:"请选择年份",quarterPlaceholder:"请选择季度",monthPlaceholder:"请选择月份",weekPlaceholder:"请选择周",rangePlaceholder:["开始日期","结束日期"],rangeYearPlaceholder:["开始年份","结束年份"],rangeMonthPlaceholder:["开始月份","结束月份"],rangeQuarterPlaceholder:["开始季度","结束季度"],rangeWeekPlaceholder:["开始周","结束周"]},t.default),timePickerLocale:Object.assign({},n.default)};return r.lang.ok="确定",pa.default=r,pa}var _g;function C$(){if(_g)return ha;_g=1;var e=It().default;Object.defineProperty(ha,"__esModule",{value:!0}),ha.default=void 0;var t=e(WS());return ha.default=t.default,ha}var Cg;function k$(){if(Cg)return da;Cg=1;var e=It().default;Object.defineProperty(da,"__esModule",{value:!0}),da.default=void 0;var t=e(x$()),n=e(C$()),r=e(WS()),s=e(BS());const o="${label}不是一个有效的${type}",a={locale:"zh-cn",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"请选择"},Table:{filterTitle:"筛选",filterConfirm:"确定",filterReset:"重置",filterEmptyText:"无筛选项",filterCheckAll:"全选",filterSearchPlaceholder:"在筛选项中搜索",emptyText:"暂无数据",selectAll:"全选当页",selectInvert:"反选当页",selectNone:"清空所有",selectionAll:"全选所有",sortTitle:"排序",expand:"展开行",collapse:"关闭行",triggerDesc:"点击降序",triggerAsc:"点击升序",cancelSort:"取消排序"},Modal:{okText:"确定",cancelText:"取消",justOkText:"知道了"},Tour:{Next:"下一步",Previous:"上一步",Finish:"结束导览"},Popconfirm:{cancelText:"取消",okText:"确定"},Transfer:{titles:["",""],searchPlaceholder:"请输入搜索内容",itemUnit:"项",itemsUnit:"项",remove:"删除",selectCurrent:"全选当页",removeCurrent:"删除当页",selectAll:"全选所有",deselectAll:"取消全选",removeAll:"删除全部",selectInvert:"反选当页"},Upload:{uploading:"文件上传中",removeFile:"删除文件",uploadError:"上传错误",previewFile:"预览文件",downloadFile:"下载文件"},Empty:{description:"暂无数据"},Icon:{icon:"图标"},Text:{edit:"编辑",copy:"复制",copied:"复制成功",expand:"展开",collapse:"收起"},Form:{optional:"(可选)",defaultValidateMessages:{default:"字段验证错误${label}",required:"请输入${label}",enum:"${label}必须是其中一个[${enum}]",whitespace:"${label}不能为空字符",date:{format:"${label}日期格式无效",parse:"${label}不能转换为日期",invalid:"${label}是一个无效日期"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label}须为${len}个字符",min:"${label}最少${min}个字符",max:"${label}最多${max}个字符",range:"${label}须在${min}-${max}字符之间"},number:{len:"${label}必须等于${len}",min:"${label}最小值为${min}",max:"${label}最大值为${max}",range:"${label}须在${min}-${max}之间"},array:{len:"须为${len}个${label}",min:"最少${min}个${label}",max:"最多${max}个${label}",range:"${label}数量须在${min}-${max}之间"},pattern:{mismatch:"${label}与模式不匹配${pattern}"}}},Image:{preview:"预览"},QRCode:{expired:"二维码过期",refresh:"点击刷新",scanned:"已扫描"},ColorPicker:{presetEmpty:"暂无",transparent:"无色",singleColor:"单色",gradientColor:"渐变色"}};return da.default=a,da}var Su,kg;function T$(){return kg||(kg=1,Su=k$()),Su}var P$=T$();const E$=Cs(P$);var ya={},va={},Tg;function M$(){if(Tg)return va;Tg=1,Object.defineProperty(va,"__esModule",{value:!0}),va.default=void 0;var e={items_per_page:"條/頁",jump_to:"跳至",jump_to_confirm:"確定",page:"頁",prev_page:"上一頁",next_page:"下一頁",prev_5:"向前 5 頁",next_5:"向後 5 頁",prev_3:"向前 3 頁",next_3:"向後 3 頁",page_size:"頁碼"};return va.default=e,va}var ba={},Sa={},wa={},Pg;function R$(){if(Pg)return wa;Pg=1;var e=It().default;Object.defineProperty(wa,"__esModule",{value:!0}),wa.default=void 0;var t=e(fo()),n=ho(),r=(0,t.default)((0,t.default)({},n.commonLocale),{},{locale:"zh_TW",today:"今天",now:"此刻",backToToday:"返回今天",ok:"確定",timeSelect:"選擇時間",dateSelect:"選擇日期",weekSelect:"選擇周",clear:"清除",week:"週",month:"月",year:"年",previousMonth:"上個月 (翻頁上鍵)",nextMonth:"下個月 (翻頁下鍵)",monthSelect:"選擇月份",yearSelect:"選擇年份",decadeSelect:"選擇年代",yearFormat:"YYYY年",dateFormat:"YYYY年M月D日",dateTimeFormat:"YYYY年M月D日 HH時mm分ss秒",previousYear:"上一年 (Control鍵加左方向鍵)",nextYear:"下一年 (Control鍵加右方向鍵)",previousDecade:"上一年代",nextDecade:"下一年代",previousCentury:"上一世紀",nextCentury:"下一世紀",cellDateFormat:"D",monthBeforeYear:!1});return wa.default=r,wa}var xa={},Eg;function US(){if(Eg)return xa;Eg=1,Object.defineProperty(xa,"__esModule",{value:!0}),xa.default=void 0;const e={placeholder:"請選擇時間"};return xa.default=e,xa}var Mg;function qS(){if(Mg)return Sa;Mg=1;var e=It().default;Object.defineProperty(Sa,"__esModule",{value:!0}),Sa.default=void 0;var t=e(R$()),n=e(US());const r={lang:Object.assign({placeholder:"請選擇日期",yearPlaceholder:"請選擇年份",quarterPlaceholder:"請選擇季度",monthPlaceholder:"請選擇月份",weekPlaceholder:"請選擇周",rangePlaceholder:["開始日期","結束日期"],rangeYearPlaceholder:["開始年份","結束年份"],rangeMonthPlaceholder:["開始月份","結束月份"],rangeQuarterPlaceholder:["開始季度","結束季度"],rangeWeekPlaceholder:["開始周","結束周"]},t.default),timePickerLocale:Object.assign({},n.default)};return r.lang.ok="確 定",Sa.default=r,Sa}var Rg;function A$(){if(Rg)return ba;Rg=1;var e=It().default;Object.defineProperty(ba,"__esModule",{value:!0}),ba.default=void 0;var t=e(qS());return ba.default=t.default,ba}var Ag;function j$(){if(Ag)return ya;Ag=1;var e=It().default;Object.defineProperty(ya,"__esModule",{value:!0}),ya.default=void 0;var t=e(M$()),n=e(A$()),r=e(qS()),s=e(US());const o="${label}不是一個有效的${type}",a={locale:"zh-tw",Pagination:t.default,DatePicker:r.default,TimePicker:s.default,Calendar:n.default,global:{placeholder:"請選擇"},Table:{filterTitle:"篩選器",filterConfirm:"確定",filterReset:"重置",filterEmptyText:"無篩選項",filterCheckAll:"全選",filterSearchPlaceholder:"在篩選項中搜尋",emptyText:"暫無數據",selectAll:"全部選取",selectInvert:"反向選取",selectNone:"清空所有",selectionAll:"全選所有",sortTitle:"排序",expand:"展開行",collapse:"關閉行",triggerDesc:"點擊降序",triggerAsc:"點擊升序",cancelSort:"取消排序"},Modal:{okText:"確定",cancelText:"取消",justOkText:"知道了"},Tour:{Next:"下一步",Previous:"上一步",Finish:"結束導覽"},Popconfirm:{okText:"確定",cancelText:"取消"},Transfer:{titles:["",""],searchPlaceholder:"搜尋資料",itemUnit:"項目",itemsUnit:"項目",remove:"删除",selectCurrent:"全選當頁",removeCurrent:"删除當頁",selectAll:"全選所有",removeAll:"删除全部",selectInvert:"反選當頁"},Upload:{uploading:"正在上傳...",removeFile:"刪除檔案",uploadError:"上傳失敗",previewFile:"檔案預覽",downloadFile:"下载文件"},Empty:{description:"無此資料"},Icon:{icon:"圖標"},Text:{edit:"編輯",copy:"複製",copied:"複製成功",expand:"展開",collapse:"收起"},Form:{optional:"(可選)",defaultValidateMessages:{default:"字段驗證錯誤${label}",required:"請輸入${label}",enum:"${label}必須是其中一個[${enum}]",whitespace:"${label}不能為空字符",date:{format:"${label}日期格式無效",parse:"${label}不能轉換為日期",invalid:"${label}是一個無效日期"},types:{string:o,method:o,array:o,object:o,number:o,date:o,boolean:o,integer:o,float:o,regexp:o,email:o,url:o,hex:o},string:{len:"${label}須為${len}個字符",min:"${label}最少${min}個字符",max:"${label}最多${max}個字符",range:"${label}須在${min}-${max}字符之間"},number:{len:"${label}必須等於${len}",min:"${label}最小值為${min}",max:"${label}最大值為${max}",range:"${label}須在${min}-${max}之間"},array:{len:"須為${len}個${label}",min:"最少${min}個${label}",max:"最多${max}個${label}",range:"${label}數量須在${min}-${max}之間"},pattern:{mismatch:"${label}與模式不匹配${pattern}"}}},Image:{preview:"預覽"},QRCode:{expired:"二維碼過期",refresh:"點擊刷新",scanned:"已掃描"},ColorPicker:{presetEmpty:"暫無",transparent:"透明",singleColor:"單色",gradientColor:"漸變色"}};return ya.default=a,ya}var wu,jg;function I$(){return jg||(jg=1,wu=j$()),wu}var O$=I$();const $$=Cs(O$),Ig=e=>{switch(e){case"zh-CN":return E$;case"zh-TW":return $$;case"fr-FR":return i$;case"ja-JP":return w$;case"hi-IN":return p$;default:return e$}},HS="lotus_vdi_safe_mode",Og=()=>{try{return localStorage.getItem(HS)==="true"}catch{return!1}},PL=e=>{try{localStorage.setItem(HS,e.toString())}catch(t){console.error("[vdiSafeMode] Failed to persist setting:",t)}},XS={colorPrimary:"#157f6b",colorPrimaryHover:"#1b9a82",colorPrimaryActive:"#0f5f51",colorInfo:"#2b6e8f",colorLink:"#157f6b",colorLinkHover:"#1b9a82",colorLinkActive:"#0f5f51",colorSuccess:"#2e9e6f",colorWarning:"#c08a2e",colorError:"#d24b3c",colorText:"#0f172a",colorTextSecondary:"#475569",colorTextTertiary:"#64748b",colorTextDisabled:"#94a3b8",colorTextLightSolid:"#ffffff",colorBorder:"#d1e3e0",colorBorderSecondary:"#e2f0ee",colorFill:"#f0fdfa",colorFillSecondary:"#f7fdfb",colorFillTertiary:"rgba(255, 255, 255, 0.82)",colorFillQuaternary:"transparent",colorBgLayout:"#eef5f1",colorBgContainer:"rgba(255, 255, 255, 0.82)",colorBgElevated:"rgba(255, 255, 255, 0.9)",colorBgSpotlight:"rgba(21, 127, 107, 0.16)",colorPrimaryBg:"#e6f1ec",colorPrimaryBgHover:"#cfe6dd",colorPrimaryBorder:"#9fd0c1",borderRadius:10,borderRadiusLG:18,borderRadiusSM:10,boxShadow:"0 12px 36px rgba(15, 118, 110, 0.10), 0 6px 18px rgba(15, 23, 42, 0.06)",boxShadowSecondary:"0 20px 48px rgba(15, 118, 110, 0.12), 0 8px 24px rgba(15, 23, 42, 0.08)"},YS={colorPrimary:"#46c2a0",colorPrimaryHover:"#6ad7b8",colorPrimaryActive:"#2e9e7f",colorInfo:"#5aa9cf",colorLink:"#46c2a0",colorLinkHover:"#6ad7b8",colorLinkActive:"#2e9e7f",colorSuccess:"#4cc08c",colorWarning:"#dcae4c",colorError:"#ef6a5c",colorText:"#e5edf8",colorTextSecondary:"#b7c4d6",colorTextTertiary:"#8d9bb0",colorTextDisabled:"#627085",colorBorder:"rgba(255, 255, 255, 0.10)",colorBorderSecondary:"rgba(255, 255, 255, 0.06)",colorFill:"#0c1a17",colorFillSecondary:"#091412",colorFillTertiary:"rgba(15, 23, 42, 0.74)",colorFillQuaternary:"transparent",colorBgLayout:"#070f0d",colorBgContainer:"rgba(11, 23, 20, 0.76)",colorBgElevated:"rgba(15, 31, 27, 0.9)",colorBgSpotlight:"rgba(21, 127, 107, 0.22)",colorPrimaryBg:"rgba(21, 127, 107, 0.16)",colorPrimaryBgHover:"rgba(21, 127, 107, 0.22)",colorPrimaryBorder:"rgba(70, 194, 160, 0.30)",borderRadius:10,borderRadiusLG:18,borderRadiusSM:10,boxShadow:"0 16px 40px rgba(2, 6, 23, 0.42), 0 8px 20px rgba(15, 23, 42, 0.24)",boxShadowSecondary:"0 24px 56px rgba(2, 6, 23, 0.5), 0 10px 28px rgba(15, 23, 42, 0.28)"},KS={Tag:{defaultBg:"rgba(21, 127, 107, 0.10)",defaultColor:"#0f5f51"},Table:{bodySortBg:"rgba(21, 127, 107, 0.08)"}},VS={Tag:{defaultBg:"rgba(70, 194, 160, 0.18)",defaultColor:"#c8efe2"},Table:{bodySortBg:"rgba(70, 194, 160, 0.14)"}},L$={...XS,colorBgElevated:"#ffffff",colorBgSpotlight:"#0f172a",colorFillTertiary:"#f3f7f6"},D$={...YS,colorBgElevated:"#0f1b18",colorBgSpotlight:"#22332f",colorFillTertiary:"#162622"},F$={...KS,Menu:{popupBg:"#ffffff",itemBg:"transparent",itemHoverBg:"#f3f7f6",itemActiveBg:"#eef7f5",itemSelectedBg:"#e7f8f4",subMenuItemBg:"#ffffff",dangerItemActiveBg:"#fdecec",dangerItemSelectedBg:"#fdecec"},Select:{selectorBg:"#ffffff",clearBg:"#ffffff",optionActiveBg:"#f3f7f6",optionSelectedBg:"#e7f8f4"},Modal:{contentBg:"#ffffff",headerBg:"#ffffff",footerBg:"#ffffff"}},N$={...VS,Menu:{popupBg:"#0f1b18",darkPopupBg:"#0f1b18",itemBg:"transparent",itemHoverBg:"#162622",itemActiveBg:"#162622",itemSelectedBg:"#12332d",subMenuItemBg:"#0f1b18",dangerItemActiveBg:"#3a161c",dangerItemSelectedBg:"#3a161c"},Select:{selectorBg:"#0f1b18",clearBg:"#0f1b18",optionActiveBg:"#162622",optionSelectedBg:"#12332d"},Modal:{contentBg:"#0f1b18",headerBg:"#0f1b18",footerBg:"#0f1b18"}};function z$(e,t){const n=e==="dark"?t?D$:YS:t?L$:XS,r=e==="dark"?t?N$:VS:t?F$:KS,s=e==="dark"?st.darkAlgorithm:st.defaultAlgorithm;return{token:n,components:r,algorithm:s}}async function B$(){const e=On.getInstance();for(const t of Object.keys(localStorage))if(t.startsWith("chat-model-options-cache-v1:")){const n=t.split(":")[1];try{const r=localStorage.getItem(t);if(r){const s=JSON.parse(r);s&&Array.isArray(s.options)&&(await e.saveModelOptionsCache(n,s.options,s.timestamp),localStorage.removeItem(t))}}catch{localStorage.removeItem(t)}}for(const t of Object.keys(localStorage))if(t.startsWith("chat-session-diff-collapse:")){const n=t.split(":")[1];try{const r=localStorage.getItem(t);if(r){const s=JSON.parse(r);s&&typeof s.isExpanded=="boolean"&&(await e.saveDiffCollapse(n,{isExpanded:s.isExpanded,expandedFiles:s.expandedFiles||[]}),localStorage.removeItem(t))}}catch{localStorage.removeItem(t)}}for(const t of Object.keys(localStorage))if(t.startsWith("chat-session-tool-collapse:")){const n=t.split(":");if(n.length>=3){const r=n[1],s=n.slice(2).join(":");try{const o=localStorage.getItem(t);if(o){const a=JSON.parse(o);a&&typeof a.isExpanded=="boolean"&&(await e.saveToolSessionCollapse(r,s,{isExpanded:a.isExpanded,expandedTools:a.expandedTools||[]}),localStorage.removeItem(t))}}catch{localStorage.removeItem(t)}}}try{const t=localStorage.getItem("chat_input_reasoning_by_session_v1");if(t){const n=JSON.parse(t);for(const[r,s]of Object.entries(n))typeof s=="string"&&await e.saveInputReasoning(r,s);localStorage.removeItem("chat_input_reasoning_by_session_v1")}}catch{localStorage.removeItem("chat_input_reasoning_by_session_v1")}try{const t=localStorage.getItem("chat_input_reasoning_last_used_v1");t&&typeof t=="string"&&(await e.saveLastUsedReasoningEffort(t),localStorage.removeItem("chat_input_reasoning_last_used_v1"))}catch{localStorage.removeItem("chat_input_reasoning_last_used_v1")}for(const t of Object.keys(localStorage))if(t.startsWith("chat_scroll_anchor_v2:")){const n=t.split(":")[1];try{const r=localStorage.getItem(t);if(r){const s=JSON.parse(r);s&&s.v===1&&typeof s.anchorId=="string"&&(await e.saveScrollAnchor(n,s),localStorage.removeItem(t))}}catch{localStorage.removeItem(t)}}localStorage.removeItem("chat_scroll_anchors_v1")}function W$(){const{t:e}=qe(),t=bl(P=>P.themeMode),n=bl(P=>P.setThemeMode),[r,s]=S.useState(()=>dx()),[o,a]=S.useState(()=>Og()),[i,c]=S.useState(null),[d,f]=S.useState(null),[p,v]=S.useState(0),[g,w]=S.useState(null),[m,x]=S.useState(!1);S.useEffect(()=>{localStorage.setItem(ry,t)},[t]),S.useEffect(()=>{localStorage.setItem(fx,r),hx(r)},[r]),S.useEffect(()=>{let P=!1;const A=Date.now(),O=async()=>{try{const $=ro.getInstance(),U=await $.getAccessStatus();if(P)return;if(f(null),w(U),U.requires_password&&!m){c(!1);return}const J=await $.getSetupStatus();if(P)return;c(J.is_complete)}catch($){if(P)return;const U=Date.now()-A;if(U>=2e4){const I=xs(),Y=$ instanceof Error&&$.message.trim()?$.message:"Unknown error";f(e("app.backendNotReachable",{baseUrl:I,message:Y}));return}const ee=Math.min(500+Math.floor(U/2),2e3);setTimeout(()=>{P||O()},ee)}};return O(),()=>{P=!0}},[m,p,e]),S.useEffect(()=>{document.body.setAttribute("data-theme",t)},[t]),S.useEffect(()=>{const P=()=>{const A=Og();a(A),document.body.setAttribute("data-vdi-safe",A?"true":"false");const O=document.getElementById("root");O&&O.setAttribute("data-vdi-safe",A?"true":"false")};return P(),window.addEventListener("storage",P),window.addEventListener("lotus-vdi-safe-mode-change",P),()=>{window.removeEventListener("storage",P),window.removeEventListener("lotus-vdi-safe-mode-change",P)}},[]),S.useEffect(()=>{var A;const P=(A=window.__TAURI_INTERNALS__)==null?void 0:A.invoke;typeof P=="function"&&P("set_window_theme",{theme:t}).catch(O=>{console.warn("[App] Failed to sync native window theme:",O)})},[t]),S.useEffect(()=>{i&&Ld().then(()=>Dd()).catch(P=>{console.error("[App] Bootstrap error:",P)})},[i]),S.useEffect(()=>{const P=On.getInstance();P.cleanupStaleData(30).catch(O=>{console.warn("[App] Failed to cleanup stale storage data:",O)});const A=setInterval(()=>{P.cleanupStaleData(30).catch(()=>{})},24*60*60*1e3);return()=>clearInterval(A)},[]),S.useEffect(()=>{const P=setTimeout(()=>{B$().catch(A=>{console.warn("[App] Storage migration failed:",A)})},5e3);return()=>clearTimeout(P)},[]);const{token:k,components:C,algorithm:E}=z$(t,o);if(g!=null&&g.requires_password&&!m)return l.jsx(sh,{locale:Ig(r),theme:{token:k,algorithm:E,components:C},children:l.jsx(Tn,{children:l.jsx(Ka,{name:"PasswordGatePage",children:l.jsx(qO,{verifyPassword:async P=>{await ro.getInstance().verifyAccessPassword(P)},onVerified:async()=>{x(!0),f(null),v(P=>P+1)}})})})});if(i===null)return d?l.jsxs("div",{style:{padding:40,textAlign:"center"},children:[l.jsx("div",{style:{marginBottom:12},children:d}),l.jsx(Ee,{type:"primary",onClick:()=>{f(null),w(null),c(null),v(P=>P+1)},children:e("app.retry")})]}):l.jsx("div",{style:{padding:40,textAlign:"center"},children:e("app.loading")});const T=i?l.jsx(zO,{themeMode:t,onThemeModeChange:n,locale:r,onLocaleChange:s}):l.jsx(WO,{});return l.jsx(sh,{locale:Ig(r),theme:{token:k,algorithm:E,components:C},children:l.jsx(Tn,{children:l.jsx(Ka,{name:"App",children:l.jsx("div",{style:{position:"relative"},children:T})})})})}const EL=Object.freeze(Object.defineProperty({__proto__:null,default:W$},Symbol.toStringTag,{value:"Module"}));export{ro as $,TL as A,kr as B,Yu as C,Ue as D,SE as E,Ha as F,Hd as G,sI as H,ol as I,ck as J,lk as K,ik as L,fk as M,Vs as N,vk as O,Ul as P,rP as Q,Ly as R,Pn as S,JT as T,Iu as U,as as V,zd as W,cL as X,uL as Y,pL as Z,Px as _,ht as a,Ca as a0,ys as a1,Xd as a2,gP as a3,V$ as a4,uP as a5,Ch as a6,gL as a7,yL as a8,LT as a9,NT as aa,sv as ab,Og as ac,XT as ad,mL as ae,hL as af,fL as ag,dL as ah,PL as ai,G$ as aj,lL as ak,EL as al,Da as b,Fa as c,bl as d,ct as e,jS as f,Fn as g,so as h,Ad as i,av as j,mt as k,Ry as l,k_ as m,mj as n,G0 as o,mr as p,jc as q,fy as r,si as s,Ar as t,Z as u,Zh as v,Na as w,ke as x,lo as y,ei as z};