@kaitranntt/ccs 7.51.0-dev.10 → 7.51.0-dev.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cliproxy/config/env-builder.d.ts.map +1 -1
- package/dist/cliproxy/config/env-builder.js +5 -8
- package/dist/cliproxy/config/env-builder.js.map +1 -1
- package/dist/cliproxy/model-catalog.d.ts.map +1 -1
- package/dist/cliproxy/model-catalog.js +8 -0
- package/dist/cliproxy/model-catalog.js.map +1 -1
- package/dist/cliproxy/model-id-normalizer.d.ts +7 -0
- package/dist/cliproxy/model-id-normalizer.d.ts.map +1 -1
- package/dist/cliproxy/model-id-normalizer.js +47 -3
- package/dist/cliproxy/model-id-normalizer.js.map +1 -1
- package/dist/cliproxy/services/variant-service.d.ts.map +1 -1
- package/dist/cliproxy/services/variant-service.js +13 -9
- package/dist/cliproxy/services/variant-service.js.map +1 -1
- package/dist/ui/assets/{accounts-C0a1t7jn.js → accounts-C461-bYH.js} +1 -1
- package/dist/ui/assets/{alert-dialog-CdeUwye7.js → alert-dialog-DpjPV6hi.js} +1 -1
- package/dist/ui/assets/{api-C9zwFFut.js → api-DjGF8-45.js} +1 -1
- package/dist/ui/assets/{auth-section-DN4BD8GL.js → auth-section-a4QIr8Cu.js} +1 -1
- package/dist/ui/assets/{backups-section-CybLESWH.js → backups-section-JcABaxvV.js} +1 -1
- package/dist/ui/assets/{checkbox-vEe6qcYo.js → checkbox-DCwR0qqq.js} +1 -1
- package/dist/ui/assets/{cliproxy-BqfDDSqL.js → cliproxy-CvT_CrEG.js} +2 -2
- package/dist/ui/assets/{cliproxy-control-panel-Bge72LT-.js → cliproxy-control-panel-DwnkIgNd.js} +1 -1
- package/dist/ui/assets/{confirm-dialog-OyJIM_hE.js → confirm-dialog-DY2Ziz3R.js} +1 -1
- package/dist/ui/assets/{copilot-CkAJrz8o.js → copilot-4Z8LP3vC.js} +1 -1
- package/dist/ui/assets/{cursor-C9LZa_BA.js → cursor-DGcuUa4B.js} +1 -1
- package/dist/ui/assets/{droid-QWGtb0RV.js → droid-C5Rebf4T.js} +1 -1
- package/dist/ui/assets/{globalenv-section-DOFqIs-8.js → globalenv-section-C8zXrVbd.js} +1 -1
- package/dist/ui/assets/{health-C3ElQ1Lv.js → health-B82MeRXO.js} +1 -1
- package/dist/ui/assets/{index-eLGkeVzr.js → index-BIAXf19X.js} +1 -1
- package/dist/ui/assets/{index-Bz6l7LGz.js → index-CsbQfRnG.js} +2 -2
- package/dist/ui/assets/{index-3GEclgP5.js → index-D09dhWOP.js} +1 -1
- package/dist/ui/assets/{index-CMCDJeIA.js → index-vh-9Yvr6.js} +1 -1
- package/dist/ui/assets/{index-BAKFUe-l.js → index-z8fzygJg.js} +1 -1
- package/dist/ui/assets/{proxy-status-widget-srJDTpWy.js → proxy-status-widget-K1IwJ8u6.js} +1 -1
- package/dist/ui/assets/{separator-CmlWHN0k.js → separator-BBQkLglZ.js} +1 -1
- package/dist/ui/assets/{shared-COklsZr3.js → shared-bTrmCnMf.js} +1 -1
- package/dist/ui/assets/{switch-Cv3ybiIH.js → switch-D9kCIDCe.js} +1 -1
- package/dist/ui/assets/{updates-CGOjPqS1.js → updates-CIkkbMYB.js} +1 -1
- package/dist/ui/index.html +1 -1
- package/dist/web-server/routes/route-helpers.d.ts.map +1 -1
- package/dist/web-server/routes/route-helpers.js +66 -29
- package/dist/web-server/routes/route-helpers.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as e}from"./radix-ui-BR1vy4kf.js";import{r as c}from"./react-vendor-CNOkPC89.js";import{be as F,bf as U,a as A,I as K,bg as _,b7 as z,b9 as B,n as q,d as T}from"./index-Bz6l7LGz.js";import{S as D}from"./switch-Cv3ybiIH.js";import{N as Y,k as J,r as Q,q as X,n as Z,R as y,a3 as V,u as ee,aQ as se}from"./icons-kPbuhVdj.js";import"./tanstack-e99Cjjy2.js";import"./notifications-B2HqRBj7.js";import"./utils-CzKF5WmX.js";import"./form-utils-Cn_Uld6y.js";import"./code-highlight-BRUf_pqB.js";function te(){const{state:s}=F(),t=U(),[o,g]=c.useState(""),[r,d]=c.useState(""),[x,p]=c.useState(!1),[j,f]=c.useState(!1),S=c.useCallback(async()=>{try{t.setWebSearchLoading(!0),t.setWebSearchError(null);const a=await fetch("/api/websearch");if(!a.ok)throw new Error("Failed to load WebSearch config");const n=await a.json();t.setWebSearchConfig(n)}catch(a){t.setWebSearchError(a.message)}finally{t.setWebSearchLoading(!1)}},[t]),v=c.useCallback(async()=>{try{t.setWebSearchStatusLoading(!0);const a=await fetch("/api/websearch/status");if(!a.ok)throw new Error("Failed to load status");const n=await a.json();t.setWebSearchStatus(n)}catch{}finally{t.setWebSearchStatusLoading(!1)}},[t]),b=c.useCallback(async a=>{const n=s.webSearchConfig;if(!n)return;const w={...n,...a};t.setWebSearchConfig(w);try{t.setWebSearchSaving(!0),t.setWebSearchError(null);const l=await fetch("/api/websearch",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(w)});if(!l.ok){const k=await l.json();throw new Error(k.error||"Failed to save")}const i=await l.json();t.setWebSearchConfig(i.websearch),t.setWebSearchSuccess(!0),setTimeout(()=>t.setWebSearchSuccess(!1),1500)}catch(l){t.setWebSearchConfig(n),t.setWebSearchError(l.message)}finally{t.setWebSearchSaving(!1)}},[s.webSearchConfig,t]);c.useEffect(()=>{s.webSearchConfig&&(g(s.webSearchConfig.providers?.gemini?.model??"gemini-2.5-flash"),d(s.webSearchConfig.providers?.opencode?.model??"opencode/grok-code"))},[s.webSearchConfig]);const C=c.useCallback(async()=>{const a=s.webSearchConfig?.providers?.gemini?.model??"gemini-2.5-flash";if(o!==a){const n=s.webSearchConfig?.providers||{};await b({providers:{...n,gemini:{...n.gemini,model:o}}}),p(!0),setTimeout(()=>p(!1),2e3)}},[o,s.webSearchConfig,b]),h=c.useCallback(async()=>{const a=s.webSearchConfig?.providers?.opencode?.model??"opencode/grok-code";if(r!==a){const n=s.webSearchConfig?.providers||{};await b({providers:{...n,opencode:{...n.opencode,model:r}}}),f(!0),setTimeout(()=>f(!1),2e3)}},[r,s.webSearchConfig,b]);return{config:s.webSearchConfig,status:s.webSearchStatus,loading:s.webSearchLoading,statusLoading:s.webSearchStatusLoading,saving:s.webSearchSaving,error:s.webSearchError,success:s.webSearchSuccess,geminiModelInput:o,setGeminiModelInput:g,opencodeModelInput:r,setOpencodeModelInput:d,geminiModelSaved:x,opencodeModelSaved:j,fetchConfig:S,fetchStatus:v,saveConfig:b,saveGeminiModel:C,saveOpencodeModel:h}}function H({name:s,label:t,badge:o,badgeColor:g,enabled:r,installed:d,statusLoading:x,saving:p,onToggle:j,modelInput:f,setModelInput:S,onModelBlur:v,modelSaved:b,modelPlaceholder:C,showHint:h,setShowHint:a,installCmd:n,docsUrl:w,hintColor:l}){const{t:i}=A(),k=g==="green"?"bg-green-500/10 text-green-600":g==="blue"?"bg-blue-500/10 text-blue-600":"bg-purple-500/10 text-purple-600",W=l==="amber"?"bg-amber-50 dark:bg-amber-900/20 text-amber-700 dark:text-amber-300":l==="blue"?"bg-blue-50 dark:bg-blue-900/20 text-blue-700 dark:text-blue-300":"bg-purple-50 dark:bg-purple-900/20 text-purple-700 dark:text-purple-300",E=l==="amber"?"bg-amber-100 dark:bg-amber-900/40":l==="blue"?"bg-blue-100 dark:bg-blue-900/40":"bg-purple-100 dark:bg-purple-900/40",M=l==="amber"?"text-amber-600 dark:text-amber-400":l==="blue"?"text-blue-600 dark:text-blue-400":"text-purple-600 dark:text-purple-400",G=s==="opencode"?"OpenCode":s.charAt(0).toUpperCase()+s.slice(1);return e.jsxs("div",{className:`rounded-lg border transition-colors ${r?"border-primary border-l-4":"border-border"}`,children:[e.jsxs("div",{className:"flex items-center justify-between p-4",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(Y,{className:`w-5 h-5 ${r?"text-primary":"text-muted-foreground"}`}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("p",{className:"font-mono font-medium",children:s}),e.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded font-medium ${k}`,children:o}),d?e.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-green-500/10 text-green-600 font-medium",children:i("settingsWebsearch.installed")}):e.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-amber-500/10 text-amber-600 font-medium",children:i("settingsWebsearch.notInstalled")})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t})]})]}),e.jsx(D,{checked:r,onCheckedChange:j,disabled:p||!d})]}),r&&f!==void 0&&S&&v&&e.jsx("div",{className:"px-4 pb-4 pt-0",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("label",{className:"text-sm text-muted-foreground whitespace-nowrap",children:i("settingsWebsearch.model")}),e.jsx(K,{value:f,onChange:I=>S(I.target.value),onBlur:v,placeholder:C,className:"h-8 text-sm font-mono",disabled:p}),b&&e.jsxs("span",{className:"flex items-center gap-1 text-green-600 dark:text-green-400 text-xs animate-in fade-in duration-200",children:[e.jsx(J,{className:"w-3.5 h-3.5"}),i("settings.saved")]})]})}),!d&&!x&&e.jsxs("div",{className:"px-4 pb-4 pt-0 border-t border-border/50",children:[e.jsxs("button",{onClick:()=>a(!h),className:`flex items-center gap-2 text-sm hover:underline w-full py-2 ${M}`,children:[h?e.jsx(Q,{className:"w-4 h-4"}):e.jsx(X,{className:"w-4 h-4"}),i("settingsWebsearch.howInstall",{name:G})]}),h&&e.jsxs("div",{className:`mt-2 p-3 rounded-md text-sm ${W}`,children:[e.jsxs("p",{className:"mb-2",children:[i("settingsWebsearch.installGlobally")," ",i(o==="GROK_API_KEY"?"settingsWebsearch.requiresKey":"settingsWebsearch.freeTier"),":"]}),e.jsx("code",{className:`text-sm px-2 py-1 rounded font-mono block mb-2 ${E}`,children:n}),e.jsxs("a",{href:w,target:"_blank",rel:"noopener noreferrer",className:"hover:underline inline-flex items-center gap-1",children:[e.jsx(Z,{className:"w-3 h-3"}),i("settingsWebsearch.viewDocs")]})]})]})]})}function be(){const{t:s}=A(),{config:t,status:o,loading:g,statusLoading:r,saving:d,error:x,success:p,geminiModelInput:j,setGeminiModelInput:f,opencodeModelInput:S,setOpencodeModelInput:v,geminiModelSaved:b,opencodeModelSaved:C,fetchConfig:h,fetchStatus:a,saveConfig:n,saveGeminiModel:w,saveOpencodeModel:l}=te(),{fetchRawConfig:i}=_(),[k,W]=c.useState(!1),[E,M]=c.useState(!1),[G,I]=c.useState(!1);c.useEffect(()=>{h(),a(),i()},[h,a,i]);const N=t?.providers?.gemini?.enabled??!1,O=t?.providers?.grok?.enabled??!1,L=t?.providers?.opencode?.enabled??!1,R=()=>{const m=t?.providers||{},u=m.gemini?.enabled??!1;n({enabled:!u||O||L,providers:{...m,gemini:{...m.gemini,enabled:!u}}})},$=()=>{const m=t?.providers||{},u=m.grok?.enabled??!1;n({enabled:N||!u||L,providers:{...m,grok:{...m.grok,enabled:!u}}})},P=()=>{const m=t?.providers||{},u=m.opencode?.enabled??!1;n({enabled:N||O||!u,providers:{...m,opencode:{...m.opencode,enabled:!u}}})};return g?e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsxs("div",{className:"flex items-center gap-3 text-muted-foreground",children:[e.jsx(y,{className:"w-5 h-5 animate-spin"}),e.jsx("span",{children:s("settings.loading")})]})}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:`absolute left-5 right-5 top-20 z-10 transition-all duration-200 ease-out ${x||p?"opacity-100 translate-y-0":"opacity-0 -translate-y-2 pointer-events-none"}`,children:[x&&e.jsxs(z,{variant:"destructive",className:"py-2 shadow-lg",children:[e.jsx(V,{className:"h-4 w-4"}),e.jsx(B,{children:x})]}),p&&e.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 rounded-md border border-green-200 bg-green-50 text-green-700 shadow-lg dark:border-green-900/50 dark:bg-green-900/90 dark:text-green-300",children:[e.jsx(ee,{className:"h-4 w-4 shrink-0"}),e.jsx("span",{className:"text-sm font-medium",children:s("settings.saved")})]})]}),e.jsx(q,{className:"flex-1",children:e.jsxs("div",{className:"p-5 space-y-6",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:s("settingsWebsearch.description")}),e.jsxs("div",{className:"flex items-center justify-between p-4 rounded-lg bg-muted/50",children:[e.jsxs("div",{children:[e.jsx("p",{className:"font-medium",children:s(N?"settingsWebsearch.enabled":"settingsWebsearch.disabled")}),r?e.jsx("p",{className:"text-sm text-muted-foreground",children:s("settingsWebsearch.checking")}):o?.readiness?e.jsx("p",{className:"text-sm text-muted-foreground",children:o.readiness.message}):null]}),e.jsx(T,{variant:"ghost",size:"sm",onClick:a,disabled:r,children:e.jsx(y,{className:`w-4 h-4 ${r?"animate-spin":""}`})})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsx("h3",{className:"text-base font-medium",children:s("settingsWebsearch.providers")}),!o?.geminiCli&&!o?.opencodeCli&&!o?.grokCli&&!r&&e.jsxs("div",{className:"flex flex-col items-center justify-center p-8 border-2 border-dashed rounded-lg text-center bg-muted/30",children:[e.jsx(se,{className:"w-12 h-12 text-muted-foreground mb-3 opacity-30"}),e.jsx("p",{className:"font-medium text-foreground mb-1",children:s("settingsWebsearch.noneConfigured")}),e.jsx("p",{className:"text-sm text-muted-foreground mb-4",children:s("settingsWebsearch.noneConfiguredHint")}),e.jsxs(T,{variant:"outline",size:"sm",onClick:a,children:[e.jsx(y,{className:"w-4 h-4 mr-2"}),s("settingsWebsearch.checkProviders")]})]}),e.jsx(H,{name:"gemini",label:"Google Gemini CLI (1000 req/day free)",badge:"FREE",badgeColor:"green",enabled:N,installed:o?.geminiCli?.installed??!1,statusLoading:r,saving:d,onToggle:R,modelInput:j,setModelInput:f,onModelBlur:w,modelSaved:b,modelPlaceholder:"gemini-2.5-flash",showHint:k,setShowHint:W,installCmd:"npm install -g @google/gemini-cli",docsUrl:"https://github.com/google-gemini/gemini-cli",hintColor:"amber"}),e.jsx(H,{name:"opencode",label:"OpenCode (web search via Zen)",badge:"FREE",badgeColor:"green",enabled:L,installed:o?.opencodeCli?.installed??!1,statusLoading:r,saving:d,onToggle:P,modelInput:S,setModelInput:v,onModelBlur:l,modelSaved:C,modelPlaceholder:"opencode/grok-code",showHint:E,setShowHint:M,installCmd:"curl -fsSL https://opencode.ai/install | bash",docsUrl:"https://github.com/sst/opencode",hintColor:"purple"}),e.jsx(H,{name:"grok",label:"xAI Grok CLI (web + X search)",badge:"GROK_API_KEY",badgeColor:"blue",enabled:O,installed:o?.grokCli?.installed??!1,statusLoading:r,saving:d,onToggle:$,showHint:G,setShowHint:I,installCmd:"npm install -g @vibe-kit/grok-cli",docsUrl:"https://github.com/superagent-ai/grok-cli",hintColor:"blue"})]})]})}),e.jsx("div",{className:"p-4 border-t bg-background",children:e.jsxs(T,{variant:"outline",size:"sm",onClick:()=>{h(),i()},disabled:g||d,className:"w-full",children:[e.jsx(y,{className:`w-4 h-4 mr-2 ${g?"animate-spin":""}`}),s("settings.refresh")]})})]})}export{be as default};
|
|
1
|
+
import{j as e}from"./radix-ui-BR1vy4kf.js";import{r as c}from"./react-vendor-CNOkPC89.js";import{be as F,bf as U,a as A,I as K,bg as _,b7 as z,b9 as B,n as q,d as T}from"./index-CsbQfRnG.js";import{S as D}from"./switch-D9kCIDCe.js";import{N as Y,k as J,r as Q,q as X,n as Z,R as y,a3 as V,u as ee,aQ as se}from"./icons-kPbuhVdj.js";import"./tanstack-e99Cjjy2.js";import"./notifications-B2HqRBj7.js";import"./utils-CzKF5WmX.js";import"./form-utils-Cn_Uld6y.js";import"./code-highlight-BRUf_pqB.js";function te(){const{state:s}=F(),t=U(),[o,g]=c.useState(""),[r,d]=c.useState(""),[x,p]=c.useState(!1),[j,f]=c.useState(!1),S=c.useCallback(async()=>{try{t.setWebSearchLoading(!0),t.setWebSearchError(null);const a=await fetch("/api/websearch");if(!a.ok)throw new Error("Failed to load WebSearch config");const n=await a.json();t.setWebSearchConfig(n)}catch(a){t.setWebSearchError(a.message)}finally{t.setWebSearchLoading(!1)}},[t]),v=c.useCallback(async()=>{try{t.setWebSearchStatusLoading(!0);const a=await fetch("/api/websearch/status");if(!a.ok)throw new Error("Failed to load status");const n=await a.json();t.setWebSearchStatus(n)}catch{}finally{t.setWebSearchStatusLoading(!1)}},[t]),b=c.useCallback(async a=>{const n=s.webSearchConfig;if(!n)return;const w={...n,...a};t.setWebSearchConfig(w);try{t.setWebSearchSaving(!0),t.setWebSearchError(null);const l=await fetch("/api/websearch",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(w)});if(!l.ok){const k=await l.json();throw new Error(k.error||"Failed to save")}const i=await l.json();t.setWebSearchConfig(i.websearch),t.setWebSearchSuccess(!0),setTimeout(()=>t.setWebSearchSuccess(!1),1500)}catch(l){t.setWebSearchConfig(n),t.setWebSearchError(l.message)}finally{t.setWebSearchSaving(!1)}},[s.webSearchConfig,t]);c.useEffect(()=>{s.webSearchConfig&&(g(s.webSearchConfig.providers?.gemini?.model??"gemini-2.5-flash"),d(s.webSearchConfig.providers?.opencode?.model??"opencode/grok-code"))},[s.webSearchConfig]);const C=c.useCallback(async()=>{const a=s.webSearchConfig?.providers?.gemini?.model??"gemini-2.5-flash";if(o!==a){const n=s.webSearchConfig?.providers||{};await b({providers:{...n,gemini:{...n.gemini,model:o}}}),p(!0),setTimeout(()=>p(!1),2e3)}},[o,s.webSearchConfig,b]),h=c.useCallback(async()=>{const a=s.webSearchConfig?.providers?.opencode?.model??"opencode/grok-code";if(r!==a){const n=s.webSearchConfig?.providers||{};await b({providers:{...n,opencode:{...n.opencode,model:r}}}),f(!0),setTimeout(()=>f(!1),2e3)}},[r,s.webSearchConfig,b]);return{config:s.webSearchConfig,status:s.webSearchStatus,loading:s.webSearchLoading,statusLoading:s.webSearchStatusLoading,saving:s.webSearchSaving,error:s.webSearchError,success:s.webSearchSuccess,geminiModelInput:o,setGeminiModelInput:g,opencodeModelInput:r,setOpencodeModelInput:d,geminiModelSaved:x,opencodeModelSaved:j,fetchConfig:S,fetchStatus:v,saveConfig:b,saveGeminiModel:C,saveOpencodeModel:h}}function H({name:s,label:t,badge:o,badgeColor:g,enabled:r,installed:d,statusLoading:x,saving:p,onToggle:j,modelInput:f,setModelInput:S,onModelBlur:v,modelSaved:b,modelPlaceholder:C,showHint:h,setShowHint:a,installCmd:n,docsUrl:w,hintColor:l}){const{t:i}=A(),k=g==="green"?"bg-green-500/10 text-green-600":g==="blue"?"bg-blue-500/10 text-blue-600":"bg-purple-500/10 text-purple-600",W=l==="amber"?"bg-amber-50 dark:bg-amber-900/20 text-amber-700 dark:text-amber-300":l==="blue"?"bg-blue-50 dark:bg-blue-900/20 text-blue-700 dark:text-blue-300":"bg-purple-50 dark:bg-purple-900/20 text-purple-700 dark:text-purple-300",E=l==="amber"?"bg-amber-100 dark:bg-amber-900/40":l==="blue"?"bg-blue-100 dark:bg-blue-900/40":"bg-purple-100 dark:bg-purple-900/40",M=l==="amber"?"text-amber-600 dark:text-amber-400":l==="blue"?"text-blue-600 dark:text-blue-400":"text-purple-600 dark:text-purple-400",G=s==="opencode"?"OpenCode":s.charAt(0).toUpperCase()+s.slice(1);return e.jsxs("div",{className:`rounded-lg border transition-colors ${r?"border-primary border-l-4":"border-border"}`,children:[e.jsxs("div",{className:"flex items-center justify-between p-4",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(Y,{className:`w-5 h-5 ${r?"text-primary":"text-muted-foreground"}`}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("p",{className:"font-mono font-medium",children:s}),e.jsx("span",{className:`text-xs px-1.5 py-0.5 rounded font-medium ${k}`,children:o}),d?e.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-green-500/10 text-green-600 font-medium",children:i("settingsWebsearch.installed")}):e.jsx("span",{className:"text-xs px-1.5 py-0.5 rounded bg-amber-500/10 text-amber-600 font-medium",children:i("settingsWebsearch.notInstalled")})]}),e.jsx("p",{className:"text-sm text-muted-foreground",children:t})]})]}),e.jsx(D,{checked:r,onCheckedChange:j,disabled:p||!d})]}),r&&f!==void 0&&S&&v&&e.jsx("div",{className:"px-4 pb-4 pt-0",children:e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("label",{className:"text-sm text-muted-foreground whitespace-nowrap",children:i("settingsWebsearch.model")}),e.jsx(K,{value:f,onChange:I=>S(I.target.value),onBlur:v,placeholder:C,className:"h-8 text-sm font-mono",disabled:p}),b&&e.jsxs("span",{className:"flex items-center gap-1 text-green-600 dark:text-green-400 text-xs animate-in fade-in duration-200",children:[e.jsx(J,{className:"w-3.5 h-3.5"}),i("settings.saved")]})]})}),!d&&!x&&e.jsxs("div",{className:"px-4 pb-4 pt-0 border-t border-border/50",children:[e.jsxs("button",{onClick:()=>a(!h),className:`flex items-center gap-2 text-sm hover:underline w-full py-2 ${M}`,children:[h?e.jsx(Q,{className:"w-4 h-4"}):e.jsx(X,{className:"w-4 h-4"}),i("settingsWebsearch.howInstall",{name:G})]}),h&&e.jsxs("div",{className:`mt-2 p-3 rounded-md text-sm ${W}`,children:[e.jsxs("p",{className:"mb-2",children:[i("settingsWebsearch.installGlobally")," ",i(o==="GROK_API_KEY"?"settingsWebsearch.requiresKey":"settingsWebsearch.freeTier"),":"]}),e.jsx("code",{className:`text-sm px-2 py-1 rounded font-mono block mb-2 ${E}`,children:n}),e.jsxs("a",{href:w,target:"_blank",rel:"noopener noreferrer",className:"hover:underline inline-flex items-center gap-1",children:[e.jsx(Z,{className:"w-3 h-3"}),i("settingsWebsearch.viewDocs")]})]})]})]})}function be(){const{t:s}=A(),{config:t,status:o,loading:g,statusLoading:r,saving:d,error:x,success:p,geminiModelInput:j,setGeminiModelInput:f,opencodeModelInput:S,setOpencodeModelInput:v,geminiModelSaved:b,opencodeModelSaved:C,fetchConfig:h,fetchStatus:a,saveConfig:n,saveGeminiModel:w,saveOpencodeModel:l}=te(),{fetchRawConfig:i}=_(),[k,W]=c.useState(!1),[E,M]=c.useState(!1),[G,I]=c.useState(!1);c.useEffect(()=>{h(),a(),i()},[h,a,i]);const N=t?.providers?.gemini?.enabled??!1,O=t?.providers?.grok?.enabled??!1,L=t?.providers?.opencode?.enabled??!1,R=()=>{const m=t?.providers||{},u=m.gemini?.enabled??!1;n({enabled:!u||O||L,providers:{...m,gemini:{...m.gemini,enabled:!u}}})},$=()=>{const m=t?.providers||{},u=m.grok?.enabled??!1;n({enabled:N||!u||L,providers:{...m,grok:{...m.grok,enabled:!u}}})},P=()=>{const m=t?.providers||{},u=m.opencode?.enabled??!1;n({enabled:N||O||!u,providers:{...m,opencode:{...m.opencode,enabled:!u}}})};return g?e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsxs("div",{className:"flex items-center gap-3 text-muted-foreground",children:[e.jsx(y,{className:"w-5 h-5 animate-spin"}),e.jsx("span",{children:s("settings.loading")})]})}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:`absolute left-5 right-5 top-20 z-10 transition-all duration-200 ease-out ${x||p?"opacity-100 translate-y-0":"opacity-0 -translate-y-2 pointer-events-none"}`,children:[x&&e.jsxs(z,{variant:"destructive",className:"py-2 shadow-lg",children:[e.jsx(V,{className:"h-4 w-4"}),e.jsx(B,{children:x})]}),p&&e.jsxs("div",{className:"flex items-center gap-2 px-3 py-2 rounded-md border border-green-200 bg-green-50 text-green-700 shadow-lg dark:border-green-900/50 dark:bg-green-900/90 dark:text-green-300",children:[e.jsx(ee,{className:"h-4 w-4 shrink-0"}),e.jsx("span",{className:"text-sm font-medium",children:s("settings.saved")})]})]}),e.jsx(q,{className:"flex-1",children:e.jsxs("div",{className:"p-5 space-y-6",children:[e.jsx("p",{className:"text-sm text-muted-foreground",children:s("settingsWebsearch.description")}),e.jsxs("div",{className:"flex items-center justify-between p-4 rounded-lg bg-muted/50",children:[e.jsxs("div",{children:[e.jsx("p",{className:"font-medium",children:s(N?"settingsWebsearch.enabled":"settingsWebsearch.disabled")}),r?e.jsx("p",{className:"text-sm text-muted-foreground",children:s("settingsWebsearch.checking")}):o?.readiness?e.jsx("p",{className:"text-sm text-muted-foreground",children:o.readiness.message}):null]}),e.jsx(T,{variant:"ghost",size:"sm",onClick:a,disabled:r,children:e.jsx(y,{className:`w-4 h-4 ${r?"animate-spin":""}`})})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsx("h3",{className:"text-base font-medium",children:s("settingsWebsearch.providers")}),!o?.geminiCli&&!o?.opencodeCli&&!o?.grokCli&&!r&&e.jsxs("div",{className:"flex flex-col items-center justify-center p-8 border-2 border-dashed rounded-lg text-center bg-muted/30",children:[e.jsx(se,{className:"w-12 h-12 text-muted-foreground mb-3 opacity-30"}),e.jsx("p",{className:"font-medium text-foreground mb-1",children:s("settingsWebsearch.noneConfigured")}),e.jsx("p",{className:"text-sm text-muted-foreground mb-4",children:s("settingsWebsearch.noneConfiguredHint")}),e.jsxs(T,{variant:"outline",size:"sm",onClick:a,children:[e.jsx(y,{className:"w-4 h-4 mr-2"}),s("settingsWebsearch.checkProviders")]})]}),e.jsx(H,{name:"gemini",label:"Google Gemini CLI (1000 req/day free)",badge:"FREE",badgeColor:"green",enabled:N,installed:o?.geminiCli?.installed??!1,statusLoading:r,saving:d,onToggle:R,modelInput:j,setModelInput:f,onModelBlur:w,modelSaved:b,modelPlaceholder:"gemini-2.5-flash",showHint:k,setShowHint:W,installCmd:"npm install -g @google/gemini-cli",docsUrl:"https://github.com/google-gemini/gemini-cli",hintColor:"amber"}),e.jsx(H,{name:"opencode",label:"OpenCode (web search via Zen)",badge:"FREE",badgeColor:"green",enabled:L,installed:o?.opencodeCli?.installed??!1,statusLoading:r,saving:d,onToggle:P,modelInput:S,setModelInput:v,onModelBlur:l,modelSaved:C,modelPlaceholder:"opencode/grok-code",showHint:E,setShowHint:M,installCmd:"curl -fsSL https://opencode.ai/install | bash",docsUrl:"https://github.com/sst/opencode",hintColor:"purple"}),e.jsx(H,{name:"grok",label:"xAI Grok CLI (web + X search)",badge:"GROK_API_KEY",badgeColor:"blue",enabled:O,installed:o?.grokCli?.installed??!1,statusLoading:r,saving:d,onToggle:$,showHint:G,setShowHint:I,installCmd:"npm install -g @vibe-kit/grok-cli",docsUrl:"https://github.com/superagent-ai/grok-cli",hintColor:"blue"})]})]})}),e.jsx("div",{className:"p-4 border-t bg-background",children:e.jsxs(T,{variant:"outline",size:"sm",onClick:()=>{h(),i()},disabled:g||d,className:"w-full",children:[e.jsx(y,{className:`w-4 h-4 mr-2 ${g?"animate-spin":""}`}),s("settings.refresh")]})})]})}export{be as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BIAXf19X.js","assets/radix-ui-BR1vy4kf.js","assets/react-vendor-CNOkPC89.js","assets/switch-D9kCIDCe.js","assets/icons-kPbuhVdj.js","assets/tanstack-e99Cjjy2.js","assets/notifications-B2HqRBj7.js","assets/utils-CzKF5WmX.js","assets/form-utils-Cn_Uld6y.js","assets/code-highlight-BRUf_pqB.js","assets/globalenv-section-C8zXrVbd.js","assets/index-D09dhWOP.js","assets/index-z8fzygJg.js","assets/default-ports-1QQSffYX.js","assets/proxy-status-widget-K1IwJ8u6.js","assets/alert-dialog-DpjPV6hi.js","assets/auth-section-a4QIr8Cu.js","assets/backups-section-JcABaxvV.js","assets/index-vh-9Yvr6.js","assets/charts-BBPXh0Ar.js","assets/api-DjGF8-45.js","assets/confirm-dialog-DY2Ziz3R.js","assets/separator-BBQkLglZ.js","assets/cliproxy-CvT_CrEG.js","assets/checkbox-DCwR0qqq.js","assets/cliproxy-control-panel-DwnkIgNd.js","assets/copilot-4Z8LP3vC.js","assets/cursor-DGcuUa4B.js","assets/droid-C5Rebf4T.js","assets/accounts-C461-bYH.js","assets/health-B82MeRXO.js","assets/shared-bTrmCnMf.js","assets/updates-CIkkbMYB.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
import{j as r,S as pr,R as ky,C as Ay,a as jy,T as Ty,D as My,P as Dy,O as Ey,b as U0,c as I0,d as H0,e as B0,f as q0,A as K0,g as G0,h as Y0,i as V0,k as F0,l as Q0,m as $0,n as W0,I as X0,o as Oy,p as Z0,q as Ry,r as Ly,s as J0,t as Py,V as eS,L as _y,u as zy,v as tS,w as nS,x as Uy,y as aS,z as iS,G as oS,B as Iy,E as sS,F as lS,H as Hy,J as rS,K as By,M as qy,N as Ky,Q as cS,U as uS,W as dS,X as Gy,Y as fS,Z as hS,_ as mS}from"./radix-ui-BR1vy4kf.js";import{e as Td,f as pS,r as S,u as gr,O as md,N as gS,h as Md,L as pd,R as yS,g as xS,i as vS,c as ie,B as bS,j as SS,k as Pt}from"./react-vendor-CNOkPC89.js";import{Q as CS,u as jt,a as dt,b as pt,c as NS}from"./tanstack-e99Cjjy2.js";import{t as re,T as wS}from"./notifications-B2HqRBj7.js";import{L as Dn,X as bo,P as kS,C as yr,H as AS,a as jS,K as Yy,G as TS,Z as Vy,b as Fy,F as Qy,U as $y,S as MS,A as Ds,c as DS,d as ES,M as OS,E as xr,e as vr,B as RS,R as Es,W as LS,f as PS,g as _S,h as zS,i as cg,j as ug,k as xo,l as Dd,m as lr,n as Wy,o as US,p as IS,q as br,r as Ed,s as Xy,t as Os,u as Sr,v as Od,w as HS,x as BS,y as Cr,z as qS,T as va,D as KS,I as GS,J as Nr,N as YS,O as VS,Q as FS,V as QS,Y as $S,_ as WS,$ as XS,a0 as Rd,a1 as dg,a2 as ZS,a3 as Ld,a4 as JS,a5 as eC,a6 as tC,a7 as fg,a8 as nC,a9 as aC}from"./icons-kPbuhVdj.js";import{t as iC,c as oC,a as wr,e as xs,f as Cs,b as sC,d as lC,g as rC,h as cC,i as uC,j as dC,k as fC,l as hC,m as mC,n as pC,o as gC,p as yC,q as xC,r as vC,s as bC,u as SC,v as CC,w as NC,x as wC,y as kC,z as AC,A as jC,B as TC,C as MC,D as DC,E as EC,F as OC,G as RC,H as LC,I as PC,J as _C}from"./utils-CzKF5WmX.js";import{o as hg,s as mg,p as zC,a as UC,$ as IC,b as Zy,c as HC,_ as BC,d as xi,u as qC,e as pg}from"./form-utils-Cn_Uld6y.js";import{H as KC,t as gg}from"./code-highlight-BRUf_pqB.js";(function(){const a=document.createElement("link").relList;if(a&&a.supports&&a.supports("modulepreload"))return;for(const u of document.querySelectorAll('link[rel="modulepreload"]'))l(u);new MutationObserver(u=>{for(const f of u)if(f.type==="childList")for(const h of f.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&l(h)}).observe(document,{childList:!0,subtree:!0});function s(u){const f={};return u.integrity&&(f.integrity=u.integrity),u.referrerPolicy&&(f.referrerPolicy=u.referrerPolicy),u.crossOrigin==="use-credentials"?f.credentials="include":u.crossOrigin==="anonymous"?f.credentials="omit":f.credentials="same-origin",f}function l(u){if(u.ep)return;u.ep=!0;const f=s(u);fetch(u.href,f)}})();var Vu={exports:{}},vs={},Fu={exports:{}},Qu={};var yg;function GC(){return yg||(yg=1,(function(n){function a(R,W){var ee=R.length;R.push(W);e:for(;0<ee;){var $=ee-1>>>1,ce=R[$];if(0<u(ce,W))R[$]=W,R[ee]=ce,ee=$;else break e}}function s(R){return R.length===0?null:R[0]}function l(R){if(R.length===0)return null;var W=R[0],ee=R.pop();if(ee!==W){R[0]=ee;e:for(var $=0,ce=R.length,fe=ce>>>1;$<fe;){var we=2*($+1)-1,V=R[we],J=we+1,se=R[J];if(0>u(V,ee))J<ce&&0>u(se,V)?(R[$]=se,R[J]=ee,$=J):(R[$]=V,R[we]=ee,$=we);else if(J<ce&&0>u(se,ee))R[$]=se,R[J]=ee,$=J;else break e}}return W}function u(R,W){var ee=R.sortIndex-W.sortIndex;return ee!==0?ee:R.id-W.id}if(n.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var f=performance;n.unstable_now=function(){return f.now()}}else{var h=Date,m=h.now();n.unstable_now=function(){return h.now()-m}}var p=[],y=[],C=1,x=null,b=3,w=!1,N=!1,M=!1,E=!1,T=typeof setTimeout=="function"?setTimeout:null,H=typeof clearTimeout=="function"?clearTimeout:null,B=typeof setImmediate<"u"?setImmediate:null;function U(R){for(var W=s(y);W!==null;){if(W.callback===null)l(y);else if(W.startTime<=R)l(y),W.sortIndex=W.expirationTime,a(p,W);else break;W=s(y)}}function O(R){if(M=!1,U(R),!N)if(s(p)!==null)N=!0,k||(k=!0,te());else{var W=s(y);W!==null&&Ce(O,W.startTime-R)}}var k=!1,_=-1,X=5,F=-1;function Q(){return E?!0:!(n.unstable_now()-F<X)}function ae(){if(E=!1,k){var R=n.unstable_now();F=R;var W=!0;try{e:{N=!1,M&&(M=!1,H(_),_=-1),w=!0;var ee=b;try{t:{for(U(R),x=s(p);x!==null&&!(x.expirationTime>R&&Q());){var $=x.callback;if(typeof $=="function"){x.callback=null,b=x.priorityLevel;var ce=$(x.expirationTime<=R);if(R=n.unstable_now(),typeof ce=="function"){x.callback=ce,U(R),W=!0;break t}x===s(p)&&l(p),U(R)}else l(p);x=s(p)}if(x!==null)W=!0;else{var fe=s(y);fe!==null&&Ce(O,fe.startTime-R),W=!1}}break e}finally{x=null,b=ee,w=!1}W=void 0}}finally{W?te():k=!1}}}var te;if(typeof B=="function")te=function(){B(ae)};else if(typeof MessageChannel<"u"){var ye=new MessageChannel,de=ye.port2;ye.port1.onmessage=ae,te=function(){de.postMessage(null)}}else te=function(){T(ae,0)};function Ce(R,W){_=T(function(){R(n.unstable_now())},W)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(R){R.callback=null},n.unstable_forceFrameRate=function(R){0>R||125<R?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):X=0<R?Math.floor(1e3/R):5},n.unstable_getCurrentPriorityLevel=function(){return b},n.unstable_next=function(R){switch(b){case 1:case 2:case 3:var W=3;break;default:W=b}var ee=b;b=W;try{return R()}finally{b=ee}},n.unstable_requestPaint=function(){E=!0},n.unstable_runWithPriority=function(R,W){switch(R){case 1:case 2:case 3:case 4:case 5:break;default:R=3}var ee=b;b=R;try{return W()}finally{b=ee}},n.unstable_scheduleCallback=function(R,W,ee){var $=n.unstable_now();switch(typeof ee=="object"&&ee!==null?(ee=ee.delay,ee=typeof ee=="number"&&0<ee?$+ee:$):ee=$,R){case 1:var ce=-1;break;case 2:ce=250;break;case 5:ce=1073741823;break;case 4:ce=1e4;break;default:ce=5e3}return ce=ee+ce,R={id:C++,callback:W,priorityLevel:R,startTime:ee,expirationTime:ce,sortIndex:-1},ee>$?(R.sortIndex=ee,a(y,R),s(p)===null&&R===s(y)&&(M?(H(_),_=-1):M=!0,Ce(O,ee-$))):(R.sortIndex=ce,a(p,R),N||w||(N=!0,k||(k=!0,te()))),R},n.unstable_shouldYield=Q,n.unstable_wrapCallback=function(R){var W=b;return function(){var ee=b;b=W;try{return R.apply(this,arguments)}finally{b=ee}}}})(Qu)),Qu}var xg;function YC(){return xg||(xg=1,Fu.exports=GC()),Fu.exports}var vg;function VC(){if(vg)return vs;vg=1;var n=YC(),a=Td(),s=pS();function l(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var i=2;i<arguments.length;i++)t+="&args[]="+encodeURIComponent(arguments[i])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function u(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function f(e){var t=e,i=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,(t.flags&4098)!==0&&(i=t.return),e=t.return;while(e)}return t.tag===3?i:null}function h(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function m(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function p(e){if(f(e)!==e)throw Error(l(188))}function y(e){var t=e.alternate;if(!t){if(t=f(e),t===null)throw Error(l(188));return t!==e?null:e}for(var i=e,o=t;;){var c=i.return;if(c===null)break;var d=c.alternate;if(d===null){if(o=c.return,o!==null){i=o;continue}break}if(c.child===d.child){for(d=c.child;d;){if(d===i)return p(c),e;if(d===o)return p(c),t;d=d.sibling}throw Error(l(188))}if(i.return!==o.return)i=c,o=d;else{for(var g=!1,v=c.child;v;){if(v===i){g=!0,i=c,o=d;break}if(v===o){g=!0,o=c,i=d;break}v=v.sibling}if(!g){for(v=d.child;v;){if(v===i){g=!0,i=d,o=c;break}if(v===o){g=!0,o=d,i=c;break}v=v.sibling}if(!g)throw Error(l(189))}}if(i.alternate!==o)throw Error(l(190))}if(i.tag!==3)throw Error(l(188));return i.stateNode.current===i?e:t}function C(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=C(e),t!==null)return t;e=e.sibling}return null}var x=Object.assign,b=Symbol.for("react.element"),w=Symbol.for("react.transitional.element"),N=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),E=Symbol.for("react.strict_mode"),T=Symbol.for("react.profiler"),H=Symbol.for("react.consumer"),B=Symbol.for("react.context"),U=Symbol.for("react.forward_ref"),O=Symbol.for("react.suspense"),k=Symbol.for("react.suspense_list"),_=Symbol.for("react.memo"),X=Symbol.for("react.lazy"),F=Symbol.for("react.activity"),Q=Symbol.for("react.memo_cache_sentinel"),ae=Symbol.iterator;function te(e){return e===null||typeof e!="object"?null:(e=ae&&e[ae]||e["@@iterator"],typeof e=="function"?e:null)}var ye=Symbol.for("react.client.reference");function de(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===ye?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case M:return"Fragment";case T:return"Profiler";case E:return"StrictMode";case O:return"Suspense";case k:return"SuspenseList";case F:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case N:return"Portal";case B:return e.displayName||"Context";case H:return(e._context.displayName||"Context")+".Consumer";case U:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case _:return t=e.displayName||null,t!==null?t:de(e.type)||"Memo";case X:t=e._payload,e=e._init;try{return de(e(t))}catch{}}return null}var Ce=Array.isArray,R=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=s.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ee={pending:!1,data:null,method:null,action:null},$=[],ce=-1;function fe(e){return{current:e}}function we(e){0>ce||(e.current=$[ce],$[ce]=null,ce--)}function V(e,t){ce++,$[ce]=e.current,e.current=t}var J=fe(null),se=fe(null),ne=fe(null),oe=fe(null);function xe(e,t){switch(V(ne,t),V(se,e),V(J,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Op(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Op(t),e=Rp(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}we(J),V(J,e)}function Le(){we(J),we(se),we(ne)}function Ke(e){e.memoizedState!==null&&V(oe,e);var t=J.current,i=Rp(t,e.type);t!==i&&(V(se,e),V(J,i))}function St(e){se.current===e&&(we(J),we(se)),oe.current===e&&(we(oe),ms._currentValue=ee)}var Ct,Ye;function nt(e){if(Ct===void 0)try{throw Error()}catch(i){var t=i.stack.trim().match(/\n( *(at )?)/);Ct=t&&t[1]||"",Ye=-1<i.stack.indexOf(`
|
|
3
3
|
at`)?" (<anonymous>)":-1<i.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
4
4
|
`+Ct+e+Ye}var Ut=!1;function Qt(e,t){if(!e||Ut)return"";Ut=!0;var i=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var o={DetermineComponentFrameRoot:function(){try{if(t){var Y=function(){throw Error()};if(Object.defineProperty(Y.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Y,[])}catch(I){var z=I}Reflect.construct(e,[],Y)}else{try{Y.call()}catch(I){z=I}e.call(Y.prototype)}}else{try{throw Error()}catch(I){z=I}(Y=e())&&typeof Y.catch=="function"&&Y.catch(function(){})}}catch(I){if(I&&z&&typeof I.stack=="string")return[I.stack,z.stack]}return[null,null]}};o.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var c=Object.getOwnPropertyDescriptor(o.DetermineComponentFrameRoot,"name");c&&c.configurable&&Object.defineProperty(o.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var d=o.DetermineComponentFrameRoot(),g=d[0],v=d[1];if(g&&v){var A=g.split(`
|
|
@@ -44,4 +44,4 @@ Error generating stack: `+o.message+`
|
|
|
44
44
|
`).map(function(jo,To){return To>=Lt&&To<=Qn?he+jo:jo}).join(`
|
|
45
45
|
`),selectionStart:Ne&&/\S/.test(Ne)?Ee+he.length:Ee,selectionEnd:at+he.length*(Qn-Lt+1)})}else{var wt=Ee+he.length;Rn({value:ve.substring(0,Ee)+he+ve.substring(at),selectionStart:wt,selectionEnd:wt})}else if(Z.key==="Backspace"){var Zt=Ee!==at,Nn=ve.substring(0,Ee);if(Nn.endsWith(he)&&!Zt){Z.preventDefault();var wt=Ee-he.length;Rn({value:ve.substring(0,Ee-he.length)+ve.substring(at),selectionStart:wt,selectionEnd:wt})}}else if(Z.key==="Enter"){if(Ee===at){var ko=Xt(ve,Ee).pop(),ei=ko?.match(/^\s+/);if(ei?.[0]){Z.preventDefault();var Ao=`
|
|
46
46
|
`+ei[0],wt=Ee+Ao.length;Rn({value:ve.substring(0,Ee)+Ao+ve.substring(at),selectionStart:wt,selectionEnd:wt})}}}else if(Z.keyCode===y||Z.keyCode===C||Z.keyCode===x||Z.keyCode===b){var dn=void 0;Z.keyCode===y&&Z.shiftKey?dn=["(",")"]:Z.keyCode===C?Z.shiftKey?dn=["{","}"]:dn=["[","]"]:Z.keyCode===x?Z.shiftKey?dn=['"','"']:dn=["'","'"]:Z.keyCode===b&&!Z.shiftKey&&(dn=["`","`"]),Ee!==at&&dn&&(Z.preventDefault(),Rn({value:ve.substring(0,Ee)+dn[0]+ve.substring(Ee,at)+dn[1]+ve.substring(at),selectionStart:Ee,selectionEnd:at+2}))}else(E?Z.metaKey&&Z.keyCode===m:Z.ctrlKey&&Z.keyCode===m)&&!Z.shiftKey&&!Z.altKey?(Z.preventDefault(),ji()):(E?Z.metaKey&&Z.keyCode===m&&Z.shiftKey:M?Z.ctrlKey&&Z.keyCode===h:Z.ctrlKey&&Z.keyCode===m&&Z.shiftKey)&&!Z.altKey?(Z.preventDefault(),No()):Z.keyCode===p&&Z.ctrlKey&&(!E||Z.shiftKey)&&(Z.preventDefault(),Sa(function($n){return!$n}))}},Fn=function(Z){var De=Z.currentTarget,ve=De.value,Ee=De.selectionStart,at=De.selectionEnd;Vn({value:ve,selectionStart:Ee,selectionEnd:at},!0),J(ve)};return f.useEffect(function(){Ja()},[Ja]),f.useImperativeHandle(_,function(){return{get session(){return{history:je.current}},set session(Z){je.current=Z.history}}},[]),f.createElement("div",n({},Gn,{style:n(n({},U.container),St)}),f.createElement("pre",n({className:xe,"aria-hidden":"true",style:n(n(n({},U.editor),U.highlight),Yn)},typeof ft=="string"?{dangerouslySetInnerHTML:{__html:ft+"<br />"}}:{children:ft})),f.createElement("textarea",{ref:function(Z){return $t.current=Z},style:n(n(n({},U.editor),U.textarea),Yn),className:T+(nt?" ".concat(nt):""),id:Ut,value:Qt,onChange:Fn,onKeyDown:wo,onClick:ce,onKeyUp:V,onFocus:fe,onBlur:$,disabled:F,form:Q,maxLength:R,minLength:W,name:ee,placeholder:oe,readOnly:Le,required:Ke,autoFocus:X,autoCapitalize:"off",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"data-gramm":!1}),f.createElement("style",{dangerouslySetInnerHTML:{__html:H}}))}),U={container:{position:"relative",textAlign:"left",boxSizing:"border-box",padding:0,overflow:"hidden"},textarea:{position:"absolute",top:0,left:0,height:"100%",width:"100%",resize:"none",color:"inherit",overflow:"hidden",MozOsxFontSmoothing:"grayscale",WebkitFontSmoothing:"antialiased",WebkitTextFillColor:"transparent"},highlight:{position:"relative",pointerEvents:"none"},editor:{margin:0,border:0,background:"none",boxSizing:"inherit",display:"inherit",fontFamily:"inherit",fontSize:"inherit",fontStyle:"inherit",fontVariantLigatures:"inherit",fontWeight:"inherit",letterSpacing:"inherit",lineHeight:"inherit",tabSize:"inherit",textIndent:"inherit",textRendering:"inherit",textTransform:"inherit",whiteSpace:"pre-wrap",wordBreak:"keep-all",overflowWrap:"break-word"}};return Vt.default=B,Vt}var Ij=Uj();const Hj=xS(Ij),Bj=[/^ANTHROPIC_AUTH_TOKEN$/,/_API_KEY$/,/_AUTH_TOKEN$/,/_SECRET$/,/_SECRET_KEY$/,/^API_KEY$/,/^AUTH_TOKEN$/,/^SECRET$/,/_PASSWORD$/,/^PASSWORD$/,/_CREDENTIAL$/,/_PRIVATE_KEY$/];function qj(n){return Bj.some(a=>a.test(n))}function Kj(n){if(!n.trim())return{valid:!0};try{return JSON.parse(n),{valid:!0}}catch(a){const l=a.message,u=l.match(/position (\d+)/);if(u){const f=parseInt(u[1],10),h=n.substring(0,f).split(`
|
|
47
|
-
`);return{valid:!1,error:l,line:h.length}}return{valid:!1,error:l}}}function av({value:n,onChange:a,language:s="json",readonly:l=!1,className:u,minHeight:f="300px"}){const{isDark:h}=gx(),[m,p]=S.useState(!1),[y,C]=S.useState(!0),x=S.useMemo(()=>s==="json"?Kj(n):{valid:!0},[n,s]),b=S.useCallback(w=>r.jsx(KC,{theme:h?gg.nightOwl:gg.github,code:w,language:s,children:({tokens:N,getLineProps:M,getTokenProps:E})=>{let T=!1;return r.jsx(r.Fragment,{children:N.map((H,B)=>r.jsx("div",{...M({line:H}),className:q(x.line===B+1&&"bg-destructive/20"),children:H.map((U,O)=>{let k=!1;if(U.types.includes("property")){const X=U.content.replace(/['"]/g,"");qj(X)?T=!0:T=!1}else(U.types.includes("string")||U.types.includes("number")||U.types.includes("boolean"))&&T?(k=!0,T=!1):U.types.includes("punctuation")&&U.content!==":"&&U.content!=="["&&U.content!=="{"&&(T=!1);const _=E({token:U});return k&&y&&(_.className=q(_.className,"blur-[3px] select-none opacity-70 transition-all duration-200")),r.jsx("span",{..._},O)})},B))})}}),[h,s,x.line,y]);return r.jsxs("div",{className:q("flex flex-col",u),children:[r.jsxs("div",{className:q("relative rounded-md border overflow-hidden","bg-muted/30",m&&"ring-2 ring-ring ring-offset-2 ring-offset-background",l&&"opacity-70 cursor-not-allowed",!x.valid&&"border-destructive"),style:{minHeight:f},children:[r.jsx(Hj,{value:n,onValueChange:l?()=>{}:a,highlight:b,padding:12,disabled:l,onFocus:()=>p(!0),onBlur:()=>p(!1),textareaClassName:q("focus:outline-none font-mono text-sm",l&&"cursor-not-allowed"),preClassName:"font-mono text-sm",style:{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",fontSize:"0.875rem",minHeight:f}},h?"dark-editor":"light-editor"),r.jsx("div",{className:"absolute top-2 right-2 z-10 opacity-50 hover:opacity-100 transition-opacity",children:r.jsx(ut,{variant:"ghost",size:"icon",className:"h-6 w-6 bg-background/50 hover:bg-background border shadow-sm rounded-full",onClick:()=>C(!y),title:y?"Reveal sensitive values":"Mask sensitive values",children:y?r.jsx(vr,{className:"h-3 w-3"}):r.jsx(xr,{className:"h-3 w-3"})})})]}),r.jsxs("div",{className:"flex items-center gap-2 mt-2 text-xs",children:[x.valid?r.jsxs("span",{className:"flex items-center gap-1 text-muted-foreground",children:[r.jsx(Sr,{className:"w-3 h-3 text-green-500"}),"Valid ",s.toUpperCase()]}):r.jsxs("span",{className:"flex items-center gap-1 text-destructive",children:[r.jsx(Ld,{className:"w-3 h-3"}),x.error,x.line&&` (line ${x.line})`]}),l&&r.jsx("span",{className:"ml-auto text-muted-foreground",children:"(Read-only)"})]})]})}const hf=Object.freeze(Object.defineProperty({__proto__:null,CodeEditor:av},Symbol.toStringTag,{value:"Module"})),Gj={webSearchConfig:null,webSearchStatus:null,webSearchLoading:!0,webSearchStatusLoading:!0,webSearchSaving:!1,webSearchError:null,webSearchSuccess:!1,globalEnvConfig:null,globalEnvLoading:!0,globalEnvSaving:!1,globalEnvError:null,globalEnvSuccess:!1,proxyConfig:null,proxyLoading:!0,proxySaving:!1,proxyError:null,proxySuccess:!1,proxyTestResult:null,proxyTesting:!1,rawConfig:null,rawConfigLoading:!1};function Yj(n,a){switch(a.type){case"SET_WEBSEARCH_CONFIG":return{...n,webSearchConfig:a.payload};case"SET_WEBSEARCH_STATUS":return{...n,webSearchStatus:a.payload};case"SET_WEBSEARCH_LOADING":return{...n,webSearchLoading:a.payload};case"SET_WEBSEARCH_STATUS_LOADING":return{...n,webSearchStatusLoading:a.payload};case"SET_WEBSEARCH_SAVING":return{...n,webSearchSaving:a.payload};case"SET_WEBSEARCH_ERROR":return{...n,webSearchError:a.payload};case"SET_WEBSEARCH_SUCCESS":return{...n,webSearchSuccess:a.payload};case"SET_GLOBALENV_CONFIG":return{...n,globalEnvConfig:a.payload};case"SET_GLOBALENV_LOADING":return{...n,globalEnvLoading:a.payload};case"SET_GLOBALENV_SAVING":return{...n,globalEnvSaving:a.payload};case"SET_GLOBALENV_ERROR":return{...n,globalEnvError:a.payload};case"SET_GLOBALENV_SUCCESS":return{...n,globalEnvSuccess:a.payload};case"SET_PROXY_CONFIG":return{...n,proxyConfig:a.payload};case"SET_PROXY_LOADING":return{...n,proxyLoading:a.payload};case"SET_PROXY_SAVING":return{...n,proxySaving:a.payload};case"SET_PROXY_ERROR":return{...n,proxyError:a.payload};case"SET_PROXY_SUCCESS":return{...n,proxySuccess:a.payload};case"SET_PROXY_TEST_RESULT":return{...n,proxyTestResult:a.payload};case"SET_PROXY_TESTING":return{...n,proxyTesting:a.payload};case"SET_RAW_CONFIG":return{...n,rawConfig:a.payload};case"SET_RAW_CONFIG_LOADING":return{...n,rawConfigLoading:a.payload};default:return n}}const iv=S.createContext(null);function Vj({children:n}){const[a,s]=S.useReducer(Yj,Gj);return r.jsx(iv.Provider,{value:{state:a,dispatch:s},children:n})}function ov(){const n=S.useContext(iv);if(!n)throw new Error("useSettingsContext must be used within a SettingsProvider");return n}function Fj(){const{dispatch:n}=ov(),a=S.useCallback(k=>n({type:"SET_WEBSEARCH_CONFIG",payload:k}),[n]),s=S.useCallback(k=>n({type:"SET_WEBSEARCH_STATUS",payload:k}),[n]),l=S.useCallback(k=>n({type:"SET_WEBSEARCH_LOADING",payload:k}),[n]),u=S.useCallback(k=>n({type:"SET_WEBSEARCH_STATUS_LOADING",payload:k}),[n]),f=S.useCallback(k=>n({type:"SET_WEBSEARCH_SAVING",payload:k}),[n]),h=S.useCallback(k=>n({type:"SET_WEBSEARCH_ERROR",payload:k}),[n]),m=S.useCallback(k=>n({type:"SET_WEBSEARCH_SUCCESS",payload:k}),[n]),p=S.useCallback(k=>n({type:"SET_GLOBALENV_CONFIG",payload:k}),[n]),y=S.useCallback(k=>n({type:"SET_GLOBALENV_LOADING",payload:k}),[n]),C=S.useCallback(k=>n({type:"SET_GLOBALENV_SAVING",payload:k}),[n]),x=S.useCallback(k=>n({type:"SET_GLOBALENV_ERROR",payload:k}),[n]),b=S.useCallback(k=>n({type:"SET_GLOBALENV_SUCCESS",payload:k}),[n]),w=S.useCallback(k=>n({type:"SET_PROXY_CONFIG",payload:k}),[n]),N=S.useCallback(k=>n({type:"SET_PROXY_LOADING",payload:k}),[n]),M=S.useCallback(k=>n({type:"SET_PROXY_SAVING",payload:k}),[n]),E=S.useCallback(k=>n({type:"SET_PROXY_ERROR",payload:k}),[n]),T=S.useCallback(k=>n({type:"SET_PROXY_SUCCESS",payload:k}),[n]),H=S.useCallback(k=>n({type:"SET_PROXY_TEST_RESULT",payload:k}),[n]),B=S.useCallback(k=>n({type:"SET_PROXY_TESTING",payload:k}),[n]),U=S.useCallback(k=>n({type:"SET_RAW_CONFIG",payload:k}),[n]),O=S.useCallback(k=>n({type:"SET_RAW_CONFIG_LOADING",payload:k}),[n]);return S.useMemo(()=>({setWebSearchConfig:a,setWebSearchStatus:s,setWebSearchLoading:l,setWebSearchStatusLoading:u,setWebSearchSaving:f,setWebSearchError:h,setWebSearchSuccess:m,setGlobalEnvConfig:p,setGlobalEnvLoading:y,setGlobalEnvSaving:C,setGlobalEnvError:x,setGlobalEnvSuccess:b,setProxyConfig:w,setProxyLoading:N,setProxySaving:M,setProxyError:E,setProxySuccess:T,setProxyTestResult:H,setProxyTesting:B,setRawConfig:U,setRawConfigLoading:O}),[a,s,l,u,f,h,m,p,y,C,x,b,w,N,M,E,T,H,B,U,O])}function Qj(){const[n,a]=vS(),s=n.get("tab")?.toLowerCase(),l=s==="globalenv"?"globalenv":s==="proxy"?"proxy":s==="auth"?"auth":s==="thinking"?"thinking":s==="backups"?"backups":"websearch",u=S.useCallback(f=>{a({tab:f},{replace:!0})},[a]);return{activeTab:l,setActiveTab:u}}function $j(){const{state:n}=ov(),a=Fj(),[s,l]=S.useState(!1),u=S.useCallback(async()=>{try{a.setRawConfigLoading(!0);const h=await fetch("/api/config/raw");if(!h.ok){a.setRawConfig(null);return}const m=await h.text();a.setRawConfig(m)}catch{a.setRawConfig(null)}finally{a.setRawConfigLoading(!1)}},[a]),f=S.useCallback(async()=>{if(n.rawConfig)try{await navigator.clipboard.writeText(n.rawConfig),l(!0),setTimeout(()=>l(!1),2e3)}catch{}},[n.rawConfig]);return{rawConfig:n.rawConfig,loading:n.rawConfigLoading,copied:s,fetchRawConfig:u,copyToClipboard:f}}function cy({activeTab:n,onTabChange:a}){const{t:s}=_t(),l=[{value:"websearch",label:s("settingsTabs.web"),icon:Xy},{value:"globalenv",label:s("settingsTabs.env"),icon:Rd},{value:"thinking",label:s("settingsTabs.think"),icon:JS},{value:"proxy",label:s("settingsTabs.proxy"),icon:eC},{value:"auth",label:s("settingsTabs.auth"),icon:Dd},{value:"backups",label:s("settingsTabs.backup"),icon:tC}];return r.jsx($x,{value:n,onValueChange:u=>a(u),children:r.jsx(cf,{className:"grid w-full grid-cols-6",children:l.map(({value:u,label:f,icon:h})=>r.jsxs(mr,{value:u,className:"gap-1.5 px-1 text-xs",children:[r.jsx(h,{className:"h-3.5 w-3.5 shrink-0"}),r.jsx("span",{className:"truncate",children:f})]},u))})})}function uy(){return r.jsxs("div",{className:"flex-1 p-5 space-y-6",children:[r.jsx(qe,{className:"h-4 w-2/3"}),r.jsx("div",{className:"p-4 rounded-lg border",children:r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsxs("div",{className:"space-y-2",children:[r.jsx(qe,{className:"h-5 w-32"}),r.jsx(qe,{className:"h-4 w-48"})]}),r.jsx(qe,{className:"h-6 w-10 rounded-full"})]})}),r.jsxs("div",{className:"space-y-3",children:[r.jsx(qe,{className:"h-5 w-24"}),r.jsxs("div",{className:"space-y-2",children:[r.jsx(qe,{className:"h-20 w-full rounded-lg"}),r.jsx(qe,{className:"h-20 w-full rounded-lg"}),r.jsx(qe,{className:"h-20 w-full rounded-lg"})]})]})]})}function sv(n,a=3,s=1e3){return n().catch(l=>{if(a<=0)throw l;return new Promise(u=>setTimeout(u,s)).then(()=>sv(n,a-1,s*2))})}function Co(n){return S.lazy(()=>sv(n))}const dy=Co(()=>gt(()=>import("./index-eLGkeVzr.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9]))),fy=Co(()=>gt(()=>import("./globalenv-section-DOFqIs-8.js"),__vite__mapDeps([10,1,2,3,4,5,6,7,8,9]))),hy=Co(()=>gt(()=>import("./index-3GEclgP5.js"),__vite__mapDeps([11,1,2,3,4,5,6,7,8,9]))),my=Co(()=>gt(()=>import("./index-BAKFUe-l.js"),__vite__mapDeps([12,1,2,3,13,4,14,15,5,6,7,8,9]))),py=Co(()=>gt(()=>import("./auth-section-DN4BD8GL.js"),__vite__mapDeps([16,1,2,4,5,6,7,8,9]))),gy=Co(()=>gt(()=>import("./backups-section-CybLESWH.js"),__vite__mapDeps([17,1,2,15,4,5,6,7,8,9])));class yy extends S.Component{constructor(a){super(a),this.state={hasError:!1,error:null}}static getDerivedStateFromError(a){return{hasError:!0,error:a}}render(){return this.state.hasError?r.jsx("div",{className:"flex-1 flex items-center justify-center text-muted-foreground",children:r.jsxs("div",{className:"text-center p-6 max-w-md",children:[r.jsx(Ld,{className:"w-12 h-12 mx-auto mb-4 text-destructive"}),r.jsx("p",{className:"font-medium text-foreground mb-2",children:ct.t("settings.sectionLoadFailed")}),r.jsx("p",{className:"text-sm mb-4",children:this.state.error?.message||ct.t("settings.unknownError")}),r.jsxs(ut,{variant:"outline",onClick:()=>window.location.reload(),className:"inline-flex items-center gap-2",children:[r.jsx(Es,{className:"w-4 h-4"}),ct.t("settings.reloadPage")]})]})}):this.props.children}}function Wj(){const{t:n}=_t(),{activeTab:a,setActiveTab:s}=Qj(),{rawConfig:l,loading:u,copied:f,fetchRawConfig:h,copyToClipboard:m}=$j();S.useEffect(()=>{h()},[h]);const p=y=>{S.startTransition(()=>{s(y)})};return r.jsxs("div",{className:"h-[calc(100vh-100px)]",children:[r.jsxs("div",{className:"md:hidden h-full flex flex-col",children:[r.jsx("div",{className:"border-b bg-background p-4",children:r.jsx(cy,{activeTab:a,onTabChange:p})}),r.jsx(yy,{children:r.jsxs(S.Suspense,{fallback:r.jsx(uy,{}),children:[a==="websearch"&&r.jsx(dy,{}),a==="globalenv"&&r.jsx(fy,{}),a==="thinking"&&r.jsx(hy,{}),a==="proxy"&&r.jsx(my,{}),a==="auth"&&r.jsx(py,{}),a==="backups"&&r.jsx(gy,{})]})})]}),r.jsxs(of,{direction:"horizontal",className:"h-full hidden md:flex",children:[r.jsx(Ls,{defaultSize:40,minSize:30,maxSize:55,children:r.jsxs("div",{className:"h-full border-r flex flex-col bg-muted/30 relative",children:[r.jsx("div",{className:"p-5 border-b bg-background",children:r.jsx(cy,{activeTab:a,onTabChange:p})}),r.jsx(yy,{children:r.jsxs(S.Suspense,{fallback:r.jsx(uy,{}),children:[a==="websearch"&&r.jsx(dy,{}),a==="globalenv"&&r.jsx(fy,{}),a==="thinking"&&r.jsx(hy,{}),a==="proxy"&&r.jsx(my,{}),a==="auth"&&r.jsx(py,{}),a==="backups"&&r.jsx(gy,{})]})})]})}),r.jsx(sf,{className:"w-2 bg-border hover:bg-primary/20 transition-colors cursor-col-resize flex items-center justify-center group",children:r.jsx(Cr,{className:"w-3 h-3 text-muted-foreground group-hover:text-primary"})}),r.jsx(Ls,{defaultSize:60,minSize:35,children:r.jsxs("div",{className:"h-full flex flex-col",children:[r.jsxs("div",{className:"p-4 border-b bg-background flex items-center justify-between",children:[r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx(fg,{className:"w-5 h-5 text-primary"}),r.jsxs("div",{children:[r.jsx("h2",{className:"font-semibold",children:"config.yaml"}),r.jsx("p",{className:"text-sm text-muted-foreground",children:"~/.ccs/config.yaml"})]})]}),r.jsxs("div",{className:"flex gap-2",children:[r.jsx(ut,{variant:"outline",size:"sm",onClick:m,disabled:!l,children:f?r.jsxs(r.Fragment,{children:[r.jsx(xo,{className:"w-4 h-4 mr-1"}),n("settings.copied")]}):r.jsxs(r.Fragment,{children:[r.jsx(lr,{className:"w-4 h-4 mr-1"}),n("settings.copy")]})}),r.jsx(ut,{variant:"outline",size:"sm",onClick:h,disabled:u,children:r.jsx(Es,{className:`w-4 h-4 ${u?"animate-spin":""}`})})]})]}),r.jsx("div",{className:"flex-1 overflow-auto",children:u?r.jsxs("div",{className:"flex items-center justify-center h-full text-muted-foreground",children:[r.jsx(Es,{className:"w-5 h-5 animate-spin mr-2"}),n("settings.loading")]}):l?r.jsx(av,{value:l,onChange:()=>{},language:"yaml",readonly:!0,minHeight:"auto",className:"min-h-full"}):r.jsx("div",{className:"flex items-center justify-center h-full text-muted-foreground",children:r.jsxs("div",{className:"text-center",children:[r.jsx(fg,{className:"w-12 h-12 mx-auto mb-3 opacity-30"}),r.jsx("p",{children:n("settings.configFileNotFound")}),r.jsx("code",{className:"text-sm bg-muted px-2 py-1 rounded mt-2 inline-block",children:"ccs migrate"})]})})})]})})]})]})}function Xj(){return r.jsx(Vj,{children:r.jsx(Wj,{})})}const Zj=Object.freeze(Object.defineProperty({__proto__:null,SettingsPage:Xj},Symbol.toStringTag,{value:"Module"})),QD=fS,$D=mS,WD=hS,Jj=S.forwardRef(({className:n,align:a="center",sideOffset:s=4,...l},u)=>r.jsx(dS,{children:r.jsx(Gy,{ref:u,align:a,sideOffset:s,className:q("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",n),...l})}));Jj.displayName=Gy.displayName;function eT(n,a,s="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:n,timeZoneName:s}).format(a).split(/\s/g).slice(2).join(" ")}const tT={},As={};function Si(n,a){try{const l=(tT[n]||=new Intl.DateTimeFormat("en-US",{timeZone:n,timeZoneName:"longOffset"}).format)(a).split("GMT")[1];return l in As?As[l]:xy(l,l.split(":"))}catch{if(n in As)return As[n];const s=n?.match(nT);return s?xy(n,s.slice(1)):NaN}}const nT=/([+-]\d\d):?(\d\d)?/;function xy(n,a){const s=+(a[0]||0),l=+(a[1]||0),u=+(a[2]||0)/60;return As[n]=s*60+l>0?s*60+l+u:s*60-l-u}class Bn extends Date{constructor(...a){super(),a.length>1&&typeof a[a.length-1]=="string"&&(this.timeZone=a.pop()),this.internal=new Date,isNaN(Si(this.timeZone,this))?this.setTime(NaN):a.length?typeof a[0]=="number"&&(a.length===1||a.length===2&&typeof a[1]!="number")?this.setTime(a[0]):typeof a[0]=="string"?this.setTime(+new Date(a[0])):a[0]instanceof Date?this.setTime(+a[0]):(this.setTime(+new Date(...a)),lv(this),jd(this)):this.setTime(Date.now())}static tz(a,...s){return s.length?new Bn(...s,a):new Bn(Date.now(),a)}withTimeZone(a){return new Bn(+this,a)}getTimezoneOffset(){const a=-Si(this.timeZone,this);return a>0?Math.floor(a):Math.ceil(a)}setTime(a){return Date.prototype.setTime.apply(this,arguments),jd(this),+this}[Symbol.for("constructDateFrom")](a){return new Bn(+new Date(a),this.timeZone)}}const vy=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(n=>{if(!vy.test(n))return;const a=n.replace(vy,"$1UTC");Bn.prototype[a]&&(n.startsWith("get")?Bn.prototype[n]=function(){return this.internal[a]()}:(Bn.prototype[n]=function(){return Date.prototype[a].apply(this.internal,arguments),aT(this),+this},Bn.prototype[a]=function(){return Date.prototype[a].apply(this,arguments),jd(this),+this}))});function jd(n){n.internal.setTime(+n),n.internal.setUTCSeconds(n.internal.getUTCSeconds()-Math.round(-Si(n.timeZone,n)*60))}function aT(n){Date.prototype.setFullYear.call(n,n.internal.getUTCFullYear(),n.internal.getUTCMonth(),n.internal.getUTCDate()),Date.prototype.setHours.call(n,n.internal.getUTCHours(),n.internal.getUTCMinutes(),n.internal.getUTCSeconds(),n.internal.getUTCMilliseconds()),lv(n)}function lv(n){const a=Si(n.timeZone,n),s=a>0?Math.floor(a):Math.ceil(a),l=new Date(+n);l.setUTCHours(l.getUTCHours()-1);const u=-new Date(+n).getTimezoneOffset(),f=-new Date(+l).getTimezoneOffset(),h=u-f,m=Date.prototype.getHours.apply(n)!==n.internal.getUTCHours();h&&m&&n.internal.setUTCMinutes(n.internal.getUTCMinutes()+h);const p=u-s;p&&Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+p);const y=new Date(+n);y.setUTCSeconds(0);const C=u>0?y.getSeconds():(y.getSeconds()-60)%60,x=Math.round(-(Si(n.timeZone,n)*60))%60;(x||C)&&(n.internal.setUTCSeconds(n.internal.getUTCSeconds()+x),Date.prototype.setUTCSeconds.call(n,Date.prototype.getUTCSeconds.call(n)+x+C));const b=Si(n.timeZone,n),w=b>0?Math.floor(b):Math.ceil(b),M=-new Date(+n).getTimezoneOffset()-w,E=w!==s,T=M-p;if(E&&T){Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+T);const H=Si(n.timeZone,n),B=H>0?Math.floor(H):Math.ceil(H),U=w-B;U&&(n.internal.setUTCMinutes(n.internal.getUTCMinutes()+U),Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+U))}}class ga extends Bn{static tz(a,...s){return s.length?new ga(...s,a):new ga(Date.now(),a)}toISOString(){const[a,s,l]=this.tzComponents(),u=`${a}${s}:${l}`;return this.internal.toISOString().slice(0,-1)+u}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[a,s,l,u]=this.internal.toUTCString().split(" ");return`${a?.slice(0,-1)} ${l} ${s} ${u}`}toTimeString(){const a=this.internal.toUTCString().split(" ")[4],[s,l,u]=this.tzComponents();return`${a} GMT${s}${l}${u} (${eT(this.timeZone,this)})`}toLocaleString(a,s){return Date.prototype.toLocaleString.call(this,a,{...s,timeZone:s?.timeZone||this.timeZone})}toLocaleDateString(a,s){return Date.prototype.toLocaleDateString.call(this,a,{...s,timeZone:s?.timeZone||this.timeZone})}toLocaleTimeString(a,s){return Date.prototype.toLocaleTimeString.call(this,a,{...s,timeZone:s?.timeZone||this.timeZone})}tzComponents(){const a=this.getTimezoneOffset(),s=a>0?"-":"+",l=String(Math.floor(Math.abs(a)/60)).padStart(2,"0"),u=String(Math.abs(a)%60).padStart(2,"0");return[s,l,u]}withTimeZone(a){return new ga(+this,a)}[Symbol.for("constructDateFrom")](a){return new ga(+new Date(a),this.timeZone)}}const by=5,iT=4;function oT(n,a){const s=a.startOfMonth(n),l=s.getDay()>0?s.getDay():7,u=a.addDays(n,-l+1),f=a.addDays(u,by*7-1);return a.getMonth(n)===a.getMonth(f)?by:iT}function rv(n,a){const s=a.startOfMonth(n),l=s.getDay();return l===1?s:l===0?a.addDays(s,-6):a.addDays(s,-1*(l-1))}function sT(n,a){const s=rv(n,a),l=oT(n,a);return a.addDays(s,l*7-1)}const cv={...xs,labels:{labelDayButton:(n,a,s,l)=>{let u;l&&typeof l.format=="function"?u=l.format.bind(l):u=(h,m)=>Cs(h,m,{locale:xs,...s});let f=u(n,"PPPP");return a.today&&(f=`Today, ${f}`),a.selected&&(f=`${f}, selected`),f},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:n=>`Week ${n}`,labelYearDropdown:"Choose the Year",labelGrid:(n,a,s)=>{let l;return s&&typeof s.format=="function"?l=s.format.bind(s):l=(u,f)=>Cs(u,f,{locale:xs,...a}),l(n,"LLLL yyyy")},labelGridcell:(n,a,s,l)=>{let u;l&&typeof l.format=="function"?u=l.format.bind(l):u=(h,m)=>Cs(h,m,{locale:xs,...s});let f=u(n,"PPPP");return a?.today&&(f=`Today, ${f}`),f},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(n,a,s)=>{let l;return s&&typeof s.format=="function"?l=s.format.bind(s):l=(u,f)=>Cs(u,f,{locale:xs,...a}),l(n,"cccc")}}};class un{constructor(a,s){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?ga.tz(this.options.timeZone):new this.Date,this.newDate=(l,u,f)=>this.overrides?.newDate?this.overrides.newDate(l,u,f):this.options.timeZone?new ga(l,u,f,this.options.timeZone):new Date(l,u,f),this.addDays=(l,u)=>this.overrides?.addDays?this.overrides.addDays(l,u):sC(l,u),this.addMonths=(l,u)=>this.overrides?.addMonths?this.overrides.addMonths(l,u):lC(l,u),this.addWeeks=(l,u)=>this.overrides?.addWeeks?this.overrides.addWeeks(l,u):rC(l,u),this.addYears=(l,u)=>this.overrides?.addYears?this.overrides.addYears(l,u):cC(l,u),this.differenceInCalendarDays=(l,u)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(l,u):uC(l,u),this.differenceInCalendarMonths=(l,u)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(l,u):dC(l,u),this.eachMonthOfInterval=l=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(l):fC(l),this.eachYearOfInterval=l=>{const u=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(l):hC(l),f=new Set(u.map(m=>this.getYear(m)));if(f.size===u.length)return u;const h=[];return f.forEach(m=>{h.push(new Date(m,0,1))}),h},this.endOfBroadcastWeek=l=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(l):sT(l,this),this.endOfISOWeek=l=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(l):mC(l),this.endOfMonth=l=>this.overrides?.endOfMonth?this.overrides.endOfMonth(l):pC(l),this.endOfWeek=(l,u)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(l,u):gC(l,this.options),this.endOfYear=l=>this.overrides?.endOfYear?this.overrides.endOfYear(l):yC(l),this.format=(l,u,f)=>{const h=this.overrides?.format?this.overrides.format(l,u,this.options):Cs(l,u,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(h):h},this.getISOWeek=l=>this.overrides?.getISOWeek?this.overrides.getISOWeek(l):xC(l),this.getMonth=(l,u)=>this.overrides?.getMonth?this.overrides.getMonth(l,this.options):vC(l,this.options),this.getYear=(l,u)=>this.overrides?.getYear?this.overrides.getYear(l,this.options):bC(l,this.options),this.getWeek=(l,u)=>this.overrides?.getWeek?this.overrides.getWeek(l,this.options):SC(l,this.options),this.isAfter=(l,u)=>this.overrides?.isAfter?this.overrides.isAfter(l,u):CC(l,u),this.isBefore=(l,u)=>this.overrides?.isBefore?this.overrides.isBefore(l,u):NC(l,u),this.isDate=l=>this.overrides?.isDate?this.overrides.isDate(l):wC(l),this.isSameDay=(l,u)=>this.overrides?.isSameDay?this.overrides.isSameDay(l,u):kC(l,u),this.isSameMonth=(l,u)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(l,u):AC(l,u),this.isSameYear=(l,u)=>this.overrides?.isSameYear?this.overrides.isSameYear(l,u):jC(l,u),this.max=l=>this.overrides?.max?this.overrides.max(l):TC(l),this.min=l=>this.overrides?.min?this.overrides.min(l):MC(l),this.setMonth=(l,u)=>this.overrides?.setMonth?this.overrides.setMonth(l,u):DC(l,u),this.setYear=(l,u)=>this.overrides?.setYear?this.overrides.setYear(l,u):EC(l,u),this.startOfBroadcastWeek=(l,u)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(l,this):rv(l,this),this.startOfDay=l=>this.overrides?.startOfDay?this.overrides.startOfDay(l):OC(l),this.startOfISOWeek=l=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(l):RC(l),this.startOfMonth=l=>this.overrides?.startOfMonth?this.overrides.startOfMonth(l):LC(l),this.startOfWeek=(l,u)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(l,this.options):PC(l,this.options),this.startOfYear=l=>this.overrides?.startOfYear?this.overrides.startOfYear(l):_C(l),this.options={locale:cv,...a},this.overrides=s}getDigitMap(){const{numerals:a="latn"}=this.options,s=new Intl.NumberFormat("en-US",{numberingSystem:a}),l={};for(let u=0;u<10;u++)l[u.toString()]=s.format(u);return l}replaceDigits(a){const s=this.getDigitMap();return a.replace(/\d/g,l=>s[l]||l)}formatNumber(a){return this.replaceDigits(a.toString())}getMonthYearOrder(){const a=this.options.locale?.code;return a&&un.yearFirstLocales.has(a)?"year-first":"month-first"}formatMonthYear(a){const{locale:s,timeZone:l,numerals:u}=this.options,f=s?.code;if(f&&un.yearFirstLocales.has(f))try{return new Intl.DateTimeFormat(f,{month:"long",year:"numeric",timeZone:l,numberingSystem:u}).format(a)}catch{}const h=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(a,h)}}un.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const Kn=new un;class uv{constructor(a,s,l=Kn){this.date=a,this.displayMonth=s,this.outside=!!(s&&!l.isSameMonth(a,s)),this.dateLib=l,this.isoDate=l.format(a,"yyyy-MM-dd"),this.displayMonthId=l.format(s,"yyyy-MM"),this.dateMonthId=l.format(a,"yyyy-MM")}isEqualTo(a){return this.dateLib.isSameDay(a.date,this.date)&&this.dateLib.isSameMonth(a.displayMonth,this.displayMonth)}}class lT{constructor(a,s){this.date=a,this.weeks=s}}class rT{constructor(a,s){this.days=s,this.weekNumber=a}}function cT(n){return ie.createElement("button",{...n})}function uT(n){return ie.createElement("span",{...n})}function dT(n){const{size:a=24,orientation:s="left",className:l}=n;return ie.createElement("svg",{className:l,width:a,height:a,viewBox:"0 0 24 24"},s==="up"&&ie.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),s==="down"&&ie.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),s==="left"&&ie.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),s==="right"&&ie.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function fT(n){const{day:a,modifiers:s,...l}=n;return ie.createElement("td",{...l})}function hT(n){const{day:a,modifiers:s,...l}=n,u=ie.useRef(null);return ie.useEffect(()=>{s.focused&&u.current?.focus()},[s.focused]),ie.createElement("button",{ref:u,...l})}var me;(function(n){n.Root="root",n.Chevron="chevron",n.Day="day",n.DayButton="day_button",n.CaptionLabel="caption_label",n.Dropdowns="dropdowns",n.Dropdown="dropdown",n.DropdownRoot="dropdown_root",n.Footer="footer",n.MonthGrid="month_grid",n.MonthCaption="month_caption",n.MonthsDropdown="months_dropdown",n.Month="month",n.Months="months",n.Nav="nav",n.NextMonthButton="button_next",n.PreviousMonthButton="button_previous",n.Week="week",n.Weeks="weeks",n.Weekday="weekday",n.Weekdays="weekdays",n.WeekNumber="week_number",n.WeekNumberHeader="week_number_header",n.YearsDropdown="years_dropdown"})(me||(me={}));var ot;(function(n){n.disabled="disabled",n.hidden="hidden",n.outside="outside",n.focused="focused",n.today="today"})(ot||(ot={}));var Tn;(function(n){n.range_end="range_end",n.range_middle="range_middle",n.range_start="range_start",n.selected="selected"})(Tn||(Tn={}));var cn;(function(n){n.weeks_before_enter="weeks_before_enter",n.weeks_before_exit="weeks_before_exit",n.weeks_after_enter="weeks_after_enter",n.weeks_after_exit="weeks_after_exit",n.caption_after_enter="caption_after_enter",n.caption_after_exit="caption_after_exit",n.caption_before_enter="caption_before_enter",n.caption_before_exit="caption_before_exit"})(cn||(cn={}));function mT(n){const{options:a,className:s,components:l,classNames:u,...f}=n,h=[u[me.Dropdown],s].join(" "),m=a?.find(({value:p})=>p===f.value);return ie.createElement("span",{"data-disabled":f.disabled,className:u[me.DropdownRoot]},ie.createElement(l.Select,{className:h,...f},a?.map(({value:p,label:y,disabled:C})=>ie.createElement(l.Option,{key:p,value:p,disabled:C},y))),ie.createElement("span",{className:u[me.CaptionLabel],"aria-hidden":!0},m?.label,ie.createElement(l.Chevron,{orientation:"down",size:18,className:u[me.Chevron]})))}function pT(n){return ie.createElement("div",{...n})}function gT(n){return ie.createElement("div",{...n})}function yT(n){const{calendarMonth:a,displayIndex:s,...l}=n;return ie.createElement("div",{...l},n.children)}function xT(n){const{calendarMonth:a,displayIndex:s,...l}=n;return ie.createElement("div",{...l})}function vT(n){return ie.createElement("table",{...n})}function bT(n){return ie.createElement("div",{...n})}const dv=S.createContext(void 0);function Us(){const n=S.useContext(dv);if(n===void 0)throw new Error("useDayPicker() must be used within a custom component.");return n}function ST(n){const{components:a}=Us();return ie.createElement(a.Dropdown,{...n})}function CT(n){const{onPreviousClick:a,onNextClick:s,previousMonth:l,nextMonth:u,...f}=n,{components:h,classNames:m,labels:{labelPrevious:p,labelNext:y}}=Us(),C=S.useCallback(b=>{u&&s?.(b)},[u,s]),x=S.useCallback(b=>{l&&a?.(b)},[l,a]);return ie.createElement("nav",{...f},ie.createElement(h.PreviousMonthButton,{type:"button",className:m[me.PreviousMonthButton],tabIndex:l?void 0:-1,"aria-disabled":l?void 0:!0,"aria-label":p(l),onClick:x},ie.createElement(h.Chevron,{disabled:l?void 0:!0,className:m[me.Chevron],orientation:"left"})),ie.createElement(h.NextMonthButton,{type:"button",className:m[me.NextMonthButton],tabIndex:u?void 0:-1,"aria-disabled":u?void 0:!0,"aria-label":y(u),onClick:C},ie.createElement(h.Chevron,{disabled:u?void 0:!0,orientation:"right",className:m[me.Chevron]})))}function NT(n){const{components:a}=Us();return ie.createElement(a.Button,{...n})}function wT(n){return ie.createElement("option",{...n})}function kT(n){const{components:a}=Us();return ie.createElement(a.Button,{...n})}function AT(n){const{rootRef:a,...s}=n;return ie.createElement("div",{...s,ref:a})}function jT(n){return ie.createElement("select",{...n})}function TT(n){const{week:a,...s}=n;return ie.createElement("tr",{...s})}function MT(n){return ie.createElement("th",{...n})}function DT(n){return ie.createElement("thead",{"aria-hidden":!0},ie.createElement("tr",{...n}))}function ET(n){const{week:a,...s}=n;return ie.createElement("th",{...s})}function OT(n){return ie.createElement("th",{...n})}function RT(n){return ie.createElement("tbody",{...n})}function LT(n){const{components:a}=Us();return ie.createElement(a.Dropdown,{...n})}const PT=Object.freeze(Object.defineProperty({__proto__:null,Button:cT,CaptionLabel:uT,Chevron:dT,Day:fT,DayButton:hT,Dropdown:mT,DropdownNav:pT,Footer:gT,Month:yT,MonthCaption:xT,MonthGrid:vT,Months:bT,MonthsDropdown:ST,Nav:CT,NextMonthButton:NT,Option:wT,PreviousMonthButton:kT,Root:AT,Select:jT,Week:TT,WeekNumber:ET,WeekNumberHeader:OT,Weekday:MT,Weekdays:DT,Weeks:RT,YearsDropdown:LT},Symbol.toStringTag,{value:"Module"}));function ya(n,a,s=!1,l=Kn){let{from:u,to:f}=n;const{differenceInCalendarDays:h,isSameDay:m}=l;return u&&f?(h(f,u)<0&&([u,f]=[f,u]),h(a,u)>=(s?1:0)&&h(f,a)>=(s?1:0)):!s&&f?m(f,a):!s&&u?m(u,a):!1}function mf(n){return!!(n&&typeof n=="object"&&"before"in n&&"after"in n)}function Pr(n){return!!(n&&typeof n=="object"&&"from"in n)}function pf(n){return!!(n&&typeof n=="object"&&"after"in n)}function gf(n){return!!(n&&typeof n=="object"&&"before"in n)}function fv(n){return!!(n&&typeof n=="object"&&"dayOfWeek"in n)}function hv(n,a){return Array.isArray(n)&&n.every(a.isDate)}function xa(n,a,s=Kn){const l=Array.isArray(a)?a:[a],{isSameDay:u,differenceInCalendarDays:f,isAfter:h}=s;return l.some(m=>{if(typeof m=="boolean")return m;if(s.isDate(m))return u(n,m);if(hv(m,s))return m.some(p=>u(n,p));if(Pr(m))return ya(m,n,!1,s);if(fv(m))return Array.isArray(m.dayOfWeek)?m.dayOfWeek.includes(n.getDay()):m.dayOfWeek===n.getDay();if(mf(m)){const p=f(m.before,n),y=f(m.after,n),C=p>0,x=y<0;return h(m.before,m.after)?x&&C:C||x}return pf(m)?f(n,m.after)>0:gf(m)?f(m.before,n)>0:typeof m=="function"?m(n):!1})}function _T(n,a,s,l,u){const{disabled:f,hidden:h,modifiers:m,showOutsideDays:p,broadcastCalendar:y,today:C=u.today()}=a,{isSameDay:x,isSameMonth:b,startOfMonth:w,isBefore:N,endOfMonth:M,isAfter:E}=u,T=s&&w(s),H=l&&M(l),B={[ot.focused]:[],[ot.outside]:[],[ot.disabled]:[],[ot.hidden]:[],[ot.today]:[]},U={};for(const O of n){const{date:k,displayMonth:_}=O,X=!!(_&&!b(k,_)),F=!!(T&&N(k,T)),Q=!!(H&&E(k,H)),ae=!!(f&&xa(k,f,u)),te=!!(h&&xa(k,h,u))||F||Q||!y&&!p&&X||y&&p===!1&&X,ye=x(k,C);X&&B.outside.push(O),ae&&B.disabled.push(O),te&&B.hidden.push(O),ye&&B.today.push(O),m&&Object.keys(m).forEach(de=>{const Ce=m?.[de];Ce&&xa(k,Ce,u)&&(U[de]?U[de].push(O):U[de]=[O])})}return O=>{const k={[ot.focused]:!1,[ot.disabled]:!1,[ot.hidden]:!1,[ot.outside]:!1,[ot.today]:!1},_={};for(const X in B){const F=B[X];k[X]=F.some(Q=>Q===O)}for(const X in U)_[X]=U[X].some(F=>F===O);return{...k,..._}}}function zT(n,a,s={}){return Object.entries(n).filter(([,u])=>u===!0).reduce((u,[f])=>(s[f]?u.push(s[f]):a[ot[f]]?u.push(a[ot[f]]):a[Tn[f]]&&u.push(a[Tn[f]]),u),[a[me.Day]])}function UT(n){return{...PT,...n}}function IT(n){const a={"data-mode":n.mode??void 0,"data-required":"required"in n?n.required:void 0,"data-multiple-months":n.numberOfMonths&&n.numberOfMonths>1||void 0,"data-week-numbers":n.showWeekNumber||void 0,"data-broadcast-calendar":n.broadcastCalendar||void 0,"data-nav-layout":n.navLayout||void 0};return Object.entries(n).forEach(([s,l])=>{s.startsWith("data-")&&(a[s]=l)}),a}function HT(){const n={};for(const a in me)n[me[a]]=`rdp-${me[a]}`;for(const a in ot)n[ot[a]]=`rdp-${ot[a]}`;for(const a in Tn)n[Tn[a]]=`rdp-${Tn[a]}`;for(const a in cn)n[cn[a]]=`rdp-${cn[a]}`;return n}function mv(n,a,s){return(s??new un(a)).formatMonthYear(n)}const BT=mv;function qT(n,a,s){return(s??new un(a)).format(n,"d")}function KT(n,a=Kn){return a.format(n,"LLLL")}function GT(n,a,s){return(s??new un(a)).format(n,"cccccc")}function YT(n,a=Kn){return n<10?a.formatNumber(`0${n.toLocaleString()}`):a.formatNumber(`${n.toLocaleString()}`)}function VT(){return""}function pv(n,a=Kn){return a.format(n,"yyyy")}const FT=pv,QT=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:mv,formatDay:qT,formatMonthCaption:BT,formatMonthDropdown:KT,formatWeekNumber:YT,formatWeekNumberHeader:VT,formatWeekdayName:GT,formatYearCaption:FT,formatYearDropdown:pv},Symbol.toStringTag,{value:"Module"}));function $T(n){return n?.formatMonthCaption&&!n.formatCaption&&(n.formatCaption=n.formatMonthCaption),n?.formatYearCaption&&!n.formatYearDropdown&&(n.formatYearDropdown=n.formatYearCaption),{...QT,...n}}function yf(n,a,s,l){let u=(l??new un(s)).format(n,"PPPP");return a.today&&(u=`Today, ${u}`),a.selected&&(u=`${u}, selected`),u}const WT=yf;function xf(n,a,s){return(s??new un(a)).formatMonthYear(n)}const XT=xf;function gv(n,a,s,l){let u=(l??new un(s)).format(n,"PPPP");return a?.today&&(u=`Today, ${u}`),u}function yv(n){return"Choose the Month"}function xv(){return""}const ZT="Go to the Next Month";function vv(n,a){return ZT}function bv(n){return"Go to the Previous Month"}function Sv(n,a,s){return(s??new un(a)).format(n,"cccc")}function Cv(n,a){return`Week ${n}`}function Nv(n){return"Week Number"}function wv(n){return"Choose the Year"}const JT=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:XT,labelDay:WT,labelDayButton:yf,labelGrid:xf,labelGridcell:gv,labelMonthDropdown:yv,labelNav:xv,labelNext:vv,labelPrevious:bv,labelWeekNumber:Cv,labelWeekNumberHeader:Nv,labelWeekday:Sv,labelYearDropdown:wv},Symbol.toStringTag,{value:"Module"})),jn=(n,a,s)=>a||(s?typeof s=="function"?s:(...l)=>s:n);function eM(n,a){const s=a.locale?.labels??{};return{...JT,...n??{},labelDayButton:jn(yf,n?.labelDayButton,s.labelDayButton),labelMonthDropdown:jn(yv,n?.labelMonthDropdown,s.labelMonthDropdown),labelNext:jn(vv,n?.labelNext,s.labelNext),labelPrevious:jn(bv,n?.labelPrevious,s.labelPrevious),labelWeekNumber:jn(Cv,n?.labelWeekNumber,s.labelWeekNumber),labelYearDropdown:jn(wv,n?.labelYearDropdown,s.labelYearDropdown),labelGrid:jn(xf,n?.labelGrid,s.labelGrid),labelGridcell:jn(gv,n?.labelGridcell,s.labelGridcell),labelNav:jn(xv,n?.labelNav,s.labelNav),labelWeekNumberHeader:jn(Nv,n?.labelWeekNumberHeader,s.labelWeekNumberHeader),labelWeekday:jn(Sv,n?.labelWeekday,s.labelWeekday)}}function tM(n,a,s,l,u){const{startOfMonth:f,startOfYear:h,endOfYear:m,eachMonthOfInterval:p,getMonth:y}=u;return p({start:h(n),end:m(n)}).map(b=>{const w=l.formatMonthDropdown(b,u),N=y(b),M=a&&b<f(a)||s&&b>f(s)||!1;return{value:N,label:w,disabled:M}})}function nM(n,a={},s={}){let l={...a?.[me.Day]};return Object.entries(n).filter(([,u])=>u===!0).forEach(([u])=>{l={...l,...s?.[u]}}),l}function aM(n,a,s,l){const u=l??n.today(),f=s?n.startOfBroadcastWeek(u,n):a?n.startOfISOWeek(u):n.startOfWeek(u),h=[];for(let m=0;m<7;m++){const p=n.addDays(f,m);h.push(p)}return h}function iM(n,a,s,l,u=!1){if(!n||!a)return;const{startOfYear:f,endOfYear:h,eachYearOfInterval:m,getYear:p}=l,y=f(n),C=h(a),x=m({start:y,end:C});return u&&x.reverse(),x.map(b=>{const w=s.formatYearDropdown(b,l);return{value:p(b),label:w,disabled:!1}})}const Is=n=>n instanceof HTMLElement?n:null,ud=n=>[...n.querySelectorAll("[data-animated-month]")??[]],oM=n=>Is(n.querySelector("[data-animated-month]")),dd=n=>Is(n.querySelector("[data-animated-caption]")),fd=n=>Is(n.querySelector("[data-animated-weeks]")),sM=n=>Is(n.querySelector("[data-animated-nav]")),lM=n=>Is(n.querySelector("[data-animated-weekdays]"));function rM(n,a,{classNames:s,months:l,focused:u,dateLib:f}){const h=S.useRef(null),m=S.useRef(l),p=S.useRef(!1);S.useLayoutEffect(()=>{const y=m.current;if(m.current=l,!a||!n.current||!(n.current instanceof HTMLElement)||l.length===0||y.length===0||l.length!==y.length)return;const C=f.isSameMonth(l[0].date,y[0].date),x=f.isAfter(l[0].date,y[0].date),b=x?s[cn.caption_after_enter]:s[cn.caption_before_enter],w=x?s[cn.weeks_after_enter]:s[cn.weeks_before_enter],N=h.current,M=n.current.cloneNode(!0);if(M instanceof HTMLElement?(ud(M).forEach(B=>{if(!(B instanceof HTMLElement))return;const U=oM(B);U&&B.contains(U)&&B.removeChild(U);const O=dd(B);O&&O.classList.remove(b);const k=fd(B);k&&k.classList.remove(w)}),h.current=M):h.current=null,p.current||C||u)return;const E=N instanceof HTMLElement?ud(N):[],T=ud(n.current);if(T?.every(H=>H instanceof HTMLElement)&&E&&E.every(H=>H instanceof HTMLElement)){p.current=!0,n.current.style.isolation="isolate";const H=sM(n.current);H&&(H.style.zIndex="1"),T.forEach((B,U)=>{const O=E[U];if(!O)return;B.style.position="relative",B.style.overflow="hidden";const k=dd(B);k&&k.classList.add(b);const _=fd(B);_&&_.classList.add(w);const X=()=>{p.current=!1,n.current&&(n.current.style.isolation=""),H&&(H.style.zIndex=""),k&&k.classList.remove(b),_&&_.classList.remove(w),B.style.position="",B.style.overflow="",B.contains(O)&&B.removeChild(O)};O.style.pointerEvents="none",O.style.position="absolute",O.style.overflow="hidden",O.setAttribute("aria-hidden","true");const F=lM(O);F&&(F.style.opacity="0");const Q=dd(O);Q&&(Q.classList.add(x?s[cn.caption_before_exit]:s[cn.caption_after_exit]),Q.addEventListener("animationend",X));const ae=fd(O);ae&&ae.classList.add(x?s[cn.weeks_before_exit]:s[cn.weeks_after_exit]),B.insertBefore(O,B.firstChild)})}})}function cM(n,a,s,l){const u=n[0],f=n[n.length-1],{ISOWeek:h,fixedWeeks:m,broadcastCalendar:p}=s??{},{addDays:y,differenceInCalendarDays:C,differenceInCalendarMonths:x,endOfBroadcastWeek:b,endOfISOWeek:w,endOfMonth:N,endOfWeek:M,isAfter:E,startOfBroadcastWeek:T,startOfISOWeek:H,startOfWeek:B}=l,U=p?T(u,l):h?H(u):B(u),O=p?b(f):h?w(N(f)):M(N(f)),k=a&&(p?b(a):h?w(a):M(a)),_=k&&E(O,k)?k:O,X=C(_,U),F=x(f,u)+1,Q=[];for(let ye=0;ye<=X;ye++){const de=y(U,ye);Q.push(de)}const te=(p?35:42)*F;if(m&&Q.length<te){const ye=te-Q.length;for(let de=0;de<ye;de++){const Ce=y(Q[Q.length-1],1);Q.push(Ce)}}return Q}function uM(n){const a=[];return n.reduce((s,l)=>{const u=l.weeks.reduce((f,h)=>f.concat(h.days.slice()),a.slice());return s.concat(u.slice())},a.slice())}function dM(n,a,s,l){const{numberOfMonths:u=1}=s,f=[];for(let h=0;h<u;h++){const m=l.addMonths(n,h);if(a&&m>a)break;f.push(m)}return f}function Sy(n,a,s,l){const{month:u,defaultMonth:f,today:h=l.today(),numberOfMonths:m=1}=n;let p=u||f||h;const{differenceInCalendarMonths:y,addMonths:C,startOfMonth:x}=l;if(s&&y(s,p)<m-1){const b=-1*(m-1);p=C(s,b)}return a&&y(p,a)<0&&(p=a),x(p)}function fM(n,a,s,l){const{addDays:u,endOfBroadcastWeek:f,endOfISOWeek:h,endOfMonth:m,endOfWeek:p,getISOWeek:y,getWeek:C,startOfBroadcastWeek:x,startOfISOWeek:b,startOfWeek:w}=l,N=n.reduce((M,E)=>{const T=s.broadcastCalendar?x(E,l):s.ISOWeek?b(E):w(E),H=s.broadcastCalendar?f(E):s.ISOWeek?h(m(E)):p(m(E)),B=a.filter(_=>_>=T&&_<=H),U=s.broadcastCalendar?35:42;if(s.fixedWeeks&&B.length<U){const _=a.filter(X=>{const F=U-B.length;return X>H&&X<=u(H,F)});B.push(..._)}const O=B.reduce((_,X)=>{const F=s.ISOWeek?y(X):C(X),Q=_.find(te=>te.weekNumber===F),ae=new uv(X,E,l);return Q?Q.days.push(ae):_.push(new rT(F,[ae])),_},[]),k=new lT(E,O);return M.push(k),M},[]);return s.reverseMonths?N.reverse():N}function hM(n,a){let{startMonth:s,endMonth:l}=n;const{startOfYear:u,startOfDay:f,startOfMonth:h,endOfMonth:m,addYears:p,endOfYear:y,newDate:C,today:x}=a,{fromYear:b,toYear:w,fromMonth:N,toMonth:M}=n;!s&&N&&(s=N),!s&&b&&(s=a.newDate(b,0,1)),!l&&M&&(l=M),!l&&w&&(l=C(w,11,31));const E=n.captionLayout==="dropdown"||n.captionLayout==="dropdown-years";return s?s=h(s):b?s=C(b,0,1):!s&&E&&(s=u(p(n.today??x(),-100))),l?l=m(l):w?l=C(w,11,31):!l&&E&&(l=y(n.today??x())),[s&&f(s),l&&f(l)]}function mM(n,a,s,l){if(s.disableNavigation)return;const{pagedNavigation:u,numberOfMonths:f=1}=s,{startOfMonth:h,addMonths:m,differenceInCalendarMonths:p}=l,y=u?f:1,C=h(n);if(!a)return m(C,y);if(!(p(a,n)<f))return m(C,y)}function pM(n,a,s,l){if(s.disableNavigation)return;const{pagedNavigation:u,numberOfMonths:f}=s,{startOfMonth:h,addMonths:m,differenceInCalendarMonths:p}=l,y=u?f??1:1,C=h(n);if(!a)return m(C,-y);if(!(p(C,a)<=0))return m(C,-y)}function gM(n){const a=[];return n.reduce((s,l)=>s.concat(l.weeks.slice()),a.slice())}function _r(n,a){const[s,l]=S.useState(n);return[a===void 0?s:a,l]}function yM(n,a){const[s,l]=hM(n,a),{startOfMonth:u,endOfMonth:f}=a,h=Sy(n,s,l,a),[m,p]=_r(h,n.month?h:void 0);S.useEffect(()=>{const U=Sy(n,s,l,a);p(U)},[n.timeZone]);const{months:y,weeks:C,days:x,previousMonth:b,nextMonth:w}=S.useMemo(()=>{const U=dM(m,l,{numberOfMonths:n.numberOfMonths},a),O=cM(U,n.endMonth?f(n.endMonth):void 0,{ISOWeek:n.ISOWeek,fixedWeeks:n.fixedWeeks,broadcastCalendar:n.broadcastCalendar},a),k=fM(U,O,{broadcastCalendar:n.broadcastCalendar,fixedWeeks:n.fixedWeeks,ISOWeek:n.ISOWeek,reverseMonths:n.reverseMonths},a),_=gM(k),X=uM(k),F=pM(m,s,n,a),Q=mM(m,l,n,a);return{months:k,weeks:_,days:X,previousMonth:F,nextMonth:Q}},[a,m.getTime(),l?.getTime(),s?.getTime(),n.disableNavigation,n.broadcastCalendar,n.endMonth?.getTime(),n.fixedWeeks,n.ISOWeek,n.numberOfMonths,n.pagedNavigation,n.reverseMonths]),{disableNavigation:N,onMonthChange:M}=n,E=U=>C.some(O=>O.days.some(k=>k.isEqualTo(U))),T=U=>{if(N)return;let O=u(U);s&&O<u(s)&&(O=u(s)),l&&O>u(l)&&(O=u(l)),p(O),M?.(O)};return{months:y,weeks:C,days:x,navStart:s,navEnd:l,previousMonth:b,nextMonth:w,goToMonth:T,goToDay:U=>{E(U)||T(U.date)}}}var In;(function(n){n[n.Today=0]="Today",n[n.Selected=1]="Selected",n[n.LastFocused=2]="LastFocused",n[n.FocusedModifier=3]="FocusedModifier"})(In||(In={}));function Cy(n){return!n[ot.disabled]&&!n[ot.hidden]&&!n[ot.outside]}function xM(n,a,s,l){let u,f=-1;for(const h of n){const m=a(h);Cy(m)&&(m[ot.focused]&&f<In.FocusedModifier?(u=h,f=In.FocusedModifier):l?.isEqualTo(h)&&f<In.LastFocused?(u=h,f=In.LastFocused):s(h.date)&&f<In.Selected?(u=h,f=In.Selected):m[ot.today]&&f<In.Today&&(u=h,f=In.Today))}return u||(u=n.find(h=>Cy(a(h)))),u}function vM(n,a,s,l,u,f,h){const{ISOWeek:m,broadcastCalendar:p}=f,{addDays:y,addMonths:C,addWeeks:x,addYears:b,endOfBroadcastWeek:w,endOfISOWeek:N,endOfWeek:M,max:E,min:T,startOfBroadcastWeek:H,startOfISOWeek:B,startOfWeek:U}=h;let k={day:y,week:x,month:C,year:b,startOfWeek:_=>p?H(_,h):m?B(_):U(_),endOfWeek:_=>p?w(_):m?N(_):M(_)}[n](s,a==="after"?1:-1);return a==="before"&&l?k=E([l,k]):a==="after"&&u&&(k=T([u,k])),k}function kv(n,a,s,l,u,f,h,m=0){if(m>365)return;const p=vM(n,a,s.date,l,u,f,h),y=!!(f.disabled&&xa(p,f.disabled,h)),C=!!(f.hidden&&xa(p,f.hidden,h)),x=p,b=new uv(p,x,h);return!y&&!C?b:kv(n,a,b,l,u,f,h,m+1)}function bM(n,a,s,l,u){const{autoFocus:f}=n,[h,m]=S.useState(),p=xM(a.days,s,l||(()=>!1),h),[y,C]=S.useState(f?p:void 0);return{isFocusTarget:M=>!!p?.isEqualTo(M),setFocused:C,focused:y,blur:()=>{m(y),C(void 0)},moveFocus:(M,E)=>{if(!y)return;const T=kv(M,E,y,a.navStart,a.navEnd,n,u);T&&(n.disableNavigation&&!a.days.some(B=>B.isEqualTo(T))||(a.goToDay(T),C(T)))}}}function SM(n,a){const{selected:s,required:l,onSelect:u}=n,[f,h]=_r(s,u?s:void 0),m=u?s:f,{isSameDay:p}=a,y=w=>m?.some(N=>p(N,w))??!1,{min:C,max:x}=n;return{selected:m,select:(w,N,M)=>{let E=[...m??[]];if(y(w)){if(m?.length===C||l&&m?.length===1)return;E=m?.filter(T=>!p(T,w))}else m?.length===x?E=[w]:E=[...E,w];return u||h(E),u?.(E,w,N,M),E},isSelected:y}}function CM(n,a,s=0,l=0,u=!1,f=Kn){const{from:h,to:m}=a||{},{isSameDay:p,isAfter:y,isBefore:C}=f;let x;if(!h&&!m)x={from:n,to:s>0?void 0:n};else if(h&&!m)p(h,n)?s===0?x={from:h,to:n}:u?x={from:h,to:void 0}:x=void 0:C(n,h)?x={from:n,to:h}:x={from:h,to:n};else if(h&&m)if(p(h,n)&&p(m,n))u?x={from:h,to:m}:x=void 0;else if(p(h,n))x={from:h,to:s>0?void 0:n};else if(p(m,n))x={from:n,to:s>0?void 0:n};else if(C(n,h))x={from:n,to:m};else if(y(n,h))x={from:h,to:n};else if(y(n,m))x={from:h,to:n};else throw new Error("Invalid range");if(x?.from&&x?.to){const b=f.differenceInCalendarDays(x.to,x.from);l>0&&b>l?x={from:n,to:void 0}:s>1&&b<s&&(x={from:n,to:void 0})}return x}function NM(n,a,s=Kn){const l=Array.isArray(a)?a:[a];let u=n.from;const f=s.differenceInCalendarDays(n.to,n.from),h=Math.min(f,6);for(let m=0;m<=h;m++){if(l.includes(u.getDay()))return!0;u=s.addDays(u,1)}return!1}function Ny(n,a,s=Kn){return ya(n,a.from,!1,s)||ya(n,a.to,!1,s)||ya(a,n.from,!1,s)||ya(a,n.to,!1,s)}function wM(n,a,s=Kn){const l=Array.isArray(a)?a:[a];if(l.filter(m=>typeof m!="function").some(m=>typeof m=="boolean"?m:s.isDate(m)?ya(n,m,!1,s):hv(m,s)?m.some(p=>ya(n,p,!1,s)):Pr(m)?m.from&&m.to?Ny(n,{from:m.from,to:m.to},s):!1:fv(m)?NM(n,m.dayOfWeek,s):mf(m)?s.isAfter(m.before,m.after)?Ny(n,{from:s.addDays(m.after,1),to:s.addDays(m.before,-1)},s):xa(n.from,m,s)||xa(n.to,m,s):pf(m)||gf(m)?xa(n.from,m,s)||xa(n.to,m,s):!1))return!0;const h=l.filter(m=>typeof m=="function");if(h.length){let m=n.from;const p=s.differenceInCalendarDays(n.to,n.from);for(let y=0;y<=p;y++){if(h.some(C=>C(m)))return!0;m=s.addDays(m,1)}}return!1}function kM(n,a){const{disabled:s,excludeDisabled:l,selected:u,required:f,onSelect:h}=n,[m,p]=_r(u,h?u:void 0),y=h?u:m;return{selected:y,select:(b,w,N)=>{const{min:M,max:E}=n,T=b?CM(b,y,M,E,f,a):void 0;return l&&s&&T?.from&&T.to&&wM({from:T.from,to:T.to},s,a)&&(T.from=b,T.to=void 0),h||p(T),h?.(T,b,w,N),T},isSelected:b=>y&&ya(y,b,!1,a)}}function AM(n,a){const{selected:s,required:l,onSelect:u}=n,[f,h]=_r(s,u?s:void 0),m=u?s:f,{isSameDay:p}=a;return{selected:m,select:(x,b,w)=>{let N=x;return!l&&m&&m&&p(x,m)&&(N=void 0),u||h(N),u?.(N,x,b,w),N},isSelected:x=>m?p(m,x):!1}}function jM(n,a){const s=AM(n,a),l=SM(n,a),u=kM(n,a);switch(n.mode){case"single":return s;case"multiple":return l;case"range":return u;default:return}}function Rt(n,a){return n instanceof ga&&n.timeZone===a?n:new ga(n,a)}function wy(n,a){return typeof n=="boolean"||typeof n=="function"?n:n instanceof Date?Rt(n,a):Array.isArray(n)?n.map(s=>s instanceof Date?Rt(s,a):s):Pr(n)?{...n,from:n.from?Rt(n.from,a):n.from,to:n.to?Rt(n.to,a):n.to}:mf(n)?{before:Rt(n.before,a),after:Rt(n.after,a)}:pf(n)?{after:Rt(n.after,a)}:gf(n)?{before:Rt(n.before,a)}:n}function hd(n,a){return n&&(Array.isArray(n)?n.map(s=>wy(s,a)):wy(n,a))}function TM(n){let a=n;const s=a.timeZone;if(s&&(a={...n,timeZone:s},a.today&&(a.today=Rt(a.today,s)),a.month&&(a.month=Rt(a.month,s)),a.defaultMonth&&(a.defaultMonth=Rt(a.defaultMonth,s)),a.startMonth&&(a.startMonth=Rt(a.startMonth,s)),a.endMonth&&(a.endMonth=Rt(a.endMonth,s)),a.mode==="single"&&a.selected?a.selected=Rt(a.selected,s):a.mode==="multiple"&&a.selected?a.selected=a.selected?.map(he=>Rt(he,s)):a.mode==="range"&&a.selected&&(a.selected={from:a.selected.from?Rt(a.selected.from,s):a.selected.from,to:a.selected.to?Rt(a.selected.to,s):a.selected.to}),a.disabled!==void 0&&(a.disabled=hd(a.disabled,s)),a.hidden!==void 0&&(a.hidden=hd(a.hidden,s)),a.modifiers)){const he={};Object.keys(a.modifiers).forEach(Ae=>{he[Ae]=hd(a.modifiers?.[Ae],s)}),a.modifiers=he}const{components:l,formatters:u,labels:f,dateLib:h,locale:m,classNames:p}=S.useMemo(()=>{const he={...cv,...a.locale},Ae=new un({locale:he,weekStartsOn:a.broadcastCalendar?1:a.weekStartsOn,firstWeekContainsDate:a.firstWeekContainsDate,useAdditionalWeekYearTokens:a.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:a.useAdditionalDayOfYearTokens,timeZone:a.timeZone,numerals:a.numerals},a.dateLib);return{dateLib:Ae,components:UT(a.components),formatters:$T(a.formatters),labels:eM(a.labels,Ae.options),locale:he,classNames:{...HT(),...a.classNames}}},[a.locale,a.broadcastCalendar,a.weekStartsOn,a.firstWeekContainsDate,a.useAdditionalWeekYearTokens,a.useAdditionalDayOfYearTokens,a.timeZone,a.numerals,a.dateLib,a.components,a.formatters,a.labels,a.classNames]);a.today||(a={...a,today:h.today()});const{captionLayout:y,mode:C,navLayout:x,numberOfMonths:b=1,onDayBlur:w,onDayClick:N,onDayFocus:M,onDayKeyDown:E,onDayMouseEnter:T,onDayMouseLeave:H,onNextClick:B,onPrevClick:U,showWeekNumber:O,styles:k}=a,{formatCaption:_,formatDay:X,formatMonthDropdown:F,formatWeekNumber:Q,formatWeekNumberHeader:ae,formatWeekdayName:te,formatYearDropdown:ye}=u,de=yM(a,h),{days:Ce,months:R,navStart:W,navEnd:ee,previousMonth:$,nextMonth:ce,goToMonth:fe}=de,we=_T(Ce,a,W,ee,h),{isSelected:V,select:J,selected:se}=jM(a,h)??{},{blur:ne,focused:oe,isFocusTarget:xe,moveFocus:Le,setFocused:Ke}=bM(a,de,we,V??(()=>!1),h),{labelDayButton:St,labelGridcell:Ct,labelGrid:Ye,labelMonthDropdown:nt,labelNav:Ut,labelPrevious:Qt,labelNext:Gn,labelWeekday:je,labelWeekNumber:$t,labelWeekNumberHeader:En,labelYearDropdown:Wt}=f,Sa=S.useMemo(()=>aM(h,a.ISOWeek,a.broadcastCalendar,a.today),[h,a.ISOWeek,a.broadcastCalendar,a.today]),Yn=C!==void 0||N!==void 0,ft=S.useCallback(()=>{$&&(fe($),U?.($))},[$,fe,U]),Xt=S.useCallback(()=>{ce&&(fe(ce),B?.(ce))},[fe,ce,B]),Vn=S.useCallback((he,Ae)=>be=>{be.preventDefault(),be.stopPropagation(),Ke(he),!Ae.disabled&&(J?.(he.date,Ae,be),N?.(he.date,Ae,be))},[J,N,Ke]),Ja=S.useCallback((he,Ae)=>be=>{Ke(he),M?.(he.date,Ae,be)},[M,Ke]),On=S.useCallback((he,Ae)=>be=>{ne(),w?.(he.date,Ae,be)},[ne,w]),Rn=S.useCallback((he,Ae)=>be=>{const Oe={ArrowLeft:[be.shiftKey?"month":"day",a.dir==="rtl"?"after":"before"],ArrowRight:[be.shiftKey?"month":"day",a.dir==="rtl"?"before":"after"],ArrowDown:[be.shiftKey?"year":"week","after"],ArrowUp:[be.shiftKey?"year":"week","before"],PageUp:[be.shiftKey?"year":"month","before"],PageDown:[be.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(Oe[be.key]){be.preventDefault(),be.stopPropagation();const[Je,Ne]=Oe[be.key];Le(Je,Ne)}E?.(he.date,Ae,be)},[Le,E,a.dir]),ji=S.useCallback((he,Ae)=>be=>{T?.(he.date,Ae,be)},[T]),No=S.useCallback((he,Ae)=>be=>{H?.(he.date,Ae,be)},[H]),wo=S.useCallback(he=>Ae=>{const be=Number(Ae.target.value),Oe=h.setMonth(h.startOfMonth(he),be);fe(Oe)},[h,fe]),Fn=S.useCallback(he=>Ae=>{const be=Number(Ae.target.value),Oe=h.setYear(h.startOfMonth(he),be);fe(Oe)},[h,fe]),{className:Z,style:De}=S.useMemo(()=>({className:[p[me.Root],a.className].filter(Boolean).join(" "),style:{...k?.[me.Root],...a.style}}),[p,a.className,a.style,k]),ve=IT(a),Ee=S.useRef(null);rM(Ee,!!a.animate,{classNames:p,months:R,focused:oe,dateLib:h});const at={dayPickerProps:a,selected:se,select:J,isSelected:V,months:R,nextMonth:ce,previousMonth:$,goToMonth:fe,getModifiers:we,components:l,classNames:p,styles:k,labels:f,formatters:u};return ie.createElement(dv.Provider,{value:at},ie.createElement(l.Root,{rootRef:a.animate?Ee:void 0,className:Z,style:De,dir:a.dir,id:a.id,lang:a.lang,nonce:a.nonce,title:a.title,role:a.role,"aria-label":a["aria-label"],"aria-labelledby":a["aria-labelledby"],...ve},ie.createElement(l.Months,{className:p[me.Months],style:k?.[me.Months]},!a.hideNavigation&&!x&&ie.createElement(l.Nav,{"data-animated-nav":a.animate?"true":void 0,className:p[me.Nav],style:k?.[me.Nav],"aria-label":Ut(),onPreviousClick:ft,onNextClick:Xt,previousMonth:$,nextMonth:ce}),R.map((he,Ae)=>ie.createElement(l.Month,{"data-animated-month":a.animate?"true":void 0,className:p[me.Month],style:k?.[me.Month],key:Ae,displayIndex:Ae,calendarMonth:he},x==="around"&&!a.hideNavigation&&Ae===0&&ie.createElement(l.PreviousMonthButton,{type:"button",className:p[me.PreviousMonthButton],tabIndex:$?void 0:-1,"aria-disabled":$?void 0:!0,"aria-label":Qt($),onClick:ft,"data-animated-button":a.animate?"true":void 0},ie.createElement(l.Chevron,{disabled:$?void 0:!0,className:p[me.Chevron],orientation:a.dir==="rtl"?"right":"left"})),ie.createElement(l.MonthCaption,{"data-animated-caption":a.animate?"true":void 0,className:p[me.MonthCaption],style:k?.[me.MonthCaption],calendarMonth:he,displayIndex:Ae},y?.startsWith("dropdown")?ie.createElement(l.DropdownNav,{className:p[me.Dropdowns],style:k?.[me.Dropdowns]},(()=>{const be=y==="dropdown"||y==="dropdown-months"?ie.createElement(l.MonthsDropdown,{key:"month",className:p[me.MonthsDropdown],"aria-label":nt(),classNames:p,components:l,disabled:!!a.disableNavigation,onChange:wo(he.date),options:tM(he.date,W,ee,u,h),style:k?.[me.Dropdown],value:h.getMonth(he.date)}):ie.createElement("span",{key:"month"},F(he.date,h)),Oe=y==="dropdown"||y==="dropdown-years"?ie.createElement(l.YearsDropdown,{key:"year",className:p[me.YearsDropdown],"aria-label":Wt(h.options),classNames:p,components:l,disabled:!!a.disableNavigation,onChange:Fn(he.date),options:iM(W,ee,u,h,!!a.reverseYears),style:k?.[me.Dropdown],value:h.getYear(he.date)}):ie.createElement("span",{key:"year"},ye(he.date,h));return h.getMonthYearOrder()==="year-first"?[Oe,be]:[be,Oe]})(),ie.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},_(he.date,h.options,h))):ie.createElement(l.CaptionLabel,{className:p[me.CaptionLabel],role:"status","aria-live":"polite"},_(he.date,h.options,h))),x==="around"&&!a.hideNavigation&&Ae===b-1&&ie.createElement(l.NextMonthButton,{type:"button",className:p[me.NextMonthButton],tabIndex:ce?void 0:-1,"aria-disabled":ce?void 0:!0,"aria-label":Gn(ce),onClick:Xt,"data-animated-button":a.animate?"true":void 0},ie.createElement(l.Chevron,{disabled:ce?void 0:!0,className:p[me.Chevron],orientation:a.dir==="rtl"?"left":"right"})),Ae===b-1&&x==="after"&&!a.hideNavigation&&ie.createElement(l.Nav,{"data-animated-nav":a.animate?"true":void 0,className:p[me.Nav],style:k?.[me.Nav],"aria-label":Ut(),onPreviousClick:ft,onNextClick:Xt,previousMonth:$,nextMonth:ce}),ie.createElement(l.MonthGrid,{role:"grid","aria-multiselectable":C==="multiple"||C==="range","aria-label":Ye(he.date,h.options,h)||void 0,className:p[me.MonthGrid],style:k?.[me.MonthGrid]},!a.hideWeekdays&&ie.createElement(l.Weekdays,{"data-animated-weekdays":a.animate?"true":void 0,className:p[me.Weekdays],style:k?.[me.Weekdays]},O&&ie.createElement(l.WeekNumberHeader,{"aria-label":En(h.options),className:p[me.WeekNumberHeader],style:k?.[me.WeekNumberHeader],scope:"col"},ae()),Sa.map(be=>ie.createElement(l.Weekday,{"aria-label":je(be,h.options,h),className:p[me.Weekday],key:String(be),style:k?.[me.Weekday],scope:"col"},te(be,h.options,h)))),ie.createElement(l.Weeks,{"data-animated-weeks":a.animate?"true":void 0,className:p[me.Weeks],style:k?.[me.Weeks]},he.weeks.map(be=>ie.createElement(l.Week,{className:p[me.Week],key:be.weekNumber,style:k?.[me.Week],week:be},O&&ie.createElement(l.WeekNumber,{week:be,style:k?.[me.WeekNumber],"aria-label":$t(be.weekNumber,{locale:m}),className:p[me.WeekNumber],scope:"row",role:"rowheader"},Q(be.weekNumber,h)),be.days.map(Oe=>{const{date:Je}=Oe,Ne=we(Oe);if(Ne[ot.focused]=!Ne.hidden&&!!oe?.isEqualTo(Oe),Ne[Tn.selected]=V?.(Je)||Ne.selected,Pr(se)){const{from:Zt,to:Nn}=se;Ne[Tn.range_start]=!!(Zt&&Nn&&h.isSameDay(Je,Zt)),Ne[Tn.range_end]=!!(Zt&&Nn&&h.isSameDay(Je,Nn)),Ne[Tn.range_middle]=ya(se,Je,!0,h)}const Lt=nM(Ne,k,a.modifiersStyles),Qn=zT(Ne,p,a.modifiersClassNames),wt=!Yn&&!Ne.hidden?Ct(Je,Ne,h.options,h):void 0;return ie.createElement(l.Day,{key:`${Oe.isoDate}_${Oe.displayMonthId}`,day:Oe,modifiers:Ne,className:Qn.join(" "),style:Lt,role:"gridcell","aria-selected":Ne.selected||void 0,"aria-label":wt,"data-day":Oe.isoDate,"data-month":Oe.outside?Oe.dateMonthId:void 0,"data-selected":Ne.selected||void 0,"data-disabled":Ne.disabled||void 0,"data-hidden":Ne.hidden||void 0,"data-outside":Oe.outside||void 0,"data-focused":Ne.focused||void 0,"data-today":Ne.today||void 0},!Ne.hidden&&Yn?ie.createElement(l.DayButton,{className:p[me.DayButton],style:k?.[me.DayButton],type:"button",day:Oe,modifiers:Ne,disabled:!Ne.focused&&Ne.disabled||void 0,"aria-disabled":Ne.focused&&Ne.disabled||void 0,tabIndex:xe(Oe)?0:-1,"aria-label":St(Je,Ne,h.options,h),onClick:Vn(Oe,Ne),onBlur:On(Oe,Ne),onFocus:Ja(Oe,Ne),onKeyDown:Rn(Oe,Ne),onMouseEnter:ji(Oe,Ne),onMouseLeave:No(Oe,Ne)},X(Je,h.options,h)):!Ne.hidden&&X(Oe.date,h.options,h))})))))))),a.footer&&ie.createElement(l.Footer,{className:p[me.Footer],style:k?.[me.Footer],role:"status","aria-live":"polite"},a.footer)))}function MM({className:n,classNames:a,showOutsideDays:s=!0,...l}){return r.jsx(TM,{showOutsideDays:s,className:q("p-2",n),classNames:{root:"relative",months:"flex flex-col sm:flex-row gap-2 sm:gap-4",month:"flex flex-col gap-2",month_caption:"flex justify-center pt-1 relative items-center h-8",caption_label:"text-sm font-medium",nav:"absolute inset-x-0 top-2 flex items-center justify-between px-1 z-10",button_previous:q(ar({variant:"ghost"}),"h-7 w-7 bg-transparent p-0 opacity-70 hover:opacity-100 hover:bg-accent rounded-md"),button_next:q(ar({variant:"ghost"}),"h-7 w-7 bg-transparent p-0 opacity-70 hover:opacity-100 hover:bg-accent rounded-md"),month_grid:"w-full border-collapse",weekdays:"flex w-full",weekday:"text-muted-foreground w-8 font-normal text-xs text-center",weeks:"flex flex-col",week:"flex w-full",day:q("relative h-8 w-8 p-0 text-center text-xs font-normal focus-within:relative focus-within:z-20","hover:bg-accent hover:text-accent-foreground rounded-full select-none"),day_button:q(ar({variant:"ghost"}),"h-8 w-8 p-0 font-normal rounded-full text-xs","aria-selected:opacity-100"),range_start:q("aria-selected:bg-primary aria-selected:text-primary-foreground","aria-selected:rounded-l-full aria-selected:rounded-r-none","aria-selected:hover:bg-primary aria-selected:hover:text-primary-foreground"),range_end:q("aria-selected:bg-primary aria-selected:text-primary-foreground","aria-selected:rounded-r-full aria-selected:rounded-l-none","aria-selected:hover:bg-primary aria-selected:hover:text-primary-foreground"),range_middle:q("aria-selected:bg-accent aria-selected:text-accent-foreground","aria-selected:rounded-none"),selected:q("bg-primary text-primary-foreground rounded-full","hover:bg-primary hover:text-primary-foreground","focus:bg-primary focus:text-primary-foreground"),today:"bg-accent text-accent-foreground rounded-full",outside:"text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30",disabled:"text-muted-foreground opacity-50",hidden:"invisible",...a},components:{Chevron:({orientation:u,className:f,...h})=>{const m=u==="left"?nC:u==="right"?yr:u==="up"?Ed:br;return r.jsx(m,{className:q("h-4 w-4",f),...h})}},...l})}MM.displayName="Calendar";const DM=S.lazy(()=>gt(()=>Promise.resolve().then(()=>hf),void 0).then(n=>({default:n.CodeEditor})));function XD({rawJsonContent:n,isRawJsonValid:a,rawJsonEdits:s,rawSettingsEnv:l,onChange:u,missingRequiredFields:f=[]}){const h=f.length>0;return r.jsx(S.Suspense,{fallback:r.jsxs("div",{className:"flex items-center justify-center h-full",children:[r.jsx(Dn,{className:"w-6 h-6 animate-spin text-muted-foreground"}),r.jsx("span",{className:"ml-2 text-muted-foreground",children:"Loading editor..."})]}),children:r.jsxs("div",{className:"h-full flex flex-col",children:[!a&&s!==null&&r.jsxs("div",{className:"mb-2 px-3 py-2 bg-destructive/10 text-destructive text-sm rounded-md flex items-center gap-2 mx-6 mt-4 shrink-0",children:[r.jsx(bo,{className:"w-4 h-4"}),"Invalid JSON syntax"]}),a&&h&&r.jsxs("div",{className:"mb-2 px-3 py-2 bg-warning/10 text-warning-foreground text-sm rounded-md flex items-start gap-2 mx-6 mt-4 shrink-0 border border-warning/20",children:[r.jsx(va,{className:"w-4 h-4 mt-0.5 text-amber-500 shrink-0"}),r.jsxs("div",{children:[r.jsx("span",{className:"font-medium text-amber-600 dark:text-amber-400",children:"Missing required fields:"})," ",r.jsx("code",{className:"text-xs bg-muted px-1 py-0.5 rounded",children:f.join(", ")}),r.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:"These fields will use default values at runtime."})]})]}),r.jsx("div",{className:"flex-1 overflow-hidden px-6 pb-4 pt-4",children:r.jsx("div",{className:"h-full border rounded-md overflow-hidden bg-background",children:r.jsx(DM,{value:n,onChange:u,language:"json",minHeight:"100%"})})}),r.jsx("div",{className:"mx-6 mb-4",children:r.jsx("div",{className:"border rounded-md overflow-hidden",children:r.jsx(df,{profileEnv:l})})})]})})}const ZD={target:"Target CLI",cliproxy:"CLIProxy Provider","api-profiles":"API Profile",websearch:"WebSearch"},JD=[{id:"droid-target-support",title:"Factory Droid support is live",summary:"API Profiles and CLIProxy variants now support Droid as a first-class execution target.",primaryAction:"Set Droid as your default execution target for non-Claude workflows.",publishedAt:"2026-02-25",status:"new",scopes:["target","api-profiles","cliproxy"],entryIds:["droid-target","custom-api-profiles","codex-cliproxy","agy-cliproxy"],highlights:["Set default target to Droid when creating or editing API Profiles.","Set default target to Droid for CLIProxy variants, including Codex and Antigravity flows.","Use ccsd alias or --target droid for one-off target overrides."],actions:[{id:"open-api-profiles",label:"Set default target in API Profiles",description:"Open API Profiles and set Default Target to Droid for profiles you run often.",type:"route",path:"/providers"},{id:"open-cliproxy",label:"Set default target in CLIProxy variants",description:"Open CLIProxy variants and set target to Droid for Codex/Antigravity or custom variants.",type:"route",path:"/cliproxy"},{id:"copy-ccsd-command",label:"Run once with Droid alias",description:"Use ccsd to force Droid target with your current profile.",type:"command",command:"ccsd glm"},{id:"copy-target-override",label:"Run once with --target override",description:"Keep your default profile but force Droid for a single command.",type:"command",command:'ccs codex --target droid "your prompt"'}],routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccsd glm",'ccs codex --target droid "your prompt"',"ccs cliproxy create mycodex --provider codex --target droid"]},{id:"updates-center-launch",title:"Updates inbox is available for rollout tasks",summary:"A focused updates inbox exists for setup tasks and rollout guidance when you need it.",primaryAction:"Use this page only when needed for rollout tasks, then return to your normal workflow.",publishedAt:"2026-02-25",status:"new",scopes:["target","cliproxy","api-profiles","websearch"],entryIds:["droid-target","codex-cliproxy","custom-api-profiles","opencode-websearch"],highlights:["Single data source powers update content and integration mapping.","Notices can be tracked as new, seen, done, or dismissed.","Catalog covers target CLI, CLIProxy providers, and WebSearch integrations."],actions:[{id:"open-updates-page",label:"Open updates inbox when needed",description:"Review rollout tasks only when you want guided setup changes.",type:"route",path:"/updates"},{id:"copy-open-dashboard",label:"Open dashboard from terminal",description:"Re-open config dashboard anytime from CLI.",type:"command",command:"ccs config"}],routes:[{label:"Updates Inbox",path:"/updates"}],commands:["ccs config"]}],EM=[{id:"claude-target",name:"Claude Code",scope:"target",status:"stable",summary:"Default runtime target for all CCS profile types.",pillars:{baseUrl:"From profile settings (ANTHROPIC_BASE_URL)",auth:"From profile settings (ANTHROPIC_AUTH_TOKEN)",model:"From profile settings (ANTHROPIC_MODEL)"},routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccs",'ccs glm "your prompt"']},{id:"droid-target",name:"Factory Droid",scope:"target",status:"new",summary:"First-class target for API Profiles and CLIProxy variants.",pillars:{baseUrl:"From profile or variant settings",auth:"From profile or variant settings",model:"From profile or variant settings"},routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccsd glm","ccs km --target droid","ccs codex --target droid"],notes:"Use ccsd alias for automatic Droid target selection."},{id:"codex-cliproxy",name:"Codex via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed provider with configurable variant model and target.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:["ccs codex","ccs cliproxy create mycodex --provider codex"]},{id:"gemini-cliproxy",name:"Gemini via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed Gemini provider with multi-account management.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:["ccs gemini","ccs cliproxy create mygem --provider gemini"]},{id:"agy-cliproxy",name:"Antigravity via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed Antigravity provider with variant target controls.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:["ccs agy","ccs cliproxy create myagy --provider agy --target droid"]},{id:"custom-api-profiles",name:"Custom API Profiles",scope:"api-profiles",status:"stable",summary:"Any Anthropic-compatible endpoint with per-profile target and model mapping.",pillars:{baseUrl:"User-defined endpoint",auth:"User-defined token/key",model:"User-defined model identifier"},routes:[{label:"API Profiles",path:"/providers"}],commands:["ccs api create myprofile",'ccs myprofile "your prompt"']},{id:"opencode-websearch",name:"OpenCode WebSearch",scope:"websearch",status:"stable",summary:"WebSearch provider surfaced in Settings for third-party profile workflows.",pillars:{baseUrl:"Managed by OpenCode CLI integration",auth:"Provider-specific (managed externally)",model:"Configurable in WebSearch settings"},routes:[{label:"Settings",path:"/settings"}],commands:["ccs config",'ccs codex "your prompt"'],notes:"Enable OpenCode in Settings > WebSearch to activate fallback search."}],OM=new Map(EM.map(n=>[n.id,n]));function eE(n){return n.entryIds.map(a=>OM.get(a)).filter(a=>!!a)}function tE(n){const a=new Date(`${n}T00:00:00Z`);return Number.isNaN(a.getTime())?n:new Intl.DateTimeFormat(void 0,{year:"numeric",month:"short",day:"numeric",timeZone:"UTC"}).format(a)}function RM(){const{t:n}=_t(),[a,s]=S.useState(""),[l,u]=S.useState(""),[f,h]=S.useState(null),[m,p]=S.useState(!1),{login:y,authRequired:C,isAuthenticated:x}=Ud(),b=Md(),N=gr().state?.from?.pathname||"/";if(S.useEffect(()=>{(x||!C)&&b(N,{replace:!0})},[x,C,b,N]),x||!C)return null;const M=async E=>{E.preventDefault(),h(null),p(!0);try{await y(a,l),b(N,{replace:!0})}catch(T){h(T instanceof Error?T.message:n("auth.loginFailed"))}finally{p(!1)}};return r.jsx("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:r.jsxs(Mj,{className:"w-full max-w-sm",children:[r.jsxs(Dj,{className:"space-y-1 text-center",children:[r.jsx("div",{className:"mx-auto mb-2 flex h-12 w-12 items-center justify-center rounded-full bg-primary/10",children:r.jsx(aC,{className:"h-6 w-6 text-primary"})}),r.jsx(Ej,{className:"text-2xl",children:n("auth.dashboardTitle")}),r.jsx(Oj,{children:n("auth.loginDescription")})]}),r.jsx(Rj,{children:r.jsxs("form",{onSubmit:M,className:"space-y-4",children:[f&&r.jsxs(lf,{variant:"destructive",children:[r.jsx(Ld,{className:"h-4 w-4"}),r.jsx(rf,{children:f})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx(ln,{htmlFor:"username",children:n("auth.username")}),r.jsx(Un,{id:"username",type:"text",value:a,onChange:E=>s(E.target.value),placeholder:n("auth.usernamePlaceholder"),autoComplete:"username",disabled:m,required:!0})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx(ln,{htmlFor:"password",children:n("auth.password")}),r.jsx(Un,{id:"password",type:"password",value:l,onChange:E=>u(E.target.value),placeholder:n("auth.passwordPlaceholder"),autoComplete:"current-password",disabled:m,required:!0})]}),r.jsx(ut,{type:"submit",className:"w-full",disabled:m,children:m?r.jsxs(r.Fragment,{children:[r.jsx(Dn,{className:"mr-2 h-4 w-4 animate-spin"}),n("auth.signingIn")]}):n("auth.signIn")})]})})]})})}const LM=S.lazy(()=>gt(()=>import("./index-CMCDJeIA.js"),__vite__mapDeps([18,1,2,4,5,7,19,6,8,9])).then(n=>({default:n.AnalyticsPage}))),PM=S.lazy(()=>gt(()=>import("./api-C9zwFFut.js"),__vite__mapDeps([20,1,2,5,21,15,6,4,22,7,8,9])).then(n=>({default:n.ApiPage}))),_M=S.lazy(()=>gt(()=>import("./cliproxy-BqfDDSqL.js"),__vite__mapDeps([23,1,2,5,13,6,4,14,15,24,21,22,3,7,8,9])).then(n=>({default:n.CliproxyPage}))),zM=S.lazy(()=>gt(()=>import("./cliproxy-control-panel-Bge72LT-.js"),__vite__mapDeps([25,1,2,5,13,4,6,7,8,9])).then(n=>({default:n.CliproxyControlPanelPage}))),UM=S.lazy(()=>gt(()=>import("./copilot-CkAJrz8o.js"),__vite__mapDeps([26,1,2,5,21,15,4,22,3,6,7,8,9])).then(n=>({default:n.CopilotPage}))),IM=S.lazy(()=>gt(()=>import("./cursor-C9LZa_BA.js"),__vite__mapDeps([27,1,2,6,5,13,3,22,4,7,8,9])).then(n=>({default:n.CursorPage}))),HM=S.lazy(()=>gt(()=>import("./droid-QWGtb0RV.js"),__vite__mapDeps([28,1,2,6,5,4,22,7,8,9])).then(n=>({default:n.DroidPage}))),BM=S.lazy(()=>gt(()=>import("./accounts-C0a1t7jn.js"),__vite__mapDeps([29,1,2,5,15,6,4,24,7,8,9])).then(n=>({default:n.AccountsPage}))),qM=S.lazy(()=>gt(()=>Promise.resolve().then(()=>Zj),void 0).then(n=>({default:n.SettingsPage}))),KM=S.lazy(()=>gt(()=>import("./health-C3ElQ1Lv.js"),__vite__mapDeps([30,1,2,5,6,4,7,8,9])).then(n=>({default:n.HealthPage}))),GM=S.lazy(()=>gt(()=>import("./shared-COklsZr3.js"),__vite__mapDeps([31,1,2,4,5,6,7,8,9])).then(n=>({default:n.SharedPage}))),YM=S.lazy(()=>gt(()=>import("./updates-CGOjPqS1.js"),__vite__mapDeps([32,1,2,4,5,6,7,8,9])).then(n=>({default:n.UpdatesPage})));function Cn(){return r.jsx("div",{className:"flex h-64 items-center justify-center",children:r.jsx(Dn,{className:"h-8 w-8 animate-spin text-muted-foreground"})})}function VM(){return r.jsx(NS,{client:XC,children:r.jsx(YN,{defaultTheme:"system",storageKey:"vite-ui-theme",children:r.jsx(VN,{children:r.jsx(XN,{children:r.jsxs(bS,{children:[r.jsxs(SS,{children:[r.jsx(Pt,{path:"/login",element:r.jsx(RM,{})}),r.jsx(Pt,{element:r.jsx(ZN,{}),children:r.jsxs(Pt,{element:r.jsx($1,{}),children:[r.jsx(Pt,{path:"/",element:r.jsx(FA,{})}),r.jsx(Pt,{path:"/analytics",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(LM,{})})}),r.jsx(Pt,{path:"/updates",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(YM,{})})}),r.jsx(Pt,{path:"/providers",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(PM,{})})}),r.jsx(Pt,{path:"/cliproxy",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(_M,{})})}),r.jsx(Pt,{path:"/cliproxy/control-panel",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(zM,{})})}),r.jsx(Pt,{path:"/copilot",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(UM,{})})}),r.jsx(Pt,{path:"/cursor",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(IM,{})})}),r.jsx(Pt,{path:"/droid",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(HM,{})})}),r.jsx(Pt,{path:"/accounts",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(BM,{})})}),r.jsx(Pt,{path:"/settings",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(qM,{})})}),r.jsx(Pt,{path:"/health",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(KM,{})})}),r.jsx(Pt,{path:"/shared",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(GM,{})})})]})})]}),r.jsx(wS,{position:"top-right"})]})})})})})}const Av=document.getElementById("root");if(!Av)throw new Error("Root element not found. Failed to mount React application.");QC.createRoot(Av).render(r.jsx(S.StrictMode,{children:r.jsx(VM,{})}));export{qD as $,ZA as A,Qa as B,Mj as C,ij as D,_D as E,UD as F,$A as G,nj as H,Un as I,oj as J,zD as K,ln as L,Zw as M,Jw as N,e1 as O,ux as P,$x as Q,cf as R,qe as S,$a as T,mr as U,kd as V,ct as W,BD as X,Qe as Y,HD as Z,Oj as _,_t as a,XD as a$,KD as a0,Zx as a1,GD as a2,nD as a3,Qw as a4,sD as a5,hD as a6,mD as a7,Kd as a8,Gd as a9,Ci as aA,P1 as aB,_1 as aC,z1 as aD,U1 as aE,hx as aF,Ak as aG,Nx as aH,gD as aI,yD as aJ,xD as aK,vD as aL,FD as aM,oD as aN,Xw as aO,rD as aP,cD as aQ,$w as aR,Ww as aS,uD as aT,dD as aU,fD as aV,lD as aW,Xd as aX,Ns as aY,aD as aZ,iD as a_,Yd as aa,Vd as ab,Fd as ac,YD as ad,Pj as ae,VD as af,Za as ag,MD as ah,_j as ai,ED as aj,pD as ak,DD as al,OD as am,Kg as an,RD as ao,H1 as ap,x1 as aq,jD as ar,A1 as as,TD as at,Nk as au,gw as av,yw as aw,Tr as ax,jr as ay,Mr as az,Rj as b,av as b0,of as b1,Ls as b2,sf as b3,GA as b4,LD as b5,PD as b6,lf as b7,Yx as b8,rf as b9,tE as ba,ZD as bb,JD as bc,eE as bd,ov as be,Fj as bf,$j as bg,ND as bh,bD as bi,ax as bj,DN as bk,TN as bl,yd as bm,wi as bn,bN as bo,CN as bp,AN as bq,ON as br,wD as bs,SD as bt,CD as bu,AD as bv,kD as bw,ar as bx,q as c,ut as d,QD as e,$D as f,Jj as g,MM as h,tD as i,Dj as j,Ej as k,dk as l,fk as m,So as n,WD as o,Wa as p,Xa as q,xx as r,Zd as s,vx as t,_d as u,Jd as v,dr as w,ny as x,rj as y,ID as z};
|
|
47
|
+
`);return{valid:!1,error:l,line:h.length}}return{valid:!1,error:l}}}function av({value:n,onChange:a,language:s="json",readonly:l=!1,className:u,minHeight:f="300px"}){const{isDark:h}=gx(),[m,p]=S.useState(!1),[y,C]=S.useState(!0),x=S.useMemo(()=>s==="json"?Kj(n):{valid:!0},[n,s]),b=S.useCallback(w=>r.jsx(KC,{theme:h?gg.nightOwl:gg.github,code:w,language:s,children:({tokens:N,getLineProps:M,getTokenProps:E})=>{let T=!1;return r.jsx(r.Fragment,{children:N.map((H,B)=>r.jsx("div",{...M({line:H}),className:q(x.line===B+1&&"bg-destructive/20"),children:H.map((U,O)=>{let k=!1;if(U.types.includes("property")){const X=U.content.replace(/['"]/g,"");qj(X)?T=!0:T=!1}else(U.types.includes("string")||U.types.includes("number")||U.types.includes("boolean"))&&T?(k=!0,T=!1):U.types.includes("punctuation")&&U.content!==":"&&U.content!=="["&&U.content!=="{"&&(T=!1);const _=E({token:U});return k&&y&&(_.className=q(_.className,"blur-[3px] select-none opacity-70 transition-all duration-200")),r.jsx("span",{..._},O)})},B))})}}),[h,s,x.line,y]);return r.jsxs("div",{className:q("flex flex-col",u),children:[r.jsxs("div",{className:q("relative rounded-md border overflow-hidden","bg-muted/30",m&&"ring-2 ring-ring ring-offset-2 ring-offset-background",l&&"opacity-70 cursor-not-allowed",!x.valid&&"border-destructive"),style:{minHeight:f},children:[r.jsx(Hj,{value:n,onValueChange:l?()=>{}:a,highlight:b,padding:12,disabled:l,onFocus:()=>p(!0),onBlur:()=>p(!1),textareaClassName:q("focus:outline-none font-mono text-sm",l&&"cursor-not-allowed"),preClassName:"font-mono text-sm",style:{fontFamily:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",fontSize:"0.875rem",minHeight:f}},h?"dark-editor":"light-editor"),r.jsx("div",{className:"absolute top-2 right-2 z-10 opacity-50 hover:opacity-100 transition-opacity",children:r.jsx(ut,{variant:"ghost",size:"icon",className:"h-6 w-6 bg-background/50 hover:bg-background border shadow-sm rounded-full",onClick:()=>C(!y),title:y?"Reveal sensitive values":"Mask sensitive values",children:y?r.jsx(vr,{className:"h-3 w-3"}):r.jsx(xr,{className:"h-3 w-3"})})})]}),r.jsxs("div",{className:"flex items-center gap-2 mt-2 text-xs",children:[x.valid?r.jsxs("span",{className:"flex items-center gap-1 text-muted-foreground",children:[r.jsx(Sr,{className:"w-3 h-3 text-green-500"}),"Valid ",s.toUpperCase()]}):r.jsxs("span",{className:"flex items-center gap-1 text-destructive",children:[r.jsx(Ld,{className:"w-3 h-3"}),x.error,x.line&&` (line ${x.line})`]}),l&&r.jsx("span",{className:"ml-auto text-muted-foreground",children:"(Read-only)"})]})]})}const hf=Object.freeze(Object.defineProperty({__proto__:null,CodeEditor:av},Symbol.toStringTag,{value:"Module"})),Gj={webSearchConfig:null,webSearchStatus:null,webSearchLoading:!0,webSearchStatusLoading:!0,webSearchSaving:!1,webSearchError:null,webSearchSuccess:!1,globalEnvConfig:null,globalEnvLoading:!0,globalEnvSaving:!1,globalEnvError:null,globalEnvSuccess:!1,proxyConfig:null,proxyLoading:!0,proxySaving:!1,proxyError:null,proxySuccess:!1,proxyTestResult:null,proxyTesting:!1,rawConfig:null,rawConfigLoading:!1};function Yj(n,a){switch(a.type){case"SET_WEBSEARCH_CONFIG":return{...n,webSearchConfig:a.payload};case"SET_WEBSEARCH_STATUS":return{...n,webSearchStatus:a.payload};case"SET_WEBSEARCH_LOADING":return{...n,webSearchLoading:a.payload};case"SET_WEBSEARCH_STATUS_LOADING":return{...n,webSearchStatusLoading:a.payload};case"SET_WEBSEARCH_SAVING":return{...n,webSearchSaving:a.payload};case"SET_WEBSEARCH_ERROR":return{...n,webSearchError:a.payload};case"SET_WEBSEARCH_SUCCESS":return{...n,webSearchSuccess:a.payload};case"SET_GLOBALENV_CONFIG":return{...n,globalEnvConfig:a.payload};case"SET_GLOBALENV_LOADING":return{...n,globalEnvLoading:a.payload};case"SET_GLOBALENV_SAVING":return{...n,globalEnvSaving:a.payload};case"SET_GLOBALENV_ERROR":return{...n,globalEnvError:a.payload};case"SET_GLOBALENV_SUCCESS":return{...n,globalEnvSuccess:a.payload};case"SET_PROXY_CONFIG":return{...n,proxyConfig:a.payload};case"SET_PROXY_LOADING":return{...n,proxyLoading:a.payload};case"SET_PROXY_SAVING":return{...n,proxySaving:a.payload};case"SET_PROXY_ERROR":return{...n,proxyError:a.payload};case"SET_PROXY_SUCCESS":return{...n,proxySuccess:a.payload};case"SET_PROXY_TEST_RESULT":return{...n,proxyTestResult:a.payload};case"SET_PROXY_TESTING":return{...n,proxyTesting:a.payload};case"SET_RAW_CONFIG":return{...n,rawConfig:a.payload};case"SET_RAW_CONFIG_LOADING":return{...n,rawConfigLoading:a.payload};default:return n}}const iv=S.createContext(null);function Vj({children:n}){const[a,s]=S.useReducer(Yj,Gj);return r.jsx(iv.Provider,{value:{state:a,dispatch:s},children:n})}function ov(){const n=S.useContext(iv);if(!n)throw new Error("useSettingsContext must be used within a SettingsProvider");return n}function Fj(){const{dispatch:n}=ov(),a=S.useCallback(k=>n({type:"SET_WEBSEARCH_CONFIG",payload:k}),[n]),s=S.useCallback(k=>n({type:"SET_WEBSEARCH_STATUS",payload:k}),[n]),l=S.useCallback(k=>n({type:"SET_WEBSEARCH_LOADING",payload:k}),[n]),u=S.useCallback(k=>n({type:"SET_WEBSEARCH_STATUS_LOADING",payload:k}),[n]),f=S.useCallback(k=>n({type:"SET_WEBSEARCH_SAVING",payload:k}),[n]),h=S.useCallback(k=>n({type:"SET_WEBSEARCH_ERROR",payload:k}),[n]),m=S.useCallback(k=>n({type:"SET_WEBSEARCH_SUCCESS",payload:k}),[n]),p=S.useCallback(k=>n({type:"SET_GLOBALENV_CONFIG",payload:k}),[n]),y=S.useCallback(k=>n({type:"SET_GLOBALENV_LOADING",payload:k}),[n]),C=S.useCallback(k=>n({type:"SET_GLOBALENV_SAVING",payload:k}),[n]),x=S.useCallback(k=>n({type:"SET_GLOBALENV_ERROR",payload:k}),[n]),b=S.useCallback(k=>n({type:"SET_GLOBALENV_SUCCESS",payload:k}),[n]),w=S.useCallback(k=>n({type:"SET_PROXY_CONFIG",payload:k}),[n]),N=S.useCallback(k=>n({type:"SET_PROXY_LOADING",payload:k}),[n]),M=S.useCallback(k=>n({type:"SET_PROXY_SAVING",payload:k}),[n]),E=S.useCallback(k=>n({type:"SET_PROXY_ERROR",payload:k}),[n]),T=S.useCallback(k=>n({type:"SET_PROXY_SUCCESS",payload:k}),[n]),H=S.useCallback(k=>n({type:"SET_PROXY_TEST_RESULT",payload:k}),[n]),B=S.useCallback(k=>n({type:"SET_PROXY_TESTING",payload:k}),[n]),U=S.useCallback(k=>n({type:"SET_RAW_CONFIG",payload:k}),[n]),O=S.useCallback(k=>n({type:"SET_RAW_CONFIG_LOADING",payload:k}),[n]);return S.useMemo(()=>({setWebSearchConfig:a,setWebSearchStatus:s,setWebSearchLoading:l,setWebSearchStatusLoading:u,setWebSearchSaving:f,setWebSearchError:h,setWebSearchSuccess:m,setGlobalEnvConfig:p,setGlobalEnvLoading:y,setGlobalEnvSaving:C,setGlobalEnvError:x,setGlobalEnvSuccess:b,setProxyConfig:w,setProxyLoading:N,setProxySaving:M,setProxyError:E,setProxySuccess:T,setProxyTestResult:H,setProxyTesting:B,setRawConfig:U,setRawConfigLoading:O}),[a,s,l,u,f,h,m,p,y,C,x,b,w,N,M,E,T,H,B,U,O])}function Qj(){const[n,a]=vS(),s=n.get("tab")?.toLowerCase(),l=s==="globalenv"?"globalenv":s==="proxy"?"proxy":s==="auth"?"auth":s==="thinking"?"thinking":s==="backups"?"backups":"websearch",u=S.useCallback(f=>{a({tab:f},{replace:!0})},[a]);return{activeTab:l,setActiveTab:u}}function $j(){const{state:n}=ov(),a=Fj(),[s,l]=S.useState(!1),u=S.useCallback(async()=>{try{a.setRawConfigLoading(!0);const h=await fetch("/api/config/raw");if(!h.ok){a.setRawConfig(null);return}const m=await h.text();a.setRawConfig(m)}catch{a.setRawConfig(null)}finally{a.setRawConfigLoading(!1)}},[a]),f=S.useCallback(async()=>{if(n.rawConfig)try{await navigator.clipboard.writeText(n.rawConfig),l(!0),setTimeout(()=>l(!1),2e3)}catch{}},[n.rawConfig]);return{rawConfig:n.rawConfig,loading:n.rawConfigLoading,copied:s,fetchRawConfig:u,copyToClipboard:f}}function cy({activeTab:n,onTabChange:a}){const{t:s}=_t(),l=[{value:"websearch",label:s("settingsTabs.web"),icon:Xy},{value:"globalenv",label:s("settingsTabs.env"),icon:Rd},{value:"thinking",label:s("settingsTabs.think"),icon:JS},{value:"proxy",label:s("settingsTabs.proxy"),icon:eC},{value:"auth",label:s("settingsTabs.auth"),icon:Dd},{value:"backups",label:s("settingsTabs.backup"),icon:tC}];return r.jsx($x,{value:n,onValueChange:u=>a(u),children:r.jsx(cf,{className:"grid w-full grid-cols-6",children:l.map(({value:u,label:f,icon:h})=>r.jsxs(mr,{value:u,className:"gap-1.5 px-1 text-xs",children:[r.jsx(h,{className:"h-3.5 w-3.5 shrink-0"}),r.jsx("span",{className:"truncate",children:f})]},u))})})}function uy(){return r.jsxs("div",{className:"flex-1 p-5 space-y-6",children:[r.jsx(qe,{className:"h-4 w-2/3"}),r.jsx("div",{className:"p-4 rounded-lg border",children:r.jsxs("div",{className:"flex items-center justify-between",children:[r.jsxs("div",{className:"space-y-2",children:[r.jsx(qe,{className:"h-5 w-32"}),r.jsx(qe,{className:"h-4 w-48"})]}),r.jsx(qe,{className:"h-6 w-10 rounded-full"})]})}),r.jsxs("div",{className:"space-y-3",children:[r.jsx(qe,{className:"h-5 w-24"}),r.jsxs("div",{className:"space-y-2",children:[r.jsx(qe,{className:"h-20 w-full rounded-lg"}),r.jsx(qe,{className:"h-20 w-full rounded-lg"}),r.jsx(qe,{className:"h-20 w-full rounded-lg"})]})]})]})}function sv(n,a=3,s=1e3){return n().catch(l=>{if(a<=0)throw l;return new Promise(u=>setTimeout(u,s)).then(()=>sv(n,a-1,s*2))})}function Co(n){return S.lazy(()=>sv(n))}const dy=Co(()=>gt(()=>import("./index-BIAXf19X.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9]))),fy=Co(()=>gt(()=>import("./globalenv-section-C8zXrVbd.js"),__vite__mapDeps([10,1,2,3,4,5,6,7,8,9]))),hy=Co(()=>gt(()=>import("./index-D09dhWOP.js"),__vite__mapDeps([11,1,2,3,4,5,6,7,8,9]))),my=Co(()=>gt(()=>import("./index-z8fzygJg.js"),__vite__mapDeps([12,1,2,3,13,4,14,15,5,6,7,8,9]))),py=Co(()=>gt(()=>import("./auth-section-a4QIr8Cu.js"),__vite__mapDeps([16,1,2,4,5,6,7,8,9]))),gy=Co(()=>gt(()=>import("./backups-section-JcABaxvV.js"),__vite__mapDeps([17,1,2,15,4,5,6,7,8,9])));class yy extends S.Component{constructor(a){super(a),this.state={hasError:!1,error:null}}static getDerivedStateFromError(a){return{hasError:!0,error:a}}render(){return this.state.hasError?r.jsx("div",{className:"flex-1 flex items-center justify-center text-muted-foreground",children:r.jsxs("div",{className:"text-center p-6 max-w-md",children:[r.jsx(Ld,{className:"w-12 h-12 mx-auto mb-4 text-destructive"}),r.jsx("p",{className:"font-medium text-foreground mb-2",children:ct.t("settings.sectionLoadFailed")}),r.jsx("p",{className:"text-sm mb-4",children:this.state.error?.message||ct.t("settings.unknownError")}),r.jsxs(ut,{variant:"outline",onClick:()=>window.location.reload(),className:"inline-flex items-center gap-2",children:[r.jsx(Es,{className:"w-4 h-4"}),ct.t("settings.reloadPage")]})]})}):this.props.children}}function Wj(){const{t:n}=_t(),{activeTab:a,setActiveTab:s}=Qj(),{rawConfig:l,loading:u,copied:f,fetchRawConfig:h,copyToClipboard:m}=$j();S.useEffect(()=>{h()},[h]);const p=y=>{S.startTransition(()=>{s(y)})};return r.jsxs("div",{className:"h-[calc(100vh-100px)]",children:[r.jsxs("div",{className:"md:hidden h-full flex flex-col",children:[r.jsx("div",{className:"border-b bg-background p-4",children:r.jsx(cy,{activeTab:a,onTabChange:p})}),r.jsx(yy,{children:r.jsxs(S.Suspense,{fallback:r.jsx(uy,{}),children:[a==="websearch"&&r.jsx(dy,{}),a==="globalenv"&&r.jsx(fy,{}),a==="thinking"&&r.jsx(hy,{}),a==="proxy"&&r.jsx(my,{}),a==="auth"&&r.jsx(py,{}),a==="backups"&&r.jsx(gy,{})]})})]}),r.jsxs(of,{direction:"horizontal",className:"h-full hidden md:flex",children:[r.jsx(Ls,{defaultSize:40,minSize:30,maxSize:55,children:r.jsxs("div",{className:"h-full border-r flex flex-col bg-muted/30 relative",children:[r.jsx("div",{className:"p-5 border-b bg-background",children:r.jsx(cy,{activeTab:a,onTabChange:p})}),r.jsx(yy,{children:r.jsxs(S.Suspense,{fallback:r.jsx(uy,{}),children:[a==="websearch"&&r.jsx(dy,{}),a==="globalenv"&&r.jsx(fy,{}),a==="thinking"&&r.jsx(hy,{}),a==="proxy"&&r.jsx(my,{}),a==="auth"&&r.jsx(py,{}),a==="backups"&&r.jsx(gy,{})]})})]})}),r.jsx(sf,{className:"w-2 bg-border hover:bg-primary/20 transition-colors cursor-col-resize flex items-center justify-center group",children:r.jsx(Cr,{className:"w-3 h-3 text-muted-foreground group-hover:text-primary"})}),r.jsx(Ls,{defaultSize:60,minSize:35,children:r.jsxs("div",{className:"h-full flex flex-col",children:[r.jsxs("div",{className:"p-4 border-b bg-background flex items-center justify-between",children:[r.jsxs("div",{className:"flex items-center gap-3",children:[r.jsx(fg,{className:"w-5 h-5 text-primary"}),r.jsxs("div",{children:[r.jsx("h2",{className:"font-semibold",children:"config.yaml"}),r.jsx("p",{className:"text-sm text-muted-foreground",children:"~/.ccs/config.yaml"})]})]}),r.jsxs("div",{className:"flex gap-2",children:[r.jsx(ut,{variant:"outline",size:"sm",onClick:m,disabled:!l,children:f?r.jsxs(r.Fragment,{children:[r.jsx(xo,{className:"w-4 h-4 mr-1"}),n("settings.copied")]}):r.jsxs(r.Fragment,{children:[r.jsx(lr,{className:"w-4 h-4 mr-1"}),n("settings.copy")]})}),r.jsx(ut,{variant:"outline",size:"sm",onClick:h,disabled:u,children:r.jsx(Es,{className:`w-4 h-4 ${u?"animate-spin":""}`})})]})]}),r.jsx("div",{className:"flex-1 overflow-auto",children:u?r.jsxs("div",{className:"flex items-center justify-center h-full text-muted-foreground",children:[r.jsx(Es,{className:"w-5 h-5 animate-spin mr-2"}),n("settings.loading")]}):l?r.jsx(av,{value:l,onChange:()=>{},language:"yaml",readonly:!0,minHeight:"auto",className:"min-h-full"}):r.jsx("div",{className:"flex items-center justify-center h-full text-muted-foreground",children:r.jsxs("div",{className:"text-center",children:[r.jsx(fg,{className:"w-12 h-12 mx-auto mb-3 opacity-30"}),r.jsx("p",{children:n("settings.configFileNotFound")}),r.jsx("code",{className:"text-sm bg-muted px-2 py-1 rounded mt-2 inline-block",children:"ccs migrate"})]})})})]})})]})]})}function Xj(){return r.jsx(Vj,{children:r.jsx(Wj,{})})}const Zj=Object.freeze(Object.defineProperty({__proto__:null,SettingsPage:Xj},Symbol.toStringTag,{value:"Module"})),QD=fS,$D=mS,WD=hS,Jj=S.forwardRef(({className:n,align:a="center",sideOffset:s=4,...l},u)=>r.jsx(dS,{children:r.jsx(Gy,{ref:u,align:a,sideOffset:s,className:q("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",n),...l})}));Jj.displayName=Gy.displayName;function eT(n,a,s="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:n,timeZoneName:s}).format(a).split(/\s/g).slice(2).join(" ")}const tT={},As={};function Si(n,a){try{const l=(tT[n]||=new Intl.DateTimeFormat("en-US",{timeZone:n,timeZoneName:"longOffset"}).format)(a).split("GMT")[1];return l in As?As[l]:xy(l,l.split(":"))}catch{if(n in As)return As[n];const s=n?.match(nT);return s?xy(n,s.slice(1)):NaN}}const nT=/([+-]\d\d):?(\d\d)?/;function xy(n,a){const s=+(a[0]||0),l=+(a[1]||0),u=+(a[2]||0)/60;return As[n]=s*60+l>0?s*60+l+u:s*60-l-u}class Bn extends Date{constructor(...a){super(),a.length>1&&typeof a[a.length-1]=="string"&&(this.timeZone=a.pop()),this.internal=new Date,isNaN(Si(this.timeZone,this))?this.setTime(NaN):a.length?typeof a[0]=="number"&&(a.length===1||a.length===2&&typeof a[1]!="number")?this.setTime(a[0]):typeof a[0]=="string"?this.setTime(+new Date(a[0])):a[0]instanceof Date?this.setTime(+a[0]):(this.setTime(+new Date(...a)),lv(this),jd(this)):this.setTime(Date.now())}static tz(a,...s){return s.length?new Bn(...s,a):new Bn(Date.now(),a)}withTimeZone(a){return new Bn(+this,a)}getTimezoneOffset(){const a=-Si(this.timeZone,this);return a>0?Math.floor(a):Math.ceil(a)}setTime(a){return Date.prototype.setTime.apply(this,arguments),jd(this),+this}[Symbol.for("constructDateFrom")](a){return new Bn(+new Date(a),this.timeZone)}}const vy=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(n=>{if(!vy.test(n))return;const a=n.replace(vy,"$1UTC");Bn.prototype[a]&&(n.startsWith("get")?Bn.prototype[n]=function(){return this.internal[a]()}:(Bn.prototype[n]=function(){return Date.prototype[a].apply(this.internal,arguments),aT(this),+this},Bn.prototype[a]=function(){return Date.prototype[a].apply(this,arguments),jd(this),+this}))});function jd(n){n.internal.setTime(+n),n.internal.setUTCSeconds(n.internal.getUTCSeconds()-Math.round(-Si(n.timeZone,n)*60))}function aT(n){Date.prototype.setFullYear.call(n,n.internal.getUTCFullYear(),n.internal.getUTCMonth(),n.internal.getUTCDate()),Date.prototype.setHours.call(n,n.internal.getUTCHours(),n.internal.getUTCMinutes(),n.internal.getUTCSeconds(),n.internal.getUTCMilliseconds()),lv(n)}function lv(n){const a=Si(n.timeZone,n),s=a>0?Math.floor(a):Math.ceil(a),l=new Date(+n);l.setUTCHours(l.getUTCHours()-1);const u=-new Date(+n).getTimezoneOffset(),f=-new Date(+l).getTimezoneOffset(),h=u-f,m=Date.prototype.getHours.apply(n)!==n.internal.getUTCHours();h&&m&&n.internal.setUTCMinutes(n.internal.getUTCMinutes()+h);const p=u-s;p&&Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+p);const y=new Date(+n);y.setUTCSeconds(0);const C=u>0?y.getSeconds():(y.getSeconds()-60)%60,x=Math.round(-(Si(n.timeZone,n)*60))%60;(x||C)&&(n.internal.setUTCSeconds(n.internal.getUTCSeconds()+x),Date.prototype.setUTCSeconds.call(n,Date.prototype.getUTCSeconds.call(n)+x+C));const b=Si(n.timeZone,n),w=b>0?Math.floor(b):Math.ceil(b),M=-new Date(+n).getTimezoneOffset()-w,E=w!==s,T=M-p;if(E&&T){Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+T);const H=Si(n.timeZone,n),B=H>0?Math.floor(H):Math.ceil(H),U=w-B;U&&(n.internal.setUTCMinutes(n.internal.getUTCMinutes()+U),Date.prototype.setUTCMinutes.call(n,Date.prototype.getUTCMinutes.call(n)+U))}}class ga extends Bn{static tz(a,...s){return s.length?new ga(...s,a):new ga(Date.now(),a)}toISOString(){const[a,s,l]=this.tzComponents(),u=`${a}${s}:${l}`;return this.internal.toISOString().slice(0,-1)+u}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[a,s,l,u]=this.internal.toUTCString().split(" ");return`${a?.slice(0,-1)} ${l} ${s} ${u}`}toTimeString(){const a=this.internal.toUTCString().split(" ")[4],[s,l,u]=this.tzComponents();return`${a} GMT${s}${l}${u} (${eT(this.timeZone,this)})`}toLocaleString(a,s){return Date.prototype.toLocaleString.call(this,a,{...s,timeZone:s?.timeZone||this.timeZone})}toLocaleDateString(a,s){return Date.prototype.toLocaleDateString.call(this,a,{...s,timeZone:s?.timeZone||this.timeZone})}toLocaleTimeString(a,s){return Date.prototype.toLocaleTimeString.call(this,a,{...s,timeZone:s?.timeZone||this.timeZone})}tzComponents(){const a=this.getTimezoneOffset(),s=a>0?"-":"+",l=String(Math.floor(Math.abs(a)/60)).padStart(2,"0"),u=String(Math.abs(a)%60).padStart(2,"0");return[s,l,u]}withTimeZone(a){return new ga(+this,a)}[Symbol.for("constructDateFrom")](a){return new ga(+new Date(a),this.timeZone)}}const by=5,iT=4;function oT(n,a){const s=a.startOfMonth(n),l=s.getDay()>0?s.getDay():7,u=a.addDays(n,-l+1),f=a.addDays(u,by*7-1);return a.getMonth(n)===a.getMonth(f)?by:iT}function rv(n,a){const s=a.startOfMonth(n),l=s.getDay();return l===1?s:l===0?a.addDays(s,-6):a.addDays(s,-1*(l-1))}function sT(n,a){const s=rv(n,a),l=oT(n,a);return a.addDays(s,l*7-1)}const cv={...xs,labels:{labelDayButton:(n,a,s,l)=>{let u;l&&typeof l.format=="function"?u=l.format.bind(l):u=(h,m)=>Cs(h,m,{locale:xs,...s});let f=u(n,"PPPP");return a.today&&(f=`Today, ${f}`),a.selected&&(f=`${f}, selected`),f},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:n=>`Week ${n}`,labelYearDropdown:"Choose the Year",labelGrid:(n,a,s)=>{let l;return s&&typeof s.format=="function"?l=s.format.bind(s):l=(u,f)=>Cs(u,f,{locale:xs,...a}),l(n,"LLLL yyyy")},labelGridcell:(n,a,s,l)=>{let u;l&&typeof l.format=="function"?u=l.format.bind(l):u=(h,m)=>Cs(h,m,{locale:xs,...s});let f=u(n,"PPPP");return a?.today&&(f=`Today, ${f}`),f},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(n,a,s)=>{let l;return s&&typeof s.format=="function"?l=s.format.bind(s):l=(u,f)=>Cs(u,f,{locale:xs,...a}),l(n,"cccc")}}};class un{constructor(a,s){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?ga.tz(this.options.timeZone):new this.Date,this.newDate=(l,u,f)=>this.overrides?.newDate?this.overrides.newDate(l,u,f):this.options.timeZone?new ga(l,u,f,this.options.timeZone):new Date(l,u,f),this.addDays=(l,u)=>this.overrides?.addDays?this.overrides.addDays(l,u):sC(l,u),this.addMonths=(l,u)=>this.overrides?.addMonths?this.overrides.addMonths(l,u):lC(l,u),this.addWeeks=(l,u)=>this.overrides?.addWeeks?this.overrides.addWeeks(l,u):rC(l,u),this.addYears=(l,u)=>this.overrides?.addYears?this.overrides.addYears(l,u):cC(l,u),this.differenceInCalendarDays=(l,u)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(l,u):uC(l,u),this.differenceInCalendarMonths=(l,u)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(l,u):dC(l,u),this.eachMonthOfInterval=l=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(l):fC(l),this.eachYearOfInterval=l=>{const u=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(l):hC(l),f=new Set(u.map(m=>this.getYear(m)));if(f.size===u.length)return u;const h=[];return f.forEach(m=>{h.push(new Date(m,0,1))}),h},this.endOfBroadcastWeek=l=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(l):sT(l,this),this.endOfISOWeek=l=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(l):mC(l),this.endOfMonth=l=>this.overrides?.endOfMonth?this.overrides.endOfMonth(l):pC(l),this.endOfWeek=(l,u)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(l,u):gC(l,this.options),this.endOfYear=l=>this.overrides?.endOfYear?this.overrides.endOfYear(l):yC(l),this.format=(l,u,f)=>{const h=this.overrides?.format?this.overrides.format(l,u,this.options):Cs(l,u,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(h):h},this.getISOWeek=l=>this.overrides?.getISOWeek?this.overrides.getISOWeek(l):xC(l),this.getMonth=(l,u)=>this.overrides?.getMonth?this.overrides.getMonth(l,this.options):vC(l,this.options),this.getYear=(l,u)=>this.overrides?.getYear?this.overrides.getYear(l,this.options):bC(l,this.options),this.getWeek=(l,u)=>this.overrides?.getWeek?this.overrides.getWeek(l,this.options):SC(l,this.options),this.isAfter=(l,u)=>this.overrides?.isAfter?this.overrides.isAfter(l,u):CC(l,u),this.isBefore=(l,u)=>this.overrides?.isBefore?this.overrides.isBefore(l,u):NC(l,u),this.isDate=l=>this.overrides?.isDate?this.overrides.isDate(l):wC(l),this.isSameDay=(l,u)=>this.overrides?.isSameDay?this.overrides.isSameDay(l,u):kC(l,u),this.isSameMonth=(l,u)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(l,u):AC(l,u),this.isSameYear=(l,u)=>this.overrides?.isSameYear?this.overrides.isSameYear(l,u):jC(l,u),this.max=l=>this.overrides?.max?this.overrides.max(l):TC(l),this.min=l=>this.overrides?.min?this.overrides.min(l):MC(l),this.setMonth=(l,u)=>this.overrides?.setMonth?this.overrides.setMonth(l,u):DC(l,u),this.setYear=(l,u)=>this.overrides?.setYear?this.overrides.setYear(l,u):EC(l,u),this.startOfBroadcastWeek=(l,u)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(l,this):rv(l,this),this.startOfDay=l=>this.overrides?.startOfDay?this.overrides.startOfDay(l):OC(l),this.startOfISOWeek=l=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(l):RC(l),this.startOfMonth=l=>this.overrides?.startOfMonth?this.overrides.startOfMonth(l):LC(l),this.startOfWeek=(l,u)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(l,this.options):PC(l,this.options),this.startOfYear=l=>this.overrides?.startOfYear?this.overrides.startOfYear(l):_C(l),this.options={locale:cv,...a},this.overrides=s}getDigitMap(){const{numerals:a="latn"}=this.options,s=new Intl.NumberFormat("en-US",{numberingSystem:a}),l={};for(let u=0;u<10;u++)l[u.toString()]=s.format(u);return l}replaceDigits(a){const s=this.getDigitMap();return a.replace(/\d/g,l=>s[l]||l)}formatNumber(a){return this.replaceDigits(a.toString())}getMonthYearOrder(){const a=this.options.locale?.code;return a&&un.yearFirstLocales.has(a)?"year-first":"month-first"}formatMonthYear(a){const{locale:s,timeZone:l,numerals:u}=this.options,f=s?.code;if(f&&un.yearFirstLocales.has(f))try{return new Intl.DateTimeFormat(f,{month:"long",year:"numeric",timeZone:l,numberingSystem:u}).format(a)}catch{}const h=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(a,h)}}un.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const Kn=new un;class uv{constructor(a,s,l=Kn){this.date=a,this.displayMonth=s,this.outside=!!(s&&!l.isSameMonth(a,s)),this.dateLib=l,this.isoDate=l.format(a,"yyyy-MM-dd"),this.displayMonthId=l.format(s,"yyyy-MM"),this.dateMonthId=l.format(a,"yyyy-MM")}isEqualTo(a){return this.dateLib.isSameDay(a.date,this.date)&&this.dateLib.isSameMonth(a.displayMonth,this.displayMonth)}}class lT{constructor(a,s){this.date=a,this.weeks=s}}class rT{constructor(a,s){this.days=s,this.weekNumber=a}}function cT(n){return ie.createElement("button",{...n})}function uT(n){return ie.createElement("span",{...n})}function dT(n){const{size:a=24,orientation:s="left",className:l}=n;return ie.createElement("svg",{className:l,width:a,height:a,viewBox:"0 0 24 24"},s==="up"&&ie.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),s==="down"&&ie.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),s==="left"&&ie.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),s==="right"&&ie.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function fT(n){const{day:a,modifiers:s,...l}=n;return ie.createElement("td",{...l})}function hT(n){const{day:a,modifiers:s,...l}=n,u=ie.useRef(null);return ie.useEffect(()=>{s.focused&&u.current?.focus()},[s.focused]),ie.createElement("button",{ref:u,...l})}var me;(function(n){n.Root="root",n.Chevron="chevron",n.Day="day",n.DayButton="day_button",n.CaptionLabel="caption_label",n.Dropdowns="dropdowns",n.Dropdown="dropdown",n.DropdownRoot="dropdown_root",n.Footer="footer",n.MonthGrid="month_grid",n.MonthCaption="month_caption",n.MonthsDropdown="months_dropdown",n.Month="month",n.Months="months",n.Nav="nav",n.NextMonthButton="button_next",n.PreviousMonthButton="button_previous",n.Week="week",n.Weeks="weeks",n.Weekday="weekday",n.Weekdays="weekdays",n.WeekNumber="week_number",n.WeekNumberHeader="week_number_header",n.YearsDropdown="years_dropdown"})(me||(me={}));var ot;(function(n){n.disabled="disabled",n.hidden="hidden",n.outside="outside",n.focused="focused",n.today="today"})(ot||(ot={}));var Tn;(function(n){n.range_end="range_end",n.range_middle="range_middle",n.range_start="range_start",n.selected="selected"})(Tn||(Tn={}));var cn;(function(n){n.weeks_before_enter="weeks_before_enter",n.weeks_before_exit="weeks_before_exit",n.weeks_after_enter="weeks_after_enter",n.weeks_after_exit="weeks_after_exit",n.caption_after_enter="caption_after_enter",n.caption_after_exit="caption_after_exit",n.caption_before_enter="caption_before_enter",n.caption_before_exit="caption_before_exit"})(cn||(cn={}));function mT(n){const{options:a,className:s,components:l,classNames:u,...f}=n,h=[u[me.Dropdown],s].join(" "),m=a?.find(({value:p})=>p===f.value);return ie.createElement("span",{"data-disabled":f.disabled,className:u[me.DropdownRoot]},ie.createElement(l.Select,{className:h,...f},a?.map(({value:p,label:y,disabled:C})=>ie.createElement(l.Option,{key:p,value:p,disabled:C},y))),ie.createElement("span",{className:u[me.CaptionLabel],"aria-hidden":!0},m?.label,ie.createElement(l.Chevron,{orientation:"down",size:18,className:u[me.Chevron]})))}function pT(n){return ie.createElement("div",{...n})}function gT(n){return ie.createElement("div",{...n})}function yT(n){const{calendarMonth:a,displayIndex:s,...l}=n;return ie.createElement("div",{...l},n.children)}function xT(n){const{calendarMonth:a,displayIndex:s,...l}=n;return ie.createElement("div",{...l})}function vT(n){return ie.createElement("table",{...n})}function bT(n){return ie.createElement("div",{...n})}const dv=S.createContext(void 0);function Us(){const n=S.useContext(dv);if(n===void 0)throw new Error("useDayPicker() must be used within a custom component.");return n}function ST(n){const{components:a}=Us();return ie.createElement(a.Dropdown,{...n})}function CT(n){const{onPreviousClick:a,onNextClick:s,previousMonth:l,nextMonth:u,...f}=n,{components:h,classNames:m,labels:{labelPrevious:p,labelNext:y}}=Us(),C=S.useCallback(b=>{u&&s?.(b)},[u,s]),x=S.useCallback(b=>{l&&a?.(b)},[l,a]);return ie.createElement("nav",{...f},ie.createElement(h.PreviousMonthButton,{type:"button",className:m[me.PreviousMonthButton],tabIndex:l?void 0:-1,"aria-disabled":l?void 0:!0,"aria-label":p(l),onClick:x},ie.createElement(h.Chevron,{disabled:l?void 0:!0,className:m[me.Chevron],orientation:"left"})),ie.createElement(h.NextMonthButton,{type:"button",className:m[me.NextMonthButton],tabIndex:u?void 0:-1,"aria-disabled":u?void 0:!0,"aria-label":y(u),onClick:C},ie.createElement(h.Chevron,{disabled:u?void 0:!0,orientation:"right",className:m[me.Chevron]})))}function NT(n){const{components:a}=Us();return ie.createElement(a.Button,{...n})}function wT(n){return ie.createElement("option",{...n})}function kT(n){const{components:a}=Us();return ie.createElement(a.Button,{...n})}function AT(n){const{rootRef:a,...s}=n;return ie.createElement("div",{...s,ref:a})}function jT(n){return ie.createElement("select",{...n})}function TT(n){const{week:a,...s}=n;return ie.createElement("tr",{...s})}function MT(n){return ie.createElement("th",{...n})}function DT(n){return ie.createElement("thead",{"aria-hidden":!0},ie.createElement("tr",{...n}))}function ET(n){const{week:a,...s}=n;return ie.createElement("th",{...s})}function OT(n){return ie.createElement("th",{...n})}function RT(n){return ie.createElement("tbody",{...n})}function LT(n){const{components:a}=Us();return ie.createElement(a.Dropdown,{...n})}const PT=Object.freeze(Object.defineProperty({__proto__:null,Button:cT,CaptionLabel:uT,Chevron:dT,Day:fT,DayButton:hT,Dropdown:mT,DropdownNav:pT,Footer:gT,Month:yT,MonthCaption:xT,MonthGrid:vT,Months:bT,MonthsDropdown:ST,Nav:CT,NextMonthButton:NT,Option:wT,PreviousMonthButton:kT,Root:AT,Select:jT,Week:TT,WeekNumber:ET,WeekNumberHeader:OT,Weekday:MT,Weekdays:DT,Weeks:RT,YearsDropdown:LT},Symbol.toStringTag,{value:"Module"}));function ya(n,a,s=!1,l=Kn){let{from:u,to:f}=n;const{differenceInCalendarDays:h,isSameDay:m}=l;return u&&f?(h(f,u)<0&&([u,f]=[f,u]),h(a,u)>=(s?1:0)&&h(f,a)>=(s?1:0)):!s&&f?m(f,a):!s&&u?m(u,a):!1}function mf(n){return!!(n&&typeof n=="object"&&"before"in n&&"after"in n)}function Pr(n){return!!(n&&typeof n=="object"&&"from"in n)}function pf(n){return!!(n&&typeof n=="object"&&"after"in n)}function gf(n){return!!(n&&typeof n=="object"&&"before"in n)}function fv(n){return!!(n&&typeof n=="object"&&"dayOfWeek"in n)}function hv(n,a){return Array.isArray(n)&&n.every(a.isDate)}function xa(n,a,s=Kn){const l=Array.isArray(a)?a:[a],{isSameDay:u,differenceInCalendarDays:f,isAfter:h}=s;return l.some(m=>{if(typeof m=="boolean")return m;if(s.isDate(m))return u(n,m);if(hv(m,s))return m.some(p=>u(n,p));if(Pr(m))return ya(m,n,!1,s);if(fv(m))return Array.isArray(m.dayOfWeek)?m.dayOfWeek.includes(n.getDay()):m.dayOfWeek===n.getDay();if(mf(m)){const p=f(m.before,n),y=f(m.after,n),C=p>0,x=y<0;return h(m.before,m.after)?x&&C:C||x}return pf(m)?f(n,m.after)>0:gf(m)?f(m.before,n)>0:typeof m=="function"?m(n):!1})}function _T(n,a,s,l,u){const{disabled:f,hidden:h,modifiers:m,showOutsideDays:p,broadcastCalendar:y,today:C=u.today()}=a,{isSameDay:x,isSameMonth:b,startOfMonth:w,isBefore:N,endOfMonth:M,isAfter:E}=u,T=s&&w(s),H=l&&M(l),B={[ot.focused]:[],[ot.outside]:[],[ot.disabled]:[],[ot.hidden]:[],[ot.today]:[]},U={};for(const O of n){const{date:k,displayMonth:_}=O,X=!!(_&&!b(k,_)),F=!!(T&&N(k,T)),Q=!!(H&&E(k,H)),ae=!!(f&&xa(k,f,u)),te=!!(h&&xa(k,h,u))||F||Q||!y&&!p&&X||y&&p===!1&&X,ye=x(k,C);X&&B.outside.push(O),ae&&B.disabled.push(O),te&&B.hidden.push(O),ye&&B.today.push(O),m&&Object.keys(m).forEach(de=>{const Ce=m?.[de];Ce&&xa(k,Ce,u)&&(U[de]?U[de].push(O):U[de]=[O])})}return O=>{const k={[ot.focused]:!1,[ot.disabled]:!1,[ot.hidden]:!1,[ot.outside]:!1,[ot.today]:!1},_={};for(const X in B){const F=B[X];k[X]=F.some(Q=>Q===O)}for(const X in U)_[X]=U[X].some(F=>F===O);return{...k,..._}}}function zT(n,a,s={}){return Object.entries(n).filter(([,u])=>u===!0).reduce((u,[f])=>(s[f]?u.push(s[f]):a[ot[f]]?u.push(a[ot[f]]):a[Tn[f]]&&u.push(a[Tn[f]]),u),[a[me.Day]])}function UT(n){return{...PT,...n}}function IT(n){const a={"data-mode":n.mode??void 0,"data-required":"required"in n?n.required:void 0,"data-multiple-months":n.numberOfMonths&&n.numberOfMonths>1||void 0,"data-week-numbers":n.showWeekNumber||void 0,"data-broadcast-calendar":n.broadcastCalendar||void 0,"data-nav-layout":n.navLayout||void 0};return Object.entries(n).forEach(([s,l])=>{s.startsWith("data-")&&(a[s]=l)}),a}function HT(){const n={};for(const a in me)n[me[a]]=`rdp-${me[a]}`;for(const a in ot)n[ot[a]]=`rdp-${ot[a]}`;for(const a in Tn)n[Tn[a]]=`rdp-${Tn[a]}`;for(const a in cn)n[cn[a]]=`rdp-${cn[a]}`;return n}function mv(n,a,s){return(s??new un(a)).formatMonthYear(n)}const BT=mv;function qT(n,a,s){return(s??new un(a)).format(n,"d")}function KT(n,a=Kn){return a.format(n,"LLLL")}function GT(n,a,s){return(s??new un(a)).format(n,"cccccc")}function YT(n,a=Kn){return n<10?a.formatNumber(`0${n.toLocaleString()}`):a.formatNumber(`${n.toLocaleString()}`)}function VT(){return""}function pv(n,a=Kn){return a.format(n,"yyyy")}const FT=pv,QT=Object.freeze(Object.defineProperty({__proto__:null,formatCaption:mv,formatDay:qT,formatMonthCaption:BT,formatMonthDropdown:KT,formatWeekNumber:YT,formatWeekNumberHeader:VT,formatWeekdayName:GT,formatYearCaption:FT,formatYearDropdown:pv},Symbol.toStringTag,{value:"Module"}));function $T(n){return n?.formatMonthCaption&&!n.formatCaption&&(n.formatCaption=n.formatMonthCaption),n?.formatYearCaption&&!n.formatYearDropdown&&(n.formatYearDropdown=n.formatYearCaption),{...QT,...n}}function yf(n,a,s,l){let u=(l??new un(s)).format(n,"PPPP");return a.today&&(u=`Today, ${u}`),a.selected&&(u=`${u}, selected`),u}const WT=yf;function xf(n,a,s){return(s??new un(a)).formatMonthYear(n)}const XT=xf;function gv(n,a,s,l){let u=(l??new un(s)).format(n,"PPPP");return a?.today&&(u=`Today, ${u}`),u}function yv(n){return"Choose the Month"}function xv(){return""}const ZT="Go to the Next Month";function vv(n,a){return ZT}function bv(n){return"Go to the Previous Month"}function Sv(n,a,s){return(s??new un(a)).format(n,"cccc")}function Cv(n,a){return`Week ${n}`}function Nv(n){return"Week Number"}function wv(n){return"Choose the Year"}const JT=Object.freeze(Object.defineProperty({__proto__:null,labelCaption:XT,labelDay:WT,labelDayButton:yf,labelGrid:xf,labelGridcell:gv,labelMonthDropdown:yv,labelNav:xv,labelNext:vv,labelPrevious:bv,labelWeekNumber:Cv,labelWeekNumberHeader:Nv,labelWeekday:Sv,labelYearDropdown:wv},Symbol.toStringTag,{value:"Module"})),jn=(n,a,s)=>a||(s?typeof s=="function"?s:(...l)=>s:n);function eM(n,a){const s=a.locale?.labels??{};return{...JT,...n??{},labelDayButton:jn(yf,n?.labelDayButton,s.labelDayButton),labelMonthDropdown:jn(yv,n?.labelMonthDropdown,s.labelMonthDropdown),labelNext:jn(vv,n?.labelNext,s.labelNext),labelPrevious:jn(bv,n?.labelPrevious,s.labelPrevious),labelWeekNumber:jn(Cv,n?.labelWeekNumber,s.labelWeekNumber),labelYearDropdown:jn(wv,n?.labelYearDropdown,s.labelYearDropdown),labelGrid:jn(xf,n?.labelGrid,s.labelGrid),labelGridcell:jn(gv,n?.labelGridcell,s.labelGridcell),labelNav:jn(xv,n?.labelNav,s.labelNav),labelWeekNumberHeader:jn(Nv,n?.labelWeekNumberHeader,s.labelWeekNumberHeader),labelWeekday:jn(Sv,n?.labelWeekday,s.labelWeekday)}}function tM(n,a,s,l,u){const{startOfMonth:f,startOfYear:h,endOfYear:m,eachMonthOfInterval:p,getMonth:y}=u;return p({start:h(n),end:m(n)}).map(b=>{const w=l.formatMonthDropdown(b,u),N=y(b),M=a&&b<f(a)||s&&b>f(s)||!1;return{value:N,label:w,disabled:M}})}function nM(n,a={},s={}){let l={...a?.[me.Day]};return Object.entries(n).filter(([,u])=>u===!0).forEach(([u])=>{l={...l,...s?.[u]}}),l}function aM(n,a,s,l){const u=l??n.today(),f=s?n.startOfBroadcastWeek(u,n):a?n.startOfISOWeek(u):n.startOfWeek(u),h=[];for(let m=0;m<7;m++){const p=n.addDays(f,m);h.push(p)}return h}function iM(n,a,s,l,u=!1){if(!n||!a)return;const{startOfYear:f,endOfYear:h,eachYearOfInterval:m,getYear:p}=l,y=f(n),C=h(a),x=m({start:y,end:C});return u&&x.reverse(),x.map(b=>{const w=s.formatYearDropdown(b,l);return{value:p(b),label:w,disabled:!1}})}const Is=n=>n instanceof HTMLElement?n:null,ud=n=>[...n.querySelectorAll("[data-animated-month]")??[]],oM=n=>Is(n.querySelector("[data-animated-month]")),dd=n=>Is(n.querySelector("[data-animated-caption]")),fd=n=>Is(n.querySelector("[data-animated-weeks]")),sM=n=>Is(n.querySelector("[data-animated-nav]")),lM=n=>Is(n.querySelector("[data-animated-weekdays]"));function rM(n,a,{classNames:s,months:l,focused:u,dateLib:f}){const h=S.useRef(null),m=S.useRef(l),p=S.useRef(!1);S.useLayoutEffect(()=>{const y=m.current;if(m.current=l,!a||!n.current||!(n.current instanceof HTMLElement)||l.length===0||y.length===0||l.length!==y.length)return;const C=f.isSameMonth(l[0].date,y[0].date),x=f.isAfter(l[0].date,y[0].date),b=x?s[cn.caption_after_enter]:s[cn.caption_before_enter],w=x?s[cn.weeks_after_enter]:s[cn.weeks_before_enter],N=h.current,M=n.current.cloneNode(!0);if(M instanceof HTMLElement?(ud(M).forEach(B=>{if(!(B instanceof HTMLElement))return;const U=oM(B);U&&B.contains(U)&&B.removeChild(U);const O=dd(B);O&&O.classList.remove(b);const k=fd(B);k&&k.classList.remove(w)}),h.current=M):h.current=null,p.current||C||u)return;const E=N instanceof HTMLElement?ud(N):[],T=ud(n.current);if(T?.every(H=>H instanceof HTMLElement)&&E&&E.every(H=>H instanceof HTMLElement)){p.current=!0,n.current.style.isolation="isolate";const H=sM(n.current);H&&(H.style.zIndex="1"),T.forEach((B,U)=>{const O=E[U];if(!O)return;B.style.position="relative",B.style.overflow="hidden";const k=dd(B);k&&k.classList.add(b);const _=fd(B);_&&_.classList.add(w);const X=()=>{p.current=!1,n.current&&(n.current.style.isolation=""),H&&(H.style.zIndex=""),k&&k.classList.remove(b),_&&_.classList.remove(w),B.style.position="",B.style.overflow="",B.contains(O)&&B.removeChild(O)};O.style.pointerEvents="none",O.style.position="absolute",O.style.overflow="hidden",O.setAttribute("aria-hidden","true");const F=lM(O);F&&(F.style.opacity="0");const Q=dd(O);Q&&(Q.classList.add(x?s[cn.caption_before_exit]:s[cn.caption_after_exit]),Q.addEventListener("animationend",X));const ae=fd(O);ae&&ae.classList.add(x?s[cn.weeks_before_exit]:s[cn.weeks_after_exit]),B.insertBefore(O,B.firstChild)})}})}function cM(n,a,s,l){const u=n[0],f=n[n.length-1],{ISOWeek:h,fixedWeeks:m,broadcastCalendar:p}=s??{},{addDays:y,differenceInCalendarDays:C,differenceInCalendarMonths:x,endOfBroadcastWeek:b,endOfISOWeek:w,endOfMonth:N,endOfWeek:M,isAfter:E,startOfBroadcastWeek:T,startOfISOWeek:H,startOfWeek:B}=l,U=p?T(u,l):h?H(u):B(u),O=p?b(f):h?w(N(f)):M(N(f)),k=a&&(p?b(a):h?w(a):M(a)),_=k&&E(O,k)?k:O,X=C(_,U),F=x(f,u)+1,Q=[];for(let ye=0;ye<=X;ye++){const de=y(U,ye);Q.push(de)}const te=(p?35:42)*F;if(m&&Q.length<te){const ye=te-Q.length;for(let de=0;de<ye;de++){const Ce=y(Q[Q.length-1],1);Q.push(Ce)}}return Q}function uM(n){const a=[];return n.reduce((s,l)=>{const u=l.weeks.reduce((f,h)=>f.concat(h.days.slice()),a.slice());return s.concat(u.slice())},a.slice())}function dM(n,a,s,l){const{numberOfMonths:u=1}=s,f=[];for(let h=0;h<u;h++){const m=l.addMonths(n,h);if(a&&m>a)break;f.push(m)}return f}function Sy(n,a,s,l){const{month:u,defaultMonth:f,today:h=l.today(),numberOfMonths:m=1}=n;let p=u||f||h;const{differenceInCalendarMonths:y,addMonths:C,startOfMonth:x}=l;if(s&&y(s,p)<m-1){const b=-1*(m-1);p=C(s,b)}return a&&y(p,a)<0&&(p=a),x(p)}function fM(n,a,s,l){const{addDays:u,endOfBroadcastWeek:f,endOfISOWeek:h,endOfMonth:m,endOfWeek:p,getISOWeek:y,getWeek:C,startOfBroadcastWeek:x,startOfISOWeek:b,startOfWeek:w}=l,N=n.reduce((M,E)=>{const T=s.broadcastCalendar?x(E,l):s.ISOWeek?b(E):w(E),H=s.broadcastCalendar?f(E):s.ISOWeek?h(m(E)):p(m(E)),B=a.filter(_=>_>=T&&_<=H),U=s.broadcastCalendar?35:42;if(s.fixedWeeks&&B.length<U){const _=a.filter(X=>{const F=U-B.length;return X>H&&X<=u(H,F)});B.push(..._)}const O=B.reduce((_,X)=>{const F=s.ISOWeek?y(X):C(X),Q=_.find(te=>te.weekNumber===F),ae=new uv(X,E,l);return Q?Q.days.push(ae):_.push(new rT(F,[ae])),_},[]),k=new lT(E,O);return M.push(k),M},[]);return s.reverseMonths?N.reverse():N}function hM(n,a){let{startMonth:s,endMonth:l}=n;const{startOfYear:u,startOfDay:f,startOfMonth:h,endOfMonth:m,addYears:p,endOfYear:y,newDate:C,today:x}=a,{fromYear:b,toYear:w,fromMonth:N,toMonth:M}=n;!s&&N&&(s=N),!s&&b&&(s=a.newDate(b,0,1)),!l&&M&&(l=M),!l&&w&&(l=C(w,11,31));const E=n.captionLayout==="dropdown"||n.captionLayout==="dropdown-years";return s?s=h(s):b?s=C(b,0,1):!s&&E&&(s=u(p(n.today??x(),-100))),l?l=m(l):w?l=C(w,11,31):!l&&E&&(l=y(n.today??x())),[s&&f(s),l&&f(l)]}function mM(n,a,s,l){if(s.disableNavigation)return;const{pagedNavigation:u,numberOfMonths:f=1}=s,{startOfMonth:h,addMonths:m,differenceInCalendarMonths:p}=l,y=u?f:1,C=h(n);if(!a)return m(C,y);if(!(p(a,n)<f))return m(C,y)}function pM(n,a,s,l){if(s.disableNavigation)return;const{pagedNavigation:u,numberOfMonths:f}=s,{startOfMonth:h,addMonths:m,differenceInCalendarMonths:p}=l,y=u?f??1:1,C=h(n);if(!a)return m(C,-y);if(!(p(C,a)<=0))return m(C,-y)}function gM(n){const a=[];return n.reduce((s,l)=>s.concat(l.weeks.slice()),a.slice())}function _r(n,a){const[s,l]=S.useState(n);return[a===void 0?s:a,l]}function yM(n,a){const[s,l]=hM(n,a),{startOfMonth:u,endOfMonth:f}=a,h=Sy(n,s,l,a),[m,p]=_r(h,n.month?h:void 0);S.useEffect(()=>{const U=Sy(n,s,l,a);p(U)},[n.timeZone]);const{months:y,weeks:C,days:x,previousMonth:b,nextMonth:w}=S.useMemo(()=>{const U=dM(m,l,{numberOfMonths:n.numberOfMonths},a),O=cM(U,n.endMonth?f(n.endMonth):void 0,{ISOWeek:n.ISOWeek,fixedWeeks:n.fixedWeeks,broadcastCalendar:n.broadcastCalendar},a),k=fM(U,O,{broadcastCalendar:n.broadcastCalendar,fixedWeeks:n.fixedWeeks,ISOWeek:n.ISOWeek,reverseMonths:n.reverseMonths},a),_=gM(k),X=uM(k),F=pM(m,s,n,a),Q=mM(m,l,n,a);return{months:k,weeks:_,days:X,previousMonth:F,nextMonth:Q}},[a,m.getTime(),l?.getTime(),s?.getTime(),n.disableNavigation,n.broadcastCalendar,n.endMonth?.getTime(),n.fixedWeeks,n.ISOWeek,n.numberOfMonths,n.pagedNavigation,n.reverseMonths]),{disableNavigation:N,onMonthChange:M}=n,E=U=>C.some(O=>O.days.some(k=>k.isEqualTo(U))),T=U=>{if(N)return;let O=u(U);s&&O<u(s)&&(O=u(s)),l&&O>u(l)&&(O=u(l)),p(O),M?.(O)};return{months:y,weeks:C,days:x,navStart:s,navEnd:l,previousMonth:b,nextMonth:w,goToMonth:T,goToDay:U=>{E(U)||T(U.date)}}}var In;(function(n){n[n.Today=0]="Today",n[n.Selected=1]="Selected",n[n.LastFocused=2]="LastFocused",n[n.FocusedModifier=3]="FocusedModifier"})(In||(In={}));function Cy(n){return!n[ot.disabled]&&!n[ot.hidden]&&!n[ot.outside]}function xM(n,a,s,l){let u,f=-1;for(const h of n){const m=a(h);Cy(m)&&(m[ot.focused]&&f<In.FocusedModifier?(u=h,f=In.FocusedModifier):l?.isEqualTo(h)&&f<In.LastFocused?(u=h,f=In.LastFocused):s(h.date)&&f<In.Selected?(u=h,f=In.Selected):m[ot.today]&&f<In.Today&&(u=h,f=In.Today))}return u||(u=n.find(h=>Cy(a(h)))),u}function vM(n,a,s,l,u,f,h){const{ISOWeek:m,broadcastCalendar:p}=f,{addDays:y,addMonths:C,addWeeks:x,addYears:b,endOfBroadcastWeek:w,endOfISOWeek:N,endOfWeek:M,max:E,min:T,startOfBroadcastWeek:H,startOfISOWeek:B,startOfWeek:U}=h;let k={day:y,week:x,month:C,year:b,startOfWeek:_=>p?H(_,h):m?B(_):U(_),endOfWeek:_=>p?w(_):m?N(_):M(_)}[n](s,a==="after"?1:-1);return a==="before"&&l?k=E([l,k]):a==="after"&&u&&(k=T([u,k])),k}function kv(n,a,s,l,u,f,h,m=0){if(m>365)return;const p=vM(n,a,s.date,l,u,f,h),y=!!(f.disabled&&xa(p,f.disabled,h)),C=!!(f.hidden&&xa(p,f.hidden,h)),x=p,b=new uv(p,x,h);return!y&&!C?b:kv(n,a,b,l,u,f,h,m+1)}function bM(n,a,s,l,u){const{autoFocus:f}=n,[h,m]=S.useState(),p=xM(a.days,s,l||(()=>!1),h),[y,C]=S.useState(f?p:void 0);return{isFocusTarget:M=>!!p?.isEqualTo(M),setFocused:C,focused:y,blur:()=>{m(y),C(void 0)},moveFocus:(M,E)=>{if(!y)return;const T=kv(M,E,y,a.navStart,a.navEnd,n,u);T&&(n.disableNavigation&&!a.days.some(B=>B.isEqualTo(T))||(a.goToDay(T),C(T)))}}}function SM(n,a){const{selected:s,required:l,onSelect:u}=n,[f,h]=_r(s,u?s:void 0),m=u?s:f,{isSameDay:p}=a,y=w=>m?.some(N=>p(N,w))??!1,{min:C,max:x}=n;return{selected:m,select:(w,N,M)=>{let E=[...m??[]];if(y(w)){if(m?.length===C||l&&m?.length===1)return;E=m?.filter(T=>!p(T,w))}else m?.length===x?E=[w]:E=[...E,w];return u||h(E),u?.(E,w,N,M),E},isSelected:y}}function CM(n,a,s=0,l=0,u=!1,f=Kn){const{from:h,to:m}=a||{},{isSameDay:p,isAfter:y,isBefore:C}=f;let x;if(!h&&!m)x={from:n,to:s>0?void 0:n};else if(h&&!m)p(h,n)?s===0?x={from:h,to:n}:u?x={from:h,to:void 0}:x=void 0:C(n,h)?x={from:n,to:h}:x={from:h,to:n};else if(h&&m)if(p(h,n)&&p(m,n))u?x={from:h,to:m}:x=void 0;else if(p(h,n))x={from:h,to:s>0?void 0:n};else if(p(m,n))x={from:n,to:s>0?void 0:n};else if(C(n,h))x={from:n,to:m};else if(y(n,h))x={from:h,to:n};else if(y(n,m))x={from:h,to:n};else throw new Error("Invalid range");if(x?.from&&x?.to){const b=f.differenceInCalendarDays(x.to,x.from);l>0&&b>l?x={from:n,to:void 0}:s>1&&b<s&&(x={from:n,to:void 0})}return x}function NM(n,a,s=Kn){const l=Array.isArray(a)?a:[a];let u=n.from;const f=s.differenceInCalendarDays(n.to,n.from),h=Math.min(f,6);for(let m=0;m<=h;m++){if(l.includes(u.getDay()))return!0;u=s.addDays(u,1)}return!1}function Ny(n,a,s=Kn){return ya(n,a.from,!1,s)||ya(n,a.to,!1,s)||ya(a,n.from,!1,s)||ya(a,n.to,!1,s)}function wM(n,a,s=Kn){const l=Array.isArray(a)?a:[a];if(l.filter(m=>typeof m!="function").some(m=>typeof m=="boolean"?m:s.isDate(m)?ya(n,m,!1,s):hv(m,s)?m.some(p=>ya(n,p,!1,s)):Pr(m)?m.from&&m.to?Ny(n,{from:m.from,to:m.to},s):!1:fv(m)?NM(n,m.dayOfWeek,s):mf(m)?s.isAfter(m.before,m.after)?Ny(n,{from:s.addDays(m.after,1),to:s.addDays(m.before,-1)},s):xa(n.from,m,s)||xa(n.to,m,s):pf(m)||gf(m)?xa(n.from,m,s)||xa(n.to,m,s):!1))return!0;const h=l.filter(m=>typeof m=="function");if(h.length){let m=n.from;const p=s.differenceInCalendarDays(n.to,n.from);for(let y=0;y<=p;y++){if(h.some(C=>C(m)))return!0;m=s.addDays(m,1)}}return!1}function kM(n,a){const{disabled:s,excludeDisabled:l,selected:u,required:f,onSelect:h}=n,[m,p]=_r(u,h?u:void 0),y=h?u:m;return{selected:y,select:(b,w,N)=>{const{min:M,max:E}=n,T=b?CM(b,y,M,E,f,a):void 0;return l&&s&&T?.from&&T.to&&wM({from:T.from,to:T.to},s,a)&&(T.from=b,T.to=void 0),h||p(T),h?.(T,b,w,N),T},isSelected:b=>y&&ya(y,b,!1,a)}}function AM(n,a){const{selected:s,required:l,onSelect:u}=n,[f,h]=_r(s,u?s:void 0),m=u?s:f,{isSameDay:p}=a;return{selected:m,select:(x,b,w)=>{let N=x;return!l&&m&&m&&p(x,m)&&(N=void 0),u||h(N),u?.(N,x,b,w),N},isSelected:x=>m?p(m,x):!1}}function jM(n,a){const s=AM(n,a),l=SM(n,a),u=kM(n,a);switch(n.mode){case"single":return s;case"multiple":return l;case"range":return u;default:return}}function Rt(n,a){return n instanceof ga&&n.timeZone===a?n:new ga(n,a)}function wy(n,a){return typeof n=="boolean"||typeof n=="function"?n:n instanceof Date?Rt(n,a):Array.isArray(n)?n.map(s=>s instanceof Date?Rt(s,a):s):Pr(n)?{...n,from:n.from?Rt(n.from,a):n.from,to:n.to?Rt(n.to,a):n.to}:mf(n)?{before:Rt(n.before,a),after:Rt(n.after,a)}:pf(n)?{after:Rt(n.after,a)}:gf(n)?{before:Rt(n.before,a)}:n}function hd(n,a){return n&&(Array.isArray(n)?n.map(s=>wy(s,a)):wy(n,a))}function TM(n){let a=n;const s=a.timeZone;if(s&&(a={...n,timeZone:s},a.today&&(a.today=Rt(a.today,s)),a.month&&(a.month=Rt(a.month,s)),a.defaultMonth&&(a.defaultMonth=Rt(a.defaultMonth,s)),a.startMonth&&(a.startMonth=Rt(a.startMonth,s)),a.endMonth&&(a.endMonth=Rt(a.endMonth,s)),a.mode==="single"&&a.selected?a.selected=Rt(a.selected,s):a.mode==="multiple"&&a.selected?a.selected=a.selected?.map(he=>Rt(he,s)):a.mode==="range"&&a.selected&&(a.selected={from:a.selected.from?Rt(a.selected.from,s):a.selected.from,to:a.selected.to?Rt(a.selected.to,s):a.selected.to}),a.disabled!==void 0&&(a.disabled=hd(a.disabled,s)),a.hidden!==void 0&&(a.hidden=hd(a.hidden,s)),a.modifiers)){const he={};Object.keys(a.modifiers).forEach(Ae=>{he[Ae]=hd(a.modifiers?.[Ae],s)}),a.modifiers=he}const{components:l,formatters:u,labels:f,dateLib:h,locale:m,classNames:p}=S.useMemo(()=>{const he={...cv,...a.locale},Ae=new un({locale:he,weekStartsOn:a.broadcastCalendar?1:a.weekStartsOn,firstWeekContainsDate:a.firstWeekContainsDate,useAdditionalWeekYearTokens:a.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:a.useAdditionalDayOfYearTokens,timeZone:a.timeZone,numerals:a.numerals},a.dateLib);return{dateLib:Ae,components:UT(a.components),formatters:$T(a.formatters),labels:eM(a.labels,Ae.options),locale:he,classNames:{...HT(),...a.classNames}}},[a.locale,a.broadcastCalendar,a.weekStartsOn,a.firstWeekContainsDate,a.useAdditionalWeekYearTokens,a.useAdditionalDayOfYearTokens,a.timeZone,a.numerals,a.dateLib,a.components,a.formatters,a.labels,a.classNames]);a.today||(a={...a,today:h.today()});const{captionLayout:y,mode:C,navLayout:x,numberOfMonths:b=1,onDayBlur:w,onDayClick:N,onDayFocus:M,onDayKeyDown:E,onDayMouseEnter:T,onDayMouseLeave:H,onNextClick:B,onPrevClick:U,showWeekNumber:O,styles:k}=a,{formatCaption:_,formatDay:X,formatMonthDropdown:F,formatWeekNumber:Q,formatWeekNumberHeader:ae,formatWeekdayName:te,formatYearDropdown:ye}=u,de=yM(a,h),{days:Ce,months:R,navStart:W,navEnd:ee,previousMonth:$,nextMonth:ce,goToMonth:fe}=de,we=_T(Ce,a,W,ee,h),{isSelected:V,select:J,selected:se}=jM(a,h)??{},{blur:ne,focused:oe,isFocusTarget:xe,moveFocus:Le,setFocused:Ke}=bM(a,de,we,V??(()=>!1),h),{labelDayButton:St,labelGridcell:Ct,labelGrid:Ye,labelMonthDropdown:nt,labelNav:Ut,labelPrevious:Qt,labelNext:Gn,labelWeekday:je,labelWeekNumber:$t,labelWeekNumberHeader:En,labelYearDropdown:Wt}=f,Sa=S.useMemo(()=>aM(h,a.ISOWeek,a.broadcastCalendar,a.today),[h,a.ISOWeek,a.broadcastCalendar,a.today]),Yn=C!==void 0||N!==void 0,ft=S.useCallback(()=>{$&&(fe($),U?.($))},[$,fe,U]),Xt=S.useCallback(()=>{ce&&(fe(ce),B?.(ce))},[fe,ce,B]),Vn=S.useCallback((he,Ae)=>be=>{be.preventDefault(),be.stopPropagation(),Ke(he),!Ae.disabled&&(J?.(he.date,Ae,be),N?.(he.date,Ae,be))},[J,N,Ke]),Ja=S.useCallback((he,Ae)=>be=>{Ke(he),M?.(he.date,Ae,be)},[M,Ke]),On=S.useCallback((he,Ae)=>be=>{ne(),w?.(he.date,Ae,be)},[ne,w]),Rn=S.useCallback((he,Ae)=>be=>{const Oe={ArrowLeft:[be.shiftKey?"month":"day",a.dir==="rtl"?"after":"before"],ArrowRight:[be.shiftKey?"month":"day",a.dir==="rtl"?"before":"after"],ArrowDown:[be.shiftKey?"year":"week","after"],ArrowUp:[be.shiftKey?"year":"week","before"],PageUp:[be.shiftKey?"year":"month","before"],PageDown:[be.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(Oe[be.key]){be.preventDefault(),be.stopPropagation();const[Je,Ne]=Oe[be.key];Le(Je,Ne)}E?.(he.date,Ae,be)},[Le,E,a.dir]),ji=S.useCallback((he,Ae)=>be=>{T?.(he.date,Ae,be)},[T]),No=S.useCallback((he,Ae)=>be=>{H?.(he.date,Ae,be)},[H]),wo=S.useCallback(he=>Ae=>{const be=Number(Ae.target.value),Oe=h.setMonth(h.startOfMonth(he),be);fe(Oe)},[h,fe]),Fn=S.useCallback(he=>Ae=>{const be=Number(Ae.target.value),Oe=h.setYear(h.startOfMonth(he),be);fe(Oe)},[h,fe]),{className:Z,style:De}=S.useMemo(()=>({className:[p[me.Root],a.className].filter(Boolean).join(" "),style:{...k?.[me.Root],...a.style}}),[p,a.className,a.style,k]),ve=IT(a),Ee=S.useRef(null);rM(Ee,!!a.animate,{classNames:p,months:R,focused:oe,dateLib:h});const at={dayPickerProps:a,selected:se,select:J,isSelected:V,months:R,nextMonth:ce,previousMonth:$,goToMonth:fe,getModifiers:we,components:l,classNames:p,styles:k,labels:f,formatters:u};return ie.createElement(dv.Provider,{value:at},ie.createElement(l.Root,{rootRef:a.animate?Ee:void 0,className:Z,style:De,dir:a.dir,id:a.id,lang:a.lang,nonce:a.nonce,title:a.title,role:a.role,"aria-label":a["aria-label"],"aria-labelledby":a["aria-labelledby"],...ve},ie.createElement(l.Months,{className:p[me.Months],style:k?.[me.Months]},!a.hideNavigation&&!x&&ie.createElement(l.Nav,{"data-animated-nav":a.animate?"true":void 0,className:p[me.Nav],style:k?.[me.Nav],"aria-label":Ut(),onPreviousClick:ft,onNextClick:Xt,previousMonth:$,nextMonth:ce}),R.map((he,Ae)=>ie.createElement(l.Month,{"data-animated-month":a.animate?"true":void 0,className:p[me.Month],style:k?.[me.Month],key:Ae,displayIndex:Ae,calendarMonth:he},x==="around"&&!a.hideNavigation&&Ae===0&&ie.createElement(l.PreviousMonthButton,{type:"button",className:p[me.PreviousMonthButton],tabIndex:$?void 0:-1,"aria-disabled":$?void 0:!0,"aria-label":Qt($),onClick:ft,"data-animated-button":a.animate?"true":void 0},ie.createElement(l.Chevron,{disabled:$?void 0:!0,className:p[me.Chevron],orientation:a.dir==="rtl"?"right":"left"})),ie.createElement(l.MonthCaption,{"data-animated-caption":a.animate?"true":void 0,className:p[me.MonthCaption],style:k?.[me.MonthCaption],calendarMonth:he,displayIndex:Ae},y?.startsWith("dropdown")?ie.createElement(l.DropdownNav,{className:p[me.Dropdowns],style:k?.[me.Dropdowns]},(()=>{const be=y==="dropdown"||y==="dropdown-months"?ie.createElement(l.MonthsDropdown,{key:"month",className:p[me.MonthsDropdown],"aria-label":nt(),classNames:p,components:l,disabled:!!a.disableNavigation,onChange:wo(he.date),options:tM(he.date,W,ee,u,h),style:k?.[me.Dropdown],value:h.getMonth(he.date)}):ie.createElement("span",{key:"month"},F(he.date,h)),Oe=y==="dropdown"||y==="dropdown-years"?ie.createElement(l.YearsDropdown,{key:"year",className:p[me.YearsDropdown],"aria-label":Wt(h.options),classNames:p,components:l,disabled:!!a.disableNavigation,onChange:Fn(he.date),options:iM(W,ee,u,h,!!a.reverseYears),style:k?.[me.Dropdown],value:h.getYear(he.date)}):ie.createElement("span",{key:"year"},ye(he.date,h));return h.getMonthYearOrder()==="year-first"?[Oe,be]:[be,Oe]})(),ie.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},_(he.date,h.options,h))):ie.createElement(l.CaptionLabel,{className:p[me.CaptionLabel],role:"status","aria-live":"polite"},_(he.date,h.options,h))),x==="around"&&!a.hideNavigation&&Ae===b-1&&ie.createElement(l.NextMonthButton,{type:"button",className:p[me.NextMonthButton],tabIndex:ce?void 0:-1,"aria-disabled":ce?void 0:!0,"aria-label":Gn(ce),onClick:Xt,"data-animated-button":a.animate?"true":void 0},ie.createElement(l.Chevron,{disabled:ce?void 0:!0,className:p[me.Chevron],orientation:a.dir==="rtl"?"left":"right"})),Ae===b-1&&x==="after"&&!a.hideNavigation&&ie.createElement(l.Nav,{"data-animated-nav":a.animate?"true":void 0,className:p[me.Nav],style:k?.[me.Nav],"aria-label":Ut(),onPreviousClick:ft,onNextClick:Xt,previousMonth:$,nextMonth:ce}),ie.createElement(l.MonthGrid,{role:"grid","aria-multiselectable":C==="multiple"||C==="range","aria-label":Ye(he.date,h.options,h)||void 0,className:p[me.MonthGrid],style:k?.[me.MonthGrid]},!a.hideWeekdays&&ie.createElement(l.Weekdays,{"data-animated-weekdays":a.animate?"true":void 0,className:p[me.Weekdays],style:k?.[me.Weekdays]},O&&ie.createElement(l.WeekNumberHeader,{"aria-label":En(h.options),className:p[me.WeekNumberHeader],style:k?.[me.WeekNumberHeader],scope:"col"},ae()),Sa.map(be=>ie.createElement(l.Weekday,{"aria-label":je(be,h.options,h),className:p[me.Weekday],key:String(be),style:k?.[me.Weekday],scope:"col"},te(be,h.options,h)))),ie.createElement(l.Weeks,{"data-animated-weeks":a.animate?"true":void 0,className:p[me.Weeks],style:k?.[me.Weeks]},he.weeks.map(be=>ie.createElement(l.Week,{className:p[me.Week],key:be.weekNumber,style:k?.[me.Week],week:be},O&&ie.createElement(l.WeekNumber,{week:be,style:k?.[me.WeekNumber],"aria-label":$t(be.weekNumber,{locale:m}),className:p[me.WeekNumber],scope:"row",role:"rowheader"},Q(be.weekNumber,h)),be.days.map(Oe=>{const{date:Je}=Oe,Ne=we(Oe);if(Ne[ot.focused]=!Ne.hidden&&!!oe?.isEqualTo(Oe),Ne[Tn.selected]=V?.(Je)||Ne.selected,Pr(se)){const{from:Zt,to:Nn}=se;Ne[Tn.range_start]=!!(Zt&&Nn&&h.isSameDay(Je,Zt)),Ne[Tn.range_end]=!!(Zt&&Nn&&h.isSameDay(Je,Nn)),Ne[Tn.range_middle]=ya(se,Je,!0,h)}const Lt=nM(Ne,k,a.modifiersStyles),Qn=zT(Ne,p,a.modifiersClassNames),wt=!Yn&&!Ne.hidden?Ct(Je,Ne,h.options,h):void 0;return ie.createElement(l.Day,{key:`${Oe.isoDate}_${Oe.displayMonthId}`,day:Oe,modifiers:Ne,className:Qn.join(" "),style:Lt,role:"gridcell","aria-selected":Ne.selected||void 0,"aria-label":wt,"data-day":Oe.isoDate,"data-month":Oe.outside?Oe.dateMonthId:void 0,"data-selected":Ne.selected||void 0,"data-disabled":Ne.disabled||void 0,"data-hidden":Ne.hidden||void 0,"data-outside":Oe.outside||void 0,"data-focused":Ne.focused||void 0,"data-today":Ne.today||void 0},!Ne.hidden&&Yn?ie.createElement(l.DayButton,{className:p[me.DayButton],style:k?.[me.DayButton],type:"button",day:Oe,modifiers:Ne,disabled:!Ne.focused&&Ne.disabled||void 0,"aria-disabled":Ne.focused&&Ne.disabled||void 0,tabIndex:xe(Oe)?0:-1,"aria-label":St(Je,Ne,h.options,h),onClick:Vn(Oe,Ne),onBlur:On(Oe,Ne),onFocus:Ja(Oe,Ne),onKeyDown:Rn(Oe,Ne),onMouseEnter:ji(Oe,Ne),onMouseLeave:No(Oe,Ne)},X(Je,h.options,h)):!Ne.hidden&&X(Oe.date,h.options,h))})))))))),a.footer&&ie.createElement(l.Footer,{className:p[me.Footer],style:k?.[me.Footer],role:"status","aria-live":"polite"},a.footer)))}function MM({className:n,classNames:a,showOutsideDays:s=!0,...l}){return r.jsx(TM,{showOutsideDays:s,className:q("p-2",n),classNames:{root:"relative",months:"flex flex-col sm:flex-row gap-2 sm:gap-4",month:"flex flex-col gap-2",month_caption:"flex justify-center pt-1 relative items-center h-8",caption_label:"text-sm font-medium",nav:"absolute inset-x-0 top-2 flex items-center justify-between px-1 z-10",button_previous:q(ar({variant:"ghost"}),"h-7 w-7 bg-transparent p-0 opacity-70 hover:opacity-100 hover:bg-accent rounded-md"),button_next:q(ar({variant:"ghost"}),"h-7 w-7 bg-transparent p-0 opacity-70 hover:opacity-100 hover:bg-accent rounded-md"),month_grid:"w-full border-collapse",weekdays:"flex w-full",weekday:"text-muted-foreground w-8 font-normal text-xs text-center",weeks:"flex flex-col",week:"flex w-full",day:q("relative h-8 w-8 p-0 text-center text-xs font-normal focus-within:relative focus-within:z-20","hover:bg-accent hover:text-accent-foreground rounded-full select-none"),day_button:q(ar({variant:"ghost"}),"h-8 w-8 p-0 font-normal rounded-full text-xs","aria-selected:opacity-100"),range_start:q("aria-selected:bg-primary aria-selected:text-primary-foreground","aria-selected:rounded-l-full aria-selected:rounded-r-none","aria-selected:hover:bg-primary aria-selected:hover:text-primary-foreground"),range_end:q("aria-selected:bg-primary aria-selected:text-primary-foreground","aria-selected:rounded-r-full aria-selected:rounded-l-none","aria-selected:hover:bg-primary aria-selected:hover:text-primary-foreground"),range_middle:q("aria-selected:bg-accent aria-selected:text-accent-foreground","aria-selected:rounded-none"),selected:q("bg-primary text-primary-foreground rounded-full","hover:bg-primary hover:text-primary-foreground","focus:bg-primary focus:text-primary-foreground"),today:"bg-accent text-accent-foreground rounded-full",outside:"text-muted-foreground opacity-50 aria-selected:bg-accent/50 aria-selected:text-muted-foreground aria-selected:opacity-30",disabled:"text-muted-foreground opacity-50",hidden:"invisible",...a},components:{Chevron:({orientation:u,className:f,...h})=>{const m=u==="left"?nC:u==="right"?yr:u==="up"?Ed:br;return r.jsx(m,{className:q("h-4 w-4",f),...h})}},...l})}MM.displayName="Calendar";const DM=S.lazy(()=>gt(()=>Promise.resolve().then(()=>hf),void 0).then(n=>({default:n.CodeEditor})));function XD({rawJsonContent:n,isRawJsonValid:a,rawJsonEdits:s,rawSettingsEnv:l,onChange:u,missingRequiredFields:f=[]}){const h=f.length>0;return r.jsx(S.Suspense,{fallback:r.jsxs("div",{className:"flex items-center justify-center h-full",children:[r.jsx(Dn,{className:"w-6 h-6 animate-spin text-muted-foreground"}),r.jsx("span",{className:"ml-2 text-muted-foreground",children:"Loading editor..."})]}),children:r.jsxs("div",{className:"h-full flex flex-col",children:[!a&&s!==null&&r.jsxs("div",{className:"mb-2 px-3 py-2 bg-destructive/10 text-destructive text-sm rounded-md flex items-center gap-2 mx-6 mt-4 shrink-0",children:[r.jsx(bo,{className:"w-4 h-4"}),"Invalid JSON syntax"]}),a&&h&&r.jsxs("div",{className:"mb-2 px-3 py-2 bg-warning/10 text-warning-foreground text-sm rounded-md flex items-start gap-2 mx-6 mt-4 shrink-0 border border-warning/20",children:[r.jsx(va,{className:"w-4 h-4 mt-0.5 text-amber-500 shrink-0"}),r.jsxs("div",{children:[r.jsx("span",{className:"font-medium text-amber-600 dark:text-amber-400",children:"Missing required fields:"})," ",r.jsx("code",{className:"text-xs bg-muted px-1 py-0.5 rounded",children:f.join(", ")}),r.jsx("p",{className:"text-xs text-muted-foreground mt-1",children:"These fields will use default values at runtime."})]})]}),r.jsx("div",{className:"flex-1 overflow-hidden px-6 pb-4 pt-4",children:r.jsx("div",{className:"h-full border rounded-md overflow-hidden bg-background",children:r.jsx(DM,{value:n,onChange:u,language:"json",minHeight:"100%"})})}),r.jsx("div",{className:"mx-6 mb-4",children:r.jsx("div",{className:"border rounded-md overflow-hidden",children:r.jsx(df,{profileEnv:l})})})]})})}const ZD={target:"Target CLI",cliproxy:"CLIProxy Provider","api-profiles":"API Profile",websearch:"WebSearch"},JD=[{id:"droid-target-support",title:"Factory Droid support is live",summary:"API Profiles and CLIProxy variants now support Droid as a first-class execution target.",primaryAction:"Set Droid as your default execution target for non-Claude workflows.",publishedAt:"2026-02-25",status:"new",scopes:["target","api-profiles","cliproxy"],entryIds:["droid-target","custom-api-profiles","codex-cliproxy","agy-cliproxy"],highlights:["Set default target to Droid when creating or editing API Profiles.","Set default target to Droid for CLIProxy variants, including Codex and Antigravity flows.","Use ccsd alias or --target droid for one-off target overrides."],actions:[{id:"open-api-profiles",label:"Set default target in API Profiles",description:"Open API Profiles and set Default Target to Droid for profiles you run often.",type:"route",path:"/providers"},{id:"open-cliproxy",label:"Set default target in CLIProxy variants",description:"Open CLIProxy variants and set target to Droid for Codex/Antigravity or custom variants.",type:"route",path:"/cliproxy"},{id:"copy-ccsd-command",label:"Run once with Droid alias",description:"Use ccsd to force Droid target with your current profile.",type:"command",command:"ccsd glm"},{id:"copy-target-override",label:"Run once with --target override",description:"Keep your default profile but force Droid for a single command.",type:"command",command:'ccs codex --target droid "your prompt"'}],routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccsd glm",'ccs codex --target droid "your prompt"',"ccs cliproxy create mycodex --provider codex --target droid"]},{id:"updates-center-launch",title:"Updates inbox is available for rollout tasks",summary:"A focused updates inbox exists for setup tasks and rollout guidance when you need it.",primaryAction:"Use this page only when needed for rollout tasks, then return to your normal workflow.",publishedAt:"2026-02-25",status:"new",scopes:["target","cliproxy","api-profiles","websearch"],entryIds:["droid-target","codex-cliproxy","custom-api-profiles","opencode-websearch"],highlights:["Single data source powers update content and integration mapping.","Notices can be tracked as new, seen, done, or dismissed.","Catalog covers target CLI, CLIProxy providers, and WebSearch integrations."],actions:[{id:"open-updates-page",label:"Open updates inbox when needed",description:"Review rollout tasks only when you want guided setup changes.",type:"route",path:"/updates"},{id:"copy-open-dashboard",label:"Open dashboard from terminal",description:"Re-open config dashboard anytime from CLI.",type:"command",command:"ccs config"}],routes:[{label:"Updates Inbox",path:"/updates"}],commands:["ccs config"]}],EM=[{id:"claude-target",name:"Claude Code",scope:"target",status:"stable",summary:"Default runtime target for all CCS profile types.",pillars:{baseUrl:"From profile settings (ANTHROPIC_BASE_URL)",auth:"From profile settings (ANTHROPIC_AUTH_TOKEN)",model:"From profile settings (ANTHROPIC_MODEL)"},routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccs",'ccs glm "your prompt"']},{id:"droid-target",name:"Factory Droid",scope:"target",status:"new",summary:"First-class target for API Profiles and CLIProxy variants.",pillars:{baseUrl:"From profile or variant settings",auth:"From profile or variant settings",model:"From profile or variant settings"},routes:[{label:"API Profiles",path:"/providers"},{label:"CLIProxy",path:"/cliproxy"}],commands:["ccsd glm","ccs km --target droid","ccs codex --target droid"],notes:"Use ccsd alias for automatic Droid target selection."},{id:"codex-cliproxy",name:"Codex via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed provider with configurable variant model and target.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:["ccs codex","ccs cliproxy create mycodex --provider codex"]},{id:"gemini-cliproxy",name:"Gemini via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed Gemini provider with multi-account management.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:["ccs gemini","ccs cliproxy create mygem --provider gemini"]},{id:"agy-cliproxy",name:"Antigravity via CLIProxy",scope:"cliproxy",status:"stable",summary:"OAuth-backed Antigravity provider with variant target controls.",pillars:{baseUrl:"Managed by CLIProxy backend",auth:"OAuth account via CLIProxy auth flow",model:"Selectable per provider or variant"},routes:[{label:"CLIProxy",path:"/cliproxy"},{label:"Control Panel",path:"/cliproxy/control-panel"}],commands:["ccs agy","ccs cliproxy create myagy --provider agy --target droid"]},{id:"custom-api-profiles",name:"Custom API Profiles",scope:"api-profiles",status:"stable",summary:"Any Anthropic-compatible endpoint with per-profile target and model mapping.",pillars:{baseUrl:"User-defined endpoint",auth:"User-defined token/key",model:"User-defined model identifier"},routes:[{label:"API Profiles",path:"/providers"}],commands:["ccs api create myprofile",'ccs myprofile "your prompt"']},{id:"opencode-websearch",name:"OpenCode WebSearch",scope:"websearch",status:"stable",summary:"WebSearch provider surfaced in Settings for third-party profile workflows.",pillars:{baseUrl:"Managed by OpenCode CLI integration",auth:"Provider-specific (managed externally)",model:"Configurable in WebSearch settings"},routes:[{label:"Settings",path:"/settings"}],commands:["ccs config",'ccs codex "your prompt"'],notes:"Enable OpenCode in Settings > WebSearch to activate fallback search."}],OM=new Map(EM.map(n=>[n.id,n]));function eE(n){return n.entryIds.map(a=>OM.get(a)).filter(a=>!!a)}function tE(n){const a=new Date(`${n}T00:00:00Z`);return Number.isNaN(a.getTime())?n:new Intl.DateTimeFormat(void 0,{year:"numeric",month:"short",day:"numeric",timeZone:"UTC"}).format(a)}function RM(){const{t:n}=_t(),[a,s]=S.useState(""),[l,u]=S.useState(""),[f,h]=S.useState(null),[m,p]=S.useState(!1),{login:y,authRequired:C,isAuthenticated:x}=Ud(),b=Md(),N=gr().state?.from?.pathname||"/";if(S.useEffect(()=>{(x||!C)&&b(N,{replace:!0})},[x,C,b,N]),x||!C)return null;const M=async E=>{E.preventDefault(),h(null),p(!0);try{await y(a,l),b(N,{replace:!0})}catch(T){h(T instanceof Error?T.message:n("auth.loginFailed"))}finally{p(!1)}};return r.jsx("div",{className:"flex min-h-screen items-center justify-center bg-background p-4",children:r.jsxs(Mj,{className:"w-full max-w-sm",children:[r.jsxs(Dj,{className:"space-y-1 text-center",children:[r.jsx("div",{className:"mx-auto mb-2 flex h-12 w-12 items-center justify-center rounded-full bg-primary/10",children:r.jsx(aC,{className:"h-6 w-6 text-primary"})}),r.jsx(Ej,{className:"text-2xl",children:n("auth.dashboardTitle")}),r.jsx(Oj,{children:n("auth.loginDescription")})]}),r.jsx(Rj,{children:r.jsxs("form",{onSubmit:M,className:"space-y-4",children:[f&&r.jsxs(lf,{variant:"destructive",children:[r.jsx(Ld,{className:"h-4 w-4"}),r.jsx(rf,{children:f})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx(ln,{htmlFor:"username",children:n("auth.username")}),r.jsx(Un,{id:"username",type:"text",value:a,onChange:E=>s(E.target.value),placeholder:n("auth.usernamePlaceholder"),autoComplete:"username",disabled:m,required:!0})]}),r.jsxs("div",{className:"space-y-2",children:[r.jsx(ln,{htmlFor:"password",children:n("auth.password")}),r.jsx(Un,{id:"password",type:"password",value:l,onChange:E=>u(E.target.value),placeholder:n("auth.passwordPlaceholder"),autoComplete:"current-password",disabled:m,required:!0})]}),r.jsx(ut,{type:"submit",className:"w-full",disabled:m,children:m?r.jsxs(r.Fragment,{children:[r.jsx(Dn,{className:"mr-2 h-4 w-4 animate-spin"}),n("auth.signingIn")]}):n("auth.signIn")})]})})]})})}const LM=S.lazy(()=>gt(()=>import("./index-vh-9Yvr6.js"),__vite__mapDeps([18,1,2,4,5,7,19,6,8,9])).then(n=>({default:n.AnalyticsPage}))),PM=S.lazy(()=>gt(()=>import("./api-DjGF8-45.js"),__vite__mapDeps([20,1,2,5,21,15,6,4,22,7,8,9])).then(n=>({default:n.ApiPage}))),_M=S.lazy(()=>gt(()=>import("./cliproxy-CvT_CrEG.js"),__vite__mapDeps([23,1,2,5,13,6,4,14,15,24,21,22,3,7,8,9])).then(n=>({default:n.CliproxyPage}))),zM=S.lazy(()=>gt(()=>import("./cliproxy-control-panel-DwnkIgNd.js"),__vite__mapDeps([25,1,2,5,13,4,6,7,8,9])).then(n=>({default:n.CliproxyControlPanelPage}))),UM=S.lazy(()=>gt(()=>import("./copilot-4Z8LP3vC.js"),__vite__mapDeps([26,1,2,5,21,15,4,22,3,6,7,8,9])).then(n=>({default:n.CopilotPage}))),IM=S.lazy(()=>gt(()=>import("./cursor-DGcuUa4B.js"),__vite__mapDeps([27,1,2,6,5,13,3,22,4,7,8,9])).then(n=>({default:n.CursorPage}))),HM=S.lazy(()=>gt(()=>import("./droid-C5Rebf4T.js"),__vite__mapDeps([28,1,2,6,5,4,22,7,8,9])).then(n=>({default:n.DroidPage}))),BM=S.lazy(()=>gt(()=>import("./accounts-C461-bYH.js"),__vite__mapDeps([29,1,2,5,15,6,4,24,7,8,9])).then(n=>({default:n.AccountsPage}))),qM=S.lazy(()=>gt(()=>Promise.resolve().then(()=>Zj),void 0).then(n=>({default:n.SettingsPage}))),KM=S.lazy(()=>gt(()=>import("./health-B82MeRXO.js"),__vite__mapDeps([30,1,2,5,6,4,7,8,9])).then(n=>({default:n.HealthPage}))),GM=S.lazy(()=>gt(()=>import("./shared-bTrmCnMf.js"),__vite__mapDeps([31,1,2,4,5,6,7,8,9])).then(n=>({default:n.SharedPage}))),YM=S.lazy(()=>gt(()=>import("./updates-CIkkbMYB.js"),__vite__mapDeps([32,1,2,4,5,6,7,8,9])).then(n=>({default:n.UpdatesPage})));function Cn(){return r.jsx("div",{className:"flex h-64 items-center justify-center",children:r.jsx(Dn,{className:"h-8 w-8 animate-spin text-muted-foreground"})})}function VM(){return r.jsx(NS,{client:XC,children:r.jsx(YN,{defaultTheme:"system",storageKey:"vite-ui-theme",children:r.jsx(VN,{children:r.jsx(XN,{children:r.jsxs(bS,{children:[r.jsxs(SS,{children:[r.jsx(Pt,{path:"/login",element:r.jsx(RM,{})}),r.jsx(Pt,{element:r.jsx(ZN,{}),children:r.jsxs(Pt,{element:r.jsx($1,{}),children:[r.jsx(Pt,{path:"/",element:r.jsx(FA,{})}),r.jsx(Pt,{path:"/analytics",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(LM,{})})}),r.jsx(Pt,{path:"/updates",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(YM,{})})}),r.jsx(Pt,{path:"/providers",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(PM,{})})}),r.jsx(Pt,{path:"/cliproxy",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(_M,{})})}),r.jsx(Pt,{path:"/cliproxy/control-panel",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(zM,{})})}),r.jsx(Pt,{path:"/copilot",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(UM,{})})}),r.jsx(Pt,{path:"/cursor",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(IM,{})})}),r.jsx(Pt,{path:"/droid",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(HM,{})})}),r.jsx(Pt,{path:"/accounts",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(BM,{})})}),r.jsx(Pt,{path:"/settings",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(qM,{})})}),r.jsx(Pt,{path:"/health",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(KM,{})})}),r.jsx(Pt,{path:"/shared",element:r.jsx(S.Suspense,{fallback:r.jsx(Cn,{}),children:r.jsx(GM,{})})})]})})]}),r.jsx(wS,{position:"top-right"})]})})})})})}const Av=document.getElementById("root");if(!Av)throw new Error("Root element not found. Failed to mount React application.");QC.createRoot(Av).render(r.jsx(S.StrictMode,{children:r.jsx(VM,{})}));export{qD as $,ZA as A,Qa as B,Mj as C,ij as D,_D as E,UD as F,$A as G,nj as H,Un as I,oj as J,zD as K,ln as L,Zw as M,Jw as N,e1 as O,ux as P,$x as Q,cf as R,qe as S,$a as T,mr as U,kd as V,ct as W,BD as X,Qe as Y,HD as Z,Oj as _,_t as a,XD as a$,KD as a0,Zx as a1,GD as a2,nD as a3,Qw as a4,sD as a5,hD as a6,mD as a7,Kd as a8,Gd as a9,Ci as aA,P1 as aB,_1 as aC,z1 as aD,U1 as aE,hx as aF,Ak as aG,Nx as aH,gD as aI,yD as aJ,xD as aK,vD as aL,FD as aM,oD as aN,Xw as aO,rD as aP,cD as aQ,$w as aR,Ww as aS,uD as aT,dD as aU,fD as aV,lD as aW,Xd as aX,Ns as aY,aD as aZ,iD as a_,Yd as aa,Vd as ab,Fd as ac,YD as ad,Pj as ae,VD as af,Za as ag,MD as ah,_j as ai,ED as aj,pD as ak,DD as al,OD as am,Kg as an,RD as ao,H1 as ap,x1 as aq,jD as ar,A1 as as,TD as at,Nk as au,gw as av,yw as aw,Tr as ax,jr as ay,Mr as az,Rj as b,av as b0,of as b1,Ls as b2,sf as b3,GA as b4,LD as b5,PD as b6,lf as b7,Yx as b8,rf as b9,tE as ba,ZD as bb,JD as bc,eE as bd,ov as be,Fj as bf,$j as bg,ND as bh,bD as bi,ax as bj,DN as bk,TN as bl,yd as bm,wi as bn,bN as bo,CN as bp,AN as bq,ON as br,wD as bs,SD as bt,CD as bu,AD as bv,kD as bw,ar as bx,q as c,ut as d,QD as e,$D as f,Jj as g,MM as h,tD as i,Dj as j,Ej as k,dk as l,fk as m,So as n,WD as o,Wa as p,Xa as q,xx as r,Zd as s,vx as t,_d as u,Jd as v,dr as w,ny as x,rj as y,ID as z};
|