@kaitranntt/ccs 8.1.1-dev.1 → 8.1.1

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 (159) hide show
  1. package/dist/channels/official-channels-runtime.js +1 -1
  2. package/dist/channels/official-channels-runtime.js.map +1 -1
  3. package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts.map +1 -1
  4. package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js +11 -88
  5. package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js.map +1 -1
  6. package/dist/cliproxy/auth/auth-types.d.ts +0 -2
  7. package/dist/cliproxy/auth/auth-types.d.ts.map +1 -1
  8. package/dist/cliproxy/auth/oauth-handler.d.ts.map +1 -1
  9. package/dist/cliproxy/auth/oauth-handler.js +6 -12
  10. package/dist/cliproxy/auth/oauth-handler.js.map +1 -1
  11. package/dist/cliproxy/auth/oauth-trace/redactor.d.ts.map +1 -1
  12. package/dist/cliproxy/auth/oauth-trace/redactor.js +0 -1
  13. package/dist/cliproxy/auth/oauth-trace/redactor.js.map +1 -1
  14. package/dist/cliproxy/proxy/proxy-config-resolver.d.ts.map +1 -1
  15. package/dist/cliproxy/proxy/proxy-config-resolver.js +1 -11
  16. package/dist/cliproxy/proxy/proxy-config-resolver.js.map +1 -1
  17. package/dist/cliproxy/proxy/tool-sanitization-proxy.d.ts.map +1 -1
  18. package/dist/cliproxy/proxy/tool-sanitization-proxy.js +8 -160
  19. package/dist/cliproxy/proxy/tool-sanitization-proxy.js.map +1 -1
  20. package/dist/codex-auth/codex-config-symlink.js +4 -21
  21. package/dist/codex-auth/codex-config-symlink.js.map +1 -1
  22. package/dist/commands/config-channels-command.d.ts +4 -1
  23. package/dist/commands/config-channels-command.d.ts.map +1 -1
  24. package/dist/commands/config-channels-command.js +24 -20
  25. package/dist/commands/config-channels-command.js.map +1 -1
  26. package/dist/cursor/cursor-daemon-entry.d.ts.map +1 -1
  27. package/dist/cursor/cursor-daemon-entry.js +0 -44
  28. package/dist/cursor/cursor-daemon-entry.js.map +1 -1
  29. package/dist/cursor/cursor-daemon.d.ts +1 -2
  30. package/dist/cursor/cursor-daemon.d.ts.map +1 -1
  31. package/dist/cursor/cursor-daemon.js +5 -21
  32. package/dist/cursor/cursor-daemon.js.map +1 -1
  33. package/dist/cursor/cursor-models.d.ts.map +1 -1
  34. package/dist/cursor/cursor-models.js +1 -2
  35. package/dist/cursor/cursor-models.js.map +1 -1
  36. package/dist/cursor/cursor-profile-executor.d.ts +1 -1
  37. package/dist/cursor/cursor-profile-executor.d.ts.map +1 -1
  38. package/dist/cursor/cursor-profile-executor.js +4 -7
  39. package/dist/cursor/cursor-profile-executor.js.map +1 -1
  40. package/dist/cursor/cursor-runtime-probe.d.ts.map +1 -1
  41. package/dist/cursor/cursor-runtime-probe.js +2 -4
  42. package/dist/cursor/cursor-runtime-probe.js.map +1 -1
  43. package/dist/cursor/types.d.ts +0 -1
  44. package/dist/cursor/types.d.ts.map +1 -1
  45. package/dist/dispatcher/profile-resolver.d.ts +0 -16
  46. package/dist/dispatcher/profile-resolver.d.ts.map +1 -1
  47. package/dist/dispatcher/profile-resolver.js +3 -49
  48. package/dist/dispatcher/profile-resolver.js.map +1 -1
  49. package/dist/docker/docker-key-rotation.d.ts +0 -2
  50. package/dist/docker/docker-key-rotation.d.ts.map +1 -1
  51. package/dist/docker/docker-key-rotation.js +1 -9
  52. package/dist/docker/docker-key-rotation.js.map +1 -1
  53. package/dist/glmt/sse-parser.d.ts +0 -1
  54. package/dist/glmt/sse-parser.d.ts.map +1 -1
  55. package/dist/glmt/sse-parser.js +1 -13
  56. package/dist/glmt/sse-parser.js.map +1 -1
  57. package/dist/proxy/server/messages-route.d.ts.map +1 -1
  58. package/dist/proxy/server/messages-route.js +3 -69
  59. package/dist/proxy/server/messages-route.js.map +1 -1
  60. package/dist/proxy/transformers/request-transformer.d.ts.map +1 -1
  61. package/dist/proxy/transformers/request-transformer.js +2 -9
  62. package/dist/proxy/transformers/request-transformer.js.map +1 -1
  63. package/dist/shared/claude-extension-setup.d.ts.map +1 -1
  64. package/dist/shared/claude-extension-setup.js +1 -2
  65. package/dist/shared/claude-extension-setup.js.map +1 -1
  66. package/dist/targets/codex-adapter.js +1 -1
  67. package/dist/targets/codex-adapter.js.map +1 -1
  68. package/dist/ui/assets/{Trans-BIQ-yfAc.js → Trans-DyZQZ3e2.js} +1 -1
  69. package/dist/ui/assets/accounts-BPJltru3.js +1 -0
  70. package/dist/ui/assets/{alert-dialog-D0yey0YJ.js → alert-dialog-DWHL-dqd.js} +1 -1
  71. package/dist/ui/assets/api-BxPN-zy4.js +4 -0
  72. package/dist/ui/assets/{auth-section-BHZUn2Hv.js → auth-section-B4o90dwz.js} +1 -1
  73. package/dist/ui/assets/{backups-section-BNVlJSV3.js → backups-section-1AsdSIJO.js} +1 -1
  74. package/dist/ui/assets/{channels-BOB1P4Kt.js → channels-CU4Zdsc_.js} +1 -1
  75. package/dist/ui/assets/{checkbox-Bt-F3GmI.js → checkbox-CbCKGH8I.js} +1 -1
  76. package/dist/ui/assets/claude-extension-CWpjmIGt.js +1 -0
  77. package/dist/ui/assets/cliproxy-K6eBb5VO.js +4 -0
  78. package/dist/ui/assets/{cliproxy-ai-providers-CzyaYfYI.js → cliproxy-ai-providers-Dr4L5NRY.js} +6 -6
  79. package/dist/ui/assets/cliproxy-control-panel-Cz5r7kHP.js +1 -0
  80. package/dist/ui/assets/codex-0HdbW8NR.js +30 -0
  81. package/dist/ui/assets/{confirm-dialog-CYvBJC0z.js → confirm-dialog-b5Dahgnk.js} +1 -1
  82. package/dist/ui/assets/{copilot-Csab21fh.js → copilot-B1Ojakbt.js} +2 -2
  83. package/dist/ui/assets/{cursor-fOpftodW.js → cursor-PUtNVPx1.js} +1 -1
  84. package/dist/ui/assets/{droid-FIcjtOf-.js → droid-S2gclncb.js} +1 -1
  85. package/dist/ui/assets/{globalenv-section-CpIAk36Y.js → globalenv-section-7wKSmNSG.js} +1 -1
  86. package/dist/ui/assets/{health-D0HvHNud.js → health-hMLN_gyw.js} +1 -1
  87. package/dist/ui/assets/index-BMoGhs28.css +1 -0
  88. package/dist/ui/assets/{index-D0VoBTF3.js → index-BWboJia4.js} +1 -1
  89. package/dist/ui/assets/index-COt1pbk-.js +1 -0
  90. package/dist/ui/assets/{index-sIfjKy42.js → index-CcGVqYOy.js} +18 -18
  91. package/dist/ui/assets/{index-Cr4G276q.js → index-Coc3_ABK.js} +1 -1
  92. package/dist/ui/assets/{index-BTPa3KEN.js → index-Cx0dmbiQ.js} +1 -1
  93. package/dist/ui/assets/{index-D5G9mVmP.js → index-CxvNNHgE.js} +1 -1
  94. package/dist/ui/assets/{index-Dm_QojrJ.js → index-DkR2KVhF.js} +1 -1
  95. package/dist/ui/assets/{logs-B33n-VaM.js → logs-BRFVfyLc.js} +1 -1
  96. package/dist/ui/assets/{masked-input-BrUE6z_f.js → masked-input-4L9CIZGb.js} +1 -1
  97. package/dist/ui/assets/proxy-status-widget-s1UWOE23.js +1 -0
  98. package/dist/ui/assets/{raw-json-settings-editor-panel-DZRtQXbD.js → raw-json-settings-editor-panel-DXh8c8rA.js} +1 -1
  99. package/dist/ui/assets/{searchable-select-D2smFEI5.js → searchable-select-CtvEQrMo.js} +1 -1
  100. package/dist/ui/assets/{separator-BvoSJCHW.js → separator-E0ISp1SN.js} +1 -1
  101. package/dist/ui/assets/{shared-qKNFwLmT.js → shared-BeYwHeNS.js} +2 -2
  102. package/dist/ui/assets/{table-DYyc1gJc.js → table-BBslZvNP.js} +1 -1
  103. package/dist/ui/assets/updates-CDrm903n.js +1 -0
  104. package/dist/ui/assets/{use-accounts-BR64_yUk.js → use-accounts-BdalFsdY.js} +1 -1
  105. package/dist/ui/index.html +2 -2
  106. package/dist/utils/browser/browser-settings.d.ts.map +1 -1
  107. package/dist/utils/browser/browser-settings.js +3 -13
  108. package/dist/utils/browser/browser-settings.js.map +1 -1
  109. package/dist/utils/glmt-deprecation.d.ts.map +1 -1
  110. package/dist/utils/glmt-deprecation.js +3 -1
  111. package/dist/utils/glmt-deprecation.js.map +1 -1
  112. package/dist/web-server/index.d.ts.map +1 -1
  113. package/dist/web-server/index.js +9 -0
  114. package/dist/web-server/index.js.map +1 -1
  115. package/dist/web-server/middleware/auth-middleware.d.ts.map +1 -1
  116. package/dist/web-server/middleware/auth-middleware.js +4 -26
  117. package/dist/web-server/middleware/auth-middleware.js.map +1 -1
  118. package/dist/web-server/routes/cliproxy-auth-routes.d.ts +0 -10
  119. package/dist/web-server/routes/cliproxy-auth-routes.d.ts.map +1 -1
  120. package/dist/web-server/routes/cliproxy-auth-routes.js +13 -45
  121. package/dist/web-server/routes/cliproxy-auth-routes.js.map +1 -1
  122. package/dist/web-server/routes/cliproxy-local-proxy.d.ts.map +1 -1
  123. package/dist/web-server/routes/cliproxy-local-proxy.js +8 -25
  124. package/dist/web-server/routes/cliproxy-local-proxy.js.map +1 -1
  125. package/dist/web-server/routes/cursor-routes.d.ts.map +1 -1
  126. package/dist/web-server/routes/cursor-routes.js +1 -6
  127. package/dist/web-server/routes/cursor-routes.js.map +1 -1
  128. package/dist/web-server/routes/image-analysis-routes.d.ts.map +1 -1
  129. package/dist/web-server/routes/image-analysis-routes.js +0 -7
  130. package/dist/web-server/routes/image-analysis-routes.js.map +1 -1
  131. package/dist/web-server/routes/settings-routes.d.ts.map +1 -1
  132. package/dist/web-server/routes/settings-routes.js +1 -10
  133. package/dist/web-server/routes/settings-routes.js.map +1 -1
  134. package/dist/web-server/services/claude-extension-settings-service.d.ts.map +1 -1
  135. package/dist/web-server/services/claude-extension-settings-service.js +1 -5
  136. package/dist/web-server/services/claude-extension-settings-service.js.map +1 -1
  137. package/lib/mcp/ccs-browser-server.cjs +13 -24
  138. package/package.json +1 -1
  139. package/scripts/docker-dashboard-sunset-guard.js +5 -3
  140. package/dist/cliproxy/proxy/upstream-response-timeout.d.ts +0 -14
  141. package/dist/cliproxy/proxy/upstream-response-timeout.d.ts.map +0 -1
  142. package/dist/cliproxy/proxy/upstream-response-timeout.js +0 -72
  143. package/dist/cliproxy/proxy/upstream-response-timeout.js.map +0 -1
  144. package/dist/cursor/cursor-daemon-auth.d.ts +0 -2
  145. package/dist/cursor/cursor-daemon-auth.d.ts.map +0 -1
  146. package/dist/cursor/cursor-daemon-auth.js +0 -49
  147. package/dist/cursor/cursor-daemon-auth.js.map +0 -1
  148. package/dist/ui/assets/accounts-bN7DnjXo.js +0 -1
  149. package/dist/ui/assets/api-CEtMc2bM.js +0 -4
  150. package/dist/ui/assets/claude-extension-AzKgsH0H.js +0 -1
  151. package/dist/ui/assets/cliproxy-C1liaQi8.js +0 -4
  152. package/dist/ui/assets/cliproxy-control-panel-DmkEW68l.js +0 -1
  153. package/dist/ui/assets/codex-B2FLnjZI.js +0 -30
  154. package/dist/ui/assets/index-G3mgTfgR.css +0 -1
  155. package/dist/ui/assets/index-N35Xkk8N.js +0 -1
  156. package/dist/ui/assets/proxy-status-widget-Dm2ziI5D.js +0 -1
  157. package/dist/ui/assets/updates-XXi3TQNZ.js +0 -1
  158. package/scripts/github/stable-release-issue-cleanup-lib.mjs +0 -113
  159. package/scripts/github/stable-release-issue-cleanup.mjs +0 -134
@@ -0,0 +1 @@
1
+ import{j as e}from"./radix-ui-nu4wz29m.js";import{r as x}from"./react-vendor-Bjx91N7w.js";import{a as oe,c as p,B as w,e as I,bC as Se,aZ as we,bG as Ce,bH as ke,bI as Ae,bJ as Pe,bK as Te,bL as Re,bM as We,bN as De,bO as Ve,aM as _e,N as Ee,Q as Ge,j as Ue,k as Ie,l as $e,m as Fe,n as Le,T as Oe,w as Me,x as qe,Z as Be}from"./index-CcGVqYOy.js";import{A as ze,a as Ke,b as Qe,c as He,d as Ye,e as Ze,f as Je,g as Xe}from"./alert-dialog-DWHL-dqd.js";import{u as fe,a as et,b as tt,h as st}from"./tanstack-bhJxV1h8.js";import{t as te}from"./notifications-B4_o8bcr.js";import{bf as xe,R as U,t as nt,s as rt,u as at,A as it,bg as ot,bh as lt,bi as dt,X as ct,e as ut,bj as xt,bk as mt,U as gt,v as pt,m as ft,w as ht,aF as bt,T as se,aP as yt}from"./icons-DzKUh8vG.js";import{T as me}from"./Trans-DyZQZ3e2.js";async function jt(){const t=await fetch("/api/cliproxy/sync/status");if(!t.ok){let a="Failed to fetch sync status";try{const s=await t.json();a=s.error||s.message||a}catch{}throw new Error(a)}return t.json()}async function vt(){const t=new AbortController,a=setTimeout(()=>t.abort(),3e4);try{const s=await fetch("/api/cliproxy/sync",{method:"POST",headers:{"Content-Type":"application/json"},signal:t.signal});if(!s.ok){let r="Sync failed";try{const n=await s.json();r=n.error||n.message||r}catch{}throw new Error(r)}return s.json()}catch(s){throw s instanceof Error&&s.name==="AbortError"?new Error("Sync request timed out after 30 seconds"):s}finally{clearTimeout(a)}}function Nt(){return fe({queryKey:["cliproxy-sync-status"],queryFn:jt,refetchInterval:3e4,retry:1,staleTime:1e4})}function St(){const t=et(),{t:a}=oe();return tt({mutationFn:vt,onSuccess:s=>{t.invalidateQueries({queryKey:["cliproxy-sync-status"]}),t.invalidateQueries({queryKey:["cliproxy-sync-preview"]}),s.syncedCount===0?te.info(a("toasts.noProfilesToSync")):te.success(`Synced ${s.syncedCount} profile${s.syncedCount===1?"":"s"} to CLIProxy`)},onError:s=>{te.error(a("toasts.syncFailed",{error:s.message}))}})}function ge(t){return t.replace(/-\d+$/,"").split(".").map(Number)}function ie(t,a){const s=ge(t),r=ge(a);for(let n=0;n<3;n+=1){const u=s[n]||0,c=r[n]||0;if(u>c)return 1;if(u<c)return-1}return 0}function ne(t,a){return ie(t,a)>0}function re(t,a,s){return ie(t,a)>=0&&ie(t,s)<=0}const ae={"round-robin":{title:"Round Robin",description:"Spread requests across matching accounts for even usage."},"fill-first":{title:"Fill First",description:"Drain one healthy account first and keep backups untouched until needed."}};function pe({className:t,compact:a=!1,state:s,sessionAffinityState:r,isLoading:n,isSaving:u,error:c,onApply:$,onApplyAffinity:F}){const{t:l}=oe(),y=s?.strategy??"round-robin",j=r?.enabled??!1,f=r?.ttl??"1h",m=r?.manageable??!0,[v,D]=x.useState(y),[h,P]=x.useState(j),[C,b]=x.useState(f),[L,Q]=x.useState(!1),O=s?.source==="live"?"Live CLIProxy":"Saved startup default",T=n||u||!s||v===y,B=L?"Hide details":"Show details",g=n||u||!!c||!m,M=l(m?h?"routingGuidance.disableSessionAffinity":"routingGuidance.enableSessionAffinity":"routingGuidance.sessionAffinityUnavailable"),R=x.useRef(null),N=x.useRef(!1);x.useEffect(()=>{D(y)},[y]),x.useEffect(()=>{P(j),b(f)},[j,f]),x.useEffect(()=>{if(u||!R.current)return;const o=R.current;o.enabled===j&&o.ttl===f||(P(j),b(f)),R.current=null},[u,j,f]);const W=()=>{if(!m)return;const o=!h,d=C.trim()||"1h";R.current={enabled:o,ttl:d},P(o),F({enabled:o,ttl:d})},V=()=>{if(!m||c)return;if(N.current){N.current=!1;return}const o=C.trim()||"1h";o!==f&&(R.current={enabled:h,ttl:o},F({enabled:h,ttl:o}))};if(a){const o=d=>{D(d),d!==y&&$(d)};return e.jsxs("div",{className:p("group/routing mt-1 space-y-2 -mx-1 rounded-lg p-1",t),children:[e.jsxs("div",{className:"flex items-center justify-between rounded-lg transition-colors hover:bg-primary/5",children:[e.jsxs("div",{className:"flex items-center gap-2 px-1 text-xs font-medium text-foreground",children:[e.jsxs("div",{className:"relative flex h-6 w-6 shrink-0 items-center justify-center rounded-md bg-background border border-border/60 text-muted-foreground shadow-sm overflow-hidden transition-all duration-300 group-hover/routing:border-primary/40 group-hover/routing:text-primary group-hover/routing:shadow-[0_0_12px_rgba(59,130,246,0.15)] dark:group-hover/routing:shadow-[0_0_12px_rgba(59,130,246,0.1)]",children:[e.jsx("div",{className:"absolute inset-0 bg-primary/10 translate-y-full group-hover/routing:translate-y-0 transition-transform duration-300 ease-out"}),e.jsx(xe,{className:"relative z-10 h-3.5 w-3.5 transition-transform duration-300 group-hover/routing:scale-110"})]}),e.jsx("span",{className:"tracking-tight transition-colors duration-300 group-hover/routing:text-primary group-hover/routing:font-semibold",children:"Routing"}),u&&e.jsx(U,{className:"ml-1 h-3 w-3 shrink-0 animate-spin text-primary"})]}),e.jsxs("div",{className:"relative grid grid-cols-2 p-0.5 gap-0.5 rounded-lg border border-border/60 bg-muted/30 shadow-[inset_0_1px_2px_rgba(0,0,0,0.05)] dark:shadow-[inset_0_1px_3px_rgba(0,0,0,0.2)] transition-colors duration-300 group-hover/routing:border-primary/20 group-hover/routing:bg-primary/5",children:[e.jsx("div",{className:p("absolute inset-y-0.5 left-0.5 w-[calc(50%-0.1875rem)] rounded bg-background shadow-[0_1px_3px_rgba(0,0,0,0.1),0_1px_2px_rgba(0,0,0,0.06)] ring-1 ring-black/5 dark:ring-white/10 transition-all duration-300",v==="fill-first"?"translate-x-[calc(100%+0.125rem)]":"translate-x-0","group-hover/routing:shadow-[0_0_8px_rgba(59,130,246,0.15)] dark:group-hover/routing:shadow-[0_0_8px_rgba(59,130,246,0.1)] group-hover/routing:ring-primary/30"),style:{transitionTimingFunction:"cubic-bezier(0.175, 0.885, 0.32, 1.275)"}}),Object.entries(ae).map(([d,k])=>{const H=v===d;return e.jsx("button",{type:"button",className:p("relative z-10 flex items-center justify-center rounded px-2.5 py-0.5 text-[10px] font-medium whitespace-nowrap transition-colors duration-200",H?"text-foreground group-hover/routing:text-primary":"text-muted-foreground/70 hover:text-foreground/90 group-hover/routing:text-muted-foreground/90"),onClick:()=>o(d),disabled:n||u||!!c,title:k.description,children:k.title},d)})]})]}),e.jsxs("div",{className:"flex items-center justify-between gap-2 rounded-lg border border-border/60 bg-muted/20 px-2 py-1.5",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:"text-[10px] font-medium text-foreground",children:l("routingGuidance.sessionAffinity")}),e.jsx("div",{className:"text-[10px] text-muted-foreground",children:m?l("routingGuidance.ttlBadge",{ttl:f}):l("routingGuidance.localOnlySetting")})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[m?e.jsx("input",{"aria-label":"Session affinity TTL",className:"h-6 w-14 rounded border border-border/70 bg-background px-2 text-[10px] text-foreground",value:C,onChange:d=>b(d.target.value),onBlur:V,disabled:g}):null,e.jsx("button",{type:"button","aria-label":M,className:p("rounded border px-2 py-1 text-[10px] font-medium transition-colors",m?"border-border/70 bg-background text-foreground hover:border-primary/40 hover:text-primary":"border-border/60 bg-muted/40 text-muted-foreground"),onMouseDown:()=>{N.current=!0},onClick:W,disabled:g,title:r?.message,children:l(m?h?"routingGuidance.sessionAffinityOn":"routingGuidance.sessionAffinityOff":"routingGuidance.sessionAffinityUnavailable")})]})]}),r?.message?e.jsx("div",{className:"rounded-lg border border-border/60 bg-muted/20 px-2 py-1.5 text-[10px] text-muted-foreground",children:r.message}):null]})}return e.jsx("section",{className:p("rounded-xl border border-border/70 bg-background",t),children:e.jsxs("div",{className:"grid gap-3 px-4 py-3 xl:grid-cols-[minmax(0,1fr)_auto] xl:items-start",children:[e.jsxs("div",{className:"min-w-0 space-y-2",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("div",{className:"inline-flex h-7 w-7 items-center justify-center rounded-lg bg-muted text-primary",children:e.jsx(xe,{className:"h-4 w-4"})}),e.jsx("div",{className:"text-sm font-medium",children:l("routingGuidance.routingStrategy")}),e.jsx(w,{variant:"secondary",children:y}),s?e.jsx(w,{variant:"outline",children:O}):null,s?e.jsx(w,{variant:"outline",children:s.target}):null]}),e.jsx("p",{className:"max-w-3xl text-xs leading-5 text-muted-foreground",children:"Proxy-wide account rotation. CCS keeps round-robin as the default until you explicitly change it."})]}),e.jsxs("div",{className:"flex flex-col gap-2 xl:items-end",children:[e.jsx("div",{className:"inline-flex flex-wrap rounded-lg border border-border/70 bg-muted/35 p-1",children:Object.entries(ae).map(([o,d])=>{const k=v===o;return e.jsx("button",{type:"button",className:p("rounded-md px-3 py-1.5 text-sm font-medium transition-colors",k?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),onClick:()=>D(o),disabled:n||u||!!c,children:d.title},o)})}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsxs(I,{type:"button",variant:"ghost",size:"sm",className:"h-8 px-2 text-xs text-muted-foreground",onClick:()=>Q(o=>!o),children:[L?e.jsx(nt,{className:"mr-1 h-3.5 w-3.5"}):e.jsx(rt,{className:"mr-1 h-3.5 w-3.5"}),B]}),e.jsx(I,{size:"sm",onClick:()=>$(v),disabled:T||!!c,children:u?"Saving...":`Use ${v}`})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1 text-[11px] text-muted-foreground xl:col-span-2",children:[e.jsx("span",{children:l("routingGuidance.roundRobin")}),e.jsx("span",{className:"hidden text-border sm:inline",children:"•"}),e.jsx("span",{children:l("routingGuidance.fillFirst")})]}),e.jsxs("div",{className:"grid gap-3 rounded-lg border border-border/70 bg-muted/20 px-3 py-3 xl:col-span-2",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("div",{className:"text-sm font-medium",children:l("routingGuidance.sessionAffinity")}),e.jsx(w,{variant:"secondary",children:l(h?"routingGuidance.sessionAffinityOn":"routingGuidance.sessionAffinityOff")}),r?.ttl?e.jsx(w,{variant:"outline",children:l("routingGuidance.ttlBadge",{ttl:f})}):null,m?null:e.jsx(w,{variant:"outline",children:l("routingGuidance.localOnly")})]}),e.jsx("p",{className:"text-xs leading-5 text-muted-foreground",children:l("routingGuidance.sessionAffinityDescription")}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("input",{"aria-label":"Session affinity TTL",className:"h-9 w-24 rounded-md border border-border/70 bg-background px-3 text-sm text-foreground",value:C,onChange:o=>b(o.target.value),onBlur:V,disabled:g}),e.jsx(I,{type:"button",variant:"outline",onMouseDown:()=>{N.current=!0},onClick:W,disabled:g,"aria-label":M,children:M})]}),r?.message?e.jsx("div",{className:"rounded-lg border border-border/70 bg-background/70 px-3 py-2 text-xs text-muted-foreground",children:r.message}):null]}),c?e.jsx("div",{className:"rounded-lg border border-destructive/25 bg-destructive/5 px-3 py-2 text-sm xl:col-span-2",children:c.message}):null,!c&&s?.message?e.jsx("div",{className:"rounded-lg border border-border/70 bg-muted/35 px-3 py-2 text-xs text-muted-foreground xl:col-span-2",children:s.message}):null,L?e.jsxs("div",{className:"grid gap-4 border-t border-border/60 pt-3 md:grid-cols-2 xl:col-span-2",children:[Object.entries(ae).map(([o,d])=>{const k=y===o;return e.jsxs("div",{className:"space-y-1",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("div",{className:"text-sm font-medium",children:d.title}),k?e.jsx(w,{variant:"secondary",children:"Current"}):null]}),e.jsx("p",{className:"text-xs leading-5 text-muted-foreground",children:d.description})]},o)}),e.jsxs("div",{className:"space-y-1 md:col-span-2",children:[e.jsx("div",{className:"text-sm font-medium",children:l("routingGuidance.sessionRecognitionTitle")}),e.jsx("p",{className:"text-xs leading-5 text-muted-foreground",children:l("routingGuidance.sessionRecognitionDescription")})]})]}):null]})})}function wt(t){if(!t)return"";const a=new Date(t).getTime(),r=Date.now()-a,n=Math.floor(r/(1e3*60*60)),u=Math.floor(r%(1e3*60*60)/(1e3*60));return n>0?`${n}h ${u}m`:`${u}m`}function Ct(t,a){if(!t)return"";const s=Date.now()-t,r=Math.floor(s/(1e3*60)),n=Math.floor(s/(1e3*60*60));return r<1?a("proxyStatusWidget.justNow"):r<60?a("proxyStatusWidget.minutesAgo",{count:r}):a("proxyStatusWidget.hoursAgo",{count:n})}function K({icon:t,tooltip:a,onClick:s,disabled:r,isPending:n,className:u,variant:c="ghost"}){return e.jsxs(Oe,{children:[e.jsx(Me,{asChild:!0,children:e.jsx(I,{variant:c==="destructive-ghost"?"ghost":c,size:"sm",className:p("h-7 w-7 p-0",c==="destructive-ghost"&&"hover:bg-destructive/10 hover:text-destructive hover:border-destructive/30",u),onClick:s,disabled:r,children:n?e.jsx(U,{className:"w-3.5 h-3.5 animate-spin"}):e.jsx(t,{className:"w-3.5 h-3.5"})})}),e.jsx(qe,{side:"bottom",className:"text-xs",children:a})]})}function _t(){const{t}=oe(),{data:a,isLoading:s}=Se(),{data:r}=we(),{data:n,isLoading:u}=Ce(),{data:c,isLoading:$,error:F}=ke(),l=Ae(),{data:y,isLoading:j,error:f}=Pe(),m=Te(),v=l.isPending||m.isPending,D=F instanceof Error?F:null,h=Re(),P=We(),C=De(),b=Ve(),{data:L}=Nt(),{mutate:Q,isPending:O}=St(),[T,B]=x.useState(!1),[g,M]=x.useState(""),[R,N]=x.useState(!1),[W,V]=x.useState(null),[o,d]=x.useState(null),{data:k}=fe({queryKey:["cliproxy-server-config"],queryFn:()=>Be.cliproxyServer.get(),staleTime:3e4}),H=st({mutationKey:["update-backend"]})>0,_=k?.remote,Y=_?.enabled&&_?.host,A=y??(f instanceof Error?{source:"unsupported",target:c?.target??(Y?"remote":"local"),reachable:!1,manageable:!1,message:f.message}:void 0),q=a?.running??!1,Z=h.isPending||P.isPending||C.isPending||b.isPending||H||O,he=r?.hasUpdate??!1,E=r?.isStable===!1,le=r?.currentVersion,z=L?.configured??!1,be=t(z?"proxyStatusWidget.syncReady":"proxyStatusWidget.noConfig"),J=E?r?.maxStableVersion||n?.latestStable:r?.latestVersion,de=n?.maxStableVersion||r?.maxStableVersion||"6.6.80",G=n?.faultyRange,ye=G&&`${G.min.replace(/-\d+$/,"")}-${G.max.replace(/-\d+$/,"")}`,X=(i,S)=>{V(i),d(S),N(!0)},ce=async i=>{if(!i)return;const S=ne(i,de);if(G!==void 0&&re(i,G.min,G.max)){X(i,"faulty");return}if(S){X(i,"experimental");return}try{const ue=await b.mutateAsync({version:i});ue.requiresConfirmation&&X(i,ue.isFaulty?"faulty":"experimental")}catch{}},je=()=>{W&&b.mutate({version:W,force:!0}),N(!1),V(null),d(null)},ve=()=>{N(!1),V(null),d(null)},Ne=Y?(()=>{const i=_.protocol||"http",S=_.port||(i==="https"?443:80);return i==="https"&&S===443||i==="http"&&S===80?_.host:`${_.host}:${S}`})():null;return Y?e.jsxs("div",{className:p("rounded-lg border p-3 transition-colors","border-blue-500/30 bg-blue-500/5"),children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(at,{className:"w-4 h-4 text-blue-500"}),e.jsx("span",{className:"text-sm font-medium",children:t("proxyStatusWidget.remoteProxy")}),e.jsx(w,{variant:"secondary",className:"text-[10px] h-4 px-1.5 bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400",children:t("proxyStatusWidget.active")})]}),e.jsx(it,{className:"w-3 h-3 text-blue-600"})]}),e.jsxs("div",{className:"mt-2 text-xs text-muted-foreground",children:[e.jsx("div",{className:"flex items-center gap-1 mb-1",children:e.jsx("span",{className:"font-mono",children:Ne})}),e.jsx("p",{className:"text-[10px] text-muted-foreground/70 leading-tight",children:t("proxyStatusWidget.trafficAutoRouted")})]}),e.jsx(pe,{compact:!0,className:"mt-3",state:c,sessionAffinityState:A,isLoading:$||j,isSaving:v,error:D,onApply:i=>l.mutate(i),onApplyAffinity:i=>m.mutate(i)},`remote:${c?.strategy??"round-robin"}:${A?.enabled??"na"}:${A?.ttl??"na"}:${A?.manageable??"na"}`)]}):e.jsx(_e,{delayDuration:300,children:e.jsxs("div",{className:p("rounded-lg border p-3 transition-colors",q?"border-green-500/30 bg-green-500/5":"border-muted bg-muted/30"),children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:p("w-2 h-2 rounded-full",q?"bg-green-500 animate-pulse":"bg-muted-foreground/30")}),e.jsx("span",{className:"text-sm font-medium",children:r?.backendLabel??"CLIProxy"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[s?e.jsx(U,{className:"w-3 h-3 animate-spin text-muted-foreground"}):q?e.jsxs(e.Fragment,{children:[e.jsx(K,{icon:O?U:ot,tooltip:t("proxyStatusWidget.tooltipSync"),onClick:()=>Q(),disabled:!z||Z,isPending:O}),e.jsx(K,{icon:lt,tooltip:t("proxyStatusWidget.tooltipRestart"),onClick:()=>C.mutate(),disabled:Z,isPending:C.isPending}),e.jsx(K,{icon:dt,tooltip:t("proxyStatusWidget.tooltipStop"),onClick:()=>P.mutate(),disabled:Z,isPending:P.isPending,variant:"destructive-ghost"})]}):null,e.jsx(K,{icon:T?ct:ut,tooltip:t(T?"proxyStatusWidget.tooltipClose":"proxyStatusWidget.tooltipVersionSettings"),onClick:()=>B(!T),className:T?"bg-muted":void 0})]})]}),le&&e.jsxs("div",{className:"mt-1.5 flex items-center gap-2",children:[e.jsxs("span",{className:p("text-xs font-mono text-muted-foreground",E&&"text-amber-600 dark:text-amber-400"),children:["v",le]}),(he||E)&&J&&e.jsxs(w,{variant:"secondary",className:p("text-[10px] h-4 px-1.5 gap-0.5 cursor-pointer transition-colors",E?"bg-amber-100 text-amber-700 hover:bg-amber-200 dark:bg-amber-900/30 dark:text-amber-400 dark:hover:bg-amber-900/50":"bg-green-100 text-green-700 hover:bg-green-200 dark:bg-green-900/30 dark:text-green-400 dark:hover:bg-green-900/50"),onClick:()=>void ce(J),title:t(E?"proxyStatusWidget.clickToDowngrade":"proxyStatusWidget.clickToUpdate"),children:[E?e.jsx(xt,{className:"w-2.5 h-2.5"}):e.jsx(mt,{className:"w-2.5 h-2.5"}),J]})]}),q&&a&&e.jsxs("div",{className:"mt-2 flex items-center gap-4 text-xs text-muted-foreground",children:[e.jsx("span",{className:"flex items-center gap-1",children:t("proxyStatusWidget.port",{port:a.port})}),a.sessionCount!==void 0&&a.sessionCount>0&&e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(gt,{className:"w-3 h-3"}),t("proxyStatusWidget.sessionCount",{count:a.sessionCount})]}),a.startedAt&&e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(pt,{className:"w-3 h-3"}),wt(a.startedAt)]})]}),e.jsxs("div",{className:"mt-2 flex items-center gap-1.5 text-xs",children:[z?e.jsx(ft,{className:"w-3 h-3 text-green-600 dark:text-green-400"}):e.jsx(ht,{className:"w-3 h-3 text-muted-foreground"}),e.jsx("span",{className:p("text-xs",z?"text-green-600 dark:text-green-400":"text-muted-foreground"),children:be})]}),e.jsx(pe,{compact:!0,className:"mt-3",state:c,sessionAffinityState:A,isLoading:$||j,isSaving:v,error:D,onApply:i=>l.mutate(i),onApplyAffinity:i=>m.mutate(i)},`local:${c?.strategy??"round-robin"}:${A?.enabled??"na"}:${A?.ttl??"na"}:${A?.manageable??"na"}`),e.jsx(Ee,{open:T,onOpenChange:B,children:e.jsxs(Ge,{className:"mt-3 pt-3 border-t border-muted",children:[e.jsx("h4",{className:"text-xs font-medium text-muted-foreground mb-3",children:t("proxyStatusWidget.versionManagement")}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(Ue,{value:g,onValueChange:M,disabled:u,children:[e.jsx(Ie,{className:"h-8 text-xs flex-1",children:e.jsx($e,{placeholder:t("proxyStatusWidget.selectVersionPlaceholder")})}),e.jsx(Fe,{children:n?.versions.slice(0,20).map(i=>{const S=n?.maxStableVersion&&ne(i,n.maxStableVersion),ee=n?.faultyRange&&re(i,n.faultyRange.min,n.faultyRange.max);return e.jsx(Le,{value:i,className:"text-xs",children:e.jsxs("span",{className:"flex items-center gap-2",children:["v",i,i===n.latestStable&&e.jsx("span",{className:"text-green-600 dark:text-green-400",children:t("proxyStatusWidget.stable")}),(ee||S)&&e.jsx("span",{className:"text-amber-600 dark:text-amber-400",children:"⚠"})]})},i)})})]}),e.jsxs(I,{variant:"outline",size:"sm",className:"h-8 text-xs gap-1.5 px-3",onClick:()=>void ce(g),disabled:b.isPending||!g,children:[b.isPending?e.jsx(U,{className:"w-3.5 h-3.5 animate-spin"}):e.jsx(bt,{className:"w-3.5 h-3.5"}),t("proxyStatusWidget.install")]})]}),g&&n?.maxStableVersion&&ne(g,n.maxStableVersion)&&e.jsxs("div",{className:"mt-2 flex items-center gap-1.5 text-[11px] text-amber-600 dark:text-amber-400",children:[e.jsx(se,{className:"w-3.5 h-3.5 flex-shrink-0"}),e.jsx("span",{children:t("proxyStatusWidget.versionsAboveUnstable",{version:n.maxStableVersion})})]}),g&&n?.faultyRange&&re(g,n.faultyRange.min,n.faultyRange.max)&&e.jsxs("div",{className:"mt-2 flex items-center gap-1.5 text-[11px] text-amber-600 dark:text-amber-400",children:[e.jsx(se,{className:"w-3.5 h-3.5 flex-shrink-0"}),e.jsx("span",{children:t("proxyStatusWidget.versionsKnownIssues",{version:g})})]}),r?.checkedAt&&e.jsx("div",{className:"mt-2 text-[10px] text-muted-foreground/60",children:t("proxyStatusWidget.lastChecked",{time:Ct(r.checkedAt,t)})})]})}),!q&&e.jsxs("div",{className:"mt-2 flex items-center justify-between",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:t("proxyStatusWidget.notRunning")}),e.jsxs(I,{variant:"outline",size:"sm",className:"h-7 text-xs gap-1",onClick:()=>h.mutate(),disabled:h.isPending,children:[h.isPending?e.jsx(U,{className:"w-3 h-3 animate-spin"}):e.jsx(yt,{className:"w-3 h-3"}),t("proxyStatusWidget.start")]})]}),e.jsx(ze,{open:R,onOpenChange:N,children:e.jsxs(Ke,{children:[e.jsxs(Qe,{children:[e.jsxs(He,{className:"flex items-center gap-2",children:[e.jsx(se,{className:"w-5 h-5 text-amber-500"}),t(o==="faulty"?"proxyStatusWidget.installFaultyTitle":"proxyStatusWidget.installUnstableTitle")]}),e.jsxs(Ye,{className:"space-y-2",children:[o==="faulty"?e.jsx("p",{children:e.jsx(me,{i18nKey:"proxyStatusWidget.installFaultyDesc",values:{version:W??"",range:ye||""},components:{strong:e.jsx("strong",{})}})}):e.jsx("p",{children:e.jsx(me,{i18nKey:"proxyStatusWidget.installUnstableDesc",values:{version:W??"",maxStable:de},components:{strong:e.jsx("strong",{})}})}),e.jsx("p",{className:"text-amber-600 dark:text-amber-400",children:t(o==="faulty"?"proxyStatusWidget.installFaultyWarning":"proxyStatusWidget.installUnstableWarning")}),e.jsx("p",{children:t("proxyStatusWidget.installUnstableConfirm")})]})]}),e.jsxs(Ze,{children:[e.jsx(Je,{onClick:ve,children:t("proxyStatusWidget.cancel")}),e.jsx(Xe,{onClick:je,className:"bg-amber-500 hover:bg-amber-600 text-white",children:t("proxyStatusWidget.installAnyway")})]})]})})]})})}export{_t as P};
@@ -1 +1 @@
1
- import{j as e}from"./radix-ui-nu4wz29m.js";import{r as k}from"./react-vendor-Bjx91N7w.js";import{t as R}from"./notifications-B4_o8bcr.js";import{B as E,e as a,c as z,bc as S,Y as B}from"./index-sIfjKy42.js";import{aX as L,L as m,au as P,o as T,R as F}from"./icons-DzKUh8vG.js";function H({title:c,pathLabel:x,loading:t,parseWarning:r,readWarning:i,value:s,dirty:n,readOnly:f=!1,saving:h,saveDisabled:j,onChange:p,onSave:u,onRefresh:b,onDiscard:l,language:v="json",exactText:N=!1,loadingLabel:g="Loading settings.json...",parseWarningLabel:w="Parse warning",ownershipNotice:d}){const[C,o]=k.useState(!1),y=async()=>{s&&(await navigator.clipboard.writeText(s),o(!0),R.success(B.t("commonToast.settingsCopied")),window.setTimeout(()=>o(!1),1500))};return e.jsxs("div",{className:"h-full flex flex-col",children:[e.jsxs("div",{className:"p-4 border-b bg-background flex items-center justify-between gap-2",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsxs("h2",{className:"font-semibold flex items-center gap-2",children:[e.jsx(L,{className:"h-4 w-4 text-primary"}),c,n&&e.jsx(E,{variant:"secondary",className:"text-[10px]",children:"Unsaved"})]}),e.jsx("p",{className:"text-xs text-muted-foreground font-mono truncate",children:x})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(a,{size:"sm",onClick:u,disabled:j,children:[h?e.jsx(m,{className:"h-4 w-4 mr-1 animate-spin"}):e.jsx(P,{className:"h-4 w-4 mr-1"}),"Save"]}),l?e.jsx(a,{variant:"outline",size:"sm",onClick:l,disabled:!n||t,children:"Discard"}):null,e.jsxs(a,{variant:"outline",size:"sm",onClick:y,disabled:!s,children:[e.jsx(T,{className:"h-4 w-4 mr-1"}),C?"Copied":"Copy"]}),e.jsx(a,{variant:"outline",size:"sm",onClick:b,"aria-label":"Refresh raw config",children:e.jsx(F,{className:z("h-4 w-4",t?"animate-spin":"")})})]})]}),e.jsx("div",{className:"flex-1 overflow-auto",children:t?e.jsxs("div",{className:"h-full flex items-center justify-center text-muted-foreground",children:[e.jsx(m,{className:"h-5 w-5 animate-spin mr-2"}),g]}):e.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[d&&e.jsx("div",{className:"mx-4 mt-4",children:d}),r&&e.jsxs("div",{className:"mx-4 mt-4 rounded-md border border-amber-300 bg-amber-50 px-3 py-2 text-sm text-amber-800 dark:bg-amber-950/20 dark:text-amber-300",children:[w,": ",r]}),i&&e.jsxs("div",{className:"mx-4 mt-4 rounded-md border border-destructive/40 bg-destructive/5 px-3 py-2 text-sm text-destructive",children:["Read-only: ",i]}),e.jsx("div",{className:"min-h-0 flex-1 p-4 pt-3",children:e.jsx("div",{className:"h-full rounded-md border overflow-hidden bg-background",children:e.jsx(S,{value:s,onChange:p,language:v,readonly:f,exactText:N,minHeight:"100%",heightMode:"fill-parent"})})})]})})]})}const q=H;export{H as R,q as a};
1
+ import{j as e}from"./radix-ui-nu4wz29m.js";import{r as k}from"./react-vendor-Bjx91N7w.js";import{t as R}from"./notifications-B4_o8bcr.js";import{B as E,e as a,c as z,bc as S,X as B}from"./index-CcGVqYOy.js";import{aX as L,L as m,au as P,o as T,R as X}from"./icons-DzKUh8vG.js";function F({title:c,pathLabel:x,loading:t,parseWarning:r,readWarning:i,value:s,dirty:n,readOnly:f=!1,saving:h,saveDisabled:j,onChange:p,onSave:u,onRefresh:b,onDiscard:l,language:v="json",exactText:N=!1,loadingLabel:g="Loading settings.json...",parseWarningLabel:w="Parse warning",ownershipNotice:d}){const[C,o]=k.useState(!1),y=async()=>{s&&(await navigator.clipboard.writeText(s),o(!0),R.success(B.t("commonToast.settingsCopied")),window.setTimeout(()=>o(!1),1500))};return e.jsxs("div",{className:"h-full flex flex-col",children:[e.jsxs("div",{className:"p-4 border-b bg-background flex items-center justify-between gap-2",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsxs("h2",{className:"font-semibold flex items-center gap-2",children:[e.jsx(L,{className:"h-4 w-4 text-primary"}),c,n&&e.jsx(E,{variant:"secondary",className:"text-[10px]",children:"Unsaved"})]}),e.jsx("p",{className:"text-xs text-muted-foreground font-mono truncate",children:x})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs(a,{size:"sm",onClick:u,disabled:j,children:[h?e.jsx(m,{className:"h-4 w-4 mr-1 animate-spin"}):e.jsx(P,{className:"h-4 w-4 mr-1"}),"Save"]}),l?e.jsx(a,{variant:"outline",size:"sm",onClick:l,disabled:!n||t,children:"Discard"}):null,e.jsxs(a,{variant:"outline",size:"sm",onClick:y,disabled:!s,children:[e.jsx(T,{className:"h-4 w-4 mr-1"}),C?"Copied":"Copy"]}),e.jsx(a,{variant:"outline",size:"sm",onClick:b,"aria-label":"Refresh raw config",children:e.jsx(X,{className:z("h-4 w-4",t?"animate-spin":"")})})]})]}),e.jsx("div",{className:"flex-1 overflow-auto",children:t?e.jsxs("div",{className:"h-full flex items-center justify-center text-muted-foreground",children:[e.jsx(m,{className:"h-5 w-5 animate-spin mr-2"}),g]}):e.jsxs("div",{className:"flex h-full min-h-0 flex-col",children:[d&&e.jsx("div",{className:"mx-4 mt-4",children:d}),r&&e.jsxs("div",{className:"mx-4 mt-4 rounded-md border border-amber-300 bg-amber-50 px-3 py-2 text-sm text-amber-800 dark:bg-amber-950/20 dark:text-amber-300",children:[w,": ",r]}),i&&e.jsxs("div",{className:"mx-4 mt-4 rounded-md border border-destructive/40 bg-destructive/5 px-3 py-2 text-sm text-destructive",children:["Read-only: ",i]}),e.jsx("div",{className:"min-h-0 flex-1 p-4 pt-3",children:e.jsx("div",{className:"h-full rounded-md border overflow-hidden bg-background",children:e.jsx(S,{value:s,onChange:p,language:v,readonly:f,exactText:N,minHeight:"100%",heightMode:"fill-parent"})})})]})})]})}const A=F;export{F as R,A as a};
@@ -1 +1 @@
1
- import{j as n}from"./radix-ui-nu4wz29m.js";import{r as a}from"./react-vendor-Bjx91N7w.js";import{f as P,g as Q,e as $,c as w,h as B,I as G}from"./index-sIfjKy42.js";import{aR as H,av as L,m as V}from"./icons-DzKUh8vG.js";function S(o){return o.trim().toLowerCase()}function M(o,h){return`${o}-option-${h.replace(/[^a-z0-9_-]+/gi,"-")}`}function Z({value:o,onChange:h,options:f,groups:g,placeholder:j,searchPlaceholder:k,emptyText:E,disabled:F,className:R,triggerClassName:q,contentClassName:K}){const[l,T]=a.useState(!1),[y,A]=a.useState(""),[i,c]=a.useState(),m=a.useId(),I=a.useRef(null),N=a.useRef({}),O=a.useMemo(()=>f.find(e=>e.value===o),[f,o]),d=a.useMemo(()=>{const e=S(y);return e?f.filter(t=>[t.searchText,...t.keywords??[]].some(u=>S(u).includes(e))):f},[f,y]),z=a.useMemo(()=>{const e=new Map((g??[]).map(r=>[r.key,r])),t=d.filter(r=>!r.groupKey||!e.has(r.groupKey)),u=(g??[]).map(r=>({...r,options:d.filter(x=>x.groupKey===r.key)})).filter(r=>r.options.length>0);return t.length===0?u:[{key:"__default",options:t},...u]},[d,g]),s=a.useMemo(()=>d.filter(e=>!e.disabled),[d]),D=O?.triggerContent??O?.itemContent,v=e=>{T(e),e||(A(""),c(void 0))},b=()=>I.current?.focus();a.useEffect(()=>{if(l){if(s.length===0){c(void 0);return}c(e=>e&&s.some(t=>t.value===e)?e:s.find(t=>t.value===o)?.value??s[0]?.value)}},[s,l,o]),a.useEffect(()=>{!l||!i||N.current[i]?.scrollIntoView({block:"nearest"})},[i,l]);const p=e=>{if(s.length===0)return;if(e==="first"){c(s[0]?.value);return}if(e==="last"){c(s.at(-1)?.value);return}const t=s.findIndex(_=>_.value===i),u=e==="next"?-1:s.length,r=t>=0?t:u,x=e==="next"?Math.min(r+1,s.length-1):Math.max(r-1,0);c(s[x]?.value)},C=e=>{h(e),v(!1)},U=()=>{if(!i)return;const e=s.find(t=>t.value===i);e&&C(e.value)};return n.jsxs(P,{open:l,onOpenChange:v,children:[n.jsx(Q,{asChild:!0,children:n.jsxs($,{type:"button",variant:"outline","aria-expanded":l,"aria-controls":l?m:void 0,"aria-haspopup":"dialog",disabled:F,onKeyDown:e=>{if(e.key!=="ArrowDown"&&e.key!=="ArrowUp")return;e.preventDefault(),v(!0);const t=()=>{b(),p(e.key==="ArrowDown"?"first":"last")};if(typeof requestAnimationFrame=="function"){requestAnimationFrame(t);return}setTimeout(t,0)},className:w("w-full justify-between font-normal",R,q,!D&&"text-muted-foreground"),children:[n.jsx("div",{className:"min-w-0 flex-1 text-left",children:D??n.jsx("span",{children:j})}),n.jsx(H,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),n.jsxs(B,{align:"start",className:w("w-[var(--radix-popover-trigger-width)] p-0",K),onOpenAutoFocus:e=>{if(e.preventDefault(),typeof requestAnimationFrame=="function"){requestAnimationFrame(b);return}setTimeout(b,0)},children:[n.jsx("div",{className:"border-b p-2",children:n.jsxs("div",{className:"relative",children:[n.jsx(L,{className:"text-muted-foreground absolute left-2.5 top-1/2 h-4 w-4 -translate-y-1/2"}),n.jsx(G,{ref:I,value:y,onChange:e=>A(e.target.value),role:"combobox","aria-label":k,"aria-autocomplete":"list","aria-expanded":l,"aria-controls":m,"aria-activedescendant":i?M(m,i):void 0,onKeyDown:e=>{if(e.key==="ArrowDown"){e.preventDefault(),p("next");return}if(e.key==="ArrowUp"){e.preventDefault(),p("previous");return}if(e.key==="Home"){e.preventDefault(),p("first");return}if(e.key==="End"){e.preventDefault(),p("last");return}if(e.key==="Enter"){e.preventDefault(),U();return}e.key==="Escape"&&(e.preventDefault(),v(!1))},placeholder:k,className:"pl-8"})]})}),n.jsx("div",{"data-slot":"searchable-select-scroll-container","data-testid":"searchable-select-scroll-container",className:"max-h-72 overflow-y-auto overscroll-contain",children:d.length===0?n.jsx("div",{className:"px-3 py-6 text-center text-sm text-muted-foreground",children:E}):n.jsx("div",{id:m,role:"listbox","aria-label":j,className:"p-1",children:z.map(e=>n.jsxs("div",{children:[e.label&&n.jsx("div",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:e.label}),e.options.map(t=>{const u=t.value===i,r=t.value===o;return n.jsxs("button",{id:M(m,t.value),type:"button",role:"option","aria-selected":r,disabled:t.disabled,tabIndex:-1,ref:x=>{N.current[t.value]=x},onMouseMove:()=>{t.disabled||c(t.value)},onFocus:()=>{t.disabled||c(t.value)},onClick:()=>C(t.value),className:w("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-left text-sm outline-none","focus-visible:ring-ring focus-visible:ring-1",u&&"bg-accent text-accent-foreground",r&&"bg-accent text-accent-foreground",t.disabled&&"pointer-events-none opacity-50"),children:[n.jsx("div",{className:"min-w-0 flex-1",children:t.itemContent}),r&&n.jsx(V,{className:"h-4 w-4 shrink-0"})]},t.value)})]},e.key))})})]})]})}export{Z as S};
1
+ import{j as n}from"./radix-ui-nu4wz29m.js";import{r as a}from"./react-vendor-Bjx91N7w.js";import{f as P,g as Q,e as $,c as w,h as B,I as G}from"./index-CcGVqYOy.js";import{aR as H,av as L,m as V}from"./icons-DzKUh8vG.js";function S(o){return o.trim().toLowerCase()}function M(o,h){return`${o}-option-${h.replace(/[^a-z0-9_-]+/gi,"-")}`}function Z({value:o,onChange:h,options:f,groups:g,placeholder:j,searchPlaceholder:k,emptyText:E,disabled:F,className:R,triggerClassName:q,contentClassName:K}){const[l,T]=a.useState(!1),[y,A]=a.useState(""),[i,c]=a.useState(),m=a.useId(),I=a.useRef(null),N=a.useRef({}),O=a.useMemo(()=>f.find(e=>e.value===o),[f,o]),d=a.useMemo(()=>{const e=S(y);return e?f.filter(t=>[t.searchText,...t.keywords??[]].some(u=>S(u).includes(e))):f},[f,y]),z=a.useMemo(()=>{const e=new Map((g??[]).map(r=>[r.key,r])),t=d.filter(r=>!r.groupKey||!e.has(r.groupKey)),u=(g??[]).map(r=>({...r,options:d.filter(x=>x.groupKey===r.key)})).filter(r=>r.options.length>0);return t.length===0?u:[{key:"__default",options:t},...u]},[d,g]),s=a.useMemo(()=>d.filter(e=>!e.disabled),[d]),D=O?.triggerContent??O?.itemContent,v=e=>{T(e),e||(A(""),c(void 0))},b=()=>I.current?.focus();a.useEffect(()=>{if(l){if(s.length===0){c(void 0);return}c(e=>e&&s.some(t=>t.value===e)?e:s.find(t=>t.value===o)?.value??s[0]?.value)}},[s,l,o]),a.useEffect(()=>{!l||!i||N.current[i]?.scrollIntoView({block:"nearest"})},[i,l]);const p=e=>{if(s.length===0)return;if(e==="first"){c(s[0]?.value);return}if(e==="last"){c(s.at(-1)?.value);return}const t=s.findIndex(_=>_.value===i),u=e==="next"?-1:s.length,r=t>=0?t:u,x=e==="next"?Math.min(r+1,s.length-1):Math.max(r-1,0);c(s[x]?.value)},C=e=>{h(e),v(!1)},U=()=>{if(!i)return;const e=s.find(t=>t.value===i);e&&C(e.value)};return n.jsxs(P,{open:l,onOpenChange:v,children:[n.jsx(Q,{asChild:!0,children:n.jsxs($,{type:"button",variant:"outline","aria-expanded":l,"aria-controls":l?m:void 0,"aria-haspopup":"dialog",disabled:F,onKeyDown:e=>{if(e.key!=="ArrowDown"&&e.key!=="ArrowUp")return;e.preventDefault(),v(!0);const t=()=>{b(),p(e.key==="ArrowDown"?"first":"last")};if(typeof requestAnimationFrame=="function"){requestAnimationFrame(t);return}setTimeout(t,0)},className:w("w-full justify-between font-normal",R,q,!D&&"text-muted-foreground"),children:[n.jsx("div",{className:"min-w-0 flex-1 text-left",children:D??n.jsx("span",{children:j})}),n.jsx(H,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),n.jsxs(B,{align:"start",className:w("w-[var(--radix-popover-trigger-width)] p-0",K),onOpenAutoFocus:e=>{if(e.preventDefault(),typeof requestAnimationFrame=="function"){requestAnimationFrame(b);return}setTimeout(b,0)},children:[n.jsx("div",{className:"border-b p-2",children:n.jsxs("div",{className:"relative",children:[n.jsx(L,{className:"text-muted-foreground absolute left-2.5 top-1/2 h-4 w-4 -translate-y-1/2"}),n.jsx(G,{ref:I,value:y,onChange:e=>A(e.target.value),role:"combobox","aria-label":k,"aria-autocomplete":"list","aria-expanded":l,"aria-controls":m,"aria-activedescendant":i?M(m,i):void 0,onKeyDown:e=>{if(e.key==="ArrowDown"){e.preventDefault(),p("next");return}if(e.key==="ArrowUp"){e.preventDefault(),p("previous");return}if(e.key==="Home"){e.preventDefault(),p("first");return}if(e.key==="End"){e.preventDefault(),p("last");return}if(e.key==="Enter"){e.preventDefault(),U();return}e.key==="Escape"&&(e.preventDefault(),v(!1))},placeholder:k,className:"pl-8"})]})}),n.jsx("div",{"data-slot":"searchable-select-scroll-container","data-testid":"searchable-select-scroll-container",className:"max-h-72 overflow-y-auto overscroll-contain",children:d.length===0?n.jsx("div",{className:"px-3 py-6 text-center text-sm text-muted-foreground",children:E}):n.jsx("div",{id:m,role:"listbox","aria-label":j,className:"p-1",children:z.map(e=>n.jsxs("div",{children:[e.label&&n.jsx("div",{className:"px-2 py-1.5 text-xs font-medium text-muted-foreground",children:e.label}),e.options.map(t=>{const u=t.value===i,r=t.value===o;return n.jsxs("button",{id:M(m,t.value),type:"button",role:"option","aria-selected":r,disabled:t.disabled,tabIndex:-1,ref:x=>{N.current[t.value]=x},onMouseMove:()=>{t.disabled||c(t.value)},onFocus:()=>{t.disabled||c(t.value)},onClick:()=>C(t.value),className:w("hover:bg-accent hover:text-accent-foreground flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-left text-sm outline-none","focus-visible:ring-ring focus-visible:ring-1",u&&"bg-accent text-accent-foreground",r&&"bg-accent text-accent-foreground",t.disabled&&"pointer-events-none opacity-50"),children:[n.jsx("div",{className:"min-w-0 flex-1",children:t.itemContent}),r&&n.jsx(V,{className:"h-4 w-4 shrink-0"})]},t.value)})]},e.key))})})]})]})}export{Z as S};
@@ -1 +1 @@
1
- import{j as i,a0 as n}from"./radix-ui-nu4wz29m.js";import"./react-vendor-Bjx91N7w.js";import{c as e}from"./index-sIfjKy42.js";function m({className:t,orientation:a="horizontal",decorative:o=!0,...r}){return i.jsx(n,{"data-slot":"separator",decorative:o,orientation:a,className:e("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",t),...r})}export{m as S};
1
+ import{j as i,a0 as n}from"./radix-ui-nu4wz29m.js";import"./react-vendor-Bjx91N7w.js";import{c as e}from"./index-CcGVqYOy.js";function m({className:t,orientation:a="horizontal",decorative:o=!0,...r}){return i.jsx(n,{"data-slot":"separator",decorative:o,orientation:a,className:e("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",t),...r})}export{m as S};
@@ -1,8 +1,8 @@
1
- import{j as e}from"./radix-ui-nu4wz29m.js";import{r as b}from"./react-vendor-Bjx91N7w.js";import{a as q,bv as fe,bw as je,bx as be,U as Ne,V as ve,W as Pe,B as g,bi as C,bj as $,bk as S,e as L,I as we,x as R,c as W,C as X,b as Y,bc as ye}from"./index-sIfjKy42.js";import{u as ke}from"./use-accounts-BR64_yUk.js";import{a3 as Ce,aa as $e,b9 as Se,b4 as Le,aE as ee,T as M,R as I,F as Me,av as Ie,w as Ee}from"./icons-DzKUh8vG.js";import"./tanstack-bhJxV1h8.js";import"./notifications-B4_o8bcr.js";import"./utils-CzKF5WmX.js";import"./form-utils-CuHzLhJZ.js";import"./charts-eIPy2oG6.js";function Ze(){const{t:s}=q(),[o,r]=b.useState("commands"),[t,n]=b.useState(!1),l={commands:s("sharedPage.commands"),skills:s("sharedPage.skills"),agents:s("sharedPage.agents"),plugins:s("sharedPage.plugins"),settings:s("sharedPage.settings")},[a,m]=b.useState(""),[h,u]=b.useState(null),{data:d,isError:w,error:x,refetch:v}=fe(),{data:N}=ke(),c=d&&!t?Te(d):o,{data:A,isLoading:y,isFetching:te,isError:k,error:ae,refetch:re}=je(c),F=A?.items??[],D=a.trim().toLowerCase(),P=a.trim(),f=b.useMemo(()=>{const i=A?.items??[];return D?i.filter(z=>[z.name,z.description,z.path].some(pe=>pe.toLowerCase().includes(D))):i},[A,D]),p=b.useMemo(()=>f.length===0?null:h?f.find(i=>i.path===h)??f[0]:f[0],[f,h]),ne=c==="settings"&&d?.settings?"settings.json":p?.path??null,{data:j,isLoading:O,isError:Q,error:le,refetch:H}=be(c,ne),ie=[{id:"commands",label:l.commands,icon:Ce,count:d?.commands??0},{id:"skills",label:l.skills,icon:$e,count:d?.skills??0},{id:"agents",label:l.agents,icon:Se,count:d?.agents??0},{id:"plugins",label:l.plugins,icon:Le,count:d?.plugins??0},{id:"settings",label:l.settings,icon:ee,count:d?.settings?1:0}],ce=d?.total??0,K=d?.settings?1:0,B=c==="settings"?K:F.length,_=c==="settings"?K:f.length,Z=c==="settings"||!y&&!k,de=s(c==="plugins"?"sharedPage.registryDetail":c==="settings"?"sharedPage.maskedSettingsDetail":"sharedPage.markdownDetail"),oe=c==="plugins"?s("sharedPage.noPluginsFound"):s("sharedPage.noSharedFound",{tab:c}),me=!y&&!k&&F.length===0,he=!y&&!k&&F.length>0&&f.length===0,ue=N?.accounts.filter(i=>(i.shared_resource_mode||"shared")==="shared")??[],G=N?.accounts.filter(i=>i.shared_resource_mode==="profile-local")??[],xe=V(x,"Shared item totals could not be loaded. Listing still works."),ge=V(ae,`Unable to fetch shared ${c}. Please try again.`),J=V(le,`Unable to load content for ${p?.name??"selected item"}.`);return e.jsxs("div",{className:"h-full overflow-auto lg:overflow-hidden flex flex-col",children:[e.jsxs("div",{className:"p-6 pb-4 space-y-3",children:[e.jsxs("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-end lg:justify-between",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-bold",children:s("sharedPage.title")}),e.jsx("p",{className:"text-muted-foreground",children:s("sharedPage.subtitle")})]}),e.jsx(Ne,{value:c,onValueChange:i=>{n(!0),r(i),m(""),u(null)},children:e.jsx(ve,{className:"h-auto flex-wrap justify-start",children:ie.map(i=>e.jsxs(Pe,{value:i.id,className:"flex items-center gap-2",children:[e.jsx(i.icon,{className:"w-4 h-4"}),e.jsx("span",{children:i.label}),e.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",i.count,")"]})]},i.id))})})]}),e.jsxs("div",{className:"flex flex-col gap-2 lg:items-end",children:[e.jsxs("div",{className:"grid w-full gap-2 sm:w-auto sm:min-w-[340px] sm:grid-cols-3",children:[e.jsx(U,{label:s("sharedPage.totalShared"),value:ce}),e.jsx(U,{label:l[c],value:B}),e.jsx(U,{label:s("sharedPage.visible"),value:_})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx(g,{variant:"secondary",children:de}),P?e.jsxs(g,{variant:"outline",children:[s("sharedPage.filterPrefix")," ",P]}):null]})]})]}),d&&!d.symlinkStatus.valid&&e.jsxs(C,{variant:"warning",children:[e.jsx(M,{className:"h-4 w-4"}),e.jsx($,{children:s("sharedPage.configurationRequired")}),e.jsxs(S,{children:[d.symlinkStatus.message,". Run `ccs sync` to configure."]})]}),w&&e.jsxs(C,{variant:"info",children:[e.jsx(M,{className:"h-4 w-4"}),e.jsx($,{children:s("sharedPage.countsUnavailable")}),e.jsxs(S,{children:[e.jsx("p",{children:xe}),e.jsx("div",{className:"mt-3",children:e.jsxs(L,{size:"sm",variant:"outline",onClick:()=>{v()},children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),s("sharedPage.retryCounts")]})})]})]}),N?e.jsx(Ae,{sharedCount:ue.length,profileLocalCount:G.length,profileLocalNames:G.map(i=>i.name)}):null]}),e.jsx("div",{className:"px-6 pb-6 lg:flex-1 lg:min-h-0",children:e.jsx("div",{className:"rounded-lg border overflow-hidden bg-background lg:h-full",children:e.jsxs("div",{className:"grid lg:h-full lg:min-h-0 lg:grid-cols-[320px_minmax(0,1fr)]",children:[e.jsxs("div",{className:"border-b lg:border-b-0 lg:border-r flex flex-col bg-muted/30 lg:min-h-0",children:[e.jsxs("div",{className:"p-4 border-b bg-background space-y-3",children:[e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.jsx(Me,{className:"w-4 h-4 text-primary shrink-0"}),e.jsx("h2",{className:"font-semibold truncate",children:l[c]})]}),Z&&e.jsxs(g,{variant:"outline",className:"text-[10px] h-5",children:[_,"/",B]})]}),e.jsxs("div",{className:"relative",children:[e.jsx(Ie,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground"}),e.jsx(we,{value:a,onChange:i=>m(i.target.value),placeholder:s("sharedPage.filterPlaceholder",{tab:c}),"aria-label":s("sharedPage.filterPlaceholder",{tab:c}),className:"pl-8 h-9"})]}),Z&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:[s("sharedPage.showing",{visible:_,total:B,tab:c}),P?s("sharedPage.showingQuery",{query:P}):"",te?s("sharedPage.refreshing"):""]})]}),e.jsx(R,{className:"max-h-[360px] lg:max-h-none lg:flex-1 lg:min-h-0",children:c==="settings"?e.jsx("div",{className:"p-2 space-y-1",children:e.jsxs("button",{type:"button",onClick:()=>u("settings.json"),className:W("w-full text-left p-3 rounded-md border transition-colors",d?.settings?"bg-primary/10 border-primary/30":"bg-background hover:bg-muted border-transparent opacity-50"),disabled:!d?.settings,children:[e.jsx("p",{className:"text-sm font-medium truncate",children:"settings.json"}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:s("sharedPage.settingsDescription")}),e.jsx(g,{variant:d?.settings?"default":"secondary",className:"mt-2 text-[10px]",children:d?.settings?s("sharedPage.settingsActive"):s("sharedPage.settingsInactive")})]})}):y?e.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:s("sharedPage.loadingShared",{tab:c})}):k?e.jsx("div",{className:"p-4 text-center",children:e.jsxs("div",{className:"space-y-3 py-8",children:[e.jsx(Ee,{className:"w-10 h-10 mx-auto text-destructive/50"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-medium",children:s("sharedPage.failedLoadShared",{tab:c})}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:ge})]}),e.jsxs(L,{size:"sm",variant:"outline",onClick:()=>{re()},children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),s("sharedPage.retry")]})]})}):me?e.jsx("div",{className:"p-4 text-sm text-muted-foreground leading-relaxed",children:oe}):he?e.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:s("sharedPage.noMatch",{tab:c,query:P})}):e.jsx("div",{className:"p-2 space-y-1",children:f.map(i=>e.jsxs("button",{type:"button",onClick:()=>u(i.path),className:W("w-full text-left p-3 rounded-md border transition-colors",p?.path===i.path?"bg-primary/10 border-primary/30":"bg-background hover:bg-muted border-transparent"),children:[e.jsx("p",{className:"text-sm font-medium truncate",children:i.name}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:i.description}),e.jsx("p",{className:"text-[11px] text-muted-foreground/90 mt-2 font-mono truncate",children:se(i.path)})]},`${i.type}:${i.path}`))})})]}),e.jsx("div",{className:"min-w-0 min-h-[360px] flex flex-col bg-muted/20 lg:min-h-0",children:!p&&c!=="settings"?e.jsx("div",{className:"min-h-[320px] flex items-center justify-center p-6 text-center text-muted-foreground",children:s("sharedPage.selectOne",{tab:c.slice(0,-1)})}):c==="settings"?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"px-4 py-3 border-b bg-background",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h2",{className:"text-base font-semibold truncate",children:"settings.json"}),e.jsx(g,{variant:"outline",className:"uppercase text-[10px]",children:s("sharedPage.settings")})]})}),e.jsxs("div",{className:"p-4 space-y-4 min-h-0 flex-1 flex flex-col",children:[e.jsx("div",{className:"rounded-md border bg-muted/35 p-3",children:e.jsxs("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[e.jsx(E,{label:s("sharedPage.settingsTitle"),value:s("sharedPage.settingsDescription")}),j?.contentPath?e.jsx(E,{label:s("sharedPage.resolvedSource"),value:j.contentPath,mono:!0}):null]})}),e.jsx(X,{className:"min-h-0 flex-1",children:e.jsx(Y,{className:"p-0 h-full",children:e.jsx(R,{className:"h-full px-5 py-4",children:d?.settings?O?e.jsx("p",{className:"text-sm text-muted-foreground",children:s("sharedPage.loadingSettings")}):Q?e.jsxs(C,{variant:"destructive",className:"max-w-2xl",children:[e.jsx(M,{className:"h-4 w-4"}),e.jsx($,{children:s("sharedPage.failedLoadContent")}),e.jsxs(S,{children:[e.jsx("p",{children:J}),e.jsx("div",{className:"mt-3",children:e.jsxs(L,{size:"sm",variant:"outline",onClick:()=>{H()},children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),s("sharedPage.retryContent")]})})]})]}):e.jsx(ye,{value:j?.content??"",onChange:()=>{},language:"json",readonly:!0,minHeight:"320px"}):e.jsxs("div",{className:"min-h-[260px] flex flex-col items-center justify-center text-center",children:[e.jsx(ee,{className:"w-12 h-12 text-muted-foreground/40 mb-4"}),e.jsx("h3",{className:"text-lg font-semibold",children:s("sharedPage.settingsTitle")}),e.jsx("p",{className:"text-sm text-muted-foreground max-w-md mt-2",children:s("sharedPage.settingsDescription")}),e.jsx("div",{className:"mt-6 p-3 rounded-md bg-muted/50 border font-mono text-xs",children:s("sharedPage.settingsInactive")})]})})})})]})]}):p?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"px-4 py-3 border-b bg-background",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h2",{className:"text-base font-semibold truncate",children:p.name}),e.jsx(g,{variant:"outline",className:"uppercase text-[10px]",children:p.type})]})}),e.jsxs("div",{className:"p-4 space-y-4 min-h-0 flex-1 flex flex-col",children:[e.jsx("div",{className:"rounded-md border bg-muted/35 p-3",children:e.jsxs("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[e.jsx(E,{label:s("sharedPage.pathLabel"),value:se(p.path),mono:!0}),j?.contentPath&&j.contentPath!==p.path&&e.jsx(E,{label:s("sharedPage.resolvedSource"),value:j.contentPath,mono:!0})]})}),e.jsx(X,{className:"min-h-0 flex-1",children:e.jsx(Y,{className:"p-0 h-full",children:e.jsx(R,{className:"h-full px-5 py-4",children:O?e.jsx("p",{className:"text-sm text-muted-foreground",children:s("sharedPage.loadingMarkdown")}):Q?e.jsxs(C,{variant:"destructive",className:"max-w-2xl",children:[e.jsx(M,{className:"h-4 w-4"}),e.jsx($,{children:s("sharedPage.failedLoadContent")}),e.jsxs(S,{children:[e.jsx("p",{children:J}),e.jsx("div",{className:"mt-3",children:e.jsxs(L,{size:"sm",variant:"outline",onClick:()=>{H()},children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),s("sharedPage.retryContent")]})})]})]}):e.jsx(Fe,{content:j?.content??""})})})})]})]}):null})]})})})]})}function Te(s){return s.commands>0?"commands":s.skills>0?"skills":s.agents>0?"agents":s.plugins>0?"plugins":s.settings?"settings":"commands"}function Ae({sharedCount:s,profileLocalCount:o,profileLocalNames:r}){const{t}=q(),n=r.slice(0,4),l=Math.max(r.length-n.length,0);return e.jsx("div",{className:"rounded-md border bg-muted/25 px-4 py-3",children:e.jsxs("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-center lg:justify-between",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-sm font-semibold",children:t("sharedPage.resourcePolicies")}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:t("sharedPage.resourcePoliciesDescription")})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(g,{variant:"outline",className:"border-emerald-300/60 bg-emerald-50/50 text-emerald-700 dark:border-emerald-900/40 dark:bg-emerald-900/20 dark:text-emerald-300",children:t("sharedPage.sharedAccounts",{count:s})}),e.jsx(g,{variant:"secondary",children:t("sharedPage.profileLocalAccounts",{count:o})}),n.map(a=>e.jsx(g,{variant:"outline",className:"font-mono text-[10px]",children:a},a)),l>0?e.jsx(g,{variant:"outline",className:"text-[10px]",children:t("sharedPage.moreProfileLocalAccounts",{count:l})}):null]})]})})}function U({label:s,value:o}){return e.jsxs("div",{className:"rounded-md border bg-muted/30 px-3 py-2",children:[e.jsx("p",{className:"text-[11px] uppercase tracking-wide text-muted-foreground",children:s}),e.jsx("p",{className:"text-lg font-semibold leading-tight mt-1",children:o})]})}function E({label:s,value:o,mono:r=!1}){return e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:s}),e.jsx("p",{className:W("text-xs mt-1 break-words",r?"font-mono":"text-sm"),children:o})]})}function V(s,o){if(!(s instanceof Error))return o;const r=s.message.toLowerCase();return r.includes("failed to fetch")||r.includes("network")?"Connection to dashboard server lost or restarting. Keep `ccs config` running, then retry.":s.message||o}function se(s){return s.startsWith("plugin-registry:")?"installed_plugins.json":s}function Fe({content:s}){const{t:o}=q(),r=b.useMemo(()=>Be(s),[s]);return r.blocks.length===0&&r.frontmatter.length===0?e.jsx("p",{className:"text-sm text-muted-foreground",children:o("sharedPage.noMarkdown")}):e.jsxs("div",{className:"space-y-5",children:[r.frontmatter.length>0?e.jsx("div",{className:"rounded-md border bg-muted/35 p-3",children:e.jsx("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:r.frontmatter.map(t=>e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:De(t.key)}),e.jsx("p",{className:"text-xs mt-1 break-words",children:t.value})]},`${t.key}:${t.value}`))})}):null,r.blocks.map((t,n)=>{if(t.type==="heading"){const l=t.level<=1?"text-xl font-semibold":t.level===2?"text-lg font-semibold":"text-base font-semibold";return e.jsx("h3",{className:l,children:T(t.text,`heading-${n}`)},`heading-${n}`)}return t.type==="paragraph"?e.jsx("p",{className:"text-sm leading-6 whitespace-pre-wrap",children:T(t.text,`paragraph-${n}`)},`paragraph-${n}`):t.type==="unordered-list"?e.jsx("ul",{className:"list-disc pl-5 space-y-1 text-sm leading-6",children:t.items.map((l,a)=>e.jsx("li",{children:T(l,`ul-item-${n}-${a}`)},`ul-item-${n}-${a}`))},`ul-${n}`):t.type==="ordered-list"?e.jsx("ol",{className:"list-decimal pl-5 space-y-1 text-sm leading-6",children:t.items.map((l,a)=>e.jsx("li",{children:T(l,`ol-item-${n}-${a}`)},`ol-item-${n}-${a}`))},`ol-${n}`):e.jsxs("div",{className:"rounded-md border bg-muted/60 p-3 font-mono text-xs leading-5 overflow-x-auto",children:[t.language&&e.jsx("div",{className:"text-[10px] uppercase tracking-wide text-muted-foreground mb-2",children:t.language}),e.jsx("pre",{className:"whitespace-pre-wrap break-words m-0",children:t.content})]},`code-${n}`)})]})}function De(s){return s.replace(/[-_]/g," ")}function T(s,o){const r=/(\*\*([^*]+)\*\*|`([^`]+)`|\*([^*]+)\*|\[([^\]]+)\]\(([^)]+)\))/g,t=[];let n=0,l=0;for(const a of s.matchAll(r)){const m=a[0],h=a.index??0;if(h>n&&t.push(s.slice(n,h)),a[2])t.push(e.jsx("strong",{className:"font-semibold",children:a[2]},`${o}-strong-${l}`));else if(a[3])t.push(e.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[0.82em]",children:a[3]},`${o}-code-${l}`));else if(a[4])t.push(e.jsx("em",{className:"italic",children:a[4]},`${o}-em-${l}`));else if(a[5]&&a[6]){const u=a[6].trim();/^(https?:\/\/|mailto:)/i.test(u)?t.push(e.jsx("a",{href:u,target:"_blank",rel:"noreferrer",className:"text-primary underline underline-offset-2 hover:opacity-90",children:a[5]},`${o}-link-${l}`)):t.push(a[5])}else t.push(m);n=h+m.length,l+=1}return n<s.length&&t.push(s.slice(n)),t.length===0?[s]:t}function Be(s){const o=s.replace(/\r\n/g,`
1
+ import{j as e}from"./radix-ui-nu4wz29m.js";import{r as b}from"./react-vendor-Bjx91N7w.js";import{a as O,bv as fe,bw as je,bx as be,R as Ne,U as ve,V as Pe,B as g,bi as C,bj as $,bk as S,e as L,I as we,t as z,c as q,C as X,b as Y,bc as ye}from"./index-CcGVqYOy.js";import{u as ke}from"./use-accounts-BdalFsdY.js";import{a3 as Ce,aa as $e,b9 as Se,b4 as Le,aE as ee,T as M,R as I,F as Me,av as Ie,w as Ee}from"./icons-DzKUh8vG.js";import"./tanstack-bhJxV1h8.js";import"./notifications-B4_o8bcr.js";import"./utils-CzKF5WmX.js";import"./form-utils-CuHzLhJZ.js";import"./charts-eIPy2oG6.js";function Ze(){const{t:s}=O(),[o,r]=b.useState("commands"),[t,n]=b.useState(!1),l={commands:s("sharedPage.commands"),skills:s("sharedPage.skills"),agents:s("sharedPage.agents"),plugins:s("sharedPage.plugins"),settings:s("sharedPage.settings")},[a,m]=b.useState(""),[h,u]=b.useState(null),{data:d,isError:w,error:x,refetch:v}=fe(),{data:N}=ke(),c=d&&!t?Te(d):o,{data:A,isLoading:y,isFetching:te,isError:k,error:ae,refetch:re}=je(c),F=A?.items??[],D=a.trim().toLowerCase(),P=a.trim(),f=b.useMemo(()=>{const i=A?.items??[];return D?i.filter(_=>[_.name,_.description,_.path].some(pe=>pe.toLowerCase().includes(D))):i},[A,D]),p=b.useMemo(()=>f.length===0?null:h?f.find(i=>i.path===h)??f[0]:f[0],[f,h]),ne=c==="settings"&&d?.settings?"settings.json":p?.path??null,{data:j,isLoading:Q,isError:W,error:le,refetch:H}=be(c,ne),ie=[{id:"commands",label:l.commands,icon:Ce,count:d?.commands??0},{id:"skills",label:l.skills,icon:$e,count:d?.skills??0},{id:"agents",label:l.agents,icon:Se,count:d?.agents??0},{id:"plugins",label:l.plugins,icon:Le,count:d?.plugins??0},{id:"settings",label:l.settings,icon:ee,count:d?.settings?1:0}],ce=d?.total??0,K=d?.settings?1:0,B=c==="settings"?K:F.length,R=c==="settings"?K:f.length,Z=c==="settings"||!y&&!k,de=s(c==="plugins"?"sharedPage.registryDetail":c==="settings"?"sharedPage.maskedSettingsDetail":"sharedPage.markdownDetail"),oe=c==="plugins"?s("sharedPage.noPluginsFound"):s("sharedPage.noSharedFound",{tab:c}),me=!y&&!k&&F.length===0,he=!y&&!k&&F.length>0&&f.length===0,ue=N?.accounts.filter(i=>(i.shared_resource_mode||"shared")==="shared")??[],G=N?.accounts.filter(i=>i.shared_resource_mode==="profile-local")??[],xe=V(x,"Shared item totals could not be loaded. Listing still works."),ge=V(ae,`Unable to fetch shared ${c}. Please try again.`),J=V(le,`Unable to load content for ${p?.name??"selected item"}.`);return e.jsxs("div",{className:"h-full overflow-auto lg:overflow-hidden flex flex-col",children:[e.jsxs("div",{className:"p-6 pb-4 space-y-3",children:[e.jsxs("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-end lg:justify-between",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"text-2xl font-bold",children:s("sharedPage.title")}),e.jsx("p",{className:"text-muted-foreground",children:s("sharedPage.subtitle")})]}),e.jsx(Ne,{value:c,onValueChange:i=>{n(!0),r(i),m(""),u(null)},children:e.jsx(ve,{className:"h-auto flex-wrap justify-start",children:ie.map(i=>e.jsxs(Pe,{value:i.id,className:"flex items-center gap-2",children:[e.jsx(i.icon,{className:"w-4 h-4"}),e.jsx("span",{children:i.label}),e.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",i.count,")"]})]},i.id))})})]}),e.jsxs("div",{className:"flex flex-col gap-2 lg:items-end",children:[e.jsxs("div",{className:"grid w-full gap-2 sm:w-auto sm:min-w-[340px] sm:grid-cols-3",children:[e.jsx(U,{label:s("sharedPage.totalShared"),value:ce}),e.jsx(U,{label:l[c],value:B}),e.jsx(U,{label:s("sharedPage.visible"),value:R})]}),e.jsxs("div",{className:"flex items-center gap-2 text-xs",children:[e.jsx(g,{variant:"secondary",children:de}),P?e.jsxs(g,{variant:"outline",children:[s("sharedPage.filterPrefix")," ",P]}):null]})]})]}),d&&!d.symlinkStatus.valid&&e.jsxs(C,{variant:"warning",children:[e.jsx(M,{className:"h-4 w-4"}),e.jsx($,{children:s("sharedPage.configurationRequired")}),e.jsxs(S,{children:[d.symlinkStatus.message,". Run `ccs sync` to configure."]})]}),w&&e.jsxs(C,{variant:"info",children:[e.jsx(M,{className:"h-4 w-4"}),e.jsx($,{children:s("sharedPage.countsUnavailable")}),e.jsxs(S,{children:[e.jsx("p",{children:xe}),e.jsx("div",{className:"mt-3",children:e.jsxs(L,{size:"sm",variant:"outline",onClick:()=>{v()},children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),s("sharedPage.retryCounts")]})})]})]}),N?e.jsx(Ae,{sharedCount:ue.length,profileLocalCount:G.length,profileLocalNames:G.map(i=>i.name)}):null]}),e.jsx("div",{className:"px-6 pb-6 lg:flex-1 lg:min-h-0",children:e.jsx("div",{className:"rounded-lg border overflow-hidden bg-background lg:h-full",children:e.jsxs("div",{className:"grid lg:h-full lg:min-h-0 lg:grid-cols-[320px_minmax(0,1fr)]",children:[e.jsxs("div",{className:"border-b lg:border-b-0 lg:border-r flex flex-col bg-muted/30 lg:min-h-0",children:[e.jsxs("div",{className:"p-4 border-b bg-background space-y-3",children:[e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.jsx(Me,{className:"w-4 h-4 text-primary shrink-0"}),e.jsx("h2",{className:"font-semibold truncate",children:l[c]})]}),Z&&e.jsxs(g,{variant:"outline",className:"text-[10px] h-5",children:[R,"/",B]})]}),e.jsxs("div",{className:"relative",children:[e.jsx(Ie,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground"}),e.jsx(we,{value:a,onChange:i=>m(i.target.value),placeholder:s("sharedPage.filterPlaceholder",{tab:c}),"aria-label":s("sharedPage.filterPlaceholder",{tab:c}),className:"pl-8 h-9"})]}),Z&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:[s("sharedPage.showing",{visible:R,total:B,tab:c}),P?s("sharedPage.showingQuery",{query:P}):"",te?s("sharedPage.refreshing"):""]})]}),e.jsx(z,{className:"max-h-[360px] lg:max-h-none lg:flex-1 lg:min-h-0",children:c==="settings"?e.jsx("div",{className:"p-2 space-y-1",children:e.jsxs("button",{type:"button",onClick:()=>u("settings.json"),className:q("w-full text-left p-3 rounded-md border transition-colors",d?.settings?"bg-primary/10 border-primary/30":"bg-background hover:bg-muted border-transparent opacity-50"),disabled:!d?.settings,children:[e.jsx("p",{className:"text-sm font-medium truncate",children:"settings.json"}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:s("sharedPage.settingsDescription")}),e.jsx(g,{variant:d?.settings?"default":"secondary",className:"mt-2 text-[10px]",children:d?.settings?s("sharedPage.settingsActive"):s("sharedPage.settingsInactive")})]})}):y?e.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:s("sharedPage.loadingShared",{tab:c})}):k?e.jsx("div",{className:"p-4 text-center",children:e.jsxs("div",{className:"space-y-3 py-8",children:[e.jsx(Ee,{className:"w-10 h-10 mx-auto text-destructive/50"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-medium",children:s("sharedPage.failedLoadShared",{tab:c})}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:ge})]}),e.jsxs(L,{size:"sm",variant:"outline",onClick:()=>{re()},children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),s("sharedPage.retry")]})]})}):me?e.jsx("div",{className:"p-4 text-sm text-muted-foreground leading-relaxed",children:oe}):he?e.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:s("sharedPage.noMatch",{tab:c,query:P})}):e.jsx("div",{className:"p-2 space-y-1",children:f.map(i=>e.jsxs("button",{type:"button",onClick:()=>u(i.path),className:q("w-full text-left p-3 rounded-md border transition-colors",p?.path===i.path?"bg-primary/10 border-primary/30":"bg-background hover:bg-muted border-transparent"),children:[e.jsx("p",{className:"text-sm font-medium truncate",children:i.name}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:i.description}),e.jsx("p",{className:"text-[11px] text-muted-foreground/90 mt-2 font-mono truncate",children:se(i.path)})]},`${i.type}:${i.path}`))})})]}),e.jsx("div",{className:"min-w-0 min-h-[360px] flex flex-col bg-muted/20 lg:min-h-0",children:!p&&c!=="settings"?e.jsx("div",{className:"min-h-[320px] flex items-center justify-center p-6 text-center text-muted-foreground",children:s("sharedPage.selectOne",{tab:c.slice(0,-1)})}):c==="settings"?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"px-4 py-3 border-b bg-background",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h2",{className:"text-base font-semibold truncate",children:"settings.json"}),e.jsx(g,{variant:"outline",className:"uppercase text-[10px]",children:s("sharedPage.settings")})]})}),e.jsxs("div",{className:"p-4 space-y-4 min-h-0 flex-1 flex flex-col",children:[e.jsx("div",{className:"rounded-md border bg-muted/35 p-3",children:e.jsxs("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[e.jsx(E,{label:s("sharedPage.settingsTitle"),value:s("sharedPage.settingsDescription")}),j?.contentPath?e.jsx(E,{label:s("sharedPage.resolvedSource"),value:j.contentPath,mono:!0}):null]})}),e.jsx(X,{className:"min-h-0 flex-1",children:e.jsx(Y,{className:"p-0 h-full",children:e.jsx(z,{className:"h-full px-5 py-4",children:d?.settings?Q?e.jsx("p",{className:"text-sm text-muted-foreground",children:s("sharedPage.loadingSettings")}):W?e.jsxs(C,{variant:"destructive",className:"max-w-2xl",children:[e.jsx(M,{className:"h-4 w-4"}),e.jsx($,{children:s("sharedPage.failedLoadContent")}),e.jsxs(S,{children:[e.jsx("p",{children:J}),e.jsx("div",{className:"mt-3",children:e.jsxs(L,{size:"sm",variant:"outline",onClick:()=>{H()},children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),s("sharedPage.retryContent")]})})]})]}):e.jsx(ye,{value:j?.content??"",onChange:()=>{},language:"json",readonly:!0,minHeight:"320px"}):e.jsxs("div",{className:"min-h-[260px] flex flex-col items-center justify-center text-center",children:[e.jsx(ee,{className:"w-12 h-12 text-muted-foreground/40 mb-4"}),e.jsx("h3",{className:"text-lg font-semibold",children:s("sharedPage.settingsTitle")}),e.jsx("p",{className:"text-sm text-muted-foreground max-w-md mt-2",children:s("sharedPage.settingsDescription")}),e.jsx("div",{className:"mt-6 p-3 rounded-md bg-muted/50 border font-mono text-xs",children:s("sharedPage.settingsInactive")})]})})})})]})]}):p?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"px-4 py-3 border-b bg-background",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h2",{className:"text-base font-semibold truncate",children:p.name}),e.jsx(g,{variant:"outline",className:"uppercase text-[10px]",children:p.type})]})}),e.jsxs("div",{className:"p-4 space-y-4 min-h-0 flex-1 flex flex-col",children:[e.jsx("div",{className:"rounded-md border bg-muted/35 p-3",children:e.jsxs("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:[e.jsx(E,{label:s("sharedPage.pathLabel"),value:se(p.path),mono:!0}),j?.contentPath&&j.contentPath!==p.path&&e.jsx(E,{label:s("sharedPage.resolvedSource"),value:j.contentPath,mono:!0})]})}),e.jsx(X,{className:"min-h-0 flex-1",children:e.jsx(Y,{className:"p-0 h-full",children:e.jsx(z,{className:"h-full px-5 py-4",children:Q?e.jsx("p",{className:"text-sm text-muted-foreground",children:s("sharedPage.loadingMarkdown")}):W?e.jsxs(C,{variant:"destructive",className:"max-w-2xl",children:[e.jsx(M,{className:"h-4 w-4"}),e.jsx($,{children:s("sharedPage.failedLoadContent")}),e.jsxs(S,{children:[e.jsx("p",{children:J}),e.jsx("div",{className:"mt-3",children:e.jsxs(L,{size:"sm",variant:"outline",onClick:()=>{H()},children:[e.jsx(I,{className:"w-4 h-4 mr-2"}),s("sharedPage.retryContent")]})})]})]}):e.jsx(Fe,{content:j?.content??""})})})})]})]}):null})]})})})]})}function Te(s){return s.commands>0?"commands":s.skills>0?"skills":s.agents>0?"agents":s.plugins>0?"plugins":s.settings?"settings":"commands"}function Ae({sharedCount:s,profileLocalCount:o,profileLocalNames:r}){const{t}=O(),n=r.slice(0,4),l=Math.max(r.length-n.length,0);return e.jsx("div",{className:"rounded-md border bg-muted/25 px-4 py-3",children:e.jsxs("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-center lg:justify-between",children:[e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-sm font-semibold",children:t("sharedPage.resourcePolicies")}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:t("sharedPage.resourcePoliciesDescription")})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(g,{variant:"outline",className:"border-emerald-300/60 bg-emerald-50/50 text-emerald-700 dark:border-emerald-900/40 dark:bg-emerald-900/20 dark:text-emerald-300",children:t("sharedPage.sharedAccounts",{count:s})}),e.jsx(g,{variant:"secondary",children:t("sharedPage.profileLocalAccounts",{count:o})}),n.map(a=>e.jsx(g,{variant:"outline",className:"font-mono text-[10px]",children:a},a)),l>0?e.jsx(g,{variant:"outline",className:"text-[10px]",children:t("sharedPage.moreProfileLocalAccounts",{count:l})}):null]})]})})}function U({label:s,value:o}){return e.jsxs("div",{className:"rounded-md border bg-muted/30 px-3 py-2",children:[e.jsx("p",{className:"text-[11px] uppercase tracking-wide text-muted-foreground",children:s}),e.jsx("p",{className:"text-lg font-semibold leading-tight mt-1",children:o})]})}function E({label:s,value:o,mono:r=!1}){return e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:s}),e.jsx("p",{className:q("text-xs mt-1 break-words",r?"font-mono":"text-sm"),children:o})]})}function V(s,o){if(!(s instanceof Error))return o;const r=s.message.toLowerCase();return r.includes("failed to fetch")||r.includes("network")?"Connection to dashboard server lost or restarting. Keep `ccs config` running, then retry.":s.message||o}function se(s){return s.startsWith("plugin-registry:")?"installed_plugins.json":s}function Fe({content:s}){const{t:o}=O(),r=b.useMemo(()=>Be(s),[s]);return r.blocks.length===0&&r.frontmatter.length===0?e.jsx("p",{className:"text-sm text-muted-foreground",children:o("sharedPage.noMarkdown")}):e.jsxs("div",{className:"space-y-5",children:[r.frontmatter.length>0?e.jsx("div",{className:"rounded-md border bg-muted/35 p-3",children:e.jsx("div",{className:"grid gap-3 sm:grid-cols-2 xl:grid-cols-3",children:r.frontmatter.map(t=>e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"text-[10px] uppercase tracking-wide text-muted-foreground",children:De(t.key)}),e.jsx("p",{className:"text-xs mt-1 break-words",children:t.value})]},`${t.key}:${t.value}`))})}):null,r.blocks.map((t,n)=>{if(t.type==="heading"){const l=t.level<=1?"text-xl font-semibold":t.level===2?"text-lg font-semibold":"text-base font-semibold";return e.jsx("h3",{className:l,children:T(t.text,`heading-${n}`)},`heading-${n}`)}return t.type==="paragraph"?e.jsx("p",{className:"text-sm leading-6 whitespace-pre-wrap",children:T(t.text,`paragraph-${n}`)},`paragraph-${n}`):t.type==="unordered-list"?e.jsx("ul",{className:"list-disc pl-5 space-y-1 text-sm leading-6",children:t.items.map((l,a)=>e.jsx("li",{children:T(l,`ul-item-${n}-${a}`)},`ul-item-${n}-${a}`))},`ul-${n}`):t.type==="ordered-list"?e.jsx("ol",{className:"list-decimal pl-5 space-y-1 text-sm leading-6",children:t.items.map((l,a)=>e.jsx("li",{children:T(l,`ol-item-${n}-${a}`)},`ol-item-${n}-${a}`))},`ol-${n}`):e.jsxs("div",{className:"rounded-md border bg-muted/60 p-3 font-mono text-xs leading-5 overflow-x-auto",children:[t.language&&e.jsx("div",{className:"text-[10px] uppercase tracking-wide text-muted-foreground mb-2",children:t.language}),e.jsx("pre",{className:"whitespace-pre-wrap break-words m-0",children:t.content})]},`code-${n}`)})]})}function De(s){return s.replace(/[-_]/g," ")}function T(s,o){const r=/(\*\*([^*]+)\*\*|`([^`]+)`|\*([^*]+)\*|\[([^\]]+)\]\(([^)]+)\))/g,t=[];let n=0,l=0;for(const a of s.matchAll(r)){const m=a[0],h=a.index??0;if(h>n&&t.push(s.slice(n,h)),a[2])t.push(e.jsx("strong",{className:"font-semibold",children:a[2]},`${o}-strong-${l}`));else if(a[3])t.push(e.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono text-[0.82em]",children:a[3]},`${o}-code-${l}`));else if(a[4])t.push(e.jsx("em",{className:"italic",children:a[4]},`${o}-em-${l}`));else if(a[5]&&a[6]){const u=a[6].trim();/^(https?:\/\/|mailto:)/i.test(u)?t.push(e.jsx("a",{href:u,target:"_blank",rel:"noreferrer",className:"text-primary underline underline-offset-2 hover:opacity-90",children:a[5]},`${o}-link-${l}`)):t.push(a[5])}else t.push(m);n=h+m.length,l+=1}return n<s.length&&t.push(s.slice(n)),t.length===0?[s]:t}function Be(s){const o=s.replace(/\r\n/g,`
2
2
  `).trim();if(!o)return{blocks:[],frontmatter:[]};let r=o;const t=[];if(r.startsWith(`---
3
3
  `)){const n=r.indexOf(`
4
4
  ---
5
5
  `,4);if(n!==-1){const l=r.slice(4,n).trim();for(const a of l.split(`
6
- `)){const m=a.match(/^([A-Za-z0-9_-]+)\s*:\s*(.+)$/);m&&t.push({key:m[1],value:m[2].trim().replace(/^['"]|['"]$/g,"")})}r=r.slice(n+5).trim()}}return{blocks:_e(r),frontmatter:t}}function _e(s){if(!s.trim())return[];const o=s.split(`
6
+ `)){const m=a.match(/^([A-Za-z0-9_-]+)\s*:\s*(.+)$/);m&&t.push({key:m[1],value:m[2].trim().replace(/^['"]|['"]$/g,"")})}r=r.slice(n+5).trim()}}return{blocks:Re(r),frontmatter:t}}function Re(s){if(!s.trim())return[];const o=s.split(`
7
7
  `),r=[];let t=[],n=[],l=[],a="",m=null;const h=()=>{t.length!==0&&(r.push({type:"paragraph",text:t.join(" ")}),t=[])},u=()=>{n.length!==0&&(r.push({type:"unordered-list",items:n}),n=[])},d=()=>{l.length!==0&&(r.push({type:"ordered-list",items:l}),l=[])},w=()=>{m&&(r.push({type:"code",language:a,content:m.join(`
8
8
  `)}),a="",m=null)};for(const x of o){if(m){x.trim().startsWith("```")?w():m.push(x);continue}if(x.trim().startsWith("```")){h(),u(),d(),a=x.trim().replace(/^```/,"").trim(),m=[];continue}if(x.trim().length===0){h(),u(),d();continue}const v=x.match(/^(#{1,6})\s+(.*)$/);if(v){h(),u(),d(),r.push({type:"heading",level:v[1].length,text:v[2].trim()});continue}const N=x.match(/^\s*[-*]\s+(.*)$/);if(N){h(),d(),n.push(N[1].trim());continue}const c=x.match(/^\s*\d+\.\s+(.*)$/);if(c){h(),u(),l.push(c[1].trim());continue}u(),d(),t.push(x.trim())}return h(),u(),d(),w(),r}export{Ze as SharedPage};
@@ -1 +1 @@
1
- import{j as t}from"./radix-ui-nu4wz29m.js";import"./react-vendor-Bjx91N7w.js";import{c as l}from"./index-sIfjKy42.js";function n({className:a,...e}){return t.jsx("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:t.jsx("table",{"data-slot":"table",className:l("w-full caption-bottom text-sm",a),...e})})}function c({className:a,...e}){return t.jsx("thead",{"data-slot":"table-header",className:l("[&_tr]:border-b",a),...e})}function d({className:a,...e}){return t.jsx("tbody",{"data-slot":"table-body",className:l("[&_tr:last-child]:border-0",a),...e})}function b({className:a,...e}){return t.jsx("tr",{"data-slot":"table-row",className:l("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",a),...e})}function i({className:a,...e}){return t.jsx("th",{"data-slot":"table-head",className:l("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...e})}function m({className:a,...e}){return t.jsx("td",{"data-slot":"table-cell",className:l("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...e})}export{n as T,c as a,b,i as c,d,m as e};
1
+ import{j as t}from"./radix-ui-nu4wz29m.js";import"./react-vendor-Bjx91N7w.js";import{c as l}from"./index-CcGVqYOy.js";function n({className:a,...e}){return t.jsx("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:t.jsx("table",{"data-slot":"table",className:l("w-full caption-bottom text-sm",a),...e})})}function c({className:a,...e}){return t.jsx("thead",{"data-slot":"table-header",className:l("[&_tr]:border-b",a),...e})}function d({className:a,...e}){return t.jsx("tbody",{"data-slot":"table-body",className:l("[&_tr:last-child]:border-0",a),...e})}function b({className:a,...e}){return t.jsx("tr",{"data-slot":"table-row",className:l("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",a),...e})}function i({className:a,...e}){return t.jsx("th",{"data-slot":"table-head",className:l("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...e})}function m({className:a,...e}){return t.jsx("td",{"data-slot":"table-cell",className:l("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",a),...e})}export{n as T,c as a,b,i as c,d,m as e};
@@ -0,0 +1 @@
1
+ import{j as e}from"./radix-ui-nu4wz29m.js";import{L,r as c}from"./react-vendor-Bjx91N7w.js";import{a as x,B as P,c as S,X as M,e as u,y as U,C,p as v,q as N,$ as w,b as j,t as b,I as B}from"./index-CcGVqYOy.js";import{a1 as F,$ as z,ba as W,x as H,E as Q,Q as G,aa as q,C as K,bb as J,av as V}from"./icons-DzKUh8vG.js";import"./tanstack-bhJxV1h8.js";import"./notifications-B4_o8bcr.js";import"./utils-CzKF5WmX.js";import"./form-utils-CuHzLhJZ.js";import"./charts-eIPy2oG6.js";const Y={new:"border-blue-200 bg-blue-50 text-blue-700 dark:border-blue-900/50 dark:bg-blue-900/20 dark:text-blue-300",stable:"border-green-200 bg-green-50 text-green-700 dark:border-green-900/50 dark:bg-green-900/20 dark:text-green-300",planned:"border-amber-200 bg-amber-50 text-amber-700 dark:border-amber-900/50 dark:bg-amber-900/20 dark:text-amber-300"};function Z({status:t,className:s}){const{t:r}=x(),i={new:r("updates.statusNew"),stable:r("updates.statusStable"),planned:r("updates.statusPlanned")};return e.jsx(P,{variant:"outline",className:S("font-medium",Y[t],s),children:i[t]})}const g={target:"Target CLI",cliproxy:"CLIProxy Provider","api-profiles":"API Profile",websearch:"WebSearch"},X=[{id:"codex-target-runtime-support",title:"Native Codex runtime support is live",summary:"Codex now participates as a first-class runtime target through ccs-codex, ccsx, ccsxp, or --target codex.",primaryAction:"Use Codex as a runtime target for native Codex sessions and Codex-routed CLIProxy flows.",publishedAt:"2026-03-28",status:"new",scopes:["target","cliproxy","api-profiles"],entryIds:["codex-target","codex-cliproxy"],highlights:["Use ccs-codex or ccsx for native Codex runs.","Use ccsxp for native Codex with the cliproxy provider shortcut.","Use ccs codex --target codex when you want the explicit CCS-managed Codex bridge.","Codex remains runtime-only for saved defaults; use runtime aliases or --target codex at launch time."],actions:[{id:"copy-codex-alias-command",label:"Open native Codex",description:"Launch Codex through the explicit CCS runtime alias.",type:"command",command:"ccs-codex"},{id:"copy-codex-provider-command",label:"Run native Codex with cliproxy",description:"Use the native Codex cliproxy shortcut through CCS.",type:"command",command:'ccsxp "your prompt"'},{id:"copy-codex-provider-command-explicit",label:"Run the managed Codex bridge explicitly",description:"Use the explicit CCS-managed Codex bridge on native Codex.",type:"command",command:'ccs codex --target codex "your prompt"'},{id:"open-codex-dashboard",label:"Open Codex dashboard",description:"Review Codex runtime support, config layers, and dashboard setup flows.",type:"route",path:"/codex"}],routes:[{label:"Codex CLI",path:"/codex"}],commands:["ccs-codex","ccsx",'ccsxp "your prompt"','ccs codex --target codex "your prompt"']},{id:"droid-target-support",title:"Factory Droid support is live",summary:"API Profiles and CLIProxy variants now support Droid as a first-class execution target.",primaryAction:"Set Droid as your default execution target for non-Claude workflows.",publishedAt:"2026-02-25",status:"new",scopes:["target","api-profiles","cliproxy"],entryIds:["droid-target","custom-api-profiles","codex-cliproxy","agy-cliproxy"],highlights:["Set default target to Droid when creating or editing API Profiles.","Set default target to Droid for CLIProxy variants, including Codex and Antigravity flows.","Use ccs-droid as the explicit alias, with ccsd kept as the legacy shortcut."],actions:[{id:"open-api-profiles",label:"Set default target in API Profiles",description:"Open API Profiles and set Default Target to Droid for profiles you run often.",type:"route",path:"/providers"},{id:"open-cliproxy",label:"Set default target in CLIProxy variants",description:"Open CLIProxy variants and set target to Droid for Codex/Antigravity or custom variants.",type:"route",path:"/cliproxy"},{id:"copy-ccs-droid-command",label:"Run once with explicit Droid alias",description:"Use ccs-droid to force the Droid target with your current profile.",type:"command",command:"ccs-droid glm"},{id:"copy-target-override",label:"Run once with --target override",description:"Keep your default profile but force Droid for a single command.",type:"command",command:'ccs codex --target droid "your prompt"'}],routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccs-droid glm",'ccs codex --target droid "your prompt"',"ccs cliproxy create mycodex --provider codex --target droid"]},{id:"updates-center-launch",title:"Updates Center is available for rollout tasks",summary:"A focused Updates Center exists for setup tasks and rollout guidance when you need it.",primaryAction:"Use this page only when needed for rollout tasks, then return to your normal workflow.",publishedAt:"2026-02-25",status:"new",scopes:["target","cliproxy","api-profiles","websearch"],entryIds:["droid-target","codex-cliproxy","custom-api-profiles","opencode-websearch"],highlights:["Single data source powers update content and integration mapping.","Notices can be tracked as new, seen, done, or dismissed.","Catalog covers target CLI, CLIProxy providers, and WebSearch integrations."],actions:[{id:"open-updates-page",label:"Open Updates Center when needed",description:"Review rollout tasks only when you want guided setup changes.",type:"route",path:"/updates"},{id:"copy-open-dashboard",label:"Open dashboard from terminal",description:"Re-open config dashboard anytime from CLI.",type:"command",command:"ccs config"}],routes:[{label:"Updates Center",path:"/updates"}],commands:["ccs config"]}],ee=[{id:"claude-target",name:"Claude Code",scope:"target",status:"stable",summary:"Default runtime target for all CCS profile types.",pillars:{baseUrl:"From profile settings (ANTHROPIC_BASE_URL)",auth:"From profile settings (ANTHROPIC_AUTH_TOKEN)",model:"From profile settings (ANTHROPIC_MODEL)"},routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccs",'ccs glm "your prompt"']},{id:"droid-target",name:"Factory Droid",scope:"target",status:"new",summary:"First-class target for API Profiles and CLIProxy variants.",pillars:{baseUrl:"From profile or variant settings",auth:"From profile or variant settings",model:"From profile or variant settings"},routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccs-droid glm","ccs km --target droid","ccs codex --target droid"],notes:"Use ccs-droid as the explicit runtime alias. Legacy ccsd still works."},{id:"codex-target",name:"Codex CLI",scope:"target",status:"new",summary:"First-class runtime target for native Codex sessions and Codex-routed CLIProxy flows.",pillars:{baseUrl:"Native ~/.codex config for default mode, transient -c overrides for CCS-backed routes",auth:"Native Codex auth for default mode, env_key injection for CCS-backed routes",model:"Native Codex config or routed Codex model mapping from CLIProxy"},routes:[{label:"Codex CLI",path:"/codex"}],commands:["ccs-codex","ccsx","ccs codex --target codex","ccs codex-api --target codex"],notes:"Codex is still runtime-only for saved defaults; use --target codex or the runtime aliases at launch time."},{id:"codex-cliproxy",name:"Codex via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed provider with configurable variant model and a native Codex shortcut.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:['ccsxp "your prompt"',"ccs codex --target codex","ccs codex","ccs cliproxy create mycodex --provider codex","ccs api create codex-api --cliproxy-provider codex"],notes:"Use ccsxp when you want native Codex with the cliproxy shortcut; use ccs codex --target codex for the explicit managed bridge."},{id:"gemini-cliproxy",name:"Gemini via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed Gemini provider with multi-account management.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:["ccs gemini","ccs cliproxy create mygem --provider gemini"]},{id:"agy-cliproxy",name:"Antigravity via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed Antigravity provider with variant target controls.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:["ccs agy","ccs cliproxy create myagy --provider agy --target droid"]},{id:"custom-api-profiles",name:"Custom API Profiles",scope:"api-profiles",status:"stable",summary:"Any Anthropic-compatible endpoint with per-profile target and model mapping.",pillars:{baseUrl:"User-defined endpoint",auth:"User-defined token/key",model:"User-defined model identifier"},routes:[{label:"API Profiles",path:"/providers"}],commands:["ccs api create myprofile",'ccs myprofile "your prompt"']},{id:"opencode-websearch",name:"OpenCode WebSearch",scope:"websearch",status:"stable",summary:"WebSearch provider surfaced in Settings for third-party profile workflows.",pillars:{baseUrl:"Managed by OpenCode CLI integration",auth:"Provider-specific (managed externally)",model:"Configurable in WebSearch settings"},routes:[{label:"Settings",path:"/settings"}],commands:["ccs config",'ccs codex "your prompt"'],notes:"Enable OpenCode in Settings > WebSearch to activate fallback search."}];function l(t,s,r){return M.t(t,{defaultValue:s,...r})}function te(){return{target:l("supportCatalog.scope.target",g.target),cliproxy:l("supportCatalog.scope.cliproxy",g.cliproxy),"api-profiles":l("supportCatalog.scope.apiProfiles",g["api-profiles"]),websearch:l("supportCatalog.scope.websearch",g.websearch)}}function se(t){return{...t,title:l(`supportCatalog.notice.${t.id}.title`,t.title),summary:l(`supportCatalog.notice.${t.id}.summary`,t.summary),primaryAction:l(`supportCatalog.notice.${t.id}.primaryAction`,t.primaryAction),highlights:t.highlights.map((s,r)=>l(`supportCatalog.notice.${t.id}.highlight.${r}`,s)),actions:t.actions.map(s=>({...s,label:l(`supportCatalog.notice.${t.id}.action.${s.id}.label`,s.label),description:l(`supportCatalog.notice.${t.id}.action.${s.id}.description`,s.description)})),routes:t.routes.map((s,r)=>({...s,label:l(`supportCatalog.notice.${t.id}.route.${r}.label`,s.label)}))}}function re(t){return{...t,name:l(`supportCatalog.entry.${t.id}.name`,t.name),summary:l(`supportCatalog.entry.${t.id}.summary`,t.summary),pillars:{baseUrl:l(`supportCatalog.entry.${t.id}.pillar.baseUrl`,t.pillars.baseUrl),auth:l(`supportCatalog.entry.${t.id}.pillar.auth`,t.pillars.auth),model:l(`supportCatalog.entry.${t.id}.pillar.model`,t.pillars.model)},routes:t.routes.map((s,r)=>({...s,label:l(`supportCatalog.entry.${t.id}.route.${r}.label`,s.label)})),notes:t.notes?l(`supportCatalog.entry.${t.id}.notes`,t.notes):t.notes}}function ae(){return X.map(se)}function oe(){return ee.map(re)}function ie(t){const s=new Map(oe().map(r=>[r.id,r]));return t.entryIds.map(r=>s.get(r)).filter(r=>!!r)}function O(t){const s=new Date(`${t}T00:00:00Z`);return Number.isNaN(s.getTime())?t:new Intl.DateTimeFormat(void 0,{year:"numeric",month:"short",day:"numeric",timeZone:"UTC"}).format(s)}const $="ccs:updates:notice-progress:v1";function de(t){return t==="new"?"new":"seen"}function m(t,s){return s[t.id]??de(t.status)}function A(t){return t!=="done"&&t!=="dismissed"}function le(){if(typeof window>"u")return{};try{const t=window.localStorage.getItem($);if(!t)return{};const s=JSON.parse(t);if(!s||typeof s!="object"||Array.isArray(s))return{};const r={};for(const[i,d]of Object.entries(s))typeof i=="string"&&(d==="new"||d==="seen"||d==="done"||d==="dismissed")&&(r[i]=d);return r}catch{return{}}}function ne(t){typeof window>"u"||window.localStorage.setItem($,JSON.stringify(t))}function D({state:t,className:s}){const{t:r}=x(),i={new:{label:r("updates.progressNeedsAction"),className:"border-amber-300/70 bg-amber-100/70 text-amber-800 dark:border-amber-500/40 dark:bg-amber-500/15 dark:text-amber-300",showDot:!0},seen:{label:r("updates.progressInReview"),className:"border-blue-300/70 bg-blue-100/70 text-blue-800 dark:border-blue-500/40 dark:bg-blue-500/15 dark:text-blue-300"},done:{label:r("updates.progressDone"),className:"border-emerald-300/70 bg-emerald-100/70 text-emerald-800 dark:border-emerald-500/40 dark:bg-emerald-500/15 dark:text-emerald-300"},dismissed:{label:r("updates.progressDismissed"),className:"border-muted-foreground/20 bg-muted text-muted-foreground dark:border-muted-foreground/30"}}[t];return e.jsxs(P,{variant:"outline",className:S("gap-1.5 border text-[10px] font-medium",i.className,s),children:[i.showDot&&e.jsx("span",{className:"h-1.5 w-1.5 rounded-full bg-current"}),i.label]})}function ce({action:t}){const{t:s}=x();return e.jsxs("div",{className:"rounded-md border bg-muted/20 p-3",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"min-w-0 space-y-0.5",children:[e.jsx("p",{className:"text-sm font-medium",children:t.label}),e.jsx("p",{className:"text-xs text-muted-foreground",children:t.description})]}),t.type==="route"&&t.path&&e.jsx(u,{size:"sm",asChild:!0,children:e.jsxs(L,{to:t.path,children:[s("updates.open"),e.jsx(F,{className:"h-3.5 w-3.5"})]})})]}),t.type==="command"&&t.command&&e.jsxs("div",{className:"mt-2 flex items-center gap-2 rounded-md border bg-background px-2 py-1.5",children:[e.jsx(z,{className:"h-3.5 w-3.5 text-muted-foreground"}),e.jsx("code",{className:"min-w-0 flex-1 truncate text-[11px]",children:t.command}),e.jsx(U,{value:t.command})]})]})}function pe({notice:t,progress:s,relatedEntries:r,onUpdateProgress:i}){const{t:d}=x(),f=te();return t?e.jsxs("div",{className:"flex-1 min-w-0 bg-background grid grid-rows-[auto_minmax(0,1fr)] overflow-hidden",children:[e.jsxs("div",{className:"border-b bg-background px-4 py-3",children:[e.jsxs("div",{className:"flex flex-wrap items-start justify-between gap-3",children:[e.jsxs("div",{className:"min-w-0 space-y-1",children:[e.jsx("h2",{className:"text-base font-semibold leading-tight",children:t.title}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t.summary})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[s&&e.jsx(D,{state:s}),e.jsx(Z,{status:t.status})]})]}),e.jsxs("div",{className:"mt-2 flex flex-wrap items-center gap-2 text-xs text-muted-foreground",children:[e.jsx(W,{className:"h-3.5 w-3.5"}),e.jsx("span",{children:d("updates.published",{date:O(t.publishedAt)})})]}),e.jsxs("div",{className:"mt-3 flex flex-wrap gap-2",children:[e.jsxs(u,{size:"sm",onClick:()=>i("done"),children:[e.jsx(H,{className:"h-4 w-4"}),d("updates.markDone")]}),e.jsxs(u,{size:"sm",variant:"outline",onClick:()=>i("dismissed"),children:[e.jsx(Q,{className:"h-4 w-4"}),d("updates.dismiss")]}),e.jsxs(u,{size:"sm",variant:"ghost",onClick:()=>i("new"),children:[e.jsx(G,{className:"h-4 w-4"}),d("updates.reopen")]})]})]}),e.jsx("div",{className:"min-h-0 p-4",children:e.jsxs("div",{className:"grid h-full gap-4 xl:grid-cols-[minmax(0,1.5fr)_minmax(320px,1fr)] overflow-hidden",children:[e.jsxs(C,{className:"h-full overflow-hidden",children:[e.jsxs(v,{className:"pb-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(q,{className:"h-4 w-4 text-primary"}),e.jsx(N,{className:"text-base",children:d("updates.doNext")})]}),e.jsx(w,{children:t.primaryAction})]}),e.jsx(j,{className:"min-h-0",children:e.jsx(b,{className:"h-full pr-2",children:e.jsx("div",{className:"space-y-3",children:t.actions.map(o=>e.jsx(ce,{action:o},`${t.id}-${o.id}`))})})})]}),e.jsxs("div",{className:"grid h-full grid-rows-[minmax(0,1fr)_minmax(0,1fr)] gap-4 overflow-hidden",children:[e.jsxs(C,{className:"overflow-hidden",children:[e.jsxs(v,{className:"pb-3",children:[e.jsx(N,{className:"text-base",children:d("updates.impactedIntegrations")}),e.jsx(w,{children:d("updates.impactedDesc")})]}),e.jsx(j,{className:"min-h-0",children:e.jsx(b,{className:"h-full pr-2",children:e.jsx("div",{className:"space-y-2",children:r.map(o=>e.jsxs("div",{className:"rounded-md border bg-muted/20 p-2.5",children:[e.jsxs("div",{className:"flex items-start justify-between gap-2",children:[e.jsx("p",{className:"min-w-0 truncate text-sm font-medium",children:o.name}),e.jsx(P,{variant:"outline",className:"h-5 px-1.5 text-[10px]",children:f[o.scope]})]}),e.jsxs("div",{className:"mt-2 flex items-center gap-2",children:[o.routes[0]&&e.jsx(u,{size:"sm",variant:"outline",asChild:!0,children:e.jsx(L,{to:o.routes[0].path,children:o.routes[0].label})}),o.commands[0]&&e.jsxs("div",{className:"ml-auto flex min-w-0 items-center gap-1.5",children:[e.jsx("code",{className:"truncate rounded bg-background px-1.5 py-0.5 text-[11px]",children:o.commands[0]}),e.jsx(U,{value:o.commands[0]})]})]})]},o.id))})})})]}),e.jsxs(C,{className:"overflow-hidden",children:[e.jsxs(v,{className:"pb-3",children:[e.jsx(N,{className:"text-base",children:d("updates.whyMatters")}),e.jsx(w,{children:d("updates.whyMattersDesc")})]}),e.jsx(j,{className:"min-h-0",children:e.jsx(b,{className:"h-full pr-2",children:e.jsx("ul",{className:"space-y-2 text-sm text-muted-foreground",children:t.highlights.map(o=>e.jsxs("li",{children:["- ",o]},`${t.id}-${o}`))})})})]})]})]})})]}):e.jsx("div",{className:"flex h-full items-center justify-center rounded-lg border border-dashed bg-muted/20 p-6",children:e.jsx("p",{className:"text-sm text-muted-foreground",children:d("updates.noUpdates")})})}function me({notice:t,progress:s,selected:r,onSelect:i}){return e.jsxs("button",{type:"button",onClick:i,className:S("w-full rounded-lg border px-3 py-3 text-left transition-colors",r?"border-primary/30 bg-primary/10":"border-transparent bg-background/40 hover:border-border hover:bg-muted/70"),children:[e.jsxs("div",{className:"flex items-start justify-between gap-2",children:[e.jsxs("div",{className:"min-w-0 space-y-1",children:[e.jsx("p",{className:"truncate text-sm font-medium",children:t.title}),e.jsx("p",{className:"line-clamp-2 text-xs text-muted-foreground",children:t.primaryAction})]}),e.jsx(K,{className:"mt-0.5 h-4 w-4 shrink-0 text-muted-foreground"})]}),e.jsxs("div",{className:"mt-2 flex items-center justify-between gap-2",children:[e.jsx("span",{className:"text-[11px] text-muted-foreground",children:O(t.publishedAt)}),e.jsx(D,{state:s})]})]})}function ue(t,s){return s?[t.title,t.summary,t.primaryAction,...t.highlights,...t.commands,...t.actions.map(i=>`${i.label} ${i.description} ${i.command||""}`),...t.routes.map(i=>i.label)].join(" ").toLowerCase().includes(s):!0}function je(){const{t}=x(),s=[...ae()].sort((a,n)=>n.publishedAt.localeCompare(a.publishedAt)),[r,i]=c.useState("inbox"),[d,f]=c.useState(""),[o,k]=c.useState(()=>le()),[I,E]=c.useState(null);c.useEffect(()=>{ne(o)},[o]);const h=c.useMemo(()=>{const a=d.trim().toLowerCase();return s.filter(n=>{const y=m(n,o);return ue(n,a)?r==="done"?y==="done":r==="inbox"?A(y):!0:!1})},[s,o,d,r]),p=c.useMemo(()=>{const a=r==="all"?s:h;return a.find(n=>n.id===I)??a[0]??null},[s,I,r,h]),R=a=>{E(a.id),k(n=>m(a,n)!=="new"?n:{...n,[a.id]:"seen"})},T=c.useMemo(()=>s.filter(a=>A(m(a,o))).length,[s,o]),_=c.useMemo(()=>s.filter(a=>m(a,o)==="done").length,[s,o]);return e.jsxs("div",{className:"flex h-full min-h-0 overflow-hidden",children:[e.jsxs("div",{className:"w-80 border-r bg-muted/30 flex flex-col overflow-hidden",children:[e.jsxs("div",{className:"p-4 border-b bg-background space-y-3",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(J,{className:"h-5 w-5 text-primary"}),e.jsx("h1",{className:"font-semibold",children:t("updates.inboxTitle")})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:t("updates.inboxSubtitle")})]}),e.jsxs("div",{className:"grid grid-cols-2 gap-2 text-xs",children:[e.jsxs("div",{className:"rounded-md border bg-background px-2 py-1.5",children:[e.jsx("p",{className:"text-muted-foreground",children:t("updates.needsAction")}),e.jsx("p",{className:"text-base font-semibold",children:T})]}),e.jsxs("div",{className:"rounded-md border bg-background px-2 py-1.5",children:[e.jsx("p",{className:"text-muted-foreground",children:t("updates.doneCount")}),e.jsx("p",{className:"text-base font-semibold",children:_})]})]}),e.jsxs("div",{className:"relative",children:[e.jsx(V,{className:"absolute left-2.5 top-2.5 h-4 w-4 text-muted-foreground"}),e.jsx(B,{value:d,onChange:a=>f(a.target.value),placeholder:t("updates.searchPlaceholder"),className:"h-9 pl-8"})]}),e.jsx("div",{className:"flex flex-wrap gap-1.5",children:[{id:"inbox",label:t("updates.actionRequired")},{id:"done",label:t("updates.done")},{id:"all",label:t("updates.all")}].map(a=>e.jsx(u,{size:"sm",variant:r===a.id?"default":"outline",onClick:()=>i(a.id),children:a.label},a.id))})]}),e.jsx(b,{className:"flex-1",children:e.jsx("div",{className:"space-y-2 p-2",children:h.length===0?e.jsx("div",{className:"rounded-md border border-dashed p-3 text-xs text-muted-foreground",children:t("updates.noNotices")}):h.map(a=>e.jsx(me,{notice:a,progress:m(a,o),selected:p?.id===a.id,onSelect:()=>R(a)},a.id))})})]}),e.jsx(pe,{notice:p,progress:p?m(p,o):null,relatedEntries:p?ie(p):[],onUpdateProgress:a=>{p&&k(n=>({...n,[p.id]:a}))}})]})}export{je as UpdatesPage};
@@ -1 +1 @@
1
- import{u as _,a as m,b as p}from"./tanstack-bhJxV1h8.js";import{a as y,_ as l}from"./index-sIfjKy42.js";import{t as s}from"./notifications-B4_o8bcr.js";function f(n){return Array.from(n).sort((r,e)=>r.localeCompare(e))}function x(n){const r=new Map;for(const t of n){if(t.context_mode!=="shared")continue;const d=t.context_group||"default",i=r.get(d)??{group:d,sharedCount:0,deeperCount:0,accountNames:[]};i.sharedCount+=1,i.accountNames.push(t.name),t.continuity_mode==="deeper"&&(i.deeperCount+=1),r.set(d,i)}const e=Array.from(r.values()).sort((t,d)=>t.group.localeCompare(d.group)),o=n.map(t=>{if(t.context_mode!=="shared")return{...t,sameGroupPeerCount:0,sameGroupDeeperPeerCount:0};const d=t.context_group||"default",i=r.get(d),h=Math.max((i?.sharedCount??1)-1,0),g=Math.max((i?.deeperCount??0)-(t.continuity_mode==="deeper"?1:0),0);return{...t,sameGroupPeerCount:h,sameGroupDeeperPeerCount:g}}),u=o.filter(t=>t.context_mode==="shared").length,a=o.filter(t=>t.context_mode==="shared"&&t.continuity_mode==="deeper").length,c=o.filter(t=>t.context_inferred).length,C=o.filter(t=>t.context_mode==="shared"&&t.continuity_mode!=="deeper"&&t.continuity_inferred).length;return{accounts:o,sharedCount:u,sharedStandardCount:Math.max(u-a,0),deeperSharedCount:a,isolatedCount:o.length-u,legacyContextCount:c,legacyContinuityCount:C,sharedAloneCount:o.filter(t=>t.context_mode==="shared"&&t.sameGroupPeerCount===0).length,sharedPeerAccountCount:o.filter(t=>t.sameGroupPeerCount>0).length,deeperReadyAccountCount:o.filter(t=>t.continuity_mode==="deeper"&&t.sameGroupDeeperPeerCount>0).length,sharedPeerGroups:f(e.filter(t=>t.sharedCount>=2).map(t=>t.group)),deeperReadyGroups:f(e.filter(t=>t.deeperCount>=2).map(t=>t.group)),sharedGroups:f(e.map(t=>t.group)),groupSummaries:e}}function G(){return _({queryKey:["accounts"],queryFn:()=>l.accounts.list(),select:n=>{const r=n.accounts.filter(a=>a.type!=="cliproxy"),e=x(r),o=n.accounts.length-r.length,u=e.accounts.some(a=>a.name===n.default)?n.default:null;return{accounts:e.accounts,default:u,cliproxyCount:o,legacyContextCount:e.legacyContextCount,legacyContinuityCount:e.legacyContinuityCount,sharedCount:e.sharedCount,sharedStandardCount:e.sharedStandardCount,deeperSharedCount:e.deeperSharedCount,isolatedCount:e.isolatedCount,sharedAloneCount:e.sharedAloneCount,sharedPeerAccountCount:e.sharedPeerAccountCount,deeperReadyAccountCount:e.deeperReadyAccountCount,sharedPeerGroups:e.sharedPeerGroups,deeperReadyGroups:e.deeperReadyGroups,sharedGroups:e.sharedGroups,groupSummaries:e.groupSummaries,plainCcsLane:n.plain_ccs_lane??null}}})}function q(){const n=m(),{t:r}=y();return p({mutationFn:e=>l.accounts.setDefault(e),onSuccess:(e,o)=>{n.invalidateQueries({queryKey:["accounts"]}),s.success(r("toasts.defaultAccountSet",{name:o}))},onError:e=>{s.error(e.message)}})}function D(){const n=m(),{t:r}=y();return p({mutationFn:()=>l.accounts.resetDefault(),onSuccess:()=>{n.invalidateQueries({queryKey:["accounts"]}),s.success(r("toasts.defaultAccountReset"))},onError:e=>{s.error(e.message)}})}function R(){const n=m(),{t:r}=y();return p({mutationFn:e=>l.accounts.delete(e),onSuccess:(e,o)=>{n.invalidateQueries({queryKey:["accounts"]}),s.success(r("toasts.accountDeleted",{name:o}))},onError:e=>{s.error(e.message)}})}function Q(){const n=m(),{t:r}=y();return p({mutationFn:({name:e,context_mode:o,context_group:u,continuity_mode:a})=>l.accounts.updateContext(e,{context_mode:o,context_group:u,continuity_mode:a}),onSuccess:(e,o)=>{n.invalidateQueries({queryKey:["accounts"]});const u=(o.context_group||"default").trim().toLowerCase().replace(/\s+/g,"-"),a=o.context_mode==="shared"?o.continuity_mode==="deeper"?`${r("accountsPage.sharedDeeper")} (${u})`:`${r("accountsPage.sharedStandard")} (${u})`:r("accountsPage.isolated");s.success(r("toasts.contextUpdated",{name:o.name,summary:a}))},onError:e=>{s.error(e.message)}})}function F(){const n=m(),{t:r}=y();return p({mutationFn:async e=>{const o=e.filter(c=>c.context_inferred||c.continuity_inferred),a=(await Promise.allSettled(o.map(c=>{const C=c.context_mode==="shared";return l.accounts.updateContext(c.name,{context_mode:C?"shared":"isolated",context_group:C?c.context_group||"default":void 0,continuity_mode:C?c.continuity_mode==="deeper"?"deeper":"standard":void 0})}))).filter(c=>c.status==="rejected").length;return{updatedCount:o.length-a,failedCount:a}},onSuccess:({updatedCount:e,failedCount:o})=>{if(n.invalidateQueries({queryKey:["accounts"]}),o>0&&e>0){s.error(r("toasts.legacyConfirmPartial",{updated:e,failed:o}));return}if(o>0){s.error(r("toasts.legacyConfirmAllFailed",{failed:o}));return}if(e>0){s.success(r("toasts.legacyConfirmSuccess",{count:e}));return}s.info(r("toasts.noLegacyAccounts"))},onError:e=>{n.invalidateQueries({queryKey:["accounts"]}),s.error(e.message)}})}function K(){const n=m(),{t:r}=y();return p({mutationFn:({name:e,shared_resource_mode:o})=>l.accounts.updateSharedResources(e,{shared_resource_mode:o}),onSuccess:(e,o)=>{n.invalidateQueries({queryKey:["accounts"]});const u=o.shared_resource_mode==="shared"?r("accountsPage.resourcesShared"):r("accountsPage.resourcesProfileLocal");s.success(r("toasts.resourcesUpdated",{name:o.name,summary:u}))},onError:e=>{s.error(e.message)}})}export{Q as a,K as b,q as c,R as d,D as e,F as f,G as u};
1
+ import{u as _,a as m,b as p}from"./tanstack-bhJxV1h8.js";import{a as y,Z as l}from"./index-CcGVqYOy.js";import{t as s}from"./notifications-B4_o8bcr.js";function f(n){return Array.from(n).sort((r,e)=>r.localeCompare(e))}function x(n){const r=new Map;for(const t of n){if(t.context_mode!=="shared")continue;const d=t.context_group||"default",i=r.get(d)??{group:d,sharedCount:0,deeperCount:0,accountNames:[]};i.sharedCount+=1,i.accountNames.push(t.name),t.continuity_mode==="deeper"&&(i.deeperCount+=1),r.set(d,i)}const e=Array.from(r.values()).sort((t,d)=>t.group.localeCompare(d.group)),o=n.map(t=>{if(t.context_mode!=="shared")return{...t,sameGroupPeerCount:0,sameGroupDeeperPeerCount:0};const d=t.context_group||"default",i=r.get(d),h=Math.max((i?.sharedCount??1)-1,0),g=Math.max((i?.deeperCount??0)-(t.continuity_mode==="deeper"?1:0),0);return{...t,sameGroupPeerCount:h,sameGroupDeeperPeerCount:g}}),u=o.filter(t=>t.context_mode==="shared").length,a=o.filter(t=>t.context_mode==="shared"&&t.continuity_mode==="deeper").length,c=o.filter(t=>t.context_inferred).length,C=o.filter(t=>t.context_mode==="shared"&&t.continuity_mode!=="deeper"&&t.continuity_inferred).length;return{accounts:o,sharedCount:u,sharedStandardCount:Math.max(u-a,0),deeperSharedCount:a,isolatedCount:o.length-u,legacyContextCount:c,legacyContinuityCount:C,sharedAloneCount:o.filter(t=>t.context_mode==="shared"&&t.sameGroupPeerCount===0).length,sharedPeerAccountCount:o.filter(t=>t.sameGroupPeerCount>0).length,deeperReadyAccountCount:o.filter(t=>t.continuity_mode==="deeper"&&t.sameGroupDeeperPeerCount>0).length,sharedPeerGroups:f(e.filter(t=>t.sharedCount>=2).map(t=>t.group)),deeperReadyGroups:f(e.filter(t=>t.deeperCount>=2).map(t=>t.group)),sharedGroups:f(e.map(t=>t.group)),groupSummaries:e}}function G(){return _({queryKey:["accounts"],queryFn:()=>l.accounts.list(),select:n=>{const r=n.accounts.filter(a=>a.type!=="cliproxy"),e=x(r),o=n.accounts.length-r.length,u=e.accounts.some(a=>a.name===n.default)?n.default:null;return{accounts:e.accounts,default:u,cliproxyCount:o,legacyContextCount:e.legacyContextCount,legacyContinuityCount:e.legacyContinuityCount,sharedCount:e.sharedCount,sharedStandardCount:e.sharedStandardCount,deeperSharedCount:e.deeperSharedCount,isolatedCount:e.isolatedCount,sharedAloneCount:e.sharedAloneCount,sharedPeerAccountCount:e.sharedPeerAccountCount,deeperReadyAccountCount:e.deeperReadyAccountCount,sharedPeerGroups:e.sharedPeerGroups,deeperReadyGroups:e.deeperReadyGroups,sharedGroups:e.sharedGroups,groupSummaries:e.groupSummaries,plainCcsLane:n.plain_ccs_lane??null}}})}function q(){const n=m(),{t:r}=y();return p({mutationFn:e=>l.accounts.setDefault(e),onSuccess:(e,o)=>{n.invalidateQueries({queryKey:["accounts"]}),s.success(r("toasts.defaultAccountSet",{name:o}))},onError:e=>{s.error(e.message)}})}function D(){const n=m(),{t:r}=y();return p({mutationFn:()=>l.accounts.resetDefault(),onSuccess:()=>{n.invalidateQueries({queryKey:["accounts"]}),s.success(r("toasts.defaultAccountReset"))},onError:e=>{s.error(e.message)}})}function R(){const n=m(),{t:r}=y();return p({mutationFn:e=>l.accounts.delete(e),onSuccess:(e,o)=>{n.invalidateQueries({queryKey:["accounts"]}),s.success(r("toasts.accountDeleted",{name:o}))},onError:e=>{s.error(e.message)}})}function Q(){const n=m(),{t:r}=y();return p({mutationFn:({name:e,context_mode:o,context_group:u,continuity_mode:a})=>l.accounts.updateContext(e,{context_mode:o,context_group:u,continuity_mode:a}),onSuccess:(e,o)=>{n.invalidateQueries({queryKey:["accounts"]});const u=(o.context_group||"default").trim().toLowerCase().replace(/\s+/g,"-"),a=o.context_mode==="shared"?o.continuity_mode==="deeper"?`${r("accountsPage.sharedDeeper")} (${u})`:`${r("accountsPage.sharedStandard")} (${u})`:r("accountsPage.isolated");s.success(r("toasts.contextUpdated",{name:o.name,summary:a}))},onError:e=>{s.error(e.message)}})}function F(){const n=m(),{t:r}=y();return p({mutationFn:async e=>{const o=e.filter(c=>c.context_inferred||c.continuity_inferred),a=(await Promise.allSettled(o.map(c=>{const C=c.context_mode==="shared";return l.accounts.updateContext(c.name,{context_mode:C?"shared":"isolated",context_group:C?c.context_group||"default":void 0,continuity_mode:C?c.continuity_mode==="deeper"?"deeper":"standard":void 0})}))).filter(c=>c.status==="rejected").length;return{updatedCount:o.length-a,failedCount:a}},onSuccess:({updatedCount:e,failedCount:o})=>{if(n.invalidateQueries({queryKey:["accounts"]}),o>0&&e>0){s.error(r("toasts.legacyConfirmPartial",{updated:e,failed:o}));return}if(o>0){s.error(r("toasts.legacyConfirmAllFailed",{failed:o}));return}if(e>0){s.success(r("toasts.legacyConfirmSuccess",{count:e}));return}s.info(r("toasts.noLegacyAccounts"))},onError:e=>{n.invalidateQueries({queryKey:["accounts"]}),s.error(e.message)}})}function K(){const n=m(),{t:r}=y();return p({mutationFn:({name:e,shared_resource_mode:o})=>l.accounts.updateSharedResources(e,{shared_resource_mode:o}),onSuccess:(e,o)=>{n.invalidateQueries({queryKey:["accounts"]});const u=o.shared_resource_mode==="shared"?r("accountsPage.resourcesShared"):r("accountsPage.resourcesProfileLocal");s.success(r("toasts.resourcesUpdated",{name:o.name,summary:u}))},onError:e=>{s.error(e.message)}})}export{Q as a,K as b,q as c,R as d,D as e,F as f,G as u};
@@ -24,7 +24,7 @@
24
24
  href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap"
25
25
  rel="stylesheet"
26
26
  />
27
- <script type="module" crossorigin src="/assets/index-sIfjKy42.js"></script>
27
+ <script type="module" crossorigin src="/assets/index-CcGVqYOy.js"></script>
28
28
  <link rel="modulepreload" crossorigin href="/assets/react-vendor-Bjx91N7w.js">
29
29
  <link rel="modulepreload" crossorigin href="/assets/radix-ui-nu4wz29m.js">
30
30
  <link rel="modulepreload" crossorigin href="/assets/tanstack-bhJxV1h8.js">
@@ -33,7 +33,7 @@
33
33
  <link rel="modulepreload" crossorigin href="/assets/utils-CzKF5WmX.js">
34
34
  <link rel="modulepreload" crossorigin href="/assets/form-utils-CuHzLhJZ.js">
35
35
  <link rel="modulepreload" crossorigin href="/assets/charts-eIPy2oG6.js">
36
- <link rel="stylesheet" crossorigin href="/assets/index-G3mgTfgR.css">
36
+ <link rel="stylesheet" crossorigin href="/assets/index-BMoGhs28.css">
37
37
  </head>
38
38
  <body>
39
39
  <div id="root"></div>
@@ -1 +1 @@
1
- {"version":3,"file":"browser-settings.d.ts","sourceRoot":"","sources":["../../../src/utils/browser/browser-settings.ts"],"names":[],"mappings":";;AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAGxF,OAAO,EAAE,KAAK,iBAAiB,EAA4B,MAAM,gBAAgB,CAAC;AAGlF,MAAM,MAAM,qBAAqB,GAAG,2BAA2B,GAAG,yBAAyB,CAAC;AAE5F,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,QAAQ,GAAG,qBAAqB,CAAC;IACzC,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,uBAAuB,EAAE,OAAO,CAAC;IACjC,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,8BAA8B;IAC7C,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,6BAA6B;IAC5C,qBAAqB,EAAE,OAAO,CAAC;IAC/B,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,mCAAmC;IAClD,KAAK,EAAE,cAAc,GAAG,qBAAqB,GAAG,sBAAsB,CAAC;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,gCAAgC,IAAI,MAAM,CAEzD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE5E;AAED,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB,qBAAqB,CAOvB;AAED,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,kCAAkC,GACzC,OAAO,CAKT;AAaD,wBAAgB,qCAAqC,CACnD,OAAO,EAAE,kCAAkC,GAC1C,MAAM,EAAE,CAEV;AAYD,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,kCAAkC,GACzC,6BAA6B,CAoC/B;AAED,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,kCAAkC,EAC1C,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE;IACP,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;CACnB,GACL,mCAAmC,GAAG,SAAS,CAkDjD;AAED,wBAAgB,wBAAwB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC,CAoBA;AAED,wBAAgB,qCAAqC,CACnD,MAAM,EAAE,aAAa,EACrB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,kCAAkC,CA+BpC;AAED,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,kCAAkC,GACzC,OAAO,CAAC,8BAA8B,CAAC,CAoCzC"}
1
+ {"version":3,"file":"browser-settings.d.ts","sourceRoot":"","sources":["../../../src/utils/browser/browser-settings.ts"],"names":[],"mappings":";;AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAGxF,OAAO,EAAE,KAAK,iBAAiB,EAA4B,MAAM,gBAAgB,CAAC;AAGlF,MAAM,MAAM,qBAAqB,GAAG,2BAA2B,GAAG,yBAAyB,CAAC;AAE5F,MAAM,WAAW,kCAAkC;IACjD,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,QAAQ,GAAG,qBAAqB,CAAC;IACzC,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,uBAAuB,EAAE,OAAO,CAAC;IACjC,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,8BAA8B;IAC7C,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,6BAA6B;IAC5C,qBAAqB,EAAE,OAAO,CAAC;IAC/B,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,mCAAmC;IAClD,KAAK,EAAE,cAAc,GAAG,qBAAqB,GAAG,sBAAsB,CAAC;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,gCAAgC,IAAI,MAAM,CAEzD;AAED,wBAAgB,yBAAyB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAE5E;AAED,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,GACnB,qBAAqB,CAOvB;AAED,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,kCAAkC,GACzC,OAAO,CAKT;AAaD,wBAAgB,qCAAqC,CACnD,OAAO,EAAE,kCAAkC,GAC1C,MAAM,EAAE,CAEV;AAYD,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,kCAAkC,GACzC,6BAA6B,CAoC/B;AAED,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,kCAAkC,EAC1C,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE;IACP,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;CACnB,GACL,mCAAmC,GAAG,SAAS,CAkDjD;AAED,wBAAgB,wBAAwB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC,CAoBA;AAED,wBAAgB,qCAAqC,CACnD,MAAM,EAAE,aAAa,EACrB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,kCAAkC,CA4BpC;AAED,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,kCAAkC,GACzC,OAAO,CAAC,8BAA8B,CAAC,CAoCzC"}
@@ -178,11 +178,8 @@ exports.getBrowserAttachOverride = getBrowserAttachOverride;
178
178
  function getEffectiveClaudeBrowserAttachConfig(config, env = process.env) {
179
179
  const override = getBrowserAttachOverride(env);
180
180
  const configUserDataDir = resolveBrowserUserDataDir(config.claude.user_data_dir) ?? getRecommendedBrowserUserDataDir();
181
- const configHasExplicitPort = config.claude.devtools_port !== undefined;
182
181
  const configPort = normalizeDevtoolsPort(config.claude.devtools_port);
183
182
  const configEvalMode = config.claude.eval_mode ?? 'readonly';
184
- const envEvalMode = parseBrowserEvalMode(env.CCS_BROWSER_EVAL_MODE);
185
- const effectiveEvalMode = envEvalMode ?? configEvalMode;
186
183
  if (override.userDataDir) {
187
184
  return {
188
185
  enabled: config.claude.enabled,
@@ -191,7 +188,7 @@ function getEffectiveClaudeBrowserAttachConfig(config, env = process.env) {
191
188
  userDataDir: override.userDataDir,
192
189
  devtoolsPort: override.devtoolsPort ?? configPort,
193
190
  hasExplicitDevtoolsPort: override.devtoolsPort !== undefined,
194
- evalMode: effectiveEvalMode,
191
+ evalMode: configEvalMode,
195
192
  };
196
193
  }
197
194
  return {
@@ -200,8 +197,8 @@ function getEffectiveClaudeBrowserAttachConfig(config, env = process.env) {
200
197
  overrideActive: false,
201
198
  userDataDir: configUserDataDir,
202
199
  devtoolsPort: configPort,
203
- hasExplicitDevtoolsPort: configHasExplicitPort,
204
- evalMode: effectiveEvalMode,
200
+ hasExplicitDevtoolsPort: true,
201
+ evalMode: configEvalMode,
205
202
  };
206
203
  }
207
204
  exports.getEffectiveClaudeBrowserAttachConfig = getEffectiveClaudeBrowserAttachConfig;
@@ -247,13 +244,6 @@ function parseDevtoolsPort(value) {
247
244
  }
248
245
  return normalizeDevtoolsPort(Number.parseInt(value.trim(), 10));
249
246
  }
250
- function parseBrowserEvalMode(value) {
251
- const trimmed = value?.trim();
252
- if (trimmed === 'disabled' || trimmed === 'readonly' || trimmed === 'readwrite') {
253
- return trimmed;
254
- }
255
- return undefined;
256
- }
257
247
  function normalizeDevtoolsPort(value) {
258
248
  if (!Number.isFinite(value)) {
259
249
  return 9222;
@@ -1 +1 @@
1
- {"version":3,"file":"browser-settings.js","sourceRoot":"","sources":["../../../src/utils/browser/browser-settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser-settings.js","sourceRoot":"","sources":["../../../src/utils/browser/browser-settings.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,sDAAiE;AACjE,wCAAwC;AACxC,iDAAkF;AAClF,yCAAgD;AAsChD,SAAgB,gCAAgC;IAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAA,0BAAS,GAAE,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;AAC/D,CAAC;AAFD,4EAEC;AAED,SAAgB,yBAAyB,CAAC,KAAc;IACtD,OAAO,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAA,oBAAU,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAFD,8DAEC;AAED,SAAgB,0BAA0B,CACxC,WAAmB,EACnB,YAAoB;IAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC/C,OAAO;QACL,MAAM,EAAE,2DAA2D,YAAY,oBAAoB,UAAU,EAAE;QAC/G,KAAK,EAAE,yCAAyC,YAAY,oBAAoB,UAAU,EAAE;QAC5F,KAAK,EAAE,sCAAsC,YAAY,oBAAoB,UAAU,EAAE;KAC1F,CAAC;AACJ,CAAC;AAVD,gEAUC;AAED,SAAgB,kCAAkC,CAChD,MAA0C;IAE1C,OAAO,CACL,MAAM,CAAC,MAAM,KAAK,QAAQ;QAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE,CAAC,CACtF,CAAC;AACJ,CAAC;AAPD,gFAOC;AAED,SAAS,iCAAiC,CAAC,WAAmB,EAAE,YAAoB;IAClF,OAAO,0BAA0B,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,IAAA,6BAAkB,GAAE,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,8BAA8B;IACrC,OAAO;QACL,6EAA6E;QAC7E,sCAAsC;KACvC,CAAC;AACJ,CAAC;AAED,SAAgB,qCAAqC,CACnD,OAA2C;IAE3C,OAAO,8BAA8B,EAAE,CAAC;AAC1C,CAAC;AAJD,sFAIC;AAED,SAAS,gCAAgC,CAAC,OAA2C;IACnF,OAAO;QACL,yCAAyC;QACzC,4BAA4B,IAAA,kCAAiB,EAAC,SAAS,EAAE,kBAAkB,CAAC,EAAE;QAC9E,4DAA4D;QAC5D,EAAE;QACF,GAAG,8BAA8B,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;KAC/D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAgB,+BAA+B,CAC7C,MAA0C;IAE1C,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,OAAO;YACL,qBAAqB,EAAE,KAAK;YAC5B,iBAAiB,EAAE,KAAK;SACzB,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAChC,OAAO;YACL,qBAAqB,EAAE,IAAI;YAC3B,iBAAiB,EAAE,KAAK;SACzB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI,CAAC;QACnD,IAAI,IAAI,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO;gBACL,qBAAqB,EAAE,IAAI;gBAC3B,iBAAiB,EAAE,KAAK;aACzB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACnE,OAAO;YACL,qBAAqB,EAAE,IAAI;YAC3B,iBAAiB,EAAE,IAAI;SACxB,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,qBAAqB,EAAE,IAAI;YAC3B,iBAAiB,EAAE,KAAK;SACzB,CAAC;IACJ,CAAC;AACH,CAAC;AAtCD,0EAsCC;AAED,SAAgB,oCAAoC,CAClD,MAA0C,EAC1C,YAAoB,EACpB,UAGI,EAAE;IAEN,IAAI,CAAC,kCAAkC,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,aAAa,GACjB,OAAO,CAAC,aAAa;QACrB,iCAAiC,CAC/B,IAAA,kCAAiB,EAAC,SAAS,EAAE,kBAAkB,CAAC,EAChD,MAAM,CAAC,YAAY,CACpB,CAAC;IACJ,MAAM,QAAQ,GAAG;QACf,GAAG,8BAA8B,EAAE;QACnC,kBAAkB,IAAA,6BAAkB,GAAE,MAAM,aAAa,EAAE;KAC5D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,IAAI,YAAY,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB;YACvC,CAAC,CAAC,+FAA+F;YACjG,CAAC,CAAC,iFAAiF,CAAC;QACtF,OAAO;YACL,KAAK,EAAE,qBAAqB;YAC5B,KAAK,EAAE,yCAAyC;YAChD,MAAM,EAAE,GAAG,OAAO,gBAAgB,YAAY,EAAE;YAChD,QAAQ;YACR,OAAO,EAAE,gCAAgC,CAAC,MAAM,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EAAE,CAAC;QACtD,OAAO;YACL,KAAK,EAAE,sBAAsB;YAC7B,KAAK,EAAE,mEAAmE;YAC1E,MAAM,EAAE,6GAA6G,YAAY,EAAE;YACnI,QAAQ;YACR,OAAO,EAAE,gCAAgC,CAAC,MAAM,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,CAAC,QAAQ,CAAC,qCAAqC,CAAC,EAAE,CAAC;QACjE,OAAO;YACL,KAAK,EAAE,cAAc;YACrB,KAAK,EAAE,iEAAiE;YACxE,MAAM,EAAE,+EAA+E,YAAY,EAAE;YACrG,QAAQ;YACR,OAAO,EAAE,gCAAgC,CAAC,MAAM,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAzDD,oFAyDC;AAED,SAAgB,wBAAwB,CAAC,MAAyB,OAAO,CAAC,GAAG;IAK3E,MAAM,mBAAmB,GAAG,yBAAyB,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACrF,IAAI,mBAAmB,EAAE,CAAC;QACxB,OAAO;YACL,WAAW,EAAE,mBAAmB;YAChC,YAAY,EAAE,iBAAiB,CAAC,GAAG,CAAC,yBAAyB,CAAC;YAC9D,MAAM,EAAE,2BAA2B;SACpC,CAAC;IACJ,CAAC;IAED,MAAM,gBAAgB,GAAG,yBAAyB,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAChF,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO;YACL,WAAW,EAAE,gBAAgB;YAC7B,YAAY,EAAE,iBAAiB,CAAC,GAAG,CAAC,yBAAyB,CAAC;YAC9D,MAAM,EAAE,yBAAyB;SAClC,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAxBD,4DAwBC;AAED,SAAgB,qCAAqC,CACnD,MAAqB,EACrB,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,iBAAiB,GACrB,yBAAyB,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,gCAAgC,EAAE,CAAC;IAC/F,MAAM,UAAU,GAAG,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,UAAU,CAAC;IAE7D,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;QACzB,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;YAC9B,MAAM,EAAE,QAAQ,CAAC,MAA+B;YAChD,cAAc,EAAE,IAAI;YACpB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,UAAU;YACjD,uBAAuB,EAAE,QAAQ,CAAC,YAAY,KAAK,SAAS;YAC5D,QAAQ,EAAE,cAAc;SACzB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;QAC9B,MAAM,EAAE,QAAQ;QAChB,cAAc,EAAE,KAAK;QACrB,WAAW,EAAE,iBAAiB;QAC9B,YAAY,EAAE,UAAU;QACxB,uBAAuB,EAAE,IAAI;QAC7B,QAAQ,EAAE,cAAc;KACzB,CAAC;AACJ,CAAC;AA/BD,sFA+BC;AAEM,KAAK,UAAU,mCAAmC,CACvD,MAA0C;IAE1C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,SAAS,GAAG,+BAA+B,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;QAChC,OAAO;YACL,OAAO,EAAE,gCAAgC,CAAC,MAAM,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,IAAA,uCAAwB,EAAC;YAChD,UAAU,EAAE,MAAM,CAAC,WAAW;YAC9B,YAAY,EAAE,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS;SACvF,CAAC,CAAC;QACH,OAAO;YACL,UAAU,EAAE;gBACV,GAAG,UAAU;gBACb,qBAAqB,EAAE,MAAM,CAAC,QAAQ;aACvC;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,qBAAqB,GAAG,oCAAoC,CAAC,MAAM,EAAE,OAAO,EAAE;YAClF,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;SAC/C,CAAC,CAAC;QACH,IAAI,qBAAqB,EAAE,CAAC;YAC1B,OAAO;gBACL,OAAO,EAAE,qBAAqB,CAAC,OAAO;aACvC,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAtCD,kFAsCC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAClD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,qBAAqB,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAyB;IACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC;IACzC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"glmt-deprecation.d.ts","sourceRoot":"","sources":["../../src/utils/glmt-deprecation.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE3F;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAO/E;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,uBAAuB,CAwB/F;AAED,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,EAAE,CAgB1E;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}
1
+ {"version":3,"file":"glmt-deprecation.d.ts","sourceRoot":"","sources":["../../src/utils/glmt-deprecation.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE3F;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAW/E;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,uBAAuB,CAwB/F;AAED,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,EAAE,CAgB1E;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}
@@ -19,7 +19,9 @@ function isLegacyGlmtBaseUrl(baseUrl) {
19
19
  if (!normalized) {
20
20
  return false;
21
21
  }
22
- return normalized === LEGACY_GLMT_BASE_URL || normalized.includes('/api/coding/paas/v4');
22
+ return (normalized === LEGACY_GLMT_BASE_URL ||
23
+ normalized.includes('/api/coding/paas/v4') ||
24
+ normalized.endsWith('/chat/completions'));
23
25
  }
24
26
  exports.isLegacyGlmtBaseUrl = isLegacyGlmtBaseUrl;
25
27
  function normalizeDeprecatedGlmtEnv(env) {
@@ -1 +1 @@
1
- {"version":3,"file":"glmt-deprecation.js","sourceRoot":"","sources":["../../src/utils/glmt-deprecation.ts"],"names":[],"mappings":";;;AAAA,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC,MAAM,oBAAoB,GAAG,sDAAsD,CAAC;AACpF,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AAE7D,MAAM,wBAAwB,GAAG;IAC/B,gBAAgB;IAChB,qBAAqB;IACrB,kBAAkB;IAClB,qBAAqB;CACb,CAAC;AAQX,SAAgB,2BAA2B,CAAC,WAAsC;IAChF,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,mBAAmB,CAAC;AAC1E,CAAC;AAFD,kEAEC;AAED,SAAgB,mBAAmB,CAAC,OAAkC;IACpE,MAAM,UAAU,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5E,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,UAAU,KAAK,oBAAoB,IAAI,UAAU,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC;AAC3F,CAAC;AAPD,kDAOC;AAED,SAAgB,0BAA0B,CAAC,GAA2B;IACpE,MAAM,aAAa,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IACjC,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,IACE,CAAC,aAAa,CAAC,oBAAoB,CAAC;QACpC,mBAAmB,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,EACxD,CAAC;QACD,aAAa,CAAC,oBAAoB,CAAC,GAAG,mBAAmB,CAAC;QAC1D,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,wBAAwB,EAAE,CAAC;QAC3C,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;YACzB,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;YAC1B,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO;QACL,GAAG,EAAE,aAAa;QAClB,QAAQ,EAAE,8BAA8B,CAAC,QAAQ,CAAC;QAClD,QAAQ;KACT,CAAC;AACJ,CAAC;AAxBD,gEAwBC;AAED,SAAgB,8BAA8B,CAAC,QAAiB;IAC9D,MAAM,QAAQ,GAAG;QACf,2DAA2D;QAC3D,oCAAoC;QACpC,mDAAmD;KACpD,CAAC;IAEF,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,CAAC,MAAM,CACb,CAAC,EACD,CAAC,EACD,oFAAoF,CACrF,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAhBD,wEAgBC;AAED,SAAgB,mBAAmB;IACjC,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAFD,kDAEC"}
1
+ {"version":3,"file":"glmt-deprecation.js","sourceRoot":"","sources":["../../src/utils/glmt-deprecation.ts"],"names":[],"mappings":";;;AAAA,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC,MAAM,oBAAoB,GAAG,sDAAsD,CAAC;AACpF,MAAM,mBAAmB,GAAG,gCAAgC,CAAC;AAE7D,MAAM,wBAAwB,GAAG;IAC/B,gBAAgB;IAChB,qBAAqB;IACrB,kBAAkB;IAClB,qBAAqB;CACb,CAAC;AAQX,SAAgB,2BAA2B,CAAC,WAAsC;IAChF,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,mBAAmB,CAAC;AAC1E,CAAC;AAFD,kEAEC;AAED,SAAgB,mBAAmB,CAAC,OAAkC;IACpE,MAAM,UAAU,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC5E,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,CACL,UAAU,KAAK,oBAAoB;QACnC,UAAU,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAC1C,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CACzC,CAAC;AACJ,CAAC;AAXD,kDAWC;AAED,SAAgB,0BAA0B,CAAC,GAA2B;IACpE,MAAM,aAAa,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IACjC,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,IACE,CAAC,aAAa,CAAC,oBAAoB,CAAC;QACpC,mBAAmB,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC,EACxD,CAAC;QACD,aAAa,CAAC,oBAAoB,CAAC,GAAG,mBAAmB,CAAC;QAC1D,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,wBAAwB,EAAE,CAAC;QAC3C,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;YACzB,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;YAC1B,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO;QACL,GAAG,EAAE,aAAa;QAClB,QAAQ,EAAE,8BAA8B,CAAC,QAAQ,CAAC;QAClD,QAAQ;KACT,CAAC;AACJ,CAAC;AAxBD,gEAwBC;AAED,SAAgB,8BAA8B,CAAC,QAAiB;IAC9D,MAAM,QAAQ,GAAG;QACf,2DAA2D;QAC3D,oCAAoC;QACpC,mDAAmD;KACpD,CAAC;IAEF,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,CAAC,MAAM,CACb,CAAC,EACD,CAAC,EACD,oFAAoF,CACrF,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAhBD,wEAgBC;AAED,SAAgB,mBAAmB;IACjC,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAFD,kDAEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/web-server/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;;AAGH,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAcrC,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,GAAG,EAAE,eAAe,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAQD;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAiLjF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/web-server/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;;AAGH,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,OAAO,EAAE,eAAe,EAAE,MAAM,IAAI,CAAC;AAgBrC,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;IACpB,GAAG,EAAE,eAAe,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAQD;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC,CAyLjF"}
@@ -41,6 +41,8 @@ const ws_1 = require("ws");
41
41
  const websocket_1 = require("./websocket");
42
42
  const auth_middleware_1 = require("./middleware/auth-middleware");
43
43
  const request_logging_middleware_1 = require("./middleware/request-logging-middleware");
44
+ const managed_model_prefixes_1 = require("../cliproxy/ai-providers/managed-model-prefixes");
45
+ const proxy_target_resolver_1 = require("../cliproxy/proxy/proxy-target-resolver");
44
46
  const sync_1 = require("../cliproxy/sync");
45
47
  const aggregator_1 = require("./usage/aggregator");
46
48
  const logging_1 = require("../services/logging");
@@ -144,6 +146,13 @@ async function startServer(options) {
144
146
  const { cleanup: wsCleanup } = (0, websocket_1.setupWebSocket)(wss);
145
147
  // Start auto-sync watcher (if enabled in config)
146
148
  (0, sync_1.startAutoSyncWatcher)();
149
+ if (!(0, proxy_target_resolver_1.getProxyTarget)().isRemote) {
150
+ void (0, managed_model_prefixes_1.ensureManagedModelPrefixes)().catch((error) => {
151
+ logger.warn('cliproxy.prefix_sync_failed', 'Managed model prefix repair failed', {
152
+ error: error instanceof Error ? error.message : String(error),
153
+ });
154
+ });
155
+ }
147
156
  // Combined cleanup function
148
157
  const cleanup = () => {
149
158
  wsCleanup();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/web-server/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/web-server/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth-middleware.d.ts","sourceRoot":"","sources":["../../../src/web-server/middleware/auth-middleware.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAe/D,OAAO,QAAQ,iBAAiB,CAAC;IAC/B,UAAU,WAAW;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;KAClB;CACF;AAkDD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,sDAO3B,CAAC;AAEH;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,CACzC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,KACf,IAAI,CAeR;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAwBpF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAU1E;AAiCD,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CA6B/E;AAED,wBAAgB,kCAAkC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAUhF;AAED,wBAAgB,oCAAoC,CAAC,GAAG,CAAC,EAAE,eAAe,GAAG,GAAG,GAAG,GAAG,CAQrF;AAED,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,KAAK,SAA6E,GACjF,OAAO,CAqCT"}
1
+ {"version":3,"file":"auth-middleware.d.ts","sourceRoot":"","sources":["../../../src/web-server/middleware/auth-middleware.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAe/D,OAAO,QAAQ,iBAAiB,CAAC;IAC/B,UAAU,WAAW;QACnB,aAAa,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;KAClB;CACF;AAkDD;;;GAGG;AACH,eAAO,MAAM,gBAAgB,sDAO3B,CAAC;AAEH;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,CACzC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,KACf,IAAI,CAeR;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAwBpF;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAU1E;AAiCD,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CA6B/E;AAED,wBAAgB,kCAAkC,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAUhF;AAED,wBAAgB,oCAAoC,CAAC,GAAG,CAAC,EAAE,eAAe,GAAG,GAAG,GAAG,GAAG,CAQrF;AAED,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,KAAK,SAA6E,GACjF,OAAO,CAWT"}
@@ -225,33 +225,11 @@ function requireLocalAccessWhenAuthDisabled(req, res, error = 'This endpoint req
225
225
  if ((0, config_loader_facade_1.isDashboardAuthEnabled)()) {
226
226
  return true;
227
227
  }
228
- if (!isLoopbackRemoteAddress(req.socket.remoteAddress)) {
229
- res.status(403).json({ error });
230
- return false;
231
- }
232
- const host = parseHostHeader(getSingleHeader(req.headers.host));
233
- if (!host || !isLoopbackHostname(host.hostname)) {
234
- res.status(403).json({ error });
235
- return false;
236
- }
237
- const originHeader = getSingleHeader(req.headers.origin);
238
- if (originHeader) {
239
- let origin;
240
- try {
241
- origin = new URL(originHeader);
242
- }
243
- catch {
244
- res.status(403).json({ error });
245
- return false;
246
- }
247
- const isSameHost = origin.host.toLowerCase() === host.host.toLowerCase();
248
- const isLoopbackAlias = isHttpOrigin(origin) && isLoopbackHostname(origin.hostname) && origin.port === host.port;
249
- if (!isSameHost && !isLoopbackAlias) {
250
- res.status(403).json({ error });
251
- return false;
252
- }
228
+ if (isLoopbackRemoteAddress(req.socket.remoteAddress)) {
229
+ return true;
253
230
  }
254
- return true;
231
+ res.status(403).json({ error });
232
+ return false;
255
233
  }
256
234
  exports.requireLocalAccessWhenAuthDisabled = requireLocalAccessWhenAuthDisabled;
257
235
  //# sourceMappingURL=auth-middleware.js.map