@kaitranntt/ccs 8.10.0-dev.1 → 8.10.0-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/dist/cliproxy/ai-providers/codex-plan-compatibility.js +2 -2
  2. package/dist/cliproxy/ai-providers/codex-plan-compatibility.js.map +1 -1
  3. package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts +1 -1
  4. package/dist/cliproxy/ai-providers/codex-reasoning-proxy.d.ts.map +1 -1
  5. package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js +4 -2
  6. package/dist/cliproxy/ai-providers/codex-reasoning-proxy.js.map +1 -1
  7. package/dist/cliproxy/ai-providers/model-id-normalizer.d.ts +1 -1
  8. package/dist/cliproxy/ai-providers/model-id-normalizer.d.ts.map +1 -1
  9. package/dist/cliproxy/ai-providers/model-id-normalizer.js +5 -1
  10. package/dist/cliproxy/ai-providers/model-id-normalizer.js.map +1 -1
  11. package/dist/cliproxy/config/thinking-config.d.ts.map +1 -1
  12. package/dist/cliproxy/config/thinking-config.js +5 -5
  13. package/dist/cliproxy/config/thinking-config.js.map +1 -1
  14. package/dist/cliproxy/executor/env-resolver.js +1 -1
  15. package/dist/cliproxy/executor/env-resolver.js.map +1 -1
  16. package/dist/cliproxy/model-catalog.js +3 -3
  17. package/dist/cliproxy/model-catalog.js.map +1 -1
  18. package/dist/commands/cliproxy/variant-subcommand.d.ts.map +1 -1
  19. package/dist/commands/cliproxy/variant-subcommand.js +5 -1
  20. package/dist/commands/cliproxy/variant-subcommand.js.map +1 -1
  21. package/dist/ui/assets/{Trans-DpzuO-3l.js → Trans-BFurXtDk.js} +1 -1
  22. package/dist/ui/assets/{accounts-B8La6EUn.js → accounts-B_ik6YOD.js} +1 -1
  23. package/dist/ui/assets/{alert-dialog-Bf9XTqpg.js → alert-dialog-C6fhMbXC.js} +1 -1
  24. package/dist/ui/assets/{api-BKN4bIkK.js → api-CxCFoBC0.js} +1 -1
  25. package/dist/ui/assets/{auth-section-C9nhoYzH.js → auth-section-CtmO77JA.js} +1 -1
  26. package/dist/ui/assets/{backups-section-xj1966O2.js → backups-section-BYKnAWUa.js} +1 -1
  27. package/dist/ui/assets/{channels-BV6KMHQ-.js → channels-3uR41jWp.js} +1 -1
  28. package/dist/ui/assets/{checkbox-D3J3bEmY.js → checkbox-fCmjUiDn.js} +1 -1
  29. package/dist/ui/assets/{claude-extension-D8MBbLlg.js → claude-extension-BplTVbCF.js} +1 -1
  30. package/dist/ui/assets/cliproxy-BdW2ctsn.js +4 -0
  31. package/dist/ui/assets/{cliproxy-ai-providers-BHXVZIDI.js → cliproxy-ai-providers-D4OTiwA3.js} +1 -1
  32. package/dist/ui/assets/{cliproxy-control-panel-Dnh8fwYy.js → cliproxy-control-panel-DCyhsdm1.js} +1 -1
  33. package/dist/ui/assets/{codex-BSt3ZMe-.js → codex-BGF20GsK.js} +1 -1
  34. package/dist/ui/assets/{confirm-dialog-BTwVtHIm.js → confirm-dialog-BtMwDW6c.js} +1 -1
  35. package/dist/ui/assets/{copilot-CFxIjoER.js → copilot-r1b0KLFf.js} +1 -1
  36. package/dist/ui/assets/{cursor-CJEGvYc8.js → cursor-BhVKTiz1.js} +1 -1
  37. package/dist/ui/assets/{droid-BAZEtHVz.js → droid-lol9hAdK.js} +1 -1
  38. package/dist/ui/assets/{globalenv-section-DvHEmWGW.js → globalenv-section-B0gg-kuR.js} +1 -1
  39. package/dist/ui/assets/{health-CucHeqaT.js → health-Bu6RFYCP.js} +1 -1
  40. package/dist/ui/assets/{index-Bba-lL0F.js → index-BbPI5sU_.js} +1 -1
  41. package/dist/ui/assets/{index-COHf4O5A.js → index-BmjgsjcO.js} +1 -1
  42. package/dist/ui/assets/{index-DQ5lgrhi.js → index-Djse8iLV.js} +1 -1
  43. package/dist/ui/assets/{index-D7hMaEi7.js → index-Pn_n_HFQ.js} +1 -1
  44. package/dist/ui/assets/{index-DwB2dlO7.js → index-awbhDVzL.js} +1 -1
  45. package/dist/ui/assets/{index-CjEHrRK5.js → index-pHOoeHgY.js} +2 -2
  46. package/dist/ui/assets/{index-BAmMxAjc.js → index-ptYEAEzZ.js} +1 -1
  47. package/dist/ui/assets/{logs-CmiNT73G.js → logs-B5Sbi4IG.js} +1 -1
  48. package/dist/ui/assets/{masked-input-DRtifqT7.js → masked-input-BnrL_TdT.js} +1 -1
  49. package/dist/ui/assets/{proxy-status-widget-FQJgTcgi.js → proxy-status-widget-ColaQQXh.js} +1 -1
  50. package/dist/ui/assets/{raw-json-settings-editor-panel-kpw_rzWt.js → raw-json-settings-editor-panel-PStRjNEl.js} +1 -1
  51. package/dist/ui/assets/{searchable-select-BhSnRKdw.js → searchable-select-BDpwwNsP.js} +1 -1
  52. package/dist/ui/assets/{separator-DrUbmmEV.js → separator-CJCyWDRS.js} +1 -1
  53. package/dist/ui/assets/{shared-JBfU4vEx.js → shared-6BrToCad.js} +1 -1
  54. package/dist/ui/assets/{table-D3qUcyZ_.js → table-CnZev3Iu.js} +1 -1
  55. package/dist/ui/assets/{updates-vN6lQzZr.js → updates-BiS0o8aM.js} +1 -1
  56. package/dist/ui/assets/{use-accounts-BQ8SCEa6.js → use-accounts-89FOqhFc.js} +1 -1
  57. package/dist/ui/index.html +1 -1
  58. package/dist/web-server/model-pricing.d.ts.map +1 -1
  59. package/dist/web-server/model-pricing.js +29 -1
  60. package/dist/web-server/model-pricing.js.map +1 -1
  61. package/package.json +1 -1
  62. package/dist/ui/assets/cliproxy-D8g9HOG9.js +0 -4
@@ -1 +1 @@
1
- {"version":3,"file":"model-pricing.js","sourceRoot":"","sources":["../../src/web-server/model-pricing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-pricing.js","sourceRoot":"","sources":["../../src/web-server/model-pricing.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kaitranntt/ccs",
3
- "version": "8.10.0-dev.1",
3
+ "version": "8.10.0-dev.2",
4
4
  "description": "Claude Codex Switch - Instant profile switching between Claude, GLM, Kimi, and more",
5
5
  "keywords": [
6
6
  "cli",
@@ -1,4 +0,0 @@
1
- import{j as e}from"./radix-ui-nu4wz29m.js";import{r as u}from"./react-vendor-Bjx91N7w.js";import{a as Tt,u as os,b as Ls}from"./tanstack-bhJxV1h8.js";import{a9 as Os,a as Q,e as G,C as ds,b as ls,aa as cs,ab as us,c as W,P as Ne,B as H,ac as he,L as ee,I as ce,j as _e,k as Fe,l as qe,m as Ue,n as be,ad as ms,ae as ps,af as _s,ag as Fs,ah as qs,u as xs,ai as Dt,aj as Et,ak as It,al as Rt,Y as fe,am as hs,an as Qt,ao as Us,ap as Gs,aq as Ge,ar as fs,_ as st,as as Ks,at as Wt,au as Jt,av as Hs,aw as zs,ax as Bs,ay as Vs,az as $s,aA as Qs,aB as Ws,aC as Js,aD as Xt,aE as Lt,aF as Xs,z as gs,aG as Ys,x as Ot,aH as Zs,aI as _t,aJ as Yt,aK as ea,w as ta,aL as sa,aM as aa,T as kt,o as yt,p as wt,q as Ct,aN as na,aO as ia,aP as ra,aQ as ft,aR as oa,aS as da,aT as la,aU as ca,aV as ua,aW as ma,U as pa,V as xa,W as Zt,X as es,aX as ha,aY as fa,aZ as ga,a_ as va,a$ as ba,b0 as ja,b1 as Na,b2 as ka,b3 as ya,b4 as wa,b5 as Ca,b6 as Xe,b7 as Aa,S as Sa}from"./index-CjEHrRK5.js";import{C as At}from"./default-ports-1QQSffYX.js";import{t as V}from"./notifications-B4_o8bcr.js";import{C as vs,L as ue,q as Me,a0 as Ma,n as Pe,p as bs,aH as Ft,R as lt,r as Ke,ab as qt,T as rt,a8 as ts,aI as js,aG as Pa,D as Ut,Z as He,$ as Ns,i as Ta,v as ks,aJ as Da,av as Ea,X as Gt,aa as ct,N as ys,I as ws,aK as Ia,au as Cs,aL as Ra,ay as La,aM as ot}from"./icons-DSLG1YsC.js";import{R as at,A as ss,D as gt,i as Oa,a as _a}from"./antigravity-responsibility-constants-Bvh4Ybz0.js";import{C as nt}from"./checkbox-D3J3bEmY.js";import{C as Fa}from"./confirm-dialog-BTwVtHIm.js";import{S as Kt}from"./separator-DrUbmmEV.js";import{S as qa}from"./searchable-select-BhSnRKdw.js";import{P as Ua}from"./proxy-status-widget-FQJgTcgi.js";import"./utils-CzKF5WmX.js";import"./form-utils-CuHzLhJZ.js";import"./charts-eIPy2oG6.js";import"./alert-dialog-Bf9XTqpg.js";import"./Trans-DpzuO-3l.js";const ne="gemini-3.1-pro-high",Ee="gemini-3.1-pro-low",Ga=Object.freeze({"gemini-3-pro-high":ne,"gemini-3.1-pro-high":ne,"gemini-3-pro-low":Ee,"gemini-3.1-pro-low":Ee,"gemini-3-pro-preview":ne,"gemini-3-pro-preview-customtools":ne,"gemini-3.1-pro-preview":ne,"gemini-3.1-pro-preview-customtools":ne,"gemini-3-1-pro-preview":ne,"gemini-3-1-pro-preview-customtools":ne}),As=Object.freeze({"gemini-3-pro-preview":"gemini-3.1-pro-preview","gemini-3.1-pro-preview":"gemini-3-pro-preview","gemini-3-flash-preview":"gemini-3.1-flash-preview","gemini-3.1-flash-preview":"gemini-3-flash-preview"}),Ka=/^gemini-(\d+(?:[.-]\d+)*)-(pro|flash)-preview(-customtools)?$/i,Ha=["agy/","gcli/"];function $(t){return Os(t).toLowerCase()}function za(t){const a=t.trim(),s=a.toLowerCase();for(const n of Ha)if(s.startsWith(n))return a.slice(n.length);return a}function Ba(t){return t.replace(/-customtools$/i,"")}function Va(t){return Ga[$(t)]}function dt(t){const a=$(t),s=a.match(Ka);if(!s)return null;const[,n,i,o]=s;return{normalizedId:a,version:n.split(/[.-]/).map(d=>Number(d)),family:i,customtools:!!o,dottedVersion:n.includes(".")}}function Ss(t,a){const s=Math.max(t.length,a.length);for(let n=0;n<s;n+=1){const i=t[n]??0,o=a[n]??0;if(i!==o)return i>o?1:-1}return 0}function $a(t,a,s){if(t.customtools!==a.customtools)return t.customtools?1:-1;const n=Ss(t.version,a.version);if(n!==0)return n>0?-1:1;const i=+(t.dottedVersion===s.dottedVersion),o=+(a.dottedVersion===s.dottedVersion);return i!==o?o-i:t.normalizedId.localeCompare(a.normalizedId)}function as(t,a){const s=$(a);return t.find(n=>$(n.id)===s)?.id}function Qa(t,a){const s=dt(t);return!s||a.length===0?void 0:a.map(i=>{const o=dt(i.id);return!o||o.family!==s.family?null:{id:i.id,info:o}}).filter(i=>!!i).sort((i,o)=>$a(i.info,o.info,s))[0]?.id}const ke={agy:{provider:"agy",displayName:"Antigravity",defaultModel:"claude-opus-4-6-thinking",models:[{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 Thinking",description:"Latest flagship, extended thinking",extendedContext:!1,presetMapping:{default:"claude-opus-4-6-thinking",opus:"claude-opus-4-6-thinking",sonnet:"claude-sonnet-4-6",haiku:"claude-sonnet-4-6"}},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",description:"Latest Sonnet with thinking budget support",presetMapping:{default:"claude-sonnet-4-6",opus:"claude-opus-4-6-thinking",sonnet:"claude-sonnet-4-6",haiku:"claude-sonnet-4-6"}},{id:ne,name:"Gemini Pro High",description:"Current Antigravity Gemini Pro route with higher reasoning budget",extendedContext:!0,presetMapping:{default:ne,opus:ne,sonnet:ne,haiku:"gemini-3-1-flash-preview"}},{id:Ee,name:"Gemini Pro Low",description:"Current Antigravity Gemini Pro route with the lighter quota tier",extendedContext:!0,presetMapping:{default:Ee,opus:Ee,sonnet:Ee,haiku:"gemini-3-1-flash-preview"}},{id:"gemini-3-1-flash-preview",name:"Gemini Flash",description:"Resolves to the best advertised Gemini Flash preview via Antigravity",extendedContext:!0,presetMapping:{default:"gemini-3-1-flash-preview",opus:ne,sonnet:ne,haiku:"gemini-3-1-flash-preview"}}]},gemini:{provider:"gemini",displayName:"Gemini",defaultModel:"gemini-2.5-pro",models:[{id:"gemini-3.1-pro-preview",name:"Gemini Pro",tier:"paid",description:"Uses the best advertised Gemini Pro preview when Google exposes one",extendedContext:!0,presetMapping:{default:"gemini-3.1-pro-preview",opus:"gemini-3.1-pro-preview",sonnet:"gemini-3.1-pro-preview",haiku:"gemini-3-flash-preview"}},{id:"gemini-3-flash-preview",name:"Gemini Flash",tier:"paid",description:"Uses the best advertised Gemini Flash preview when Google exposes one",extendedContext:!0,presetMapping:{default:"gemini-3-flash-preview",opus:"gemini-3.1-pro-preview",sonnet:"gemini-3.1-pro-preview",haiku:"gemini-3-flash-preview"}},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",description:"Stable, works with free Google account",extendedContext:!0,presetMapping:{default:"gemini-2.5-pro",opus:"gemini-2.5-pro",sonnet:"gemini-2.5-pro",haiku:"gemini-2.5-flash"}}]},codex:{provider:"codex",displayName:"Codex",defaultModel:"gpt-5.4",models:[{id:"gpt-6-astra",name:"GPT-6 Astra",description:"Most capable model for complex, demanding work.",codexMaxEffort:"xhigh",codexEfforts:["low","medium","high","xhigh"],codexServiceTiers:["fast"],presetMapping:{default:"gpt-6-astra",opus:"gpt-6-astra",sonnet:"gpt-6-astra",haiku:"gpt-5.4-mini"}},{id:"gpt-5.6-sol",name:"GPT-5.6 Sol",description:"Latest frontier agentic coding model.",codexMaxEffort:"xhigh",codexEfforts:["low","medium","high","xhigh"],codexServiceTiers:["fast"],presetMapping:{default:"gpt-5.6-sol",opus:"gpt-5.6-sol",sonnet:"gpt-5.6-sol",haiku:"gpt-5.4-mini"}},{id:"gpt-5.6-terra",name:"GPT-5.6 Terra",description:"Balanced agentic coding model for everyday work.",codexMaxEffort:"xhigh",codexEfforts:["low","medium","high","xhigh"],codexServiceTiers:["fast"],presetMapping:{default:"gpt-5.6-terra",opus:"gpt-5.6-terra",sonnet:"gpt-5.6-terra",haiku:"gpt-5.4-mini"}},{id:"gpt-5.6-luna",name:"GPT-5.6 Luna",description:"Fast and affordable agentic coding model.",codexMaxEffort:"xhigh",codexEfforts:["low","medium","high","xhigh"],codexServiceTiers:["fast"],presetMapping:{default:"gpt-5.6-luna",opus:"gpt-5.6-luna",sonnet:"gpt-5.6-luna",haiku:"gpt-5.4-mini"}},{id:"gpt-5.5",name:"GPT-5.5",tier:"paid",description:"Newest Codex-released GPT-5 family model; falls back to GPT-5.4 on free plans",codexMaxEffort:"xhigh",codexServiceTiers:["fast"],presetMapping:{default:"gpt-5.5",opus:"gpt-5.5",sonnet:"gpt-5.5",haiku:"gpt-5.4-mini"}},{id:"gpt-5.4",name:"GPT-5.4",description:"Recommended Codex default for most coding and agentic tasks",codexMaxEffort:"xhigh",codexServiceTiers:["fast"],presetMapping:{default:"gpt-5.4",opus:"gpt-5.4",sonnet:"gpt-5.4",haiku:"gpt-5.4-mini"}},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini",description:"Fast, lower-cost Codex option for lighter tasks and haiku-tier routing",codexMaxEffort:"high",presetMapping:{default:"gpt-5.4-mini",opus:"gpt-5.4",sonnet:"gpt-5.4",haiku:"gpt-5.4-mini"}},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",tier:"paid",description:"Previous flagship coding model whose capabilities now power GPT-5.4",codexMaxEffort:"xhigh",presetMapping:{default:"gpt-5.3-codex",opus:"gpt-5.3-codex",sonnet:"gpt-5.3-codex",haiku:"gpt-5.4-mini"}},{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",tier:"paid",description:"Research preview model for ChatGPT Pro subscribers, optimized for near-instant coding iteration",codexMaxEffort:"xhigh",presetMapping:{default:"gpt-5.3-codex-spark",opus:"gpt-5.3-codex",sonnet:"gpt-5.3-codex",haiku:"gpt-5.4-mini"}},{id:"gpt-5.2",name:"GPT-5.2",description:"Previous general-purpose Codex model",codexMaxEffort:"xhigh",presetMapping:{default:"gpt-5.2",opus:"gpt-5.2",sonnet:"gpt-5.2",haiku:"gpt-5.4-mini"}}]},xai:{provider:"xai",displayName:"xAI (Grok)",defaultModel:"grok-build-0.1",models:[{id:"grok-build-0.1",name:"Grok Build 0.1",description:"Fast coding model for agentic software engineering workflows",presetMapping:{default:"grok-build-0.1",opus:"grok-4.5",sonnet:"grok-build-0.1",haiku:"grok-composer-2.5-fast"}},{id:"grok-4.6",name:"Grok 4.6",description:"SpaceXAI's smartest model built for long-running agents, interactive and visual work.",reasoningLevels:["low","medium","high","xhigh"]},{id:"grok-4.5",name:"Grok 4.5",description:"Frontier model for coding, engineering, and agentic workflows",reasoningLevels:["low","medium","high"]},{id:"grok-4.3",name:"Grok 4.3",description:"General-purpose Grok model with a one-million-token context window",reasoningLevels:["none","low","medium","high"]},{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 0309 Reasoning",description:"Reasoning model with a two-million-token context window"},{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 0309 Non Reasoning",description:"Non-reasoning model with a two-million-token context window"},{id:"grok-4.20-multi-agent-0309",name:"Grok 4.20 Multi Agent 0309",description:"Multi-agent model with a two-million-token context window"},{id:"grok-3-mini",name:"Grok 3 Mini",description:"Compact reasoning model"},{id:"grok-3-mini-fast",name:"Grok 3 Mini Fast",description:"Faster compact reasoning model"},{id:"grok-composer-2.5-fast",name:"Grok Composer 2.5 Fast",description:"Fast Composer model for lightweight coding tasks"}]},qwen:{provider:"qwen",displayName:"Qwen",defaultModel:"qwen3-coder-plus",models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus",description:"Code-focused model (1M context)",presetMapping:{default:"qwen3-coder-plus",opus:"qwen3-max",sonnet:"qwen3-coder-plus",haiku:"qwen3-coder-flash"}},{id:"qwen3-max",name:"Qwen3 Max",description:"Flagship model (256K context)",presetMapping:{default:"qwen3-max",opus:"qwen3-max",sonnet:"qwen3-coder-plus",haiku:"qwen3-coder-flash"}},{id:"qwen3-max-preview",name:"Qwen3 Max Preview",description:"Preview with thinking support (256K)",presetMapping:{default:"qwen3-max-preview",opus:"qwen3-max-preview",sonnet:"qwen3-max",haiku:"qwen3-coder-flash"}},{id:"qwen3-235b",name:"Qwen3 235B",description:"Large 235B A22B model",presetMapping:{default:"qwen3-235b",opus:"qwen3-max",sonnet:"qwen3-235b",haiku:"qwen3-coder-flash"}},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus",description:"Vision-language multimodal"},{id:"qwen3-coder-flash",name:"Qwen3 Coder Flash",description:"Fast code generation"},{id:"qwen3-32b",name:"Qwen3 32B",description:"Qwen3 32B model"}]},iflow:{provider:"iflow",displayName:"iFlow",defaultModel:"qwen3-coder-plus",models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus",description:"Recommended default for iFlow accounts",presetMapping:{default:"qwen3-coder-plus",opus:"qwen3-coder-plus",sonnet:"qwen3-coder-plus",haiku:"qwen3-coder-plus"}},{id:"qwen3-max",name:"Qwen3 Max",description:"Flagship Qwen model via iFlow"},{id:"kimi-k2",name:"Kimi K2",description:"Kimi model currently available via iFlow"},{id:"deepseek-v3.2",name:"DeepSeek V3.2",description:"Current DeepSeek V3.2 model via iFlow"},{id:"deepseek-r1",name:"DeepSeek R1",description:"Reasoning-focused DeepSeek model"},{id:"glm-4.6",name:"GLM 4.6",description:"Zhipu GLM 4.6 via iFlow"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus",description:"Vision-language model"}]},qoder:{provider:"qoder",displayName:"Qoder",defaultModel:"qoder/auto",models:[{id:"qoder/auto",name:"Qoder Auto",description:"Auto selects the best Qoder model for your prompt",presetMapping:{default:"qoder/auto",opus:"qoder/auto",sonnet:"qoder/auto",haiku:"qoder/auto"}},{id:"qoder/ultimate",name:"Qoder Ultimate",description:"Highest quality Qoder tier",presetMapping:{default:"qoder/ultimate",opus:"qoder/ultimate",sonnet:"qoder/ultimate",haiku:"qoder/ultimate"}},{id:"qoder/performance",name:"Qoder Performance",description:"Balanced quality and speed",presetMapping:{default:"qoder/performance",opus:"qoder/performance",sonnet:"qoder/performance",haiku:"qoder/performance"}},{id:"qoder/efficient",name:"Qoder Efficient",description:"Cost-efficient Qoder tier",presetMapping:{default:"qoder/efficient",opus:"qoder/efficient",sonnet:"qoder/efficient",haiku:"qoder/efficient"}},{id:"qoder/lite",name:"Qoder Lite",description:"Fastest and most affordable Qoder tier",presetMapping:{default:"qoder/lite",opus:"qoder/lite",sonnet:"qoder/lite",haiku:"qoder/lite"}},{id:"qoder/qmodel",name:"Qwen 3.6 Plus (via Qoder)",description:"Qwen 3.6 Plus frontier model",presetMapping:{default:"qoder/qmodel",opus:"qoder/qmodel",sonnet:"qoder/qmodel",haiku:"qoder/qmodel"}},{id:"qoder/dmodel",name:"DeepSeek V4 Pro (via Qoder)",description:"DeepSeek V4 Pro frontier model",presetMapping:{default:"qoder/dmodel",opus:"qoder/dmodel",sonnet:"qoder/dmodel",haiku:"qoder/dfmodel"}},{id:"qoder/dfmodel",name:"DeepSeek V4 Flash (via Qoder)",description:"DeepSeek V4 Flash frontier model"},{id:"qoder/gm51model",name:"GLM 5.1 (via Qoder)",description:"GLM 5.1 frontier model",presetMapping:{default:"qoder/gm51model",opus:"qoder/gm51model",sonnet:"qoder/gm51model",haiku:"qoder/gm51model"}},{id:"qoder/kmodel",name:"Kimi K2.6 (via Qoder)",description:"Kimi K2.6 frontier model",presetMapping:{default:"qoder/kmodel",opus:"qoder/kmodel",sonnet:"qoder/kmodel",haiku:"qoder/kmodel"}},{id:"qoder/mmodel",name:"MiniMax M2.7 (via Qoder)",description:"MiniMax M2.7 frontier model",presetMapping:{default:"qoder/mmodel",opus:"qoder/mmodel",sonnet:"qoder/mmodel",haiku:"qoder/mmodel"}}]},kimi:{provider:"kimi",displayName:"Kimi (Moonshot)",defaultModel:"kimi-k2.5",models:[{id:"kimi-k2.5",name:"Kimi K2.5",description:"Latest multimodal model (262K context)",presetMapping:{default:"kimi-k2.5",opus:"kimi-k2.5",sonnet:"kimi-k2-thinking",haiku:"kimi-k2"}},{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",description:"Extended reasoning model",presetMapping:{default:"kimi-k2-thinking",opus:"kimi-k2.5",sonnet:"kimi-k2-thinking",haiku:"kimi-k2"}},{id:"kimi-k2",name:"Kimi K2",description:"Flagship coding model"}]},kiro:{provider:"kiro",displayName:"Kiro (AWS)",defaultModel:"kiro-claude-sonnet-4-6",models:[{id:"kiro-claude-opus-4-6",name:"Kiro Claude Opus 4.6",description:"Claude Opus 4.6 via Kiro (2.2x credit)",presetMapping:{default:"kiro-claude-opus-4-6",opus:"kiro-claude-opus-4-6",sonnet:"kiro-claude-sonnet-4-6",haiku:"kiro-claude-haiku-4-5"}},{id:"kiro-claude-sonnet-4-6",name:"Kiro Claude Sonnet 4.6",description:"Claude Sonnet 4.6 via Kiro (1.3x credit)",presetMapping:{default:"kiro-claude-sonnet-4-6",opus:"kiro-claude-opus-4-6",sonnet:"kiro-claude-sonnet-4-6",haiku:"kiro-claude-haiku-4-5"}},{id:"kiro-claude-opus-4-5",name:"Kiro Claude Opus 4.5",description:"Claude Opus 4.5 via Kiro (2.2x credit)",presetMapping:{default:"kiro-claude-opus-4-5",opus:"kiro-claude-opus-4-5",sonnet:"kiro-claude-sonnet-4-5",haiku:"kiro-claude-haiku-4-5"}},{id:"kiro-claude-sonnet-4-5",name:"Kiro Claude Sonnet 4.5",description:"Claude Sonnet 4.5 via Kiro (1.3x credit)",presetMapping:{default:"kiro-claude-sonnet-4-5",opus:"kiro-claude-opus-4-5",sonnet:"kiro-claude-sonnet-4-5",haiku:"kiro-claude-haiku-4-5"}},{id:"kiro-claude-sonnet-4",name:"Kiro Claude Sonnet 4",description:"Claude Sonnet 4 via Kiro (1.3x credit)",presetMapping:{default:"kiro-claude-sonnet-4",opus:"kiro-claude-opus-4-5",sonnet:"kiro-claude-sonnet-4",haiku:"kiro-claude-haiku-4-5"}},{id:"kiro-claude-haiku-4-5",name:"Kiro Claude Haiku 4.5",description:"Claude Haiku 4.5 via Kiro (0.4x credit)"}]},ghcp:{provider:"ghcp",displayName:"GitHub Copilot (OAuth)",defaultModel:"claude-sonnet-5",models:[{id:"claude-sonnet-5",name:"Claude Sonnet 5",description:"Anthropic Claude Sonnet 5 via GitHub Copilot",extendedContext:!0,presetMapping:{default:"claude-sonnet-5",opus:"claude-opus-4.8",sonnet:"claude-sonnet-5",haiku:"claude-haiku-4.5"}},{id:"claude-opus-4.8",name:"Claude Opus 4.8",description:"Anthropic Claude Opus 4.8 via GitHub Copilot",extendedContext:!0,presetMapping:{default:"claude-opus-4.8",opus:"claude-opus-4.8",sonnet:"claude-sonnet-5",haiku:"claude-haiku-4.5"}},{id:"claude-opus-4.8-fast-mode",name:"Claude Opus 4.8 Fast Mode",description:"Anthropic Claude Opus 4.8 preview fast mode via GitHub Copilot",extendedContext:!0},{id:"claude-opus-4.7",name:"Claude Opus 4.7",description:"Anthropic Claude Opus 4.7 via GitHub Copilot",extendedContext:!0},{id:"claude-opus-4.6",name:"Claude Opus 4.6",description:"Anthropic Claude Opus 4.6 via GitHub Copilot",extendedContext:!0},{id:"claude-opus-4.5",name:"Claude Opus 4.5",description:"Anthropic Claude Opus 4.5 via GitHub Copilot",presetMapping:{default:"claude-opus-4.5",opus:"claude-opus-4.5",sonnet:"claude-sonnet-4.5",haiku:"claude-haiku-4.5"}},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6",description:"Anthropic Claude Sonnet 4.6 via GitHub Copilot",extendedContext:!0,presetMapping:{default:"claude-sonnet-4.6",opus:"claude-opus-4.7",sonnet:"claude-sonnet-4.6",haiku:"claude-haiku-4.5"}},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5",description:"Anthropic Claude Sonnet 4.5 via GitHub Copilot",presetMapping:{default:"claude-sonnet-4.5",opus:"claude-opus-4.5",sonnet:"claude-sonnet-4.5",haiku:"claude-haiku-4.5"}},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5",description:"Anthropic Claude Haiku 4.5 via GitHub Copilot"},{id:"claude-fable-5",name:"Claude Fable 5",description:"Anthropic Claude Fable 5 via GitHub Copilot",extendedContext:!0},{id:"gpt-5.5",name:"GPT-5.5",description:"OpenAI GPT-5.5 via GitHub Copilot",extendedContext:!0,presetMapping:{default:"gpt-5.5",opus:"gpt-5.5",sonnet:"gpt-5.4",haiku:"gpt-5.4-mini"}},{id:"gpt-5.4",name:"GPT-5.4",description:"OpenAI GPT-5.4 via GitHub Copilot",extendedContext:!0},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini",description:"OpenAI GPT-5.4 Mini via GitHub Copilot"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano",description:"OpenAI GPT-5.4 Nano via GitHub Copilot"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",description:"OpenAI GPT-5.3 Codex via GitHub Copilot",extendedContext:!0,presetMapping:{default:"gpt-5.3-codex",opus:"gpt-5.3-codex",sonnet:"gpt-5.3-codex",haiku:"gpt-5-mini"}},{id:"gpt-5-mini",name:"GPT-5 Mini",description:"OpenAI GPT-5 Mini via GitHub Copilot"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",description:"Google Gemini 2.5 Pro via GitHub Copilot"},{id:"gemini-3-flash",name:"Gemini 3 Flash",description:"Google Gemini 3 Flash via GitHub Copilot"},{id:"gemini-3.1-pro",name:"Gemini 3.1 Pro",description:"Google Gemini 3.1 Pro via GitHub Copilot"},{id:"gemini-3.5-flash",name:"Gemini 3.5 Flash",description:"Google Gemini 3.5 Flash via GitHub Copilot"},{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",description:"Moonshot Kimi K2.7 Code via GitHub Copilot"},{id:"mai-code-1-flash",name:"MAI-Code-1-Flash",description:"Microsoft MAI-Code-1-Flash via GitHub Copilot"},{id:"raptor-mini",name:"Raptor Mini",description:"Microsoft Raptor Mini via GitHub Copilot"}]},claude:{provider:"claude",displayName:"Claude (Anthropic)",defaultModel:"claude-sonnet-5",models:[{id:"claude-sonnet-5",name:"Claude Sonnet 5",description:"Latest Sonnet model",extendedContext:!0,presetMapping:{default:"claude-sonnet-5",opus:"claude-opus-4-8",sonnet:"claude-sonnet-5",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-fable-5-1",name:"Claude Fable 5.1",description:"Most powerful model",extendedContext:!0,presetMapping:{default:"claude-fable-5-1",opus:"claude-fable-5-1",sonnet:"claude-sonnet-5",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-fable-5",name:"Claude Fable 5",description:"Previous most powerful model",extendedContext:!0,presetMapping:{default:"claude-fable-5",opus:"claude-fable-5",sonnet:"claude-sonnet-5",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-opus-5",name:"Claude Opus 5",description:"Latest premium model",extendedContext:!0,presetMapping:{default:"claude-opus-5",opus:"claude-opus-5",sonnet:"claude-sonnet-5",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-opus-4-8",name:"Claude Opus 4.8",description:"Latest flagship model",extendedContext:!0,presetMapping:{default:"claude-opus-4-8",opus:"claude-opus-4-8",sonnet:"claude-sonnet-5",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-opus-4-7",name:"Claude Opus 4.7",description:"Previous flagship model",extendedContext:!0,presetMapping:{default:"claude-opus-4-7",opus:"claude-opus-4-7",sonnet:"claude-sonnet-5",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-opus-4-6",name:"Claude Opus 4.6",description:"Older flagship model",extendedContext:!0,presetMapping:{default:"claude-opus-4-6",opus:"claude-opus-4-6",sonnet:"claude-sonnet-4-6",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",description:"Balanced performance and speed",extendedContext:!0,presetMapping:{default:"claude-sonnet-4-6",opus:"claude-opus-4-6",sonnet:"claude-sonnet-4-6",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",description:"Most capable Claude model",extendedContext:!0,presetMapping:{default:"claude-opus-4-5-20251101",opus:"claude-opus-4-5-20251101",sonnet:"claude-sonnet-4-5-20250929",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",description:"Balanced performance and speed",extendedContext:!0,presetMapping:{default:"claude-sonnet-4-5-20250929",opus:"claude-opus-4-5-20251101",sonnet:"claude-sonnet-4-5-20250929",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4",description:"Previous generation Sonnet",extendedContext:!0,presetMapping:{default:"claude-sonnet-4-20250514",opus:"claude-opus-4-5-20251101",sonnet:"claude-sonnet-4-20250514",haiku:"claude-haiku-4-5-20251001"}},{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",description:"Fast and efficient"}]}};function Re(t,a){if(!t)return;const s=$(a);if(t.provider==="agy"){const d=Va(s);if(d){const c=t.models.find(r=>r.id===d);if(c)return c}}const n=As[s.toLowerCase()],i=t.models.find(d=>d.id===s||d.id===n);if(i)return i;const o=dt(s);if(o)return t.models.map(d=>({model:d,info:dt(d.id)})).filter(d=>!!(d.info&&d.info.family===o.family)).sort((d,c)=>Ss(c.info.version,d.info.version))[0]?.model}function Wa(t){if(t==="free")return"free";if(typeof t=="string"&&t.trim().length>0)return"paid"}function Ja(t,a){const s=t.toLowerCase(),n=ke[s];if(!a||a.models.length===0)return n;const i=a.models.map(l=>({id:l.id,owned_by:a.provider})),o=a.models.map(l=>{const g=Re(n,l.id);return{...l,name:l.name||g?.name||l.id,tier:g?.tier??Wa(l.tier),description:l.description??g?.description,broken:g?.broken,issueUrl:g?.issueUrl,deprecated:g?.deprecated,deprecationReason:g?.deprecationReason,extendedContext:s==="xai"?void 0:l.extendedContext??g?.extendedContext,presetMapping:g?.presetMapping,reasoningLevels:l.reasoningLevels??g?.reasoningLevels,codexMaxEffort:l.codexMaxEffort??g?.codexMaxEffort,codexEfforts:l.codexEfforts??g?.codexEfforts,codexServiceTiers:l.codexServiceTiers??g?.codexServiceTiers}}),d=n?.defaultModel?Ie(n.defaultModel,i):void 0,c=typeof d=="string"&&i.some(l=>$(l.id)===$(d)),r=i.some(l=>$(l.id)===$(a.defaultModel)),m=c?d:r?a.defaultModel:o[0]?.id??"";return{provider:a.provider,displayName:a.displayName||n?.displayName||t,defaultModel:m,models:o}}function Ht(t){const a={},s=new Set([...Object.keys(ke),...Object.keys(t??{})]);for(const n of s){const i=Ja(n,t?.[n]);i&&(a[n]=i)}return a}function ze(t,a,s){const n=Re(s,a);return n||Re(ke[t.toLowerCase()],a)}function Ie(t,a=[]){const s=$(t),n=Qa(s,a);if(n)return n;const i=as(a,s);if(i)return i;const o=As[s];return(o?as(a,o):void 0)??s}function Xa(t,a=[]){return{default:Ie(t.default,a),opus:Ie(t.opus,a),sonnet:Ie(t.sonnet,a),haiku:Ie(t.haiku,a)}}function zt(t,a=[]){if(!t)return[];const s=ke[t.provider.toLowerCase()]??t,n=new Set;return s.models.map(i=>{const o=Ie(i.id,a),d=i.presetMapping?Xa(i.presetMapping,a):void 0,c=t.models.find(r=>$(r.id)===$(o));return{...i,id:o,name:c?.name||i.name,description:c?.description??i.description,presetMapping:d}}).filter(i=>n.has(i.id)?!1:(n.add(i.id),!0))}function Ya(t,a,s=[]){const n=t.trim().toLowerCase();if(!a||!n)return[];const i=ke[n]??a,o=zt(a,s),d=new Set(o.map(l=>$(l.id))),c=new Set(o.map(l=>Re(i,l.id)?.id).filter(l=>!!l).map(l=>$(l))),r=new Set,m=new Set(s.map(l=>$(l.id)));return s.filter(l=>{const g=$(l.id),h=za(l.id),j=Ba(h),k=Re(i,h)??Re(i,j);if(d.has($(h))||g!==$(h)&&m.has($(h)))return!1;const C=$(j);if(C!==$(h)&&m.has(C))return!1;const O=k?$(k.id):C;return k&&c.has(O)||r.has(O)||!k&&n==="agy"?!1:(r.add(O),!0)})}function Za(t,a,s){return t.toLowerCase()==="xai"?!1:ze(t,a,s)?.extendedContext===!0}const vt="ccs-internal-managed";async function en(){try{const t=await fetch("/api/settings/auth/tokens/raw");return t.ok?(await t.json())?.apiKey?.value??vt:vt}catch{return vt}}async function tn(t,a){if(a)return a;try{const s=await fetch("/api/cliproxy/catalog");if(!s.ok)return ke[t];const n=await s.json();return Ht(n.catalogs)[t]??ke[t]}catch{return ke[t]}}async function St(t,a,s){const n=await tn(t,s);if(!n)return{success:!1};const i=n.models.find(l=>l.id===n.defaultModel)||n.models[0],o=i?.id??n.defaultModel,d=i?.presetMapping||{default:o,opus:o,sonnet:o,haiku:o},c=await en(),m={env:{ANTHROPIC_BASE_URL:`http://127.0.0.1:${At}/api/provider/${t}`,ANTHROPIC_AUTH_TOKEN:c,ANTHROPIC_MODEL:d.default,ANTHROPIC_DEFAULT_OPUS_MODEL:d.opus,ANTHROPIC_DEFAULT_SONNET_MODEL:d.sonnet,ANTHROPIC_DEFAULT_HAIKU_MODEL:d.haiku}};try{return{success:(await fetch(`/api/settings/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:m})})).ok,presetName:i?.name||n.defaultModel}}catch{return{success:!1}}}function sn({currentProgress:t,allSteps:a}){return e.jsx("div",{className:"flex justify-center gap-1 pt-2",children:a.map((s,n)=>e.jsx("div",{className:`w-2 h-2 rounded-full transition-colors ${t>=n?"bg-primary":"bg-muted"}`},s))})}function an({providers:t,onSelect:a}){return e.jsx("div",{className:"grid gap-2",children:t.map(s=>e.jsxs("button",{onClick:()=>a(s.id),className:"flex items-center justify-between p-3 border rounded-lg hover:bg-muted/50 transition-colors text-left",children:[e.jsxs("div",{children:[e.jsx("div",{className:"font-medium",children:s.name}),e.jsx("div",{className:"text-xs text-muted-foreground",children:s.description})]}),e.jsx(vs,{className:"w-4 h-4 text-muted-foreground"})]},s.id))})}function nn({selectedProvider:t,providers:a,authCommand:s,isRefreshing:n,isPending:i,onBack:o,onStartAuth:d,onRefresh:c}){const{t:r}=Q(),[m,l]=u.useState(!1),g=async h=>{await navigator.clipboard.writeText(h),l(!0),setTimeout(()=>l(!1),2e3)};return e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"text-center space-y-3",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:r("setupWizard.authStep.authenticateWith",{provider:a.find(h=>h.id===t)?.name})}),e.jsx(G,{onClick:d,disabled:i,className:"w-full gap-2",size:"lg",children:i?e.jsxs(e.Fragment,{children:[e.jsx(ue,{className:"w-4 h-4 animate-spin"}),r("setupWizard.authStep.authenticating")]}):e.jsxs(e.Fragment,{children:[e.jsx(Me,{className:"w-4 h-4"}),r("setupWizard.authStep.authenticateInBrowser")]})}),i&&e.jsx("p",{className:"text-xs text-muted-foreground",children:r("setupWizard.authStep.completeOAuth")})]}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-0 flex items-center",children:e.jsx("span",{className:"w-full border-t"})}),e.jsx("div",{className:"relative flex justify-center text-xs uppercase",children:e.jsx("span",{className:"bg-background px-2 text-muted-foreground",children:r("setupWizard.authStep.orUseTerminal")})})]}),e.jsx(ds,{children:e.jsxs(ls,{className:"p-4 space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(Ma,{className:"w-4 h-4"}),r("setupWizard.authStep.runCommandHint")]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("code",{className:"flex-1 px-3 py-2 bg-muted rounded-md font-mono text-sm",children:s}),e.jsx(G,{variant:"outline",size:"icon",onClick:()=>g(s),children:m?e.jsx(Pe,{className:"w-4 h-4 text-green-500"}):e.jsx(bs,{className:"w-4 h-4"})})]})]})}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs(G,{variant:"ghost",onClick:o,disabled:i,children:[e.jsx(Ft,{className:"w-4 h-4 mr-2"}),r("setupWizard.authStep.back")]}),e.jsxs(G,{variant:"outline",onClick:c,disabled:n||i,children:[e.jsx(lt,{className:`w-4 h-4 mr-2 ${n?"animate-spin":""}`}),r(n?"setupWizard.authStep.checking":"setupWizard.authStep.refreshStatus")]})]})]})}function rn({accounts:t,privacyMode:a,onSelect:s,onAddNew:n,onBack:i}){const{t:o}=Q();return e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide",children:o("setupWizard.accountStep.selectAccount",{count:t.length})}),e.jsx("div",{className:"grid gap-2 max-h-[320px] overflow-y-auto pr-1",children:t.map(d=>{const c=cs(d.id,d.email,d.tokenFile),r=d.provider?.toLowerCase()==="codex"?us(c):null;return e.jsxs("button",{type:"button",onClick:()=>s(d),className:"flex items-center justify-between p-3 border rounded-lg hover:bg-muted/50 transition-colors text-left",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("div",{className:"w-8 h-8 rounded-full bg-muted flex items-center justify-center",children:e.jsx(Ke,{className:"w-4 h-4 text-muted-foreground"})}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("div",{className:W("font-medium",a&&Ne),children:c.email}),e.jsxs("div",{className:"flex items-center gap-1.5 flex-wrap",children:[r?.label?e.jsx(H,{variant:"outline",className:W("text-[10px] h-4 px-1.5 border-transparent",a&&Ne,r.audience==="business"?"bg-sky-500/12 text-sky-700 dark:text-sky-300":r.audience==="free"?"bg-slate-200/70 text-slate-700 dark:bg-slate-700/40 dark:text-slate-200":"bg-emerald-500/12 text-emerald-700 dark:text-emerald-300"),children:r.label}):c.audienceLabel?e.jsx(H,{variant:"outline",className:W("text-[10px] h-4 px-1.5 border-transparent",a&&Ne,c.audience==="business"?"bg-sky-500/12 text-sky-700 dark:text-sky-300":c.audience==="free"?"bg-slate-200/70 text-slate-700 dark:bg-slate-700/40 dark:text-slate-200":"bg-emerald-500/12 text-emerald-700 dark:text-emerald-300"),children:c.audienceLabel}):null,!r?.label&&c.detailLabel&&e.jsx(H,{variant:"outline",className:W("text-[10px] h-4 px-1.5",a&&Ne),children:c.detailLabel}),d.isDefault&&e.jsx("span",{className:"text-xs text-muted-foreground",children:o("setupWizard.accountStep.defaultAccount")})]})]})]}),e.jsx(vs,{className:"w-4 h-4 text-muted-foreground"})]},d.id)})}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute inset-0 flex items-center",children:e.jsx("span",{className:"w-full border-t"})}),e.jsx("div",{className:"relative flex justify-center text-xs uppercase",children:e.jsx("span",{className:"bg-background px-2 text-muted-foreground",children:o("setupWizard.accountStep.or")})})]}),e.jsxs("button",{type:"button",className:"w-full flex items-center gap-3 p-3 border-2 border-dashed border-primary/50 rounded-lg hover:border-primary hover:bg-primary/5 transition-colors text-left",onClick:n,children:[e.jsx("div",{className:"w-8 h-8 rounded-full bg-primary/10 flex items-center justify-center shrink-0",children:e.jsx(Me,{className:"w-4 h-4 text-primary"})}),e.jsxs("div",{children:[e.jsx("div",{className:"font-medium text-primary",children:o("setupWizard.accountStep.addNewAccount")}),e.jsx("div",{className:"text-xs text-muted-foreground",children:o("setupWizard.accountStep.addNewAccountDesc")})]})]}),e.jsx("div",{className:"flex items-center justify-between pt-2",children:e.jsxs(G,{variant:"ghost",onClick:i,children:[e.jsx(Ft,{className:"w-4 h-4 mr-2"}),o("setupWizard.accountStep.back")]})})]})}const ns="__custom__";function on({selectedProvider:t,catalog:a,selectedAccount:s,variantName:n,modelName:i,isPending:o,privacyMode:d,onVariantNameChange:c,onModelChange:r,onBack:m,onSkip:l,onCreate:g}){const{t:h}=Q(),j=a||ke[t],k=j?.models||[],C=i&&!k.some(v=>v.id===i),[O,P]=u.useState(C),S=t==="agy"&&i.trim().length>0?he(i):!1,A=s?cs(s.id,s.email,s.tokenFile):null,b=t==="codex"&&A?us(A):null,D=v=>{v===ns?(P(!0),r("")):(P(!1),r(v))};return e.jsxs("div",{className:"space-y-4",children:[s&&e.jsxs("div",{className:"flex min-w-0 items-start gap-2 rounded-md bg-muted/50 p-2 text-sm",children:[e.jsx(Ke,{className:"w-4 h-4 shrink-0"}),e.jsxs("div",{className:"min-w-0 space-y-1",children:[e.jsxs("span",{children:[h("setupVariant.using")," ",e.jsx("span",{className:W("break-all",d&&Ne),children:A?.email})]}),(A?.audienceLabel||A?.detailLabel)&&e.jsxs("div",{className:"flex items-center gap-1.5 flex-wrap",children:[b?.label?e.jsx(H,{variant:"outline",className:W("text-[10px] h-4 px-1.5 border-transparent",d&&Ne,b.audience==="business"?"bg-sky-500/12 text-sky-700 dark:text-sky-300":b.audience==="free"?"bg-slate-200/70 text-slate-700 dark:bg-slate-700/40 dark:text-slate-200":"bg-emerald-500/12 text-emerald-700 dark:text-emerald-300"),children:b.label}):A?.audienceLabel?e.jsx(H,{variant:"outline",className:W("text-[10px] h-4 px-1.5 border-transparent",d&&Ne,A.audience==="business"?"bg-sky-500/12 text-sky-700 dark:text-sky-300":A.audience==="free"?"bg-slate-200/70 text-slate-700 dark:bg-slate-700/40 dark:text-slate-200":"bg-emerald-500/12 text-emerald-700 dark:text-emerald-300"),children:A.audienceLabel}):null,!b?.label&&A?.detailLabel&&e.jsx(H,{variant:"outline",className:W("text-[10px] h-4 px-1.5",d&&Ne),children:A.detailLabel})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"variant-name",children:h("setupVariant.variantNameRequired")}),e.jsx(ce,{id:"variant-name",value:n,onChange:v=>c(v.target.value),placeholder:h("setupVariant.variantNamePlaceholder")}),e.jsxs("div",{className:"text-xs text-muted-foreground",children:[h("setupVariant.invokeHintPrefix")," ccs ",n||"<name>",' "prompt"']})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{children:h("setupVariant.model")}),O?e.jsxs("div",{className:"space-y-2",children:[e.jsx(ce,{value:i,onChange:v=>r(v.target.value),placeholder:h("setupVariant.modelPlaceholder")}),S&&e.jsx("p",{className:"text-xs text-destructive",children:h("providerEditor.agyDenylist")}),e.jsx("button",{type:"button",className:"text-xs text-primary hover:underline",onClick:()=>{P(!1),t==="agy"&&he(i)&&r("")},children:h("setupVariant.choosePresetInstead")})]}):e.jsxs(_e,{value:k.some(v=>v.id===i)?i:"",onValueChange:D,children:[e.jsx(Fe,{className:"min-w-0",children:e.jsx(qe,{placeholder:h("setupVariant.selectModel")})}),e.jsxs(Ue,{className:"max-w-[calc(100vw-2rem)]",children:[k.map(v=>e.jsx(be,{value:v.id,children:e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("span",{className:"truncate",children:v.name}),v.description&&e.jsxs("span",{className:"truncate text-xs text-muted-foreground",children:["- ",v.description]})]})},v.id)),e.jsx(be,{value:ns,children:e.jsx("span",{className:"text-primary",children:h("setupVariant.customModelName")})})]})]}),e.jsx("div",{className:"text-xs text-muted-foreground",children:O?h("setupVariant.enterAnyModel"):h("setupVariant.defaultModel",{model:j?.defaultModel||h("setupVariant.providerDefault")})})]}),e.jsxs("div",{className:"flex flex-col gap-2 pt-2 sm:flex-row sm:items-center sm:justify-between",children:[e.jsxs(G,{variant:"ghost",onClick:m,className:"justify-start",children:[e.jsx(Ft,{className:"w-4 h-4 mr-2"}),h("setupVariant.back")]}),e.jsxs("div",{className:"flex flex-col-reverse gap-2 sm:flex-row sm:items-center",children:[e.jsx(G,{variant:"ghost",onClick:l,children:h("setupVariant.skip")}),e.jsx(G,{onClick:g,disabled:!n||o||S,children:h(o?"setupVariant.creating":"setupVariant.createVariant")})]})]}),e.jsx("p",{className:"text-xs text-center text-muted-foreground",children:h("setupVariant.skipHint")})]})}function dn({variantName:t,onClose:a}){const{t:s}=Q();return e.jsxs("div",{className:"space-y-4 text-center",children:[e.jsx("div",{className:"flex justify-center",children:e.jsx("div",{className:"w-16 h-16 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center",children:e.jsx(Pe,{className:"w-8 h-8 text-green-600 dark:text-green-400"})})}),e.jsxs("div",{children:[e.jsx("div",{className:"font-semibold text-lg",children:s("setupWizard.successStep.title")}),e.jsx("div",{className:"text-sm text-muted-foreground",children:s("setupWizard.successStep.subtitle")})]}),e.jsx(ds,{children:e.jsxs(ls,{className:"p-4 space-y-2",children:[e.jsx("div",{className:"text-sm text-muted-foreground",children:s("setupWizard.successStep.usage")}),e.jsxs("code",{className:"block px-3 py-2 bg-muted rounded-md font-mono text-sm",children:["ccs ",t,' "your prompt here"']})]})}),e.jsx(G,{onClick:a,className:"w-full",children:s("setupWizard.successStep.done")})]})}function ln({open:t,onClose:a}){const[s,n]=u.useState("provider"),[i,o]=u.useState(""),[d,c]=u.useState(null),[r,m]=u.useState(""),[l,g]=u.useState(""),[h,j]=u.useState(!1),[k,C]=u.useState(!1),{data:O,refetch:P}=ms(),{data:S}=ps(),A=_s(),b=Fs(),D=qs(),{privacyMode:v}=xs(),I=O?.authStatus.find(y=>y.provider===i),T=u.useMemo(()=>I?.accounts||[],[I?.accounts]),x=u.useMemo(()=>Ht(S?.catalogs),[S?.catalogs]),R=!!S;u.useEffect(()=>{if(!t){const y=setTimeout(()=>{n("provider"),o(""),c(null),m(""),g(""),C(!1)},0);return()=>clearTimeout(y)}},[t]),u.useEffect(()=>{if(s==="auth"&&T.length>0&&!k){const y=setTimeout(()=>{n("account")},0);return()=>clearTimeout(y)}},[s,T,k]);const M=async()=>{j(!0),await P(),j(!1)},B=()=>{const y=(I?.accounts?.length||0)===0;b.mutate({provider:i},{onSuccess:async Y=>{if(y){const N=await St(i,void 0,R?x[i]:void 0);N.success&&N.presetName?V.success(`Applied "${N.presetName}" preset`):N.success||V.warning(fe.t("commonToast.accountAddedPresetFailed"))}Y.account&&(c(Y.account),n("variant")),P()}})},p=y=>{o(y),(O?.authStatus.find(te=>te.provider===y)?.accounts||[]).length===0?n("auth"):n("account")},w=y=>{c(y),n("variant")},z=async()=>{if(!(!r||!i))try{await A.mutateAsync({name:r,provider:i,model:l||void 0,account:d?.id}),n("success")}catch(y){console.error("Failed to create variant:",y)}},_=`ccs ${i} --auth --add`,L=Gs(s),F=y=>{if(!y&&(b.isPending&&i&&D.mutate(i),s==="success"||s==="provider")){a();return}};return e.jsx(Dt,{open:t,onOpenChange:F,children:e.jsxs(Et,{className:"grid max-h-[calc(100dvh-2rem)] w-[calc(100vw-2rem)] max-w-lg grid-rows-[auto_minmax(0,1fr)_auto] overflow-hidden p-0 sm:max-w-lg",onPointerDownOutside:y=>{s!=="success"&&s!=="provider"&&y.preventDefault()},onEscapeKeyDown:y=>{(b.isPending||A.isPending)&&y.preventDefault()},children:[e.jsxs(It,{className:"min-w-0 px-6 pt-6 pr-12",children:[e.jsxs(Rt,{className:"flex min-w-0 items-center gap-2",children:[e.jsx(qt,{className:"w-5 h-5 text-primary"}),fe.t("setupWizard.title")]}),e.jsxs(hs,{children:[s==="provider"&&fe.t("setupWizard.stepProviderDesc"),s==="auth"&&fe.t("setupWizard.stepAuthDesc"),s==="account"&&fe.t("setupWizard.stepAccountDesc"),s==="variant"&&fe.t("setupWizard.stepVariantDesc"),s==="success"&&fe.t("setupWizard.stepSuccessDesc")]})]}),e.jsxs("div",{className:"min-h-0 space-y-4 overflow-y-auto px-6 py-4",children:[s==="provider"&&e.jsx(an,{providers:Qt,onSelect:p}),s==="auth"&&e.jsx(nn,{selectedProvider:i,providers:Qt,authCommand:_,isRefreshing:h,isPending:b.isPending,onBack:()=>n("provider"),onStartAuth:B,onRefresh:M}),s==="account"&&e.jsx(rn,{accounts:T,privacyMode:v,onSelect:w,onAddNew:()=>{C(!0),n("auth")},onBack:()=>n("provider")}),s==="variant"&&e.jsx(on,{selectedProvider:i,catalog:x[i],selectedAccount:d,variantName:r,modelName:l,isPending:A.isPending,privacyMode:v,onVariantNameChange:m,onModelChange:g,onBack:()=>T.length>0?n("account"):n("provider"),onSkip:a,onCreate:z}),s==="success"&&e.jsx(dn,{variantName:r,onClose:a})]}),e.jsx("div",{className:"px-6 pb-6",children:e.jsx(sn,{currentProgress:L,allSteps:Us})})]})})}const cn=3e3,un=300*1e3,mn=3;function bt(t){t.invalidateQueries({queryKey:["cliproxy-catalog"]}),t.invalidateQueries({queryKey:["cliproxy-models"]})}async function jt(t){const a=await t.text();if(!a)return{};try{return JSON.parse(a)}catch{const s=t.status>=400?`Request failed with status ${t.status}`:void 0;return s?{error:s}:{}}}function pn(t,a){const s=typeof t.message=="string"?t.message:typeof t.error=="string"?t.error:a,n=Array.isArray(t.hints)?t.hints.filter(i=>typeof i=="string"&&i.trim().length>0):[];return n.length>0?[s,...n].join(`
2
- `):s}const we={provider:null,isAuthenticating:!1,error:null,authUrl:null,oauthState:null,isSubmittingCallback:!1,isDeviceCodeFlow:!1};function xn(){const{t}=Q(),[a,s]=u.useState(we),n=u.useRef(we),i=u.useRef(0),o=u.useRef(null),d=u.useRef(null),c=u.useRef(0),r=u.useRef(0),m=u.useRef(!1),l=Tt(),g=u.useCallback(P=>P===i.current,[]),h=u.useCallback(()=>{d.current&&(clearInterval(d.current),d.current=null),r.current=0},[]);u.useEffect(()=>()=>{o.current?.abort(),h(),m.current=!1},[h]),u.useEffect(()=>{n.current=a},[a]);const j=u.useCallback(async(P,S,A)=>{if(g(A)){if(Date.now()-c.current>un){h(),g(A)&&s(b=>({...b,isAuthenticating:!1,error:t("toasts.providerAuthTimeout")}));return}try{const b=await fetch(`/api/cliproxy/auth/${P}/status?state=${encodeURIComponent(S)}`);if(!g(A))return;const D=await b.json();if(r.current=0,D.status==="ok"){if(!(typeof D.account=="object"&&D.account!==null)){h();const I=t("toasts.providerAccountRegistrationFailed");V.error(I),s(T=>({...T,isAuthenticating:!1,error:I}));return}h(),l.invalidateQueries({queryKey:["cliproxy-auth"]}),l.invalidateQueries({queryKey:["cliproxy-accounts"]}),l.invalidateQueries({queryKey:["account-quota"]}),bt(l),V.success(t("toasts.providerAuthSuccess",{provider:P})),m.current=!1,s(we)}else if(D.status==="auth_url"){const v=D.url||D.auth_url;v&&(s(I=>({...I,authUrl:v})),m.current||(m.current=!0,window.open(v,"_blank")))}else if(D.status==="device_code"){h();const v=D.user_code&&D.verification_url?`Open ${D.verification_url} and enter code: ${D.user_code}`:"Switch to Device Code method and try again.";V.error(t("toasts.providerDeviceCodeInCallback")),s(I=>({...I,isAuthenticating:!1,error:v}))}else if(D.status==="error"){h();const v=D.error||"Authentication failed";V.error(v),s(I=>({...I,isAuthenticating:!1,error:v}))}}catch(b){if(!g(A)||(r.current+=1,r.current<mn))return;h();const D=b instanceof Error&&b.message.trim().length>0?b.message:t("toasts.providerLostStatusEndpoint");V.error(D),s(v=>({...v,isAuthenticating:!1,error:D}))}}},[g,l,h,t]),k=u.useCallback(async(P,S)=>{if(!Ge(P)){s({...we,error:t("toasts.providerUnknown",{provider:P})});return}o.current?.abort(),h(),m.current=!1,r.current=0;const A=new AbortController,b=i.current+1;i.current=b,o.current=A;const v=(S?.flowType||(fs(P)?"device_code":"authorization_code"))==="device_code",I=S?.startEndpoint||(v?"start":"start-url"),T={accountId:S?.accountId,nickname:S?.nickname,kiroMethod:S?.kiroMethod,kiroIDCStartUrl:S?.kiroIDCStartUrl,kiroIDCRegion:S?.kiroIDCRegion,kiroIDCFlow:S?.kiroIDCFlow,gitlabAuthMode:S?.gitlabAuthMode,gitlabBaseUrl:S?.gitlabBaseUrl,gitlabPersonalAccessToken:S?.gitlabPersonalAccessToken,riskAcknowledgement:S?.riskAcknowledgement};s({provider:P,isAuthenticating:!0,error:null,authUrl:null,oauthState:null,isSubmittingCallback:!1,isDeviceCodeFlow:v});try{if(I==="start")fetch(`/api/cliproxy/auth/${P}/start`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(T),signal:A.signal}).then(async x=>{if(!g(b))return;const R=await jt(x);if(!g(b))return;const M=R.success===!0,B=typeof R.account=="object"&&R.account!==null;if(x.ok&&M&&B)l.invalidateQueries({queryKey:["cliproxy-auth"]}),l.invalidateQueries({queryKey:["cliproxy-accounts"]}),l.invalidateQueries({queryKey:["account-quota"]}),bt(l),m.current=!1,s(we);else{const p=typeof R.error=="string"?R.error:t(M?"toasts.providerAccountRegistrationFailed":"auth.loginFailed");V.error(p),s(w=>({...w,isAuthenticating:!1,error:p}))}}).catch(x=>{if(!g(b)||x instanceof Error&&x.name==="AbortError")return;const R=x instanceof Error?x.message:"Authentication failed";V.error(R),s(M=>({...M,isAuthenticating:!1,error:R}))});else{const x=await fetch(`/api/cliproxy/auth/${P}/start-url`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(T),signal:A.signal});if(!g(b))return;const R=await jt(x);if(!g(b))return;const M=R.success===!0;if(!x.ok||!M){const w=pn(R,t("toasts.providerStartOAuthFailed"));throw new Error(w)}const B=typeof R.authUrl=="string"?R.authUrl:null,p=typeof R.state=="string"?R.state:null;if(s(w=>({...w,authUrl:B,oauthState:p})),B&&(m.current=!0,window.open(B,"_blank")),p){if(c.current=Date.now(),!B){if(await j(P,p,b),!g(b))return;const w=n.current;if(!w.isAuthenticating||w.provider!==P)return}d.current=setInterval(()=>{j(P,p,b)},cn)}}}catch(x){if(!g(b))return;if(x instanceof Error&&x.name==="AbortError"){m.current=!1,s(we);return}const R=x instanceof Error?x.message:t("auth.loginFailed");V.error(R),s(M=>({...M,isAuthenticating:!1,error:R}))}},[g,j,h,l,t]),C=u.useCallback(()=>{const P=a.provider;i.current+=1,o.current?.abort(),h(),m.current=!1,s(we),P&&st.cliproxy.auth.cancel(P).catch(()=>{})},[a.provider,h]),O=u.useCallback(async P=>{if(!a.provider)return;const S=i.current,A=a.provider;s(b=>({...b,isSubmittingCallback:!0,error:null}));try{const b=await fetch(`/api/cliproxy/auth/${A}/submit-callback`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({redirectUrl:P})});if(!g(S))return;const D=await jt(b);if(!g(S))return;const v=D.success===!0,I=D.status==="wait",T=typeof D.account=="object"&&D.account!==null;if(b.ok&&I)s(x=>({...x,isSubmittingCallback:!1,error:null}));else if(b.ok&&v&&T)h(),l.invalidateQueries({queryKey:["cliproxy-auth"]}),l.invalidateQueries({queryKey:["cliproxy-accounts"]}),l.invalidateQueries({queryKey:["account-quota"]}),bt(l),V.success(t("toasts.providerAuthSuccess",{provider:A})),s(we);else{const x=typeof D.error=="string"?D.error:t(v?"toasts.providerAccountRegistrationFailed":"toasts.providerCallbackFailed");throw new Error(x)}}catch(b){if(!g(S))return;const D=b instanceof Error?b.message:t("toasts.providerSubmitCallbackFailed");V.error(D),s(v=>({...v,isSubmittingCallback:!1,error:D}))}},[g,a.provider,l,h,t]);return u.useMemo(()=>({...a,startAuth:k,cancelAuth:C,submitCallback:O}),[a,k,C,O])}function Mt({className:t,compact:a=!1,showAcknowledgement:s=!1,acknowledgementPhrase:n=at,acknowledgementText:i="",onAcknowledgementTextChange:o,disabled:d=!1,showProxySettingsLink:c=!1}){const{t:r}=Q(),m=r("accountSafetyWarning.title"),l=r("accountSafetyWarning.subtitle"),g=r("accountSafetyWarning.firstLine"),h=r("accountSafetyWarning.secondLine"),j="https://github.com/kaitranntt/ccs/issues/509",k=r("accountSafetyWarning.issueLabel"),C=r("accountSafetyWarning.proxySettingsLabel");return a?e.jsx("section",{role:"alert",className:W("border-b border-amber-200/70 bg-amber-50/45 dark:bg-amber-950/5",t),children:e.jsxs("div",{className:"flex flex-col gap-3 px-6 py-3 lg:flex-row lg:items-start lg:justify-between",children:[e.jsxs("div",{className:"min-w-0 flex items-start gap-3",children:[e.jsx("div",{className:"mt-0.5 inline-flex h-6 w-6 items-center justify-center rounded-md bg-amber-500/12 text-amber-700 dark:text-amber-300",children:e.jsx(rt,{className:"h-3.5 w-3.5"})}),e.jsxs("div",{className:"min-w-0 space-y-1",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("p",{className:"text-xs font-semibold leading-5",children:m}),e.jsx("p",{className:"text-[11px] text-muted-foreground",children:l})]}),e.jsx("p",{className:"text-xs leading-5 text-muted-foreground",children:g}),e.jsx("p",{className:"text-xs font-medium leading-5 text-amber-900 dark:text-amber-200",children:h})]})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2 lg:justify-end",children:[e.jsxs("a",{href:j,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1 rounded-md border border-amber-500/25 bg-background/90 px-2 py-1 text-[11px] font-medium text-amber-800 transition-colors hover:bg-amber-500/10 dark:text-amber-200",children:[k,e.jsx(Me,{className:"h-3 w-3"})]}),c?e.jsxs("a",{href:"/settings?tab=proxy",className:"inline-flex items-center gap-1 rounded-md border border-amber-500/25 bg-background/90 px-2 py-1 text-[11px] font-medium text-amber-800 transition-colors hover:bg-amber-500/10 dark:text-amber-200",children:[e.jsx(ts,{className:"h-3 w-3"}),C]}):null,e.jsx(H,{variant:"outline",className:"border-amber-500/40 text-[10px] text-amber-700 dark:text-amber-300",children:"High Risk"})]})]})}):e.jsxs("section",{role:"alert",className:W("relative overflow-hidden rounded-xl border border-amber-500/30 bg-gradient-to-br from-amber-50 via-background to-rose-50/70 shadow-sm dark:from-amber-950/20 dark:to-rose-950/20",t),children:[e.jsx("div",{className:"absolute inset-x-0 top-0 h-0.5 bg-gradient-to-r from-amber-500 via-orange-500 to-rose-500"}),e.jsxs("div",{className:"space-y-3 p-4",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"flex items-start gap-2.5",children:[e.jsx("div",{className:"mt-0.5 inline-flex h-7 w-7 items-center justify-center rounded-md bg-amber-500/15 text-amber-700 dark:text-amber-400",children:e.jsx(rt,{className:"h-4 w-4"})}),e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-semibold leading-5",children:m}),e.jsx("p",{className:"text-xs text-muted-foreground",children:l})]})]}),e.jsx(H,{variant:"outline",className:"border-amber-500/40 text-amber-700 dark:text-amber-300",children:"High Risk"})]}),e.jsxs("div",{className:"space-y-2 text-sm leading-relaxed",children:[e.jsx("p",{children:g}),e.jsx("p",{className:"font-medium text-amber-900 dark:text-amber-200",children:h}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"CCS is provided as-is and does not take responsibility for suspension, bans, or access loss from upstream providers."})]}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsxs("a",{href:j,target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1.5 rounded-md border border-amber-500/30 bg-amber-500/10 px-2.5 py-1 text-xs font-medium text-amber-800 transition-colors hover:bg-amber-500/15 dark:text-amber-200",children:[k,e.jsx(Me,{className:"h-3.5 w-3.5"})]}),c&&e.jsxs("a",{href:"/settings?tab=proxy",className:"inline-flex items-center gap-1.5 rounded-md border border-amber-500/30 bg-amber-500/10 px-2.5 py-1 text-xs font-medium text-amber-800 transition-colors hover:bg-amber-500/15 dark:text-amber-200",children:[e.jsx(ts,{className:"h-3.5 w-3.5"}),C]}),e.jsx("span",{className:"rounded-md border border-border/70 bg-muted/60 px-2.5 py-1 text-xs text-muted-foreground",children:"Applies to CLI and dashboard auth"})]}),s&&o&&e.jsxs("div",{className:"rounded-lg border border-amber-500/25 bg-amber-500/5 p-2.5",children:[e.jsxs(ee,{htmlFor:"account-risk-ack-text",className:"text-xs leading-5",children:["Type exact phrase to continue:"," ",e.jsx("code",{className:"rounded bg-muted px-1 py-0.5 font-mono",children:n})]}),e.jsx(ce,{id:"account-risk-ack-text",value:i,onChange:O=>o(O.target.value),placeholder:n,disabled:d,className:"mt-2 font-mono text-xs"})]})]})]})}function hn({className:t,value:a,onChange:s,disabled:n=!1}){const{t:i}=Q(),o=[a.reviewedIssue509,a.understandsBanRisk,a.acceptsFullResponsibility,a.typedPhrase.trim().replace(/\s+/g," ").toUpperCase()===ss].filter(Boolean).length,d=o/4*100,c=r=>{s({...a,...r})};return e.jsxs("section",{role:"alert",className:W("relative overflow-hidden rounded-xl border border-rose-500/35 bg-gradient-to-br from-rose-50 via-background to-amber-50/70 p-4 shadow-sm dark:from-rose-950/20 dark:to-amber-950/20",t),children:[e.jsx("div",{className:"absolute inset-x-0 top-0 h-0.5 bg-gradient-to-r from-rose-500 via-orange-500 to-amber-500"}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{className:"flex items-start gap-2.5",children:[e.jsx("div",{className:"mt-0.5 inline-flex h-7 w-7 items-center justify-center rounded-md bg-rose-500/15 text-rose-700 dark:text-rose-300",children:e.jsx(rt,{className:"h-4 w-4"})}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-sm font-semibold leading-5",children:i("antigravityChecklist.title")}),e.jsx("p",{className:"text-xs text-muted-foreground",children:i("antigravityChecklist.subtitle")})]})]}),e.jsx(H,{variant:"outline",className:"border-rose-500/40 text-rose-700 dark:text-rose-300",children:i("antigravityChecklist.mandatory")})]}),e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs("div",{className:"flex items-center justify-between text-xs text-muted-foreground",children:[e.jsx("span",{children:i("antigravityChecklist.completion")}),e.jsx("span",{children:i("antigravityChecklist.stepsCount",{current:o})})]}),e.jsx(Ks,{value:d,className:"h-2"})]}),e.jsxs("div",{className:"space-y-3 rounded-lg border border-rose-500/20 bg-rose-500/5 p-3",children:[e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(nt,{id:"agy-step-reviewed-issue",checked:a.reviewedIssue509,onCheckedChange:r=>c({reviewedIssue509:!!r}),disabled:n}),e.jsx(ee,{htmlFor:"agy-step-reviewed-issue",className:"text-xs leading-5",children:"Step 1: I reviewed issue #509 and understand AGY OAuth can trigger account bans/suspensions."})]}),e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(nt,{id:"agy-step-understands-risk",checked:a.understandsBanRisk,onCheckedChange:r=>c({understandsBanRisk:!!r}),disabled:n}),e.jsx(ee,{htmlFor:"agy-step-understands-risk",className:"text-xs leading-5",children:"Step 2: I understand this OAuth action is my own decision and I accept the upstream risk."})]}),e.jsxs("div",{className:"flex items-start gap-2",children:[e.jsx(nt,{id:"agy-step-accept-responsibility",checked:a.acceptsFullResponsibility,onCheckedChange:r=>c({acceptsFullResponsibility:!!r}),disabled:n}),e.jsx(ee,{htmlFor:"agy-step-accept-responsibility",className:"text-xs leading-5",children:"Step 3: I accept full responsibility. CCS is not liable for suspension, bans, or access loss."})]})]}),e.jsxs("div",{className:"space-y-2 rounded-lg border border-amber-500/25 bg-amber-500/5 p-3",children:[e.jsxs("div",{className:"flex items-center gap-1.5 text-xs font-medium text-amber-800 dark:text-amber-200",children:[e.jsx(js,{className:"h-3.5 w-3.5"}),"Step 4: Type exact phrase to continue"]}),e.jsx(ce,{value:a.typedPhrase,onChange:r=>c({typedPhrase:r.target.value}),placeholder:ss,disabled:n,className:"font-mono text-xs"})]}),e.jsx("div",{className:"flex flex-wrap items-center gap-2 text-xs",children:e.jsxs("a",{href:"https://github.com/kaitranntt/ccs/issues/509",target:"_blank",rel:"noreferrer",className:"inline-flex items-center gap-1.5 rounded-md border border-rose-500/30 bg-rose-500/10 px-2.5 py-1 font-medium text-rose-800 transition-colors hover:bg-rose-500/15 dark:text-rose-200",children:["Read issue #509",e.jsx(Me,{className:"h-3.5 w-3.5"})]})})]})]})}function fn(t){return t.trim().replace(/\s+/g," ").toUpperCase()}function gn({open:t,onClose:a,provider:s,displayName:n,catalog:i,account:o,isFirstAccount:d=!1}){const[c,r]=u.useState(""),[m,l]=u.useState(""),[g,h]=u.useState(!1),[j,k]=u.useState(null),[C,O]=u.useState(""),[P,S]=u.useState(gt),[A,b]=u.useState(!1),[D,v]=u.useState(!1),[I,T]=u.useState(Wt),[x,R]=u.useState(""),[M,B]=u.useState(""),[p,w]=u.useState(Jt),[z,_]=u.useState("oauth"),[L,F]=u.useState(""),[y,Y]=u.useState(""),{t:N}=Q(),te=u.useRef(!1),se=u.useRef(0),me=u.useRef(!1),K=xn(),ie=Hs(),X=s==="kiro",Z=s==="gitlab",ae=s==="agy"||s==="gemini",pe=s==="gemini"&&!A,ge=s==="agy"&&!A,Ae=ae&&D,Se=Oa(P),f=fn(C)===at,q=fs(s),ye=zs(I),xe=X&&I==="idc",oe=X&&Vs(I),Te=X?Bs(I,p):void 0,Ve=X?Qs(I):void 0,mt=X?Te==="device_code":q,de=K.isAuthenticating||ie.isPending,pt=c.trim(),Le=x.trim(),$e=M.trim(),Qe=L.trim(),Oe=y.trim(),U=j||K.error,J=!!o,le=o?.email||o?.nickname||o?.id||n,De=u.useCallback(async()=>{const E=await fetch("/api/settings/auth/antigravity-risk");if(!E.ok)throw new Error("Failed to load power user mode setting");return(await E.json()).antigravityAckBypass===!0},[]),We=u.useCallback(async({pendingMessage:E=null,disabledMessage:ve=null}={})=>{const ht=++se.current;v(!0),E!==null&&k(E);try{const Je=await De();return se.current!==ht||(b(Je),ve?k(Je?null:ve):E!==null&&k(null)),Je}catch{return se.current!==ht||(b(!1),k(ve??N("addAccountDialog.powerUserLoadFailed")),me.current||(me.current=!0,V.error(N("addAccountDialog.powerUserLoadFailed")))),!1}finally{se.current===ht&&v(!1)}},[De,N]),xt=()=>{r(""),l(""),h(!1),k(null),O(""),S(gt),b(!1),v(!1),T(Wt),R(""),B(""),w(Jt),_("oauth"),F(""),Y(""),se.current+=1,me.current=!1,te.current=!1,a()};u.useEffect(()=>{t&&(O(""),S(gt),k(null))},[s,t]),u.useEffect(()=>()=>{se.current+=1},[]),u.useEffect(()=>{if(!t||!ae){se.current+=1,b(!1),v(!1);return}We()},[t,s,ae,We]),u.useEffect(()=>{if(!t||s!=="agy"||!K.error||!A)return;const E=K.error.toLowerCase();(E.includes("agy_risk_ack_required")||E.includes("responsibility acknowledgement")||E.includes("responsibility checklist"))&&We({pendingMessage:N("addAccountDialog.powerUserLoading"),disabledMessage:N("addAccountDialog.powerUserUnavailableRetry")})},[K.error,t,A,s,We,N]),u.useEffect(()=>{!K.isAuthenticating&&!K.error&&K.provider===null&&t&&te.current&&(te.current=!1,(async()=>{try{const ve=await St(s,void 0,i);ve.success&&ve.presetName&&d&&V.success(`Applied "${ve.presetName}" preset`)}catch{}xt()})())},[K.isAuthenticating,K.error,K.provider]);const $t=()=>{K.cancelAuth(),xt()},Ts=async()=>{K.authUrl&&(await navigator.clipboard.writeText(K.authUrl),h(!0),setTimeout(()=>h(!1),2e3))},Ds=()=>{m.trim()&&K.submitCallback(m.trim())},Es=()=>{if(Ae){k(N("addAccountDialog.powerUserLoading"));return}if(ge&&!Se){k("Complete all Antigravity responsibility steps before authenticating this provider.");return}if(pe&&!f){k(`Type "${at}" to acknowledge the account safety warning before authenticating this provider.`);return}if(k(null),xe&&!Le){k("IDC Start URL is required for Kiro IAM Identity Center login.");return}if(Z&&z==="pat"&&!Oe){k(N("addAccountDialog.gitlabPatRequired"));return}te.current=!0,K.startAuth(s,{accountId:o?.id,nickname:o?o.nickname:pt||void 0,kiroMethod:X?I:void 0,kiroIDCStartUrl:xe?Le:void 0,kiroIDCRegion:xe&&$e?$e:void 0,kiroIDCFlow:xe?p:void 0,gitlabAuthMode:Z?z:void 0,gitlabBaseUrl:Z&&Qe?Qe:void 0,gitlabPersonalAccessToken:Z&&z==="pat"&&Oe?Oe:void 0,flowType:X?Te:void 0,startEndpoint:X?Ve:Z&&z==="pat"?"start":void 0,riskAcknowledgement:ge?{version:_a,reviewedIssue509:P.reviewedIssue509,understandsBanRisk:P.understandsBanRisk,acceptsFullResponsibility:P.acceptsFullResponsibility,typedPhrase:P.typedPhrase}:void 0})},Is=()=>{te.current=!0,ie.mutate(void 0,{onSuccess:async()=>{const E=await St("kiro",void 0,i);E.success&&E.presetName&&d&&V.success(`Applied "${E.presetName}" preset`),xt()}})},Rs=E=>{E||$t()},re=K.isAuthenticating;return e.jsx(Dt,{open:t,onOpenChange:Rs,children:e.jsxs(Et,{className:"grid max-h-[calc(100dvh-2rem)] w-[calc(100vw-2rem)] max-w-md grid-rows-[auto_minmax(0,1fr)] overflow-hidden p-0 sm:max-w-md",onInteractOutside:E=>{re&&E.preventDefault()},children:[e.jsxs(It,{className:"min-w-0 px-6 pt-6 pr-12",children:[e.jsx(Rt,{children:J?`Reauthenticate ${n}`:N("addAccountDialog.title",{displayName:n})}),e.jsx(hs,{children:J?`Refresh credentials for ${le}.`:N(X?"addAccountDialog.descKiro":mt?"addAccountDialog.descDeviceCode":"addAccountDialog.descOauth")})]}),e.jsxs("div",{className:"min-h-0 space-y-4 overflow-y-auto px-6 py-4",children:[ge&&!re&&e.jsx(hn,{value:P,onChange:E=>{S(E),k(null)},disabled:de}),ae&&A&&!re&&e.jsxs("div",{className:"rounded-lg border border-amber-400/35 bg-amber-50/70 p-3 text-xs text-amber-900 dark:border-amber-800/60 dark:bg-amber-950/25 dark:text-amber-100",children:[e.jsxs("div",{className:"mb-1.5 flex items-center gap-1.5 font-semibold",children:[e.jsx(js,{className:"h-3.5 w-3.5"}),N("addAccountDialog.powerUserEnabled")]}),N("addAccountDialog.powerUserSkipped")]}),pe&&!re&&e.jsx(Mt,{showAcknowledgement:!0,acknowledgementPhrase:at,acknowledgementText:C,onAcknowledgementTextChange:E=>{O(E),k(null)},disabled:de}),X&&!re&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"kiro-auth-method",children:N("addAccountDialog.authMethod")}),e.jsxs(_e,{value:I,onValueChange:E=>{T(E),k(null)},children:[e.jsx(Fe,{id:"kiro-auth-method",children:e.jsx(qe,{placeholder:N("addAccountDialog.selectKiroAuthMethod")})}),e.jsx(Ue,{children:$s.map(E=>e.jsx(be,{value:E.id,children:E.label},E.id))})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:ye.description}),oe&&e.jsxs("p",{className:"text-xs text-muted-foreground",children:["If your browser does not return automatically after login, CCS can accept the final",e.jsx("span",{className:"mx-1 rounded bg-muted px-1.5 py-0.5 font-mono text-[11px]",children:"kiro://..."}),"callback URL in the next step."]})]}),xe&&!re&&e.jsxs("div",{className:"space-y-4 rounded-lg border border-border/60 bg-muted/20 p-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"kiro-idc-start-url",children:"IDC Start URL"}),e.jsx(ce,{id:"kiro-idc-start-url",value:x,onChange:E=>{R(E.target.value),k(null)},placeholder:"https://d-xxx.awsapps.com/start",disabled:de}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Required for organization IAM Identity Center login."})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"kiro-idc-region",children:"IDC Region"}),e.jsx(ce,{id:"kiro-idc-region",value:M,onChange:E=>{B(E.target.value),k(null)},placeholder:"us-east-1",disabled:de}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Optional. Leave blank to use the upstream default region."})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"kiro-idc-flow",children:"IDC Flow"}),e.jsxs(_e,{value:p,onValueChange:E=>{w(E),k(null)},children:[e.jsx(Fe,{id:"kiro-idc-flow",children:e.jsx(qe,{placeholder:"{/* TODO i18n: missing key */}Select IDC flow"})}),e.jsxs(Ue,{children:[e.jsx(be,{value:"authcode",children:"Authorization Code"}),e.jsx(be,{value:"device",children:"Device Code"})]})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Auth Code opens a browser and may need the final callback URL pasted back. Device Code shows a verification code instead."})]})]}),Z&&!re&&e.jsxs("div",{className:"space-y-4 rounded-lg border border-border/60 bg-muted/20 p-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"gitlab-auth-mode",children:N("addAccountDialog.gitlabAuthMethod")}),e.jsxs(_e,{value:z,onValueChange:E=>{_(E),k(null)},children:[e.jsx(Fe,{id:"gitlab-auth-mode",children:e.jsx(qe,{placeholder:N("addAccountDialog.selectGitlabAuthMethod")})}),e.jsxs(Ue,{children:[e.jsx(be,{value:"oauth",children:N("addAccountDialog.gitlabAuthOAuth")}),e.jsx(be,{value:"pat",children:N("addAccountDialog.gitlabAuthPat")})]})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:N("addAccountDialog.gitlabAuthHint")})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"gitlab-base-url",children:N("addAccountDialog.gitlabUrl")}),e.jsx(ce,{id:"gitlab-base-url",value:L,onChange:E=>{F(E.target.value),k(null)},placeholder:N("addAccountDialog.gitlabUrlPlaceholder"),disabled:de}),e.jsx("p",{className:"text-xs text-muted-foreground",children:N("addAccountDialog.gitlabUrlHint")})]}),z==="pat"&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"gitlab-pat",children:N("addAccountDialog.gitlabPat")}),e.jsx(ce,{id:"gitlab-pat",type:"password",value:y,onChange:E=>{Y(E.target.value),k(null)},placeholder:N("addAccountDialog.gitlabPatPlaceholder"),disabled:de}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:[N("addAccountDialog.gitlabPatHint")," ",e.jsx("span",{className:"font-mono",children:"api"})," and"," ",e.jsx("span",{className:"font-mono",children:"read_user"})," scopes."]})]})]}),!re&&J&&e.jsxs("div",{className:"rounded-md border bg-muted/30 px-3 py-2 text-sm",children:[e.jsx("div",{className:"font-medium",children:le}),e.jsx("div",{className:"text-xs text-muted-foreground",children:"This sign-in updates the selected account instead of creating another account."})]}),!re&&!J&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"nickname",children:N("addAccountDialog.nicknameOptional")}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(Ke,{className:"w-4 h-4 text-muted-foreground"}),e.jsx(ce,{id:"nickname",value:c,onChange:E=>{r(E.target.value),k(null)},placeholder:N("addAccountDialog.nicknamePlaceholder"),disabled:de,className:"flex-1"})]}),e.jsx("p",{className:"text-xs text-muted-foreground",children:N("addAccountDialog.nicknameOptionalHint")})]}),re&&e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"text-center",children:[e.jsxs("p",{className:"text-sm text-muted-foreground",children:[e.jsx(ue,{className:"w-4 h-4 inline mr-2 animate-spin"}),N("addAccountDialog.waitingForAuth")]}),e.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:K.isDeviceCodeFlow?N("addAccountDialog.deviceCodeHint"):oe?"Complete sign-in in your browser. If it does not return automatically, paste the final kiro:// callback URL below.":N("addAccountDialog.browserHint")})]}),K.authUrl&&!K.isDeviceCodeFlow&&e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{className:"text-xs",children:N("addAccountDialog.openUrlLabel")}),e.jsxs("div",{className:"p-3 bg-muted rounded-md",children:[e.jsx("p",{className:"text-xs text-muted-foreground break-all font-mono line-clamp-3",children:K.authUrl}),e.jsxs("div",{className:"flex gap-2 mt-2",children:[e.jsx(G,{variant:"outline",size:"sm",onClick:Ts,children:g?e.jsxs(e.Fragment,{children:[e.jsx(Pe,{className:"w-3 h-3 mr-1"}),N("addAccountDialog.copied")]}):e.jsxs(e.Fragment,{children:[e.jsx(bs,{className:"w-3 h-3 mr-1"}),N("addAccountDialog.copy")]})}),e.jsxs(G,{variant:"outline",size:"sm",onClick:()=>{if(!K.authUrl)return;const E=window.open(K.authUrl,"_blank");(!E||E.closed||typeof E.closed>"u")&&V.warning(N("addAccountDialog.popupBlocked"),{duration:5e3})},children:[e.jsx(Me,{className:"w-3 h-3 mr-1"}),N("addAccountDialog.open")]})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"callback-url",className:"text-xs",children:oe?"Browser did not return? Paste the final kiro:// callback URL:":N("addAccountDialog.redirectPasteLabel")}),e.jsx(ce,{id:"callback-url",value:m,onChange:E=>l(E.target.value),placeholder:oe?"kiro://kiro.kiroAgent/authenticate-success?code=...&state=...":N("addAccountDialog.callbackPlaceholder"),className:"font-mono text-xs"}),e.jsx(G,{variant:"secondary",size:"sm",onClick:Ds,disabled:!m.trim()||K.isSubmittingCallback,children:K.isSubmittingCallback?e.jsxs(e.Fragment,{children:[e.jsx(ue,{className:"w-3 h-3 mr-1 animate-spin"}),N("addAccountDialog.submitting")]}):N("addAccountDialog.submitCallback")})]})]}),!K.authUrl&&!K.isDeviceCodeFlow&&e.jsx("p",{className:"text-xs text-center text-muted-foreground",children:oe?"Preparing the Kiro sign-in URL. If it does not open automatically, it will appear here shortly.":N("addAccountDialog.preparingUrl")})]}),U&&e.jsx("p",{className:"text-xs text-center text-destructive whitespace-pre-line",children:U}),ie.isPending&&e.jsxs("p",{className:"text-sm text-center text-muted-foreground",children:[e.jsx(ue,{className:"w-4 h-4 inline mr-2 animate-spin"}),N("addAccountDialog.importingToken")]}),e.jsxs("div",{className:"flex flex-col-reverse gap-2 pt-2 sm:flex-row sm:items-center sm:justify-end",children:[e.jsx(G,{variant:"ghost",onClick:$t,className:"w-full sm:w-auto",children:N("addAccountDialog.cancel")}),X&&!re&&e.jsx(G,{variant:"outline",onClick:Is,disabled:de,className:"w-full sm:w-auto",children:ie.isPending?e.jsxs(e.Fragment,{children:[e.jsx(ue,{className:"w-4 h-4 mr-2 animate-spin"}),N("addAccountDialog.importing")]}):e.jsxs(e.Fragment,{children:[e.jsx(Pa,{className:"w-4 h-4 mr-2"}),N("addAccountDialog.importFromIde")]})}),!re&&e.jsxs(G,{onClick:Es,className:"w-full sm:w-auto",disabled:de||Ae||ge&&!Se||pe&&!f,children:[e.jsx(Me,{className:"w-4 h-4 mr-2"}),J?"Reauthenticate":N("addAccountDialog.authenticate")]})]})]})]})})}const vn=["ANTHROPIC_BASE_URL","ANTHROPIC_AUTH_TOKEN"];function bn(t){const a=t?.env||{};return vn.filter(s=>!a[s]?.trim())}function jn(t,a){const[s,n]=u.useState(null),[i,o]=u.useState(!1),d=Tt(),{data:c,isLoading:r,refetch:m}=os({queryKey:["settings",t],queryFn:async()=>{const p=await fetch(`/api/settings/${t}/raw`);if(!p.ok){const w=t==="cursor"?`~/.ccs/cliproxy/providers/${t}.settings.json`:Ge(t)?`~/.ccs/${t}.settings.json`:`~/.ccs/profiles/${t}/settings.json`;return{profile:t,settings:{env:{}},mtime:Date.now(),path:w}}return p.json()}}),l=c?.settings,g=u.useMemo(()=>s!==null?s:l?JSON.stringify(l,null,2):`{
3
- "env": {}
4
- }`,[s,l]),h=u.useCallback(p=>{n(p)},[]),j=u.useMemo(()=>{try{return JSON.parse(g)}catch{return l||{env:{}}}},[g,l]),k=j?.env?.ANTHROPIC_MODEL,C=j?.env?.ANTHROPIC_DEFAULT_OPUS_MODEL,O=j?.env?.ANTHROPIC_DEFAULT_SONNET_MODEL,P=j?.env?.ANTHROPIC_DEFAULT_HAIKU_MODEL,S=j?.env?.ANTHROPIC_DEFAULT_FABLE_MODEL,A=u.useMemo(()=>Ws(j?.env||{}),[j]),b=u.useCallback((p,w)=>Js(p,w,{supportsExtendedContext:z=>Za(t,z,a)}),[a,t]),D=u.useCallback((p,w)=>{const z={...j?.env||{},[p]:w},_=Xt(p)?b(z,A):z;delete _.CCS_EXTENDED_CONTEXT;const L={...j,env:_};n(JSON.stringify(L,null,2))},[b,j,A]),v=u.useCallback(p=>{const w=j?.env||{},z=b(w,p);delete z.CCS_EXTENDED_CONTEXT;const _={...j,env:z};n(JSON.stringify(_,null,2))},[b,j]),I=u.useCallback(p=>{const w={...j?.env||{},...p},_=Object.keys(p).some(Xt)?b(w,A):w;delete _.CCS_EXTENDED_CONTEXT;const L={...j,env:_};n(JSON.stringify(L,null,2))},[b,j,A]),T=u.useMemo(()=>{try{return JSON.parse(g),!0}catch{return!1}},[g]),x=u.useMemo(()=>s===null?!1:s!==JSON.stringify(l,null,2),[s,l]),R=u.useMemo(()=>bn(j),[j]),M=Ls({mutationFn:async()=>{const p=JSON.parse(g),w=await fetch(`/api/settings/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({settings:p,expectedMtime:c?.mtime})});if(w.status===409)throw new Error("CONFLICT");if(!w.ok)throw new Error("Failed to save");return w.json()},onSuccess:p=>{d.invalidateQueries({queryKey:["settings",t]}),n(null),p?.warning?V.success(fe.t("settings.saved"),{description:p.warning}):V.success(fe.t("settings.saved"))},onError:p=>{p.message==="CONFLICT"?o(!0):V.error(p.message)}}),B=async p=>{o(!1),p?(await m(),M.mutate()):n(null)};return{data:c,isLoading:r,refetch:m,rawJsonContent:g,rawJsonEdits:s,isRawJsonValid:T,hasChanges:x,currentSettings:j,currentModel:k,opusModel:C,sonnetModel:O,haikuModel:P,fableModel:S,extendedContextEnabled:A,toggleExtendedContext:v,handleRawJsonChange:h,updateEnvValue:D,updateEnvValues:I,saveMutation:{mutate:()=>M.mutate(),isPending:M.isPending},conflictDialog:i,setConflictDialog:o,handleConflictResolve:B,missingRequiredFields:R}}const Nn=/-(minimal|low|medium|high|xhigh|fast)$/i,it=["minimal","low","medium","high","xhigh"];function kn(t){return t?.trim()??""}function Be(t){let a=kn(t),s,n;for(let i=0;i<2;i+=1){const o=a.match(Nn);if(!o?.[1])break;const d=o[1].toLowerCase();if(d==="fast"){if(n)break;n="fast"}else{if(s)break;s=d}a=a.slice(0,-o[0].length)}return{baseModel:a,effort:s,serviceTier:n}}function ut(t){return Be(t).effort}function Bt(t){return Be(t).serviceTier}function Vt(t){return Be(t).baseModel}function Pt(t,a){const s=Be(t),n=s.baseModel;return!n||!a?s.serviceTier?`${n}-${s.serviceTier}`:n:[n,a,s.serviceTier].filter(Boolean).join("-")}function yn(t,a){const s=Be(t);return s.baseModel?[s.baseModel,s.effort,a?"fast":void 0].filter(Boolean).join("-"):s.baseModel}function wn(t,a,s=[],n){if(!a){const c=ut(t);return[Pt(t,c)]}const i=Vt(t),o=[],d=c=>{const r=c?Pt(i,c):i;o.push(r);for(const m of s)o.push(`${r}-${m}`)};d(void 0);for(const c of n??it)if(d(c),!n&&c===a)break;return o}function Cn(t,a){if(a?.length)return[...a];if(!t)return[...it];const s=it.indexOf(t);return it.slice(0,s+1)}function An(t,a){if(!t)return null;const s=ut(t);return s?{label:`Pinned ${s}`,explicit:!0}:{label:"Auto effort",explicit:!1}}const Ms=/\(([a-z]+)\)$/i;function Sn(t){return t?.trim().match(Ms)?.[1]?.toLowerCase()}function Ps(t){return t?.trim().replace(Ms,"")??""}function Mn(t,a){const s=Ps(t);return!s||!a?s:`${s}(${a})`}const Pn={parse:t=>ut(t),strip:t=>Vt(t),apply:(t,a)=>Pt(t,a),getOptions:(t,a)=>{const s=t?ze(a.provider,t,a):void 0;return Cn(s?.codexMaxEffort,s?.codexEfforts)}},Tn={parse:Sn,strip:Ps,apply:Mn,getOptions:(t,a)=>{if(!t)return null;const s=ze(a.provider,t,a)?.reasoningLevels;return s?.length?[...s]:null}},Dn={codex:Pn,xai:Tn};function En(t){return t?Dn[t.toLowerCase()]:void 0}const In=/^[a-zA-Z0-9][a-zA-Z0-9._:/-]*$/,Rn=/[._:/-]/;function Ln(t){const a=t.trim();return In.test(a)&&Rn.test(a)}function On({label:t}){return e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:t})}function Ye({modelId:t}){const a=An(t);return a?e.jsx(H,{variant:a.explicit?"secondary":"outline",className:"text-[9px] h-4 px-1 uppercase",children:a.label}):null}function Ze({modelId:t}){const a=Bt(t);return a?e.jsx(H,{variant:"secondary",className:"text-[9px] h-4 px-1 uppercase",children:a}):null}function et(t,a){if(!t)return"";if(!a?.prefix)return t;const s=`${a.prefix}/`;return t.startsWith(s)?t.slice(s.length):t}function tt(t,a){return a?.recommendedModelId??t}function Nt(t,a,s,n,i){return i?wn(n,t,s,a):[n]}function _n(t,a){return a?Bt(t)?"codex-fast":ut(t)?"codex-reasoning":"recommended":"recommended"}function je({label:t,description:a,value:s,onChange:n,catalog:i,allModels:o,routing:d,disabled:c}){const{t:r}=Q(),m=i?.provider==="codex",l=u.useMemo(()=>zt(i,o),[o,i]),g=u.useMemo(()=>Ya(i?.provider??"",i,o),[o,i]),h=new Set(l.map(p=>p.id)),j=u.useMemo(()=>new Map((d?.models??[]).map(p=>[p.modelId.toLowerCase(),p])),[d]),k=u.useMemo(()=>new Set(l.flatMap(p=>Nt(p.codexMaxEffort,p.codexEfforts,p.codexServiceTiers,tt(p.id,j.get(p.id.toLowerCase())),m))),[m,l,j]),C=u.useMemo(()=>j.get(et(s,d).toLowerCase()),[d,j,s]),O=p=>{const w=p.trim();return Ln(w)?{value:w,groupKey:"custom",searchText:w,triggerContent:e.jsx("span",{className:"truncate font-mono text-xs",children:w}),itemContent:e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:w}),e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:r("providerModelSelector.customModel")})]})}:null},P=l.flatMap(p=>{const w=j.get(p.id.toLowerCase());return Nt(p.codexMaxEffort,p.codexEfforts,p.codexServiceTiers,tt(p.id,w),m).map(_=>({value:_,groupKey:_n(_,m),searchText:`${_} ${p.id} ${p.name} ${w?.recommendedModelId??""}`,keywords:[p.tier??"",i?.provider??""],triggerContent:e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:_}),w?.pinnedAvailable?e.jsx(H,{variant:"secondary",className:"text-[9px] h-4 px-1 uppercase",children:w.prefix}):null,m&&e.jsx(Ye,{modelId:_}),m&&e.jsx(Ze,{modelId:_})]}),itemContent:e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:_}),p.tier==="paid"&&e.jsx(On,{label:r("providerModelSelector.paid")}),w?.unprefixedStatus==="shadowed"?e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:r("providerModelSelector.shadowed")}):null,w?.unprefixedStatus==="prefix-only"?e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:r("providerModelSelector.prefixOnly")}):null,m&&e.jsx(Ye,{modelId:_}),m&&e.jsx(Ze,{modelId:_})]})}))}),S=g.filter(p=>!h.has(p.id)).filter(p=>!k.has(tt(p.id,j.get(p.id.toLowerCase())))).flatMap(p=>{const w=j.get(p.id.toLowerCase());return Nt(void 0,void 0,void 0,tt(p.id,w),m).map(_=>({value:_,groupKey:"all",searchText:`${_} ${p.id} ${w?.recommendedModelId??""}`,keywords:[p.owned_by],triggerContent:e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:_}),w?.pinnedAvailable?e.jsx(H,{variant:"secondary",className:"text-[9px] h-4 px-1 uppercase",children:w.prefix}):null,m&&e.jsx(Ye,{modelId:_}),m&&e.jsx(Ze,{modelId:_})]}),itemContent:e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:_}),w?.unprefixedStatus==="shadowed"?e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:r("providerModelSelector.shadowed")}):null,w?.unprefixedStatus==="prefix-only"?e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:r("providerModelSelector.prefixOnly")}):null,m&&e.jsx(Ye,{modelId:_}),m&&e.jsx(Ze,{modelId:_})]})}))}),A=!!s&&!P.some(p=>p.value===s)&&!S.some(p=>p.value===s),b=s?{value:s,groupKey:"current",searchText:s,triggerContent:e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:s}),e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:r("providerModelSelector.current")})]}),itemContent:e.jsxs("div",{className:"flex min-w-0 items-center gap-2",children:[e.jsx("span",{className:"truncate font-mono text-xs",children:s}),e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:r("providerModelSelector.current")})]})}:null,D=P.length+S.length>0,v=En(i?.provider),I=v?.parse(s),T=v&&i?v.getOptions(v.strip(et(s,d)),i):null,x=T&&I&&!T.includes(I)?[...T,I]:T,R=m?Bt(s):void 0,M=m&&i&&s?ze(i.provider,Vt(et(s,d)),i):void 0,B=m&&(M?.codexServiceTiers?.includes("fast")===!0||R==="fast");return e.jsxs("div",{className:"space-y-1.5",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-xs font-medium",children:t}),a&&e.jsx("p",{className:"text-[10px] text-muted-foreground",children:a})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(qa,{value:s||void 0,onChange:n,disabled:c,placeholder:r("providerModelSelector.selectModel"),searchPlaceholder:r("searchableSelect.searchModels"),emptyText:r(D?"searchableSelect.noResults":"providerModelSelector.noModelsAvailable"),className:"min-w-0 flex-1",triggerClassName:"h-9",createOption:O,groups:[...A&&b?[{key:"current",label:e.jsx("span",{className:"text-xs text-muted-foreground",children:r("providerModelSelector.currentValue")})}]:[],{key:"recommended",label:e.jsx("span",{className:"text-xs text-primary",children:r("providerModelSelector.recommended")})},...m?[{key:"codex-reasoning",label:e.jsx("span",{className:"text-xs text-muted-foreground",children:r("providerModelSelector.codexReasoningVariants")})},{key:"codex-fast",label:e.jsx("span",{className:"text-xs text-amber-600",children:r("providerModelSelector.codexFastVariants")})}]:[],...S.length>0?[{key:"all",label:e.jsx("span",{className:"text-xs text-muted-foreground",children:r("providerModelSelector.allModelsCount",{count:S.length})})}]:[],{key:"custom",label:e.jsx("span",{className:"text-xs text-muted-foreground",children:r("providerModelSelector.customModel")})}],options:[...A&&b?[b]:[],...P,...S]}),v&&x&&e.jsxs(_e,{value:I??"auto",onValueChange:p=>n(v.apply(s,p==="auto"?void 0:p)),disabled:c||!s,children:[e.jsx(Fe,{className:"h-9 w-28 shrink-0","aria-label":r("providerModelSelector.effortLabel"),children:e.jsx(qe,{})}),e.jsxs(Ue,{children:[e.jsx(be,{value:"auto",children:r("providerModelSelector.effortAuto")}),x.map(p=>e.jsx(be,{value:p,children:p},p))]})]}),B&&e.jsxs("label",{className:"flex h-9 shrink-0 items-center gap-1.5",children:[e.jsx(Lt,{checked:R==="fast",onCheckedChange:p=>n(yn(s,p)),disabled:c||!s,"aria-label":r("providerModelSelector.fastTier")}),e.jsx("span",{className:"text-xs text-muted-foreground",children:r("providerModelSelector.fastTier")})]})]}),C?e.jsxs("div",{className:W("rounded-md border px-2.5 py-2 text-[11px]",C.unprefixedStatus==="safe"?"border-border/70 bg-muted/25 text-muted-foreground":"border-amber-300/60 bg-amber-50 text-amber-900 dark:border-amber-500/30 dark:bg-amber-950/25 dark:text-amber-100"),children:[e.jsxs("div",{className:"font-medium",children:[C.pinnedAvailable?r("providerModelSelector.preferredPinnedModel"):r("providerModelSelector.pinnedRouteStatus")," ",e.jsx("code",{children:C.pinnedAvailable?C.recommendedModelId:C.pinnedModelId})]}),e.jsx("p",{className:"mt-1 leading-5",children:C.summary})]}):null,s&&!C&&et(s,d)!==s?e.jsx("div",{className:"rounded-md border border-amber-300/60 bg-amber-50 px-2.5 py-2 text-[11px] text-amber-900 dark:border-amber-500/30 dark:bg-amber-950/25 dark:text-amber-100",children:r("providerModelSelector.pinnedModelNotAdvertised",{model:s})}):null]})}function is(t,a){const s=n=>a?.models.find(o=>o.modelId.toLowerCase()===n.toLowerCase())?.recommendedModelId??n;return{default:s(t.default),opus:s(t.opus),sonnet:s(t.sonnet),haiku:s(t.haiku)}}function Fn({open:t,onClose:a,currentValues:s,onApply:n,onSave:i,isSaving:o,catalog:d,allModels:c,routing:r}){const{t:m}=Q(),[l,g]=u.useState(is(s,r)),[h,j]=u.useState(""),k=C=>{C?(g(is(s,r)),j("")):a()};return e.jsx(Dt,{open:t,onOpenChange:k,children:e.jsxs(Et,{className:"sm:max-w-md",children:[e.jsx(It,{children:e.jsxs(Rt,{className:"flex items-center gap-2",children:[e.jsx(qt,{className:"w-4 h-4"}),m("customPresetDialog.title")]})}),e.jsxs("div",{className:"space-y-4 py-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(ee,{htmlFor:"preset-name",children:m("customPresetDialog.presetNameOptional")}),e.jsx(ce,{id:"preset-name",value:h,onChange:C=>j(C.target.value),placeholder:m("customPresetDialog.presetNamePlaceholder"),className:"text-sm"})]}),e.jsx(Kt,{}),d?.provider==="codex"&&e.jsxs("p",{className:"text-[11px] text-muted-foreground rounded-md border bg-muted/30 px-2.5 py-2",children:[m("customPresetDialog.codexTipPrefix")," ",e.jsx("code",{children:"-medium"}),", ",e.jsx("code",{children:"-high"}),", and"," ",e.jsx("code",{children:"-xhigh"})," ",m("customPresetDialog.codexTipSuffix")]}),e.jsx(je,{label:m("customPresetDialog.defaultModel"),description:m("customPresetDialog.defaultModelDesc"),value:l.default,onChange:C=>g({...l,default:C}),catalog:d,allModels:c,routing:r}),e.jsx(je,{label:m("customPresetDialog.opusModel"),description:m("customPresetDialog.opusModelDesc"),value:l.opus,onChange:C=>g({...l,opus:C}),catalog:d,allModels:c,routing:r}),e.jsx(je,{label:m("customPresetDialog.sonnetModel"),description:m("customPresetDialog.sonnetModelDesc"),value:l.sonnet,onChange:C=>g({...l,sonnet:C}),catalog:d,allModels:c,routing:r}),e.jsx(je,{label:m("customPresetDialog.haikuModel"),description:m("customPresetDialog.haikuModelDesc"),value:l.haiku,onChange:C=>g({...l,haiku:C}),catalog:d,allModels:c,routing:r})]}),e.jsxs(Xs,{className:"gap-2 sm:gap-0",children:[e.jsx(G,{variant:"outline",onClick:a,children:m("customPresetDialog.cancel")}),i&&e.jsxs(G,{variant:"secondary",onClick:()=>i(l,h||void 0),disabled:o||!h.trim(),children:[o?e.jsx(ue,{className:"w-4 h-4 mr-1 animate-spin"}):e.jsx(Ut,{className:"w-4 h-4 mr-1"}),m("customPresetDialog.savePreset")]}),e.jsxs(G,{onClick:()=>n(l,h||void 0),children:[e.jsx(He,{className:"w-4 h-4 mr-1"}),m("customPresetDialog.applyPreset")]})]})]})})}function Ce({label:t,command:a}){return e.jsxs("div",{children:[e.jsx("label",{className:"text-xs text-muted-foreground",children:t}),e.jsxs("div",{className:"mt-1 flex gap-2",children:[e.jsx("code",{className:"flex-1 px-2 py-1.5 bg-muted rounded text-xs font-mono truncate",children:a}),e.jsx(gs,{value:a,size:"icon",className:"h-6 w-6"})]})]})}function qn({provider:t,displayName:a,baseProvider:s,defaultTarget:n,data:i,authStatus:o,supportsModelConfig:d=!1}){const{t:c}=Q(),r=n||"claude",m=r==="droid",l=t==="codex",g=s||o.provider||t,h=Ys(g),j=r==="claude"?`ccs ${t}`:`ccs ${t} --target claude`,k=`${j} --config`,C=`${j} --auth --add`,O=`${j} --accounts`;return e.jsx(Ot,{className:"h-full",children:e.jsxs("div",{className:"p-4 space-y-6",children:[e.jsxs("div",{children:[e.jsxs("h3",{className:"text-sm font-medium flex items-center gap-2 mb-3",children:[e.jsx(Ns,{className:"w-4 h-4"}),"Provider Information"]}),e.jsxs("div",{className:"space-y-3 bg-card rounded-lg border p-4 shadow-sm",children:[e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("providerEditor.provider")}),e.jsx("span",{className:"font-mono",children:a})]}),i&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("providerEditor.filePath")}),e.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.jsx("code",{className:"bg-muted px-1.5 py-0.5 rounded text-xs break-all",children:i.path}),e.jsx(gs,{value:i.path,size:"icon",className:"h-5 w-5"})]})]}),e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("providerEditor.lastModified")}),e.jsx("span",{className:"text-xs",children:new Date(i.mtime).toLocaleString()})]})]}),e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("providerEditor.status")}),o.authenticated?e.jsxs(H,{variant:"outline",className:"w-fit text-green-600 border-green-200 bg-green-50",children:[e.jsx(Ta,{className:"w-3 h-3 mr-1"}),"Authenticated"]}):e.jsx(H,{variant:"outline",className:"w-fit text-muted-foreground",children:"Not connected"})]}),e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-center",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("providerEditor.defaultTarget")}),e.jsx("span",{className:"font-mono",children:r})]}),h&&e.jsxs("div",{className:"grid grid-cols-[100px_1fr] gap-2 text-sm items-start",children:[e.jsx("span",{className:"font-medium text-muted-foreground",children:c("providerConfig.trackLabel")}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("span",{className:"font-mono",children:c(h.labelKey)}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:[c(h.hintKey),Zs(g)?` ${c("providerConfig.plusTrackNote")}`:""]})]})]})]})]}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-medium mb-3",children:c("providerEditor.quickUsage")}),e.jsxs("div",{className:"space-y-3 bg-card rounded-lg border p-4 shadow-sm",children:[e.jsx(Ce,{label:"Run with prompt",command:`ccs ${t} "your prompt"`}),l&&e.jsxs(e.Fragment,{children:[e.jsx(Ce,{label:"Run on native Codex (shortcut)",command:'ccsxp "your prompt"'}),e.jsx(Ce,{label:"Run on native Codex (--target)",command:`ccs ${t} --target codex "your prompt"`})]}),e.jsx(Ce,{label:m?"Droid alias (explicit)":"Run on Droid",command:`ccs-droid ${t} "your prompt"`}),e.jsx(Ce,{label:m?"Override to Claude":"Run on Droid (--target)",command:`ccs ${t} --target ${m?"claude":"droid"} "your prompt"`}),d&&e.jsx(Ce,{label:r==="claude"?"Change model":"Change model (Claude target)",command:k}),e.jsx(Ce,{label:r==="claude"?"Add account":"Add account (Claude target)",command:C}),e.jsx(Ce,{label:r==="claude"?"List accounts":"List accounts (Claude target)",command:O}),r!=="claude"&&e.jsx("p",{className:"text-xs text-muted-foreground",children:"Account and model-management flags stay on Claude target. Codex and Droid runtime launches reject those CLIProxy management commands."})]})]})]})})}function Un(t){const a=t.replace(/\\/g,"/"),n=a.lastIndexOf("/cliproxy/providers/");return n!==-1?a.slice(n+1):a.replace(/^.*\//,"")}function Gn({displayName:t,logoProvider:a,provider:s,data:n,isLoading:i,hasChanges:o,isRawJsonValid:d,isSaving:c,isRemoteMode:r,port:m,onRefetch:l,onSave:g}){const{t:h}=Q();return e.jsxs("div",{className:"px-6 py-4 border-b bg-background flex items-center justify-between shrink-0",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(_t,{provider:a||s,size:"lg"}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h2",{className:"text-lg font-semibold",children:t}),r&&e.jsxs(H,{variant:"secondary",className:"text-xs gap-1 bg-blue-100 text-blue-700 dark:bg-blue-900/30 dark:text-blue-400",children:[e.jsx(ks,{className:"w-3 h-3"}),"Remote"]}),m&&e.jsxs(H,{variant:"outline",className:"text-xs gap-1 font-mono",children:[e.jsx(Da,{className:"w-3 h-3"}),":",m]}),!r&&n?.path&&e.jsx(H,{variant:"outline",className:"text-xs",children:Un(n.path)})]}),r?e.jsx("p",{className:"text-xs text-blue-600 dark:text-blue-400 mt-0.5",children:"Traffic auto-routed to remote server"}):n&&e.jsxs("p",{className:"text-xs text-muted-foreground mt-0.5",children:[h("providerEditor.lastModified"),": ",new Date(n.mtime).toLocaleString()]})]})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(G,{variant:"ghost",size:"sm",onClick:l,disabled:i,children:e.jsx(lt,{className:`w-4 h-4 ${i?"animate-spin":""}`})}),e.jsx(G,{size:"sm",onClick:g,disabled:c||!o||!d,children:c?e.jsxs(e.Fragment,{children:[e.jsx(ue,{className:"w-4 h-4 mr-1 animate-spin"}),"Saving..."]}):e.jsxs(e.Fragment,{children:[e.jsx(Ea,{className:"w-4 h-4 mr-1"}),"Save"]})})]})]})}function Kn({models:t,provider:a,enabled:s,onToggle:n,disabled:i,className:o}){const{t:d}=Q();if(t.length===0)return null;const c=t.some(l=>Yt(l.id)),r=t.some(l=>!Yt(l.id));let m="Compatible mappings stay on standard context unless you turn this on.";return c&&r?m="Gemini-compatible mappings can use 1M automatically. Claude mappings stay plain unless you turn this on.":c&&(m="Gemini-compatible mappings can use 1M by default. Turn this off to keep standard context."),e.jsxs("div",{className:W("rounded-lg border p-3 space-y-2",s?"border-primary/50 bg-primary/5":"border-border bg-muted/30",o),children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(He,{className:W("w-4 h-4",s?"text-primary":"text-muted-foreground")}),e.jsx("span",{className:"text-sm font-medium",children:d("extendedContext.extendedContext")}),e.jsx(H,{variant:s?"default":"secondary",className:"text-[10px] h-5 px-1.5",children:"1M tokens"})]}),e.jsx(Lt,{checked:s,onCheckedChange:n,disabled:i})]}),e.jsxs("div",{className:"flex items-start gap-2 text-xs text-muted-foreground",children:[e.jsx(Ns,{className:"w-3.5 h-3.5 mt-0.5 shrink-0"}),e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{children:["Applies the explicit ",e.jsx("code",{children:"[1m]"})," long-context suffix to compatible saved mappings."]}),e.jsx("p",{className:"text-[10px]",children:m}),e.jsxs("p",{className:"text-amber-600 dark:text-amber-500",children:["CCS only saves ",e.jsx("code",{children:"[1m]"}),". Provider pricing and entitlement are separate, and some accounts can still return 429 extra-usage errors for long-context requests."]})]})]})]})}function Hn(t,a){const s=t.presetMapping||{default:t.id,opus:t.id,sonnet:t.id,haiku:t.id};return{ANTHROPIC_MODEL:a(s.default),ANTHROPIC_DEFAULT_OPUS_MODEL:a(s.opus),ANTHROPIC_DEFAULT_SONNET_MODEL:a(s.sonnet),ANTHROPIC_DEFAULT_HAIKU_MODEL:a(s.haiku)}}function zn({catalog:t,savedPresets:a,currentModel:s,opusModel:n,sonnetModel:i,haikuModel:o,fableModel:d,providerModels:c,routing:r,provider:m,extendedContextEnabled:l,onExtendedContextToggle:g,onApplyPreset:h,onUpdateEnvValue:j,onOpenCustomPreset:k,onDeletePreset:C,isDeletePending:O}){const{t:P}=Q(),S=(r?.models??[]).some(x=>x.pinnedAvailable),A=u.useMemo(()=>new Map((r?.models??[]).map(x=>[x.modelId.toLowerCase(),x])),[r]),b=x=>A.get(x.toLowerCase())?.recommendedModelId??x,D=u.useMemo(()=>{if(!t)return[];const x=[s,n,i,o,d].filter(M=>!!M).map(M=>ea(M));return[...new Set(x)].map(M=>ze(t.provider,M,t)).filter(M=>!!M?.extendedContext)},[t,s,n,i,o,d]),v=u.useMemo(()=>zt(t,c),[t,c]),I=u.useMemo(()=>{const x=v.filter(M=>M.presetMapping);return x.length===0?[]:x.some(M=>M.tier==="paid")?[{key:"free",label:"Free Tier",description:"Available on free or paid plans",badgeClassName:"text-[10px] bg-green-100 text-green-700 border-green-200",iconClassName:"text-green-600",models:x.filter(M=>M.tier!=="paid")},{key:"paid",label:"Paid Tier",description:"Requires paid access",badgeClassName:"text-[10px] bg-amber-100 text-amber-700 border-amber-200",iconClassName:"text-amber-700",models:x.filter(M=>M.tier==="paid")}].filter(M=>M.models.length>0):[{key:"default",models:x.slice(0,4)}]},[v]),T=I.length>0||a.length>0;return e.jsxs(e.Fragment,{children:[T&&e.jsxs("div",{children:[e.jsxs("h3",{className:"text-sm font-medium mb-2 flex items-center gap-2",children:[e.jsx(qt,{className:"w-4 h-4"}),"Presets"]}),e.jsx("p",{className:"text-xs text-muted-foreground mb-3",children:P("providerEditor.presets")}),e.jsxs("div",{className:"space-y-4",children:[I.map(x=>e.jsxs("div",{children:["label"in x&&x.label&&e.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[e.jsx(H,{variant:"outline",className:x.badgeClassName,children:x.label}),e.jsx("span",{className:"text-[10px] text-muted-foreground",children:x.description})]}),e.jsx("div",{className:"flex flex-wrap gap-2",children:x.models.map(R=>e.jsxs(G,{variant:"outline",size:"sm",className:"text-xs h-7 gap-1",onClick:()=>h(Hn(R,b)),children:[e.jsx(He,{className:`w-3 h-3 ${"iconClassName"in x?x.iconClassName:""}`}),R.name]},R.id))})]},x.key)),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[a.map(x=>e.jsxs("div",{className:"group relative",children:[e.jsxs(G,{variant:"secondary",size:"sm",className:"text-xs h-7 gap-1 pr-6",onClick:()=>{h({ANTHROPIC_MODEL:b(x.default),ANTHROPIC_DEFAULT_OPUS_MODEL:b(x.opus),ANTHROPIC_DEFAULT_SONNET_MODEL:b(x.sonnet),ANTHROPIC_DEFAULT_HAIKU_MODEL:b(x.haiku)})},children:[e.jsx(Ut,{className:"w-3 h-3 fill-current"}),x.name]}),e.jsx(G,{variant:"ghost",size:"icon",className:"absolute right-0 top-0 h-7 w-5 opacity-0 group-hover:opacity-100 hover:text-destructive",onClick:R=>{R.stopPropagation(),C(x.name)},disabled:O,children:e.jsx(Gt,{className:"w-3 h-3"})})]},x.name)),e.jsxs(G,{variant:"outline",size:"sm",className:"text-xs h-7 gap-1 border-primary/50 text-primary hover:bg-primary/10 hover:border-primary",onClick:k,children:[e.jsx(ct,{className:"w-3 h-3"}),"Custom"]})]})]})]}),e.jsx(Kt,{}),e.jsxs("div",{children:[e.jsx("h3",{className:"text-sm font-medium mb-2",children:P("providerEditor.modelMapping")}),e.jsx("p",{className:"text-xs text-muted-foreground mb-4",children:"Configure which models to use for each tier"}),r?e.jsx("p",{className:"text-[11px] text-muted-foreground mb-3 rounded-md border bg-muted/30 px-2.5 py-2",children:S?e.jsxs(e.Fragment,{children:["Preferred pinned model names use the ",e.jsxs("code",{children:[r.prefix,"/"]})," prefix. Unprefixed names can still resolve to a different backend when providers overlap."]}):e.jsxs(e.Fragment,{children:["Managed pinning for ",e.jsxs("code",{children:[r.prefix,"/"]})," is not currently advertised by the proxy. Unprefixed names may still be ambiguous until prefix repair completes."]})}):null,m==="codex"&&e.jsxs("p",{className:"text-[11px] text-muted-foreground mb-3 rounded-md border bg-muted/30 px-2.5 py-2",children:["Codex tip: suffixes ",e.jsx("code",{children:"-minimal"}),", ",e.jsx("code",{children:"-low"}),", ",e.jsx("code",{children:"-medium"}),","," ",e.jsx("code",{children:"-high"}),", and ",e.jsx("code",{children:"-xhigh"})," pin reasoning effort. ",e.jsx("code",{children:"-fast"})," ","enables the Codex fast service tier on models that support it, including combined forms such as ",e.jsx("code",{children:"gpt-5.4-high-fast"}),"."]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx(je,{label:"Default Model",description:"Used when no specific tier is requested",value:s,onChange:x=>j("ANTHROPIC_MODEL",x),catalog:t,allModels:c,routing:r}),D.length>0&&g&&e.jsx(Kn,{models:D,provider:m,enabled:l??!1,onToggle:g}),e.jsx(je,{label:"Fable (Frontier)",description:"Maps the fable subagent tier; leave empty to keep the native Claude Fable model",value:d,onChange:x=>j("ANTHROPIC_DEFAULT_FABLE_MODEL",x),catalog:t,allModels:c,routing:r}),e.jsx(je,{label:"Opus (Most capable)",description:"For complex reasoning tasks",value:n,onChange:x=>j("ANTHROPIC_DEFAULT_OPUS_MODEL",x),catalog:t,allModels:c,routing:r}),e.jsx(je,{label:"Sonnet (Balanced)",description:"Balance of speed and capability",value:i,onChange:x=>j("ANTHROPIC_DEFAULT_SONNET_MODEL",x),catalog:t,allModels:c,routing:r}),e.jsx(je,{label:"Haiku (Fast)",description:"Quick responses for simple tasks",value:o,onChange:x=>j("ANTHROPIC_DEFAULT_HAIKU_MODEL",x),catalog:t,allModels:c,routing:r})]})]})]})}function Bn(t,a,s){return t?e.jsx(kt,{children:e.jsxs(yt,{children:[e.jsx(wt,{asChild:!0,children:e.jsxs("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[e.jsx(Ra,{className:"w-3 h-3","aria-hidden":"true"}),e.jsx("span",{className:W("font-mono max-w-[180px] truncate",a&&Ne),title:t,children:t})]})}),e.jsx(Ct,{side:"bottom",children:e.jsx("p",{className:"text-xs",children:s("providerEditor.gcpProjectIdReadonly")})})]})}):e.jsx(kt,{children:e.jsxs(yt,{children:[e.jsx(wt,{asChild:!0,children:e.jsxs("div",{className:"flex items-center gap-1 text-xs text-amber-600 dark:text-amber-500",children:[e.jsx(rt,{className:"w-3 h-3","aria-label":"Warning"}),e.jsx("span",{children:s("providerEditor.projectIdNA")})]})}),e.jsx(Ct,{side:"bottom",className:"max-w-[250px]",children:e.jsxs("div",{className:"text-xs space-y-1",children:[e.jsx("p",{className:"font-medium text-amber-600",children:s("providerEditor.missingProjectId")}),e.jsx("p",{children:s("providerEditor.missingProjectIdHint")})]})})]})})}function Vn({account:t,onSetDefault:a,onRemove:s,onReauth:n,onPauseToggle:i,isRemoving:o,isPausingAccount:d,privacyMode:c,showQuota:r,selectable:m,selected:l,onSelectChange:g}){const{t:h}=Q(),j=t.provider.toLowerCase(),{data:k}=ta(r),{data:C,isLoading:O}=sa(j,t.id,r),P=aa(k,t)?.lastUsedAt,S=m||i?e.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[m&&e.jsx("button",{type:"button",onClick:()=>g?.(!l),className:W("flex items-center justify-center w-5 h-5 rounded border-2 transition-colors shrink-0",l?"bg-primary border-primary text-primary-foreground":"border-muted-foreground/30 hover:border-primary/50"),"aria-label":l?"Deselect account":"Select account",children:l&&e.jsx(Pe,{className:"w-3 h-3"})}),i&&e.jsx(kt,{children:e.jsxs(yt,{children:[e.jsx(wt,{asChild:!0,children:e.jsx(G,{variant:"ghost",size:"icon",className:"h-7 w-7 shrink-0",onClick:()=>i(!t.paused),disabled:d,children:d?e.jsx(ue,{className:"w-4 h-4 animate-spin"}):t.paused?e.jsx(ys,{className:"w-4 h-4 text-emerald-500"}):e.jsx(ws,{className:"w-4 h-4 text-muted-foreground hover:text-foreground"})})}),e.jsx(Ct,{side:"top",children:t.paused?"Resume account":"Pause account"})]})})]}):void 0,A=e.jsxs(na,{children:[e.jsx(ia,{asChild:!0,children:e.jsx(G,{variant:"ghost",size:"icon",className:"h-7 w-7 shrink-0",children:e.jsx(Ia,{className:"w-4 h-4"})})}),e.jsxs(ra,{align:"end",children:[!t.isDefault&&e.jsxs(ft,{onClick:a,children:[e.jsx(Ut,{className:"w-4 h-4 mr-2"}),"Set as default"]}),n&&e.jsxs(ft,{onClick:n,children:[e.jsx(lt,{className:"w-4 h-4 mr-2"}),"Reauthenticate"]}),e.jsxs(ft,{className:"text-destructive focus:text-destructive",onClick:s,disabled:o,children:[e.jsx(Cs,{className:"w-4 h-4 mr-2"}),o?"Removing...":"Remove account"]})]})]});return e.jsx("div",{className:W("rounded-lg border p-3 transition-colors overflow-hidden",t.isDefault?"border-primary/30 bg-primary/5":"border-border hover:bg-muted/30",t.paused&&"opacity-75",l&&"ring-2 ring-primary/50 bg-primary/5"),children:e.jsx(oa,{mode:"detailed",provider:t.provider,accountId:t.id,email:t.email,displayEmail:t.email||t.id,tokenFile:t.tokenFile,tier:t.tier,isDefault:t.isDefault,paused:t.paused,privacyMode:c,showQuota:r,quota:C,quotaLoading:O,runtimeLastUsed:P,beforeIdentity:S,headerEnd:A,bodySlot:t.provider==="agy"?Bn(t.projectId,c,h):null,quotaInsetClassName:"pl-11"})})}function $n({selectedCount:t,onPauseSelected:a,onResumeSelected:s,onClearSelection:n,isPausing:i,isResuming:o}){if(t<1)return null;const d=i||o;return e.jsxs("div",{className:"flex items-center gap-3 p-2 bg-muted/50 rounded-lg border mt-2",children:[e.jsxs("span",{className:"text-sm text-muted-foreground",children:[t," selected"]}),e.jsx(G,{variant:"ghost",size:"sm",className:"text-xs h-6 px-2",onClick:n,disabled:d,children:"Clear"}),e.jsxs("div",{className:"flex gap-2 ml-auto",children:[e.jsxs(G,{size:"sm",variant:"outline",className:"h-7 text-xs gap-1",onClick:a,disabled:d,children:[i?e.jsx(ue,{className:"w-3 h-3 animate-spin"}):e.jsx(ws,{className:"w-3 h-3"}),"Pause Selected"]}),e.jsxs(G,{size:"sm",variant:"outline",className:"h-7 text-xs gap-1",onClick:s,disabled:d,children:[o?e.jsx(ue,{className:"w-3 h-3 animate-spin"}):e.jsx(ys,{className:"w-3 h-3"}),"Resume Selected"]})]})]})}function Qn({accounts:t,onAddAccount:a,onReauthAccount:s,onSetDefault:n,onRemoveAccount:i,onPauseToggle:o,onSoloMode:d,onBulkPause:c,onBulkResume:r,isRemovingAccount:m,isPausingAccount:l,isSoloingAccount:g,isBulkPausing:h,isBulkResuming:j,privacyMode:k,showQuota:C,isKiro:O,kiroNoIncognito:P,onKiroNoIncognitoChange:S,kiroSettingsLoading:A}){const{t:b}=Q(),[D,v]=u.useState(new Set),I=u.useMemo(()=>new Set(t.map(y=>y.id)),[t]),T=u.useMemo(()=>new Set([...D].filter(y=>I.has(y))),[D,I]),x=!!(c&&r),R=T.size,M=t.length>0&&T.size===t.length,B=T.size>0&&T.size<t.length,p=u.useCallback(y=>{v(Y=>{const N=new Set(Y);return N.has(y)?N.delete(y):N.add(y),N})},[]),w=u.useCallback(()=>{v(new Set(t.map(y=>y.id)))},[t]),z=u.useCallback(()=>{v(new Set)},[]),_=u.useCallback(()=>{M?z():w()},[M,w,z]),L=u.useCallback(()=>{c&&T.size>0&&(c(Array.from(T)),v(new Set))},[c,T]),F=u.useCallback(()=>{r&&T.size>0&&(r(Array.from(T)),v(new Set))},[r,T]);return e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between mb-3",children:[e.jsxs("h3",{className:"text-sm font-medium flex items-center gap-2",children:[x&&t.length>0&&e.jsx(nt,{checked:M,onCheckedChange:_,"aria-label":"Select all accounts",className:B?"data-[state=checked]:bg-primary/50":"",...B?{"data-state":"indeterminate"}:{}}),e.jsx(Ke,{className:"w-4 h-4"}),b("providerEditor.accounts"),t.length>0&&e.jsx(H,{variant:"secondary",className:"text-xs",children:t.length})]}),e.jsxs(G,{variant:"default",size:"sm",className:"h-7 text-xs gap-1",onClick:a,children:[e.jsx(ct,{className:"w-3 h-3"}),b("providerEditor.addAccount")]})]}),x&&R>0&&e.jsx($n,{selectedCount:R,onPauseSelected:L,onResumeSelected:F,onClearSelection:z,isPausing:!!h,isResuming:!!j}),t.length>0?e.jsx("div",{className:"space-y-2",children:t.map(y=>e.jsx(Vn,{account:y,onSetDefault:()=>n(y.id),onRemove:()=>i(y.id),onReauth:s?()=>s(y):void 0,onPauseToggle:o?Y=>o(y.id,Y):void 0,onSoloMode:d?()=>d(y.id):void 0,isRemoving:m,isPausingAccount:l,isSoloingAccount:g,privacyMode:k,showQuota:C,selectable:x,selected:T.has(y.id),onSelectChange:()=>p(y.id)},y.id))}):e.jsxs("div",{className:"py-6 text-center text-muted-foreground bg-muted/30 rounded-lg border border-dashed",children:[e.jsx(Ke,{className:"w-8 h-8 mx-auto mb-2 opacity-50"}),e.jsx("p",{className:"text-sm",children:b("providerEditor.noAccountsConnected")}),e.jsx("p",{className:"text-xs opacity-70",children:b("providerEditor.addAccountToStart")})]}),O&&S&&e.jsx("div",{className:"mt-3 pt-3 border-t border-dashed",children:e.jsxs("div",{className:"flex items-center justify-between gap-3",children:[e.jsxs("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e.jsx(ks,{className:"w-3.5 h-3.5"}),e.jsx("span",{children:b("providerEditor.useIncognito")})]}),e.jsx(Lt,{checked:!P,onCheckedChange:y=>S(!y),disabled:A,className:"scale-90"})]})})]})}function Wn({provider:t,catalog:a,savedPresets:s,currentModel:n,opusModel:i,sonnetModel:o,haikuModel:d,fableModel:c,providerModels:r,routing:m,extendedContextEnabled:l,onExtendedContextToggle:g,onApplyPreset:h,onUpdateEnvValue:j,onOpenCustomPreset:k,onDeletePreset:C,isDeletePending:O,accounts:P,onAddAccount:S,onReauthAccount:A,onSetDefault:b,onRemoveAccount:D,onPauseToggle:v,onSoloMode:I,onBulkPause:T,onBulkResume:x,isRemovingAccount:R,isPausingAccount:M,isSoloingAccount:B,isBulkPausing:p,isBulkResuming:w,privacyMode:z,isRemoteMode:_}){const L=t.toLowerCase(),F=(da.includes(L)||["anthropic","antigravity","gemini-cli","copilot","github-copilot"].includes(L))&&!_,y=t==="kiro",[Y,N]=u.useState(!0),[te,se]=u.useState(!0),[me,K]=u.useState(!1),ie=u.useCallback(async()=>{if(y)try{se(!0);const ae=(await st.config.get()).cliproxy;N(ae?.kiro_no_incognito??!0)}catch{N(!0)}finally{se(!1)}},[y]),X=u.useCallback(async Z=>{N(Z),K(!0);try{const ae=await st.config.get(),pe=ae.cliproxy??{};await st.config.update({...ae,cliproxy:{...pe,kiro_no_incognito:Z}})}catch{N(!Z)}finally{K(!1)}},[]);return u.useEffect(()=>{ie()},[ie]),e.jsx(Ot,{className:"flex-1",children:e.jsxs("div",{className:"p-4 space-y-6",children:[e.jsx(zn,{catalog:a,savedPresets:s,currentModel:n,opusModel:i,sonnetModel:o,haikuModel:d,fableModel:c,providerModels:r,routing:m,provider:t,extendedContextEnabled:l,onExtendedContextToggle:g,onApplyPreset:h,onUpdateEnvValue:j,onOpenCustomPreset:k,onDeletePreset:C,isDeletePending:O}),e.jsx(Kt,{}),e.jsx(Qn,{accounts:P,onAddAccount:S,onReauthAccount:A,onSetDefault:b,onRemoveAccount:D,onPauseToggle:v,onSoloMode:I,onBulkPause:T,onBulkResume:x,isRemovingAccount:R,isPausingAccount:M,isSoloingAccount:B,isBulkPausing:p,isBulkResuming:w,privacyMode:z,showQuota:F,isKiro:y,kiroNoIncognito:Y,onKiroNoIncognitoChange:X,kiroSettingsLoading:te||me})]})})}function rs({provider:t,displayName:a,authStatus:s,catalog:n,routing:i,logoProvider:o,baseProvider:d,isRemoteMode:c,port:r,defaultTarget:m,topNotice:l,onAddAccount:g,onReauthAccount:h,onSetDefault:j,onRemoveAccount:k,onPauseToggle:C,onSoloMode:O,onBulkPause:P,onBulkResume:S,isRemovingAccount:A,isPausingAccount:b,isSoloingAccount:D,isBulkPausing:v,isBulkResuming:I}){const[T,x]=u.useState(!1),{privacyMode:R}=xs(),{t:M}=Q(),{data:B}=la(),{data:p}=ca(t),w=ua(),z=ma(),_=d||t,L=_.toLowerCase()==="agy",F=u.useMemo(()=>{const U=p?.presets||[];return L?U.filter(J=>!he(J.default)&&!he(J.opus)&&!he(J.sonnet)&&!he(J.haiku)):U},[L,p?.presets]),y=u.useMemo(()=>{if(!B?.models)return[];const J={gemini:["google"],agy:["antigravity"],codex:["openai"],cursor:["cursor"],gitlab:["gitlab","duo"],codebuddy:["codebuddy"],qwen:["alibaba","qwen"],iflow:["iflow"],kilo:["kilo"],qoder:["qoder"],kiro:["kiro","aws"],ghcp:["github","copilot"],kimi:["kimi","moonshot"]}[_.toLowerCase()]||[_.toLowerCase()];return B.models.filter(le=>J.some(De=>le.owned_by.toLowerCase().includes(De))?L?!he(le.id):!0:!1)},[L,B,_]),Y=(d||t).toLowerCase(),{data:N,isLoading:te,refetch:se,rawJsonContent:me,rawJsonEdits:K,isRawJsonValid:ie,hasChanges:X,currentModel:Z,opusModel:ae,sonnetModel:pe,haikuModel:ge,fableModel:Ae,extendedContextEnabled:Se,toggleExtendedContext:f,handleRawJsonChange:q,updateEnvValue:ye,updateEnvValues:xe,saveMutation:oe,conflictDialog:Te,handleConflictResolve:Ve,missingRequiredFields:mt}=jn(t,n),de=u.useMemo(()=>(s.accounts||[]).map(U=>({...U,provider:U.provider||d||t})),[s.accounts,d,t]),{data:pt}=os({queryKey:["auth-tokens-raw"],queryFn:async()=>{const U=await fetch("/api/settings/auth/tokens/raw");return U.ok?U.json():{apiKey:{value:"ccs-internal-managed"}}},staleTime:6e4}),Le=pt?.apiKey?.value??"ccs-internal-managed",$e=U=>{if(L&&[U.ANTHROPIC_MODEL,U.ANTHROPIC_DEFAULT_OPUS_MODEL,U.ANTHROPIC_DEFAULT_SONNET_MODEL,U.ANTHROPIC_DEFAULT_HAIKU_MODEL].some(le=>typeof le=="string"&&he(le))){V.error(M("providerEditor.agyDenylist"));return}xe({ANTHROPIC_BASE_URL:`http://127.0.0.1:${r??At}/api/provider/${Y}`,ANTHROPIC_AUTH_TOKEN:Le,...U}),V.success(`Applied "${U.ANTHROPIC_MODEL?.split("/").pop()||"preset"}" preset`)},Qe=(U,J)=>{if(L&&[U.default,U.opus,U.sonnet,U.haiku].some(De=>he(De))){V.error(M("providerEditor.agyDenylist"));return}xe({ANTHROPIC_BASE_URL:`http://127.0.0.1:${r??At}/api/provider/${Y}`,ANTHROPIC_AUTH_TOKEN:Le,ANTHROPIC_MODEL:U.default,ANTHROPIC_DEFAULT_OPUS_MODEL:U.opus,ANTHROPIC_DEFAULT_SONNET_MODEL:U.sonnet,ANTHROPIC_DEFAULT_HAIKU_MODEL:U.haiku}),V.success(`Applied ${J?`"${J}"`:"custom"} preset`),x(!1)},Oe=(U,J)=>{if(!J){V.error(fe.t("commonToast.enterPresetName"));return}if(L&&[U.default,U.opus,U.sonnet,U.haiku].some(le=>he(le))){V.error(M("providerEditor.agyDenylist"));return}w.mutate({profile:t,data:{name:J,...U}}),x(!1)};return e.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[e.jsx(Gn,{provider:t,displayName:a,logoProvider:o,data:N,isLoading:te,hasChanges:X,isRawJsonValid:ie,isSaving:oe.isPending,isRemoteMode:c,port:r,onRefetch:se,onSave:()=>oe.mutate()}),l?e.jsx("div",{className:"border-b bg-muted/10 px-4 py-3",children:l}):null,te?e.jsxs("div",{className:"flex-1 flex items-center justify-center",children:[e.jsx(ue,{className:"w-8 h-8 animate-spin text-muted-foreground"}),e.jsx("span",{className:"ml-3 text-muted-foreground",children:M("providerEditor.loadingSettings")})]}):e.jsxs("div",{className:"min-h-0 flex-1 grid grid-cols-[40%_60%] divide-x overflow-hidden",children:[e.jsx("div",{className:"flex min-h-0 min-w-0 flex-col overflow-hidden bg-muted/5",children:e.jsxs(pa,{defaultValue:"config",className:"h-full flex flex-col",children:[e.jsx("div",{className:"px-4 pt-4 shrink-0",children:e.jsxs(xa,{className:"w-full",children:[e.jsx(Zt,{value:"config",className:"flex-1",children:"Model Config"}),e.jsx(Zt,{value:"info",className:"flex-1",children:"Info & Usage"})]})}),e.jsxs("div",{className:"flex-1 overflow-hidden flex flex-col",children:[e.jsx(es,{value:"config",className:"flex-1 mt-0 border-0 p-0 data-[state=inactive]:hidden flex flex-col overflow-hidden",children:e.jsx(Wn,{provider:t,catalog:n,savedPresets:F,currentModel:Z,opusModel:ae,sonnetModel:pe,haikuModel:ge,fableModel:Ae,providerModels:y,routing:i,extendedContextEnabled:Se,onExtendedContextToggle:f,onApplyPreset:$e,onUpdateEnvValue:ye,onOpenCustomPreset:()=>x(!0),onDeletePreset:U=>z.mutate({profile:t,name:U}),isDeletePending:z.isPending,accounts:de,onAddAccount:g,onReauthAccount:h,onSetDefault:j,onRemoveAccount:k,onPauseToggle:C,onSoloMode:O,onBulkPause:P,onBulkResume:S,isRemovingAccount:A,isPausingAccount:b,isSoloingAccount:D,isBulkPausing:v,isBulkResuming:I,privacyMode:R,isRemoteMode:c})}),e.jsx(es,{value:"info",className:"h-full mt-0 border-0 p-0 data-[state=inactive]:hidden",children:e.jsx(qn,{provider:t,displayName:a,baseProvider:d,defaultTarget:m,data:N,authStatus:s,supportsModelConfig:!!n})})]})]})}),e.jsxs("div",{className:"flex min-h-0 min-w-0 flex-col overflow-hidden",children:[e.jsxs("div",{className:"px-6 py-2 bg-muted/30 border-b flex items-center gap-2 shrink-0 h-[45px]",children:[e.jsx(La,{className:"w-4 h-4 text-muted-foreground"}),e.jsxs("span",{className:"text-sm font-medium text-muted-foreground",children:[M("rawEditorSection.rawConfig")," (JSON)"]})]}),e.jsx(ha,{rawJsonContent:me,isRawJsonValid:ie,rawJsonEdits:K,onRawJsonChange:q,profileEnv:N?.settings?.env,missingRequiredFields:mt})]})]}),e.jsx(Fa,{open:Te,title:"File Modified Externally",description:"This settings file was modified by another process. Overwrite with your changes or discard?",confirmText:"Overwrite",variant:"destructive",onConfirm:()=>Ve(!0),onCancel:()=>Ve(!1)}),e.jsx(Fn,{open:T,onClose:()=>x(!1),currentValues:{default:Z||"",opus:ae||"",sonnet:pe||"",haiku:ge||""},onApply:Qe,onSave:Oe,isSaving:w.isPending,catalog:n,allModels:y,routing:i})]})}function Jn({status:t,isSelected:a,onSelect:s}){const{t:n}=Q(),i=t.accounts?.length||0;return e.jsxs("button",{className:W("w-full flex items-center gap-3 px-3 py-2.5 rounded-lg transition-colors cursor-pointer text-left",a?"bg-primary/10 border border-primary/20":"hover:bg-muted border border-transparent"),onClick:s,children:[e.jsx(_t,{provider:t.provider,size:"md"}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"font-medium text-sm truncate",children:t.displayName}),i>0&&e.jsx(H,{variant:"secondary",className:"text-[10px] h-4 px-1",children:i})]}),e.jsx("div",{className:"flex items-center gap-1.5 mt-0.5",children:t.authenticated?e.jsxs(e.Fragment,{children:[e.jsx(Pe,{className:"w-3 h-3 text-green-600"}),e.jsx("span",{className:"text-xs text-green-600",children:n("cliproxyPage.connected")})]}):e.jsxs(e.Fragment,{children:[e.jsx(Gt,{className:"w-3 h-3 text-muted-foreground"}),e.jsx("span",{className:"text-xs text-muted-foreground",children:n("cliproxyPage.notConnected")})]})})]})]})}function Xn({variant:t,parentAuth:a,isSelected:s,onSelect:n,onDelete:i,isDeleting:o}){const{t:d}=Q(),c=()=>{n()};return e.jsxs("div",{role:"button",tabIndex:0,className:W("group w-full flex items-center gap-3 px-3 py-2 rounded-lg transition-colors cursor-pointer text-left pl-6",s?"bg-primary/10 border border-primary/20":"hover:bg-muted border border-transparent"),onClick:c,onKeyDown:r=>{(r.key==="Enter"||r.key===" ")&&(r.preventDefault(),c())},children:[e.jsxs("div",{className:"relative",children:[e.jsx(_t,{provider:t.provider,size:"sm"}),e.jsx(ot,{className:"w-2.5 h-2.5 absolute -bottom-0.5 -right-0.5 text-muted-foreground"})]}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"font-medium text-sm truncate",children:t.name}),e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1",children:d("cliproxyPage.variant")}),e.jsx(H,{variant:"outline",className:"text-[9px] h-4 px-1 uppercase",children:t.target||"claude"})]}),e.jsx("div",{className:"flex items-center gap-1.5 mt-0.5",children:a?.authenticated?e.jsxs(e.Fragment,{children:[e.jsx(Pe,{className:"w-3 h-3 text-green-600"}),e.jsx("span",{className:"text-xs text-muted-foreground truncate",children:d("cliproxyPage.viaProvider",{provider:t.provider})})]}):e.jsxs(e.Fragment,{children:[e.jsx(Gt,{className:"w-3 h-3 text-muted-foreground"}),e.jsx("span",{className:"text-xs text-muted-foreground",children:d("cliproxyPage.parentNotConnected")})]})})]}),e.jsx(G,{variant:"ghost",size:"icon",className:"h-6 w-6 opacity-0 group-hover:opacity-100 hover:text-destructive",onClick:r=>{r.stopPropagation(),i()},disabled:o,children:e.jsx(Cs,{className:"w-3 h-3"})})]})}function Yn({onAddAccount:t,onCreateVariant:a}){const{t:s}=Q();return e.jsx("div",{className:"flex-1 flex items-center justify-center bg-muted/20",children:e.jsxs("div",{className:"text-center max-w-md px-8",children:[e.jsx("div",{className:"w-16 h-16 rounded-full bg-muted flex items-center justify-center mx-auto mb-6",children:e.jsx(He,{className:"w-8 h-8 text-muted-foreground"})}),e.jsx("h2",{className:"text-xl font-semibold mb-2",children:s("cliproxyPage.emptyTitle")}),e.jsx("p",{className:"text-muted-foreground mb-4",children:s("cliproxyPage.emptyDesc")}),e.jsxs("p",{className:"text-xs text-muted-foreground mb-6",children:[s("cliproxyPage.emptyControlPanelPrefix")," ",e.jsx("a",{href:"/cliproxy/control-panel",className:"text-primary hover:underline",children:s("cliproxyPage.controlPanel")}),"."]}),e.jsxs("div",{className:"flex flex-col justify-center gap-2 sm:flex-row",children:[e.jsxs(G,{onClick:t,className:"gap-2",children:[e.jsx(ct,{className:"w-4 h-4"}),s("cliproxyPage.addAccount")]}),e.jsxs(G,{onClick:a,variant:"outline",className:"gap-2",children:[e.jsx(ot,{className:"w-4 h-4"}),s("cliproxyPage.advancedVariant")]})]})]})})}function gi(){const{t}=Q(),a=Tt(),{data:s,isLoading:n}=ms(),{data:i,isFetching:o}=fa(),{data:d}=ps(),{data:c}=ga(),r=va(),m=ba(),l=ja(),g=Na(),h=ka(),j=ya(),k=wa(),C=Ca(),[O,P]=u.useState(()=>{if(typeof window<"u"){const q=new URLSearchParams(window.location.search).get("provider")?.trim().toLowerCase();return q&&Ge(q)?q:localStorage.getItem("cliproxy-selected-provider")}return null}),[S,A]=u.useState(null),[b,D]=u.useState(!1),[v,I]=u.useState(()=>{if(typeof window>"u")return null;const f=new URLSearchParams(window.location.search),q=f.get("provider")?.trim().toLowerCase();return f.get("action")!=="auth"||!q||!Ge(q)?null:{provider:q,displayName:Xe(q),isFirstAccount:!1}}),T=u.useMemo(()=>s?.authStatus||[],[s?.authStatus]),x=u.useMemo(()=>Aa(T,f=>f.provider),[T]),R=s?.source==="remote",M=u.useMemo(()=>i?.variants||[],[i?.variants]),B=u.useMemo(()=>Ht(d?.catalogs),[d?.catalogs]),p=d?.routing??{},w=!!d,z=f=>{P(f),f&&localStorage.setItem("cliproxy-selected-provider",f)},_=u.useMemo(()=>S?null:O&&T.some(f=>f.provider===O)?O:T.length>0&&(T.find(q=>(q.accounts?.length||0)>0)?.provider||T[0]?.provider)||null,[O,S,T]),L=T.find(f=>f.provider===_),F=M.find(f=>f.name===S),y=F?T.find(f=>f.provider===F.provider):void 0,Y=F&&y?{provider:F.provider,displayName:y.displayName,accountCount:y.accounts?.length||0}:L?{provider:L.provider,displayName:L.displayName,accountCount:L.accounts?.length||0}:null,N=F?{provider:F.provider,displayName:Xe(F.provider),accountCount:0}:O&&Ge(O)?{provider:O,displayName:Xe(O),accountCount:0}:{provider:"gemini",displayName:Xe("gemini"),accountCount:0},te=Y??N,se=(F?.provider||L?.provider||"").toLowerCase().trim(),me=se==="gemini"||se==="agy",K=()=>{a.invalidateQueries({queryKey:["cliproxy"]}),a.invalidateQueries({queryKey:["cliproxy-auth"]}),a.invalidateQueries({queryKey:["cliproxy-catalog"]}),a.invalidateQueries({queryKey:["cliproxy-models"]})},ie=(f,q,ye)=>{l.isPending||g.isPending||(ye?l.mutate({provider:f,accountId:q}):g.mutate({provider:f,accountId:q}))},X=(f,q)=>{h.isPending||h.mutate({provider:f,accountId:q})},Z=(f,q)=>{j.isPending||j.mutate({provider:f,accountIds:q})},ae=(f,q)=>{k.isPending||k.mutate({provider:f,accountIds:q})},pe=f=>{z(f),A(null)},ge=f=>{A(f),z(null)},Ae=()=>{I({provider:te.provider,displayName:te.displayName,isFirstAccount:te.accountCount===0})},Se=(f,q,ye,xe)=>{const oe=ye?.find(Te=>Te.id===xe);oe&&I({provider:f,displayName:q,isFirstAccount:!1,account:oe})};return e.jsxs("div",{className:"flex h-full min-h-0 overflow-hidden",children:[e.jsxs("div",{className:"w-80 border-r flex flex-col bg-muted/30",children:[e.jsxs("div",{className:"p-4 border-b bg-background",children:[e.jsxs("div",{className:"flex items-center justify-between mb-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(He,{className:"w-5 h-5 text-primary"}),e.jsx("h1",{className:"font-semibold",children:c?.backendLabel??"CLIProxy"})]}),e.jsx(G,{variant:"ghost",size:"icon",className:"h-8 w-8",onClick:K,disabled:o,children:e.jsx(lt,{className:W("w-4 h-4",o&&"animate-spin")})})]}),e.jsx("p",{className:"text-xs text-muted-foreground mb-3",children:t("cliproxyPage.accountManagement")}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs(G,{variant:"default",size:"sm",className:"w-full gap-2",onClick:Ae,children:[e.jsx(ct,{className:"w-4 h-4"}),t("cliproxyPage.addAccount")]}),e.jsxs(G,{variant:"outline",size:"sm",className:"w-full gap-2",onClick:()=>D(!0),children:[e.jsx(ot,{className:"w-4 h-4"}),t("cliproxyPage.advancedVariant")]}),e.jsx("p",{className:"text-[11px] leading-relaxed text-muted-foreground",children:t("cliproxyPage.setupActionsHint")})]})]}),e.jsx(Ot,{className:"flex-1",children:e.jsxs("div",{className:"p-2",children:[e.jsx("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide px-3 py-2",children:t("cliproxyPage.providers")}),n?e.jsx("div",{className:"space-y-2 px-2",children:[1,2,3,4].map(f=>e.jsx(Sa,{className:"h-14 w-full rounded-lg"},f))}):e.jsx("div",{className:"space-y-4",children:x.map(f=>e.jsxs("div",{className:"space-y-1",children:[e.jsxs("div",{className:"px-3",children:[e.jsx("div",{className:"text-[11px] font-medium uppercase tracking-wide text-muted-foreground",children:t(f.labelKey)}),e.jsx("p",{className:"mt-1 text-[11px] leading-relaxed text-muted-foreground",children:t(f.hintKey)})]}),e.jsx("div",{className:"space-y-1",children:f.items.map(q=>e.jsx(Jn,{status:q,isSelected:_===q.provider,onSelect:()=>pe(q.provider)},q.provider))})]},f.id))}),M.length>0&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wide px-3 py-2 mt-4 flex items-center gap-1.5",children:[e.jsx(ot,{className:"w-3 h-3"}),t("cliproxyPage.variants")]}),e.jsx("div",{className:"space-y-1",children:M.map(f=>e.jsx(Xn,{variant:f,parentAuth:T.find(q=>q.provider===f.provider),isSelected:S===f.name,onSelect:()=>ge(f.name),onDelete:()=>C.mutate(f.name),isDeleting:C.isPending},f.name))})]})]})}),e.jsx("div",{className:"p-3 border-t",children:e.jsx(Ua,{})}),e.jsx("div",{className:"p-3 border-t bg-background text-xs text-muted-foreground",children:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{children:t("cliproxyPage.providerCount",{count:T.length})}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(Pe,{className:"w-3 h-3 text-green-600"}),t("cliproxyPage.connectedCount",{count:T.filter(f=>f.authenticated).length})]})]})})]}),e.jsx("div",{className:"flex-1 flex min-w-0 flex-col overflow-hidden bg-background",children:F&&y?e.jsx(e.Fragment,{children:e.jsx(rs,{provider:F.name,displayName:t("cliproxyPage.variantDisplay",{name:F.name,provider:F.provider}),authStatus:y,catalog:B[F.provider],routing:p[F.provider],logoProvider:F.provider,baseProvider:F.provider,defaultTarget:F.target,isRemoteMode:R,port:F.port,topNotice:me?e.jsx(Mt,{compact:!0,showProxySettingsLink:!0}):void 0,onAddAccount:()=>I({provider:F.provider,displayName:y.displayName,isFirstAccount:(y.accounts?.length||0)===0}),onReauthAccount:f=>Se(F.provider,y.displayName,y.accounts,f.id),onSetDefault:f=>r.mutate({provider:F.provider,accountId:f}),onRemoveAccount:f=>m.mutate({provider:F.provider,accountId:f}),onPauseToggle:(f,q)=>ie(F.provider,f,q),onSoloMode:f=>X(F.provider,f),onBulkPause:f=>Z(F.provider,f),onBulkResume:f=>ae(F.provider,f),isRemovingAccount:m.isPending,isPausingAccount:l.isPending||g.isPending,isSoloingAccount:h.isPending,isBulkPausing:j.isPending,isBulkResuming:k.isPending})}):L?e.jsx(e.Fragment,{children:e.jsx(rs,{provider:L.provider,displayName:L.displayName,authStatus:L,catalog:B[L.provider],routing:p[L.provider],isRemoteMode:R,topNotice:me?e.jsx(Mt,{compact:!0,showProxySettingsLink:!0}):void 0,onAddAccount:()=>I({provider:L.provider,displayName:L.displayName,isFirstAccount:(L.accounts?.length||0)===0}),onReauthAccount:f=>Se(L.provider,L.displayName,L.accounts,f.id),onSetDefault:f=>r.mutate({provider:L.provider,accountId:f}),onRemoveAccount:f=>m.mutate({provider:L.provider,accountId:f}),onPauseToggle:(f,q)=>ie(L.provider,f,q),onSoloMode:f=>X(L.provider,f),onBulkPause:f=>Z(L.provider,f),onBulkResume:f=>ae(L.provider,f),isRemovingAccount:m.isPending,isPausingAccount:l.isPending||g.isPending,isSoloingAccount:h.isPending,isBulkPausing:j.isPending,isBulkResuming:k.isPending})}):e.jsx(Yn,{onAddAccount:Ae,onCreateVariant:()=>D(!0)})}),e.jsx(ln,{open:b,onClose:()=>D(!1)}),e.jsx(gn,{open:v!==null,onClose:()=>I(null),provider:v?.provider||"",displayName:v?.displayName||"",catalog:w&&v?.provider?B[v.provider]:void 0,isFirstAccount:v?.isFirstAccount||!1,account:v?.account})]})}export{gi as CliproxyPage};