PageSourceSearch

https://hiyoung.ai/assets/AccountsView-CuG0Wee9.js

js hiyoung.ai collected 2026-10-05 14:36:12 UTC 669,841 bytes, 28 lines download raw bytes

1import{r as p,q as ya,a as ms,t as rn,d as ut,z as r,B as e,D as v,A as E,F as ve,u as t,C as n,G as a,H as Ae,L as Ue,K as oe,c as w,w as pt,k as U,R as V,W as re,n as On,a5 as va,J as Me,V as Bt,a3 as ka,Y as mn,$ as bt,o as Js,U as $s,E as ds,P as Yn,a0 as xn,Q as Ys,_ as Dn}from"./vendor-vue-CNokyTVe.js";import{k as ye,a as pa,_ as ae,u as gn,E as Ln,a3 as Vn,g as wa,j as oo,av as Ls,aw as Xn,ax as Zn,y as Zs,ac as jo,ay as er,az as tr,at as ln,au as ar,w as _n,q as or,aA as sr,aB as Vs,F as nr,D as rr}from"./index-Bzpify6I.js";import{g as lr,s as ir}from"./usePersistedPageSize-x0WpaIWh.js";import{u as ur,b as un}from"./vendor-ui-cXGMPlE0.js";import{_ as zn,u as dr,p as cr,b as pr,a as mr}from"./proxyExpiry-UVRo-VKo.js";import{u as gr}from"./useTableSelection-6A4hJL3S.js";import{u as vr,_ as yr,i as br,a as hr,s as fr}from"./TotpStepUpDialog.vue_vue_type_script_setup_true_lang-Cx8tDhUH.js";import{_ as xr}from"./AppLayout.vue_vue_type_script_setup_true_lang-DB33jg2n.js";import{T as _r}from"./TablePageLayout-BpLnlEG2.js";import{D as kr}from"./DataTable-QeaeoXSl.js";import{_ as fo}from"./HelpTooltip.vue_vue_type_script_setup_true_lang-Bt5WJPlp.js";import{P as wr}from"./Pagination-BLWEUE0g.js";import{_ as so}from"./ConfirmDialog.vue_vue_type_script_setup_true_lang-DfqQ3sva.js";import{g as Bo,_ as Co,c as Nn,b as ga,i as Bs,a as kn,f as en,d as $r,s as Cr}from"./ModelWhitelistSelector.vue_vue_type_script_setup_true_lang-Ds_C2Khc.js";import{a as Cs,b as To}from"./apiError-BcAuv_LF.js";import{u as dt}from"./vendor-i18n-CJe1LeE7.js";import{S as Zt}from"./Select-CRadB1U5.js";import{_ as wn}from"./PlatformIcon.vue_vue_type_script_setup_true_lang-BQDLGfe7.js";import{P as vn}from"./ProxySelector-Nl2szDA6.js";import{_ as yn}from"./GroupSelector.vue_vue_type_script_setup_true_lang-B9axSuwE.js";import{_ as ho}from"./Toggle.vue_vue_type_script_setup_true_lang-OVibfImV.js";import{c as xo}from"./stableObjectKey-DullU5Fx.js";import{u as bn}from"./useClipboard-KB6Zj9c3.js";import{L as Tr}from"./LoadingSpinner-CROWDdDr.js";import{_ as Sr}from"./SearchInput.vue_vue_type_script_setup_true_lang-C5svD7Wk.js";import{C as Mr,b as Er,L as Ur,P as Ar,c as Rr,e as Pr,p as Ir,a as qr,i as Or,d as Dr}from"./vendor-chart-CN2sanci.js";import{a as Lr}from"./ModelDistributionChart.vue_vue_type_script_setup_true_lang-yhLkIlvx.js";import{_ as $n}from"./EndpointDistributionChart.vue_vue_type_script_setup_true_lang-BjYiwPMB.js";import{_ as Cn}from"./GroupBadge.vue_vue_type_script_setup_true_lang-DW1Kstr_.js";import"./vendor-misc-CSmvsGIg.js";import"./totp-Dn5q1v3q.js";import"./AppHeader.vue_vue_type_style_index_0_scoped_e9be4349_lang-BfYnDr_J.js";import"./LocaleSwitcher-ynQpDOt3.js";/* empty css                                                                       */import"./peak-rate-qZGUWdry.js";function Vr(i){const{fetchFn:m,initialParams:o,pageSize:c,debounceMs:s=300}=i,b=p([]),$=p(!1),P=ya({...o||{}}),S=ya({page:1,page_size:c??lr(),total:0,pages:0});let M=null;const L=I=>(I==null?void 0:I.name)==="AbortError"||(I==null?void 0:I.code)==="ERR_CANCELED"||(I==null?void 0:I.name)==="CanceledError",F=async()=>{M&&M.abort();const I=new AbortController;M=I,$.value=!0;try{const q=await m(S.page,S.page_size,rn(P),{signal:I.signal});b.value=q.items||[],S.total=q.total||0,S.pages=q.pages||0}catch(q){if(!L(q))throw console.error("Table load error:",q),q}finally{M===I&&($.value=!1)}},R=()=>(S.page=1,F()),_=ur(R,s),y=I=>{const q=Math.max(1,Math.min(I,S.pages||1));S.page=q,F()},f=I=>{S.page_size=I,S.page=1,ir(I),F()};return ms(()=>{M==null||M.abort()}),{items:b,loading:$,params:P,pagination:S,load:F,reload:R,debouncedReload:_,handlePageChange:y,handlePageSizeChange:f}}const dn="fixed",tn="percentage",jn=[{label:"Common",options:[{value:"us-central1",label:"us-central1 (Iowa)"},{value:"global",label:"global"},{value:"us",label:"us"},{value:"eu",label:"eu"}]},{label:"United States",options:[{value:"us-east1",label:"us-east1 (South Carolina)"},{value:"us-east4",label:"us-east4 (Northern Virginia)"},{value:"us-east5",label:"us-east5 (Columbus)"},{value:"us-south1",label:"us-south1 (Dallas)"},{value:"us-west1",label:"us-west1 (Oregon)"},{value:"us-west4",label:"us-west4 (Las Vegas)"}]},{label:"Europe",options:[{value:"europe-west1",label:"europe-west1 (Belgium)"},{value:"europe-west2",label:"europe-west2 (London)"},{value:"europe-west3",label:"europe-west3 (Frankfurt)"},{value:"europe-west4",label:"europe-west4 (Netherlands)"},{value:"europe-west6",label:"europe-west6 (Zurich)"},{value:"europe-west8",label:"europe-west8 (Milan)"},{value:"europe-west9",label:"europe-west9 (Paris)"}]},{label:"Asia Pacific",options:[{value:"asia-east1",label:"asia-east1 (Taiwan)"},{value:"asia-east2",label:"asia-east2 (Hong Kong)"},{value:"asia-northeast1",label:"asia-northeast1 (Tokyo)"},{value:"asia-northeast3",label:"asia-northeast3 (Seoul)"},{value:"asia-south1",label:"asia-south1 (Mumbai)"},{value:"asia-southeast1",label:"asia-southeast1 (Singapore)"},{value:"australia-southeast1",label:"australia-southeast1 (Sydney)"}]}],an=["daily","weekly","total"];function Bn(){const i=p(!1),m=ya({daily:{enabled:null,threshold:null,thresholdType:null},weekly:{enabled:null,threshold:null,thresholdType:null},total:{enabled:null,threshold:null,thresholdType:null}});function o(){ye.settings.getSettings().then($=>{i.value=$.account_quota_notify_enabled===!0}).catch(()=>{i.value=!1})}function c($){for(const P of an)m[P].enabled=($==null?void 0:$[`quota_notify_${P}_enabled`])??null,m[P].threshold=($==null?void 0:$[`quota_notify_${P}_threshold`])??null,m[P].thresholdType=($==null?void 0:$[`quota_notify_${P}_threshold_type`])??null}function s($,P){for(const S of an){const M=m[S];M.enabled?($[`quota_notify_${S}_enabled`]=!0,M.threshold!=null?$[`quota_notify_${S}_threshold`]=M.threshold:P==="update"&&delete $[`quota_notify_${S}_threshold`],$[`quota_notify_${S}_threshold_type`]=M.thresholdType||dn):P==="update"&&(delete $[`quota_notify_${S}_enabled`],delete $[`quota_notify_${S}_threshold`],delete $[`quota_notify_${S}_threshold_type`])}}function b(){for(const $ of an)m[$].enabled=null,m[$].threshold=null,m[$].thresholdType=null}return{globalEnabled:i,state:m,loadGlobalState:o,loadFromExtra:c,writeToExtra:s,reset:b}}function Fn(){const i=pa(),m=p(""),o=p(""),c=p(""),s=p(""),b=p(!1),$=p("");return{authUrl:m,authCode:o,sessionId:c,sessionKey:s,loading:b,error:$,resetState:()=>{m.value="",o.value="",c.value="",s.value="",b.value=!1,$.value=""},generateAuthUrl:async(_,y)=>{var f,I;b.value=!0,m.value="",c.value="",$.value="";try{const q=y?{proxy_id:y}:{},D=_==="oauth"?"/admin/accounts/generate-auth-url":"/admin/accounts/generate-setup-token-url",z=await ye.accounts.generateAuthUrl(D,q);return m.value=z.auth_url,c.value=z.session_id,!0}catch(q){return $.value=((I=(f=q.response)==null?void 0:f.data)==null?void 0:I.detail)||"Failed to generate auth URL",i.showError($.value),!1}finally{b.value=!1}}
1,exchangeAuthCode:async(_,y)=>{var f,I;if(!o.value.trim()||!c.value)return $.value="Missing auth code or session ID",null;b.value=!0,$.value="";try{const q=y?{proxy_id:y}:{},D=_==="oauth"?"/admin/accounts/exchange-code":"/admin/accounts/exchange-setup-token-code";return await ye.accounts.exchangeCode(D,{session_id:c.value,code:o.value.trim(),...q})}catch(q){return $.value=((I=(f=q.response)==null?void 0:f.data)==null?void 0:I.detail)||"Failed to exchange auth code",i.showError($.value),null}finally{b.value=!1}},cookieAuth:async(_,y,f)=>{var I,q;if(!y.trim())return $.value="Please enter sessionKey",null;b.value=!0,$.value="";try{const D=f?{proxy_id:f}:{},z=_==="oauth"?"/admin/accounts/cookie-auth":"/admin/accounts/setup-token-cookie-auth";return await ye.accounts.exchangeCode(z,{session_id:"",code:y.trim(),...D})}catch(D){return $.value=((q=(I=D.response)==null?void 0:I.data)==null?void 0:q.detail)||"Cookie authorization failed",null}finally{b.value=!1}},parseSessionKeys:_=>_.split(`
2`).map(y=>y.trim()).filter(y=>y),buildExtraInfo:_=>{const y={};return _.org_uuid&&(y.org_uuid=_.org_uuid),_.account_uuid&&(y.account_uuid=_.account_uuid),_.email_address&&(y.email_address=_.email_address),Object.keys(y).length>0?y:void 0}}}function Hn(){const i=pa(),{t:m}=dt(),o="/admin/openai",c=p(""),s=p(""),b=p(""),$=p(!1),P=p("");return{authUrl:c,sessionId:s,oauthState:b,loading:$,error:P,resetState:()=>{c.value="",s.value="",b.value="",$.value=!1,P.value=""},generateAuthUrl:async(y,f)=>{$.value=!0,c.value="",s.value="",b.value="",P.value="";try{const I={};y&&(I.proxy_id=y),f&&(I.redirect_uri=f);const q=await ye.accounts.generateAuthUrl(`${o}/generate-auth-url`,I);c.value=q.auth_url,s.value=q.session_id;try{const D=new URL(q.auth_url);b.value=D.searchParams.get("state")||""}catch{b.value=""}return!0}catch(I){return P.value=To(I,m("admin.accounts.oauth.openai.failedToGenerateUrl")),i.showError(P.value),!1}finally{$.value=!1}},exchangeAuthCode:async(y,f,I,q)=>{if(!y.trim()||!f||!I.trim())return P.value="Missing auth code, session ID, or state",null;$.value=!0,P.value="";try{const D={session_id:f,code:y.trim(),state:I.trim()};return q&&(D.proxy_id=q),await ye.accounts.exchangeCode(`${o}/exchange-code`,D)}catch(D){return P.value=Cs(D,m,"admin.accounts.oauth.openai.errors",m("admin.accounts.oauth.openai.failedToExchangeCode")),i.showError(P.value),null}finally{$.value=!1}},validateRefreshToken:async(y,f,I)=>{if(!y.trim())return P.value="Missing refresh token",null;$.value=!0,P.value="";try{return await ye.accounts.refreshOpenAIToken(y.trim(),f,`${o}/refresh-token`,I)}catch(q){return P.value=Cs(q,m,"admin.accounts.oauth.openai.errors",m("admin.accounts.oauth.openai.failedToValidateRT")),i.showError(P.value),null}finally{$.value=!1}},buildCredentials:y=>{const f={access_token:y.access_token,expires_at:y.expires_at};return y.refresh_token&&(f.refresh_token=y.refresh_token),y.id_token&&(f.id_token=y.id_token),y.email&&(f.email=y.email),y.chatgpt_account_id&&(f.chatgpt_account_id=y.chatgpt_account_id),y.chatgpt_user_id&&(f.chatgpt_user_id=y.chatgpt_user_id
2),y.organization_id&&(f.organization_id=y.organization_id),y.plan_type&&(f.plan_type=y.plan_type),y.subscription_expires_at&&(f.subscription_expires_at=y.subscription_expires_at),y.client_id&&(f.client_id=y.client_id),f},buildExtraInfo:y=>{const f={};return y.email&&(f.email=y.email),y.name&&(f.name=y.name),y.privacy_mode&&(f.privacy_mode=y.privacy_mode),Object.keys(f).length>0?f:void 0}}}function Wn(){const i=pa(),{t:m}=dt(),o=p(""),c=p(""),s=p(""),b=p(!1),$=p("");return{authUrl:o,sessionId:c,state:s,loading:b,error:$,resetState:()=>{o.value="",c.value="",s.value="",b.value=!1,$.value=""},generateAuthUrl:async(_,y,f,I)=>{var q,D;b.value=!0,o.value="",c.value="",s.value="",$.value="";try{const z={};_&&(z.proxy_id=_);const ee=y==null?void 0:y.trim();ee&&(z.project_id=ee),f&&(z.oauth_type=f);const ke=I==null?void 0:I.trim();ke&&(z.tier_id=ke);const W=await ye.gemini.generateAuthUrl(z);return o.value=W.auth_url,c.value=W.session_id,s.value=W.state,!0}catch(z){return $.value=((D=(q=z.response)==null?void 0:q.data)==null?void 0:D.detail)||m("admin.accounts.oauth.gemini.failedToGenerateUrl"),i.showError($.value),!1}finally{b.value=!1}},exchangeAuthCode:async _=>{var f,I,q,D;const y=(f=_.code)==null?void 0:f.trim();if(!y||!_.sessionId||!_.state)return $.value=m("admin.accounts.oauth.gemini.missingExchangeParams"),null;b.value=!0,$.value="";try{const z={session_id:_.sessionId,state:_.state,code:y};_.proxyId&&(z.proxy_id=_.proxyId),_.oauthType&&(z.oauth_type=_.oauthType);const ee=(I=_.tierId)==null?void 0:I.trim();return ee&&(z.tier_id=ee),await ye.gemini.exchangeCode(z)}catch(z){const ee=z.message||((D=(q=z.response)==null?void 0:q.data)==null?void 0:D.message)||"";return ee.includes("missing project_id")?$.value=m("admin.accounts.oauth.gemini.missingProjectId"):$.value=ee||m("admin.accounts.oauth.gemini.failedToExchangeCode"),i.showError($.value),null}finally{b.value=!1}},buildCredentials:_=>{let y;return typeof _.expires_at=="number"&&Number.isFinite(_.expires_at)?y=Math.floor(_.expires_at).toString():typeof _.expires_at=="string"&&_.expires_at.trim()&&(y=_.expires_at.trim()),{access_token:_.access_token,refresh_token:_.refresh_token,token_type:_.token_type,expires_at:y,scope:_.scope,project_id:_.project_id,oauth_type:_.oauth_type,tier_id:_.tier_id}},buildExtraInfo:_=>{if(!(!_.extra||typeof _.extra!="object"))return _.extra},getCapabilities:async()=>{try{return await ye.gemini.getCapabilities()}catch{return null}}}}function Gn(){const i=pa(),{t:m}=dt(),o=p(""),c=p(""),s=p(""),b=p(!1),$=p("");return{authUrl:o,sessionId:c,state:s,loading:b,error:$,resetState:()=>{o.value="",c.value="",s.value="",b.value=!1,$.value=""},generateAuthUrl:async R=>{var _,y;b.value=!0,o.value="",c.value="",s.value="",$.value="";try{const f={};R&&(f.proxy_id=R);const I=await ye.antigravity.generateAuthUrl(f);return o.value=I.auth_url,c.value=I.session_id,s.value=I.state,!0}catch(f){return $.value=((y=(_=f.response)==null?void 0:_.data)==null?void 0:y.detail)||m("admin.accounts.oauth.antigravity.failedToGenerateUrl"),i.showError($.value),!1}finally{b.value=!1}},exchangeAuthCode:async R=>{var y,f,I;const _=(y=R.code)==null?void 0:y.trim();if(!_||!R.sessionId||!R.state)return $.value=m("admin.accounts.oauth.antigravity.missingExchangeParams"),null;b.value=!0,$.value="";try{const q={session_id:R.sessionId,state:R.state,code:_};return R.proxyId&&(q.proxy_id=R.proxyId),await ye.antigravity.exchangeCode(q)}catch(q){return $.value=((I=(f=q.response)==null?void 0:f.data)==null?void 0:I.detail)||m("admin.accounts.oauth.antigravity.failedToExchangeCode"),i.showError($.value),null}finally{b.value=!1}},validateRefreshToken:async(R,_)=>{var y,f;if(!R.trim())return $.value=m("admin.accounts.oauth.antigravity.pleaseEnterRefreshToken"),null;b.value=!0,$.value="";try{return await ye.antigravity.refreshAntigravityToken(R.trim(),_)}catch(I){return $.value=((f=(y=I.response)==null?void 0:y.data)==null?void 0:f.detail)||m("admin.accounts.oauth.antigravity.failedToValidateRT"),null}finally{b.value=!1}},buildCredentials:(R,_)=>{var I;let y;typeof R.expires_at=="number"&&Number.isFinite(R.expires_at)?y=Math.floor(R.expires_at).toString():typeof R.expires_at=="string"&&R.expires_at.trim()&&(y=R.expires_at.trim());const f=(I=R.refresh_token)!=null&&I.trim()?R.refresh_token:_;return{access_token:R.access_token,refresh_token:f,token_type:R.token_type,expires_at:y,project_id:R.project_id,email:R.email}}}}function Kn(){const i=pa(),{t:m}=dt(),o=p(""),c=p(""),s=p(""),b=p(!1),$=p("");return{authUrl:o,sessionId:c,state:s,loading:b,error:$,resetState:()=>{o.value="",c.value="",s.value="",b.value=!1,$.value=""},generateAuthUrl:async _=>{b.value=!0,o.value="",c.value="",s.value="",$.value="";try{const y={};_&&(y.proxy_id=_);const f=await ye.grok.generateAuthUrl(y);return o.value=f.auth_url,c.value=f.session_id,s.value=f.state,!0}catch(y){return $.value=To(y,m("admin.accounts.oauth.grok.failedToGenerateUrl")),i.showError($.value),!1}finally{b.value=!1}}
2,exchangeAuthCode:async _=>{var f;const y=(f=_.code)==null?void 0:f.trim();if(!y||!_.sessionId||!_.state)return $.value=m("admin.accounts.oauth.grok.missingExchangeParams"),null;b.value=!0,$.value="";try{const I={session_id:_.sessionId,state:_.state,code:y};return _.proxyId&&(I.proxy_id=_.proxyId),await ye.grok.exchangeCode(I)}catch(I){return $.value=Cs(I,m,"admin.accounts.oauth.grok.errors",m("admin.accounts.oauth.grok.failedToExchangeCode")),i.showError($.value),null}finally{b.value=!1}},validateRefreshToken:async(_,y)=>{if(!_.trim())return $.value=m("admin.accounts.oauth.grok.pleaseEnterRefreshToken"),null;b.value=!0,$.value="";try{return await ye.grok.refreshGrokToken(_.trim(),y)}catch(f){return $.value=Cs(f,m,"admin.accounts.oauth.grok.errors",m("admin.accounts.oauth.grok.failedToValidateRT")),null}finally{b.value=!1}},buildCredentials:_=>{const y={access_token:_.access_token,token_type:_.token_type,expires_at:_.expires_at,client_id:_.client_id,scope:_.scope,email:_.email,sub:_.sub,team_id:_.team_id,subscription_tier:_.subscription_tier,entitlement_status:_.entitlement_status,base_url:"https://cli-chat-proxy.grok.com/v1"};return _.refresh_token&&(y.refresh_token=_.refresh_token),_.id_token&&(y.id_token=_.id_token),Object.fromEntries(Object.entries(y).filter(([,f])=>f!==void 0&&f!==""))},buildExtraInfo:_=>{const y={};return _.email&&(y.email=_.email),_.subscription_tier&&(y.subscription_tier=_.subscription_tier),_.entitlement_status&&(y.entitlement_status=_.entitlement_status),y}}}const zr={class:"flex items-center gap-1.5"},Nr=["value","max","step"],jr=["value"],Br=["value"],Fr=["value"],Hr=ut({__name:"QuotaNotifyToggle",props:{enabled:{type:[Boolean,null]},threshold:{},thresholdType:{}},emits:["update:enabled","update:threshold","update:thresholdType"],setup(i,{emit:m}){const o=m;return(c,s)=>(n(),r("div",zr,[e("button",{type:"button",onClick:s[0]||(s[0]=b=>o("update:enabled",!i.enabled)),class:E(["relative inline-flex h-5 w-9 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none",i.enabled?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-4 w-4 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",i.enabled?"translate-x-4":"translate-x-0"])},null,2)],2),i.enabled?(n(),r(ve,{key:0},[e("input",{value:i.threshold,onInput:s[1]||(s[1]=b=>o("update:threshold",parseFloat(b.target.value)||null)),type:"number",min:"0",max:i.thresholdType===t(tn)?100:void 0,step:i.thresholdType===t(tn)?1:.01,class:"input py-1 text-sm flex-1 min-w-0"},null,40,Nr),e("select",{value:i.thresholdType||t(dn),onChange:s[2]||(s[2]=b=>o("update:thresholdType",b.target.value)),class:"input py-1 text-xs w-[4.5rem] flex-shrink-0 text-center"},[e("option",{value:t(dn)},"$",8,Br),e("option",{value:t(tn)},"%",8,Fr)],40,jr)],64)):v("",!0)]))}}),Wr={key:0,class:"flex items-center gap-2 mb-1"},Gr={class:"text-xs font-medium text-gray-700 dark:text-gray-300 flex-1 min-w-0"},Kr={key:0,class:"text-xs font-medium text-gray-700 dark:text-gray-300 flex-1 min-w-0"},Qr={key:1,class:"text-xs font-medium text-gray-700 dark:text-gray-300 mb-1 block"},Jr={class:"flex items-center gap-2"},Yr=["value","placeholder"],Xr={key:2,class:"mt-1 flex items-center gap-2 flex-wrap"},Zr={class:"text-xs text-gray-500 dark:text-gray-400 whitespace-nowrap"},el=["value"],tl={value:"rolling"},al={value:"fixed"},ol={class:"text-xs text-gray-500 dark:text-gray-400 whitespace-nowrap"},sl=["value"],nl=["value"],rl={class:"text-xs text-gray-500 dark:text-gray-400 whitespace-nowrap"},ll=["value"],il=["value"],ul=["value"],dl=["value"],cl={class:"text-[11px] text-gray-500 dark:text-gray-400"},pl={key:3,class:"input-hint mb-0 text-[11px]"},on=ut({__name:"QuotaDimensionRow",props:{dim:{},label:{},limit:{},quotaNotifyGlobalEnabled:{type:Boolean},notifyEnabled:{type:[Boolean,null]},notifyThreshold:{},notifyThresholdType:{},resetMode:{},resetHour:{},resetDay:{},resetTimezone:{},hintRolling:{},hintFixed:{},hourOptions:{},dayOptions:{},timezoneOptions:{}},emits:["update:limit","update:notifyEnabled","update:notifyThreshold","update:notifyThresholdType","update:resetMode","update:resetHour","update:resetDay","update:resetTimezone"],setup(i,{emit:m}){const{t:o}=dt(),c=i,s=m,b=c.dim!=="total",$=M=>{const L=M.target.valueAsNumber;s("update:limit",Number.isNaN(L)?null:L)},P=M=>{const L=M.target.value;s("update:resetMode",L),L==="fixed"&&(c.resetHour==null&&s("update:resetHour",0),c.dim==="weekly"&&c.resetDay==null&&s("update:resetDay",1),c.resetTimezone||s("update:resetTimezone","UTC"))};function S(M){try{const R=new Intl.DateTimeFormat("en-US",{timeZone:M,timeZoneName:"shortOffset"}).formatToParts(new Date).find(_=>_.type==="timeZoneName");return R?R.value==="GMT"?"GMT+0":R.value:""}catch{return""}}return(M,L)=>(n(),r("div",null,[i.quotaNotifyGlobalEnabled?(n(),r("div",Wr,[e("span",Gr,a(i.label),1),i.limit&&i.limit>0?(n(),r("span",Kr,a(t(o)("admin.accounts.quotaNotify.alert")),1)):v("",!0)])):(n(),r("label",Qr,a(i.label),1)),e("div",Jr,[e("div",{class:E(["relative",i.quotaNotifyGlobalEnabled?"flex-1 min-w-0":"flex-1"])},[L[6]||(L[6]=e("span",{class:"absolute left-2.5 top-1/2 -translate-y-1/2 text-gray-500 dark:text-gray-400 text-sm"},"$",-1)),e("input",{value:i.limit,onInput:$,type:"number",min:"0",step:"0.01",class:"input pl-6 py-1.5 text-sm",placeholder:t(o)("admin.accounts.quotaLimitPlaceholder")},null,40,Yr)],2),i.quotaNotifyGlobalEnabled&&i.limit&&i.limit>0?(n(),Ae(Hr,{key:0,class:"flex-1 min-w-0",enabled:i.notifyEnabled,threshold:i.notifyThreshold,"threshold-type":i.notifyThresholdType,"onUpdate:enabled":L[0]||(L[0]=F=>s("update:notifyEnabled",F)),"onUpdate:threshold":L[1]||(L[1]=F=>s("update:notifyThreshold",F)),"onUpdate:thresholdType":L[2]||(L[2]=F=>s("update:notifyThresholdType",F))},null,8,["enabled","threshold","threshold-type"])):v("",!0)]),b?(n(),r("div",Xr,[e("label",Zr,a(t(o)("admin.accounts.quotaResetMode")),1),e("select",{value:i.resetMode||"rolling",onCh
2ange:P,class:"input py-1 text-xs w-auto"},[e("option",tl,a(t(o)("admin.accounts.quotaResetModeRolling")),1),e("option",al,a(t(o)("admin.accounts.quotaResetModeFixed")),1)],40,el),i.resetMode==="fixed"?(n(),r(ve,{key:0},[i.dim==="weekly"?(n(),r(ve,{key:0},[e("label",ol,a(t(o)("admin.accounts.quotaWeeklyResetDay")),1),e("select",{value:i.resetDay??1,onChange:L[3]||(L[3]=F=>s("update:resetDay",Number(F.target.value))),class:"input py-1 text-xs w-28"},[(n(!0),r(ve,null,Ue(i.dayOptions,F=>(n(),r("option",{key:F.value,value:F.value},a(t(o)("admin.accounts.dayOfWeek."+F.key)),9,nl))),128))],40,sl)],64)):v("",!0),e("label",rl,a(t(o)("admin.accounts.quotaResetHour")),1),e("select",{value:i.resetHour??0,onChange:L[4]||(L[4]=F=>s("update:resetHour",Number(F.target.value))),class:"input py-1 text-xs w-24"},[(n(!0),r(ve,null,Ue(i.hourOptions,F=>(n(),r("option",{key:F,value:F},a(String(F).padStart(2,"0"))+":00",9,il))),128))],40,ll),i.timezoneOptions&&i.timezoneOptions.length>0?(n(),r("select",{key:1,value:i.resetTimezone||"UTC",onChange:L[5]||(L[5]=F=>s("update:resetTimezone",F.target.value)),class:"input py-1 text-xs w-auto"},[(n(!0),r(ve,null,Ue(i.timezoneOptions,F=>(n(),r("option",{key:F,value:F}
2,a(F)+" ("+a(S(F))+")",9,dl))),128))],40,ul)):v("",!0)],64)):v("",!0),e("span",cl,[i.resetMode==="fixed"?(n(),r(ve,{key:0},[oe(a(i.hintFixed),1)],64)):(n(),r(ve,{key:1},[oe(a(i.hintRolling),1)],64))])])):v("",!0),b?v("",!0):(n(),r("p",pl,a(i.hintRolling),1))]))}}),ml={class:"rounded-lg border border-gray-200 dark:border-dark-600"},gl={class:"input-label mb-0 cursor-pointer"},vl={class:"mt-0.5 text-xs text-gray-500 dark:text-gray-400"},yl={key:0,class:"space-y-2 p-4 pt-3"},Fs=ut({__name:"QuotaLimitCard",props:{totalLimit:{},dailyLimit:{},weeklyLimit:{},dailyResetMode:{},dailyResetHour:{},weeklyResetMode:{},weeklyResetDay:{},weeklyResetHour:{},resetTimezone:{},quotaNotifyGlobalEnabled:{type:Boolean,default:!1},quotaNotifyDailyEnabled:{type:[Boolean,null],default:null},quotaNotifyDailyThreshold:{default:null},quotaNotifyDailyThresholdType:{default:null},quotaNotifyWeeklyEnabled:{type:[Boolean,null],default:null},quotaNotifyWeeklyThreshold:{default:null},quotaNotifyWeeklyThresholdType:{default:null},quotaNotifyTotalEnabled:{type:[Boolean,null],default:null},quotaNotifyTotalThreshold:{default:null},quotaNotifyTotalThresholdType:{default:null}},emits:["update:totalLimit","update:dailyLimit","update:weeklyLimit","update:dailyResetMode","update:dailyResetHour","update:weeklyResetMode","update:weeklyResetDay","update:weeklyResetHour","update:resetTimezone","update:quotaNotifyDailyEnabled","update:quotaNotifyDailyThreshold","update:quotaNotifyDailyThresholdType","update:quotaNotifyWeeklyEnabled","update:quotaNotifyWeeklyThreshold","update:quotaNotifyWeeklyThresholdType","update:quotaNotifyTotalEnabled","update:quotaNotifyTotalThreshold","update:quotaNotifyTotalThresholdType"],setup(i,{emit:m}){const{t:o}=dt(),c=i,s=m,b=w(()=>c.totalLimit!=null&&c.totalLimit>0||c.dailyLimit!=null&&c.dailyLimit>0||c.weeklyLimit!=null&&c.weeklyLimit>0),$=p(b.value),P=p(!1);pt(b,_=>{$.value=_}),pt($,_=>{_||(P.value=!1,s("update:totalLimit",null),s("update:dailyLimit",null),s("update:weeklyLimit",null),s("update:dailyResetMode",null),s("update:dailyResetHour",null),s("update:weeklyResetMode",null),s("update:weeklyResetDay",null),s("update:weeklyResetHour",null),s("update:resetTimezone",null))});const S=["UTC","Asia/Shanghai","Asia/Tokyo","Asia/Seoul","Asia/Singapore","Asia/Kolkata","Asia/Dubai","Europe/London","Europe/Paris","Europe/Berlin","Europe/Moscow","America/New_York","America/Chicago","America/Denver","America/Los_Angeles","America/Sao_Paulo","Australia/Sydney","Pacific/Auckland"],M=Array.from({length:24}
2,(_,y)=>y),L=[{value:1,key:"monday"},{value:2,key:"tuesday"},{value:3,key:"wednesday"},{value:4,key:"thursday"},{value:5,key:"friday"},{value:6,key:"saturday"},{value:0,key:"sunday"}],F=w(()=>{var y;const _=((y=L.find(f=>f.value===(c.weeklyResetDay??1)))==null?void 0:y.key)||"monday";return o("admin.accounts.quotaWeeklyLimitHintFixed",{day:o("admin.accounts.dayOfWeek."+_),hour:String(c.weeklyResetHour??0).padStart(2,"0"),timezone:c.resetTimezone||"UTC"})}),R=w(()=>o("admin.accounts.quotaDailyLimitHintFixed",{hour:String(c.dailyResetHour??0).padStart(2,"0"),timezone:c.resetTimezone||"UTC"}));return(_,y)=>(n(),r("div",ml,[e("div",{class:E(["flex items-center justify-between p-4",{"pb-0":$.value&&!P.value}])},[e("div",{class:"flex items-center gap-2 flex-1 cursor-pointer",onClick:y[0]||(y[0]=f=>$.value&&(P.value=!P.value))},[$.value?(n(),r("svg",{key:0,class:E(["h-4 w-4 text-gray-400 transition-transform",{"-rotate-90":P.value}]),viewBox:"0 0 20 20",fill:"currentColor"},[...y[21]||(y[21]=[e("path",{"fill-rule":"evenodd",d:"M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z","clip-rule":"evenodd"},null,-1)])],2)):v("",!0),e("div",null,[e("label",gl,a(t(o)("admin.accounts.quotaLimitToggle")),1),e("p",vl,a(t(o)("admin.accounts.quotaLimitToggleHint")),1)])]),e("button",{type:"button",onClick:y[1]||(y[1]=f=>$.value=!$.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",$.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",$.value?"translate-x-5":"translate-x-0"])},null,2)],2)],2),$.value&&!P.value?(n(),r("div",yl,[U(on,{dim:"daily",label:t(o)("admin.accounts.quotaDailyLimit"),limit:i.dailyLimit,"quota-notify-global-enabled":i.quotaNotifyGlobalEnabled,"notify-enabled":c.quotaNotifyDailyEnabled,"notify-threshold":c.quotaNotifyDailyThreshold,"notify-threshold-type":c.quotaNotifyDailyThresholdType,"reset-mode":i.dailyResetMode,"reset-hour":i.dailyResetHour,"reset-day":null,"reset-timezone":i.resetTimezone,"hint-rolling":t(o)("admin.accounts.quotaDailyLimitHint"),"hint-fixed":R.value,"hour-options":t(M),"day-options":L,"timezone-options":S,"onUpdate:limit":y[2]||(y[2]=f=>s("update:dailyLimit",f)),"onUpdate:notifyEnabled":y[3]||(y[3]=f=>s("update:quotaNotifyDailyEnabled",f)),"onUpdate:notifyThreshold":y[4]||(y[4]=f=>s("update:quotaNotifyDailyThreshold",f)),"onUpdate:notifyThresholdType":y[5]||(y[5]=f=>s("update:quotaNotifyDailyThresholdType",f)),"onUpdate:resetMode":y[6]||(y[6]=f=>s("update:dailyResetMode",f)),"onUpdate:resetHour":y[7]||(y[7]=f=>s("update:dailyResetHour",f)),"onUpdate:resetTimezone":y[8]||(y[8]=f=>s("update:resetTimezone",f))},null,8,["label","limit","quota-notify-global-enabled","notify-enabled","notify-threshold","notify-threshold-type","reset-mode","reset-hour","reset-timezone","hint-rolling","hint-fixed","hour-options"]),U(on,{dim:"weekly",label:t(o)("admin.accounts.quotaWeeklyLimit"),limit:i.weeklyLimit,"quota-notify-global-enabled":i.quotaNotifyGlobalEnabled,"notify-enabled":c.quotaNotifyWeeklyEnabled,"notify-threshold":c.quotaNotifyWeeklyThreshold,"notify-threshold-type":c.quotaNotifyWeeklyThresholdType,"reset-mode":i.weeklyResetMode,"reset-hour":i.weeklyResetHour,"reset-day":i.weeklyResetDay,"reset-timezone":i.resetTimezone,"hint-rolling":t(o)("admin.accounts.quotaWeeklyLimitHint"),"hint-fixed":F.value,"hour-options":t(M),"day-options":L,"timezone-options":S,"onUpdate:limit":y[9]||(y[9]=f=>s("update:weeklyLimit",f)),"onUpdate:notifyEnabled":y[10]||(y[10]=f=>s("update:quotaNotifyWeeklyEnabled",f)),"onUpdate:notifyThreshold":y[11]||(y[11]=f=>s("update:quotaNotifyWeeklyThreshold",f)),"onUpdate:notifyThresholdType":y[12]||(y[12]=f=>s("update:quotaNotifyWeeklyThresholdType",f)),"onUpdate:resetMode":y[13]||(y[13]=f=>s("update:weeklyResetMode",f)),"onUpdate:resetHour":y[14]||(y[14]=f=>s("update:weeklyResetHour",f)),"onUpdate:resetDay":y[15]||(y[15]=f=>s("update:weeklyResetDay",f)),"onUpdate:resetTimezone":y[16]||(y[16]=f=>s("update:resetTimezone",f))},null,8,["label","limit","quota-notify-global-enabled","notify-enabled","notify-threshold","notify-threshold-type","reset-mode","reset-hour","reset-day","reset-timezone","hint-rolling","hint-fixed","hour-options"]),U(on,{dim:"total",label:t(o)("admin.accounts.quotaTotalLimit"),limit:i.totalLimit,"quota-notify-global-enabled":i.quotaNotifyGlobalEnabled,"notify-enabled":c.quotaNotifyTotalEnabled,"notify-threshold":c.quotaNotifyTotalThreshold,"notify-threshold-type":c.quotaNotifyTotalThresholdType,"reset-mode":null,"reset-hour":null,"reset-day":null,"reset-timezone":null,"hint-rolling":t(o)("admin.accounts.quotaTotalLimitHint"),"hint-fixed":"","hour-options":t(M),"day-options":L,"onUpdate:limit":y[17]||(y[17]=f=>s("update:totalLimit",f)),"onUpdate:notifyEnabled":y[18]||(y[18]=f=>s("update:quotaNotifyTotalEnabled",f)),"onUpdate:notifyThreshold":y[19]||(y[19]=f=>s("update:quotaNotifyTotalThreshold",f)),"onUpdate:notifyThresholdType":y[20]||(y[20]=f=>s("update:quotaNotifyTotalThresholdType",f))},null,8,["label","limit","quota-notify-global-enabled","notify-enabled","notify-threshold","notify-threshold-type","hint-rolling","hour-options"])])):v("",!0)]))}});function ao(i,m,o){m?i.intercept_warmup_requests=!0:o==="edit"&&delete i.intercept_warmup_requests}const Tn="antigravity_project_id";function cn(i,m,o){const c=m.trim();c?i[Tn]=c:o==="edit"&&delete i[Tn]}const Hs="header_override_enabled",Ws="header_overrides";function cs(i,m){return i==="anthropic"||i==="openai"?m==="apikey":i==="grok"?m==="apikey"||m==="oauth":!1}const bl=new Set(["host","content-length","content-type","transfer-encoding","connection","keep-alive","proxy-authenticate","proxy-authorization","proxy-connection","te","trailer","upgrade","authorization","x-api-key","x-goog-api-key","cookie","accept-encoding","sec-websocket-key","sec-websocket-version","sec-websocket-extensions","sec-websocket-protocol","sec-websocket-accept","session_id","conversation_id","x-codex-tur
2n-state","x-codex-turn-metadata","chatgpt-account-id","x-claude-code-session-id","x-client-request-id","x-grok-conv-id"]),hl=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function fl(i){return hl.test(i)}const xl=64,_l=200,kl=8192,wl=/[\x00-\x08\x0a-\x1f\x7f]/,$l=new TextEncoder;function Cl(i){return $l.encode(i).length}function Ts(i){const m=new Set;for(const o of i){const c=o.name.trim(),s=o.value.trim();if(!c){if(s)return"invalidName";continue}if(!fl(c)||c.length>_l)return"invalidName";const b=c.toLowerCase();if(bl.has(b))return"blockedName";if(m.has(b))return"duplicateName";if(wl.test(s)||Cl(s)>kl)return"invalidValue";m.add(b)}return m.size>xl?"tooManyEntries":null}function Qn(i){const m={};for(const o of i){const c=o.name.trim().toLowerCase();c&&(m[c]=o.value.trim())}return m}function Tl(i){return!i||typeof i!="object"||Array.isArray(i)?[]:Object.entries(i).filter(([,m])=>typeof m=="string").map(([m,o])=>({name:m,value:o})).sort((m,o)=>m.name.localeCompare(o.name))}function Sl(i){let m;try{m=JSON.parse(i)}catch{return null}if(!m||typeof m!="object"||Array.isArray(m))return null;const o=[];for(const[c,s]of Object.entries(m)){const b=c.trim();if(b){if(typeof s!="string"&&typeof s!="number"&&typeof s!="boolean")return null;o.push({name:b,value:String(s).trim()})}}return o.sort((c,s)=>c.name.localeCompare(s.name))}function Ml(i){const m={};for(const o of i){const c=o.name.trim();c&&(m[c]=o.value.trim())}return JSON.stringify(m,null,2)}const El="cli-chat-proxy.grok.com";function Ul(i){if(typeof i!="string")return!1;const m=i.trim();if(!m)return!1;let o;try{o=new URL(m)}catch{return!1}return o.hostname.toLowerCase()!==El}const Al=[{labelKey:"cli",url:"https://cli-chat-proxy.grok.com/v1"},{labelKey:"official",url:"https://api.x.ai/v1"},{label:"us-east-1",url:"https://us-east-1.api.x.ai/v1"},{label:"us-west-2",url:"https://us-west-2.api.x.ai/v1"},{label:"eu-west-1",url:"https://eu-west-1.api.x.ai/v1"}];function Gs(i,m,o,c){m?(i[Hs]=!0,i[Ws]=Qn(o)):c==="edit"&&(delete i[Hs],delete i[Ws])}function Sn(i){switch(i.trim().toLowerCase()){case"plus":return"Plus";case"pro":case"chatgptpro":return"Pro";case"free":return"Free";case"team":return"Team";default:return i}}function Rl(i){const m=i==null?void 0:i.plan_type;return typeof m=="string"?m:""}function Pl(i,m){const o=(i||"").trim(),c=o?Sn(o):"",s=[{value:"plus",label:"Plus"},{value:"pro",label:"Pro"},{value:"free",label:"Free"}],b=[{value:"",label:m}];for(const $ of s)o&&$.value!==o.toLowerCase()&&$.label===c?b.push({value:o,label:$.label}):b.push($);return o&&!b.some($=>$.value.toLowerCase()===o.toLowerCase())&&b.push({value:o,label:Sn(o)}),b}function Il(i,m){const o=(m||"").trim();return o?i.plan_type=o:delete i.plan_type,i}const ql={class:"flex flex-wrap gap-2"},Ol=["onClick"],Ss=ut({__name:"GrokBaseUrlPresets",emits:["select"],setup(i,{emit:m}){const o=m,{t:c}=dt(),s=$=>$.label??c(`admin.accounts.grokCustomBaseUrl.presets.${$.labelKey}`),b=$=>$.replace(/^https?:\/\//i,"");return($,P)=>(n(),r("div",ql,[(n(!0),r(ve,null,Ue(t(Al),S=>(n(),r("button",{key:S.url,type:"button","data-testid":"grok-base-url-preset",class:"rounded-lg bg-gray-100 px-3 py-1 text-xs text-gray-700 transition-colors hover:bg-primary-50 hover:text-primary-700 dark:bg-dark-600 dark:text-gray-300 dark:hover:bg-primary-900/30 dark:hover:text-primary-400",onClick:M=>o("select",S.url)},a(s(S))+" ("+a(b(S.url))+") ",9,Ol))),128))]))}}),Dl=["disabled"],Ll={class:"flex gap-2"},Vl={class:"text-xs text-gray-500 dark:text-gray-400"},zl='{"user-agent": "my-client/1.0", "x-relay-token": "..."}',Nl=ut({__name:"HeaderOverrideJsonTools",props:{rows:{}},emits:["update:rows"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=pa(),{copyToClipboard:$}=bn(),P=p(!1),S=p(""),M=p(null),L=p(null),F=w(()=>o.rows.some(I=>I.name.trim())),R=async()=>{var I,q;P.value=!P.value,P.value&&(await On(),(I=M.value)==null||I.scrollIntoView({block:"nearest",behavior:"smooth"}),(q=L.value)==null||q.focus({preventScroll:!0}))},_=()=>{P.value=!1,S.value=""},y=()=>{const I=Sl(S.value);if(I===null){b.showError(s("admin.accounts.headerOverride.importJsonInvalid"));return}c("update:rows",I),_()},f=()=>{$(Ml(o.rows))};return(I,q)=>(n(),r(ve,null,[e("button",{type:"button",class:"rounded-lg bg-primary-50 px-3 py-1 text-xs text-primary-700 transition-colors hover:bg-primary-100 dark:bg-primary-900/30 dark:text-primary-400 dark:hover:bg-primary-900/50",onClick:R},a(t(s)("admin.accounts.headerOverride.importJson")),1),e("button",{type:"button",class:"rounded-lg bg-primary-50 px-3 py-1 text-xs text-primary-700 transition-colors hover:bg-primary-100 disabled:cursor-not-allowed disabled:opacity-50 dark:bg-primary-900/30 dark:text-primary-400 dark:hover:bg-primary-900/50",disabled:!F.value,onClick:f},a(t(s)("admin.accounts.headerOverride.copyJson")),9,Dl),P.value?(n(),r("div",{key:0,ref_key:"importPanelRef",ref:M,class:"w-full space-y-2"},[V(e("textarea",{ref_key:"importTextareaRef",ref:L,"onUpdate:modelValue":q[0]||(q[0]=D=>S.value=D),rows:"5",class:"input font-mono text-xs",placeholder:zl},null,512),[[re,S.value]]),e("div",Ll,[e("button",{type:"button",class:"rounded-lg bg-primary-600 px-3 py-1 text-xs text-white transition-colors hover:bg-primary-700",onClick:y},a(t(s)("admin.accounts.headerOverride.importJsonApply")),1),e("button",{type:"button",class:"rounded-lg bg-gray-100 px-3 py-1 text-xs text-gray-600 transition-colors hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500",onClick:_},a(t(s)("admin.accounts.headerOverride.importJsonCancel")),1)]),e("p",Vl,a(t(s)("admin.accounts.headerOverride.importJsonHint")),1)],512)):v("",!0)],64))}}),jl={key:0,class:"space-y-2"},Bl=["onUpdate:modelValue","placeholder"],Fl=["onUpdate:modelValue","placeholder"],Hl=["onClick"],Wl={class:"flex flex-wrap gap-2"},Gl={class:"text-xs text-gray-500 dark:text-gray-400"},Ks=ut({__name:"HeaderOverrideEditor",props:{rows:{}},emits:["update:rows"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=xo("header-override-row"),$=()=>{c("update:rows",[...o.rows,{name:"",value:""}])},P=S=>{c("update:rows",o.rows.filter((M,L)=>L!==S))};return(S,M)=>(n(),r(ve,null,[i.rows.length>0?(n(),r("div",jl,[(n(!0),r(ve,null,Ue(i.rows,(L,F)=>(n(),r("div",{key:t(b)(L),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":R=>L.name=R,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.headerOverride.namePlaceholder")},null,8,Bl),[[re,L.name]]),V(e("input",{"onUpdate:modelValue":R=>L.value=R,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.headerOverride.valuePlaceholder")},null,8,Fl),[[re,L.value]]),e("button",{type:"button",class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20",onClick:R=>P(F)},[...M[1]||(M[1]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,Hl)]))),128))])):v("",!0),e("button",{type:"button",class:"w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300",onClick:$},[M[2]||(M[2]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(s)("admin.accounts.headerOverride.addRow")),1)]),e("div",Wl,[U(Nl,{rows:i.rows,"onUpdate:rows":M[0]||(M[0]=L=>c("update:rows",L))},null,8,["rows"])]),e("p",Gl,a(t(s)("admin.accounts.headerOverride.emptyValueHint")),1)],64))}}),Gt="off",gs="ctx_pool",Ms="passthrough",Es="http_bridge",Kl=new Set([Gt,gs,Ms,Es]),Ql=i=>
2{if(typeof i!="string")return null;const m=i.trim().toLowerCase();return m==="shared"||m==="dedicated"?gs:Kl.has(m)?m:null},Mn=i=>typeof i!="boolean"?null:i?gs:Gt,ps=i=>i!==Gt,Qs=i=>i===Ms||i===Es?"admin.accounts.openai.wsModePassthroughHint":"admin.accounts.openai.wsModeConcurrencyHint",En=(i,m)=>{const o=m.defaultMode??Gt;if(!i)return o;const c=Ql(i[m.modeKey]);if(c)return c;const s=Mn(i[m.enabledKey]);if(s)return s;const b=m.fallbackEnabledKeys??[];for(const $ of b){const P=Mn(i[$]);if(P)return P}return o},Jl={class:"rounded-lg border border-blue-200 bg-blue-50 p-4 dark:border-blue-700 dark:bg-blue-900/30"},Yl={class:"flex items-start gap-4"},Xl={class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-lg bg-blue-500"},Zl={class:"flex-1"},ei={class:"mb-3 font-semibold text-blue-900 dark:text-blue-200"},ti={key:0,class:"mb-4"},ai={class:"mb-2 block text-sm font-medium text-blue-800 dark:text-blue-300"},oi={class:"flex flex-wrap gap-4"},si={key:0,class:"flex cursor-pointer items-center gap-2"},ni={class:"text-sm text-blue-900 dark:text-blue-200"},ri={key:1,class:"flex cursor-pointer items-center gap-2"},li={class:"text-sm text-blue-900 dark:text-blue-200"},ii={key:2,class:"flex cursor-pointer items-center gap-2"},ui={class:"text-sm text-blue-900 dark:text-blue-200"},di={key:3,class:"flex cursor-pointer items-center gap-2"},ci={class:"text-sm text-blue-900 dark:text-blue-200"},pi={key:4,class:"flex cursor-pointer items-center gap-2"},mi={class:"text-sm text-blue-900 dark:text-blue-200"},gi={key:5,class:"flex cursor-pointer items-center gap-2"},vi={class:"text-sm text-blue-900 dark:text-blue-200"},yi={key:6,class:"flex cursor-pointer items-center gap-2"},bi={class:"text-sm text-blue-900 dark:text-blue-200"},hi={key:7,class:"flex cursor-pointer items-center gap-2"},fi={class:"text-sm text-blue-900 dark:text-blue-200"},xi={key:8,class:"flex cursor-pointer items-center gap-2"},_i={class:"text-sm text-blue-900 dark:text-blue-200"},ki={key:9,class:"flex cursor-pointer items-center gap-2"},wi={class:"text-sm text-blue-900 dark:text-blue-200"},$i={key:1,class:"space-y-4"},Ci={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Ti={class:"mb-3 text-sm text-blue-700 dark:text-blue-300"},Si={class:"mb-4"},Mi={class:"mb-2 flex items-center gap-2 text-sm font-semibold text-gray-700 dark:text-gray-300"},Ei={key:0,class:"rounded-full bg-blue-500 px-2 py-0.5 text-xs text-white"},Ui=["placeholder"],Ai={key:0,class:"mt-1 text-xs text-blue-600 dark:text-blue-400"},Ri={key:0,class:"mb-4 rounded-lg border border-red-200 bg-red-50 p-3 dark:border-red-700 dark:bg-red-900/30"},Pi={class:"whitespace-pre-line text-sm text-red-600 dark:text-red-400"},Ii=["disabled"],qi={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},Oi={key:2,class:"space-y-4"},Di={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Li={class:"mb-3 text-sm text-blue-700 dark:text-blue-300"},Vi={class:"mb-4"},zi={class:"mb-2 flex items-center gap-2 text-sm font-semibold text-gray-700 dark:text-gray-300"},Ni={key:0,class:"rounded-full bg-blue-500 px-2 py-0.5 text-xs text-white"},ji=["placeholder"],Bi={class:"mt-1 text-xs text-blue-600 dark:text-blue-400"},Fi={key:0,class:"mb-4 rounded-lg border border-red-200 bg-red-50 p-3 dark:border-red-700 dark:bg-red-900/30"},Hi={class:"whitespace-pre-line text-sm text-red-600 dark:text-red-400"},Wi=["disabled"],Gi={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},Ki={key:3,class:"space-y-4"},Qi={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Ji={class:"mb-3 text-sm text-blue-700 dark:text-blue-300"},Yi={class:"mb-4"},Xi={class:"mb-2 flex items-center gap-2 text-sm font-semibold text-gray-700 dark:text-gray-300"},Zi={key:0,class:"rounded-full bg-blue-500 px-2 py-0.5 text-xs text-white"},eu=["placeholder"],tu={class:"mt-1 text-xs text-blue-600 dark:text-blue-400"},au={key:0,class:"mb-4 rounded-lg border border-red-200 bg-red-50 p-3 dark:border-red-700 dark:bg-red-900/30"},ou={class:"whitespace-pre-line text-sm text-red-600 dark:text-red-400"},su=["disabled"],nu={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},ru={key:4,class:"space-y-4"},lu={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dar
2k:bg-gray-800/80"},iu={class:"mb-3 text-sm text-blue-700 dark:text-blue-300"},uu={class:"mb-4"},du={class:"mb-2 flex items-center gap-2 text-sm font-semibold text-gray-700 dark:text-gray-300"},cu=["placeholder"],pu={class:"mt-1 text-xs text-blue-600 dark:text-blue-400"},mu={key:0,class:"mb-4 rounded-lg border border-red-200 bg-red-50 p-3 dark:border-red-700 dark:bg-red-900/30"},gu={class:"whitespace-pre-line text-sm text-red-600 dark:text-red-400"},vu=["disabled"],yu={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},bu={key:5,class:"space-y-4"},hu={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},fu={class:"mb-3 text-sm text-blue-700 dark:text-blue-300"},xu={class:"mb-4"},_u={class:"mb-2 flex items-center gap-2 text-sm font-semibold text-gray-700 dark:text-gray-300"},ku={key:0,class:"rounded-full bg-blue-500 px-2 py-0.5 text-xs text-white"},wu=["placeholder"],$u={key:0,class:"mt-1 text-xs text-blue-600 dark:text-blue-400"},Cu={key:0,class:"mb-4 rounded-lg border border-amber-200 bg-amber-50 p-3 dark:border-amber-700 dark:bg-amber-900/30"},Tu={class:"mb-2 font-semibold text-amber-800 dark:text-amber-200"},Su={class:"list-inside list-decimal space-y-1 text-xs text-amber-700 dark:text-amber-300"},Mu=["textContent"],Eu={key:1,class:"mb-4 rounded-lg border border-red-200 bg-red-50 p-3 dark:border-red-700 dark:bg-red-900/30"},Uu={class:"whitespace-pre-line text-sm text-red-600 dark:text-red-400"},Au=["disabled"],Ru={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},Pu={key:6,class:"space-y-4"},Iu={class:"mb-4 text-sm text-blue-800 dark:text-blue-300"},qu={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Ou={class:"flex items-start gap-3"},Du={class:"flex-1"},Lu={class:"mb-2 font-medium text-blue-900 dark:text-blue-200"},Vu={key:0,class:"mb-3"},zu={class:"input-label flex items-center gap-2"},Nu={href:"https://console.cloud.google.com/",target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center gap-1 text-xs font-normal text-blue-500 hover:text-blue-600 dark:text-blue-400"},ju=["placeholder"],Bu={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Fu=["disabled"],Hu={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},Wu={key:2,class:"space-y-3"},Gu={class:"flex items-center gap-2"},Ku=["value"],Qu={key:0,class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"1.5"},Ju={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},Yu={class:"flex items-start gap-3"},Xu={class:"flex-1"},Zu={class:"mb-2 font-medium text-blue-900 dark:text-blue-200"},ed={class:"text-sm text-blue-700 dark:text-blue-300"},td={key:0,class:"mt-2 rounded border border-amber-300 bg-amber-50 p-3 dark:border-amber-700 dark:bg-amber-900/30"},ad=["textContent"],od={key:1,class:"mt-2 rounded border border-yellow-300 bg-yellow-50 p-3 dark:border-yellow-700 dark:bg-yellow-900/30"},sd=["textContent"],nd={class:"rounded-lg border border-blue-300 bg-white/80 p-4 dark:border-blue-600 dark:bg-gray-800/80"},rd={class:"flex items-start gap-3"},ld={class:"flex-1"},id={class:"mb-2 font-medium text-blue-900 dark:text-blue-200"},ud=["textContent"],dd={class:"input-label"},cd=["placeholder"],pd={class:"mt-2 text-xs text-gray-500 dark:text-gray-400"},md={key:0,class:"mt-3 rounded-lg border-2 border-amber-400 bg-amber-50 p-3 dark:border-amber-600 dark:bg-amber-900/30"},gd={class:"flex items-start gap-2"},vd={class:"text-sm text-amber-800 dark:text-amber-300"},yd={class:"font-semibold"},bd={class:"mt-1"},hd={key:0,class:"mt-3 rounded-lg border border-red-200 bg-red-50 p-3 dark:border-red-700 dark:bg-red-900/30"},fd={class:"whitespace-pre-line text-sm text-red-600 dark:text-red-400"},Jn=ut({__name:"OAuthAuthorizationFlow",props:{addMethod:{},authUrl:{default:""},sessionId:{default:""},loading:{type:Boolean,default:!1},error:{default:""},showHelp:{type:Boolean,default:!0},showProxyWarning:{type:Boolean,default:!0},allowMultiple:{type:Boolean,default:!1},methodLabel:{default:"Authorization Method"},showCookieOption:{type:Boolean,default:!0},showRefreshTokenOption:{type:Boolean,default:!1},showMobileRefreshTokenOption:{type:Boolean,default:!1},showSessionTokenOption:{type:Boolean,default:!1},showAccessTokenOption:{type:Boolean,default:!1},showCodexSessionImportOption:{type:Boolean,default:!1},showAgentIdentityOption:{type:Boolean,default:!1},showCodexPatOption:{type:Boolean,default:!1},showSsoOption:{type:Boolean,default:!1},showManualOption:{type:Boolean,default:!0},initialInputMethod:{default:"manual"},platform:{default:"anthropic"},showProjectId:{type:Boolean,default:!0}},emits:["generate-url","exchange-code","cookie-auth","validate-refresh-token","validate-mobile-refresh-token","validate-session-token","import-access-token","import-codex-session","import-codex-pat","import-sso","update:inputMethod"],setup(i,{expose:m,emit:o}){const c=i,s=o,{t:b}=dt(),$=w(()=>c.platform==="openai"||c.platform==="grok"),P=we=>c.platform==="openai"?`admin.accounts.oauth.openai.${we}`:c.platform==="gemini"?`admin.accounts.oauth.gemini.${we}`:c.platform==="antigravity"?`admin.accounts.oauth.antigravity.${we}`:c.platform==="grok"?`admin.accounts.oauth.grok.${we}`:`admin.accounts.oauth.${we}`,S=w(()=>b(P("title"))),M=w(()=>b(P("followSteps"))),L=w(()=>b(P("step1GenerateUrl"))),F=w(()=>b(P("generateAuthUrl"))),R=w(()=>b(P("step2OpenUrl"))),_=w(()=>b(P("openUrlDesc"))),y=w(()=>b(P("step3EnterCode"))),f=w(()=>
2b(P("authCodeDesc"))),I=w(()=>b(P("authCode"))),q=w(()=>b(P("authCodePlaceholder"))),D=w(()=>b(P("authCodeHint"))),z=w(()=>c.platform==="openai"?b("admin.accounts.oauth.openai.importantNotice"):c.platform==="antigravity"?b("admin.accounts.oauth.antigravity.importantNotice"):c.platform==="grok"?b("admin.accounts.oauth.grok.importantNotice"):""),ee=p(c.initialInputMethod),ke=w(()=>ee.value==="agent_identity"),W=p(""),se=p(""),G=p(""),me=p(""),ce=p(""),le=p(""),ne=p(""),te=p(!1),N=p(""),x=p(""),H=w(()=>[c.showManualOption,c.showCookieOption,c.showRefreshTokenOption,c.showMobileRefreshTokenOption,c.showSessionTokenOption,c.showAccessTokenOption,c.showCodexSessionImportOption,c.showAgentIdentityOption,c.showCodexPatOption,c.showSsoOption].filter(Boolean).length),K=w(()=>H.value>1),{copied:be,copyToClipboard:fe}=bn(),$e=w(()=>se.value.split(`
3`).map(we=>we.trim()).filter(we=>we).length),he=w(()=>G.value.split(`
4`).map(we=>we.trim()).filter(we=>we).length),Oe=w(()=>{const we=ce.value.trim();return we?we.startsWith("{")||we.startsWith("[")?1:we.split(`
5`).map(ie=>ie.trim()).filter(ie=>ie).length:0}),Re=w(()=>ne.value.split(`
6`).map(we=>we.trim()).filter(we=>we).length);pt(()=>c.initialInputMethod,we=>{ee.value=we}),pt(ee,we=>{s("update:inputMethod",we)}),pt(W,we=>{if(c.platform!=="openai"&&c.platform!=="gemini"&&c.platform!=="antigravity"&&c.platform!=="grok")return;const ie=we.trim();if(ie.includes("code="))try{const Ce=ie.includes("?")?new URL(ie):new URL(`http://localhost/callback?${ie.replace(/^\?/,"")}`),Fe=Ce.searchParams.get("code"),Je=Ce.searchParams.get("state");(c.platform==="openai"||c.platform==="gemini"||c.platform==="antigravity"||c.platform==="grok")&&Je&&(N.value=Je),Fe&&Fe!==ie&&(W.value=Fe)}catch{const Ce=ie.match(/[?&]code=([^&]+)/),Fe=ie.match(/[?&]state=([^&]+)/);(c.platform==="openai"||c.platform==="gemini"||c.platform==="antigravity"||c.platform==="grok")&&Fe&&Fe[1]&&(N.value=Fe[1]),Ce&&Ce[1]&&Ce[1]!==ie&&(W.value=Ce[1])}});const je=()=>{s("generate-url")},Xe=()=>{c.authUrl&&fe(c.authUrl,"URL copied to clipboard")},Ze=()=>{W.value="",s("generate-url")},it=()=>{se.value.trim()&&s("cookie-auth",se.value)},ot=()=>{G.value.trim()&&(ee.value==="mobile_refresh_token"?s("validate-mobile-refresh-token",G.value.trim()):s("validate-refresh-token",G.value.trim()))},_t=()=>{ce.value.trim()&&s("import-codex-session",ce.value.trim())},tt=()=>{le.value.trim()&&s("import-codex-pat",le.value.trim())},Ke=()=>{ne.value.trim()&&s("import-sso",ne.value.trim())};return m({authCode:W,oauthState:N,projectId:x,sessionKey:se,refreshToken:G,sessionToken:me,codexSession:ce,codexPAT:le,ssoCookie:ne,inputMethod:ee,reset:()=>{W.value="",N.value="",x.value="",se.value="",G.value="",me.value="",ce.value="",le.value="",ne.value="",ee.value=c.initialInputMethod,te.value=!1}}),(we,ie)=>(n(),r("div",Jl,[e("div",Yl,[e("div",Xl,[U(ae,{name:"link",size:"md",class:"text-white"})]),e("div",Zl,[e("h4",ei,a(S.value),1),K.value?(n(),r("div",ti,[e("label",ai,a(i.methodLabel),1),e("div",oi,[i.showManualOption?(n(),r("label",si,[V(e("input",{"onUpdate:modelValue":ie[0]||(ie[0]=Ce=>ee.value=Ce),type:"radio",value:"manual",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",ni,a(t(b)("admin.accounts.oauth.manualAuth")),1)])):v("",!0),i.showCookieOption?(n(),r("label",ri,[V(e("input",{"onUpdate:modelValue":ie[1]||(ie[1]=Ce=>ee.value=Ce),type:"radio",value:"cookie",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",li,a(t(b)("admin.accounts.oauth.cookieAutoAuth")),1)])):v("",!0),i.showRefreshTokenOption?(n(),r("label",ii,[V(e("input",{"onUpdate:modelValue":ie[2]||(ie[2]=Ce=>ee.value=Ce),type:"radio",value:"refresh_token",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",ui,a(t(b)(P("refreshTokenAuth"))),1)])):v("",!0),i.showSsoOption?(n(),r("label",di,[V(e("input",{"onUpdate:modelValue":ie[3]||(ie[3]=Ce=>ee.value=Ce),type:"radio",value:"sso_cookie",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",ci,a(t(b)(P("ssoCookieAuth"))),1)])):v("",!0),i.showMobileRefreshTokenOption?(n(),r("label",pi,[V(e("input",{"onUpdate:modelValue":ie[4]||(ie[4]=Ce=>ee.value=Ce),type:"radio",value:"mobile_refresh_token",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",mi,a(t(b)("admin.accounts.oauth.openai.mobileRefreshTokenAuth")),1)])):v("",!0),i.showSessionTokenOption?(n(),r("label",gi,[V(e("input",{"onUpdate:modelValue":ie[5]||(ie[5]=Ce=>ee.value=Ce),type:"radio",value:"session_token",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",vi,a(t(b)(P("sessionTokenAuth"))),1)])):v("",!0),i.showAccessTokenOption?(n(),r("label",yi,[V(e("input",{"onUpdate:modelValue":ie[6]||(ie[6]=Ce=>ee.value=Ce),type:"radio",value:"access_token",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",bi,a(t(b)("admin.accounts.oauth.openai.accessTokenAuth")),1)])):v("",!0),i.showCodexSessionImportOption?(n(),r("label",hi,[V(e("input",{"onUpdate:modelValue":ie[7]||(ie[7]=Ce=>ee.value=Ce),type:"radio",value:"codex_session",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",fi,a(t(b)("admin.accounts.oauth.openai.codexSessionAuth")),1)])):v("",!0),i.showAgentIdentityOption?(n(),r("label",xi,[V(e("input",{"onUpdate:modelValue":ie[8]||(ie[8]=Ce=>ee.value=Ce),type:"radio",value:"agent_identity",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",_i,a(t(b)("admin.accounts.oauth.openai.agentIdentityAuth")),1)])):v("",!0),i.showCodexPatOption?(n(),r("label",ki,[V(e("input",{"onUpdate:modelValue":ie[9]||(ie[9]=Ce=>ee.value=Ce),type:"radio",value:"codex_pat",class:"text-blue-600 focus:ring-blue-500"},null,512),[[va,ee.value]]),e("span",wi,a(t(b)("admin.accounts.oauth.openai.codexPatAuth")),1)])):v("",!0)])])):v("",!0),ee.value==="refresh_token"||ee.value==="mobile_refresh_token"?(n(),r("div",$i,[e("div",Ci,[e("p",Ti,a(t(b)(P("refreshTokenDesc"))),1),e("div",Si,[e("label",Mi,[U(ae,{name:"key",size:"sm",class:"text-blue-500"}),ie[18]||(ie[18]=oe(" Refresh Token ",-1)),he.value>1?(n(),r("span",Ei,a(t(b)("admin.accounts.oauth.keysCount",{count:he.value})),1)):v("",!0)]),V(e("textarea",{"onUpdate:modelValue":ie[10]||(ie[10]=Ce=>G.value=Ce),rows:"3",class:"input w-full resize-y font-mono text-sm",placeholder:t(b)(P("refreshTokenPlaceholder"))},null,8,Ui),[[re,G.value]]),he.value>1?(n(),r("p",Ai,a(t(b)("admin.accounts.oauth.batchCreateAccounts",{count:he.value})),1)):v("",!0)]),i.error?(n(),r("div",Ri,[e("p",Pi,a(i.error),1)])):v("",!0),e("button",{type:"button",class:"btn btn-primary w-full",disabled:i.loading||!G.value.trim(),onClick:ot},[i.loading?(n(),r("svg",qi,[...ie[19]||(ie[19]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):(n(),Ae(ae,{key:1,name:"sparkles",size:"sm",class:"mr-2"})),oe(" "+a(i.loading?t(b)(P("validating")):t(b)(P("validateAndCreate"))),1)],8,Ii)])])):v("",!0),ee.value==="sso_cookie"?
6(n(),r("div",Oi,[e("div",Di,[e("p",Li,a(t(b)(P("ssoCookieDesc"))),1),e("div",Vi,[e("label",zi,[U(ae,{name:"key",size:"sm",class:"text-blue-500"}),oe(" "+a(t(b)(P("ssoCookieLabel")))+" ",1),Re.value>1?(n(),r("span",Ni,a(t(b)("admin.accounts.oauth.keysCount",{count:Re.value})),1)):v("",!0)]),V(e("textarea",{"onUpdate:modelValue":ie[11]||(ie[11]=Ce=>ne.value=Ce),rows:"5",class:"input w-full resize-y font-mono text-sm",placeholder:t(b)(P("ssoCookiePlaceholder")),spellcheck:"false"},null,8,ji),[[re,ne.value]]),e("p",Bi,a(t(b)(P("ssoCookieHint"))),1)]),i.error?(n(),r("div",Fi,[e("p",Hi,a(i.error),1)])):v("",!0),e("button",{type:"button",class:"btn btn-primary w-full",disabled:i.loading||!ne.value.trim(),onClick:Ke},[i.loading?(n(),r("svg",Gi,[...ie[20]||(ie[20]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):(n(),Ae(ae,{key:1,name:"sparkles",size:"sm",class:"mr-2"})),oe(" "+a(i.loading?t(b)(P("convertingSSO")):t(b)(P("convertSSOAndCreate"))),1)],8,Wi)])])):v("",!0),ee.value==="codex_session"||ee.value==="agent_identity"?(n(),r("div",Ki,[e("div",Qi,[e("p",Ji,a(t(b)(ke.value?"admin.accounts.oauth.openai.agentIdentityDesc":"admin.accounts.oauth.openai.codexSessionDesc")),1),e("div",Yi,[e("label",Xi,[U(ae,{name:"key",size:"sm",class:"text-blue-500"}),oe(" "+a(t(b)(ke.value?"admin.accounts.oauth.openai.agentIdentityInputLabel":"admin.accounts.oauth.openai.codexSessionInputLabel"))+" ",1),Oe.value>1?(n(),r("span",Zi,a(t(b)("admin.accounts.oauth.keysCount",{count:Oe.value})),1)):v("",!0)]),V(e("textarea",{"onUpdate:modelValue":ie[12]||(ie[12]=Ce=>ce.value=Ce),rows:"8",class:"input w-full resize-y font-mono text-sm",placeholder:t(b)(ke.value?"admin.accounts.oauth.openai.agentIdentityPlaceholder":"admin.accounts.oauth.openai.codexSessionPlaceholder"),spellcheck:"false"},null,8,eu),[[re,ce.value]]),e("p",tu,a(t(b)(ke.value?"admin.accounts.oauth.openai.agentIdentityHint":"admin.accounts.oauth.openai.codexSessionHint")),1)]),i.error?(n(),r("div",au,[e("p",ou,a(i.error),1)])):v("",!0),e("button",{type:"button",class:"btn btn-primary w-full",disabled:i.loading||!ce.value.trim(),onClick:_t},[i.loading?(n(),r("svg",nu,[...ie[21]||(ie[21]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):(n(),Ae(ae,{key:1,name:"sparkles",size:"sm",class:"mr-2"})),oe(" "+a(i.loading?t(b)("admin.accounts.oauth.openai.validating"):t(b)("admin.accounts.oauth.openai.codexSessionImportAndCreate")),1)],8,su)])])):v("",!0),ee.value==="codex_pat"?(n(),r("div",ru,[e("div",lu,[e("p",iu,a(t(b)("admin.accounts.oauth.openai.codexPatDesc")),1),e("div",uu,[e("label",du,[U(ae,{name:"key",size:"sm",class:"text-blue-500"}),oe(" "+a(t(b)("admin.accounts.oauth.openai.codexPatInputLabel")),1)]),V(e("textarea",{"onUpdate:modelValue":ie[13]||(ie[13]=Ce=>le.value=Ce),rows:"3",class:"input w-full resize-y font-mono text-sm",placeholder:t(b)("admin.accounts.oauth.openai.codexPatPlaceholder"),spellcheck:"false"},null,8,cu),[[re,le.value]]),e("p",pu,a(t(b)("admin.accounts.oauth.openai.codexPatHint")),1)]),i.error?(n(),r("div",mu,[e("p",gu,a(i.error),1)])):v("",!0),e("button",{type:"button",class:"btn btn-primary w-full",disabled:i.loading||!le.value.trim(),onClick:tt},[i.loading?(n(),r("svg",yu,[...ie[22]||(ie[22]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):(n(),Ae(ae,{key:1,name:"sparkles",size:"sm",class:"mr-2"})),oe(" "+a(i.loading?t(b)("admin.accounts.oauth.openai.validating"):t(b)("admin.accounts.oauth.openai.codexPatImportAndCreate")),1)],8,vu)])])):v("",!0),ee.value==="cookie"?
6(n(),r("div",bu,[e("div",hu,[e("p",fu,a(t(b)("admin.accounts.oauth.cookieAutoAuthDesc")),1),e("div",xu,[e("label",_u,[U(ae,{name:"key",size:"sm",class:"text-blue-500"}),oe(" "+a(t(b)("admin.accounts.oauth.sessionKey"))+" ",1),$e.value>1&&i.allowMultiple?(n(),r("span",ku,a(t(b)("admin.accounts.oauth.keysCount",{count:$e.value})),1)):v("",!0),i.showHelp?(n(),r("button",{key:1,type:"button",class:"text-blue-500 hover:text-blue-600",onClick:ie[14]||(ie[14]=Ce=>te.value=!te.value)},[...ie[23]||(ie[23]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"})],-1)])])):v("",!0)]),V(e("textarea",{"onUpdate:modelValue":ie[15]||(ie[15]=Ce=>se.value=Ce),rows:"3",class:"input w-full resize-y font-mono text-sm",placeholder:i.allowMultiple?t(b)("admin.accounts.oauth.sessionKeyPlaceholder"):t(b)("admin.accounts.oauth.sessionKeyPlaceholderSingle")},null,8,wu),[[re,se.value]]),$e.value>1&&i.allowMultiple?(n(),r("p",$u,a(t(b)("admin.accounts.oauth.batchCreateAccounts",{count:$e.value})),1)):v("",!0)]),te.value&&i.showHelp?(n(),r("div",Cu,[e("h5",Tu,a(t(b)("admin.accounts.oauth.howToGetSessionKey")),1),e("ol",Su,[e("li",null,a(t(b)("admin.accounts.oauth.step1")),1),e("li",null,a(t(b)("admin.accounts.oauth.step2")),1),e("li",null,a(t(b)("admin.accounts.oauth.step3")),1),e("li",null,a(t(b)("admin.accounts.oauth.step4")),1),e("li",null,a(t(b)("admin.accounts.oauth.step5")),1),e("li",null,a(t(b)("admin.accounts.oauth.step6")),1)]),e("p",{class:"mt-2 text-xs text-amber-600 dark:text-amber-400",textContent:a(t(b)("admin.accounts.oauth.sessionKeyFormat"))},null,8,Mu)])):v("",!0),i.error?(n(),r("div",Eu,[e("p",Uu,a(i.error),1)])):v("",!0),e("button",{type:"button",class:"btn btn-primary w-full",disabled:i.loading||!se.value.trim(),onClick:it},[i.loading?(n(),r("svg",Ru,[...ie[24]||(ie[24]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):(n(),Ae(ae,{key:1,name:"sparkles",size:"sm",class:"mr-2"})),oe(" "+a(i.loading?t(b)("admin.accounts.oauth.authorizing"):t(b)("admin.accounts.oauth.startAutoAuth")),1)],8,Au)])])):v("",!0),ee.value==="manual"?(n(),r("div",Pu,[e("p",Iu,a(M.value),1),e("div",qu,[e("div",Ou,[ie[28]||(ie[28]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-xs font-bold text-white"}," 1 ",-1)),e("div",Du,[e("p",Lu,a(L.value),1),i.showProjectId&&i.platform==="gemini"?(n(),r("div",Vu,[e("label",zu,[oe(a(t(b)("admin.accounts.oauth.gemini.projectIdLabel"))+" ",1),e("a",Nu,[ie[25]||(ie[25]=e("svg",{class:"h-3 w-3",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"})],-1)),oe(" "+a(t(b)("admin.accounts.oauth.gemini.howToGetProjectId")),1)])]),V(e("input",{"onUpdate:modelValue":ie[16]||(ie[16]=Ce=>x.value=Ce),type:"text",class:"input w-full font-mono text-sm",placeholder:t(b)("admin.accounts.oauth.gemini.projectIdPlaceholder")},null,8,ju),[[re,x.value]]),e("p",Bu,a(t(b)("admin.accounts.oauth.gemini.projectIdHint")),1)])):v("",!0),i.authUrl?(n(),r("div",Wu,[e("div",Gu,[e("input",{value:i.authUrl,readonly:"",type:"text",class:"input flex-1 bg-gray-50 font-mono text-xs dark:bg-gray-700"},null,8,Ku),e("button",{type:"button",class:"btn btn-secondary p-2",title:"Copy URL",onClick:Xe},[t(be)?(n(),Ae(ae,{key:1,name:"check",size:"sm",class:"text-green-500","stroke-width":2})):(n(),r("svg",Qu,[...ie[27]||(ie[27]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15.666 3.888A2.25 2.25 0 0013.5 2.25h-3c-1.03 0-1.9.693-2.166 1.638m7.332 0c.055.194.084.4.084.612v0a.75.75 0 01-.75.75H9a.75.75 0 01-.75-.75v0c0-.212.03-.418.084-.612m7.332 0c.646.049 1.288.11 1.927.184 1.1.128 1.907 1.077 1.907 2.185V19.5a2.25 2.25 0 01-2.25 2.25H6.75A2.25 2.25 0 014.5 19.5V6.257c0-1.108.806-2.057 1.907-2.185a48.208 48.208 0 011.927-.184"},null,-1)])]))])]),e("button",{type:"button",class:"text-xs text-blue-600 hover:text-blue-700 dark:text-blue-400",onClick:Ze},[U(ae,{name:"refresh",size:"xs",class:"mr-1 inline"}),oe(" "+a(t(b)("admin.accounts.oauth.regenerate")),1)])])):(n(),r("button",{key:1,type:"button",disabled:i.loading,class:"btn btn-primary text-sm",onClick:je},[i.loading?(n(),r("svg",Hu,[...ie[26]||(ie[26]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):(n(),Ae(ae,{key:1,name:"link",size:"sm",class:"mr-2"})),oe(" "+a(i.loading?t(b)("admin.accounts.oauth.generating"):F.value),1)],8,Fu))])])]),e("div",Ju,[e("div",Yu,[ie[29]||(ie[29]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-xs font-bold text-white"}," 2 ",-1)),e("div",Xu,[e("p",Zu,a(R.value),1),e("p",ed,a(_.value),1),$.value?(n(),r("div",td,[e("p",{class:"text-xs text-amber-800 dark:text-amber-300",textContent:a(z.value)},null,8,ad)])):i.showProxyWarning?(n(),r("div",od,[e("p",{class:"text-xs text-yellow-800 dark:text-yellow-300",textContent:a(t(b)("admin.accounts.oauth.proxyWarning"))},null,8,sd)])):v("",!0)])])]),e("div",nd,[e("div",rd,[ie[30]||(ie[30]=e("div",{class:"flex h-6 w-6 flex-shrink-0 items-center justify-center rounded-full bg-blue-600 text-xs font-bold text-white"}," 3 ",-1)),e("div",ld,[e("p",id,a(y.value),1),e("p",{class:"mb-3 text-sm text-blue-700 dark:text-blue-300",textContent:a(f.value)},null,8,ud),e("div",null,[e("label",dd,[U(ae,{name:"key",size:"sm",class:"mr-1 inline text-blue-500"}),oe(" "+a(I.value),1)]),V(e("textarea",{"onUpdate:modelValue":ie[17]||(ie[17]=Ce=>W.value=Ce),rows:"3",class:"input w-full resize-none font-mono text-sm",placeholder:q.value},null,8,cd),[[re,W.value]]),e("p",pd,[U(ae,{name:"infoCircle",size:"xs",class:"mr-1 inline"}),oe(" "+a(D.value),1)]),i.platform==="gemini"?(n(),r("div",md,[e("div",gd,[U(ae,{name:"exclamationTriangle",size:"md",class:"flex-shrink-0 text-amber-600 dar
6k:text-amber-400","stroke-width":2}),e("div",vd,[e("p",yd,a(we.$t("admin.accounts.oauth.gemini.stateWarningTitle")),1),e("p",bd,a(we.$t("admin.accounts.oauth.gemini.stateWarningDesc")),1)])])])):v("",!0)]),i.error?(n(),r("div",hd,[e("p",fd,a(i.error),1)])):v("",!0)])])])])):v("",!0)])])]))}}),xd={key:0,class:"mb-6 flex items-center justify-center"},_d={class:"flex items-center space-x-4"},kd={class:"flex items-center"},wd={class:"ml-2 text-sm font-medium text-gray-700 dark:text-gray-300"},$d={class:"flex items-center"},Cd={class:"ml-2 text-sm font-medium text-gray-700 dark:text-gray-300"},Td={class:"input-label"},Sd=["required","placeholder"],Md={class:"input-label"},Ed=["placeholder"],Ud={class:"input-hint"},Ad={class:"input-label"},Rd={class:"mt-2 flex flex-wrap rounded-lg bg-gray-100 p-1 dark:bg-dark-700","data-tour":"account-form-platform"},Pd={key:0},Id={class:"input-label"},qd={class:"mt-2 grid grid-cols-2 gap-3 sm:grid-cols-4","data-tour":"account-form-type"},Od={class:"block text-sm font-medium text-gray-900 dark:text-white"},Dd={class:"text-xs text-gray-500 dark:text-gray-400"},Ld={class:"block text-sm font-medium text-gray-900 dark:text-white"},Vd={class:"text-xs text-gray-500 dark:text-gray-400"},zd={class:"block text-sm font-medium text-gray-900 dark:text-white"},Nd={class:"text-xs text-gray-500 dark:text-gray-400"},jd={key:0,class:"mt-3 rounded-lg border border-sky-200 bg-sky-50 px-3 py-2 text-xs text-sky-800 dark:border-sky-800/40 dark:bg-sky-900/20 dark:text-sky-200"},Bd={key:1},Fd={class:"input-label"},Hd={class:"mt-2 grid grid-cols-2 gap-3","data-tour":"account-form-type"},Wd={class:"text-xs text-gray-500 dark:text-gray-400"},Gd={class:"text-xs text-gray-500 dark:text-gray-400"},Kd={key:2},Qd={class:"input-label"},Jd={class:"mt-2 grid grid-cols-1 gap-3 sm:grid-cols-2","data-tour":"account-form-type"},Yd={class:"text-xs text-gray-500 dark:text-gray-400"},Xd={class:"text-xs text-gray-500 dark:text-gray-400"},Zd={key:3},ec={class:"flex items-center justify-between"},tc={class:"input-label"},ac={class:"mt-2 grid grid-cols-3 gap-3","data-tour":"account-form-type"},oc={class:"block text-sm font-medium text-gray-900 dark:text-white"},sc={class:"text-xs text-gray-500 dark:text-gray-400"},nc={class:"block text-sm font-medium text-gray-900 dark:text-white"},rc={class:"text-xs text-gray-500 dark:text-gray-400"},lc={key:0,class:"mt-3 rounded-lg border border-purple-200 bg-purple-50 px-3 py-2 text-xs text-purple-800 dark:border-purple-800/40 dark:bg-purple-900/20 dark:text-purple-200"},ic={class:"mt-2 flex flex-wrap gap-2"},uc=["href"],dc={key:1,class:"mt-3 rounded-lg border border-sky-200 bg-sky-50 px-3 py-2 text-xs text-sky-800 dark:border-sky-800/40 dark:bg-sky-900/20 dark:text-sky-200"},cc={key:2,class:"mt-4"},pc={class:"input-label"},mc={class:"mt-2 grid grid-cols-2 gap-3"},gc={class:"min-w-0"},vc={class:"text-xs text-gray-500 dark:text-gray-400"},yc={class:"mt-2 flex flex-wrap gap-1"},bc={class:"rounded bg-purple-100 px-2 py-0.5 text-[10px] font-semibold text-purple-700 dark:bg-purple-900/40 dark:text-purple-300"},hc={class:"rounded bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300"},fc={class:"min-w-0"},xc={class:"text-xs text-gray-500 dark:text-gray-400"},_c={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},kc=["href"],wc={class:"mt-2 flex flex-wrap gap-1"},$c={class:"rounded bg-blue-100 px-2 py-0.5 text-[10px] font-semibold text-blue-700 dark:bg-blue-900/40 dark:text-blue-300"},Cc={class:"rounded bg-emerald-100 px-2 py-0.5 text-[10px] font-semibold text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300"},Tc={class:"mt-3"},Sc={key:0,class:"mt-3 group relative"},Mc=["disabled"],Ec={class:"min-w-0"},Uc={class:"block text-sm font-medium text-gray-900 dark:text-white"},Ac={class:"text-xs text-gray-500 dark:text-gray-400"},Rc={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Pc={class:"mt-2 flex flex-wrap gap-1"},Ic={class:"rounded bg-amber-100 px-2 py-0.5 text-[10px] font-semibold text-amber-700 dark:bg-amber-900/40 dark:text-amber-300"},qc={class:"rounded bg-amber-100 px-2 py-0.5 text-[10px] font-semibold text-amber-700 dark:bg-amber-900/40 dark:text-amber-300"},Oc={key:0,class:"ml-auto shrink-0 rounded bg-amber-100 px-2 py-0.5 text-xs text-amber-700 dark:bg-amber-900/30 dark:text-amber-300"},Dc={key:0,class:"pointer-events-none absolute right-0 top-full z-50 mt-2 w-80 rounded-md border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800 opacity-0 shadow-lg transition-opacity group-hover:opacity-100 dark:border-amber-700 dark:bg-amber-900/40 dark:text-amber-200"},Lc={key:3,class:"mt-4"},Vc={class:"input-label"},zc={class:"mt-2"},Nc={value:"google_one_free"},jc={value:"google_ai_pro"},Bc={value:"google_ai_ultra"},Fc={value:"gcp_standard"},Hc={value:"gcp_enterprise"},Wc={value:"aistudio_free"},Gc={value:"aistudio_paid"},Kc={class:"input-hint"},Qc={key:4},Jc={class:"input-label"},Yc={class:"mt-2 grid grid-cols-2 gap-3"},Xc={class:"text-xs text-gray-500 dark:text-gray-400"},Zc={class:"text-xs text-gray-500 dark:text-gray-400"},e0={key:5},t0={class:"input-label"},a0=["placeholder"],o0={class:"input-hint"},s0={key:6,class:"space-y-4"},n0={class:"input-label"},r0={class:"input-hint"},l0={class:"input-label"},i0={class:"input-hint"},u0={key:7,class:"space-y-4"},d0={class:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between"},c0={class:"min-w-0"},p0={class:"flex items-center gap-2 text-sm font-medium text-gray-900 dark:text-white"},m0={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},g0={key:0,class:"mt-3 rounded-md border border-sky-200 bg-white px-3 py-2 text-xs text-sky-900 dark:border-sky-800/50 dark:bg-dark-800 dark:text-sky-200"},v0={class:"truncate"},y0={class:"font-mono"},b0={class:"truncate"},h0={class:"font-mono"},f0={class:"input-hint"},x0={class:"grid grid-cols-1 gap-4 sm:grid-cols-2"},_0=["placeholder"],k0=["label"],w0=["value"],$0={class:"input-hint"},C0={key:8,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},T0={class:"input-label"},S0={class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/20"},M0={class:"text-xs text-purple-700 dark:text-purple-400"},E0={key:0,class:"mb-3 space-y-2"},U0={class:"flex items-center gap-2"},A0=["onUpdate:modelValue","placeholder"],R0=["onUpdate:modelValue","placeholder"],P0=["onClick"],I0={key:0,class:"text-xs text-red-500"},q0={key:1,class:"text-xs text-red-500"},O0={class:"flex flex-wrap gap-2"},D0=["onClick"],L0={key:9},V0={class:"input-label"},z0={class:"mt-2 flex gap-4"},N0={class:"flex cursor-pointer items-center"},j0={class:"text-sm text-gray-700 dark:text-gray-300"},B0={class:"flex cursor-pointer items-center"},F0={class:"text-sm text-gray-700 dark:text-gray-300"},H0={key:10,class:"space-y-4"},W0={class:"input-label"},G0=["placeholder"],K0={key:0,class:"input-hint"},Q0={class:"input-label"},J0=["placeholder"],Y0={key:0,class:"input-hint"}
vendor: 8,416 bytes, line 6
6,X0={key:0,class:"flex items-center justify-between gap-4 border-t border-gray-200 pt-4 dark:border-dark-600"},Z0={class:"input-label mb-0"},ep={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},tp={key:1},ap={class:"input-label"},op={value:"aistudio_free"},sp={value:"aistudio_paid"},np={class:"input-hint"},rp={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},lp={class:"input-label"},ip={key:0,class:"mb-3 rounded-lg bg-amber-50 p-3 dark:bg-amber-900/20"},up={class:"text-xs text-amber-700 dark:text-amber-400"},dp={class:"mb-4 flex gap-2"},cp={key:0},pp={class:"text-xs text-gray-500 dark:text-gray-400"},mp={key:0},gp={key:1},vp={class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/20"},yp={class:"text-xs text-purple-700 dark:text-purple-400"},bp={key:0,class:"mb-3 space-y-2"},hp=["onUpdate:modelValue","placeholder"],fp=["onUpdate:modelValue","placeholder"],xp=["onClick"],_p={class:"flex flex-wrap gap-2"},kp=["onClick"],wp={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},$p={class:"mb-3 flex items-center justify-between"},Cp={class:"input-label mb-0"},Tp={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Sp={key:0,class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},Mp={class:"text-xs text-blue-700 dark:text-blue-400"},Ep={key:1,class:"mt-3"},Up={class:"input-label"},Ap={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Rp={key:2,class:"mt-3"},Pp={class:"input-label"},Ip=["placeholder"],qp={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Op={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Dp={class:"mb-3 flex items-center justify-between"},Lp={class:"input-label mb-0"},Vp={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},zp={key:0,class:"space-y-3"},Np={class:"rounded-lg bg-amber-50 p-3 dark:bg-amber-900/20"},jp={class:"text-xs text-amber-700 dark:text-amber-400"},Bp={class:"flex flex-wrap gap-2"},Fp=["onClick"],Hp={class:"flex items-center gap-2"},Wp=["placeholder"],Gp={class:"flex flex-wrap gap-1.5"},Kp=["onClick"],Qp={key:0,class:"text-xs text-gray-400"},Jp={key:2,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Yp={class:"mb-3 flex items-center justify-between"},Xp={class:"input-label mb-0"},Zp={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},em={key:0,class:"space-y-3"},tm={class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},am={class:"text-xs text-blue-700 dark:text-blue-400"},om={key:11,class:"space-y-4"},sm={class:"input-label"},nm={class:"mt-2 flex gap-4"},rm={class:"flex cursor-pointer items-center"},lm={class:"text-sm text-gray-700 dark:text-gray-300"},im={class:"flex cursor-pointer items-center"},um={class:"text-sm text-gray-700 dark:text-gray-300"},dm={class:"input-label"},cm={class:"input-label"},pm={class:"input-label"},mm={class:"input-hint"},gm={key:1},vm={class:"input-label"},ym={class:"input-label"},bm={class:"input-hint"},hm={class:"flex items-center gap-2 cursor-pointer"},fm={class:"text-sm text-gray-700 dark:text-gray-300"},xm={class:"input-hint mt-1"},_m={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},km={class:"input-label"},wm={class:"mb-4 flex gap-2"},$m={key:0},Cm={class:"text-xs text-gray-500 dark:text-gray-400"},Tm={key:0},Sm={key:1,class:"space-y-3"},Mm=["onUpdate:modelValue","placeholder"],Em=["onUpdate:modelValue","placeholder"],Um=["onClick"],Am={class:"flex flex-wrap gap-2"},Rm=["onClick"],Pm={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Im={class:"mb-3 flex items-center justify-between"},qm={class:"input-label mb-0"},Om={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Dm={key:0,class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},Lm={class:"text-xs text-blue-700 dark:text-blue-400"},Vm={key:1,class:"mt-3"},zm={class:"input-label"},Nm={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},jm={key:2,class:"mt-3"},Bm={class:"input-label"},Fm=["placeholder"],Hm={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Wm={key:12,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},Gm={class:"mb-3"},Km={class:"input-label mb-0 text-base font-semibold"},Qm={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Jm={key:13,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},Ym={class:"mb-3"},Xm={class:"input-label mb-0 text-base font-semibold"},Zm={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},eg={key:14,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},tg={class:"mb-3 flex items-center justify-between"},ag={class:"input-label mb-0"},og={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},sg={key:0,class:"space-y-2"},ng=["placeholder"],rg={key:15,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},lg={class:"mb-3 flex items-center justify-between"},ig={class:"input-label mb-0"},ug={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},dg={key:0,class:"space-y-3"},cg={class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},pg={class:"text-xs text-blue-700 dark:text-blue-400"},mg={key:16,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},gg={class:"input-label"},vg={key:0,class:"mb-3 rounded-lg bg-amber-50 p-3 dark:bg-amber-900/20"},yg={class:"text-xs text-amber-700 dark:text-amber-400"},bg={class:"mb-4 flex gap-2"},hg={key:0},fg={class:"text-xs text-gray-500 dark:text-gray-400"},xg={key:0},_g={key:1},kg={class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/20"},wg={class:"text-xs text-purple-700 dark:text-purple-400"},$g={key:0,class:"mb-3 space-y-2"},Cg=["onUpdate:modelValue","placeholder"],Tg=["onUpdate:modelValue","placeholder"],Sg=["onClick"],Mg={class:"flex flex-wrap gap-2"},Eg=["onClick"],Ug={class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},Ag={class:"mb-3 flex items-center justify-between"},Rg={class:"input-label mb-0"},Pg={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Ig={key:0,class:"space-y-3"},qg={class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},Og={class:"text-xs text-blue-700 dark:text-blue-400"},Dg={class:"flex flex-wrap gap-2"},Lg=["onClick"],Vg={key:0,class:"space-y-3"},zg={class:"mb-2 flex items-center justify-between"},Ng={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},jg={class:"flex items-center gap-2"},Bg=["disabled","onClick"],Fg=["disabled","onClick"],Hg=["onClick"],Wg={class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},Gg={class:"input-label"},Kg=["onUpdate:modelValue","placeholder"],Qg={class:"input-label"},Jg=["onUpdate:modelValue","placeholder"],Yg={class:"sm:col-span-2"},Xg={class:"input-label"},Zg=["onUpdate:modelValue","placeholder"],ev={class:"input-hint"},tv={class:"sm:col-span-2"},av={class:"input-label"},ov=["onUpdate:modelValue","placeholder"],sv={key:17,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},nv={class:"flex items-center justify-between"},rv={class:"input-label mb-0"},lv={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},iv={key:18,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},uv={class:"mb-3"},dv={class:"input-label mb-0 text-base font-semibold"},cv={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},pv={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},mv={class:"mb-3 flex items-center justify-between"},gv={class:"input-label mb-0"},vv={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},yv={key:0,class:"grid grid-cols-2 gap-4"},bv={class:"input-label"},hv={class:"relative"},fv=["placeholder"],xv={class:"input-hint"},_v={class:"input-label"},kv={class:"relative"},wv=["placeholder"],$v={class:"input-hint"},Cv={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},Tv={class:"mb-3 flex items-center justify-between"},Sv={class:"input-label mb-0"},Mv={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Ev={key:0,class:"grid grid-cols-2 gap-4"},Uv={class:"input-label"},Av=["placeholder"],Rv={class:"input-hint"},Pv={class:"input-label"},Iv={class:"relative"},qv=["placeholder"],Ov={class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 dark:text-gray-400"},Dv={class:"input-hint"},Lv={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},Vv={class:"mb-3 flex items-center justify-between"},zv={class:"input-label mb-0"},Nv={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},jv={key:0,class:"space-y-4"},Bv={class:"input-label"},Fv=["placeholder"],Hv={class:"input-hint"},Wv={class:"input-label"},Gv={class:"flex gap-2"},Kv={class:"text-center"}
6,Qv={class:"mt-0.5 text-[10px] opacity-70"},Jv={class:"text-center"},Yv={class:"mt-0.5 text-[10px] opacity-70"},Xv={key:0},Zv={class:"input-label"},ey=["placeholder"],ty={class:"input-hint"},ay={class:"mt-4"},oy={class:"input-label"},sy={class:"mt-1 text-xs text-gray-500 dark:text-gray-400 mb-2"},ny={class:"flex space-x-2"},ry=["onClick"],ly={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},iy={class:"flex items-center justify-between"},uy={class:"input-label mb-0"},dy={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},cy={key:0,class:"mt-3"},py={value:null},my={key:0,value:-1},gy=["value"],vy={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},yy={class:"flex items-center justify-between"},by={class:"input-label mb-0"},hy={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},fy={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},xy={class:"flex items-center justify-between"},_y={class:"input-label mb-0"},ky={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},wy={key:0,class:"mt-3"},$y={class:"input-label text-xs"},Cy={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Ty={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},Sy={class:"flex items-center justify-between"},My={class:"input-label mb-0"},Ey={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Uy={key:0,class:"mt-3"},Ay=["placeholder"],Ry={class:"mb-1 flex items-center gap-2"},Py={class:"input-label mb-0"},Iy={class:"grid grid-cols-2 gap-4 lg:grid-cols-4"},qy={class:"input-label"},Oy={class:"input-label"},Dy=["placeholder"],Ly={class:"input-hint"},Vy={class:"input-label"},zy={class:"input-hint"},Ny={class:"input-label"},jy={class:"input-hint"},By={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Fy={class:"input-label"},Hy={class:"input-hint"},Wy={key:19,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Gy={class:"flex items-center justify-between"},Ky={class:"input-label mb-0"},Qy={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Jy={key:20,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Yy={class:"flex items-center justify-between"},Xy={class:"input-label mb-0"},Zy={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},eb={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},tb={class:"w-52"},ab={key:21,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},ob={class:"flex items-center justify-between"},sb={class:"input-label mb-0"},nb={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},rb={key:22,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},lb={class:"flex items-center justify-between gap-4"},ib={class:"input-label mb-0"},ub={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},db={value:"x_api_key"},cb={value:"authorization_bearer"},pb={key:23,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},mb={class:"flex items-center justify-between"},gb={class:"input-label mb-0"},vb={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},yb={value:"default"},bb={value:"enabled"},hb={value:"disabled"},fb={key:24,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},xb={class:"flex items-center justify-between gap-4"},_b={class:"input-label mb-0"},kb={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},wb=["aria-checked"],$b={key:25,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Cb={class:"flex items-center justify-between"},Tb={class:"input-label mb-0"},Sb={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Mb={key:0,class:"mt-4 flex items-center justify-between border-l-2 border-gray-200 pl-4 dark:border-dark-600"},Eb={class:"input-label mb-0"},Ub={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Ab={key:26,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},Rb={class:"flex items-center justify-between"},Pb={class:"input-label mb-0"},Ib={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},qb={class:"w-44"},Ob={class:"input-label"},Db={class:"input-hint"},Lb={key:0,class:"mb-3 space-y-2"},Vb=["onUpdate:modelValue","placeholder"],zb=["onUpdate:modelValue","placeholder"],Nb=["onClick"],jb={key:27,class:"space-y-4 border-t border-gray-200 pt-4 dark:border-dark-600"},Bb={class:"flex items-center justify-between gap-4"},Fb={class:"input-label mb-0"},Hb={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Wb={class:"w-56"},Gb={key:0,class:"rounded-lg bg-amber-50 px-3 py-2 text-xs text-amber-700 dark:bg-amber-900/20 dark:text-amber-300","data-testid":"openai-responses-mode-not-applicable"},Kb={class:"input-label mb-2 block"},Qb={class:"grid grid-cols-1 gap-2 sm:grid-cols-2"},Jb=["data-testid","checked","onChange"],Yb={class:"text-gray-700 dark:text-gray-200"},Xb={class:"input-hint"},Zb={class:"flex items-center justify-between"},eh={class:"input-label mb-0"},th={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},ah={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},oh={key:0,class:"flex items-center gap-2"},sh={class:"flex cursor-pointer items-center gap-2"},nh={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},rh={class:"group relative"},lh={class:"pointer-events-none absolute left-0 top-full z-[100] mt-1.5 w-72 rounded bg-gray-900 px-3 py-2 text-xs text-white opacity-0 transition-opacity group-hover:opacity-100 dark:bg-gray-700"},ih={key:1,class:"mt-3 flex items-center gap-2"},uh={class:"flex cursor-pointer items-center gap-2"},dh={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},ch={class:"group relative"},ph={class:"pointer-events-none absolute left-0 top-full z-[100] mt-1.5 w-72 rounded bg-gray-900 px-3 py-2 text-xs text-white opacity-0 transition-opacity group-hover:opacity-100 dark:bg-gray-700"},mh={key:2,class:"space-y-5"},gh={key:0,class:"flex justify-end gap-3"},vh=["disabled"],yh={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},bh={key:1,class:"flex justify-between gap-3"},hh=["disabled"],fh={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},xh={class:"space-y-6"},_h={class:"mb-3 text-sm font-semibold text-gray-900 dark:text-white"},kh={class:"space-y-4"},wh={class:"mb-2 text-sm font-medium text-gray-700 dark:text-gray-300"},$h={class:"list-inside list-disc space-y-1 text-sm text-gray-600 dark:text-gray-400"},Ch={class:"mb-2 text-sm font-medium text-gray-700 dark:text-gray-300"},Th={class:"list-inside list-disc space-y-1 text-sm text-gray-600 dark:text-gray-400"},Sh={class:"mt-2 flex flex-wrap gap-2"},Mh={href:"https://policies.google.com/terms",target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},Eh={href:"https://policies.google.com/country-association-form",target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},Uh={href:"https://gemini.google.com/gems/create?hl=en-US&pli=1",target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},Ah={href:"https://console.cloud.google.com",target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},Rh={class:"border-t border-gray-200 pt-6 dark:border-dark-600"},Ph={class:"mb-3 text-sm font-semibold text-gray-900 dark:text-white"}
6,Ih={class:"mb-4 text-xs text-amber-600 dark:text-amber-400"},qh={class:"overflow-x-auto"},Oh={class:"w-full text-xs"},Dh={class:"bg-gray-50 dark:bg-dark-600"},Lh={class:"px-3 py-2 text-left font-medium text-gray-700 dark:text-gray-300"},Vh={class:"px-3 py-2 text-left font-medium text-gray-700 dark:text-gray-300"},zh={class:"px-3 py-2 text-left font-medium text-gray-700 dark:text-gray-300"},Nh={class:"divide-y divide-gray-200 dark:divide-dark-600"},jh={class:"px-3 py-2 text-gray-900 dark:text-white"},Bh={class:"px-3 py-2 text-gray-600 dark:text-gray-400"},Fh={class:"px-3 py-2 text-gray-600 dark:text-gray-400"},Hh={class:"px-3 py-2 text-gray-600 dark:text-gray-400"},Wh={class:"px-3 py-2 text-gray-900 dark:text-white"},Gh={class:"px-3 py-2 text-gray-600 dark:text-gray-400"},Kh={class:"px-3 py-2 text-gray-600 dark:text-gray-400"},Qh={class:"px-3 py-2 text-gray-900 dark:text-white"},Jh={class:"px-3 py-2 text-gray-600 dark:text-gray-400"},Yh={class:"px-3 py-2 text-gray-600 dark:text-gray-400"},Xh={class:"mt-4 flex flex-wrap gap-3"},Zh=["href"],ef=["href"],tf=["href"],af={class:"border-t border-gray-200 pt-6 dark:border-dark-600"},of={class:"mb-3 text-sm font-semibold text-gray-900 dark:text-white"},sf={class:"flex flex-wrap gap-3"},nf=["href"],rf=["href"],lf={class:"flex justify-end"},ws=3,is=10,uf="app_LlGpXReQgckcGGUo2JrYvtJK",df=ut({__name:"CreateAccountModal",props:{show:{type:Boolean},proxies:{},groups:{}},emits:["close","created"],setup(i,{emit:m}){const{t:o}=dt(),c=gn(),s=w(()=>k.platform==="openai"?o("admin.accounts.oauth.openai.title"):k.platform==="gemini"?o("admin.accounts.oauth.gemini.title"):k.platform==="antigravity"?o("admin.accounts.oauth.antigravity.title"):k.platform==="grok"?o("admin.accounts.oauth.grok.title"):o("admin.accounts.oauth.title")),b=w(()=>k.platform==="openai"?o("admin.accounts.openai.baseUrlHint"):k.platform==="gemini"?o("admin.accounts.gemini.baseUrlHint"):k.platform==="grok"?"":o("admin.accounts.baseUrlHint")),$=w(()=>k.platform==="openai"?o("admin.accounts.openai.apiKeyHint"):k.platform==="gemini"?o("admin.accounts.gemini.apiKeyHint"):k.platform==="grok"?"":o("admin.accounts.apiKeyHint")),P=i,S=m,M=pa(),L=Fn(),F=Hn(),R=Wn(),_=Gn(),y=Kn(),f=w(()=>k.platform==="openai"?F.authUrl.value:k.platform==="gemini"?R.authUrl.value:k.platform==="antigravity"?_.authUrl.value:k.platform==="grok"?y.authUrl.value:L.authUrl.value),I=w(()=>k.platform==="openai"?F.sessionId.value:k.platform==="gemini"?R.sessionId.value:k.platform==="antigravity"?_.sessionId.value:k.platform==="grok"?y.sessionId.value:L.sessionId.value),q=w(()=>k.platform==="openai"?F.loading.value:k.platform==="gemini"?R.loading.value:k.platform==="antigravity"?_.loading.value:k.platform==="grok"?y.loading.value:L.loading.value),D=w(()=>k.platform==="openai"?F.error.value:k.platform==="gemini"?R.error.value:k.platform==="antigravity"?_.error.value:k.platform==="grok"?y.error.value:L.error.value),z=p(null),ee=p(1),ke=p(!1),W=p("oauth-based"),se=p("oauth"),G=p("https://api.anthropic.com"),me=p(""),ce=p(!0),le=w(()=>{if(me.value)return{platform:k.platform,type:k.type,base_url:G.value||void 0,api_key:me.value}}),ne=p(null),te=p(null),N=p(null),x=p(null),H=p(null),K=p(null),be=p(null),fe=p(null),$e=p(null),he=p([]),Oe=p([]),Re=p("whitelist"),je=p([]),Xe=[401,403,429],Ze=p(!1),it=p(ws),ot=p("");function _t(A){if(!A||!A.trim())return[];const l=new Set,u=[];for(const Z of A.split(/[,\s]+/)){const ge=Z.trim();if(!ge)continue;const _e=Number(ge);!Number.isFinite(_e)||!Number.isInteger(_e)||_e<100||_e>599||l.has(_e)||(l.add(_e),u.push(_e))}return u.sort((Z,ge)=>Z-ge)}const tt=p(!1),Ke=p([]),we=p(null),ie=p(!1),Ce=p([]),Fe=p(!1),Je=p(""),st=()=>{if(Fe.value){const A=Je.value.trim();if(!A)return M.showError(o("admin.accounts.grokCustomBaseUrl.required")),!1;if(!/^https?:\/\//i.test(A))return M.showError(o("admin.accounts.grokCustomBaseUrl.invalid")),!1}if(ie.value){const A=Ts(Ce.value);if(A)return M.showError(o(`admin.accounts.headerOverride.${A}`)),!1}return!0},vt=A=>{Fe.value&&(A.base_url=Je.value.trim()),Gs(A,ie.value,Ce.value,"create")},At=p(!1),Ye=p(!0),$t=p(!1),mt=p(!1),ht=p(!1),Lt=p("auto"),Ft=p("auto"),kt=p(["chat_completions","embeddings"]),Ht=p(Gt),qt=p(Gt),Ct=p(!1),Ot=p(!1),ft=p(!1),Dt=p("x_a
6pi_key"),St=p("default"),Mt=p(!1),oa=()=>{mt.value=!mt.value,ht.value=!0},{globalEnabled:sa,state:He,loadGlobalState:$a,writeToExtra:la}=Bn();ye.settings.getWebSearchEmulationConfig().then(A=>{var l;Mt.value=(A==null?void 0:A.enabled)===!0&&(((l=A==null?void 0:A.providers)==null?void 0:l.length)??0)>0}).catch(()=>{Mt.value=!1}),$a();const ia=p(!1),Kt=p(!1),Et=p("oauth"),Qt=p(""),Ca=p(""),Nt=p(""),na=p("whitelist"),da=p([]),Rt=p([]),Vt=w(()=>Bo("antigravity")),Ut=w(()=>Bo("bedrock")),wt=p("sigv4"),yt=p(""),ct=p(""),ea=p(""),ca=p("us-east-1"),Jt=p(!1),zt=p(""),O=p(null),Q=p(""),pe=p(""),qe=p(""),at=p("global"),Ne=p(!1),de=p(!1),B=p([]),J=xo("create-model-mapping"),Be=xo("create-openai-compact-model-mapping"),Ie=xo("create-antigravity-model-mapping"),Ge=xo("create-temp-unsched-rule"),Wt=p("google_one"),za=p(!1),no=w(()=>[{value:"auto",label:o("admin.accounts.openai.compactModeAuto")},{value:"force_on",label:o("admin.accounts.openai.compactModeForceOn")},{value:"force_off",label:o("admin.accounts.openai.compactModeForceOff")}]),So=w(()=>[{value:"auto",label:o("admin.accounts.openai.responsesModeAuto")},{value:"force_responses",label:o("admin.accounts.openai.responsesModeForceResponses")},{value:"force_chat_completions",label:o("admin.accounts.openai.responsesModeForceChatCompletions")}]),ma=w(()=>Ft.value==="force_responses"?o("admin.accounts.openai.capabilityResponses"):Ft.value==="force_chat_completions"?o("admin.accounts.openai.capabilityChatCompletions"):o("admin.accounts.openai.capabilityTextAuto")),ua=w(()=>[{value:"chat_completions",label:ma.value},{value:"embeddings",label:o("admin.accounts.openai.capabilityEmbeddings")}]),Pt=w(()=>kt.value.includes("chat_completions")),ba=A=>{const l=["chat_completions","embeddings"],u=l.filter(Z=>A.includes(Z));return u.length>0?u:l},Na=(A,l)=>{if(kt.value.includes(A)){if(kt.value.length<=1){const u=l==null?void 0:l.target;u&&(u.checked=!0);return}kt.value=kt.value.filter(u=>u!==A),Pt.value||(Ft.value="auto");return}kt.value=ba([...kt.value,A])},Ua=A=>{const l=ba(kt.value);if(l.length===2){delete A.openai_capabilities;return}A.openai_capabilities=l};function ja(){const A={};return ia.value&&(A.mixed_scheduling=!0),Kt.value&&(A.allow_overages=!0),Object.keys(A).length>0?A:void 0}const ha=()=>ga("mapping",[],Oe.value),Aa=p(!1),Ta=p(null),co=p(""),Mo=p(null),Ga=p(!1),po=p(!1),_o=p(!1),Ba=p(!1),Sa=p(null),Ra=p(null),Ma=p(!1),Ea=p(null),Pa=p(null),fa=p(!1),Ia=p(null),Fa=p("tiered"),qa=p(null),Ka=p(""),Eo=w(()=>[{value:"",label:o("admin.accounts.quotaControl.rpmLimit.umqModeOff")},{value:"throttle",label:o("admin.accounts.quotaControl.rpmLimit.umqModeThrottle")},{value:"serialize",label:o("admin.accounts.quotaControl.rpmLimit.umqModeSerialize")}]),Oa=p(!1),Qa=p(null),ro=p([]),Ha=p(!1),Da=p(!1),Ja=p("5m"),Ve=p(!1),Ya=p(""),La=p("google_one_free"),lo=p("gcp_standard"),xa=p("aistudio_free"),Xa=w(()=>{if(k.platform!=="gemini")return"";if(W.value==="apikey")return xa.value;switch(Wt.value){case"google_one":return La.value;case"code_assist":return lo.value;default:return xa.value}}),vs=w(()=>[{value:Gt,label:o("admin.accounts.openai.wsModeOff")},{value:gs,label:o("admin.accounts.openai.wsModeCtxPool")},{value:Ms,label:o("admin.accounts.openai.wsModePassthrough")},{value:Es,label:o("admin.accounts.openai.wsModeHttpBridge")}]),Uo=w({get:()=>k.platform==="openai"&&W.value==="apikey"?qt.value:Ht.value,set:A=>{if(k.platform==="openai"&&W.value==="apikey"){qt.value=A;return}Ht.value=A}}),ys=w(()=>Qs(Uo.value)),Wa=w(()=>k.platform==="openai"&&$t.value),Ao=w(()=>Ta.value?o("admin.accounts.mixedChannelWarning",Ta.value):co.value),mo={codeAssist:"https://developers.google.com/gemini-code-assist/resources/quotas",aiStudio:"https://ai.google.dev/pricing",vertex:"https://cloud.google.com/vertex-ai/generative-ai/docs/quotas"},ko={apiKey:"https://aistudio.google.com/app/apikey",aiStudioPricing:"https://ai.google.dev/pricing",gcpProject:"https://console.cloud.google.com/welcome/new",geminiWebActivation:"https://gemini.google.com/gems/create?hl=en-US&pli=1",countryCheck:"https://policies.google.com/terms",countryChange:"https://policies.google.com/country-association-form"},Fo=w(()=>Bo(k.platform)),bs=w(()=>[{label:o("admin.accounts.tempUnschedulable.presets.overloadLabel"),rule:{error_code:529,keywords:"overloaded, too many",duration_minutes:60,description:o("admin.accounts.tempUnschedulable.presets.overloadDesc")}},{label:o("admin.accounts.tempUnschedulable.presets.rateLimitLabel"),rule:{error_code:429,keywords:"rate limit, too many requests",duration_minutes:10,description:o("admin.accounts.tempUnschedulable.presets.rateLimitDesc")}},{label:o("admin.accounts.tempUnschedulable.presets.unavailableLabel"),rule:{error_code:503,keywords:"unavailable, maintenance",duration_minutes:30,description:o("admin.accounts.tempUnschedulable.presets.unavailableDesc")}}]),k=ya({name:"",notes:"",platform:"anthropic",type:"oauth",credentials:{},proxy_id:null,concurrency:10,load_factor:null,priority:1,rate_multiplier:1,group_ids:[],expires_at:null}),Za=w(()=>k.platform==="antigravity"&&Et.value==="upstream"||k.platform==="anthropic"&&W.value==="bedrock"?!1:W.value==="oauth-based"),Ho=w(()=>{var A;return k.platform==="grok"&&((A=z.value)==null?void 0:A.inputMethod)==="sso_cookie"}),hs=w(()=>{var A;return((A=z.value)==null?void 0:A.inputMethod)==="manual"}),Ro=w({get:()=>Lo(k.expires_at),set:A=>{k.expires_at=Vo(A)}}),fs=w(()=>{var l;const A=((l=z.value)==null?void 0:l.authCode)||"";return k.platform==="openai"?A.trim()&&F.sessionId.value&&!F.loading.value:k.platform==="gemini"?A.trim()&&R.sessionId.value&&!R.loading.value:k.platform==="antigravity"?A.trim()&&_.sessionId.value&&!_.loading.value:k.platform==="grok"?A.trim()&&y.sessionId.value&&!y.loading.value:A.trim()&&L.sessionId.value&&!L.loading.value});pt(()=>P.show,A=>{A?(ye.tlsFingerprintProfiles.list().then(l=>{ro.value=l.map(u=>({id:u.id,name:u.name}))}).catch(()=>{ro.value=[]}),je.value=[...kn(k.platform)],k.platform==="antigravity"?(na.value="mapping",en().then(l=>{Rt.value=[...l]}),da.value=[]):(da.value=[],Rt.value=[],na.value="mapping")):X()}),pt([W,se,Et,()=>k.platform],([A,l,u])=>{if(k.platform==="antigravity"&&u==="upstream"){k.type="apikey";return}if(k.platform==="anthropic"&&A==="bedrock"){k.type="bedrock";return}(k.platform==="gemini"||k.platform==="anthropic")&&A==="service_account"?k.type="service_account":A==="oauth-based"?k.type=k.platform==="anthropic"?l:"oauth":k.t
6ype="apikey"},{immediate:!0}),pt(()=>k.platform,A=>{G.value=A==="openai"?"https://api.openai.com":A==="gemini"?"https://generativelanguage.googleapis.com":A==="grok"?"https://api.x.ai/v1":"https://api.anthropic.com",je.value=[],he.value=[],A==="antigravity"?(na.value="mapping",en().then(l=>{Rt.value=[...l]}),da.value=[],W.value="oauth-based",Et.value="oauth"):(Kt.value=!1,Qt.value="",da.value=[],Rt.value=[],na.value="mapping"),A==="grok"&&(W.value="oauth-based",se.value="oauth",Re.value="mapping",k.concurrency=1,k.load_factor=null),A!=="gemini"&&A!=="anthropic"&&W.value==="service_account"&&(W.value="oauth-based"),A!=="anthropic"&&W.value==="bedrock"&&(W.value="oauth-based"),yt.value="",ct.value="",ea.value="",ca.value="us-east-1",Jt.value=!1,wt.value="sigv4",zt.value="",Q.value="",pe.value="",qe.value="",at.value="global",A!=="anthropic"&&A!=="antigravity"&&(At.value=!1),A!=="openai"&&($t.value=!1,kt.value=["chat_completions","embeddings"],Ht.value=Gt,qt.value=Gt,Ct.value=!1,Ot.value=!1),A!=="anthropic"&&(ft.value=!1,Dt.value="x_api_key",St.value="default"),ie.value=!1,Ce.value=[],Fe.value=!1,Je.value="",L.resetState(),F.resetState(),R.resetState(),_.resetState(),y.resetState()}),pt([W,()=>k.platform],([A,l])=>{l==="openai"&&A!=="oauth-based"&&(Ct.value=!1,Ot.value=!1),(l!=="anthropic"||A!=="apikey")&&(ft.value=!1,Dt.value="x_api_key",St.value="default")}),pt([()=>P.show,()=>k.platform,W],async([A,l,u])=>{if(!A||l!=="gemini"||u!=="oauth-based"){za.value=!1;return}const Z=await R.getCapabilities();za.value=!!(Z!=null&&Z.ai_studio_oauth_enabled),!za.value&&Wt.value==="ai_studio"&&(Wt.value="code_assist")},{immediate:!0});const wo=A=>{if(A==="ai_studio"&&!za.value){M.showError(o("admin.accounts.oauth.gemini.aiStudioNotConfigured"));return}Wt.value=A};pt([Re,()=>k.platform],([A])=>{A==="whitelist"&&(je.value=[...kn(k.platform)])}),pt([na,()=>k.platform],([,A])=>{});const Wo=()=>{he.value.push({from:"",to:""})},Go=()=>{Oe.value.push({from:"",to:""})},Ko=A=>{Oe.value.splice(A,1)},io=A=>{he.value.splice(A,1)},Po=(A,l)=>{if(he.value.some(u=>u.from===A)){M.showInfo(o("admin.accounts.mappingExists",{model:A}));return}he.value.push({from:A,to:l})},xs=()=>{Rt.value.push({from:"",to:""})},eo=A=>{Rt.value.splice(A,1)},Qo=(A,l)=>{if(Rt.value.some(u=>u.from===A)){M.showInfo(o("admin.accounts.mappingExists",{model:A}));return}Rt.value.push({from:A,to:l})},Jo=A=>{const l=Ke.value.indexOf(A);if(l===-1){if(A===429){if(!confirm(o("admin.accounts.customErrorCodes429Warning")))return}else if(A===529&&!confirm(o("admin.accounts.customErrorCodes529Warning")))return;Ke.value.push(A)}else Ke.value.splice(l,1)},go=()=>{const A=we.value;if(A===null||A<100||A>599){M.showError(o("admin.accounts.invalidErrorCode"));return}if(Ke.value.includes(A)){M.showInfo(o("admin.accounts.errorCodeExists"));return}if(A===429){if(!confirm(o("admin.accounts.customErrorCodes429Warning")))return}else if(A===529&&!confirm(o("admin.accounts.customErrorCodes529Warning")))return;Ke.value.push(A),we.value=null},_s=A=>{const l=Ke.value.indexOf(A);l!==-1&&Ke.value.splice(l,1)},vo=A=>{if(A){B.value.push({...A});return}B.value.push({error_code:null,keywords:"",duration_minutes:30,description:""})},Yo=A=>{B.value.splice(A,1)},Io=(A,l)=>{const u=A+l;if(u<0||u>=B.value.length)return;const Z=B.value,ge=Z[A];Z[A]=Z[u],Z[u]=ge},Xo=A=>{const l=[];for(const u of A){const Z=Number(u.error_code),ge=Number(u.duration_minutes),_e=ks(u.keywords);!Number.isFinite(Z)||Z<100||Z>599||!Number.isFinite(ge)||ge<=0||_e.length!==0&&l.push({error_code:Math.trunc(Z),keywords:_e,duration_minutes:Math.trunc(ge),description:u.description.trim()})}return l},uo=A=>{if(!de.value)return delete A.temp_unschedulable_enabled,delete A.temp_unschedulable_rules,!0;const l=Xo(B.value);return l.length===0?(M.showError(o("admin.accounts.tempUnschedulable.rulesInvalid")),!1):(A.temp_unschedulable_enabled=!0,A.temp_unschedulable_rules=l,!0)},ks=A=>A.split(/[,;]/).map(l=>l.trim()).filter(l=>l.length>0),yo=A=>A==="antigravity"||A==="anthropic",qo=A=>{const l=A==null?void 0:A.details;return l?{groupName:l.group_name||"Unknown",currentPlatform:l.current_platform||"Unknown",otherPlatform:l.other_platform||"Unknown"}:null},bo=()=>{Aa.value=!1,Ta.value=null,co.value="",Mo.value=null},Zo=A=>{var l;Ta.value=qo(A.response),co.value=A.message||((l=A.response)==null?void 0:l.message)||o("admin.accounts.failedToCreate"),Mo.value=A.onConfirm,Aa.value=!0},es=A=>
6{if(yo(A.platform)&&Ga.value)return{...A,confirm_mixed_channel_risk:!0};const l={...A};return delete l.confirm_mixed_channel_risk,l},C=async A=>{var l,u,Z,ge;if(!yo(k.platform)||Ga.value)return!0;try{const _e=await ye.accounts.checkMixedChannelRisk({platform:k.platform,group_ids:k.group_ids});return _e.has_risk?(Zo({response:_e,onConfirm:async()=>{Ga.value=!0,await A()}}),!1):!0}catch(_e){return M.showError(((u=(l=_e.response)==null?void 0:l.data)==null?void 0:u.message)||((ge=(Z=_e.response)==null?void 0:Z.data)==null?void 0:ge.detail)||o("admin.accounts.failedToCreate")),!1}},d=async A=>{var l,u,Z,ge,_e,et,Ee,ze,rt;ke.value=!0;try{const Qe=await ye.accounts.create(es(A));if(A.platform==="openai"&&A.type==="apikey"&&A.upstream_billing_probe_enabled===!0)try{await ye.accounts.probeUpstreamBilling(Qe.id)}catch{M.showWarning(o("admin.accounts.upstreamBilling.probeFailed"))}M.showSuccess(o("admin.accounts.accountCreated")),S("created"),Pe()}catch(Qe){if(((l=Qe.response)==null?void 0:l.status)===409&&((Z=(u=Qe.response)==null?void 0:u.data)==null?void 0:Z.error)==="mixed_channel_warning"&&yo(k.platform)){Zo({message:(_e=(ge=Qe.response)==null?void 0:ge.data)==null?void 0:_e.message,onConfirm:async()=>{Ga.value=!0,await d(A)}});return}M.showError(((Ee=(et=Qe.response)==null?void 0:et.data)==null?void 0:Ee.message)||((rt=(ze=Qe.response)==null?void 0:ze.data)==null?void 0:rt.detail)||o("admin.accounts.failedToCreate"))}finally{ke.value=!1}},X=()=>{var A;ee.value=1,k.name="",k.notes="",k.platform="anthropic",k.type="oauth",k.credentials={},k.proxy_id=null,k.concurrency=10,k.load_factor=null,k.priority=1,k.rate_multiplier=1,k.group_ids=[],k.expires_at=null,W.value="oauth-based",se.value="oauth",G.value="https://api.anthropic.com",me.value="",ce.value=!0,ne.value=null,te.value=null,N.value=null,x.value=null,H.value=null,K.value=null,be.value=null,fe.value=null,$e.value=null,he.value=[],Oe.value=[],Re.value="whitelist",je.value=[...$r],na.value="mapping",da.value=[],en().then(l=>{Rt.value=[...l]}),Ze.value=!1,it.value=ws,ot.value="",tt.value=!1,Ke.value=[],we.value=null,ie.value=!1,Ce.value=[],Fe.value=!1,Je.value="",At.value=!1,Ye.value=!0,$t.value=!1,mt.value=!1,ht.value=!1,Lt.value="auto",Ft.value="auto",kt.value=["chat_completions","embeddings"],Ht.value=Gt,qt.value=Gt,Ct.value=!1,Ot.value=!1,ft.value=!1,Dt.value="x_api_key",St.value="default",Ba.value=!1,Sa.value=null,Ra.value=null,Ma.value=!1,Ea.value=null,Pa.value=null,fa.value=!1,Ia.value=null,Fa.value="tiered",qa.value=null,Ka.value="",Oa.value=!1,Qa.value=null,Ha.value=!1,Da.value=!1,Ja.value="5m",Ve.value=!1,Ya.value="",Kt.value=!1,Et.value="oauth",Qt.value="",Ca.value="",Nt.value="",Q.value="",pe.value="",qe.value="",at.value="global",de.value=!1,B.value=[],Wt.value="code_assist",La.value="google_one_free",lo.value="gcp_standard",xa.value="aistudio_free",L.resetState(),F.resetState(),R.resetState(),_.resetState(),y.resetState(),(A=z.value)==null||A.reset(),Ga.value=!1,bo()},Pe=()=>{Ga.value=!1,bo(),S("close")},nt=A=>{if(k.platform!=="openai")return A;const l={...A||{}};return W.value==="oauth-based"?(l.openai_oauth_responses_websockets_v2_mode=Ht.value,l.openai_oauth_responses_websockets_v2_enabled=ps(Ht.value)):W.value==="apikey"&&(l.openai_apikey_responses_websockets_v2_mode=qt.value,l.openai_apikey_responses_websockets_v2_enabled=ps(qt.value)),delete l.responses_websockets_v2_enabled,delete l.openai_ws_enabled,$t.value?l.openai_passthrough=!0:(delete l.openai_passthrough,delete l.openai_oauth_passthrough),l.openai_long_context_billing_enabled=mt.value,W.value==="oauth-based"&&Ct.value?l.codex_cli_only=!0:delete l.codex_cli_only,delete l.codex_cli_only_allowed_clients,W.value==="oauth-based"&&Ct.value&&Ot.value?l.codex_cli_only_allow_app_server=!0:delete l.codex_cli_only_allow_app_server,Lt.value!=="auto"?l.openai_compact_mode=Lt.value:delete l.openai_compact_mode,W.value==="apikey"&&Pt.value&&Ft.value!=="auto"?l.openai_responses_mode=Ft.value:delete l.openai_responses_mode,Object.keys(l).length>0?l:void 0},xe=()=>{const A=nt();if(A)return ht.value||delete A.openai_long_context_billing_enabled,Object.keys(A).length>0?A:void 0},j=A=>{if(k.platform!=="anthropic"||W.value!=="apikey")return A;const l={...A||{}};return ft.value?l.anthropic_passthrough=!0:delete l.anthropic_passthrough,Dt.value==="authorization_bearer"?l.anthropic_apikey_auth_scheme="authorization_bearer"
6:delete l.anthropic_apikey_auth_scheme,St.value==="default"?delete l.web_search_emulation:l.web_search_emulation=St.value,Object.keys(l).length>0?l:void 0},We=async A=>{await C(async()=>{await d(A)})&&await d(A)},De=async()=>{const A=Mo.value;if(!A){bo();return}bo(),ke.value=!0;try{await A()}finally{ke.value=!1}},_a=()=>{bo()},ta=A=>{if(!Number.isFinite(A))return ws;const l=Math.trunc(A);return l<0?0:l>is?is:l},$o=A=>{const l=A.trim();if(!l)return pe.value="",qe.value="",!1;try{const u=JSON.parse(l),Z=typeof u.project_id=="string"?u.project_id.trim():"",ge=typeof u.client_email=="string"?u.client_email.trim():"",_e=typeof u.private_key=="string"?u.private_key.trim():"";return!Z||!ge||!_e?(M.showError(o("admin.accounts.vertexSaJsonMissingFields")),!1):(pe.value=Z,qe.value=ge,Q.value=JSON.stringify(u),!0)}catch{return M.showError(o("admin.accounts.vertexSaJsonInvalid")),!1}},ts=()=>$o(Q.value),as=async A=>{var Z;const l=A.target,u=(Z=l.files)==null?void 0:Z[0];if(u)try{$o(await u.text())}finally{l.value=""}},os=async A=>{var u,Z;Ne.value=!1;const l=(Z=(u=A.dataTransfer)==null?void 0:u.files)==null?void 0:Z[0];l&&$o(await l.text())},ss=async()=>{if(Za.value){if(!Ho.value&&!k.name.trim()){M.showError(o("admin.accounts.pleaseEnterAccountName"));return}if(!await C(async()=>{ee.value=2}))return;ee.value=2;return}if(k.platform==="anthropic"&&W.value==="bedrock"){if(!k.name.trim()){M.showError(o("admin.accounts.pleaseEnterAccountName"));return}const Z={auth_mode:wt.value,aws_region:ca.value.trim()||"us-east-1"};if(wt.value==="sigv4"){if(!yt.value.trim()){M.showError(o("admin.accounts.bedrockAccessKeyIdRequired"));return}if(!ct.value.trim()){M.showError(o("admin.accounts.bedrockSecretAccessKeyRequired"));return}Z.aws_access_key_id=yt.value.trim(),Z.aws_secret_access_key=ct.value.trim(),ea.value.trim()&&(Z.aws_session_token=ea.value.trim())}else{if(!zt.value.trim()){M.showError(o("admin.accounts.bedrockApiKeyRequired"));return}Z.api_key=zt.value.trim()}Jt.value&&(Z.aws_force_global="true");const ge=ga(Re.value,je.value,he.value);if(ge&&(Z.model_mapping=ge),Ze.value){Z.pool_mode=!0,Z.pool_mode_retry_count=ta(it.value);const _e=_t(ot.value);_e.length>0&&(Z.pool_mode_retry_status_codes=_e)}ao(Z,At.value,"create"),await g("anthropic","bedrock",Z);return}if(k.platform==="antigravity"&&Et.value==="upstream"){if(!k.name.trim()){M.showError(o("admin.accounts.pleaseEnterAccountName"));return}if(!Ca.value.trim()){M.showError(o("admin.accounts.upstream.pleaseEnterBaseUrl"));return}if(!Nt.value.trim()){M.showError(o("admin.accounts.upstream.pleaseEnterApiKey"));return}const Z={base_url:Ca.value.trim(),api_key:Nt.value.trim()},ge=ga("mapping",[],Rt.value);ge&&(Z.model_mapping=ge),ao(Z,At.value,"create");const _e=ja();await g(k.platform,"apikey",Z,_e);return}if((k.platform==="gemini"||k.platform==="anthropic")&&W.value==="service_account"){if(!k.name.trim()){M.showError(o("admin.accounts.pleaseEnterAccountName"));return}if(!ts())return;if(!at.value.trim()){M.showError(o("admin.accounts.vertexLocationRequired"));return}const Z={service_account_json:Q.value.trim(),project_id:pe.value.trim(),client_email:qe.value.trim(),location:at.value.trim(),tier_id:"vertex"};await g(k.platform,"service_account",Z);return}if(!me.value.trim()){M.showError(o("admin.accounts.pleaseEnterApiKey"));return}const A=k.platform==="openai"?"https://api.openai.com":k.platform==="gemini"?"https://generativelanguage.googleapis.com":k.platform==="grok"?"https://api.x.ai/v1":"https://api.anthropic.com",l={base_url:G.value.trim()||A,api_key:me.value.trim()};if(k.platform==="gemini"&&(l.tier_id=xa.value),!Wa.value){const Z=ga(Re.value,je.value,he.value);Z&&(l.model_mapping=Z)}if(k.platform==="openai"){Ua(l);const Z=ha();Z&&(l.compact_model_mapping=Z)}if(Ze.value){l.pool_mode=!0,l.pool_mode_retry_count=ta(it.value);const Z=_t(ot.value);Z.length>0&&(l.pool_mode_retry_status_codes=Z)}if(tt.value&&(l.custom_error_codes_enabled=!0,l.custom_error_codes=[...Ke.value]),cs(k.platform,"apikey")){if(ie.value){const Z=Ts(Ce.value);if(Z){M.showError(o(`admin.accounts.headerOverride.${Z}`));return}}Gs(l,ie.value,Ce.value,"create")}if(ao(l,At.value,"create"),!uo(l))return;k.credentials=l;const u=j(nt());await We({...k,group_ids:k.group_ids,extra:u,upstream_billing_probe_enabled:k.platform==="openai"?ce.value:void 0,auto_pause_on_expired:Ye.value})},Oo=()=>{var A;ee.value=1,L.resetState(),F.resetState(),R.resetState(),_.resetState(),y.resetState(),(A=z.value)==null||A.reset()},ns=async()=>{var A;
6k.platform==="openai"?await F.generateAuthUrl(k.proxy_id):k.platform==="gemini"?await R.generateAuthUrl(k.proxy_id,(A=z.value)==null?void 0:A.projectId,Wt.value,Xa.value):k.platform==="antigravity"?await _.generateAuthUrl(k.proxy_id):k.platform==="grok"?await y.generateAuthUrl(k.proxy_id):await L.generateAuthUrl(se.value,k.proxy_id)},rs=A=>{k.platform==="openai"?Tt(A):k.platform==="antigravity"?As(A):k.platform==="grok"&&T(A)},Do=A=>{},Lo=Ln,Vo=Vn,g=async(A,l,u,Z)=>{if(!uo(u))return;let ge=Z;if(l==="apikey"||l==="bedrock"){const _e={...Z||{}};ne.value!=null&&ne.value>0&&(_e.quota_limit=ne.value),te.value!=null&&te.value>0&&(_e.quota_daily_limit=te.value),N.value!=null&&N.value>0&&(_e.quota_weekly_limit=N.value),x.value==="fixed"&&(_e.quota_daily_reset_mode="fixed",_e.quota_daily_reset_hour=H.value??0),K.value==="fixed"&&(_e.quota_weekly_reset_mode="fixed",_e.quota_weekly_reset_day=be.value??1,_e.quota_weekly_reset_hour=fe.value??0),(x.value==="fixed"||K.value==="fixed")&&(_e.quota_reset_timezone=$e.value||"UTC"),la(_e,"create"),Object.keys(_e).length>0&&(ge=_e)}if(A==="openai"){l==="apikey"&&Ua(u);const _e=ha();_e?u.compact_model_mapping=_e:delete u.compact_model_mapping}if(A==="grok"){u.base_url||(u.base_url=G.value.trim()||"https://api.x.ai/v1");const _e=ga(Re.value,je.value,he.value);_e?u.model_mapping=_e:delete u.model_mapping}await We({name:k.name,notes:k.notes,platform:A,type:l,credentials:u,extra:ge,proxy_id:k.proxy_id,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,group_ids:k.group_ids,expires_at:k.expires_at,auto_pause_on_expired:Ye.value})},T=async A=>{var _e,et;if(!A.trim())return;const l=A.split(`
7`).map(Ee=>Ee.trim()).filter(Ee=>Ee);if(l.length===0){y.error.value=o("admin.accounts.oauth.grok.pleaseEnterRefreshToken");return}if(!st())return;y.loading.value=!0,y.error.value="";let u=0,Z=0;const ge=[];try{for(let Ee=0;Ee<l.length;Ee++)try{const ze=await y.validateRefreshToken(l[Ee],k.proxy_id);if(!ze){Z++,ge.push(`#${Ee+1}: ${y.error.value||"Validation failed"}`),y.error.value="";continue}const rt=y.buildCredentials(ze);vt(rt);const Qe=y.buildExtraInfo(ze),xt=l.length>1?`${k.name||ze.email||"Grok OAuth Account"} #${Ee+1}`:k.name||ze.email||"Grok OAuth Account",Yt=ga(Re.value,je.value,he.value);if(Yt&&(rt.model_mapping=Yt),!uo(rt))return;await ye.accounts.create({name:xt,notes:k.notes,platform:"grok",type:"oauth",credentials:rt,extra:Qe,proxy_id:k.proxy_id,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,group_ids:k.group_ids,expires_at:k.expires_at,auto_pause_on_expired:Ye.value}),u++}catch(ze){Z++;const rt=((et=(_e=ze.response)==null?void 0:_e.data)==null?void 0:et.detail)||ze.message||"Unknown error";ge.push(`#${Ee+1}: ${rt}`)}u>0&&Z===0?(M.showSuccess(l.length>1?o("admin.accounts.oauth.batchSuccess",{count:u}):o("admin.accounts.accountCreated")),S("created"),Pe()):u>0?(M.showWarning(o("admin.accounts.oauth.batchPartialSuccess",{success:u,failed:Z})),y.error.value=ge.join(`
8`),S("created")):(y.error.value=ge.join(`
9`),M.showError(o("admin.accounts.oauth.batchFailed")))}finally{y.loading.value=!1}},ue=async A=>{var ge,_e,et,Ee;const l=A.split(`
10`).map(ze=>ze.trim()).filter(ze=>ze);if(l.length===0||!st())return;y.loading.value=!0,y.error.value="";const u={};vt(u);const Z=ga(Re.value,je.value,he.value);if(Z&&(u.model_mapping=Z),!uo(u)){y.loading.value=!1;return}try{const ze=await ye.grok.createFromSSO({sso_tokens:l,name:k.name||void 0,notes:k.notes||void 0,proxy_id:k.proxy_id,group_ids:k.group_ids,credentials:u,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,expires_at:k.expires_at,auto_pause_on_expired:Ye.value}),rt=((ge=ze.created)==null?void 0:ge.length)||0,Qe=((_e=ze.failed)==null?void 0:_e.length)||0;rt>0&&Qe===0?(M.showSuccess(l.length>1?o("admin.accounts.oauth.batchSuccess",{count:rt}):o("admin.accounts.accountCreated")),S("created"),Pe()):rt>0&&Qe>0?(M.showWarning(o("admin.accounts.oauth.batchPartialSuccess",{success:rt,failed:Qe})),y.error.value=(ze.failed||[]).map(xt=>
10`#${xt.index}: ${xt.error||"Unknown error"}`).join(`
11`),S("created")):(y.error.value=(ze.failed||[]).map(xt=>`#${xt.index}: ${xt.error||"Unknown error"}`).join(`
12`)||o("admin.accounts.oauth.grok.failedToConvertSSO"),M.showError(o("admin.accounts.oauth.batchFailed")))}catch(ze){y.error.value=((Ee=(et=ze.response)==null?void 0:et.data)==null?void 0:Ee.detail)||ze.message||o("admin.accounts.oauth.grok.failedToConvertSSO"),M.showError(y.error.value)}finally{y.loading.value=!1}},Te=async A=>{var u,Z,ge;const l=F;if(!(!A.trim()||!l.sessionId.value)){l.loading.value=!0,l.error.value="";try{const _e=(((u=z.value)==null?void 0:u.oauthState)||l.oauthState.value||"").trim();if(!_e){l.error.value=o("admin.accounts.oauth.authFailed"),M.showError(l.error.value);return}const et=await l.exchangeAuthCode(A.trim(),l.sessionId.value,_e,k.proxy_id);if(!et)return;const Ee=l.buildCredentials(et),ze=l.buildExtraInfo(et),rt=nt(ze),Qe=k.platform==="openai";if(Qe&&!Wa.value){const xt=ga(Re.value,je.value,he.value);xt&&(Ee.model_mapping=xt)}if(Qe){const xt=ha();xt&&(Ee.compact_model_mapping=xt)}if(!uo(Ee))return;Qe&&(await ye.accounts.create({name:k.name,notes:k.notes,platform:"openai",type:"oauth",credentials:Ee,extra:rt,proxy_id:k.proxy_id,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,group_ids:k.group_ids,expires_at:k.expires_at,auto_pause_on_expired:Ye.value}),M.showSuccess(o("admin.accounts.accountCreated"))),S("created"),Pe()}catch(_e){l.error.value=((ge=(Z=_e.response)==null?void 0:Z.data)==null?void 0:ge.detail)||o("admin.accounts.oauth.authFailed"),M.showError(l.error.value)}finally{l.loading.value=!1}}},Le=()=>{const A={};if(!Wa.value){const u=ga(Re.value,je.value,he.value);u&&(A.model_mapping=u)}const l=ha();return l&&(A.compact_model_mapping=l),uo(A)?A:null},Y=A=>
12(A||[]).map(l=>{const u=l.name?` ${l.name}`:"";return`#${l.index}${u}: ${l.message}`}).join(`
13`),Se=A=>{const l=u=>{if(Array.isArray(u))return u.length>0&&u.every(l);if(!u||typeof u!="object")return!1;const Z=u,ge=Z.auth_mode??Z.authMode,_e=Z.agent_identity??Z.agentIdentity;return typeof ge=="string"&&ge.toLowerCase()==="agentidentity"||!!_e&&typeof _e=="object"};try{return l(JSON.parse(A))}catch{const u=A.split(`
14`).map(Z=>Z.trim()).filter(Boolean);if(u.length===0)return!1;try{return u.every(Z=>l(JSON.parse(Z)))}catch{return!1}}},It=async A=>{var ge,_e,et,Ee,ze;const l=F,u=A.trim();if(!u){l.error.value=o("admin.accounts.oauth.openai.codexSessionEmpty");return}if(((ge=z.value)==null?void 0:ge.inputMethod)==="agent_identity"&&!Se(u)){l.error.value=o("admin.accounts.oauth.openai.agentIdentityInvalid");return}const Z=Le();if(Z!==null){l.loading.value=!0,l.error.value="";try{const rt=xe(),Qe=await ye.accounts.importCodexSession({content:u,name:k.name,notes:k.notes||null,proxy_id:k.proxy_id,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,group_ids:k.group_ids,expires_at:k.expires_at,auto_pause_on_expired:Ye.value,credential_extras:Object.keys(Z).length>0?Z:void 0,extra:rt,update_existing:!0}),xt=Qe.created+Qe.updated,Yt={created:Qe.created,updated:Qe.updated,skipped:Qe.skipped,failed:Qe.failed};if(xt>0&&Qe.failed===0){M.showSuccess(o("admin.accounts.oauth.openai.codexSessionImportSuccess",Yt)),S("created"),Pe();return}const to=Y(Qe.errors),zo=Y(Qe.warnings);if(l.error.value=[to,zo].filter(Boolean).join(`
15`),Qe.failed===0){M.showWarning(o("admin.accounts.oauth.openai.codexSessionImportSuccess",Yt));return}if(xt>0){M.showWarning(o("admin.accounts.oauth.openai.codexSessionImportPartial",Yt)),S("created");return}M.showError(o("admin.accounts.oauth.openai.codexSessionImportFailed"))}catch(rt){l.error.value=((et=(_e=rt.response)==null?void 0:_e.data)==null?void 0:et.detail)||((ze=(Ee=rt.response)==null?void 0:Ee.data)==null?void 0:ze.message)||rt.message||o("admin.accounts.oauth.openai.codexSessionImportFailed"),M.showError(l.error.value)}finally{l.loading.value=!1}}},aa=async A=>{var ge,_e,et,Ee;const l=F,u=A.trim();if(!u){l.error.value=o("admin.accounts.oauth.openai.codexPatEmpty");return}const Z=Le();if(Z!==null){l.loading.value=!0,l.error.value="";try{const ze=xe();await ye.accounts.createOpenAICodexPAT({access_token:u,name:k.name,notes:k.notes||null,proxy_id:k.proxy_id,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,group_ids:k.group_ids,expires_at:k.expires_at,auto_pause_on_expired:Ye.value,credential_extras:Object.keys(Z).length>0?Z:void 0,extra:ze}),M.showSuccess(o("admin.accounts.messages.accountCreated")),S("created"),Pe()}catch(ze){l.error.value=((_e=(ge=ze.response)==null?void 0:ge.data)==null?void 0:_e.detail)||((Ee=(et=ze.response)==null?void 0:et.data)==null?void 0:Ee.message)||ze.message||o("admin.accounts.oauth.openai.codexPatImportFailed"),M.showError(l.error.value)}finally{l.loading.value=!1}}},jt=async(A,l)=>{var ze,rt;const u=F;if(!A.trim())return;const Z=A.split(`
16`).map(Qe=>Qe.trim()).filter(Qe=>Qe);if(Z.length===0){u.error.value=o("admin.accounts.oauth.openai.pleaseEnterRefreshToken");return}u.loading.value=!0,u.error.value="";let ge=0,_e=0;const et=[],Ee=k.platform==="openai";try{for(let Qe=0;Qe<Z.length;Qe++)try{const xt=await u.validateRefreshToken(Z[Qe],k.proxy_id,l);if(!xt){_e++,et.push(`#${Qe+1}: ${u.error.value||"Validation failed"}`),u.error.value="";continue}const Yt=u.buildCredentials(xt);l&&(Yt.client_id=l);const to=u.buildExtraInfo(xt),zo=nt(to);if(Ee&&!Wa.value){const Va=ga(Re.value,je.value,he.value);Va&&(Yt.model_mapping=Va)}if(Ee){const Va=ha();Va&&(Yt.compact_model_mapping=Va)}const Xt=k.name||xt.email||"OpenAI OAuth Account",ls=Z.length>1?`${Xt} #${Qe+1}`:Xt;Ee&&await ye.accounts.create({name:ls,notes:k.notes,platform:"openai",type:"oauth",credentials:Yt,extra:zo,proxy_id:k.proxy_id,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,group_ids:k.group_ids,expires_at:k.expires_at,auto_pause_on_expired:Ye.value}),ge++}catch(xt){_e++;const Yt=((rt=(ze=xt.response)==null?void 0:ze.data)==null?void 0:rt.detail)||xt.message||"Unknown error";et.push(`#${Qe+1}: ${Yt}`)}ge>0&&_e===0?(M.showSuccess(Z.length>1?o("admin.accounts.oauth.batchSuccess",{count:ge}):o("admin.accounts.accountCreated")),S("created"),Pe()):ge>0&&_e>0?(M.showWarning(o("admin.accounts.oauth.batchPartialSuccess",{success:ge,failed:_e})),u.error.value=et.join(`
17`),S("created")):(u.error.value=et.join(`
18`),M.showError(o("admin.accounts.oauth.batchFailed")))}finally{u.loading.value=!1}},Tt=A=>jt(A),Us=A=>jt(A,uf),As=async A=>{var _e,et;if(!A.trim())return;const l=A.split(`
19`).map(Ee=>Ee.trim()).filter(Ee=>Ee);if(l.length===0){_.error.value=o("admin.accounts.oauth.antigravity.pleaseEnterRefreshToken");return}_.loading.value=!0,_.error.value="";let u=0,Z=0;const ge=[];try{for(let Ee=0;Ee<l.length;Ee++)try{const ze=await _.validateRefreshToken(l[Ee],k.proxy_id);if(!ze){Z++,ge.push(`#${Ee+1}: ${_.error.value||"Validation failed"}`),_.error.value="";continue}const rt=_.buildCredentials(ze,l[Ee]);cn(rt,Qt.value,"create");const Qe=l.length>1?`${k.name} #${Ee+1}`:k.name,xt=es({name:Qe,notes:k.notes,platform:"antigravity",type:"oauth",credentials:rt,extra:{},proxy_id:k.proxy_id,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,group_ids:k.group_ids,expires_at:k.expires_at,auto_pause_on_expired:Ye.value});await ye.accounts.create(xt),u++}catch(ze){Z++;const rt=((et=(_e=ze.response)==null?void 0:_e.data)==null?void 0:et.detail)||ze.message||"Unknown error";ge.push(`#${Ee+1}: ${rt}`)}u>0&&Z===0?(M.showSuccess(l.length>1?o("admin.accounts.oauth.batchSuccess",{count:u}):o("admin.accounts.accountCreated")),S("created"),Pe()):u>0&&Z>0?(M.showWarning(o("admin.accounts.oauth.batchPartialSuccess",{success:u,failed:Z})),_.error.value=ge.join(`
20`),S("created")):(_.error.value=ge.join(`
21`),M.showError(o("admin.accounts.oauth.batchFailed")))}finally{_.loading.value=!1}},Rs=async A=>{var l,u,Z;if(!(!A.trim()||!R.sessionId.value)){R.loading.value=!0,R.error.value="";try{const _e=((l=z.value)==null?void 0:l.oauthState)||""||R.state.value;if(!_e){R.error.value=o("admin.accounts.oauth.authFailed"),M.showError(R.error.value);return}const et=await R.exchangeAuthCode({code:A.trim(),sessionId:R.sessionId.value,state:_e,proxyId:k.proxy_id,oauthType:Wt.value,tierId:Xa.value});if(!et)return;const Ee=R.buildCredentials(et),ze=R.buildExtraInfo(et);await g("gemini","oauth",Ee,ze)}catch(ge){R.error.value=((Z=(u=ge.response)==null?void 0:u.data)==null?void 0:Z.detail)||o("admin.accounts.oauth.authFailed"),M.showError(R.error.value)}finally{R.loading.value=!1}}},Ps=async A=>{var l,u,Z;if(!(!A.trim()||!_.sessionId.value)){_.loading.value=!0,_.error.value="";try{const _e=((l=z.value)==null?void 0:l.oauthState)||""||_.state.value;if(!_e){_.error.value=o("admin.accounts.oauth.authFailed"),M.showError(_.error.value);return}const et=await _.exchangeAuthCode({code:A.trim(),sessionId:_.sessionId.value,state:_e,proxyId:k.proxy_id});if(!et)return;const Ee=_.buildCredentials(et);cn(Ee,Qt.value,"create"),ao(Ee,At.value,"create");const ze=ga("mapping",[],Rt.value);ze&&(Ee.model_mapping=ze);const rt=ja();await g("antigravity","oauth",Ee,rt)}catch(ge){_.error.value=((Z=(u=ge.response)==null?void 0:u.data)==null?void 0:Z.detail)||o("admin.accounts.oauth.authFailed"),M.showError(_.error.value)}finally{_.loading.value=!1}}},Is=async A=>{var l,u,Z;if(!(!A.trim()||!y.sessionId.value)&&st()){y.loading.value=!0,y.error.value="";try{const _e=((l=z.value)==null?void 0:l.oauthState)||""||y.state.value;if(!_e){y.error.value=o("admin.accounts.oauth.authFailed"),M.showError(y.error.value);return}
21const et=await y.exchangeAuthCode({code:A.trim(),sessionId:y.sessionId.value,state:_e,proxyId:k.proxy_id});if(!et)return;const Ee=y.buildCredentials(et);vt(Ee);const ze=y.buildExtraInfo(et);await g("grok","oauth",Ee,ze)}catch(ge){y.error.value=((Z=(u=ge.response)==null?void 0:u.data)==null?void 0:Z.detail)||o("admin.accounts.oauth.authFailed"),M.showError(y.error.value)}finally{y.loading.value=!1}}},qs=async A=>{var l,u;if(!(!A.trim()||!L.sessionId.value)){L.loading.value=!0,L.error.value="";try{const Z=k.proxy_id?{proxy_id:k.proxy_id}:{},ge=se.value==="oauth"?"/admin/accounts/exchange-code":"/admin/accounts/exchange-setup-token-code",_e=await ye.accounts.exchangeCode(ge,{session_id:L.sessionId.value,code:A.trim(),...Z}),Ee={...L.buildExtraInfo(_e)||{}};Ba.value&&Sa.value!=null&&Sa.value>0&&(Ee.window_cost_limit=Sa.value,Ee.window_cost_sticky_reserve=Ra.value??10),Ma.value&&Ea.value!=null&&Ea.value>0&&(Ee.max_sessions=Ea.value,Ee.session_idle_timeout_minutes=Pa.value??5),fa.value&&(Ee.base_rpm=Ia.value!=null&&Ia.value>0?Ia.value:15,Ee.rpm_strategy=Fa.value,qa.value!=null&&qa.value>0&&(Ee.rpm_sticky_buffer=qa.value)),Ka.value&&(Ee.user_msg_queue_mode=Ka.value),Oa.value&&(Ee.enable_tls_fingerprint=!0,Qa.value&&(Ee.tls_fingerprint_profile_id=Qa.value)),Ha.value&&(Ee.session_id_masking_enabled=!0),Da.value&&(Ee.cache_ttl_override_enabled=!0,Ee.cache_ttl_override_target=Ja.value),Ve.value&&Ya.value.trim()&&(Ee.custom_base_url_enabled=!0,Ee.custom_base_url=Ya.value.trim());const ze={..._e};ao(ze,At.value,"create"),await g(k.platform,se.value,ze,Ee)}catch(Z){L.error.value=((u=(l=Z.response)==null?void 0:l.data)==null?void 0:u.detail)||o("admin.accounts.oauth.authFailed"),M.showError(L.error.value)}finally{L.loading.value=!1}}},Os=async()=>{var l;const A=((l=z.value)==null?void 0:l.authCode)||"";switch(k.platform){case"openai":return Te(A);case"gemini":return Rs(A);case"antigravity":return Ps(A);case"grok":return Is(A);default:return qs(A)}},Ds=async A=>{var l,u,Z,ge;L.loading.value=!0,L.error.value="";try{const _e=k.proxy_id?{proxy_id:k.proxy_id}:{},et=L.parseSessionKeys(A);if(et.length===0){L.error.value=o("admin.accounts.oauth.pleaseEnterSessionKey");return}const Ee=de.value?Xo(B.value):[];if(de.value&&Ee.length===0){M.showError(o("admin.accounts.tempUnschedulable.rulesInvalid"));return}const ze=se.value==="oauth"?"/admin/accounts/cookie-auth":"/admin/accounts/setup-token-cookie-auth";let rt=0,Qe=0;const xt=[];for(let Yt=0;Yt<et.length;Yt++)try{const to=await ye.accounts.exchangeCode(ze,{session_id:"",code:et[Yt],..._e}),Xt={...L.buildExtraInfo(to)||{}};Ba.value&&Sa.value!=null&&Sa.value>0&&(Xt.window_cost_limit=Sa.value,Xt.window_cost_sticky_reserve=Ra.value??10),Ma.value&&Ea.value!=null&&Ea.value>0&&(Xt.max_sessions=Ea.value,Xt.session_idle_timeout_minutes=Pa.value??5),fa.value&&(Xt.base_rpm=Ia.value!=null&&Ia.value>0?Ia.value:15,Xt.rpm_strategy=Fa.value,qa.value!=null&&qa.value>0&&(Xt.rpm_sticky_buffer=qa.value)),Ka.value&&(Xt.user_msg_queue_mode=Ka.value),Oa.value&&(Xt.enable_tls_fingerprint=!0,Qa.value&&(Xt.tls_fingerprint_profile_id=Qa.value)),Ha.value&&(Xt.session_id_masking_enabled=!0),Da.value&&(Xt.cache_ttl_override_enabled=!0,Xt.cache_ttl_override_target=Ja.value),Ve.value&&Ya.value.trim()&&(Xt.custom_base_url_enabled=!0,Xt.custom_base_url=Ya.value.trim());const ls=et.length>1?`${k.name} #${Yt+1}`:k.name,Va={...to};ao(Va,At.value,"create"),de.value&&(Va.temp_unschedulable_enabled=!0,Va.temp_unschedulable_rules=Ee),await ye.accounts.create({name:ls,notes:k.notes,platform:k.platform,type:se.value,credentials:Va,extra:Xt,proxy_id:k.proxy_id,concurrency:k.concurrency,load_factor:k.load_factor??void 0,priority:k.priority,rate_multiplier:k.rate_multiplier,group_ids:k.group_ids,expires_at:k.expires_at,auto_pause_on_expired:Ye.value}),rt++}catch(to){Qe++,xt.push(o("admin.accounts.oauth.keyAuthFailed",{index:Yt+1,error:((u=(l=to.response)==null?void 0:l.data)==null?void 0:u.detail)||o("admin.accounts.oauth.authFailed")}))}rt>0&&(M.showSuccess(o("admin.accounts.oauth.successCreated",{count:rt})),Qe===0?(S("created"),Pe()):S("created")),Qe>0&&(L.error.value=xt.join(`
22`))}catch(_e){L.error.value=((ge=(Z=_e.response)==null?void 0:Z.data)==null?void 0:ge.detail)||o("admin.accounts.oauth.cookieAuthFailed")}finally{L.loading.value=!1}};return(A,l)=>(n(),r(ve,null,[U(wa,{show:i.show,title:t(o)("admin.accounts.createAccount"),width:"wide",onClose:Pe},{footer:Me(()=>[ee.value===1?(n(),r("div",gh,[e("button",{onClick:Pe,type:"button",class:"btn btn-secondary"},a(t(o)("common.cancel")),1),e("button",{type:"submit",form:"create-account-form",disabled:ke.value,class:"btn btn-primary","data-tour":"account-form-submit"},[ke.value?(n(),r("svg",yh,[...l[206]||(l[206]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):v("",!0),oe(" "+a(Za.value?t(o)("common.next"):ke.value?t(o)("admin.accounts.creating"):t(o)("common.create")),1)],8,vh)])):(n(),r("div",bh,[e("button",{type:"button",class:"btn btn-secondary",onClick:Oo}
22,a(t(o)("common.back")),1),hs.value?(n(),r("button",{key:0,type:"button",disabled:!fs.value,class:"btn btn-primary",onClick:Os},[q.value?(n(),r("svg",fh,[...l[207]||(l[207]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):v("",!0),oe(" "+a(q.value?t(o)("admin.accounts.oauth.verifying"):t(o)("admin.accounts.oauth.completeAuth")),1)],8,hh)):v("",!0)]))]),default:Me(()=>[Za.value?(n(),r("div",xd,[e("div",_d,[e("div",kd,[e("div",{class:E(["flex h-8 w-8 items-center justify-center rounded-full text-sm font-semibold",ee.value>=1?"bg-primary-500 text-white":"bg-gray-200 text-gray-500 dark:bg-dark-600"])}," 1 ",2),e("span",wd,a(t(o)("admin.accounts.oauth.authMethod")),1)]),l[157]||(l[157]=e("div",{class:"h-0.5 w-8 bg-gray-300 dark:bg-dark-600"},null,-1)),e("div",$d,[e("div",{class:E(["flex h-8 w-8 items-center justify-center rounded-full text-sm font-semibold",ee.value>=2?"bg-primary-500 text-white":"bg-gray-200 text-gray-500 dark:bg-dark-600"])}," 2 ",2),e("span",Cd,a(s.value),1)])])])):v("",!0),ee.value===1?(n(),r("form",{key:1,id:"create-account-form",onSubmit:Bt(ss,["prevent"]),class:"space-y-5"},[e("div",null,[e("label",Td,a(t(o)("admin.accounts.accountName")),1),V(e("input",{"onUpdate:modelValue":l[0]||(l[0]=u=>k.name=u),type:"text",required:!Ho.value,class:"input",placeholder:t(o)("admin.accounts.enterAccountName"),"data-tour":"account-form-name"},null,8,Sd),[[re,k.name]])]),e("div",null,[e("label",Md,a(t(o)("admin.accounts.notes")),1),V(e("textarea",{"onUpdate:modelValue":l[1]||(l[1]=u=>k.notes=u),rows:"3",class:"input",placeholder:t(o)("admin.accounts.notesPlaceholder")},null,8,Ed),[[re,k.notes]]),e("p",Ud,a(t(o)("admin.accounts.notesHint")),1)]),e("div",null,[e("label",Ad,a(t(o)("admin.accounts.platform")),1),e("div",Rd,[e("button",{type:"button",onClick:l[2]||(l[2]=u=>k.platform="anthropic"),class:E(["flex flex-1 items-center justify-center gap-2 rounded-md px-4 py-2.5 text-sm font-medium transition-all",k.platform==="anthropic"?"bg-white text-orange-600 shadow-sm dark:bg-dark-600 dark:text-orange-400":"text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-200"])},[U(ae,{name:"sparkles",size:"sm"}),l[158]||(l[158]=oe(" Anthropic ",-1))],2),e("button",{type:"button",onClick:l[3]||(l[3]=u=>k.platform="openai"),class:E(["flex flex-1 items-center justify-center gap-2 rounded-md px-4 py-2.5 text-sm font-medium transition-all",k.platform==="openai"?"bg-white text-green-600 shadow-sm dark:bg-dark-600 dark:text-green-400":"text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-200"])},[...l[159]||(l[159]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3.75 13.5l10.5-11.25L12 10.5h8.25L9.75 21.75 12 13.5H3.75z"})],-1),oe(" OpenAI ",-1)])],2),e("button",{type:"button",onClick:l[4]||(l[4]=u=>k.platform="gemini"),class:E(["flex flex-1 items-center justify-center gap-2 rounded-md px-4 py-2.5 text-sm font-medium transition-all",k.platform==="gemini"?"bg-white text-blue-600 shadow-sm dark:bg-dark-600 dark:text-blue-400":"text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-200"])},[...l[160]||(l[160]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 2l1.5 6.5L20 10l-6.5 1.5L12 18l-1.5-6.5L4 10l6.5-1.5L12 2z"})],-1),oe(" Gemini ",-1)])],2),e("button",{type:"button",onClick:l[5]||(l[5]=u=>k.platform="antigravity"),class:E(["flex flex-1 items-center justify-center gap-2 rounded-md px-4 py-2.5 text-sm font-medium transition-all",k.platform==="antigravity"?"bg-white text-purple-600 shadow-sm dark:bg-dark-600 dark:text-purple-400":"text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-200"])},[U(ae,{name:"cloud",size:"sm"}),l[161]||(l[161]=oe(" Antigravity ",-1))],2),e("button",{type:"button",onClick:l[6]||(l[6]=u=>k.platform="grok"),class:E(["flex flex-1 items-center justify-center gap-2 rounded-md px-4 py-2.5 text-sm font-medium transition-all",k.platform==="grok"?"bg-white text-zinc-900 shadow-sm dark:bg-dark-600 dark:text-zinc-100":"text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-200"])},[U(wn,{platform:"grok",size:"sm"}),l[162]||(l[162]=oe(" Grok ",-1))],2)])]),k.platform==="anthropic"?(n(),r("div",Pd,[e("label",Id,a(t(o)("admin.accounts.accountType")),1),e("div",qd,[e("button",{type:"button",onClick:l[7]||(l[7]=u=>W.value="oauth-based"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="oauth-based"?"border-orange-500 bg-orange-50 dark:bg-orange-900/20":"border-gray-200 hover:border-orange-300 dark:border-dark-600 dark:hover:border-orange-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="oauth-based"?"bg-orange-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"sparkles",size:"sm"})],2),e("div",null,[e("span",Od,a(t(o)("admin.accounts.claudeCode")),1),e("span",Dd,a(t(o)("admin.accounts.oauthSetupToken")),1)])],2),e("button",{type:"button",onClick:l[8]||(l[8]=u=>W.value="apikey"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="apikey"?"border-purple-500 bg-purple-50 dark:bg-purple-900/20":"border-gray-200 hover:border-purple-300 dark:border-dark-600 dark:hover:border-purple-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="apikey"?"bg-purple-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"key",size:"sm"})],2),e("div",null,[e("span",Ld,a(t(o)("admin.accounts.claudeConsole")),1),e("span",Vd,a(t(o)("admin.accounts.apiKey")),1)])],2),e("button",{type:"button",onClick:l[9]||(l[9]=u=>W.value="bedrock"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="bedrock"?"border-amber-500 bg-amber-50 dark:bg-amber-900/20":"border-gray-200 hover:border-amber-300 dark:border-dark-600 dark:hover:border-amber-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="bedrock"?"bg-amber-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"cloud",size:"sm"})],2),e("div",null,[e("span",zd,a(t(o)("admin.accounts.bedrockLabel")),1),e("span",Nd,a(t(o)("admin.accounts.bedrockDesc")),1
22)])],2),e("button",{type:"button",onClick:l[10]||(l[10]=u=>W.value="service_account"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="service_account"?"border-sky-500 bg-sky-50 dark:bg-sky-900/20":"border-gray-200 hover:border-sky-300 dark:border-dark-600 dark:hover:border-sky-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="service_account"?"bg-sky-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"cloud",size:"sm"})],2),l[163]||(l[163]=e("div",null,[e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"},"Vertex"),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"},"Service Account")],-1))],2)]),W.value==="service_account"?(n(),r("div",jd,[e("p",null,a(t(o)("admin.accounts.vertexAnthropicHint")),1)])):v("",!0)])):v("",!0),k.platform==="openai"?(n(),r("div",Bd,[e("label",Fd,a(t(o)("admin.accounts.accountType")),1),e("div",Hd,[e("button",{type:"button",onClick:l[11]||(l[11]=u=>W.value="oauth-based"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="oauth-based"?"border-green-500 bg-green-50 dark:bg-green-900/20":"border-gray-200 hover:border-green-300 dark:border-dark-600 dark:hover:border-green-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="oauth-based"?"bg-green-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"key",size:"sm"})],2),e("div",null,[l[164]||(l[164]=e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"},"OAuth",-1)),e("span",Wd,a(t(o)("admin.accounts.types.chatgptOauth")),1)])],2),e("button",{type:"button",onClick:l[12]||(l[12]=u=>W.value="apikey"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="apikey"?"border-purple-500 bg-purple-50 dark:bg-purple-900/20":"border-gray-200 hover:border-purple-300 dark:border-dark-600 dark:hover:border-purple-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="apikey"?"bg-purple-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"key",size:"sm"})],2),e("div",null,[l[165]||(l[165]=e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"},"API Key",-1)),e("span",Gd,a(t(o)("admin.accounts.types.responsesApi")),1)])],2)])])):v("",!0),k.platform==="grok"?(n(),r("div",Kd,[e("label",Qd,a(t(o)("admin.accounts.accountType")),1),e("div",Jd,[e("button",{type:"button",onClick:l[13]||(l[13]=u=>W.value="oauth-based"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="oauth-based"?"border-zinc-800 bg-zinc-50 dark:bg-zinc-900/30":"border-gray-200 hover:border-zinc-400 dark:border-dark-600 dark:hover:border-zinc-600"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="oauth-based"?"bg-zinc-900 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(wn,{platform:"grok",size:"sm"})],2),e("div",null,[l[166]||(l[166]=e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"},"OAuth",-1)),e("span",Yd,a(t(o)("admin.accounts.types.grokOauth")),1)])],2),e("button",{type:"button","data-testid":"grok-account-type-api-key",onClick:l[14]||(l[14]=u=>W.value="apikey"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="apikey"?"border-purple-500 bg-purple-50 dark:bg-purple-900/20":"border-gray-200 hover:border-purple-300 dark:border-dark-600 dark:hover:border-purple-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="apikey"?"bg-purple-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"key",size:"sm"})],2),e("div",null,[l[167]||(l[167]=e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"},"API Key",-1)),e("span",Xd,a(t(o)("admin.accounts.types.responsesApi")),1)])],2)])])):v("",!0),k.platform==="gemini"?(n(),r("div",Zd,[e("div",ec,[e("label",tc,a(t(o)("admin.accounts.accountType")),1),e("button",{type:"button",onClick:l[15]||(l[15]=u=>_o.value=!0),class:"flex items-center gap-1 rounded px-2 py-1 text-xs text-blue-600 hover:bg-blue-50 dark:text-blue-400 dark:hover:bg-blue-900/20"},[l[168]||(l[168]=e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"}
22)],-1)),oe(" "+a(t(o)("admin.accounts.gemini.helpButton")),1)])]),e("div",ac,[e("button",{type:"button",onClick:l[16]||(l[16]=u=>W.value="oauth-based"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="oauth-based"?"border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border-gray-200 hover:border-blue-300 dark:border-dark-600 dark:hover:border-blue-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="oauth-based"?"bg-blue-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"key",size:"sm"})],2),e("div",null,[e("span",oc,a(t(o)("admin.accounts.gemini.accountType.oauthTitle")),1),e("span",sc,a(t(o)("admin.accounts.gemini.accountType.oauthDesc")),1)])],2),e("button",{type:"button",onClick:l[17]||(l[17]=u=>W.value="apikey"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="apikey"?"border-purple-500 bg-purple-50 dark:bg-purple-900/20":"border-gray-200 hover:border-purple-300 dark:border-dark-600 dark:hover:border-purple-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="apikey"?"bg-purple-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[...l[169]||(l[169]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15.75 5.25a3 3 0 013 3m3 0a6 6 0 01-7.029 5.912c-.563-.097-1.159.026-1.563.43L10.5 17.25H8.25v2.25H6v2.25H2.25v-2.818c0-.597.237-1.17.659-1.591l6.499-6.499c.404-.404.527-1 .43-1.563A6 6 0 1721.75 8.25z"})],-1)])],2),e("div",null,[e("span",nc,a(t(o)("admin.accounts.gemini.accountType.apiKeyTitle")),1),e("span",rc,a(t(o)("admin.accounts.gemini.accountType.apiKeyDesc")),1)])],2),e("button",{type:"button",onClick:l[18]||(l[18]=u=>W.value="service_account"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",W.value==="service_account"?"border-sky-500 bg-sky-50 dark:bg-sky-900/20":"border-gray-200 hover:border-sky-300 dark:border-dark-600 dark:hover:border-sky-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",W.value==="service_account"?"bg-sky-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"cloud",size:"sm"})],2),l[170]||(l[170]=e("div",null,[e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"}," Vertex "),e("span",{class:"text-xs text-gray-500 dark:text-gray-400"}," Service Account ")],-1))],2)]),W.value==="apikey"?(n(),r("div",lc,[e("p",null,a(t(o)("admin.accounts.gemini.accountType.apiKeyNote")),1),e("div",ic,[e("a",{href:ko.apiKey,class:"font-medium text-blue-600 hover:underline dark:text-blue-400",target:"_blank",rel:"noreferrer"},a(t(o)("admin.accounts.gemini.accountType.apiKeyLink")),9,uc)])])):v("",!0),W.value==="service_account"?(n(),r("div",dc,[e("p",null,a(t(o)("admin.accounts.vertexGeminiHint")),1)])):v("",!0),W.value==="oauth-based"?(n(),r("div",cc,[e("label",pc,a(t(o)("admin.accounts.oauth.gemini.oauthTypeLabel")),1),e("div",mc,[e("button",{type:"button",onClick:l[19]||(l[19]=u=>wo("google_one")),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",Wt.value==="google_one"?"border-purple-500 bg-purple-50 dark:bg-purple-900/20":"border-gray-200 hover:border-purple-300 dark:border-dark-600 dark:hover:border-purple-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",Wt.value==="google_one"?"bg-purple-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"user",size:"sm"})],2),e("div",gc,[l[171]||(l[171]=e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"}," Google One ",-1)),e("span",vc,a(t(o)("admin.accounts.gemini.oauthType.googleOneDesc")),1),e("div",yc,[e("span",bc,a(t(o)("admin.accounts.gemini.oauthType.badges.individuals")),1),e("span",hc,a(t(o)("admin.accounts.gemini.oauthType.badges.noGcp")),1)])])],2),e("button",{type:"button",onClick:l[20]||(l[20]=u=>wo("code_assist")),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",Wt.value==="code_assist"?"border-blue-500 bg-blue-50 dark:bg-blue-900/20":"border-gray-200 hover:border-blue-300 dark:border-dark-600 dark:hover:border-blue-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",Wt.value==="code_assist"?"bg-blue-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"cloud",size:"sm"})],2),e("div",fc,[l[172]||(l[172]=e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"}," GCP Code Assist ",-1)),e("span",xc,a(t(o)("admin.accounts.gemini.oauthType.codeAssistDesc")),1
22),e("div",_c,[oe(a(t(o)("admin.accounts.gemini.oauthType.codeAssistRequirement"))+" ",1),e("a",{href:ko.gcpProject,class:"ml-1 text-blue-600 hover:underline dark:text-blue-400",target:"_blank",rel:"noreferrer"},a(t(o)("admin.accounts.gemini.oauthType.gcpProjectLink")),9,kc)]),e("div",wc,[e("span",$c,a(t(o)("admin.accounts.gemini.oauthType.badges.enterprise")),1),e("span",Cc,a(t(o)("admin.accounts.gemini.oauthType.badges.highConcurrency")),1)])])],2)]),e("div",Tc,[e("button",{type:"button",onClick:l[21]||(l[21]=u=>po.value=!po.value),class:"flex items-center gap-2 text-sm text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-200"},[(n(),r("svg",{class:E(["h-4 w-4 transition-transform",po.value?"rotate-90":""]),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[...l[173]||(l[173]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 5l7 7-7 7"},null,-1)])],2)),e("span",null,a(po.value?t(o)("admin.accounts.gemini.oauthType.hideAdvanced"):t(o)("admin.accounts.gemini.oauthType.showAdvanced")),1)])]),po.value?(n(),r("div",Sc,[e("button",{type:"button",disabled:!za.value,onClick:l[22]||(l[22]=u=>wo("ai_studio")),class:E(["flex w-full items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",za.value?"":"cursor-not-allowed opacity-60",Wt.value==="ai_studio"?"border-amber-500 bg-amber-50 dark:bg-amber-900/20":"border-gray-200 hover:border-amber-300 dark:border-dark-600 dark:hover:border-amber-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",Wt.value==="ai_studio"?"bg-amber-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[...l[174]||(l[174]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9.813 15.904L9 18.75l-.813-2.846a4.5 4.5 0 00-3.09-3.09L2.25 12l2.846-.813a4.5 4.5 0 003.09-3.09L9 5.25l.813 2.846a4.5 4.5 0 003.09 3.09L15.75 12l-2.846.813a4.5 4.5 0 00-3.09 3.09z"})],-1)])],2),e("div",Ec,[e("span",Uc,a(t(o)("admin.accounts.gemini.oauthType.customTitle")),1),e("span",Ac,a(t(o)("admin.accounts.gemini.oauthType.customDesc")),1),e("div",Rc,a(t(o)("admin.accounts.gemini.oauthType.customRequirement")),1),e("div",Pc,[e("span",Ic,a(t(o)("admin.accounts.gemini.oauthType.badges.orgManaged")),1),e("span",qc,a(t(o)("admin.accounts.gemini.oauthType.badges.adminRequired")),1)])]),za.value?v("",!0):(n(),r("span",Oc,a(t(o)("admin.accounts.oauth.gemini.aiStudioNotConfiguredShort")),1))],10,Mc),za.value?v("",!0):(n(),r("div",Dc,a(t(o)("admin.accounts.oauth.gemini.aiStudioNotConfiguredTip")),1))])):v("",!0)])):v("",!0),W.value!=="service_account"?(n(),r("div",Lc,[e("label",Vc,a(t(o)("admin.accounts.gemini.tier.label")),1),e("div",zc,[Wt.value==="google_one"?V((n(),r("select",{key:0,"onUpdate:modelValue":l[23]||(l[23]=u=>La.value=u),class:"input"},[e("option",Nc,a(t(o)("admin.accounts.gemini.tier.googleOne.free")),1),e("option",jc,a(t(o)("admin.accounts.gemini.tier.googleOne.pro")),1),e("option",Bc,a(t(o)("admin.accounts.gemini.tier.googleOne.ultra")),1)],512)),[[ka,La.value]]):Wt.value==="code_assist"?V((n(),r("select",{key:1,"onUpdate:modelValue":l[24]||(l[24]=u=>lo.value=u),class:"input"},[e("option",Fc,a(t(o)("admin.accounts.gemini.tier.gcp.standard")),1),e("option",Hc,a(t(o)("admin.accounts.gemini.tier.gcp.enterprise")),1)],512)),[[ka,lo.value]]):V((n(),r("select",{key:2,"onUpdate:modelValue":l[25]||(l[25]=u=>xa.value=u),class:"input"},[e("option",Wc,a(t(o)("admin.accounts.gemini.tier.aiStudio.free")),1),e("option",Gc,a(t(o)("admin.accounts.gemini.tier.aiStudio.paid")),1)],512)),[[ka,xa.value]])]),e("p",Kc,a(t(o)("admin.accounts.gemini.tier.hint")),1)])):v("",!0)])):v("",!0),k.platform==="antigravity"?(n(),r("div",Qc,[e("label",Jc,a(t(o)("admin.accounts.accountType")),1),e("div",Yc,[e("button",{type:"button",onClick:l[26]||(l[26]=u=>Et.value="oauth"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",Et.value==="oauth"?"border-purple-500 bg-purple-50 dark:bg-purple-900/20":"border-gray-200 hover:border-purple-300 dark:border-dark-600 dark:hover:border-purple-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",Et.value==="oauth"?"bg-purple-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"key",size:"sm"})],2),e("div",null,[l[175]||(l[175]=e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"},"OAuth",-1)),e("span",Xc,a(t(o)("admin.accounts.types.antigravityOauth")),1)])],2),e("button",{type:"button",onClick:l[27]||(l[27]=u=>Et.value="upstream"),class:E(["flex items-center gap-3 rounded-lg border-2 p-3 text-left transition-all",Et.value==="upstream"?"border-purple-500 bg-purple-50 dark:bg-purple-900/20":"border-gray-200 hover:border-purple-300 dark:border-dark-600 dark:hover:border-purple-700"])},[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",Et.value==="upstream"?"bg-purple-500 text-white":"bg-gray-100 text-gray-500 dark:bg-dark-600 dark:text-gray-400"])},[U(ae,{name:"cloud",size:"sm"})],2),e("div",null,[l[176]||(l[176]=e("span",{class:"block text-sm font-medium text-gray-900 dark:text-white"},"API Key",-1)),e("span",Zc,a(t(o)("admin.accounts.types.antigravityApikey")),1)])],2)])])):v("",!0),k.platform==="antigravity"&&Et.value==="oauth"?(n(),r("div",e0,[e("label",t0,a(t(o)("admin.accounts.antigravityProjectIdLabel")),1),V(e("input",{"onUpdate:modelValue":l[28]||(l[28]=u=>Qt.value=u),"data-testid":"antigravity-project-id-input",type:"text",class:"input font-mono",placeholder:t(o)("admin.accounts.antigravityProjectIdPlaceholder")},null,8,a0),[[re,Qt.value]]),e("p",o0,a(t(o)("admin.accounts.antigravityProjectIdHint")),1)])):v("",!0),k.platform==="antigravity"&&Et.value==="upstream"?(n(),r("div",s0,[e("div",null,[e("label",n0,a(t(o)("admin.accounts.upstream.baseUrl")),1),V(e("input",{"onUpdate:modelValue":l[29]||(l[29]=u=>Ca.value=u),type:"text",required:"",class:"input",placeholder:"https://cloudcode-pa.googleapis.com"},null,512),[[re,Ca.value]]),e("p",r0,a(t(o)("admin.accounts.upstream.baseUrlHint")),1)]),e("div",null,[e("label",l0,a(t(o)("admin.accounts.upstream.apiKey")),1),V(e("input",{"onUpdate:modelValue":l[30]||(l[30]=u
22=>Nt.value=u),type:"password",required:"",class:"input font-mono",placeholder:"sk-..."},null,512),[[re,Nt.value]]),e("p",i0,a(t(o)("admin.accounts.upstream.apiKeyHint")),1)])])):v("",!0),(k.platform==="gemini"||k.platform==="anthropic")&&W.value==="service_account"?(n(),r("div",u0,[e("div",null,[l[179]||(l[179]=e("label",{class:"input-label"},"Service Account JSON",-1)),e("input",{ref_key:"vertexServiceAccountFileInput",ref:O,type:"file",accept:"application/json,.json",class:"hidden",onChange:as},null,544),e("div",{class:E(["rounded-lg border-2 border-dashed px-4 py-5 transition-colors",Ne.value?"border-sky-500 bg-sky-50 dark:border-sky-500 dark:bg-sky-900/20":"border-gray-300 bg-gray-50 hover:border-sky-400 hover:bg-sky-50/60 dark:border-dark-500 dark:bg-dark-700/40 dark:hover:border-sky-600 dark:hover:bg-sky-900/10"]),onDragenter:l[32]||(l[32]=Bt(u=>Ne.value=!0,["prevent"])),onDragover:l[33]||(l[33]=Bt(u=>Ne.value=!0,["prevent"])),onDragleave:l[34]||(l[34]=Bt(u=>Ne.value=!1,["prevent"])),onDrop:Bt(os,["prevent"])},[e("div",d0,[e("div",c0,[e("div",p0,[U(ae,{name:"upload",size:"sm"}),e("span",null,a(qe.value?t(o)("admin.accounts.vertexSaJsonLoaded"):t(o)("admin.accounts.vertexSaJsonDrop")),1)]),e("p",m0,a(qe.value?t(o)("admin.accounts.vertexSaJsonKeyHidden"):t(o)("admin.accounts.vertexSaJsonDropHint")),1)]),e("button",{type:"button",class:"btn btn-secondary shrink-0",onClick:l[31]||(l[31]=u=>{var Z;return(Z=O.value)==null?void 0:Z.click()})},[U(ae,{name:"upload",size:"sm"}),oe(" "+a(t(o)("admin.accounts.vertexSaJsonSelectBtn")),1)])]),qe.value?(n(),r("div",g0,[e("div",v0,[l[177]||(l[177]=oe("Project ID: ",-1)),e("span",y0,a(pe.value),1)]),e("div",b0,[l[178]||(l[178]=oe("Client Email: ",-1)),e("span",h0,a(qe.value),1)])])):v("",!0)],34),e("p",f0,a(t(o)("admin.accounts.vertexSaJsonUploadHint")),1)]),e("div",x0,[e("div",null,[l[180]||(l[180]=e("label",{class:"input-label"},"Project ID",-1)),V(e("input",{"onUpdate:modelValue":l[35]||(l[35]=u=>pe.value=u),type:"text",class:"input font-mono",readonly:"",placeholder:t(o)("admin.accounts.vertexProjectIdPlaceholder")},null,8,_0),[[re,pe.value]])]),e("div",null,[l[181]||(l[181]=e("label",{class:"input-label"},"Location",-1)),V(e("select",{"onUpdate:modelValue":l[36]||(l[36]=u=>at.value=u),required:"",class:"input font-mono"},[(n(!0),r(ve,null,Ue(t(jn),u=>(n(),r("optgroup",{key:u.label,label:u.label},[(n(!0),r(ve,null,Ue(u.options,Z=>(n(),r("option",{key:Z.value,value:Z.value},a(Z.label),9,w0))),128))],8,k0))),128))],512),[[ka,at.value]]),e("p",$0,a(t(o)("admin.accounts.vertexLocationHint")),1)])])])):v("",!0),k.platform==="antigravity"?(n(),r("div",C0,[e("label",T0,a(t(o)("admin.accounts.modelRestriction")),1),e("div",null,[e("div",S0,[e("p",M0,a(t(o)("admin.accounts.mapRequestModels")),1)]),Rt.value.length>0?(n(),r("div",E0,[(n(!0),r(ve,null,Ue(Rt.value,(u,Z)=>(n(),r("div",{key:t(Ie)(u),class:"space-y-1"},[e("div",U0,[V(e("input",{"onUpdate:modelValue":ge=>u.from=ge,type:"text",class:E(["input flex-1",t(Bs)(u.from)?"":"border-red-500 dark:border-red-500"]),placeholder:t(o)("admin.accounts.requestModel")},null,10,A0),[[re,u.from]]),l[183]||(l[183]=e("svg",{class:"h-4 w-4 flex-shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M14 5l7 7m0 0l-7 7m7-7H3"})],-1)),V(e("input",{"onUpdate:modelValue":ge=>u.to=ge,type:"text",class:E(["input flex-1",u.to.includes("*")?"border-red-500 dark:border-red-500":""]),placeholder:t(o)("admin.accounts.actualModel")},null,10,R0),[[re,u.to]]),e("button",{type:"button",onClick:ge=>eo(Z),class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20"},[...l[182]||(l[182]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,P0)]),t(Bs)(u.from)?v("",!0):(n(),r("p",I0,a(t(o)("admin.accounts.wildcardOnlyAtEnd")),1)),u.to.includes("*")?(n(),r("p",q0,a(t(o)("admin.accounts.targetNoWildcard")),1)):v("",!0)]))),128))])):v("",!0),e("button",{type:"button",onClick:xs,class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"},[l[184]||(l[184]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(o)("admin.accounts.addMapping")),1)]),e("div",O0,[(n(!0),r(ve,null,Ue(Vt.value,u=>(n(),r("button",{key:u.label,type:"button",onClick:Z=>Qo(u.from,u.to),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",u.color])}," + "+a(u.label),11,D0))),128))])])])):v("",!0),k.platform==="anthropic"&&Za.value?(n(),r("div",L0,[e("label",V0,a(t(o)("admin.accounts.addMethod")),1),e("div",z0,[e("label",N0,[V(e("input",{"onUpdate:modelValue":l[37]||(l[37]=u=>se.value=u),type:"radio",value:"oauth",class:"mr-2 text-primary-600 focus:ring-primary-500"},null,512),[[va,se.value]]),e("span",j0,a(t(o)("admin.accounts.types.oauth")),1)]),e("label",B0,[V(e("input",{"onUpdate:modelValue":l[38]||(l[38]=u=>se.value=u),type:"radio",value:"setup-token",class:"mr-2 text-primary-600 focus:ring-primary-500"},null,512),[[va,se.value]]),e("span",F0,a(t(o)("admin.accounts.setupTokenLongLived")),1)])])])):v("",!0),k.type==="apikey"&&k.platform!=="antigravity"?(n(),r("div",H0,[e("div",null,[e("label",W0,a(t(o)("admin.accounts.baseUrl")),1),V(e("input",{"onUpdate:modelValue":l[39]||(l[39]=u=>G.value=u),type:"text",class:"input",placeholder:k.platform==="openai"?"https://api.openai.com":k.platform==="gemini"?"https://generativelanguage.googleapis.com":k.platform==="grok"?"https://api.x.ai/v1":"https://api.anthropic.com"},null,8,G0),[[re,G.value]]),b.value?(n(),r("p",K0,a(b.value),1)):v("",!0),k.platform==="grok"?(n(),Ae(Ss,{key:1,class:"mt-2",onSelect:l[40]||(l[40]=u=>G.value=u)})):v("",!0)]),e("div",null,[e("label",Q0,a(t(o)("admin.accounts.apiKeyRequired")),1),V(e("input",{"onUpdate:modelValue":l[41]||(l[41]=u=>me.value=u),type:"password",required:"",class:"input font-mono",placeholder:k.platform==="openai"?"sk-proj-...":k.platform==="gemini"?"AIza...":k.platform==="grok"?"xai-...":"sk-ant-..."},null,8,J0),[[re,me.value]]),$.value?(n(),r("p",Y0,a($.value),1)):v("",!0)]),k.platform==="openai"?(n(),r("div",X0,[e("div",null,[e("label",Z0,a(t(o)("admin.accounts.upstreamBilling.autoProbe")),1),e("p",ep,a(t(o)("admin.accounts.upstreamBilling.autoProbeHint")),1)]),U(ho,{modelValue:ce.value,"onUpdate:modelValue":l[42]||(l[42]=u=>ce.value=u),"data-testid":"upstream-billing-auto-probe","aria-label":t(o)("admin.accounts.upstreamBilling.autoProbe")},null,8,["modelValue","aria-label"])])):v("",!0),k.platform==="gemini"?(n(),r("div",tp,[e("label",ap,a(t(o)("admin.accounts.gemini.tier.label")),1),V(e("select",{"onUpdate:modelValue":l[43]||(l[43]=u=>xa.value=u),class:"input"},[e("option",op,a(t(o)("admin.accounts.gemini.tier.aiStudio.free")),1),e("option",sp,a(t(o)("admin.accounts.gemini.tier.aiStudio.paid")),1)],512),[[ka,xa.value]]),e("p",np,a(t(o)("admin.accounts.gemini.tier.aiStudioHint")),1)])):v("",!0),e("div",rp,[e("label",lp,a(t(o)("admin.accounts.modelRestriction")),1),Wa.value?(n(),r("div",ip,[e("p",up,a(t(o)("admin.accounts.openai.modelRestrictionDisabledByPassthrough")),1)])):(n(),r(ve,{key:1},[e("div",dp,[e("button",{type:"button",onClick:l[44]||(l[44]=u=>Re.value="whitelist"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",Re.value==="whitelist"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[l[185]||(l[185]=e("svg",{class:"mr-1.5 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(o)("admin.accounts.modelWhitelist")),1)],2),e("button",{type:"button",onClick:l[45]||
22(l[45]=u=>Re.value="mapping"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",Re.value==="mapping"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[l[186]||(l[186]=e("svg",{class:"mr-1.5 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7h12m0 0l-4-4m4 4l-4 4m0 6H4m0 0l4 4m-4-4l4-4"})],-1)),oe(" "+a(t(o)("admin.accounts.modelMapping")),1)],2)]),Re.value==="whitelist"?(n(),r("div",cp,[U(Co,{modelValue:je.value,"onUpdate:modelValue":l[46]||(l[46]=u=>je.value=u),platform:k.platform,"sync-credentials":le.value},null,8,["modelValue","platform","sync-credentials"]),e("p",pp,[oe(a(t(o)("admin.accounts.selectedModels",{count:je.value.length}))+" ",1),je.value.length===0?(n(),r("span",mp,a(t(o)("admin.accounts.supportsAllModels")),1)):v("",!0)])])):(n(),r("div",gp,[e("div",vp,[e("p",yp,[l[187]||(l[187]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(o)("admin.accounts.mapRequestModels")),1)])]),he.value.length>0?(n(),r("div",bp,[(n(!0),r(ve,null,Ue(he.value,(u,Z)=>(n(),r("div",{key:t(J)(u),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":ge=>u.from=ge,type:"text",class:"input flex-1",placeholder:t(o)("admin.accounts.requestModel")},null,8,hp),[[re,u.from]]),l[189]||(l[189]=e("svg",{class:"h-4 w-4 flex-shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M14 5l7 7m0 0l-7 7m7-7H3"})],-1)),V(e("input",{"onUpdate:modelValue":ge=>u.to=ge,type:"text",class:"input flex-1",placeholder:t(o)("admin.accounts.actualModel")},null,8,fp),[[re,u.to]]),e("button",{type:"button",onClick:ge=>io(Z),class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20"},[...l[188]||(l[188]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,xp)]))),128))])):v("",!0),e("button",{type:"button",onClick:Wo,class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"},[l[190]||(l[190]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(o)("admin.accounts.addMapping")),1)]),e("div",_p,[(n(!0),r(ve,null,Ue(Fo.value,u=>(n(),r("button",{key:u.label,type:"button",onClick:Z=>Po(u.from,u.to),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",u.color])}," + "+a(u.label),11,kp))),128))])]))],64))]),e("div",wp,[e("div",$p,[e("div",null,[e("label",Cp,a(t(o)("admin.accounts.poolMode")),1),e("p",Tp,a(t(o)("admin.accounts.poolModeHint")),1)]),e("button",{type:"button",onClick:l[47]||(l[47]=u=>Ze.value=!Ze.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ze.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ze.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Ze.value?(n(),r("div",Sp,[e("p",Mp,[U(ae,{name:"exclamationCircle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(o)("admin.accounts.poolModeInfo")),1)])])):v("",!0),Ze.value?(n(),r("div",Ep,[e("label",Up,a(t(o)("admin.accounts.poolModeRetryCount")),1),V(e("input",{"onUpdate:modelValue":l[48]||(l[48]=u=>it.value=u),type:"number",min:"0",max:is,step:"1",class:"input"},null,512),[[re,it.value,void 0,{number:!0}]]),e("p",Ap,a(t(o)("admin.accounts.poolModeRetryCountHint",{default:ws,max:is})),1)])):v("",!0),Ze.value?(n(),r("div",Rp,[e("label",Pp,a(t(o)("admin.accounts.poolModeRetryStatusCodes")),1),V(e("input",{"onUpdate:modelValue":l[49]||(l[49]=u=>ot.value=u),type:"text",class:"input",placeholder:Xe.join(", ")},null,8,Ip),[[re,ot.value]]),e("p",qp,a(t(o)("admin.accounts.poolModeRetryStatusCodesHint",{default:Xe.join(", ")})),1)])):v("",!0)]),e("div",Op,[e("div",Dp,[e("div",null,[e("label",Lp,a(t(o)("admin.accounts.customErrorCodes")),1),e("p",Vp,a(t(o)("admin.accounts.customErrorCodesHint")),1)]),e("button",{type:"button",onClick:l[50]||
22(l[50]=u=>tt.value=!tt.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",tt.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",tt.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),tt.value?(n(),r("div",zp,[e("div",Np,[e("p",jp,[U(ae,{name:"exclamationTriangle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(o)("admin.accounts.customErrorCodesWarning")),1)])]),e("div",Bp,[(n(!0),r(ve,null,Ue(t(Nn),u=>(n(),r("button",{key:u.value,type:"button",onClick:Z=>Jo(u.value),class:E(["rounded-lg px-3 py-1.5 text-sm font-medium transition-colors",Ke.value.includes(u.value)?"bg-red-100 text-red-700 ring-1 ring-red-500 dark:bg-red-900/30 dark:text-red-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(u.value)+" "+a(u.label),11,Fp))),128))]),e("div",Hp,[V(e("input",{"onUpdate:modelValue":l[51]||(l[51]=u=>we.value=u),type:"number",min:"100",max:"599",class:"input flex-1",placeholder:t(o)("admin.accounts.enterErrorCode"),onKeyup:mn(go,["enter"])},null,40,Wp),[[re,we.value,void 0,{number:!0}]]),e("button",{type:"button",onClick:go,class:"btn btn-secondary px-3"},[...l[191]||(l[191]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)])])]),e("div",Gp,[(n(!0),r(ve,null,Ue(Ke.value.sort((u,Z)=>u-Z),u=>(n(),r("span",{key:u,class:"inline-flex items-center gap-1 rounded-full bg-red-100 px-2.5 py-0.5 text-sm font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400"},[oe(a(u)+" ",1),e("button",{type:"button",onClick:Z=>_s(u),class:"hover:text-red-900 dark:hover:text-red-300"},[U(ae,{name:"x",size:"sm","stroke-width":2})],8,Kp)]))),128)),Ke.value.length===0?(n(),r("span",Qp,a(t(o)("admin.accounts.noneSelectedUsesDefault")),1)):v("",!0)])])):v("",!0)]),t(cs)(k.platform,"apikey")?(n(),r("div",Jp,[e("div",Yp,[e("div",null,[e("label",Xp,a(t(o)("admin.accounts.headerOverride.title")),1),e("p",Zp,a(t(o)("admin.accounts.headerOverride.hint")),1)]),e("button",{type:"button",onClick:l[52]||(l[52]=u=>ie.value=!ie.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ie.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ie.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),ie.value?(n(),r("div",em,[e("div",tm,[e("p",am,[U(ae,{name:"exclamationCircle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(o)("admin.accounts.headerOverride.info")),1)])]),U(Ks,{rows:Ce.value,"onUpdate:rows":l[53]||(l[53]=u=>Ce.value=u)},null,8,["rows"])])):v("",!0)])):v("",!0)])):v("",!0),k.platform==="anthropic"&&W.value==="bedrock"?(n(),r("div",om,[e("div",null,[e("label",sm,a(t(o)("admin.accounts.bedrockAuthMode")),1),e("div",nm,[e("label",rm,[V(e("input",{"onUpdate:modelValue":l[54]||(l[54]=u=>wt.value=u),type:"radio",value:"sigv4",class:"mr-2 text-primary-600 focus:ring-primary-500"},null,512),[[va,wt.value]]),e("span",lm,a(t(o)("admin.accounts.bedrockAuthModeSigv4")),1)]),e("label",im,[V(e("input",{"onUpdate:modelValue":l[55]||(l[55]=u=>wt.value=u),type:"radio",value:"apikey",class:"mr-2 text-primary-600 focus:ring-primary-500"},null,512),[[va,wt.value]]),e("span",um,a(t(o)("admin.accounts.bedrockAuthModeApikey")),1)])])]),wt.value==="sigv4"?(n(),r(ve,{key:0},[e("div",null,[e("label",dm,a(t(o)("admin.accounts.bedrockAccessKeyId")),1),V(e("input",{"onUpdate:modelValue":l[56]||(l[56]=u=>yt.value=u),type:"text",required:"",class:"input font-mono",placeholder:"AKIA..."},null,512),[[re,yt.value]])]),e("div",null,[e("label",cm,a(t(o)("admin.accounts.bedrockSecretAccessKey")),1),V(e("input",{"onUpdate:modelValue":l[57]||(l[57]=u=>ct.value=u),type:"password",required:"",class:"input font-mono"},null,512),[[re,ct.value]])]),e("div",null,[e("label",pm,a(t(o)("admin.accounts.bedrockSessionToken")),1),V(e("input",{"onUpdate:modelValue":l[58]||(l[58]=u=>ea.value=u),type:"password",class:"input font-mono"},null,512),[[re,ea.value]]),e("p",mm,a(t(o)("admin.accounts.bedrockSessionTokenHint")),1)])],64)):v("",!0),wt.value==="apikey"?(n(),r("div",gm,[e("label",vm,a(t(o)("admin.accounts.bedrockApiKeyInput")),1),V(e("input",{"onUpdate:modelValue":l[59]||(l[59]=u=>zt.value=u),type:"password",required:"",class:"input font-mono"},null,512),[[re,zt.value]])])):v("",!0),e("div",null,[e("label",ym,a(t(o)("admin.accounts.bedrockRegion")),1),V(e("select",{"onUpdate:modelValue":l[60]||(l[60]=u=>ca.value=u),class:"input"},[...l[192]||(l[192]=[e("optgroup",{label:"US"},[e("option",{value:"us-east-1"},"us-east-1 (N. Virginia)"),e("option",{value:"us-east-2"},"us-east-2 (Ohio)"),e("option",{value:"us-west-1"},"us-west-1 (N. California)"),e("option",{value:"us-west-2"},"us-west-2 (Oregon)"),e("option",{value:"us-gov-east-1"},"us-gov-east-1 (GovCloud US-East)"),e("option",{value:"us-gov-west-1"},"us-gov-west-1 (GovCloud US-West)")],-1),e("optgroup",{label:"Europe"},[e("option",{value:"eu-west-1"},"eu-west-1 (Ireland)"),e("option",{value:"eu-west-2"},"eu-west-2 (London)"),e("option",{value:"eu-west-3"},"eu-west-3 (Paris)"),e("option",{value:"eu-central-1"},"eu-central-1 (Frankfurt)"),e("option",{value:"eu-central-2"},"eu-central-2 (Zurich)"),e("option",{value:"eu-south-1"},"eu-south-1 (Milan)"),e("option",{value:"eu-south-2"},"eu-south-2 (Spain)"),e("option",{value:"eu-north-1"},"eu-north-1 (Stockholm)")],-1),e("optgroup",{label:"Asia Pacific"},[e("option",{value:"ap-northeast-1"},"ap-northeast-1 (Tokyo)"),e("option",{value:"ap-northeast-2"},"ap-northeast-2 (Seoul)"),e("option",{value:"ap-northeast-3"},"ap-northeast-3 (Osaka)"),e("option",{value:"ap-south-1"},"ap-south-1 (Mumbai)"),e("option",{value:"ap-south-2"},"ap-south-2 (Hyderabad)"),e("option",{value:"ap-southeast-1"},"ap-southeast-1 (Singapore)"),e("option",{value:"ap-southeast-2"},"ap-southeast-2 (Sydney)")],-1),e("optgroup",{label:"Canada"},[e("option",{value:"ca-central-1"},"ca-central-1 (Canada)")],-1),e("optgroup",{label:"South America"},[e("option",{value:"sa-east-1"},"sa-east-1 (São Paulo)")],-1)])],512),[[ka,ca.value]]),e("p",bm,a(t(o)("admin.accounts.bedrockRegionHint")),1)]),e("div",null,[e("label",hm,[V(e("input",{"onUpdate:modelValue":l[61]||(l[61]=u=>Jt.value=u),type:"checkbox",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500 dark:border-dark-500"},null,512),[[bt,Jt.value]]),e("span",fm,a(t(o)("admin.accounts.bedrockForceGlobal")),1)]),e("p",xm,a(t(
22o)("admin.accounts.bedrockForceGlobalHint")),1)]),e("div",_m,[e("label",km,a(t(o)("admin.accounts.modelRestriction")),1),e("div",wm,[e("button",{type:"button",onClick:l[62]||(l[62]=u=>Re.value="whitelist"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",Re.value==="whitelist"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(o)("admin.accounts.modelWhitelist")),3),e("button",{type:"button",onClick:l[63]||(l[63]=u=>Re.value="mapping"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",Re.value==="mapping"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(o)("admin.accounts.modelMapping")),3)]),Re.value==="whitelist"?(n(),r("div",$m,[U(Co,{modelValue:je.value,"onUpdate:modelValue":l[64]||(l[64]=u=>je.value=u),platform:"anthropic","sync-credentials":le.value},null,8,["modelValue","sync-credentials"]),e("p",Cm,[oe(a(t(o)("admin.accounts.selectedModels",{count:je.value.length}))+" ",1),je.value.length===0?(n(),r("span",Tm,a(t(o)("admin.accounts.supportsAllModels")),1)):v("",!0)])])):(n(),r("div",Sm,[(n(!0),r(ve,null,Ue(he.value,(u,Z)=>(n(),r("div",{key:Z,class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":ge=>u.from=ge,type:"text",class:"input flex-1",placeholder:t(o)("admin.accounts.fromModel")},null,8,Mm),[[re,u.from]]),l[193]||(l[193]=e("span",{class:"text-gray-400"},"→",-1)),V(e("input",{"onUpdate:modelValue":ge=>u.to=ge,type:"text",class:"input flex-1",placeholder:t(o)("admin.accounts.toModel")},null,8,Em),[[re,u.to]]),e("button",{type:"button",onClick:ge=>he.value.splice(Z,1),class:"text-red-500 hover:text-red-700"},[U(ae,{name:"trash",size:"sm"})],8,Um)]))),128)),e("button",{type:"button",onClick:l[65]||(l[65]=u=>he.value.push({from:"",to:""})),class:"btn btn-secondary text-sm"}," + "+a(t(o)("admin.accounts.addMapping")),1),e("div",Am,[(n(!0),r(ve,null,Ue(Ut.value,u=>(n(),r("button",{key:u.from,type:"button",onClick:Z=>Po(u.from,u.to),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",u.color])}," + "+a(u.label),11,Rm))),128))])]))]),e("div",Pm,[e("div",Im,[e("div",null,[e("label",qm,a(t(o)("admin.accounts.poolMode")),1),e("p",Om,a(t(o)("admin.accounts.poolModeHint")),1)]),e("button",{type:"button",onClick:l[66]||(l[66]=u=>Ze.value=!Ze.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ze.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ze.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Ze.value?(n(),r("div",Dm,[e("p",Lm,[U(ae,{name:"exclamationCircle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(o)("admin.accounts.poolModeInfo")),1)])])):v("",!0),Ze.value?(n(),r("div",Vm,[e("label",zm,a(t(o)("admin.accounts.poolModeRetryCount")),1),V(e("input",{"onUpdate:modelValue":l[67]||(l[67]=u=>it.value=u),type:"number",min:"0",max:is,step:"1",class:"input"},null,512),[[re,it.value,void 0,{number:!0}]]),e("p",Nm,a(t(o)("admin.accounts.poolModeRetryCountHint",{default:ws,max:is})),1)])):v("",!0),Ze.value?(n(),r("div",jm,[e("label",Bm,a(t(o)("admin.accounts.poolModeRetryStatusCodes")),1),V(e("input",{"onUpdate:modelValue":l[68]||(l[68]=u=>ot.value=u),type:"text",class:"input",placeholder:Xe.join(", ")},null,8,Fm),[[re,ot.value]]),e("p",Hm,a(t(o)("admin.accounts.poolModeRetryStatusCodesHint",{default:Xe.join(", ")})),1)])):v("",!0)])])):v("",!0),k.platform==="anthropic"&&(k.type==="apikey"||k.type==="bedrock")?(n(),r("div",Wm,[e("div",Gm,[e("h3",Km,a(t(o)("admin.accounts.quotaControl.title")),1),e("p",Qm,a(t(o)("admin.accounts.quotaControl.hint")),1)]),U(Fs,{totalLimit:ne.value,dailyLimit:te.value,weeklyLimit:N.value,quotaNotifyGlobalEnabled:t(sa),quotaNotifyDailyEnabled:t(He).daily.enabled,quotaNotifyDailyThreshold:t(He).daily.threshold,quotaNotifyDailyThresholdType:t(He).daily.thresholdType,quotaNotifyWeeklyEnabled:t(He).weekly.enabled,quotaNotifyWeeklyThreshold:t(He).weekly.threshold,quotaNotifyWeeklyThresholdType:t(He).weekly.thresholdType,quotaNotifyTotalEnabled:t(He).total.enabled,quotaNotifyTotalThreshold:t(He).total.threshold,quotaNotifyTotalThresholdType:t(He).total.thresholdType,dailyResetMode:x.value,dailyResetHour:H.value,weeklyResetMode:K.value,weeklyResetDay:be.value,weeklyResetHour:fe.value,resetTimezone:$e.value,"onUpdate:totalLimit":l[69]||(l[69]=u=>ne.value=u),"onUpdate:dailyLimit":l[70]||(l[70]=u=>te.value=u),"onUpdate:weeklyLimit":l[71]||(l[71]=u=>N.value=u),"onUpdate:quotaNotifyDailyEnabled":l[72]||(l[72]=u=>t(He).daily.enabled=u),"onUpdate:quotaNotifyDailyThreshold":l[73]||(l[73]=u=>t(He).daily.threshold=u),"onUpdate:quotaNotifyDailyThresholdType":l[74]||(l[74]=u=>t(He).daily.thresholdType=u),"onUpdate:quotaNotifyWeeklyEnabled":l[75]||(l[75]=u
22=>t(He).weekly.enabled=u),"onUpdate:quotaNotifyWeeklyThreshold":l[76]||(l[76]=u=>t(He).weekly.threshold=u),"onUpdate:quotaNotifyWeeklyThresholdType":l[77]||(l[77]=u=>t(He).weekly.thresholdType=u),"onUpdate:quotaNotifyTotalEnabled":l[78]||(l[78]=u=>t(He).total.enabled=u),"onUpdate:quotaNotifyTotalThreshold":l[79]||(l[79]=u=>t(He).total.threshold=u),"onUpdate:quotaNotifyTotalThresholdType":l[80]||(l[80]=u=>t(He).total.thresholdType=u),"onUpdate:dailyResetMode":l[81]||(l[81]=u=>x.value=u),"onUpdate:dailyResetHour":l[82]||(l[82]=u=>H.value=u),"onUpdate:weeklyResetMode":l[83]||(l[83]=u=>K.value=u),"onUpdate:weeklyResetDay":l[84]||(l[84]=u=>be.value=u),"onUpdate:weeklyResetHour":l[85]||(l[85]=u=>fe.value=u),"onUpdate:resetTimezone":l[86]||(l[86]=u=>$e.value=u)},null,8,["totalLimit","dailyLimit","weeklyLimit","quotaNotifyGlobalEnabled","quotaNotifyDailyEnabled","quotaNotifyDailyThreshold","quotaNotifyDailyThresholdType","quotaNotifyWeeklyEnabled","quotaNotifyWeeklyThreshold","quotaNotifyWeeklyThresholdType","quotaNotifyTotalEnabled","quotaNotifyTotalThreshold","quotaNotifyTotalThresholdType","dailyResetMode","dailyResetHour","weeklyResetMode","weeklyResetDay","weeklyResetHour","resetTimezone"])])):k.type==="apikey"||k.type==="bedrock"?(n(),r("div",Jm,[e("div",Ym,[e("h3",Xm,a(t(o)("admin.accounts.quotaControl.title")),1),e("p",Zm,a(t(o)("admin.accounts.quotaLimitHint")),1)]),U(Fs,{totalLimit:ne.value,dailyLimit:te.value,weeklyLimit:N.value,quotaNotifyGlobalEnabled:t(sa),quotaNotifyDailyEnabled:t(He).daily.enabled,quotaNotifyDailyThreshold:t(He).daily.threshold,quotaNotifyDailyThresholdType:t(He).daily.thresholdType,quotaNotifyWeeklyEnabled:t(He).weekly.enabled,quotaNotifyWeeklyThreshold:t(He).weekly.threshold,quotaNotifyWeeklyThresholdType:t(He).weekly.thresholdType,quotaNotifyTotalEnabled:t(He).total.enabled,quotaNotifyTotalThreshold:t(He).total.threshold,quotaNotifyTotalThresholdType:t(He).total.thresholdType,dailyResetMode:x.value,dailyResetHour:H.value,weeklyResetMode:K.value,weeklyResetDay:be.value,weeklyResetHour:fe.value,resetTimezone:$e.value,"onUpdate:totalLimit":l[87]||(l[87]=u=>ne.value=u),"onUpdate:dailyLimit":l[88]||(l[88]=u=>te.value=u),"onUpdate:weeklyLimit":l[89]||(l[89]=u=>N.value=u),"onUpdate:quotaNotifyDailyEnabled":l[90]||(l[90]=u=>t(He).daily.enabled=u),"onUpdate:quotaNotifyDailyThreshold":l[91]||(l[91]=u=>t(He).daily.threshold=u),"onUpdate:quotaNotifyDailyThresholdType":l[92]||(l[92]=u=>t(He).daily.thresholdType=u),"onUpdate:quotaNotifyWeeklyEnabled":l[93]||(l[93]=u=>t(He).weekly.enabled=u),"onUpdate:quotaNotifyWeeklyThreshold":l[94]||(l[94]=u=>t(He).weekly.threshold=u),"onUpdate:quotaNotifyWeeklyThresholdType":l[95]||(l[95]=u=>t(He).weekly.thresholdType=u),"onUpdate:quotaNotifyTotalEnabled":l[96]||(l[96]=u=>t(He).total.enabled=u),"onUpdate:quotaNotifyTotalThreshold":l[97]||(l[97]=u=>t(He).total.threshold=u),"onUpdate:quotaNotifyTotalThresholdType":l[98]||(l[98]=u=>t(He).total.thresholdType=u),"onUpdate:dailyResetMode":l[99]||(l[99]=u=>x.value=u),"onUpdate:dailyResetHour":l[100]||(l[100]=u=>H.value=u),"onUpdate:weeklyResetMode":l[101]||(l[101]=u=>K.value=u),"onUpdate:weeklyResetDay":l[102]||(l[102]=u=>be.value=u),"onUpdate:weeklyResetHour":l[103]||(l[103]=u=>fe.value=u),"onUpdate:resetTimezone":l[104]||(l[104]=u=>$e.value=u)},null,8,["totalLimit","dailyLimit","weeklyLimit","quotaNotifyGlobalEnabled","quotaNotifyDailyEnabled","quotaNotifyDailyThreshold","quotaNotifyDailyThresholdType","quotaNotifyWeeklyEnabled","quotaNotifyWeeklyThreshold","quotaNotifyWeeklyThresholdType","quotaNotifyTotalEnabled","quotaNotifyTotalThreshold","quotaNotifyTotalThresholdType","dailyResetMode","dailyResetHour","weeklyResetMode","weeklyResetDay","weeklyResetHour","resetTimezone"])])):v("",!0),k.platform==="grok"&&Za.value?(n(),r("div",eg,[e("div",tg,[e("div",null,[e("label",ag,a(t(o)("admin.accounts.grokCustomBaseUrl.title")),1),e("p",og,a(t(o)("admin.accounts.grokCustomBaseUrl.hint")),1)]),e("button",{type:"button","data-testid":"grok-custom-base-url-toggle",onClick:l[105]||(l[105]=u=>Fe.value=!Fe.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Fe.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Fe.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Fe.value?(n(),r("div",sg,[V(e("input",{"onUpdate:modelValue":l[106]||(l[106]=u=>Je.value=u),type:"text",class:"input","data-testid":"grok-custom-base-url-input",placeholder:t(o)("admin.accounts.grokCustomBaseUrl.placeholder")}
22,null,8,ng),[[re,Je.value]]),U(Ss,{onSelect:l[107]||(l[107]=u=>Je.value=u)})])):v("",!0)])):v("",!0),k.platform==="grok"&&Za.value?(n(),r("div",rg,[e("div",lg,[e("div",null,[e("label",ig,a(t(o)("admin.accounts.headerOverride.title")),1),e("p",ug,a(t(o)("admin.accounts.headerOverride.hint")),1)]),e("button",{type:"button",onClick:l[108]||(l[108]=u=>ie.value=!ie.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ie.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ie.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),ie.value?(n(),r("div",dg,[e("div",cg,[e("p",pg,[U(ae,{name:"exclamationCircle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(o)("admin.accounts.headerOverride.info")),1)])]),U(Ks,{rows:Ce.value,"onUpdate:rows":l[109]||(l[109]=u=>Ce.value=u)},null,8,["rows"])])):v("",!0)])):v("",!0),(k.platform==="openai"||k.platform==="grok")&&Za.value?(n(),r("div",mg,[e("label",gg,a(t(o)("admin.accounts.modelRestriction")),1),Wa.value?(n(),r("div",vg,[e("p",yg,a(t(o)("admin.accounts.openai.modelRestrictionDisabledByPassthrough")),1)])):(n(),r(ve,{key:1},[e("div",bg,[e("button",{type:"button",onClick:l[110]||(l[110]=u=>Re.value="whitelist"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",Re.value==="whitelist"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(o)("admin.accounts.modelWhitelist")),3),e("button",{type:"button",onClick:l[111]||(l[111]=u=>Re.value="mapping"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",Re.value==="mapping"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(o)("admin.accounts.modelMapping")),3)]),Re.value==="whitelist"?(n(),r("div",hg,[U(Co,{modelValue:je.value,"onUpdate:modelValue":l[112]||(l[112]=u=>je.value=u),platform:k.platform,"sync-credentials":le.value},null,8,["modelValue","platform","sync-credentials"]),e("p",fg,[oe(a(t(o)("admin.accounts.selectedModels",{count:je.value.length}))+" ",1),je.value.length===0?(n(),r("span",xg,a(t(o)("admin.accounts.supportsAllModels")),1)):v("",!0)])])):(n(),r("div",_g,[e("div",kg,[e("p",wg,a(t(o)("admin.accounts.mapRequestModels")),1)]),he.value.length>0?(n(),r("div",$g,[(n(!0),r(ve,null,Ue(he.value,(u,Z)=>(n(),r("div",{key:"oauth-"+t(J)(u),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":ge=>u.from=ge,type:"text",class:"input flex-1",placeholder:t(o)("admin.accounts.requestModel")},null,8,Cg),[[re,u.from]]),l[195]||(l[195]=e("svg",{class:"h-4 w-4 flex-shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M14 5l7 7m0 0l-7 7m7-7H3"})],-1)),V(e("input",{"onUpdate:modelValue":ge=>u.to=ge,type:"text",class:"input flex-1",placeholder:t(o)("admin.accounts.actualModel")},null,8,Tg),[[re,u.to]]),e("button",{type:"button",onClick:ge=>io(Z),class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20"},[...l[194]||(l[194]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,Sg)]))),128))])):v("",!0),e("button",{type:"button",onClick:Wo,class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"}," + "+a(t(o)("admin.accounts.addMapping")),1),e("div",Mg,[(n(!0),r(ve,null,Ue(Fo.value,u=>(n(),r("button",{key:"oauth-"+u.label,type:"button",onClick:Z=>Po(u.from,u.to),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",u.color])}," + "+a(u.label),11,Eg))),128))])]))],64))])):v("",!0),e("div",Ug,[e("div",Ag,[e("div",null,[e("label",Rg,a(t(o)("admin.accounts.tempUnschedulable.title")),1),e("p",Pg,a(t(o)("admin.accounts.tempUnschedulable.hint")),1)]),e("button",{type:"button",onClick:l[113]||(l[113]=u=>de.value=!de.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",de.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",de.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),de.value?(n(),r("div",Ig,[e("div",qg,[e("p",Og,[U(ae,{name:"exclamationTriangle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(o)("admin.accounts.tempUnschedulable.notice")),1)])]),e("div",Dg,[(n(!0),r(ve,null,Ue(bs.value,u=>(n(),r("button",{key:u.label,type:"button",onClick:Z=>vo(u.rule),class:"rounded-lg bg-gray-100 px-3 py-1.5 text-xs font-medium text-gray-600 transition-colors hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-300 dark:hover:bg-dark-500"}," + "+a(u.label),9,Lg))),128))]),B.value.length>0?(n(),r("div",Vg,[(n(!0),r(ve,null,Ue(B.value,(u,Z)=>(n(),r("div",{key:t(Ge)(u),class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},[e("div",zg,[e("span",Ng,a(t(o)("admin.accounts.tempUnschedulable.ruleIndex",{index:Z+1})),1),e("div",jg,[e("button",{type:"button",disabled:Z===0,onClick:ge=>Io(Z,-1),class:"rounded p-1 text-gray-400 transition-colors hover:text-gray-600 disabled:cursor-not-allowed disabled:opacity-40 dark:hover:text-gray-200"},[U(ae,{name:"chevronUp",size:"sm","stroke-width":2})],8,Bg),e("button",{type:"button",disabled:Z===B.value.length-1,onClick:ge=>Io(Z,1),class:"rounded p-1 text-gray-400 transition-colors hover:text-gray-600 disabled:cursor-not-allowed disabled:opacity-40 dark:hover:text-gray-200"},[...l[196]||(l[196]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1)])],8,Fg),e("button",{type:"button",onClick:ge=>Yo(Z),class:"rounded p-1 text-red-500 transition-colors hover:text-red-600"},[U(ae,{name:"x",size:"sm","stroke-width":2})],8,Hg)])]),e("div",Wg,[e("div",null,[e("label",Gg,a(t(o)("admin.accounts.tempUnschedulable.errorCode")),1),V(e("input",{"onUpdate:modelValue":ge=>u.error_code=ge,type:"number",min:"100",max:"599",class:"input",placeholder:t(o)("admin.accounts.tempUnschedulable.errorCodePlaceholder")},null,8,Kg),[[re,u.error_code,void 0,{number:!0}]])]),e("div",null,[e("label",Qg,a(t(o)("admin.accounts.tempUnschedulable.durationMinutes")),1),V(e("input",{"onUpdate:modelValue":ge=>u.duration_minutes=ge,type:"number",min:"1",class:"input",placeholder:t(o)("admin.accounts.tempUnschedulable.durationPlaceholder")},null,8,Jg),[[re,u.duration_minutes,void 0,{number:!0}]])]),e("div",Yg,[e("label",Xg,a(t(o)("admin.accounts.tempUnschedulable.keywords")),1),V(e("input",{"onUpdate:modelValue":ge=>u.keywords=ge,type:"text",class:"input",placeholder:t(o)("admin.accounts.tempUnschedulable.keywordsPlaceholder")},null,8,Zg),[[re,u.keywords]]),e("p",ev,a(t(o)("admin.accounts.tempUnschedulable.keywordsHint")),1)]),e("div",tv,[e("label",av,a(t(o)("admin.accounts.tempUnschedulable.description")),1),V(e("input",{"onUpdate:modelValue":ge=>u.description=ge,type:"text",class:"input",placeholder:t(o)("admin.accounts.tempUnschedulable.descriptionPlaceholder")},null,8,ov),[[re,u.description]])])])]))),128))])):v("",!0),e("button",{type:"button",onClick:l[114]||(l[114]=u=>vo()),class:"w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-sm text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"},[l[197]||(l[197]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(o)("admin.accounts.tempUnschedulable.addRule")),1)])])):v("",!0)]),k.platform==="anthropic"||k.platform==="antigravity"?(n(),r("div",sv,[e("div",nv,[e("div",null,[e("label",rv,a(t(o)("admin.accounts.interceptWarmupRequests")),1),e("p",lv,a(t(o)("admin.accounts.interceptWarmupRequestsDesc")),1
22)]),e("button",{type:"button",onClick:l[115]||(l[115]=u=>At.value=!At.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",At.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",At.value?"translate-x-5":"translate-x-0"])},null,2)],2)])])):v("",!0),k.platform==="anthropic"&&W.value==="oauth-based"?(n(),r("div",iv,[e("div",uv,[e("h3",dv,a(t(o)("admin.accounts.quotaControl.title")),1),e("p",cv,a(t(o)("admin.accounts.quotaControl.hint")),1)]),e("div",pv,[e("div",mv,[e("div",null,[e("label",gv,a(t(o)("admin.accounts.quotaControl.windowCost.label")),1),e("p",vv,a(t(o)("admin.accounts.quotaControl.windowCost.hint")),1)]),e("button",{type:"button",onClick:l[116]||(l[116]=u=>Ba.value=!Ba.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ba.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ba.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Ba.value?(n(),r("div",yv,[e("div",null,[e("label",bv,a(t(o)("admin.accounts.quotaControl.windowCost.limit")),1),e("div",hv,[l[198]||(l[198]=e("span",{class:"absolute left-3 top-1/2 -translate-y-1/2 text-gray-500 dark:text-gray-400"},"$",-1)),V(e("input",{"onUpdate:modelValue":l[117]||(l[117]=u=>Sa.value=u),type:"number",min:"0",step:"1",class:"input pl-7",placeholder:t(o)("admin.accounts.quotaControl.windowCost.limitPlaceholder")},null,8,fv),[[re,Sa.value,void 0,{number:!0}]])]),e("p",xv,a(t(o)("admin.accounts.quotaControl.windowCost.limitHint")),1)]),e("div",null,[e("label",_v,a(t(o)("admin.accounts.quotaControl.windowCost.stickyReserve")),1),e("div",kv,[l[199]||(l[199]=e("span",{class:"absolute left-3 top-1/2 -translate-y-1/2 text-gray-500 dark:text-gray-400"},"$",-1)),V(e("input",{"onUpdate:modelValue":l[118]||(l[118]=u=>Ra.value=u),type:"number",min:"0",step:"1",class:"input pl-7",placeholder:t(o)("admin.accounts.quotaControl.windowCost.stickyReservePlaceholder")},null,8,wv),[[re,Ra.value,void 0,{number:!0}]])]),e("p",$v,a(t(o)("admin.accounts.quotaControl.windowCost.stickyReserveHint")),1)])])):v("",!0)]),e("div",Cv,[e("div",Tv,[e("div",null,[e("label",Sv,a(t(o)("admin.accounts.quotaControl.sessionLimit.label")),1),e("p",Mv,a(t(o)("admin.accounts.quotaControl.sessionLimit.hint")),1)]),e("button",{type:"button",onClick:l[119]||(l[119]=u=>Ma.value=!Ma.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ma.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ma.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Ma.value?(n(),r("div",Ev,[e("div",null,[e("label",Uv,a(t(o)("admin.accounts.quotaControl.sessionLimit.maxSessions")),1),V(e("input",{"onUpdate:modelValue":l[120]||(l[120]=u=>Ea.value=u),type:"number",min:"1",step:"1",class:"input",placeholder:t(o)("admin.accounts.quotaControl.sessionLimit.maxSessionsPlaceholder")},null,8,Av),[[re,Ea.value,void 0,{number:!0}]]),e("p",Rv,a(t(o)("admin.accounts.quotaControl.sessionLimit.maxSessionsHint")),1)]),e("div",null,[e("label",Pv,a(t(o)("admin.accounts.quotaControl.sessionLimit.idleTimeout")),1),e("div",Iv,[V(e("input",{"onUpdate:modelValue":l[121]||(l[121]=u=>Pa.value=u),type:"number",min:"1",step:"1",class:"input pr-12",placeholder:t(o)("admin.accounts.quotaControl.sessionLimit.idleTimeoutPlaceholder")},null,8,qv),[[re,Pa.value,void 0,{number:!0}]]),e("span",Ov,a(t(o)("common.minutes")),1)]),e("p",Dv,a(t(o)("admin.accounts.quotaControl.sessionLimit.idleTimeoutHint")),1)])])):v("",!0)]),e("div",Lv,[e("div",Vv,[e("div",null,[e("label",zv,a(t(o)("admin.accounts.quotaControl.rpmLimit.label")),1),e("p",Nv,a(t(o)("admin.accounts.quotaControl.rpmLimit.hint")),1)]),e("button",{type:"button",onClick:l[122]||(l[122]=u=>
22fa.value=!fa.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",fa.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",fa.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),fa.value?(n(),r("div",jv,[e("div",null,[e("label",Bv,a(t(o)("admin.accounts.quotaControl.rpmLimit.baseRpm")),1),V(e("input",{"onUpdate:modelValue":l[123]||(l[123]=u=>Ia.value=u),type:"number",min:"1",max:"1000",step:"1",class:"input",placeholder:t(o)("admin.accounts.quotaControl.rpmLimit.baseRpmPlaceholder")},null,8,Fv),[[re,Ia.value,void 0,{number:!0}]]),e("p",Hv,a(t(o)("admin.accounts.quotaControl.rpmLimit.baseRpmHint")),1)]),e("div",null,[e("label",Wv,a(t(o)("admin.accounts.quotaControl.rpmLimit.strategy")),1),e("div",Gv,[e("button",{type:"button",onClick:l[124]||(l[124]=u=>Fa.value="tiered"),class:E(["flex-1 rounded-lg px-3 py-2 text-sm font-medium transition-all",Fa.value==="tiered"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[e("div",Kv,[e("div",null,a(t(o)("admin.accounts.quotaControl.rpmLimit.strategyTiered")),1),e("div",Qv,a(t(o)("admin.accounts.quotaControl.rpmLimit.strategyTieredHint")),1)])],2),e("button",{type:"button",onClick:l[125]||(l[125]=u=>Fa.value="sticky_exempt"),class:E(["flex-1 rounded-lg px-3 py-2 text-sm font-medium transition-all",Fa.value==="sticky_exempt"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[e("div",Jv,[e("div",null,a(t(o)("admin.accounts.quotaControl.rpmLimit.strategyStickyExempt")),1),e("div",Yv,a(t(o)("admin.accounts.quotaControl.rpmLimit.strategyStickyExemptHint")),1)])],2)])]),Fa.value==="tiered"?(n(),r("div",Xv,[e("label",Zv,a(t(o)("admin.accounts.quotaControl.rpmLimit.stickyBuffer")),1),V(e("input",{"onUpdate:modelValue":l[126]||(l[126]=u=>qa.value=u),type:"number",min:"1",step:"1",class:"input",placeholder:t(o)("admin.accounts.quotaControl.rpmLimit.stickyBufferPlaceholder")},null,8,ey),[[re,qa.value,void 0,{number:!0}]]),e("p",ty,a(t(o)("admin.accounts.quotaControl.rpmLimit.stickyBufferHint")),1)])):v("",!0)])):v("",!0),e("div",ay,[e("label",oy,a(t(o)("admin.accounts.quotaControl.rpmLimit.userMsgQueue")),1),e("p",sy,a(t(o)("admin.accounts.quotaControl.rpmLimit.userMsgQueueHint")),1),e("div",ny,[(n(!0),r(ve,null,Ue(Eo.value,u=>(n(),r("button",{type:"button",key:u.value,onClick:Z=>Ka.value=u.value,class:E(["px-3 py-1.5 text-sm rounded-md border transition-colors",Ka.value===u.value?"bg-primary-600 text-white border-primary-600":"bg-white dark:bg-dark-700 text-gray-700 dark:text-gray-300 border-gray-300 dark:border-dark-500 hover:bg-gray-50 dark:hover:bg-dark-600"])},a(u.label),11,ry))),128))])])]),e("div",ly,[e("div",iy,[e("div",null,[e("label",uy,a(t(o)("admin.accounts.quotaControl.tlsFingerprint.label")),1),e("p",dy,a(t(o)("admin.accounts.quotaControl.tlsFingerprint.hint")),1)]),e("button",{type:"button",onClick:l[127]||(l[127]=u=>Oa.value=!Oa.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Oa.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Oa.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Oa.value?(n(),r("div",cy,[V(e("select",{"onUpdate:modelValue":l[128]||(l[128]=u=>Qa.value=u),class:"input"},[e("option",py,a(t(o)("admin.accounts.quotaControl.tlsFingerprint.defaultProfile")),1),ro.value.length>0?(n(),r("option",my,a(t(o)("admin.accounts.quotaControl.tlsFingerprint.randomProfile")),1)):v("",!0),(n(!0),r(ve,null,Ue(ro.value,u=>(n(),r("option",{key:u.id,value:u.id},a(u.name),9,gy))),128))],512),[[ka,Qa.value]])])):v("",!0)]),e("div",vy,[e("div",yy,[e("div",null,[e("label",by,a(t(o)("admin.accounts.quotaControl.sessionIdMasking.label")),1),e("p",hy,a(t(o)("admin.accounts.quotaControl.sessionIdMasking.hint")),1)]),e("button",{type:"button",onClick:l[129]||(l[129]=u=>
22Ha.value=!Ha.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ha.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ha.value?"translate-x-5":"translate-x-0"])},null,2)],2)])]),e("div",fy,[e("div",xy,[e("div",null,[e("label",_y,a(t(o)("admin.accounts.quotaControl.cacheTTLOverride.label")),1),e("p",ky,a(t(o)("admin.accounts.quotaControl.cacheTTLOverride.hint")),1)]),e("button",{type:"button",onClick:l[130]||(l[130]=u=>Da.value=!Da.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Da.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Da.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Da.value?(n(),r("div",wy,[e("label",$y,a(t(o)("admin.accounts.quotaControl.cacheTTLOverride.target")),1),V(e("select",{"onUpdate:modelValue":l[131]||(l[131]=u=>Ja.value=u),class:"mt-1 block w-full rounded-md border border-gray-300 bg-white px-3 py-2 text-sm shadow-sm focus:border-primary-500 focus:outline-none focus:ring-1 focus:ring-primary-500 dark:border-dark-500 dark:bg-dark-700 dark:text-white"},[...l[200]||(l[200]=[e("option",{value:"5m"},"5m",-1),e("option",{value:"1h"},"1h",-1)])],512),[[ka,Ja.value]]),e("p",Cy,a(t(o)("admin.accounts.quotaControl.cacheTTLOverride.targetHint")),1)])):v("",!0)]),e("div",Ty,[e("div",Sy,[e("div",null,[e("label",My,a(t(o)("admin.accounts.quotaControl.customBaseUrl.label")),1),e("p",Ey,a(t(o)("admin.accounts.quotaControl.customBaseUrl.hint")),1)]),e("button",{type:"button",onClick:l[132]||(l[132]=u=>Ve.value=!Ve.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ve.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ve.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Ve.value?(n(),r("div",Uy,[V(e("input",{"onUpdate:modelValue":l[133]||(l[133]=u=>Ya.value=u),type:"text",class:"input",placeholder:t(o)("admin.accounts.quotaControl.customBaseUrl.urlHint")},null,8,Ay),[[re,Ya.value]])])):v("",!0)])])):v("",!0),e("div",null,[e("div",Ry,[e("label",Py,a(t(o)("admin.accounts.proxy")),1),U(zn)]),U(vn,{modelValue:k.proxy_id,"onUpdate:modelValue":l[134]||(l[134]=u=>k.proxy_id=u),proxies:i.proxies},null,8,["modelValue","proxies"])]),e("div",Iy,[e("div",null,[e("label",qy,a(t(o)("admin.accounts.concurrency")),1),V(e("input",{"onUpdate:modelValue":l[135]||
22(l[135]=u=>k.concurrency=u),type:"number",min:"1",class:"input",onInput:l[136]||(l[136]=u=>k.concurrency=Math.max(1,k.concurrency||1))},null,544),[[re,k.concurrency,void 0,{number:!0}]])]),e("div",null,[e("label",Oy,a(t(o)("admin.accounts.loadFactor")),1),V(e("input",{"onUpdate:modelValue":l[137]||(l[137]=u=>k.load_factor=u),type:"number",min:"1",class:"input",placeholder:String(k.concurrency||1),onInput:l[138]||(l[138]=u=>k.load_factor=k.load_factor&&k.load_factor>=1?k.load_factor:null)},null,40,Dy),[[re,k.load_factor,void 0,{number:!0}]]),e("p",Ly,a(t(o)("admin.accounts.loadFactorHint")),1)]),e("div",null,[e("label",Vy,a(t(o)("admin.accounts.priority")),1),V(e("input",{"onUpdate:modelValue":l[139]||(l[139]=u=>k.priority=u),type:"number",min:"1",class:"input","data-tour":"account-form-priority"},null,512),[[re,k.priority,void 0,{number:!0}]]),e("p",zy,a(t(o)("admin.accounts.priorityHint")),1)]),e("div",null,[e("label",Ny,a(t(o)("admin.accounts.billingRateMultiplier")),1),V(e("input",{"onUpdate:modelValue":l[140]||(l[140]=u=>k.rate_multiplier=u),type:"number",min:"0",step:"0.001",class:"input"},null,512),[[re,k.rate_multiplier,void 0,{number:!0}]]),e("p",jy,a(t(o)("admin.accounts.billingRateMultiplierHint")),1)])]),e("div",By,[e("label",Fy,a(t(o)("admin.accounts.expiresAt")),1),V(e("input",{"onUpdate:modelValue":l[141]||(l[141]=u=>Ro.value=u),type:"datetime-local",class:"input"},null,512),[[re,Ro.value]]),e("p",Hy,a(t(o)("admin.accounts.expiresAtHint")),1)]),k.platform==="openai"?(n(),r("div",Wy,[e("div",Gy,[e("div",null,[e("label",Ky,a(t(o)("admin.accounts.openai.oauthPassthrough")),1),e("p",Qy,a(t(o)("admin.accounts.openai.oauthPassthroughDesc")),1)]),e("button",{type:"button",onClick:l[142]||(l[142]=u=>$t.value=!$t.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",$t.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",$t.value?"translate-x-5":"translate-x-0"])},null,2)],2)])])):v("",!0),k.platform==="openai"&&(W.value==="oauth-based"||W.value==="apikey")?(n(),r("div",Jy,[e("div",Yy,[e("div",null,[e("label",Xy,a(t(o)("admin.accounts.openai.wsMode")),1),e("p",Zy,a(t(o)("admin.accounts.openai.wsModeDesc")),1),e("p",eb,a(t(o)(ys.value)),1)]),e("div",tb,[U(Zt,{modelValue:Uo.value,"onUpdate:modelValue":l[143]||(l[143]=u=>Uo.value=u),options:vs.value},null,8,["modelValue","options"])])])])):v("",!0),k.platform==="anthropic"&&W.value==="apikey"?(n(),r("div",ab,[e("div",ob,[e("div",null,[e("label",sb,a(t(o)("admin.accounts.anthropic.apiKeyPassthrough")),1),e("p",nb,a(t(o)("admin.accounts.anthropic.apiKeyPassthroughDesc")),1)]),e("button",{type:"button",onClick:l[144]||(l[144]=u=>ft.value=!ft.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ft.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ft.value?"translate-x-5":"translate-x-0"])},null,2)],2)])])):v("",!0),k.platform==="anthropic"&&W.value==="apikey"?(n(),r("div",rb,[e("div",lb,[e("div",null,[e("label",ib,a(t(o)("admin.accounts.anthropic.apiKeyAuthScheme")),1),e("p",ub,a(t(o)("admin.accounts.anthropic.apiKeyAuthSchemeDesc")),1)]),V(e("select",{"onUpdate:modelValue":l[145]||(l[145]=u=>Dt.value=u),class:"input w-52 text-sm"},[e("option",db,a(t(o)("admin.accounts.anthropic.apiKeyAuthSchemeXApiKey")),1),e("option",cb,a(t(o)("admin.accounts.anthropic.apiKeyAuthSchemeBearer")),1)],512),[[ka,Dt.value]])])])):v("",!0),k.platform==="anthropic"&&W.value==="apikey"&&Mt.value?(n(),r("div",pb,[e("div",mb,[e("div",null,[e("label",gb,a(t(o)("admin.accounts.anthropic.webSearchEmulation")),1),e("p",vb,a(t(o)("admin.accounts.anthropic.webSearchEmulationDesc")),1
22)]),V(e("select",{"onUpdate:modelValue":l[146]||(l[146]=u=>St.value=u),class:"input w-24 text-sm"},[e("option",yb,a(t(o)("admin.accounts.anthropic.webSearchDefault")),1),e("option",bb,a(t(o)("admin.accounts.anthropic.webSearchEnabled")),1),e("option",hb,a(t(o)("admin.accounts.anthropic.webSearchDisabled")),1)],512),[[ka,St.value]])])])):v("",!0),k.platform==="openai"&&(W.value==="oauth-based"||W.value==="apikey")?(n(),r("div",fb,[e("div",xb,[e("div",null,[e("label",_b,a(t(o)("admin.accounts.openai.longContextBilling")),1),e("p",kb,a(t(o)("admin.accounts.openai.longContextBillingDesc")),1)]),e("button",{type:"button","data-testid":"openai-long-context-billing-toggle",role:"switch","aria-checked":mt.value,onClick:oa,class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",mt.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",mt.value?"translate-x-5":"translate-x-0"])},null,2)],10,wb)])])):v("",!0),k.platform==="openai"&&W.value==="oauth-based"?(n(),r("div",$b,[e("div",Cb,[e("div",null,[e("label",Tb,a(t(o)("admin.accounts.openai.codexCLIOnly")),1),e("p",Sb,a(t(o)("admin.accounts.openai.codexCLIOnlyDesc")),1)]),e("button",{type:"button",onClick:l[147]||(l[147]=u=>Ct.value=!Ct.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ct.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ct.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Ct.value?(n(),r("div",Mb,[e("div",null,[e("label",Eb,a(t(o)("admin.accounts.openai.codexCLIOnlyAppServer")),1),e("p",Ub,a(t(o)("admin.accounts.openai.codexCLIOnlyAppServerDesc")),1)]),e("button",{type:"button",onClick:l[148]||(l[148]=u=>Ot.value=!Ot.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ot.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ot.value?"translate-x-5":"translate-x-0"])},null,2)],2)])):v("",!0)])):v("",!0),k.platform==="openai"&&(W.value==="oauth-based"||W.value==="apikey")?(n(),r("div",Ab,[e("div",Rb,[e("div",null,[e("label",Pb,a(t(o)("admin.accounts.openai.compactMode")),1),e("p",Ib,a(t(o)("admin.accounts.openai.compactModeDesc")),1)]),e("div",qb,[U(Zt,{modelValue:Lt.value,"onUpdate:modelValue":l[149]||(l[149]=u=>Lt.value=u),options:no.value},null,8,["modelValue","options"])])]),e("div",null,[e("label",Ob,a(t(o)("admin.accounts.openai.compactModelMapping")),1),e("p",Db,a(t(o)("admin.accounts.openai.compactModelMappingDesc")),1),Oe.value.length>0?(n(),r("div",Lb,[(n(!0),r(ve,null,Ue(Oe.value,(u,Z)=>(n(),r("div",{key:t(Be)(u),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":ge=>u.from=ge,type:"text",class:"input flex-1",placeholder:t(o)("admin.accounts.fromModel")},null,8,Vb),[[re,u.from]]),l[201]||(l[201]=e("span",{class:"text-gray-400"},"→",-1)),V(e("input",{"onUpdate:modelValue":ge=>u.to=ge,type:"text",class:"input flex-1",placeholder:t(o)("admin.accounts.toModel")},null,8,zb),[[re,u.to]]),e("button",{type:"button",onClick:ge=>Ko(Z),class:"text-red-500 hover:text-red-700"},[U(ae,{name:"trash",size:"sm"})],8,Nb)]))),128))])):v("",!0),e("button",{type:"button",onClick:Go,class:"btn btn-secondary text-sm"}," + "+a(t(o)("admin.accounts.addMapping")),1)])])):v("",!0),k.platform==="openai"&&W.value==="apikey"?(n(),r("div",jb,[e("div",Bb,[e("div",null,[e("label",Fb,a(t(o)("admin.accounts.openai.responsesMode")),1),e("p",Hb,a(t(o)("admin.accounts.openai.responsesModeDesc")),1
22)]),e("div",Wb,[U(Zt,{modelValue:Ft.value,"onUpdate:modelValue":l[150]||(l[150]=u=>Ft.value=u),options:So.value,disabled:!Pt.value,"data-testid":"openai-responses-mode-select"},null,8,["modelValue","options","disabled"])])]),Pt.value?v("",!0):(n(),r("p",Gb,a(t(o)("admin.accounts.openai.responsesModeTextDisabledHint")),1)),e("div",null,[e("label",Kb,a(t(o)("admin.accounts.openai.endpointCapabilities")),1),e("div",Qb,[(n(!0),r(ve,null,Ue(ua.value,u=>(n(),r("label",{key:u.value,class:"flex cursor-pointer items-center gap-2 rounded-lg border border-gray-200 px-3 py-2 text-sm dark:border-dark-600"},[e("input",{type:"checkbox",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500 dark:border-dark-500","data-testid":`openai-endpoint-capability-${u.value}`,checked:kt.value.includes(u.value),onChange:Z=>Na(u.value,Z)},null,40,Jb),e("span",Yb,a(u.label),1)]))),128))]),e("p",Xb,a(t(o)("admin.accounts.openai.endpointCapabilitiesDesc")),1)])])):v("",!0),e("div",null,[e("div",Zb,[e("div",null,[e("label",eh,a(t(o)("admin.accounts.autoPauseOnExpired")),1),e("p",th,a(t(o)("admin.accounts.autoPauseOnExpiredDesc")),1)]),e("button",{type:"button",onClick:l[151]||(l[151]=u=>Ye.value=!Ye.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ye.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ye.value?"translate-x-5":"translate-x-0"])},null,2)],2)])]),e("div",ah,[k.platform==="antigravity"?(n(),r("div",oh,[e("label",sh,[V(e("input",{type:"checkbox","onUpdate:modelValue":l[152]||(l[152]=u=>ia.value=u),class:"h-4 w-4 rounded border-gray-300 text-primary-500 focus:ring-primary-500 dark:border-dark-500"},null,512),[[bt,ia.value]]),e("span",nh,a(t(o)("admin.accounts.mixedScheduling")),1)]),e("div",rh,[l[203]||(l[203]=e("span",{class:"inline-flex h-4 w-4 cursor-help items-center justify-center rounded-full bg-gray-200 text-xs text-gray-500 hover:bg-gray-300 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"}," ? ",-1)),e("div",lh,[oe(a(t(o)("admin.accounts.mixedSchedulingTooltip"))+" ",1),l[202]||(l[202]=e("div",{class:"absolute bottom-full left-3 border-4 border-transparent border-b-gray-900 dark:border-b-gray-700"},null,-1))])])])):v("",!0),k.platform==="antigravity"?(n(),r("div",ih,[e("label",uh,[V(e("input",{type:"checkbox","onUpdate:modelValue":l[153]||(l[153]=u=>Kt.value=u),class:"h-4 w-4 rounded border-gray-300 text-primary-500 focus:ring-primary-500 dark:border-dark-500"},null,512),[[bt,Kt.value]]),e("span",dh,a(t(o)("admin.accounts.allowOverages")),1)]),e("div",ch,[l[205]||(l[205]=e("span",{class:"inline-flex h-4 w-4 cursor-help items-center justify-center rounded-full bg-gray-200 text-xs text-gray-500 hover:bg-gray-300 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"}," ? ",-1)),e("div",ph,[oe(a(t(o)("admin.accounts.allowOveragesTooltip"))+" ",1),l[204]||(l[204]=e("div",{class:"absolute bottom-full left-3 border-4 border-transparent border-b-gray-900 dark:border-b-gray-700"},null,-1))])])])):v("",!0),t(c).isSimpleMode?v("",!0):(n(),Ae(yn,{key:2,modelValue:k.group_ids,"onUpdate:modelValue":l[154]||(l[154]=u=>k.group_ids=u),groups:i.groups,platform:k.platform,"mixed-scheduling":ia.value,"data-tour":"account-form-groups"},null,8,["modelValue","groups","platform","mixed-scheduling"]))])],32)):(n(),r("div",mh,[U(Jn,{ref_key:"oauthFlowRef",ref:z,"add-method":k.platform==="anthropic"?se.value:"oauth","auth-url":f.value,"session-id":I.value,loading:q.value,error:D.value,"show-help":k.platform==="anthropic","show-proxy-warning":k.platform!=="openai"&&k.platform!=="grok"&&!!k.proxy_id,"allow-multiple":k.platform==="anthropic","show-cookie-option":k.platform==="anthropic","show-refresh-token-option":k.platform==="openai"||k.platform==="antigravity"||k.platform==="grok","show-mobile-refresh-token-option":k.platform==="openai","show-session-token-option":!1,"show-access-token-option":!1,"show-codex-session-import-option":k.platform==="openai","show-agent-identity-option":k.platform==="openai","show-codex-pat-option":k.platform==="openai","show-sso-option":k.platform==="grok","show-manual-option":!0,"initial-input-method":"manual",platform:k.platform,"show-project-id":Wt.value==="code_assist",onGenerateUrl:ns,onCookieAuth:Ds,onValidateRefreshToken:rs,onValidateMobileRefreshToken:Us,onValidateSessionToken:Do,onImportCodexSession:It,onImportCodexPat:aa,onImportSso:ue},null,8,["add-method","auth-url","session-id","loading","error","show-help","show-proxy-warning","allow-multiple","show-cookie-option","show-refresh-token-option","show-mobile-refresh-token-option","show-codex-session-import-option","show-agent-identity-option","show-codex-pat-option","show-sso-option","platform","show-project-id"])]))]),_:1},8,["show","title"]),U(wa,{show:_o.value,title:t(o)("admin.accounts.gemini.helpDialog.title"),onClose:l[156]||(l[156]=u=>_o.value=!1),"max-width":"max-w-3xl"},{footer:Me(()=>[e("div",lf,[e("button",{onClick:l[155]||(l[155]=u=>_o.value=!1),type:"button",class:"btn btn-primary"},a(t(o)("common.close")),1)])]),default:Me(()=>[e("div",xh,[e("div",null,[e("h3",_h,a(t(o)("admin.accounts.gemini.setupGuide.title")),1),e("div",kh,[e("div",null,[e("p",wh,a(t(o)("admin.accounts.gemini.setupGuide.checklistTitle")),1),e("ul",$h,[e("li",null,a(t(o)("admin.accounts.gemini.setupGuide.checklistItems.usIp")),1),e("li",null,a(t(o)("admin.accounts.gemini.setupGuide.checklistItems.age")),1)])]),e("div",null,[e("p",Ch,a(t(o)("admin.accounts.gemini.setupGuide.activationTitle")),1),e("ul",Th,[e("li",null,a(t(o)("admin.accounts.gemini.setupGuide.activationItems.geminiWeb")),1),e("li",null,a(t(o)("admin.accounts.gemini.setupGuide.activationItems.gcpProject")),1)]),e("div",Sh,[e("a",Mh,a(t(o)("admin.accounts.gemini.setupGuide.links.countryCheck")),1
22),l[208]||(l[208]=e("span",{class:"text-gray-400"},"·",-1)),e("a",Eh,a(t(o)("admin.accounts.gemini.setupGuide.links.countryChange")),1),l[209]||(l[209]=e("span",{class:"text-gray-400"},"·",-1)),e("a",Uh,a(t(o)("admin.accounts.gemini.setupGuide.links.geminiWebActivation")),1),l[210]||(l[210]=e("span",{class:"text-gray-400"},"·",-1)),e("a",Ah,a(t(o)("admin.accounts.gemini.setupGuide.links.gcpProject")),1)])])])]),e("div",Rh,[e("h3",Ph,a(t(o)("admin.accounts.gemini.quotaPolicy.title")),1),e("p",Ih,a(t(o)("admin.accounts.gemini.quotaPolicy.note")),1),e("div",qh,[e("table",Oh,[e("thead",Dh,[e("tr",null,[e("th",Lh,a(t(o)("admin.accounts.gemini.quotaPolicy.columns.channel")),1),e("th",Vh,a(t(o)("admin.accounts.gemini.quotaPolicy.columns.account")),1),e("th",zh,a(t(o)("admin.accounts.gemini.quotaPolicy.columns.limits")),1)])]),e("tbody",Nh,[e("tr",null,[e("td",jh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.googleOne.channel")),1),l[211]||(l[211]=e("td",{class:"px-3 py-2 text-gray-600 dark:text-gray-400"},"Free",-1)),e("td",Bh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.googleOne.limitsFree")),1)]),e("tr",null,[l[212]||(l[212]=e("td",{class:"px-3 py-2 text-gray-900 dark:text-white"},null,-1)),l[213]||(l[213]=e("td",{class:"px-3 py-2 text-gray-600 dark:text-gray-400"},"Pro",-1)),e("td",Fh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.googleOne.limitsPro")),1)]),e("tr",null,[l[214]||(l[214]=e("td",{class:"px-3 py-2 text-gray-900 dark:text-white"},null,-1)),l[215]||(l[215]=e("td",{class:"px-3 py-2 text-gray-600 dark:text-gray-400"},"Ultra",-1)),e("td",Hh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.googleOne.limitsUltra")),1)]),e("tr",null,[e("td",Wh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.gcp.channel")),1),l[216]||(l[216]=e("td",{class:"px-3 py-2 text-gray-600 dark:text-gray-400"},"Standard",-1)),e("td",Gh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.gcp.limitsStandard")),1)]),e("tr",null,[l[217]||(l[217]=e("td",{class:"px-3 py-2 text-gray-900 dark:text-white"},null,-1)),l[218]||(l[218]=e("td",{class:"px-3 py-2 text-gray-600 dark:text-gray-400"},"Enterprise",-1)),e("td",Kh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.gcp.limitsEnterprise")),1)]),e("tr",null,[e("td",Qh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.aiStudio.channel")),1),l[219]||(l[219]=e("td",{class:"px-3 py-2 text-gray-600 dark:text-gray-400"},"Free",-1)),e("td",Jh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.aiStudio.limitsFree")),1)]),e("tr",null,[l[220]||(l[220]=e("td",{class:"px-3 py-2 text-gray-900 dark:text-white"},null,-1)),l[221]||(l[221]=e("td",{class:"px-3 py-2 text-gray-600 dark:text-gray-400"},"Paid",-1)),e("td",Yh,a(t(o)("admin.accounts.gemini.quotaPolicy.rows.aiStudio.limitsPaid")),1)])])])]),e("div",Xh,[e("a",{href:mo.codeAssist,target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},a(t(o)("admin.accounts.gemini.quotaPolicy.docs.codeAssist")),9,Zh),e("a",{href:mo.aiStudio,target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},a(t(o)("admin.accounts.gemini.quotaPolicy.docs.aiStudio")),9,ef),e("a",{href:mo.vertex,target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},a(t(o)("admin.accounts.gemini.quotaPolicy.docs.vertex")),9,tf)])]),e("div",af,[e("h3",of,a(t(o)("admin.accounts.gemini.helpDialog.apiKeySection")),1),e("div",sf,[e("a",{href:ko.apiKey,target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},a(t(o)("admin.accounts.gemini.accountType.apiKeyLink")),9,nf),e("a",{href:ko.aiStudioPricing,target:"_blank",rel:"noreferrer",class:"text-sm text-blue-600 hover:underline dark:text-blue-400"},a(t(o)("admin.accounts.gemini.accountType.quotaLink")),9,rf)])])])]),_:1},8,["show","title"]),U(so,{show:Aa.value,title:t(o)("admin.accounts.mixedChannelWarningTitle"),message:Ao.value,"confirm-text":t(o)("common.confirm"),"cancel-text":t(o)("common.cancel"),danger:!0,onConfirm:De,onCancel:_a},null,8,["show","title","message","confirm-text","cancel-text"])],64))}}),cf={key:0,class:"space-y-4 border-t border-gray-200 pt-4 dark:border-dark-600","data-testid":"ollama-cloud-usage-settings"},pf={class:"flex items-start justify-between gap-4"},mf={class:"text-sm font-semibold text-gray-900 dark:text-white"},gf={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},vf={key:0,class:"flex h-20 items-center justify-center text-gray-400"},yf={key:0,class:"rounded border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800 dark:border-amber-800/50 dark:bg-amber-900/20 dark:text-amber-200"},bf={key:1,class:"border-y border-gray-100 py-3 dark:border-dark-700","data-testid":"ollama-cloud-usage-details"},hf={class:"grid grid-cols-[minmax(4rem,auto)_minmax(0,1fr)] gap-x-3 gap-y-1.5 text-xs"},ff={class:"text-gray-500 dark:text-gray-400"},xf={class:"break-words text-gray-900 dark:text-white"},_f={class:"text-gray-500 dark:text-gray-400"},kf={class:"break-words text-gray-900 dark:text-white"},wf={class:"text-gray-500 dark:text-gray-400"},$f={class:"break-words text-gray-900 dark:text-white"},Cf={class:"text-gray-500 dark:text-gray-400"},Tf={class:"break-words text-gray-900 dark:text-white"},Sf={class:"text-gray-500 dark:text-gray-400"},Mf={class:"break-words text-gray-900 dark:text-white"},Ef={class:"text-gray-500 dark:text-gray-400"},Uf={class:"break-words font-medium text-gray-900 dark:text-white"},Af={class:"text-gray-500 dark:text-gray-400"},Rf={class:"break-words text-gray-900 dark:text-white"},Pf={key:0,class:"mt-2 break-words border-t border-gray-100 pt-2 text-xs text-amber-700 dark:border-dark-700 dark:text-amber-300"},If={class:"input-label",for:"ollama-cloud-session"},qf=["placeholder"],Of={class:"input-hint"},Df={class:"flex flex-wrap items-center gap-2"},Lf=["disabled"],Vf=["disabled"],zf=["disabled"],Nf={key:2,class:"flex items-center justify-between gap-4 border-t border-gray-100 pt-4 dark:border-dark-700"},jf={class:"text-sm font-medium text-gray-900 dark:text-white"},Bf={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Ff=ut({__name:"OllamaCloudUsageSettings",props:{account:{}},emits:["updated"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=pa(),$=p(o.account.ollama_cloud_usage??null),P=p(""),S=p(!1),M=p(!1),L=p(!1),F=p(!1),R=w(()=>{var G;return(G=$.value)==null?void 0:G.snapshot}),_=w(()=>R.value?R.value.status==="unauthorized"?s("admin.accounts.ollamaCloud.unauthorized"):R.value.status==="failed"?s("admin.accounts.ollamaCloud.failed"):s("admin.accounts.ollamaCloud.ok"):s("admin.accounts.ollamaCloud.notRefreshed")),y=w(()=>{var G,me,ce;return((ce=(me=(G=R.value)==null?void 0:G.data)==null?void 0:me.models)==null?void 0:ce.map(le=>
22`${le.window==="five_hour"?s("admin.accounts.ollamaCloud.fiveHourShort"):s("admin.accounts.ollamaCloud.sevenDayShort")} ${le.model}: ${le.requests}`).join(", "))||"-"}),f=G=>typeof G=="number"&&Number.isFinite(G)?`${G.toFixed(G%1?1:0)}%`:"-",I=G=>{if(!G)return"-";const me=new Date(G);return Number.isNaN(me.getTime())?G:me.toLocaleString()},q=G=>{if(!G)return"-";const me=G.reset_at?I(G.reset_at):G.reset_text;return me?s("admin.accounts.ollamaCloud.windowWithReset",{percent:f(G.used_percent),reset:me}):f(G.used_percent)},D=G=>{$.value=G,c("updated",G)},z=async()=>{S.value=!0;try{D(await ye.accounts.getOllamaCloudUsage(o.account.id))}catch(G){b.showError(To(G,s("admin.accounts.ollamaCloud.loadFailed")))}finally{S.value=!1}},ee=async()=>{if(P.value.trim()){M.value=!0;try{D(await ye.accounts.saveOllamaCloudUsageSession(o.account.id,P.value)),P.value="",b.showSuccess(s("admin.accounts.ollamaCloud.sessionSaved"))}catch(G){b.showError(To(G,s("admin.accounts.ollamaCloud.sessionSaveFailed")))}finally{M.value=!1}}},ke=async()=>{M.value=!0,F.value=!1;try{D(await ye.accounts.deleteOllamaCloudUsageSession(o.account.id)),P.value="",b.showSuccess(s("admin.accounts.ollamaCloud.sessionDeleted"))}catch(G){b.showError(To(G,s("admin.accounts.ollamaCloud.sessionDeleteFailed")))}finally{M.value=!1}},W=async G=>{M.value=!0;try{D(await ye.accounts.setOllamaCloudUsageAutoRefresh(o.account.id,G))}catch(me){b.showError(To(me,s("admin.accounts.ollamaCloud.autoRefreshFailed")))}finally{M.value=!1}},se=async()=>{L.value=!0;try{D(await ye.accounts.refreshOllamaCloudUsage(o.account.id)),b.showSuccess(s("admin.accounts.ollamaCloud.refreshSuccess"))}catch(G){b.showError(Cs(G,s,"admin.accounts.ollamaCloud.errors",s("admin.accounts.ollamaCloud.refreshFailed")))}finally{L.value=!1}};return pt(()=>o.account.id,()=>{$.value=o.account.ollama_cloud_usage??null,P.value="",$.value||z()}),Js(()=>{$.value||z()}),(G,me)=>{var ce,le,ne,te,N;return(ce=$.value)!=null&&ce.eligible?(n(),r("section",cf,[e("div",pf,[e("div",null,[e("h3",mf,a(t(s)("admin.accounts.ollamaCloud.title")),1),e("p",gf,a(t(s)("admin.accounts.ollamaCloud.sessionSecurityHint")),1)]),e("span",{class:E(["whitespace-nowrap rounded px-2 py-1 text-xs font-medium",$.value.configured?"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-300":"bg-gray-100 text-gray-600 dark:bg-dark-700 dark:text-gray-300"])},a($.value.configured?t(s)("admin.accounts.ollamaCloud.configured"):t(s)("admin.accounts.ollamaCloud.notConfigured")),3)]),S.value?(n(),r("div",vf,[U(ae,{name:"refresh",size:"sm",class:"animate-spin"})])):(n(),r(ve,{key:1},[$.value.encryption_key_configured?v("",!0):(n(),r("div",yf,a(t(s)("admin.accounts.ollamaCloud.encryptionKeyRequired")),1)),R.value?(n(),r("div",bf,[e("div",hf,[e("span",ff,a(t(s)("admin.accounts.ollamaCloud.plan")),1),e("span",xf,a(((le=R.value.data)==null?void 0:le.plan)||"-"),1),e("span",_f,a(t(s)("admin.accounts.ollamaCloud.fiveHour")),1),e("span",kf,a(q((ne=R.value.data)==null?void 0:ne.five_hour)),1),e("span",wf,a(t(s)("admin.accounts.ollamaCloud.sevenDay")),1),e("span",$f,a(q((te=R.value.data)==null?void 0:te.seven_day)),1),e("span",Cf,a(t(s)("admin.accounts.ollamaCloud.balance")),1),e("span",Tf,a(((N=R.value.data)==null?void 0:N.balance)||"-"),1),e("span",Sf,a(t(s)("admin.accounts.ollamaCloud.models")),1),e("span",Mf,a(y.value),1),e("span",Ef,a(t(s)("admin.accounts.ollamaCloud.status")),1),e("span",Uf,a(_.value),1),e("span",Af,a(t(s)("admin.accounts.ollamaCloud.updatedAt")),1),e("span",Rf,a(I(R.value.fetched_at||R.value.last_attempt_at)),1)]),R.value.last_error?(n(),r("p",Pf,a(t(s)(`admin.accounts.ollamaCloud.errors.${R.value.last_error}`,R.value.last_error)),1)):v("",!0)])):v("",!0),e("div",null,[e("label",If,a(t(s)("admin.accounts.ollamaCloud.sessionLabel")),1),V(e("textarea",{id:"ollama-cloud-session","onUpdate:modelValue":me[0]||(me[0]=x=>P.value=x),rows:"3",class:"input font-mono text-xs",autocomplete:"new-password","data-1p-ignore":"","data-lpignore":"true","data-bwignore":"true",placeholder:t(s)("admin.accounts.ollamaCloud.sessionPlaceholder")},null,8,qf),[[re,P.value]]),e("p",Of,a(t(s)("admin.accounts.ollamaCloud.writeOnlyHint")),1)]),e("div",Df,[e("button",{type:"button",class:"btn btn-primary btn-sm",disabled:M.value||!P.value.trim()||!$.value.encryption_key_configured,"data-testid":"ollama-cloud-session-save",onClick:ee},[U(ae,{name:"check",size:"xs",class:"mr-1.5"}),oe(" "+a(t(s)("common.save")),1)],8,Lf),$.value.configured?(n(),r("button",{key:0,t
22ype:"button",class:"btn btn-secondary btn-sm text-red-600 dark:text-red-400",disabled:M.value,"data-testid":"ollama-cloud-session-delete",onClick:me[1]||(me[1]=x=>F.value=!0)},[U(ae,{name:"trash",size:"xs",class:"mr-1.5"}),oe(" "+a(t(s)("admin.accounts.ollamaCloud.deleteSession")),1)],8,Vf)):v("",!0),$.value.configured?(n(),r("button",{key:1,type:"button",class:"btn btn-secondary btn-sm",disabled:L.value,"data-testid":"ollama-cloud-refresh",onClick:se},[U(ae,{name:"refresh",size:"xs",class:E(["mr-1.5",{"animate-spin":L.value}])},null,8,["class"]),oe(" "+a(t(s)("admin.accounts.ollamaCloud.refreshNow")),1)],8,zf)):v("",!0)]),$.value.configured?(n(),r("div",Nf,[e("div",null,[e("label",jf,a(t(s)("admin.accounts.ollamaCloud.autoRefresh")),1),e("p",Bf,a(t(s)("admin.accounts.ollamaCloud.autoRefreshHint")),1)]),U(ho,{"model-value":$.value.auto_refresh_enabled,disabled:M.value,"data-testid":"ollama-cloud-auto-refresh","onUpdate:modelValue":W},null,8,["model-value","disabled"])])):v("",!0)],64)),U(so,{show:F.value,title:t(s)("admin.accounts.ollamaCloud.deleteSession"),message:t(s)("admin.accounts.ollamaCloud.deleteConfirm"),"confirm-text":t(s)("common.delete"),"cancel-text":t(s)("common.cancel"),danger:!0,onConfirm:ke,onCancel:me[2]||(me[2]=x=>F.value=!1)},null,8,["show","title","message","confirm-text","cancel-text"])])):v("",!0)}}}),Hf={class:"input-label"},Wf={class:"input-label"},Gf=["placeholder"],Kf={class:"input-hint"},Qf={key:0,class:"space-y-4"},Jf={class:"input-label"},Yf=["placeholder"],Xf={key:0,class:"input-hint"},Zf={class:"input-label"},e1=["placeholder"],t1={class:"input-hint"},a1={key:0,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},o1={class:"input-label"},s1={key:0,class:"mb-3 rounded-lg bg-amber-50 p-3 dark:bg-amber-900/20"},n1={class:"text-xs text-amber-700 dark:text-amber-400"},r1={class:"mb-4 flex gap-2"},l1={key:0},i1={class:"text-xs text-gray-500 dark:text-gray-400"},u1={key:0},d1={key:1},c1={class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/20"},p1={class:"text-xs text-purple-700 dark:text-purple-400"},m1={key:0,class:"mb-3 space-y-2"},g1=["onUpdate:modelValue","placeholder"],v1=["onUpdate:modelValue","placeholder"],y1=["onClick"],b1={class:"flex flex-wrap gap-2"},h1=["onClick"],f1={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},x1={class:"mb-3 flex items-center justify-between"},_1={class:"input-label mb-0"},k1={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},w1={key:0,class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},$1={class:"text-xs text-blue-700 dark:text-blue-400"},C1={key:1,class:"mt-3"},T1={class:"input-label"},S1={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},M1={key:2,class:"mt-3"},E1={class:"input-label"},U1=["placeholder"],A1={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},R1={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},P1={class:"mb-3 flex items-center justify-between"},I1={class:"input-label mb-0"},q1={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},O1={key:0,class:"space-y-3"},D1={class:"rounded-lg bg-amber-50 p-3 dark:bg-amber-900/20"},L1={class:"text-xs text-amber-700 dark:text-amber-400"},V1={class:"flex flex-wrap gap-2"},z1=["onClick"],N1={class:"flex items-center gap-2"},j1=["placeholder"],B1={class:"flex flex-wrap gap-1.5"},F1=["onClick"],H1={key:0,class:"text-xs text-gray-400"},W1={key:1,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},G1={class:"flex items-center justify-between gap-4"},K1={class:"min-w-0"},Q1={class:"input-label mb-0"},J1={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Y1={key:2,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},X1={class:"mb-3 flex items-center justify-between"},Z1={class:"input-label mb-0"},ex={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},tx={key:0,class:"space-y-2"},ax=["placeholder"],ox={key:3,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},sx={class:"mb-3 flex items-center justify-between"},nx={class:"input-label mb-0"},rx={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},lx={key:0,class:"space-y-3"},ix={class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},ux={class:"text-xs text-blue-700 dark:text-blue-400"},dx={key:4,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},cx={class:"input-label"},px={key:0,class:"mb-3 rounded-lg bg-amber-50 p-3 dark:bg-amber-900/20"},mx={class:"text-xs text-amber-700 dark:text-amber-400"},gx={class:"mb-4 flex gap-2"},vx={key:0},yx={class:"text-xs text-gray-500 dark:text-gray-400"}
vendor: 5,672 bytes, line 22
22,bx={key:0},hx={key:1},fx={class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/20"},xx={class:"text-xs text-purple-700 dark:text-purple-400"},_x={key:0,class:"mb-3 space-y-2"},kx=["onUpdate:modelValue","placeholder"],wx=["onUpdate:modelValue","placeholder"],$x=["onClick"],Cx={class:"flex flex-wrap gap-2"},Tx=["onClick"],Sx={key:5,class:"space-y-4"},Mx={class:"input-label"},Ex={class:"input-hint"},Ux={class:"input-label"},Ax={class:"input-hint"},Rx={key:6,class:"space-y-4"},Px={class:"grid grid-cols-1 gap-4 sm:grid-cols-2"},Ix=["placeholder"],qx={class:"input-hint"},Ox=["label"],Dx=["value"],Lx={class:"input-hint"},Vx={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},zx={class:"input-label"},Nx={class:"mb-4 flex gap-2"},jx={key:0},Bx={class:"text-xs text-gray-500 dark:text-gray-400"},Fx={key:0},Hx={key:1},Wx={class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/20"},Gx={class:"text-xs text-purple-700 dark:text-purple-400"},Kx={key:0,class:"mb-3 space-y-2"},Qx=["onUpdate:modelValue","placeholder"],Jx=["onUpdate:modelValue","placeholder"],Yx=["onClick"],Xx={class:"flex flex-wrap gap-2"},Zx=["onClick"],e_={key:7,class:"space-y-4"},t_={class:"input-label"},a_={class:"input-label"},o_=["placeholder"],s_={class:"input-hint"},n_={class:"input-label"},r_=["placeholder"],l_={class:"input-hint"},i_={key:1},u_={class:"input-label"},d_=["placeholder"],c_={class:"input-hint"},p_={class:"input-label"},m_={class:"input-hint"},g_={class:"flex items-center gap-2 cursor-pointer"},v_={class:"text-sm text-gray-700 dark:text-gray-300"},y_={class:"input-hint mt-1"},b_={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},h_={class:"input-label"},f_={class:"mb-4 flex gap-2"},x_={key:0},__={class:"text-xs text-gray-500 dark:text-gray-400"},k_={key:0},w_={key:1,class:"space-y-3"},$_=["onUpdate:modelValue","placeholder"],C_=["onUpdate:modelValue","placeholder"],T_=["onClick"],S_={class:"flex flex-wrap gap-2"},M_=["onClick"],E_={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},U_={class:"mb-3 flex items-center justify-between"},A_={class:"input-label mb-0"},R_={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},P_={key:0,class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},I_={class:"text-xs text-blue-700 dark:text-blue-400"},q_={key:1,class:"mt-3"},O_={class:"input-label"},D_={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},L_={key:2,class:"mt-3"},V_={class:"input-label"},z_=["placeholder"],N_={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},j_={key:8,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},B_={class:"input-label"},F_=["placeholder"],H_={class:"input-hint"},W_={key:9,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},G_={class:"input-label"},K_={class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/20"},Q_={class:"text-xs text-purple-700 dark:text-purple-400"},J_={class:"mb-3 flex flex-wrap gap-2"},Y_=["disabled"],X_={key:0,class:"mb-3 space-y-2"},Z_={class:"flex items-center gap-2"},ek=["onUpdate:modelValue","placeholder"],tk=["onUpdate:modelValue","placeholder"],ak=["onClick"],ok={key:0,class:"text-xs text-red-500"},sk={key:1,class:"text-xs text-red-500"},nk={class:"flex flex-wrap gap-2"},rk=["onClick"],lk={class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},ik={class:"mb-3 flex items-center justify-between"},uk={class:"input-label mb-0"},dk={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},ck={key:0,class:"space-y-3"},pk={class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},mk={class:"text-xs text-blue-700 dark:text-blue-400"},gk={class:"flex flex-wrap gap-2"},vk=["onClick"],yk={key:0,class:"space-y-3"},bk={class:"mb-2 flex items-center justify-between"},hk={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},fk={class:"flex items-center gap-2"},xk=["disabled","onClick"],_k=["disabled","onClick"],kk=["onClick"],wk={class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},$k={class:"input-label"},Ck=["onUpdate:modelValue","placeholder"],Tk={class:"input-label"},Sk=["onUpdate:modelValue","placeholder"],Mk={class:"sm:col-span-2"},Ek={class:"input-label"},Uk=["onUpdate:modelValue","placeholder"],Ak={class:"input-hint"},Rk={class:"sm:col-span-2"},Pk={class:"input-label"},Ik=["onUpdate:modelValue","placeholder"],qk={key:10,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Ok={class:"flex items-center justify-between"},Dk={class:"input-label mb-0"},Lk={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Vk={key:11},zk={class:"mb-1 flex items-center gap-2"},Nk={class:"input-label mb-0"},jk={class:"grid grid-cols-2 gap-4 lg:grid-cols-4"},Bk={class:"input-label"},Fk={class:"input-label"},Hk=["placeholder"],Wk={class:"input-hint"},Gk={class:"input-label"},Kk={class:"input-hint"},Qk={class:"input-label"},Jk={class:"input-hint"},Yk={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Xk={class:"input-label"},Zk={class:"input-hint"},e2={key:12,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},t2={class:"flex items-center justify-between"},a2={class:"input-label mb-0"},o2={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},s2={key:13,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},n2={class:"overflow-hidden rounded-lg border border-sky-100 bg-sky-50/60 shadow-sm dark:border-sky-900/50 dark:bg-sky-950/20"},r2={class:"flex items-start gap-3 px-4 py-3"},l2={class:"mt-0.5 flex h-9 w-9 shrink-0 items-center justify-center rounded-md bg-white text-sky-600 shadow-sm ring-1 ring-sky-100 dark:bg-dark-800 dark:text-sky-300 dark:ring-sky-900/60"},i2={class:"min-w-0 flex-1"},u2={class:"flex flex-wrap items-center gap-2"},d2={class:"input-label mb-0"}
22,c2={class:"mt-1 text-xs leading-5 text-slate-600 dark:text-slate-300"},p2={class:"border-t border-sky-100 bg-white/70 p-2 dark:border-sky-900/50 dark:bg-dark-800/70"},m2={class:"grid grid-cols-1 gap-2 sm:grid-cols-2"},g2=["data-testid","onClick"],v2={class:"min-w-0"},y2={class:"block text-sm font-medium"},b2={class:"mt-0.5 block text-xs leading-4 text-slate-500 dark:text-slate-400"},h2={key:14,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},f2={class:"flex items-center justify-between"},x2={class:"input-label mb-0"},_2={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},k2={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},w2={class:"w-52"},$2={key:15,class:"space-y-4 border-t border-gray-200 pt-4 dark:border-dark-600"},C2={class:"flex items-center justify-between gap-4"},T2={class:"input-label mb-0"},S2={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},M2={class:"w-56"},E2={key:0,class:"rounded-lg bg-gray-50 px-3 py-2 text-xs text-gray-600 dark:bg-dark-700 dark:text-gray-300"},U2={class:"font-medium"},A2={key:1,class:"rounded-lg bg-amber-50 px-3 py-2 text-xs text-amber-700 dark:bg-amber-900/20 dark:text-amber-300","data-testid":"openai-responses-mode-not-applicable"},R2={class:"input-label mb-2 block"},P2={class:"grid grid-cols-1 gap-2 sm:grid-cols-2"},I2=["data-testid","checked","onChange"],q2={class:"text-gray-700 dark:text-gray-200"},O2={class:"input-hint"},D2={key:16,class:"flex items-center justify-between gap-4 border-t border-gray-200 pt-4 dark:border-dark-600"},L2={class:"input-label mb-0"},V2={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},z2={key:18,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},N2={class:"flex items-center justify-between"},j2={class:"input-label mb-0"},B2={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},F2={key:19,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},H2={class:"flex items-center justify-between gap-4"},W2={class:"input-label mb-0"},G2={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},K2={value:"x_api_key"},Q2={value:"authorization_bearer"},J2={key:20,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Y2={class:"flex items-center justify-between"},X2={class:"input-label mb-0"},Z2={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},ew={value:"default"},tw={value:"enabled"},aw={value:"disabled"},ow={key:21,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},sw={class:"mb-3"},nw={class:"input-label mb-0 text-base font-semibold"},rw={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},lw={key:22,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},iw={class:"mb-3"},uw={class:"input-label mb-0 text-base font-semibold"},dw={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},cw={key:23,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},pw={class:"flex items-center justify-between gap-4"},mw={class:"input-label mb-0"},gw={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},vw=["aria-checked"],yw={key:24,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},bw={class:"flex items-center justify-between"},hw={class:"input-label mb-0"},fw={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},xw={key:0,class:"mt-4 flex items-center justify-between border-l-2 border-gray-200 pl-4 dark:border-dark-600"},_w={class:"input-label mb-0"},kw={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},ww={key:25,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},$w={class:"flex items-center justify-between gap-4"},Cw={class:"min-w-0"},Tw={class:"input-label mb-0"},Sw={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Mw={class:"w-44 flex-shrink-0"},Ew={key:26,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},Uw={class:"flex items-center justify-between"},Aw={class:"input-label mb-0"},Rw={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Pw={class:"w-44"},Iw={class:"rounded-lg bg-gray-50 px-3 py-2 text-xs text-gray-600 dark:bg-dark-700 dark:text-gray-300"},qw={class:"font-medium"},Ow={key:0,class:"ml-2 text-gray-500 dark:text-gray-400"},Dw={class:"input-label"},Lw={class:"input-hint"},Vw={key:0,class:"mb-3 space-y-2"},zw=["onUpdate:modelValue","placeholder"],Nw=["onUpdate:modelValue","placeholder"],jw=["onClick"],Bw={class:"flex items-center justify-between"},Fw={class:"input-label mb-0"},Hw={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Ww={key:27,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},Gw={class:"space-y-2"},Kw={class:"flex items-center justify-between"},Qw={class:"input-label mb-0"},Jw={class:"input-hint"},Yw={class:"input-label"},Xw=["disabled"],Zw={class:"input-hint"},e4={class:"space-y-2"},t4={class:"flex items-center justify-between"},a4={class:"input-label mb-0"},o4={class:"input-hint"},s4={class:"input-label"},n4=["disabled"],r4={class:"input-hint"},l4={key:28,class:"border-t border-gray-200 pt-4 dark:border-dark-600 space-y-4"},i4={class:"mb-3"},u4={class:"input-label mb-0 text-base font-semibold"},d4={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},c4={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},p4={class:"mb-3 flex items-center justify-between"},m4={class:"input-label mb-0"},g4={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},v4={key:0,class:"grid grid-cols-2 gap-4"},y4={class:"input-label"},b4={class:"relative"},h4=["placeholder"],f4={class:"input-hint"},x4={class:"input-label"},_4={class:"relative"},k4=["placeholder"],w4={class:"input-hint"},$4={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},C4={class:"mb-3 flex items-center justify-between"},T4={class:"input-label mb-0"},S4={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},M4={key:0,class:"grid grid-cols-2 gap-4"},E4={class:"input-label"},U4=["placeholder"],A4={class:"input-hint"},R4={class:"input-label"},P4={class:"relative"},I4=["placeholder"],q4={class:"absolute right-3 top-1/2 -translate-y-1/2 text-gray-500 dark:text-gray-400"},O4={class:"input-hint"},D4={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},L4={class:"mb-3 flex items-center justify-between"},V4={class:"input-label mb-0"},z4={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},N4={key:0,class:"space-y-4"},j4={class:"input-label"},B4=["placeholder"],F4={class:"input-hint"},H4={class:"input-label"},W4={class:"flex gap-2"},G4={class:"text-center"},K4={class:"mt-0.5 text-[10px] opacity-70"},Q4={class:"text-center"},J4={class:"mt-0.5 text-[10px] opacity-70"},Y4={key:0},X4={class:"input-label"},Z4=["placeholder"],e5={class:"input-hint"},t5={class:"mt-4"},a5={class:"input-label"},o5={class:"mt-1 text-xs text-gray-500 dark:text-gray-400 mb-2"},s5={class:"flex space-x-2"},n5=["onClick"],r5={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},l5={class:"flex items-center justify-between"},i5={class:"input-label mb-0"},u5={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},d5={key:0,class:"mt-3"},c5={value:null},p5={key:0,value:-1},m5=["value"],g5={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},v5={class:"flex items-center justify-between"},y5={class:"input-label mb-0"},b5={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},h5={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},f5={class:"flex items-center justify-between"},x5={class:"input-label mb-0"},_5={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},k5={key:0,class:"mt-3"},w5={class:"input-label text-xs"},$5={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},C5={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},T5={class:"flex items-center justify-between"},S5={class:"input-label mb-0"},M5={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},E5={key:0,class:"mt-3"},U5=["placeholder"],A5={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},R5={class:"input-label"},P5={key:0,class:"flex items-center gap-2"},I5={class:"flex cursor-not-allowed items-center gap-2 opacity-60"},q5={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},O5={class:"group relative"},D5={class:"pointer-events-none absolute left-0 top-full z-[100] mt-1.5 w-72 rounded bg-gray-900 px-3 py-2 text-xs text-white opacity-0 transition-opacity group-hover:opacity-100 dark:bg-gray-700"},L5={key:1,class:"mt-3 flex items-center gap-2"},V5={class:"flex cursor-pointer items-center gap-2"},z5={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},N5={class:"group relative"},j5={class:"pointer-events-none absolute left-0 top-full z-[100] mt-1.5 w-72 rounded bg-gray-900 px-3 py-2 text-xs text-white opacity-0 transition-opacity group-hover:opacity-100 dark:bg-gray-700"},B5={key:0,class:"flex justify-end gap-3"},F5=["disabled"],H5={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},No=3,us=10,Un="grok_client_tool_cache_enabled",W5=ut({__name:"EditAccountModal",props:{show:{type:Boolean},account:{},proxies:{},groups:{}},emits:["close","updated"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=pa(),$=gn(),P=w(()=>{var C;return((C=o.account)==null?void 0:C.parent_account_id)!=null}),S=C=>{o.account&&c("updated",{...o.account,ollama_cloud_usage:C})},M=w(()=>o.account?o.account.platform==="openai"?s("admin.accounts.openai.baseUrlHint"):o.account.platform==="gemini"?s("admin.accounts.gemini.baseUrlHint"):o.account.platform==="grok"?"":s("admin.accounts.baseUrlHint"):s("admin.accounts.baseUrlHint")),L=w(()=>Bo("antigravity")),F=w(()=>Bo("bedrock")),R=p(!1),_=p("https://api.anthropic.com"),y=p(""),f=p(""),I=p(""),q=p(""),D=p(""),z=p(!1),ee=p(""),ke=p(""),W=p(""),se=p("us-central1"),G=w(()=>{var C,d,X;return((C=o.account)==null?void 0:C.type)==="bedrock"&&((X=(d=o.account)==null?void 0:d.credentials)==null?void 0:X.auth_mode)==="apikey"}),me=p([]),ce=p([]),le=p("whitelist"),ne=p([]),te=[401,403,429],N=p(!1),x=p(No),H=p("");function K(C){if(!C||!C.trim())return[];const d=new Set,X=[];for(const Pe of C.split(/[,\s]+/)){const nt=Pe.trim();if(!nt)continue;const xe=Number(nt);!Number.isFinite(xe)||!Number.isInteger(xe)||xe<100||xe>599||d.has(xe)||(d.add(xe),X.push(xe))}return X.sort((Pe,nt)=>Pe-nt)}function be(C){if(!Array.isArray(C))return"";const d=[],X=new Set;for(const Pe of C){const nt=Number(typeof Pe=="string"?Pe.trim():Pe);!Number.isFinite(nt)||!Number.isInteger(nt)||nt<100||nt>599||X.has(nt)||(X.add(nt),d.push(nt))}return d.sort((Pe,nt)=>Pe-nt).join(", ")}const fe=p(!1),$e=p([]),he=p(null),Oe=p(!1),Re=p([]),je=w(()=>!!o.account&&cs(o.account.platform,o.account.type)),Xe=p(!1),Ze=p(""),it=p(!0),ot=p(!1),_t=p(!1),tt=p(null),Ke=p(null),we=p(!1),ie=p(!1),Ce=p(!1),Fe=p(!1),Je=p(!1),st=p(""),vt=p("whitelist"),At=p([]),Ye=p([]),$t=p(!1),mt=p(!1),ht=p([]),Lt=xo("edit-model-mapping"),Ft=xo("edit-openai-compact-model-mapping"),kt=xo("edit-antigravity-model-mapping"),Ht=xo("edit-temp-unsched-rule"),qt=p(!1),Ct=p(null),Ot=p(""),ft=p(null),Dt=p(!1),St=p(!1),Mt=p(null),oa=p(null),sa=p(!1),He=p(null),$a=p(null),la=p(!1),ia=p(null),Kt=p("tiered"),Et=p(null),Qt=p(""),Ca=w(()=>[{value:"",label:s("admin.accounts.quotaControl.rpmLimit.umqModeOff")},{value:"throttle",label:s("admin.accounts.quotaControl.rpmLimit.umqModeThrottle")},{value:"serialize",label:s("admin.accounts.quotaControl.rpmLimit.umqModeSerialize")}]),Nt=p(!1),na=p(null),da=p([]),Rt=p(!1),Vt=p(!1),Ut=p("5m"),wt=p(!1),yt=p(""),ct=p(!1),ea=p(!1),ca=p(""),Jt=p("auto"),zt=p("auto"),O=p(["chat_completions","embeddings"]),Q=p(Gt),pe=p(Gt),qe=p(!1),at=p(!1),Ne=p("inherit"),de=p(!1),B=p("x_api_key"),J=p("default"),Be=p(!1),{globalEnabled:Ie,state:Ge,loadGlobalState:Wt,loadFromExtra:za,writeToExtra:no,reset:So}=Bn();ye.settings.getWebSearchEmulationConfig().then(C=>{var d;Be.value=(C==null?void 0:C.enabled)===!0&&(((d=C==null?void 0:C.providers)==null?void 0:d.length)??0)>0}
22).catch(()=>{Be.value=!1}),Wt();const ma=p(null),ua=p(null),Pt=p(null),ba=p(null),Na=p(null),Ua=p(null),ja=p(null),ha=p(null),Aa=p(null),Ta=w(()=>[{value:Gt,label:s("admin.accounts.openai.wsModeOff")},{value:gs,label:s("admin.accounts.openai.wsModeCtxPool")},{value:Ms,label:s("admin.accounts.openai.wsModePassthrough")},{value:Es,label:s("admin.accounts.openai.wsModeHttpBridge")}]),co=w({get:()=>{var C;return((C=o.account)==null?void 0:C.type)==="apikey"?pe.value:Q.value},set:C=>{var d;if(((d=o.account)==null?void 0:d.type)==="apikey"){pe.value=C;return}Q.value=C}}),Mo=w(()=>Qs(co.value)),Ga=w(()=>[{value:"inherit",label:s("admin.accounts.openai.codexImageToolInherit"),description:s("admin.accounts.openai.codexImageToolInheritDesc"),selectedCardClass:"border-sky-300 bg-sky-50 text-sky-900 shadow-sm ring-1 ring-sky-200 dark:border-sky-700 dark:bg-sky-900/25 dark:text-sky-100 dark:ring-sky-800",selectedDotClass:"border-sky-500 bg-sky-500 text-white"},{value:"enabled",label:s("admin.accounts.openai.codexImageToolEnabled"),description:s("admin.accounts.openai.codexImageToolEnabledDesc"),selectedCardClass:"border-emerald-300 bg-emerald-50 text-emerald-900 shadow-sm ring-1 ring-emerald-200 dark:border-emerald-700 dark:bg-emerald-900/25 dark:text-emerald-100 dark:ring-emerald-800",selectedDotClass:"border-emerald-500 bg-emerald-500 text-white"},{value:"disabled",label:s("admin.accounts.openai.codexImageToolDisabled"),description:s("admin.accounts.openai.codexImageToolDisabledDesc"),selectedCardClass:"border-amber-300 bg-amber-50 text-amber-900 shadow-sm ring-1 ring-amber-200 dark:border-amber-700 dark:bg-amber-900/25 dark:text-amber-100 dark:ring-amber-800",selectedDotClass:"border-amber-500 bg-amber-500 text-white"},{value:"block",label:s("admin.accounts.openai.codexImageToolBlock"),description:s("admin.accounts.openai.codexImageToolBlockDesc"),selectedCardClass:"border-rose-300 bg-rose-50 text-rose-900 shadow-sm ring-1 ring-rose-200 dark:border-rose-700 dark:bg-rose-900/25 dark:text-rose-100 dark:ring-rose-800",selectedDotClass:"border-rose-500 bg-rose-500 text-white"}]),po=w(()=>{switch(Ne.value){case"enabled":return s("admin.accounts.openai.codexImageToolBadgeEnabled");case"disabled":return s("admin.accounts.openai.codexImageToolBadgeDisabled");case"block":return s("admin.accounts.openai.codexImageToolBadgeBlock");default:return s("admin.accounts.openai.codexImageToolBadgeInherit")}}),_o=w(()=>{switch(Ne.value){case"enabled":return"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300";case"disabled":return"bg-amber-100 text-amber-700 dark:bg-amber-900/40 dark:text-amber-300";case"block":return"bg-rose-100 text-rose-700 dark:bg-rose-900/40 dark:text-rose-300";default:return"bg-slate-100 text-slate-600 dark:bg-dark-600 dark:text-slate-300"}}),Ba=w(()=>[{value:"auto",label:s("admin.accounts.openai.compactModeAuto")},{value:"force_on",label:s("admin.accounts.openai.compactModeForceOn")},{value:"force_off",label:s("admin.accounts.openai.compactModeForceOff")}]),Sa=w(()=>Pl(ca.value,s("admin.accounts.openai.planTypeClear"))),Ra=w(()=>[{value:"auto",label:s("admin.accounts.openai.responsesModeAuto")},{value:"force_responses",label:s("admin.accounts.openai.responsesModeForceResponses")},{value:"force_chat_completions",label:s("admin.accounts.openai.responsesModeForceChatCompletions")}]),Ma=w(()=>{var d;if(zt.value==="force_responses")return s("admin.accounts.openai.capabilityResponses");if(zt.value==="force_chat_completions")return s("admin.accounts.openai.capabilityChatCompletions");const C=(d=o.account)==null?void 0:d.extra;return(C==null?void 0:C.openai_responses_supported)===!0?s("admin.accounts.openai.capabilityResponsesAuto"):(C==null?void 0:C.openai_responses_supported)===!1?s("admin.accounts.openai.capabilityChatCompletionsAuto"):s("admin.accounts.openai.capabilityTextAuto")}),Ea=w(()=>[{value:"chat_completions",label:Ma.value},{value:"embeddings",label:s("admin.accounts.openai.capabilityEmbeddings")}]),Pa=w(()=>O.value.includes("chat_completions")),fa=C=>{const d=["chat_completions","embeddings"],X=d.filter(Pe=>C.includes(Pe));return X.length>0?X:d},Ia=C=>{const d=C==null?void 0:C.openai_capabilities;if(Array.isArray(d))return fa(d.filter(X=>X==="chat_completions"||X==="embeddings"));if(d!==null&&typeof d=="object"){const X=d;return fa(Ea.value.map(Pe=>Pe.value).filter(Pe=>X[Pe]===!0))}return["chat_completions","embeddings"]},Fa=(C,d)=>
22{if(O.value.includes(C)){if(O.value.length<=1){const X=d==null?void 0:d.target;X&&(X.checked=!0);return}O.value=O.value.filter(X=>X!==C),Pa.value||(zt.value="auto");return}O.value=fa([...O.value,C])},qa=C=>{const d=fa(O.value);if(d.length===2){delete C.openai_capabilities;return}C.openai_capabilities=d},Ka=C=>C==="force_responses"||C==="force_chat_completions"?C:"auto",Eo=w(()=>{var C;return((C=o.account)==null?void 0:C.platform)==="openai"&&ct.value}),Oa=w(()=>{var d;if(zt.value==="force_responses")return"admin.accounts.openai.responsesStatusForcedResponses";if(zt.value==="force_chat_completions")return"admin.accounts.openai.responsesStatusForcedChatCompletions";const C=(d=o.account)==null?void 0:d.extra;return(C==null?void 0:C.openai_responses_supported)===!0?"admin.accounts.openai.responsesStatusAutoSupported":(C==null?void 0:C.openai_responses_supported)===!1?"admin.accounts.openai.responsesStatusAutoUnsupported":"admin.accounts.openai.responsesStatusAutoUnknown"}),Qa=w(()=>{var X;const C=(X=o.account)==null?void 0:X.extra;if(!o.account||o.account.platform!=="openai")return"";const d=typeof(C==null?void 0:C.openai_compact_mode)=="string"?C.openai_compact_mode:"auto";return d==="force_on"?"admin.accounts.openai.compactSupported":d==="force_off"?"admin.accounts.openai.compactUnsupported":typeof(C==null?void 0:C.openai_compact_supported)=="boolean"?C.openai_compact_supported?"admin.accounts.openai.compactSupported":"admin.accounts.openai.compactUnsupported":"admin.accounts.openai.compactAuto"}),ro=w(()=>{var C;return Bo(((C=o.account)==null?void 0:C.platform)||"anthropic")}),Ha=w(()=>[{label:s("admin.accounts.tempUnschedulable.presets.overloadLabel"),rule:{error_code:529,keywords:"overloaded, too many",duration_minutes:60,description:s("admin.accounts.tempUnschedulable.presets.overloadDesc")}},{label:s("admin.accounts.tempUnschedulable.presets.rateLimitLabel"),rule:{error_code:429,keywords:"rate limit, too many requests",duration_minutes:10,description:s("admin.accounts.tempUnschedulable.presets.rateLimitDesc")}},{label:s("admin.accounts.tempUnschedulable.presets.unavailableLabel"),rule:{error_code:503,keywords:"unavailable, maintenance",duration_minutes:30,description:s("admin.accounts.tempUnschedulable.presets.unavailableDesc")}}]),Da=w(()=>{var C,d,X;return((C=o.account)==null?void 0:C.platform)==="openai"?"https://api.openai.com":((d=o.account)==null?void 0:d.platform)==="gemini"?"https://generativelanguage.googleapis.com":((X=o.account)==null?void 0:X.platform)==="grok"?"https://api.x.ai/v1":"https://api.anthropic.com"}),Ja=w(()=>Ct.value?s("admin.accounts.mixedChannelWarning",Ct.value):Ot.value),Ve=ya({name:"",notes:"",proxy_id:null,concurrency:1,load_factor:null,priority:1,rate_multiplier:1,status:"active",group_ids:[],expires_at:null}),Ya=w(()=>{const C=[{value:"active",label:s("common.active")},{value:"inactive",label:s("common.inactive")}];return Ve.status==="error"&&C.push({value:"error",label:s("admin.accounts.status.error")}),C}),La=w({get:()=>uo(Ve.expires_at),set:C=>{Ve.expires_at=ks(C)}}),lo=C=>{if(!Number.isFinite(C))return No;const d=Math.trunc(C);return d<0?0:d>us?us:d},xa=C=>{const d=Cr(C);ne.value=d.allowedModels,me.value=d.modelMappings,le.value=d.modelMappings.length>0&&d.allowedModels.length===0?"mapping":"whitelist"},Xa=()=>ga("combined",ne.value,me.value),vs=C=>{if(!ct.value){const Pe=Xa();Pe?C.model_mapping=Pe:delete C.model_mapping}else C.model_mapping||delete C.model_mapping;const X=ga("mapping",[],ce.value);X?C.compact_model_mapping=X:delete C.compact_model_mapping},Uo=C=>{var nt;if(!C)return;Dt.value=!1,qt.value=!1,Ct.value=null,Ot.value="",ft.value=null,Ve.name=C.name,Ve.notes=C.notes||"",Ve.proxy_id=C.proxy_id,Ve.concurrency=C.concurrency,Ve.load_factor=C.load_factor??null,Ve.priority=C.priority,Ve.rate_multiplier=C.rate_multiplier??1,Ve.status=C.status==="active"||C.status==="inactive"||C.status==="error"?C.status:"active",Ve.group_ids=C.group_ids||[],Ve.expires_at=C.expires_at??null;const d=C.credentials;ot.value=(d==null?void 0:d.intercept_warmup_requests)===!0,_t.value=C.auto_pause_on_expired===!0,ke.value="",W.value="",se.value="us-central1",st.value=C.platform==="antigravity"&&C.type==="oauth"&&typeof(d==null?void 0:d.antigravity_project_id)=="string"?d.antigravity_project_id.trim():"",Fe.value=!1,Je.value=!1;const X=C.extra;if(Fe.value=(X==null?void 0:X.mixed_scheduling)===!0,Je.value=(X==null?void 0:X.allow_overages)===!0,tt.value=typeof(X==null?void 0:X.auto_pause_5h_threshold)=="number"?X.auto_pause_5h_threshold*100:null,Ke.value=typeof(X==null?void 0:X.auto_pause_7d_threshold)=="number"?X.auto_pause_7d_threshold*100:null,we.value=(X==null?void 0:X.auto_pause_5h_disabled)===!0,ie.value=(X==null?void 0:X.auto_pause_7d_disabled)===!0,Ce.value=(X==null?void 0:X.upstream_billing_probe_enabled)===!0,ct.value=!1,ea.value=!1,ca.value="",Jt.value="auto",zt.value="auto",O.value=["chat_completions","embeddings"],ce.value=[],Q.value=Gt,pe.value=Gt,qe.value=!1,at.value=!1,Ne.value="inherit",de.value=!1,B.value="x_api_key",J.value="default",C.platform==="openai"&&(C.type==="oauth"||C.type==="setup-token"||C.type==="apikey")){ct.value=(X==null?void 0:X.openai_passthrough)===!0||(X==null?void 0:X.openai_oauth_passthrough)===!0;const xe=X==null?void 0:X.openai_long_context_billing_enabled;ea.value=xe===!0,ca.value=C.type==="oauth"?Rl(C.credentials):"",Jt.value=(X==null?void 0:X.openai_compact_mode)||"auto",C.type==="apikey"&&(zt.value=Ka(X==null?void 0:X.openai_responses_mode),O.value=Ia(C.credentials),Pa.value||(zt.value="auto"));const j=typeof(X==null?void 0:X.codex_image_generation_bridge)=="boolean"?X.codex_image_generation_bridge:X==null?void 0:X.codex_image_generation_bridge_enabled;(X==null?void 0:X.codex_image_generation_explicit_tool_policy)==="str
22ip"?Ne.value="block":j===!0?Ne.value="enabled":j===!1&&(Ne.value="disabled"),Q.value=En(X,{modeKey:"openai_oauth_responses_websockets_v2_mode",enabledKey:"openai_oauth_responses_websockets_v2_enabled",fallbackEnabledKeys:["responses_websockets_v2_enabled","openai_ws_enabled"],defaultMode:Gt}),pe.value=En(X,{modeKey:"openai_apikey_responses_websockets_v2_mode",enabledKey:"openai_apikey_responses_websockets_v2_enabled",fallbackEnabledKeys:["responses_websockets_v2_enabled","openai_ws_enabled"],defaultMode:Gt}),(C.type==="oauth"||C.type==="setup-token")&&(qe.value=(X==null?void 0:X.codex_cli_only)===!0,at.value=(X==null?void 0:X.codex_cli_only_allow_app_server)===!0);const We=C.credentials,De=We==null?void 0:We.compact_model_mapping;De&&typeof De=="object"&&(ce.value=Object.entries(De).map(([_a,ta])=>({from:_a,to:ta})))}if(C.platform==="anthropic"&&C.type==="apikey"){de.value=(X==null?void 0:X.anthropic_passthrough)===!0,B.value=(X==null?void 0:X.anthropic_apikey_auth_scheme)==="authorization_bearer"?"authorization_bearer":"x_api_key";const xe=X==null?void 0:X.web_search_emulation;xe==="enabled"||xe==="disabled"?J.value=xe:xe===!0?J.value="enabled":J.value="default"}if(C.type==="apikey"||C.type==="bedrock"){const xe=X==null?void 0:X.quota_limit;ma.value=xe&&xe>0?xe:null;const j=X==null?void 0:X.quota_daily_limit;ua.value=j&&j>0?j:null;const We=X==null?void 0:X.quota_weekly_limit;Pt.value=We&&We>0?We:null,ba.value=(X==null?void 0:X.quota_daily_reset_mode)||null,Na.value=(X==null?void 0:X.quota_daily_reset_hour)??null,Ua.value=(X==null?void 0:X.quota_weekly_reset_mode)||null,ja.value=(X==null?void 0:X.quota_weekly_reset_day)??null,ha.value=(X==null?void 0:X.quota_weekly_reset_hour)??null,Aa.value=(X==null?void 0:X.quota_reset_timezone)||null,za(X)}else ma.value=null,ua.value=null,Pt.value=null,ba.value=null,Na.value=null,Ua.value=null,ja.value=null,ha.value=null,Aa.value=null,So();if(C.platform==="antigravity"){const xe=C.credentials;vt.value="mapping",At.value=[];const j=xe==null?void 0:xe.model_mapping;if(j&&typeof j=="object"){const We=Object.entries(j);Ye.value=We.map(([De,_a])=>({from:De,to:_a}))}else{const We=xe==null?void 0:xe.model_whitelist;Array.isArray(We)&&We.length>0?Ye.value=We.map(De=>String(De).trim()).filter(De=>De.length>0).map(De=>({from:De,to:De})):Ye.value=[]}}else vt.value="mapping",At.value=[],Ye.value=[];if(xs(C),Po(d),Oe.value=!1,Re.value=[],C.credentials&&cs(C.platform,C.type)){const xe=C.credentials;Oe.value=xe[Hs]===!0,Re.value=Tl(xe[Ws])}Xe.value=!1,Ze.value="";const Pe=C.platform==="grok"&&C.type==="oauth"?(nt=C.extra)==null?void 0:nt[Un]:void 0;if(it.value=C.platform==="grok"&&C.type==="oauth"&&(Pe===void 0||Pe===!0),C.platform==="grok"&&C.type==="oauth"&&C.credentials){const xe=C.credentials;Ul(xe.base_url)&&(Xe.value=!0,Ze.value=xe.base_url.trim())}if(C.type==="apikey"&&C.credentials){const xe=C.credentials,j=C.platform==="openai"?"https://api.openai.com":C.platform==="gemini"?"https://generativelanguage.googleapis.com":C.platform==="grok"?"https://api.x.ai/v1":"https://api.anthropic.com";_.value=xe.base_url||j,xa(xe.model_mapping),N.value=xe.pool_mode===!0,x.value=lo(Number(xe.pool_mode_retry_count??No)),H.value=be(xe.pool_mode_retry_status_codes),fe.value=xe.custom_error_codes_enabled===!0;const We=xe.custom_error_codes;We&&Array.isArray(We)?$e.value=[...We]:$e.value=[]}else if(C.type==="bedrock"&&C.credentials){const xe=C.credentials,j=xe.auth_mode||"sigv4";D.value=xe.aws_region||"",z.value=xe.aws_force_global==="true",j==="apikey"?ee.value="":(f.value=xe.aws_access_key_id||"",I.value="",q.value=""),N.value=xe.pool_mode===!0;const We=xe.pool_mode_retry_count;x.value=typeof We=="number"&&We>=0?We:No,H.value=be(xe.pool_mode_retry_status_codes);const De=C.extra||{};ma.value=typeof De.quota_limit=="number"?De.quota_limit:null,ua.value=typeof De.quota_daily_limit=="number"?De.quota_daily_limit:null,Pt.value=typeof De.quota_weekly_limit=="number"?De.quota_weekly_limit:null,za(De),xa(xe.model_mapping)}else if(C.type==="upstream"&&C.credentials){const xe=C.credentials;_.value=xe.base_url||""}else if((C.platform==="gemini"||C.platform==="anthropic")&&C.type==="service_account"&&C.credentials){const xe=C.credentials;ke.value=xe.project_id||"",W.value=xe.client_email||"",se.value=xe.location||xe.vertex_location||"us-central1",xa(xe.model_mapping)}else{const xe=C.platform==="openai"?"https://api.openai.com":C.platform==="gemini"?"https://generativelanguage.googleapis.com":C.platform==="grok"?"https://api.x.ai/v1":"https://api.anthropic.com";if(_.value=xe,(C.platform==="openai"||C.platform==="grok")&&C.credentials){const j=C.credentials;xa(j.model_mapping)}else le.value="whitelist",me.value=[],ne.value=[];N.value=!1,x.value=No,H.value="",fe.value=!1,$e.value=[]}y.value=""};async function ys(){try{const C=await ye.tlsFingerprintProfiles.list();da.value=C.map(d=>({id:d.id,name:d.name}))}catch{da.value=[]}}
22pt([()=>o.show,()=>o.account],([C,d],[X,Pe])=>{!C||!d||(!X||d!==Pe)&&(Uo(d),ys())},{immediate:!0});const Wa=()=>{me.value.push({from:"",to:""})},Ao=C=>{me.value.splice(C,1)},mo=(C,d)=>{if(me.value.some(Pe=>Pe.from===C)){b.showInfo(s("admin.accounts.mappingExists",{model:C}));return}me.value.push({from:C,to:d})},ko=()=>{Ye.value.push({from:"",to:""})},Fo=()=>{ce.value.push({from:"",to:""})},bs=C=>{ce.value.splice(C,1)},k=C=>{Ye.value.splice(C,1)},Za=(C,d)=>{if(Ye.value.some(Pe=>Pe.from===C)){b.showInfo(s("admin.accounts.mappingExists",{model:C}));return}Ye.value.push({from:C,to:d})},Ho=async()=>{var C;if(!(!((C=o.account)!=null&&C.id)||$t.value)){$t.value=!0;try{const X=(await ye.accounts.syncUpstreamModels(o.account.id)).models.map(nt=>nt.trim()).filter(Boolean);if(X.length===0){b.showInfo(s("admin.accounts.syncUpstreamModelsEmpty"));return}let Pe=0;for(const nt of X)Ye.value.some(j=>j.from===nt)||(Ye.value.push({from:nt,to:nt}),Pe+=1);Pe>0?b.showSuccess(s("admin.accounts.syncUpstreamModelsSuccess",{count:Pe,total:X.length})):b.showInfo(s("admin.accounts.syncUpstreamModelsNoChanges",{count:X.length}))}catch(d){const X=d instanceof Error?d.message:s("admin.accounts.syncUpstreamModelsFailed");b.showError(s("admin.accounts.syncUpstreamModelsError",{message:X}))}finally{$t.value=!1}}},hs=C=>{const d=$e.value.indexOf(C);if(d===-1){if(C===429){if(!confirm(s("admin.accounts.customErrorCodes429Warning")))return}else if(C===529&&!confirm(s("admin.accounts.customErrorCodes529Warning")))return;$e.value.push(C)}else $e.value.splice(d,1)},Ro=()=>{const C=he.value;if(C===null||C<100||C>599){b.showError(s("admin.accounts.invalidErrorCode"));return}if($e.value.includes(C)){b.showInfo(s("admin.accounts.errorCodeExists"));return}if(C===429){if(!confirm(s("admin.accounts.customErrorCodes429Warning")))return}else if(C===529&&!confirm(s("admin.accounts.customErrorCodes529Warning")))return;$e.value.push(C),he.value=null},fs=C=>{const d=$e.value.indexOf(C);d!==-1&&$e.value.splice(d,1)},wo=C=>{if(C){ht.value.push({...C});return}ht.value.push({error_code:null,keywords:"",duration_minutes:30,description:""})},Wo=C=>{ht.value.splice(C,1)},Go=(C,d)=>{const X=C+d;if(X<0||X>=ht.value.length)return;const Pe=ht.value,nt=Pe[C];Pe[C]=Pe[X],Pe[X]=nt},Ko=C=>{const d=[];for(const X of C){const Pe=Number(X.error_code),nt=Number(X.duration_minutes),xe=Qo(X.keywords);!Number.isFinite(Pe)||Pe<100||Pe>599||!Number.isFinite(nt)||nt<=0||xe.length!==0&&d.push({error_code:Math.trunc(Pe),keywords:xe,duration_minutes:Math.trunc(nt),description:X.description.trim()})}return d},io=C=>{if(!mt.value)return delete C.temp_unschedulable_enabled,delete C.temp_unschedulable_rules,!0;const d=Ko(ht.value);return d.length===0?(b.showError(s("admin.accounts.tempUnschedulable.rulesInvalid")),!1):(C.temp_unschedulable_enabled=!0,C.temp_unschedulable_rules=d,!0)};function Po(C){mt.value=(C==null?void 0:C.temp_unschedulable_enabled)===!0;const d=C==null?void 0:C.temp_unschedulable_rules;if(!Array.isArray(d)){ht.value=[];return}ht.value=d.map(X=>{const Pe=X;return{error_code:Jo(Pe.error_code),keywords:eo(Pe.keywords),duration_minutes:Jo(Pe.duration_minutes),description:typeof Pe.description=="string"?Pe.de
22scription:""}})}function xs(C){St.value=!1,Mt.value=null,oa.value=null,sa.value=!1,He.value=null,$a.value=null,la.value=!1,ia.value=null,Kt.value="tiered",Et.value=null,Qt.value="",Nt.value=!1,na.value=null,Rt.value=!1,Vt.value=!1,Ut.value="5m",wt.value=!1,yt.value="",C.platform==="anthropic"&&(C.type!=="oauth"&&C.type!=="setup-token"||(C.window_cost_limit!=null&&C.window_cost_limit>0&&(St.value=!0,Mt.value=C.window_cost_limit,oa.value=C.window_cost_sticky_reserve??10),C.max_sessions!=null&&C.max_sessions>0&&(sa.value=!0,He.value=C.max_sessions,$a.value=C.session_idle_timeout_minutes??5),C.base_rpm!=null&&C.base_rpm>0&&(la.value=!0,ia.value=C.base_rpm,Kt.value=C.rpm_strategy||"tiered",Et.value=C.rpm_sticky_buffer??null),Qt.value=C.user_msg_queue_mode??"",C.enable_tls_fingerprint===!0&&(Nt.value=!0),na.value=C.tls_fingerprint_profile_id??null,C.session_id_masking_enabled===!0&&(Rt.value=!0),C.cache_ttl_override_enabled===!0&&(Vt.value=!0,Ut.value=C.cache_ttl_override_target||"5m"),C.custom_base_url_enabled===!0&&(wt.value=!0,yt.value=C.custom_base_url||"")))}function eo(C){return Array.isArray(C)?C.filter(d=>typeof d=="string").map(d=>d.trim()).filter(d=>d.length>0).join(", "):typeof C=="string"?C:""}const Qo=C=>C.split(/[,;]/).map(d=>d.trim()).filter(d=>d.length>0);function Jo(C){const d=Number(C);return!Number.isFinite(d)||d<=0?null:Math.trunc(d)}const go=()=>{var C,d;return((C=o.account)==null?void 0:C.platform)==="antigravity"||((d=o.account)==null?void 0:d.platform)==="anthropic"},_s=C=>{const d=C==null?void 0:C.details;return d?{groupName:d.group_name||"Unknown",currentPlatform:d.current_platform||"Unknown",otherPlatform:d.other_platform||"Unknown"}:null},vo=()=>{qt.value=!1,Ct.value=null,Ot.value="",ft.value=null},Yo=C=>{var d;Ct.value=_s(C.response),Ot.value=C.message||((d=C.response)==null?void 0:d.message)||s("admin.accounts.failedToUpdate"),ft.value=C.onConfirm,qt.value=!0},Io=C=>{if(go()&&Dt.value)return{...C,confirm_mixed_channel_risk:!0};const d={...C};return delete d.confirm_mixed_channel_risk,d},Xo=async C=>{if(!go()||Dt.value)return!0;if(!o.account)return!1;try{const d=await ye.accounts.checkMixedChannelRisk({platform:o.account.platform,group_ids:Ve.group_ids,account_id:o.account.id});return d.has_risk?(Yo({response:d,onConfirm:async()=>{Dt.value=!0,await C()}}),!1):!0}catch(d){return b.showError(d.message||s("admin.accounts.failedToUpdate")),!1}},uo=Ln,ks=Vn,yo=()=>{Dt.value=!1,vo(),c("close")},qo=async(C,d)=>{R.value=!0;try{const X=await ye.accounts.update(C,Io(d));b.showSuccess(s("admin.accounts.accountUpdated")),c("updated",X),yo()}catch(X){if(X.status===409&&X.error==="mixed_channel_warning"&&go()){Yo({message:X.message,onConfirm:async()=>{Dt.value=!0,await qo(C,d)}});return}b.showError(X.message||s("admin.accounts.failedToUpdate"))}finally{R.value=!1}},bo=async()=>{var X;if(!o.account)return;const C=o.account.id;if(Ve.status!=="active"&&Ve.status!=="inactive"&&Ve.status!=="error"){b.showError(s("admin.accounts.pleaseSelectStatus"));return}const d={...Ve};try{d.proxy_id===null&&(d.proxy_id=0),Ve.expires_at===null&&(d.expires_at=0);const Pe=Ve.load_factor;if((Pe==null||Number.isNaN(Pe)||Pe<=0)&&(d.load_factor=0),d.auto_pause_on_expired=_t.value,o.account.type==="apikey"){const xe=o.account.credentials||{},j=_.value.trim()||Da.value,We=!(o.account.platform==="openai"&&ct.value),De={...xe,base_url:j},_a=((X=o.account.credentials_status)==null?void 0:X.has_api_key)??!!xe.api_key;if(y.value.trim())De.api_key=y.value.trim();else if(!_a){b.showError(s("admin.accounts.apiKeyIsRequired"));return}if(We){const ta=Xa();ta?De.model_mapping=ta:delete De.model_mapping}else xe.model_mapping&&(De.model_mapping=xe.model_mapping);if(o.account.platform==="openai"){qa(De);const ta=ga("mapping",[],ce.value);ta?De.compact_model_mapping=ta:delete De.compact_model_mapping}if(N.value){De.pool_mode=!0,De.pool_mode_retry_count=lo(x.value);const ta=K(H.value);ta.length>0?De.pool_mode_retry_status_codes=ta:delete De.pool_mode_retry_status_codes}else delete De.pool_mode,delete De.pool_mode_retry_count,delete De.pool_mode_retry_status_codes;if(fe.value?(De.custom_error_codes_enabled=!0,De.custom_error_codes=[...$e.value]):(delete De.custom_error_codes_enabled,delete De.custom_error_codes),cs(o.account.platform,"apikey")){if(Oe.value){const ta=Ts(Re.value);if(ta){b.showError(s(`admin.accounts.headerOverride.${ta}`));return}}Gs(De,Oe.value,Re.value,"edit")}if(ao(De,ot.value,"edit"),!io(De))return;d.credentials=De}else if(o.account.type==="upstream"){const j={...o.account.credentials||{}};if(j.base_url=_.value.trim(),y.value.trim()&&(j.api_key=y.value.trim()),ao(j,ot.value,"edit"),!io(j))return;d.credentials=j}else if((o.account.platform==="gemini"||o.account.platform==="anthropic")&&o.account.type==="service_account"){const xe=o.account.credentials||{},j={...xe};if(!ke.value.trim()){b.showError(s("admin.accounts.vertexSaJsonMissingProjectId"));return}if(!W.value.trim()){b.showError(s("admin.accounts.vertexSaJsonMissingClientEmail"));return}if(!se.value.trim()){b.showError(s("admin.accounts.vertexLocationRequired"));return}const We=o.account.credentials_status;if(!(We?!!(We.has_service_account_json||We.has_service_account):!!(xe.service_account_json||xe.service_account))){b.showError(s("admin.accounts.vertexSaJsonRequired"));return}j.project_id=ke.value.trim(),j.client_email=W.value.trim(),j.location=se.value.trim(),j.tier_id="vertex";const _a=Xa();if(_a?j.model_mapping=_a:delete j.model_mapping,ao(j,ot.value,"edit"),!io(j))return;d.credentials=j}else if(o.account.type==="bedrock"){const j={...o.account.credentials||{}};if(j.aws_region=D.value.trim(),z.value?j.aws_force_global="true":delete j.aws_force_global,G.value?ee.value.trim()&&(j.api_key=ee.value.trim()):(j.aws_access_key_id=f.value.trim(),I.value.trim()&&(j.aws_secret_access_key=I.value.trim()),q.value.trim()&&(j.aws_session_token=q.value.trim())),N.value){j.pool_mode=!0,j.pool_mode_retry_count=lo(x.value);const De=K(H.value);De.length>0?j.pool_mode_retry_status_codes=De:delete j.pool_mode_retry_status_codes}else delete j.pool_mode,delete j.pool_mode_retry_count,delete j.pool_mode_retry_status_codes;const We=Xa();if(We?j.model_mapping=We:delete j.model_mapping,ao(j,ot.value,"edit"),!io(j))return;d.credentials=j}else{const j={...o.account.credentials||{}};if(ao(j,ot.value,"edit"),!io(j))return;d.credentials=j}if((o.account.platform==="openai"||o.account.platform==="grok")&&o.account.type==="oauth"){const j={...P.value?{}:d.credentials||o.account.credentials||{}};if(o.account.platform==="openai")vs(j);else{const We=Xa();We?j.model_mapping=We:delete j.model_mapping}d.credentials=j}if(o.account.platform==="grok"&&o.account.type==="oauth"){const j={...d.credentials||o.account.credentials||{}};if(Xe.value){const De=Ze.value.trim();if(!De){b.showError(s("admin.accounts.grokCustomBaseUrl.required"));return}if(!/^https?:\/\//i.test(De)){b.showError(s("admin.accounts.grokCustomBaseUrl.invali
22d"));return}j.base_url=De}else delete j.base_url;if(Oe.value){const De=Ts(Re.value);if(De){b.showError(s(`admin.accounts.headerOverride.${De}`));return}}Gs(j,Oe.value,Re.value,"edit"),d.credentials=j;const We={...o.account.extra||{}};We[Un]=it.value,d.extra=We}if(o.account.platform==="openai"&&o.account.type==="oauth"&&!P.value){const xe=d.credentials||o.account.credentials||{};d.credentials=Il({...xe},ca.value)}if(o.account.platform==="antigravity"){const j={...d.credentials||o.account.credentials||{}};o.account.type==="oauth"&&cn(j,st.value,"edit"),delete j.model_whitelist,delete j.model_mapping;const We=ga("mapping",[],Ye.value);We&&(j.model_mapping=We),d.credentials=j}if(o.account.platform==="antigravity"){const j={...o.account.extra||{}};Fe.value?j.mixed_scheduling=!0:delete j.mixed_scheduling,Je.value?j.allow_overages=!0:delete j.allow_overages,d.extra=j}if(o.account.platform==="anthropic"&&(o.account.type==="oauth"||o.account.type==="setup-token")){const j={...d.extra||o.account.extra||{}};St.value&&Mt.value!=null&&Mt.value>0?(j.window_cost_limit=Mt.value,j.window_cost_sticky_reserve=oa.value??10):(delete j.window_cost_limit,delete j.window_cost_sticky_reserve),sa.value&&He.value!=null&&He.value>0?(j.max_sessions=He.value,j.session_idle_timeout_minutes=$a.value??5):(delete j.max_sessions,delete j.session_idle_timeout_minutes),la.value?(j.base_rpm=ia.value!=null&&ia.value>0?ia.value:15,j.rpm_strategy=Kt.value,Et.value!=null&&Et.value>0?j.rpm_sticky_buffer=Et.value:delete j.rpm_sticky_buffer):(delete j.base_rpm,delete j.rpm_strategy,delete j.rpm_sticky_buffer),Qt.value?j.user_msg_queue_mode=Qt.value:delete j.user_msg_queue_mode,delete j.user_msg_queue_enabled,Nt.value?(j.enable_tls_fingerprint=!0,na.value?j.tls_fingerprint_profile_id=na.value:delete j.tls_fingerprint_profile_id):(delete j.enable_tls_fingerprint,delete j.tls_fingerprint_profile_id),Rt.value?j.session_id_masking_enabled=!0:delete j.session_id_masking_enabled,Vt.value?(j.cache_ttl_override_enabled=!0,j.cache_ttl_override_target=Ut.value):(delete j.cache_ttl_override_enabled,delete j.cache_ttl_override_target),wt.value&&yt.value.trim()?(j.custom_base_url_enabled=!0,j.custom_base_url=yt.value.trim()):(delete j.custom_base_url_enabled,delete j.custom_base_url),d.extra=j}if(o.account.platform==="anthropic"&&o.account.type==="apikey"){const j={...d.extra||o.account.extra||{}};de.value?j.anthropic_passthrough=!0:delete j.anthropic_passthrough,B.value==="authorization_bearer"?j.anthropic_apikey_auth_scheme="authorization_bearer":delete j.anthropic_apikey_auth_scheme,J.value==="default"?delete j.web_search_emulation:j.web_search_emulation=J.value,d.extra=j}if(o.account.platform==="openai"&&(o.account.type==="oauth"||o.account.type==="setup-token"||o.account.type==="apikey")){const xe=o.account.extra||{},j={...xe},We=xe.codex_cli_only===!0;switch(o.account.type==="oauth"||o.account.type==="setup-token"?(j.openai_oauth_responses_websockets_v2_mode=Q.value,j.openai_oauth_responses_websockets_v2_enabled=ps(Q.value)):o.account.type==="apikey"&&(j.openai_apikey_responses_websockets_v2_mode=pe.value,j.openai_apikey_responses_websockets_v2_enabled=ps(pe.value)),delete j.responses_websockets_v2_enabled,delete j.openai_ws_enabled,ct.value?j.openai_passthrough=!0:(delete j.openai_passthrough,delete j.openai_oauth_passthrough),P.value?delete j.openai_long_context_billing_enabled:j.openai_long_context_billing_enabled=ea.value,Jt.value==="auto"?delete j.openai_compact_mode:j.openai_compact_mode=Jt.value,o.account.type==="apikey"&&(!Pa.value||zt.value==="auto"?delete j.openai_responses_mode:j.openai_responses_mode=zt.value,j.upstream_billing_probe_enabled=Ce.value),tt.value!=null&&tt.value>0?j.auto_pause_5h_threshold=tt.value/100:delete j.auto_pause_5h_threshold,Ke.value!=null&&Ke.value>0?j.auto_pause_7d_threshold=Ke.value/100:delete j.auto_pause_7d_threshold,we.value?j.auto_pause_5h_disabled=!0:delete j.auto_pause_5h_disabled,ie.value?j.auto_pause_7d_disabled=!0:delete j.auto_pause_7d_disabled,delete j.codex_image_generation_bridge_enabled,Ne.value){case"enabled":case"disabled":j.codex_image_generation_bridge=Ne.value==="enabled",delete j.codex_image_generation_explicit_tool_policy;break;
22case"block":j.codex_image_generation_explicit_tool_policy="strip",delete j.codex_image_generation_bridge;break;default:delete j.codex_image_generation_bridge,delete j.codex_image_generation_explicit_tool_policy}(o.account.type==="oauth"||o.account.type==="setup-token")&&(qe.value?j.codex_cli_only=!0:We?j.codex_cli_only=!1:delete j.codex_cli_only,delete j.codex_cli_only_allowed_clients,qe.value&&at.value?j.codex_cli_only_allow_app_server=!0:delete j.codex_cli_only_allow_app_server),d.extra=j}if(o.account.type==="apikey"||o.account.type==="bedrock"){const j={...d.extra||o.account.extra||{}};ma.value!=null&&ma.value>0?j.quota_limit=ma.value:delete j.quota_limit,ua.value!=null&&ua.value>0?j.quota_daily_limit=ua.value:(delete j.quota_daily_limit,delete j.quota_daily_used,delete j.quota_daily_start),Pt.value!=null&&Pt.value>0?j.quota_weekly_limit=Pt.value:(delete j.quota_weekly_limit,delete j.quota_weekly_used,delete j.quota_weekly_start),ba.value==="fixed"?(j.quota_daily_reset_mode="fixed",j.quota_daily_reset_hour=Na.value??0):(delete j.quota_daily_reset_mode,delete j.quota_daily_reset_hour),Ua.value==="fixed"?(j.quota_weekly_reset_mode="fixed",j.quota_weekly_reset_day=ja.value??1,j.quota_weekly_reset_hour=ha.value??0):(delete j.quota_weekly_reset_mode,delete j.quota_weekly_reset_day,delete j.quota_weekly_reset_hour),ba.value==="fixed"||Ua.value==="fixed"?j.quota_reset_timezone=Aa.value||"UTC":delete j.quota_reset_timezone,no(j,"update"),d.extra=j}if(!await Xo(async()=>{await qo(C,d)}))return;await qo(C,d)}catch(Pe){b.showError(Pe.message||s("admin.accounts.failedToUpdate"))}},Zo=async()=>{const C=ft.value;if(!C){vo();return}vo(),R.value=!0;try{await C()}finally{R.value=!1}},es=()=>{vo()};return(C,d)=>(n(),r(ve,null,[U(wa,{show:i.show,title:t(s)("admin.accounts.editAccount"),width:"wide",onClose:yo},{footer:Me(()=>[i.account?(n(),r("div",B5,[e("button",{onClick:yo,type:"button",class:"btn btn-secondary"},a(t(s)("common.cancel")),1),e("button",{type:"submit",form:"edit-account-form",disabled:R.value,class:"btn btn-primary","data-tour":"account-form-submit"},[R.value?(n(),r("svg",H5,[...d[160]||(d[160]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):v("",!0),oe(" "+a(R.value?t(s)("admin.accounts.updating"):t(s)("common.update")),1)],8,F5)])):v("",!0)]),default:Me(()=>{var X,Pe,nt,xe,j,We,De,_a,ta,$o,ts,as,os,ss,Oo,ns,rs,Do,Lo,Vo,g,T,ue,Te,Le,Y,Se,It,aa,jt,Tt,Us,As,Rs,Ps,Is,qs,Os,Ds,A,l,u,Z,ge,_e,et,Ee,ze,rt,Qe,xt,Yt,to,zo,Xt,ls,Va,Xs,hn,fn;return[i.account?(n(),r("form",{key:0,id:"edit-account-form",onSubmit:Bt(bo,["prevent"]),class:"space-y-5"},[e("div",null,[e("label",Hf,a(t(s)("common.name")),1),V(e("input",{"onUpdate:modelValue":d[0]||(d[0]=h=>Ve.name=h),type:"text",required:"",class:"input","data-tour":"edit-account-form-name"},null,512),[[re,Ve.name]])]),e("div",null,[e("label",Wf,a(t(s)("admin.accounts.notes")),1),V(e("textarea",{"onUpdate:modelValue":d[1]||(d[1]=h=>Ve.notes=h),rows:"3",class:"input",placeholder:t(s)("admin.accounts.notesPlaceholder")},null,8,Gf),[[re,Ve.notes]]),e("p",Kf,a(t(s)("admin.accounts.notesHint")),1)]),i.account.type==="apikey"?(n(),r("div",Qf,[e("div",null,[e("label",Jf,a(t(s)("admin.accounts.baseUrl")),1),V(e("input",{"onUpdate:modelValue":d[2]||(d[2]=h=>_.value=h),type:"text",class:"input",placeholder:i.account.platform==="openai"?"https://api.openai.com":i.account.platform==="gemini"?"https://generativelanguage.googleapis.com":i.account.platform==="antigravity"?"https://cloudcode-pa.googleapis.com":i.account.platform==="grok"?"https://api.x.ai/v1":"https://api.anthropic.com"},null,8,Yf),[[re,_.value]]),M.value?(n(),r("p",Xf,a(M.value),1)):v("",!0),i.account.platform==="grok"?(n(),Ae(Ss,{key:1,class:"mt-2",onSelect:d[3]||(d[3]=h=>_.value=h)})):v("",!0)]),e("div",null,[e("label",Zf,a(t(s)("admin.accounts.apiKey")),1),V(e("input",{"onUpdate:modelValue":d[4]||(d[4]=h=>y.value=h),type:"password",class:"input font-mono",autocomplete:"new-password","data-1p-ignore":"","data-lpignore":"true","data-bwignore":"true",placeholder:i.account.platform==="openai"?"sk-proj-...":i.account.platform==="gemini"?"AIza...":i.account.platform==="antigravity"?"sk-...":i.account.platform==="grok"?"xai-...":"sk-ant-..."},null,8,e1),[[re,y.value]]),e("p",t1,a(t(s)("admin.accounts.leaveEmptyToKeep")),1)]),i.account.platform!=="antigravity"?(n(),r("div",a1,[e("label",o1,a(t(s)("admin.accounts.modelRestriction")),1),Eo.value?(n(),r("div",s1,[e("p",n1,a(t(s)("admin.accounts.openai.modelRestrictionDisabledByPassthrough")),1)])):(n(),r(ve,{key:1},[e("div",r1,[e("button",{type:"button",onClick:d[5]||(d[5]=h=>le.value="whitelist"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",le.value==="whitelist"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[d[129]||(d[129]=e("svg",{class:"mr-1.5 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(s)("admin.accounts.modelWhitelist")),1)],2),e("button",{type:"button",onClick:d[6]||(d[6]=h=>le.value="mapping"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",le.value==="mapping"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[d[130]||(d[130]=e("svg",{class:"mr-1.5 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7h12m0 0l-4-4m4 4l-4 4m0 6H4m0 0l4 4m-4-4l4-4"})],-1)),oe(" "+a(t(s)("admin.accounts.modelMapping")),1)],2)]),le.value==="whitelist"?(n(),r("div",l
221,[U(Co,{modelValue:ne.value,"onUpdate:modelValue":d[7]||(d[7]=h=>ne.value=h),platform:((X=i.account)==null?void 0:X.platform)||"anthropic","account-id":(Pe=i.account)==null?void 0:Pe.id},null,8,["modelValue","platform","account-id"]),e("p",i1,[oe(a(t(s)("admin.accounts.selectedModels",{count:ne.value.length}))+" ",1),ne.value.length===0&&me.value.length===0?(n(),r("span",u1,a(t(s)("admin.accounts.supportsAllModels")),1)):v("",!0)])])):(n(),r("div",d1,[e("div",c1,[e("p",p1,[d[131]||(d[131]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(s)("admin.accounts.mapRequestModels")),1)])]),me.value.length>0?(n(),r("div",m1,[(n(!0),r(ve,null,Ue(me.value,(h,gt)=>(n(),r("div",{key:t(Lt)(h),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":lt=>h.from=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.requestModel")},null,8,g1),[[re,h.from]]),d[133]||(d[133]=e("svg",{class:"h-4 w-4 flex-shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M14 5l7 7m0 0l-7 7m7-7H3"})],-1)),V(e("input",{"onUpdate:modelValue":lt=>h.to=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.actualModel")},null,8,v1),[[re,h.to]]),e("button",{type:"button",onClick:lt=>Ao(gt),class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20"},[...d[132]||(d[132]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,y1)]))),128))])):v("",!0),e("button",{type:"button",onClick:Wa,class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"},[d[134]||(d[134]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(s)("admin.accounts.addMapping")),1)]),e("div",b1,[(n(!0),r(ve,null,Ue(ro.value,h=>(n(),r("button",{key:h.label,type:"button",onClick:gt=>mo(h.from,h.to),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",h.color])}," + "+a(h.label),11,h1))),128))])]))],64))])):v("",!0),e("div",f1,[e("div",x1,[e("div",null,[e("label",_1,a(t(s)("admin.accounts.poolMode")),1),e("p",k1,a(t(s)("admin.accounts.poolModeHint")),1)]),e("button",{type:"button",onClick:d[8]||(d[8]=h=>N.value=!N.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",N.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",N.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),N.value?(n(),r("div",w1,[e("p",$1,[U(ae,{name:"exclamationCircle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(s)("admin.accounts.poolModeInfo")),1)])])):v("",!0),N.value?(n(),r("div",C1,[e("label",T1,a(t(s)("admin.accounts.poolModeRetryCount")),1),V(e("input",{"onUpdate:modelValue":d[9]||(d[9]=h=>x.value=h),type:"number",min:"0",max:us,step:"1",class:"input"},null,512),[[re,x.value,void 0,{number:!0}]]),e("p",S1,a(t(s)("admin.accounts.poolModeRetryCountHint",{default:No,max:us})),1)])):v("",!0),N.value?(n(),r("div",M1,[e("label",E1,a(t(s)("admin.accounts.poolModeRetryStatusCodes")),1),V(e("input",{"onUpdate:modelValue":d[10]||(d[10]=h=>H.value=h),type:"text",class:"input",placeholder:te.join(", ")},null,8,U1),[[re,H.value]]),e("p",A1,a(t(s)("admin.accounts.poolModeRetryStatusCodesHint",{default:te.join(", ")})),1)])):v("",!0)]),e("div",R1,[e("div",P1,[e("div",null,[e("label",I1,a(t(s)("admin.accounts.customErrorCodes")),1),e("p",q1,a(t(s)("admin.accounts.customErrorCodesHint")),1)]),e("button",{type:"button",onClick:d[11]||(d[11]=h=>fe.value=!fe.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",fe.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",fe.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),fe.value?(n(),r("div",O1,[e("div",D1,[e("p",L1,[U(ae,{name:"exclamationTriangle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(s)("admin.accounts.customErrorCodesWarning")),1)])]),e("div",V1,[(n(!0),r(ve,null,Ue(t(Nn),h=>(n(),r("button",{key:h.value,type:"button",onClick:gt=>
22hs(h.value),class:E(["rounded-lg px-3 py-1.5 text-sm font-medium transition-colors",$e.value.includes(h.value)?"bg-red-100 text-red-700 ring-1 ring-red-500 dark:bg-red-900/30 dark:text-red-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(h.value)+" "+a(h.label),11,z1))),128))]),e("div",N1,[V(e("input",{"onUpdate:modelValue":d[12]||(d[12]=h=>he.value=h),type:"number",min:"100",max:"599",class:"input flex-1",placeholder:t(s)("admin.accounts.enterErrorCode"),onKeyup:mn(Ro,["enter"])},null,40,j1),[[re,he.value,void 0,{number:!0}]]),e("button",{type:"button",onClick:Ro,class:"btn btn-secondary px-3"},[...d[135]||(d[135]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)])])]),e("div",B1,[(n(!0),r(ve,null,Ue($e.value.sort((h,gt)=>h-gt),h=>(n(),r("span",{key:h,class:"inline-flex items-center gap-1 rounded-full bg-red-100 px-2.5 py-0.5 text-sm font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400"},[oe(a(h)+" ",1),e("button",{type:"button",onClick:gt=>fs(h),class:"hover:text-red-900 dark:hover:text-red-300"},[U(ae,{name:"x",size:"sm","stroke-width":2})],8,F1)]))),128)),$e.value.length===0?(n(),r("span",H1,a(t(s)("admin.accounts.noneSelectedUsesDefault")),1)):v("",!0)])])):v("",!0)])])):v("",!0),i.account.platform==="grok"&&i.account.type==="oauth"?(n(),r("div",W1,[e("div",G1,[e("div",K1,[e("label",Q1,a(t(s)("admin.accounts.grokClientToolCache.title")),1),e("p",J1,a(t(s)("admin.accounts.grokClientToolCache.hint")),1)]),U(ho,{modelValue:it.value,"onUpdate:modelValue":d[13]||(d[13]=h=>it.value=h),"data-testid":"grok-client-tool-cache-toggle","aria-label":t(s)("admin.accounts.grokClientToolCache.title")},null,8,["modelValue","aria-label"])])])):v("",!0),i.account.platform==="grok"&&i.account.type==="oauth"?(n(),r("div",Y1,[e("div",X1,[e("div",null,[e("label",Z1,a(t(s)("admin.accounts.grokCustomBaseUrl.title")),1),e("p",ex,a(t(s)("admin.accounts.grokCustomBaseUrl.hint")),1)]),e("button",{type:"button","data-testid":"grok-custom-base-url-toggle",onClick:d[14]||(d[14]=h=>Xe.value=!Xe.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Xe.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Xe.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Xe.value?(n(),r("div",tx,[V(e("input",{"onUpdate:modelValue":d[15]||(d[15]=h=>Ze.value=h),type:"text",class:"input","data-testid":"grok-custom-base-url-input",placeholder:t(s)("admin.accounts.grokCustomBaseUrl.placeholder")},null,8,ax),[[re,Ze.value]]),U(Ss,{onSelect:d[16]||(d[16]=h=>Ze.value=h)})])):v("",!0)])):v("",!0),je.value?(n(),r("div",ox,[e("div",sx,[e("div",null,[e("label",nx,a(t(s)("admin.accounts.headerOverride.title")),1),e("p",rx,a(t(s)("admin.accounts.headerOverride.hint")),1)]),e("button",{type:"button",onClick:d[17]||(d[17]=h=>Oe.value=!Oe.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Oe.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Oe.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Oe.value?(n(),r("div",lx,[e("div",ix,[e("p",ux,[U(ae,{name:"exclamationCircle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(s)("admin.accounts.headerOverride.info")),1)])]),U(Ks,{rows:Re.value,"onUpdate:rows":d[18]||(d[18]=h=>Re.value=h)},null,8,["rows"])])):v("",!0)])):v("",!0),(i.account.platform==="openai"||i.account.platform==="grok")&&i.account.type==="oauth"?(n(),r("div",dx,[e("label",cx,a(t(s)("admin.accounts.modelRestriction")),1),Eo.value?(n(),r("div",px,[e("p",mx,a(t(s)("admin.accounts.openai.modelRestrictionDisabledByPassthrough")),1)])):(n(),r(ve,{key:1},[e("div",gx,[e("button",{type:"button",onClick:d[19]||(d[19]=h=>le.value="whitelist"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",le.value==="whitelist"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(s)("admin.accounts.modelWhitelist")),3),e("button",{type:"button",onClick:d[20]||(d[20]=h=>le.value="mapping"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",le.value==="mapping"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(s)("admin.accounts.modelMapping")),3)]),le.value==="whitelist"?(n(),r("div",vx,[U(Co,{modelValue:ne.value,"onUpdate:modelValue":d[21]||(d[21]=h=>ne.value=h),platform:((nt=i.account)==null?void 0:nt.platform)||"anthropic","account-id":(xe=i.account)==null?void 0:xe.id},null,8,["modelValue","platform","account-id"]),e("p",yx,[oe(a(t(s)("admin.accounts.selectedModels",{count:ne.value.length}))+" ",1),ne.value.length===0&&me.value.length===0?(n(),r("span",bx,a(t(s)("admin.accounts.supportsAllModels")),1)):v("",!0)])])):(n(),r("div",hx,[e("div",fx,[e("p",xx,a(t(s)("admin.accounts.mapRequestModels")),1)]),me.value.length>0?(n(),r("div",_x,[(n(!0),r(ve,null,Ue(me.value,(h,gt)=>(n(),r("div",{key:"oauth-"+t(Lt)(h),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":lt=>h.from=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.requestModel")},null,8,kx),[[re,h.from]]),d[137]||(d[137]=e("svg",{class:"h-4 w-4 flex-shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M14 5l7 7m0 0l-7 7m7-7H3"})],-1)),V(e("input",{"onUpdate:modelValue":lt=>h.to=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.actualModel")},null,8,wx),[[re,h.to]]),e("button",{type:"button",onClick:lt=>Ao(gt),class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20"},[...d[136]||(d[136]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,$x)]))),128))])):v("",!0),e("button",{type:"button",onClick:Wa,class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"}," + "+a(t(s)("admin.accounts.addMapping")),1),e("div",Cx,[(n(!0),r(ve,null,Ue(ro.value,h=>(n(),r("button",{key:"oauth-"+h.label,type:"button",onClick:gt=>mo(h.from,h.to),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",h.color])}," + "+a(h.label),11,Tx))),128))])]))],64))])):v("",!0),i.account.type==="upstream"?(n(),r("div",Sx,[e("div",null,[e("label",Mx,a(t(s)("admin.accounts.upstream.baseUrl")),1),V(e("input",{"onUpdate:modelValue":d[22]||(
22d[22]=h=>_.value=h),type:"text",class:"input",placeholder:"https://cloudcode-pa.googleapis.com"},null,512),[[re,_.value]]),e("p",Ex,a(t(s)("admin.accounts.upstream.baseUrlHint")),1)]),e("div",null,[e("label",Ux,a(t(s)("admin.accounts.upstream.apiKey")),1),V(e("input",{"onUpdate:modelValue":d[23]||(d[23]=h=>y.value=h),type:"password",class:"input font-mono",placeholder:"sk-..."},null,512),[[re,y.value]]),e("p",Ax,a(t(s)("admin.accounts.leaveEmptyToKeep")),1)])])):v("",!0),(i.account.platform==="gemini"||i.account.platform==="anthropic")&&i.account.type==="service_account"?(n(),r("div",Rx,[e("div",Px,[e("div",null,[d[138]||(d[138]=e("label",{class:"input-label"},"Project ID",-1)),V(e("input",{"onUpdate:modelValue":d[24]||(d[24]=h=>ke.value=h),type:"text",class:"input font-mono",readonly:"",placeholder:t(s)("admin.accounts.vertexProjectIdPlaceholder")},null,8,Ix),[[re,ke.value]]),e("p",qx,a(t(s)("admin.accounts.vertexSaJsonEditHint")),1)]),e("div",null,[d[139]||(d[139]=e("label",{class:"input-label"},"Location",-1)),V(e("select",{"onUpdate:modelValue":d[25]||(d[25]=h=>se.value=h),required:"",class:"input font-mono"},[(n(!0),r(ve,null,Ue(t(jn),h=>(n(),r("optgroup",{key:h.label,label:h.label},[(n(!0),r(ve,null,Ue(h.options,gt=>(n(),r("option",{key:gt.value,value:gt.value},a(gt.label),9,Dx))),128))],8,Ox))),128))],512),[[ka,se.value]]),e("p",Lx,a(t(s)("admin.accounts.vertexLocationHint")),1)])]),e("div",Vx,[e("label",zx,a(t(s)("admin.accounts.modelRestriction")),1),e("div",Nx,[e("button",{type:"button",onClick:d[26]||(d[26]=h=>le.value="whitelist"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",le.value==="whitelist"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[d[140]||(d[140]=e("svg",{class:"mr-1.5 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(s)("admin.accounts.modelWhitelist")),1)],2),e("button",{type:"button",onClick:d[27]||(d[27]=h=>le.value="mapping"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",le.value==="mapping"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[d[141]||(d[141]=e("svg",{class:"mr-1.5 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7h12m0 0l-4-4m4 4l-4 4m0 6H4m0 0l4 4m-4-4l4-4"})],-1)),oe(" "+a(t(s)("admin.accounts.modelMapping")),1)],2)]),le.value==="whitelist"?(n(),r("div",jx,[U(Co,{modelValue:ne.value,"onUpdate:modelValue":d[28]||(d[28]=h=>ne.value=h),platform:((j=i.account)==null?void 0:j.platform)||"anthropic","account-id":(We=i.account)==null?void 0:We.id},null,8,["modelValue","platform","account-id"]),e("p",Bx,[oe(a(t(s)("admin.accounts.selectedModels",{count:ne.value.length}))+" ",1),ne.value.length===0&&me.value.length===0?(n(),r("span",Fx,a(t(s)("admin.accounts.supportsAllModels")),1)):v("",!0)])])):(n(),r("div",Hx,[e("div",Wx,[e("p",Gx,[d[142]||(d[142]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(s)("admin.accounts.mapRequestModels")),1)])]),me.value.length>0?(n(),r("div",Kx,[(n(!0),r(ve,null,Ue(me.value,(h,gt)=>(n(),r("div",{key:t(Lt)(h),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":lt=>h.from=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.requestModel")},null,8,Qx),[[re,h.from]]),d[144]||(d[144]=e("svg",{class:"h-4 w-4 flex-shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M14 5l7 7m0 0l-7 7m7-7H3"})],-1)),V(e("input",{"onUpdate:modelValue":lt=>h.to=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.actualModel")},null,8,Jx),[[re,h.to]]),e("button",{type:"button",onClick:lt=>Ao(gt),class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20"},[...d[143]||(d[143]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,Yx)]))),128))])):v("",!0),e("button",{type:"button",onClick:Wa,class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"},[d[145]||(d[145]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(s)("admin.accounts.addMapping")),1)]),e("div",Xx,[(n(!0),r(ve,null,Ue(ro.value,h=>(n(),r("button",{key:h.label,type:"button",onClick:gt=>mo(h.from,h.to),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",h.color])}," + "+a(h.label),11,Zx))),128))])]))])])):v("",!0),i.account.type==="bedrock"?(n(),r("div",e_,[G.value?v("",!0):(n(),r(ve,{key:0},[e("div",null,[e("label",t_,a(t(s)("admin.accounts.bedrockAccessKeyId")),1),V(e("input",{"onUpdate:modelValue":d[29]||(d[29]=h=>f.value=h),type:"text",class:"input font-mono",placeholder:"AKIA..."},null,512),[[re,f.value]])]),e("div",null,[e("label",a_,a(t(s)("admin.accounts.bedrockSecretAccessKey")),1),V(e("input",{"onUpdate:modelValue":d[30]||(d[30]=h=>I.value=h),type:"password",class:"input font-mono",placeholder:t(s)("admin.accounts.bedrockSecretKeyLeaveEmpty")},null,8,o_),[[re,I.value]]),e("p",s_,a(t(s)("admin.accounts.bedrockSecretKeyLeaveEmpty")),1)]),e("div",null,[e("label",n_,a(t(s)("admin.accounts.bedrockSessionToken")),1),V(e("input",{"onUpdate:modelValue":d[31]||(d[31]=h=>q.value=h),type:"password",class:"input font-mono",placeholder:t(s)("admin.accounts.bedrockSecretKeyLeaveEmpty")},null,8,r_),[[re,q.value]]),e("p",l_,a(t(s)("admin.accounts.bedrockSessionTokenHint")),1)])],64)),G.value?(n(),r("div",i_,[e("label",u_,a(t(s)("admin.accounts.bedrockApiKeyInput")),1),V(e("input",{"onUpdate:modelValue":d[32]||(d[32]=h=>ee.value=h),type:"password",class:"input font-mono",placeholder:t(s)("admin.accounts.bedrockApiKeyLeaveEmpty")},null,8,d_),[[re,ee.value]]),e("p",c_,a(t(s)("admin.accounts.bedrockApiKeyLeaveEmpty")),1)])):v("",!0),e("div",null,[e("label",p_,a(t(s)("admin.accounts.bedrockRegion")),1),V(e("input",{"onUpdate:modelValue":d[33]||(d[33]=h=>D.value=h),type:"text",class:"input",placeholder:"us-east-1"},null,512),[[re,D.value]]),e("p",m_,a(t(s)("admin.accounts.bedrockRegionHint")),1)]),e("div",null,[e("label",g_,[V(e("input",{"onUpdate:modelValue":d[34]||(d[34]=h=>z.value=h),type:"checkbox",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500 dark:border-dark-500"},null,512),[[bt,z.value]]),e("span",v_,a(t(s)("admin.accounts.bedrockForceGlobal")),1)]),e("p",y_,a(t(s)("admin.accounts.bedrockForceGlobalHint")),1)]),e("div",b_,[e("label",h_,a(t(s)("admin.accounts.modelRestriction")),1),e("div",f_,[e("button",{type:"button",onClick:d[35]||(d[35]=h=>le.value="whitelist"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",le.value==="whitelist"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(s)("admin.accounts.modelWhitelist")),3),e("button",{type:"button",onClick:d[36]||(d[36]=h=>le.value="mapping"),class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",le.value==="mapping"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(s)("admin.accounts.modelMapping")),3)]),le.value==="whitelist"?(n(),r("div",x_,[U(Co,{modelValue:ne.value,"onUpdate:modelValue":d[37]||(d[37]=h=>ne.value=h),platform:"anthropic"},null,8,["modelValue"]),e("p",__,[oe(a(t(s)("admin.accounts.selectedModels",{count:ne.value.length}))+" ",1),ne.value.length===0&&me.value.length===0?(n(),r("span",k_,a(t(s)("admin.accounts.supportsAllModels")),1)):v("",!0)])])):(n(),r("div",w_,[(n(!0),r(ve,null,Ue(me.value,(h,gt)=>(n(),r("div",{key:t(Lt)(h),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":lt=>h.from=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.fromModel")},null,8,$_),[[re,h.from]]),d[146]||(d[146]=e("span",{class:"text-gray-400"},"→",-1)),V(e("input",{"onUpdate:modelValue":lt=>h.to=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.toModel")},null,8,C_),[[re,h.to]]),e("button",{type:"button",onClick:lt=>me.value.splice(gt,1),class:"text-red-500 hover:text-red-700"},[U(ae,{name:"trash",size:"sm"})],8,T_)]))),128)),e("button",{type:"button",onClick:d[38]||(d[38]=h=>me.value.push({from:"",to:""})),class:"btn btn-secondary text-sm"}," + "+a(t(s)("admin.accounts.addMapping")),1),e("div",S_,[(n(!0),r(ve,null,Ue(F.value,h=>(n(),r("button",{key:h.from,type:"button",onClick:gt=>me.value.push({from:h.from,to:h.to}),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",h.color])}," + "+a(h.label),11,M_))),128))])]))]),e("div",E_,[e("div",U_,[e("div",null,[e("label",A_,a(t(s)("admin.accounts.poolMode")),1),e("p",R_,a(t(s)("admin.accounts.poolModeHint")),1)]),e("button",{type:"button",onClick:d[39]||(d[39]=h=>
22N.value=!N.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",N.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",N.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),N.value?(n(),r("div",P_,[e("p",I_,[U(ae,{name:"exclamationCircle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(s)("admin.accounts.poolModeInfo")),1)])])):v("",!0),N.value?(n(),r("div",q_,[e("label",O_,a(t(s)("admin.accounts.poolModeRetryCount")),1),V(e("input",{"onUpdate:modelValue":d[40]||(d[40]=h=>x.value=h),type:"number",min:"0",max:us,step:"1",class:"input"},null,512),[[re,x.value,void 0,{number:!0}]]),e("p",D_,a(t(s)("admin.accounts.poolModeRetryCountHint",{default:No,max:us})),1)])):v("",!0),N.value?(n(),r("div",L_,[e("label",V_,a(t(s)("admin.accounts.poolModeRetryStatusCodes")),1),V(e("input",{"onUpdate:modelValue":d[41]||(d[41]=h=>H.value=h),type:"text",class:"input",placeholder:te.join(", ")},null,8,z_),[[re,H.value]]),e("p",N_,a(t(s)("admin.accounts.poolModeRetryStatusCodesHint",{default:te.join(", ")})),1)])):v("",!0)])])):v("",!0),i.account.platform==="antigravity"&&i.account.type==="oauth"?(n(),r("div",j_,[e("label",B_,a(t(s)("admin.accounts.antigravityProjectIdLabel")),1),V(e("input",{"onUpdate:modelValue":d[42]||(d[42]=h=>st.value=h),"data-testid":"antigravity-project-id-input",type:"text",class:"input font-mono",placeholder:t(s)("admin.accounts.antigravityProjectIdPlaceholder")},null,8,F_),[[re,st.value]]),e("p",H_,a(t(s)("admin.accounts.antigravityProjectIdHint")),1)])):v("",!0),i.account.platform==="antigravity"?(n(),r("div",W_,[e("label",G_,a(t(s)("admin.accounts.modelRestriction")),1),e("div",null,[e("div",K_,[e("p",Q_,a(t(s)("admin.accounts.mapRequestModels")),1)]),e("div",J_,[e("button",{type:"button",onClick:Ho,disabled:$t.value||!((De=i.account)!=null&&De.id),class:"rounded-lg border border-emerald-200 px-3 py-1.5 text-sm text-emerald-600 hover:bg-emerald-50 disabled:cursor-not-allowed disabled:opacity-60 dark:border-emerald-800 dark:text-emerald-400 dark:hover:bg-emerald-900/30"},a($t.value?t(s)("admin.accounts.syncUpstreamModelsLoading"):t(s)("admin.accounts.syncUpstreamModels")),9,Y_)]),Ye.value.length>0?(n(),r("div",X_,[(n(!0),r(ve,null,Ue(Ye.value,(h,gt)=>(n(),r("div",{key:t(kt)(h),class:"space-y-1"},[e("div",Z_,[V(e("input",{"onUpdate:modelValue":lt=>h.from=lt,type:"text",class:E(["input flex-1",t(Bs)(h.from)?"":"border-red-500 dark:border-red-500",(h.to.includes("*"),"")]),placeholder:t(s)("admin.accounts.requestModel")},null,10,ek),[[re,h.from]]),d[148]||(d[148]=e("svg",{class:"h-4 w-4 flex-shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M14 5l7 7m0 0l-7 7m7-7H3"})],-1)),V(e("input",{"onUpdate:modelValue":lt=>h.to=lt,type:"text",class:E(["input flex-1",h.to.includes("*")?"border-red-500 dark:border-red-500":""]),placeholder:t(s)("admin.accounts.actualModel")},null,10,tk),[[re,h.to]]),e("button",{type:"button",onClick:lt=>k(gt),class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20"},[...d[147]||(d[147]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,ak)]),t(Bs)(h.from)?v("",!0):(n(),r("p",ok,a(t(s)("admin.accounts.wildcardOnlyAtEnd")),1)),h.to.includes("*")?(n(),r("p",sk,a(t(s)("admin.accounts.targetNoWildcard")),1)):v("",!0)]))),128))])):v("",!0),e("button",{type:"button",onClick:ko,class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"},[d[149]||(d[149]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(s)("admin.accounts.addMapping")),1)]),e("div",nk,[(n(!0),r(ve,null,Ue(L.value,h=>(n(),r("button",{key:h.label,type:"button",onClick:gt=>Za(h.from,h.to),class:E(["rounded-lg px-3 py-1 text-xs transition-colors",h.color])}," + "+a(h.label),11,rk))),128))])])])):v("",!0),e("div",lk,[e("div",ik,[e("div",null,[e("label",uk,a(t(s)("admin.accounts.tempUnschedulable.title")),1),e("p",dk,a(t(s)("admin.accounts.tempUnschedulable.hint")),1)]),e("button",{type:"button",onClick:d[43]||(d[43]=h=>mt.value=!mt.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",mt.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",mt.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),mt.value?(n(),r("div",ck,[e("div",pk,[e("p",mk,[U(ae,{name:"exclamationTriangle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(s)("admin.accounts.tempUnschedulable.notice")),1)])]),e("div",gk,[(n(!0),r(ve,null,Ue(Ha.value,h=>(n(),r("button",{key:h.label,type:"button",onClick:gt=>wo(h.rule),class:"rounded-lg bg-gray-100 px-3 py-1.5 text-xs font-medium text-gray-600 transition-colors hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-300 dark:hover:bg-dark-500"}," + "+a(h.label),9,vk))),128))]),ht.value.length>0?(n(),r("div",yk,[(n(!0),r(ve,null,Ue(ht.value,(h,gt)=>(n(),r("div",{key:t(Ht)(h),class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},[e("div",bk,[e("span",hk,a(t(s)("admin.accounts.tempUnschedulable.ruleIndex",{index:gt+1})),1),e("div",fk,[e("button",{type:"button",disabled:gt===0,onClick:lt=>Go(gt,-1),class:"rounded p-1 text-gray-400 transition-colors hover:text-gray-600 disabled:cursor-not-allowed disabled:opacity-40 dark:hover:text-gray-200"},[U(ae,{name:"chevronUp",size:"sm","stroke-width":2})],8,xk),e("button",{type:"button",disabled:gt===ht.value.length-1,onClick:lt=>Go(gt,1),class:"rounded p-1 text-gray-400 transition-colors hover:text-gray-600 disabled:cursor-not-allowed disabled:opacity-40 dark:hover:text-gray-200"},[...d[150]||(d[150]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 9l-7 7-7-7"})],-1)])],8,_k),e("button",{type:"button",onClick:lt=>Wo(gt),class:"rounded p-1 text-red-500 transition-colors hover:text-red-600"},[U(ae,{name:"x",size:"sm","stroke-width":2})],8,kk)])]),e("div",wk,[e("div",null,[e("label",$k,a(t(s)("admin.accounts.tempUnschedulable.errorCode")),1),V(e("input",{"onUpdate:modelValue":lt=>h.error_code=lt,type:"number",min:"100",max:"599",class:"input",placeholder:t(s)("admin.accounts.tempUnschedulable.errorCodePlaceholder")},null,8,Ck),[[re,h.error_code,void 0,{number:!0}]])]),e("div",null,[e("label",Tk,a(t(s)("admin.accounts.tempUnschedulable.durationMinutes")),1),V(e("input",{"onUpdate:modelValue":lt=>h.duration_minutes=lt,type:"number",min:"1",class:"input",placeholder:t(s)("admin.accounts.tempUnschedulable.durationPlaceholder")},null,8,Sk),[[re,h.duration_minutes,void 0,{number:!0}]])]),e("div",Mk,[e("label",Ek,a(t(s)("admin.accounts.tempUnschedulable.keywords")),1),V(e("input",{"onUpdate:modelValue":lt=>h.keywords=lt,type:"text",class:"input",placeholder:t(s)("admin.accounts.tempUnschedulable.keywordsPlaceholder")},null,8,Uk),[[re,h.keywords]]),e("p",Ak,a(t(s)("admin.accounts.tempUnschedulable.keywordsHint")),1)]),e("div",Rk,[e("label",Pk,a(t(s)("admin.accounts.tempUnschedulable.description")),1),V(e("input",{"onUpdate:modelValue":lt=>h.description=lt,type:"text",class:"input",placeholder:t(s)("admin.accounts.tempUnschedulable.descriptionPlaceholder")},null,8,Ik),[[re,h.description]])])])]))),128))])):v("",!0),e("button",{type:"button",onClick:d[44]||(d[44]=h=>wo()),class:"w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-sm text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300"},[d[151]||(d[151]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(s)("admin.accounts.tempUnschedulable.addRule")),1)])])):v("",!0)]),((_a=i.account)==null?void 0:_a.platform)==="anthropic"||((ta=i.account)==null?void 0:ta.platform)==="antigravity"?(n(),r("div",qk,[e("div",Ok,[e("div",null,[e("label",Dk,a(t(s)("admin.accounts.interceptWarmupRequests")),1),e("p",Lk,a(t(s)("admin.accounts.interceptWarmupRequestsDesc")),1
22)]),e("button",{type:"button",onClick:d[45]||(d[45]=h=>ot.value=!ot.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ot.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ot.value?"translate-x-5":"translate-x-0"])},null,2)],2)])])):v("",!0),P.value?v("",!0):(n(),r("div",Vk,[e("div",zk,[e("label",Nk,a(t(s)("admin.accounts.proxy")),1),U(zn)]),U(vn,{modelValue:Ve.proxy_id,"onUpdate:modelValue":d[46]||(d[46]=h=>Ve.proxy_id=h),proxies:i.proxies},null,8,["modelValue","proxies"])])),e("div",jk,[e("div",null,[e("label",Bk,a(t(s)("admin.accounts.concurrency")),1),V(e("input",{"onUpdate:modelValue":d[47]||(d[47]=h=>Ve.concurrency=h),type:"number",min:"1",class:"input",onInput:d[48]||(d[48]=h=>Ve.concurrency=Math.max(1,Ve.concurrency||1))},null,544),[[re,Ve.concurrency,void 0,{number:!0}]])]),e("div",null,[e("label",Fk,a(t(s)("admin.accounts.loadFactor")),1),V(e("input",{"onUpdate:modelValue":d[49]||(d[49]=h=>Ve.load_factor=h),type:"number",min:"1",class:"input",placeholder:String(Ve.concurrency||1),onInput:d[50]||(d[50]=h=>Ve.load_factor=Ve.load_factor&&Ve.load_factor>=1?Ve.load_factor:null)},null,40,Hk),[[re,Ve.load_factor,void 0,{number:!0}]]),e("p",Wk,a(t(s)("admin.accounts.loadFactorHint")),1)]),e("div",null,[e("label",Gk,a(t(s)("admin.accounts.priority")),1),V(e("input",{"onUpdate:modelValue":d[51]||(d[51]=h=>Ve.priority=h),type:"number",min:"1",class:"input","data-tour":"account-form-priority"},null,512),[[re,Ve.priority,void 0,{number:!0}]]),e("p",Kk,a(t(s)("admin.accounts.priorityHint")),1)]),e("div",null,[e("label",Qk,a(t(s)("admin.accounts.billingRateMultiplier")),1),V(e("input",{"onUpdate:modelValue":d[52]||(d[52]=h=>Ve.rate_multiplier=h),type:"number",min:"0",step:"0.001",class:"input"},null,512),[[re,Ve.rate_multiplier,void 0,{number:!0}]]),e("p",Jk,a(t(s)("admin.accounts.billingRateMultiplierHint")),1)])]),e("div",Yk,[e("label",Xk,a(t(s)("admin.accounts.expiresAt")),1),V(e("input",{"onUpdate:modelValue":d[53]||(d[53]=h=>La.value=h),type:"datetime-local",class:"input"},null,512),[[re,La.value]]),e("p",Zk,a(t(s)("admin.accounts.expiresAtHint")),1)]),(($o=i.account)==null?void 0:$o.platform)==="openai"&&(((ts=i.account)==null?void 0:ts.type)==="oauth"||((as=i.account)==null?void 0:as.type)==="setup-token"||((os=i.account)==null?void 0:os.type)==="apikey")?(n(),r("div",e2,[e("div",t2,[e("div",null,[e("label",a2,a(t(s)("admin.accounts.openai.oauthPassthrough")),1),e("p",o2,a(t(s)("admin.accounts.openai.oauthPassthroughDesc")),1)]),e("button",{type:"button",onClick:d[54]||(d[54]=h=>ct.value=!ct.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ct.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ct.value?"translate-x-5":"translate-x-0"])},null,2)],2)])])):v("",!0),((ss=i.account)==null?void 0:ss.platform)==="openai"&&(((Oo=i.account)==null?void 0:Oo.type)==="oauth"||((ns=i.account)==null?void 0:ns.type)==="setup-token"||((rs=i.account)==null?void 0:rs.type)==="apikey")?(n(),r("div",s2,[e("div",n2,[e("div",r2,[e("div",l2,[U(ae,{name:"sparkles",size:"sm"})]),e("div",i2,[e("div",u2,[e("label",d2,a(t(s)("admin.accounts.openai.codexImageTool")),1),e("span",{class:E(["rounded-full px-2 py-0.5 text-[11px] font-medium",_o.value])},a(po.value),3)]),e("p",c2,a(t(s)("admin.accounts.openai.codexImageToolDesc")),1)])]),e("div",p2,[e("div",m2,[(n(!0),r(ve,null,Ue(Ga.value,h=>(n(),r("button",{key:h.value,type:"button","data-testid":`codex-image-tool-${h.value}`,onClick:gt=>Ne.value=h.value,class:E(["group flex min-h-[62px] items-start gap-2 rounded-md border px-3 py-2 text-left transition-all",Ne.value===h.value?h.selectedCardClass:"border-transparent bg-transparent text-slate-600 hover:border-gray-200 hover:bg-gray-50 dark:text-slate-300 dark:hover:border-dark-500 dark:hover:bg-dark-700"])},[e("span",{class:E(["mt-0.5 flex h-5 w-5 shrink-0 items-center justify-center rounded-full border transition-colors",Ne.value===h.value?h.selectedDotClass:"border-gray-300 text-transparent group-hover:border-gray-400 dark:border-dark-500"])},[U(ae,{name:"check",size:"xs","stroke-width":2})],2),e("span",v2,[e("span",y2,a(h.label),1),e("span",b2,a(h.description),1)])],10,g2))),128))])])])])):v("",!0),((Do=i.account)==null?void 0:Do.platform)==="openai"&&(((Lo=i.account)==null?void 0:Lo.type)==="oauth"||((Vo=i.account)==null?void 0:Vo.type)==="setup-token"||((g=i.account)==null?void 0:g.type)==="apikey")?(n(),r("div",h2,[e("div",f2,[e("div",null,[e("label",x2,a(t(s)("admin.accounts.openai.wsMode")),1),e("p",_2,a(t(s)("admin.accounts.openai.wsModeDesc")),1
22),e("p",k2,a(t(s)(Mo.value)),1)]),e("div",w2,[U(Zt,{modelValue:co.value,"onUpdate:modelValue":d[55]||(d[55]=h=>co.value=h),"data-testid":"edit-openai-ws-mode-select",options:Ta.value},null,8,["modelValue","options"])])])])):v("",!0),((T=i.account)==null?void 0:T.platform)==="openai"&&((ue=i.account)==null?void 0:ue.type)==="apikey"?(n(),r("div",$2,[e("div",C2,[e("div",null,[e("label",T2,a(t(s)("admin.accounts.openai.responsesMode")),1),e("p",S2,a(t(s)("admin.accounts.openai.responsesModeDesc")),1)]),e("div",M2,[U(Zt,{modelValue:zt.value,"onUpdate:modelValue":d[56]||(d[56]=h=>zt.value=h),options:Ra.value,disabled:!Pa.value,"data-testid":"openai-responses-mode-select"},null,8,["modelValue","options","disabled"])])]),Pa.value?(n(),r("div",E2,[e("span",U2,a(t(s)(Oa.value)),1)])):(n(),r("div",A2,a(t(s)("admin.accounts.openai.responsesModeTextDisabledHint")),1)),e("div",null,[e("label",R2,a(t(s)("admin.accounts.openai.endpointCapabilities")),1),e("div",P2,[(n(!0),r(ve,null,Ue(Ea.value,h=>(n(),r("label",{key:h.value,class:"flex cursor-pointer items-center gap-2 rounded-lg border border-gray-200 px-3 py-2 text-sm dark:border-dark-600"},[e("input",{type:"checkbox",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500 dark:border-dark-500","data-testid":`openai-endpoint-capability-${h.value}`,checked:O.value.includes(h.value),onChange:gt=>Fa(h.value,gt)},null,40,I2),e("span",q2,a(h.label),1)]))),128))]),e("p",O2,a(t(s)("admin.accounts.openai.endpointCapabilitiesDesc")),1)])])):v("",!0),((Te=i.account)==null?void 0:Te.platform)==="openai"&&((Le=i.account)==null?void 0:Le.type)==="apikey"?(n(),r("div",D2,[e("div",null,[e("label",L2,a(t(s)("admin.accounts.upstreamBilling.autoProbe")),1),e("p",V2,a(t(s)("admin.accounts.upstreamBilling.autoProbeHint")),1)]),U(ho,{modelValue:Ce.value,"onUpdate:modelValue":d[57]||(d[57]=h=>Ce.value=h),"data-testid":"upstream-billing-auto-probe","aria-label":t(s)("admin.accounts.upstreamBilling.autoProbe")},null,8,["modelValue","aria-label"])])):v("",!0),(Se=(Y=i.account)==null?void 0:Y.ollama_cloud_usage)!=null&&Se.eligible?(n(),Ae(Ff,{key:17,account:i.account,onUpdated:S},null,8,["account"])):v("",!0),((It=i.account)==null?void 0:It.platform)==="anthropic"&&((aa=i.account)==null?void 0:aa.type)==="apikey"?(n(),r("div",z2,[e("div",N2,[e("div",null,[e("label",j2,a(t(s)("admin.accounts.anthropic.apiKeyPassthrough")),1),e("p",B2,a(t(s)("admin.accounts.anthropic.apiKeyPassthroughDesc")),1)]),e("button",{type:"button",onClick:d[58]||(d[58]=h=>de.value=!de.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",de.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",de.value?"translate-x-5":"translate-x-0"])},null,2)],2)])])):v("",!0),((jt=i.account)==null?void 0:jt.platform)==="anthropic"&&((Tt=i.account)==null?void 0:Tt.type)==="apikey"?(n(),r("div",F2,[e("div",H2,[e("div",null,[e("label",W2,a(t(s)("admin.accounts.anthropic.apiKeyAuthScheme")),1),e("p",G2,a(t(s)("admin.accounts.anthropic.apiKeyAuthSchemeDesc")),1)]),V(e("select",{"onUpdate:modelValue":d[59]||(d[59]=h=>B.value=h),class:"input w-52 text-sm"},[e("option",K2,a(t(s)("admin.accounts.anthropic.apiKeyAuthSchemeXApiKey")),1),e("option",Q2,a(t(s)("admin.accounts.anthropic.apiKeyAuthSchemeBearer")),1)],512),[[ka,B.value]])])])):v("",!0),((Us=i.account)==null?void 0:Us.platform)==="anthropic"&&((As=i.account)==null?void 0:As.type)==="apikey"&&Be.value?(n(),r("div",J2,[e("div",Y2,[e("div",null,[e("label",X2,a(t(s)("admin.accounts.anthropic.webSearchEmulation")),1),e("p",Z2,a(t(s)("admin.accounts.anthropic.webSearchEmulationDesc")),1)]),V(e("select",{"onUpdate:modelValue":d[60]||(d[60]=h=>J.value=h),class:"input w-24 text-sm"},[e("option",ew,a(t(s)("admin.accounts.anthropic.webSearchDefault")),1),e("option",tw,a(t(s)("admin.accounts.anthropic.webSearchEnabled")),1),e("option",aw,a(t(s)("admin.accounts.anthropic.webSearchDisabled")),1)],512),[[ka,J.value]])])])):v("",!0),((Rs=i.account)==null?void 0:Rs.platform)==="anthropic"&&(((Ps=i.account)==null?void 0:Ps.type)==="apikey"||((Is=i.account)==null?void 0:Is.type)==="bedrock")?(n(),r("div",ow,[e("div",sw,[e("h3",nw,a(t(s)("admin.accounts.quotaControl.title")),1),e("p",rw,a(t(s)("admin.accounts.quotaControl.hint")),1)]),U(Fs,{totalLimit:ma.value,dailyLimit:ua.value,weeklyLimit:Pt.value,dailyResetMode:ba.value,dailyResetHour:Na.value,weeklyResetMode:Ua.value,weeklyResetDay:ja.value,weeklyResetHour:ha.value,resetTimezone:Aa.value,quotaNotifyGlobalEnabled:t(Ie),quotaNotifyDailyEnabled:t(Ge).daily.enabled,quotaNotifyDailyThreshold:t(Ge).daily.threshold,quotaNotifyDailyThresholdType:t(Ge).daily.thresholdType,quotaNotifyWeeklyEnabled:t(Ge).weekly.enabled,quotaNotifyWeeklyThreshold:t(Ge).weekly.threshold,quotaNotifyWeeklyThresholdType:t(Ge).weekly.thresholdType,quotaNotifyTotalEnabled:t(Ge).total.enabled,quotaNotifyTotalThreshold:t(Ge).total.threshold,quotaNotifyTotalThresholdType:t(Ge).total.thresholdType,"onUpdate:totalLimit":d[61]||(d[61]=h=>ma.value=h),"onUpdate:dailyLimit":d[62]||(d[62]=h=>ua.value=h),"onUpdate:weeklyLimit":d[63]||(d[63]=h=>Pt.value=h),"onUpdate:dailyResetMode":d[64]||(d[64]=h=>ba.value=h),"onUpdate:dailyResetHour":d[65]||(d[65]=h=>Na.value=h),"onUpdate:weeklyResetMode":d[66]||(d[66]=h=>Ua.value=h),"onUpdate:weeklyResetDay":d[67]||(d[67]=h=>ja.value=h),"onUpdate:weeklyResetHour":d[68]||(d[68]=h=>ha.value=h),"onUpdate:resetTimezone":d[69]||(d[69]=h=>Aa.value=h),"onUpdate:quotaNotifyDailyEnabled":d[70]||(d[70]=h=>t(Ge).daily.enabled=h),"onUpdate:quotaNotifyDailyThreshold":d[71]||(d[71]=h=>t(Ge).daily.threshold=h),"onUpdate:quotaNotifyDailyThresholdType":d[72]||(d[72]=h=>t(Ge).daily.thresholdType=h),"onUpdate:quotaNotifyWeeklyEnabled":d[73]||(
22d[73]=h=>t(Ge).weekly.enabled=h),"onUpdate:quotaNotifyWeeklyThreshold":d[74]||(d[74]=h=>t(Ge).weekly.threshold=h),"onUpdate:quotaNotifyWeeklyThresholdType":d[75]||(d[75]=h=>t(Ge).weekly.thresholdType=h),"onUpdate:quotaNotifyTotalEnabled":d[76]||(d[76]=h=>t(Ge).total.enabled=h),"onUpdate:quotaNotifyTotalThreshold":d[77]||(d[77]=h=>t(Ge).total.threshold=h),"onUpdate:quotaNotifyTotalThresholdType":d[78]||(d[78]=h=>t(Ge).total.thresholdType=h)},null,8,["totalLimit","dailyLimit","weeklyLimit","dailyResetMode","dailyResetHour","weeklyResetMode","weeklyResetDay","weeklyResetHour","resetTimezone","quotaNotifyGlobalEnabled","quotaNotifyDailyEnabled","quotaNotifyDailyThreshold","quotaNotifyDailyThresholdType","quotaNotifyWeeklyEnabled","quotaNotifyWeeklyThreshold","quotaNotifyWeeklyThresholdType","quotaNotifyTotalEnabled","quotaNotifyTotalThreshold","quotaNotifyTotalThresholdType"])])):((qs=i.account)==null?void 0:qs.type)==="apikey"||((Os=i.account)==null?void 0:Os.type)==="bedrock"?(n(),r("div",lw,[e("div",iw,[e("h3",uw,a(t(s)("admin.accounts.quotaControl.title")),1),e("p",dw,a(t(s)("admin.accounts.quotaLimitHint")),1)]),U(Fs,{totalLimit:ma.value,dailyLimit:ua.value,weeklyLimit:Pt.value,dailyResetMode:ba.value,dailyResetHour:Na.value,weeklyResetMode:Ua.value,weeklyResetDay:ja.value,weeklyResetHour:ha.value,resetTimezone:Aa.value,quotaNotifyGlobalEnabled:t(Ie),quotaNotifyDailyEnabled:t(Ge).daily.enabled,quotaNotifyDailyThreshold:t(Ge).daily.threshold,quotaNotifyDailyThresholdType:t(Ge).daily.thresholdType,quotaNotifyWeeklyEnabled:t(Ge).weekly.enabled,quotaNotifyWeeklyThreshold:t(Ge).weekly.threshold,quotaNotifyWeeklyThresholdType:t(Ge).weekly.thresholdType,quotaNotifyTotalEnabled:t(Ge).total.enabled,quotaNotifyTotalThreshold:t(Ge).total.threshold,quotaNotifyTotalThresholdType:t(Ge).total.thresholdType,"onUpdate:totalLimit":d[79]||(d[79]=h=>ma.value=h),"onUpdate:dailyLimit":d[80]||(d[80]=h=>ua.value=h),"onUpdate:weeklyLimit":d[81]||(d[81]=h=>Pt.value=h),"onUpdate:dailyResetMode":d[82]||(d[82]=h=>ba.value=h),"onUpdate:dailyResetHour":d[83]||(d[83]=h=>Na.value=h),"onUpdate:weeklyResetMode":d[84]||(d[84]=h=>Ua.value=h),"onUpdate:weeklyResetDay":d[85]||(d[85]=h=>ja.value=h),"onUpdate:weeklyResetHour":d[86]||(d[86]=h=>ha.value=h),"onUpdate:resetTimezone":d[87]||(d[87]=h=>Aa.value=h),"onUpdate:quotaNotifyDailyEnabled":d[88]||(d[88]=h=>t(Ge).daily.enabled=h),"onUpdate:quotaNotifyDailyThreshold":d[89]||(d[89]=h=>t(Ge).daily.threshold=h),"onUpdate:quotaNotifyDailyThresholdType":d[90]||(d[90]=h=>t(Ge).daily.thresholdType=h),"onUpdate:quotaNotifyWeeklyEnabled":d[91]||(d[91]=h=>t(Ge).weekly.enabled=h),"onUpdate:quotaNotifyWeeklyThreshold":d[92]||(d[92]=h=>t(Ge).weekly.threshold=h),"onUpdate:quotaNotifyWeeklyThresholdType":d[93]||(d[93]=h=>t(Ge).weekly.thresholdType=h),"onUpdate:quotaNotifyTotalEnabled":d[94]||(d[94]=h=>t(Ge).total.enabled=h),"onUpdate:quotaNotifyTotalThreshold":d[95]||(d[95]=h=>t(Ge).total.threshold=h),"onUpdate:quotaNotifyTotalThresholdType":d[96]||(d[96]=h=>t(Ge).total.thresholdType=h)},null,8,["totalLimit","dailyLimit","weeklyLimit","dailyResetMode","dailyResetHour","weeklyResetMode","weeklyResetDay","weeklyResetHour","resetTimezone","quotaNotifyGlobalEnabled","quotaNotifyDailyEnabled","quotaNotifyDailyThreshold","quotaNotifyDailyThresholdType","quotaNotifyWeeklyEnabled","quotaNotifyWeeklyThreshold","quotaNotifyWeeklyThresholdType","quotaNotifyTotalEnabled","quotaNotifyTotalThreshold","quotaNotifyTotalThresholdType"])])):v("",!0),((Ds=i.account)==null?void 0:Ds.platform)==="openai"&&!P.value&&(((A=i.account)==null?void 0:A.type)==="oauth"||((l=i.account)==null?void 0:l.type)==="setup-token"||((u=i.account)==null?void 0:u.type)==="apikey")?(n(),r("div",cw,[e("div",pw,[e("div",null,[e("label",mw,a(t(s)("admin.accounts.openai.longContextBilling")),1),e("p",gw,a(t(s)("admin.accounts.openai.longContextBillingDesc")),1)]),e("button",{type:"button","data-testid":"openai-long-context-billing-toggle",role:"switch","aria-checked":ea.value,onClick:d[97]||(d[97]=h=>ea.value=!ea.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ea.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ea.value?"translate-x-5":"translate-x-0"])},null,2)],10,vw)])])):v("",!0),((Z=i.account)==null?void 0:Z.platform)==="openai"&&(((ge=i.account)==null?void 0:ge.type)==="oauth"||((_e=i.account)==null?void 0:_e.type)==="setup-token")?(n(),r("div",yw,[e("div",bw,[e("div",null,[e("label",hw,a(t(s)("admin.accounts.openai.codexCLIOnly")),1),e("p",fw,a(t(s)("admin.accounts.openai.codexCLIOnlyDesc")),1
22)]),e("button",{type:"button",onClick:d[98]||(d[98]=h=>qe.value=!qe.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",qe.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",qe.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),qe.value?(n(),r("div",xw,[e("div",null,[e("label",_w,a(t(s)("admin.accounts.openai.codexCLIOnlyAppServer")),1),e("p",kw,a(t(s)("admin.accounts.openai.codexCLIOnlyAppServerDesc")),1)]),e("button",{type:"button",onClick:d[99]||(d[99]=h=>at.value=!at.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",at.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",at.value?"translate-x-5":"translate-x-0"])},null,2)],2)])):v("",!0)])):v("",!0),((et=i.account)==null?void 0:et.platform)==="openai"&&((Ee=i.account)==null?void 0:Ee.type)==="oauth"&&!P.value?(n(),r("div",ww,[e("div",$w,[e("div",Cw,[e("label",Tw,a(t(s)("admin.accounts.openai.planType")),1),e("p",Sw,a(t(s)("admin.accounts.openai.planTypeDesc")),1)]),e("div",Mw,[U(Zt,{modelValue:ca.value,"onUpdate:modelValue":d[100]||(d[100]=h=>ca.value=h),options:Sa.value},null,8,["modelValue","options"])])])])):v("",!0),((ze=i.account)==null?void 0:ze.platform)==="openai"&&(((rt=i.account)==null?void 0:rt.type)==="oauth"||((Qe=i.account)==null?void 0:Qe.type)==="setup-token"||((xt=i.account)==null?void 0:xt.type)==="apikey")?(n(),r("div",Ew,[e("div",Uw,[e("div",null,[e("label",Aw,a(t(s)("admin.accounts.openai.compactMode")),1),e("p",Rw,a(t(s)("admin.accounts.openai.compactModeDesc")),1)]),e("div",Pw,[U(Zt,{modelValue:Jt.value,"onUpdate:modelValue":d[101]||(d[101]=h=>Jt.value=h),options:Ba.value},null,8,["modelValue","options"])])]),e("div",Iw,[e("span",qw,a(t(s)(Qa.value)),1),(to=(Yt=i.account)==null?void 0:Yt.extra)!=null&&to.openai_compact_checked_at?(n(),r("span",Ow,a(t(s)("admin.accounts.openai.compactLastChecked"))+": "+a(t(oo)(new Date(String(i.account.extra.openai_compact_checked_at)))),1)):v("",!0)]),e("div",null,[e("label",Dw,a(t(s)("admin.accounts.openai.compactModelMapping")),1),e("p",Lw,a(t(s)("admin.accounts.openai.compactModelMappingDesc")),1),ce.value.length>0?(n(),r("div",Vw,[(n(!0),r(ve,null,Ue(ce.value,(h,gt)=>(n(),r("div",{key:t(Ft)(h),class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":lt=>h.from=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.fromModel")},null,8,zw),[[re,h.from]]),d[152]||(d[152]=e("span",{class:"text-gray-400"},"→",-1)),V(e("input",{"onUpdate:modelValue":lt=>h.to=lt,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.toModel")},null,8,Nw),[[re,h.to]]),e("button",{type:"button",onClick:lt=>bs(gt),class:"text-red-500 hover:text-red-700"},[U(ae,{name:"trash",size:"sm"})],8,jw)]))),128))])):v("",!0),e("button",{type:"button",onClick:Fo,class:"btn btn-secondary text-sm"}," + "+a(t(s)("admin.accounts.addMapping")),1)])])):v("",!0),e("div",null,[e("div",Bw,[e("div",null,[e("label",Fw,a(t(s)("admin.accounts.autoPauseOnExpired")),1),e("p",Hw,a(t(s)("admin.accounts.autoPauseOnExpiredDesc")),1)]),e("button",{type:"button",onClick:d[102]||(d[102]=h=>_t.value=!_t.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",_t.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",_t.value?"translate-x-5":"translate-x-0"])},null,2)],2)])]),((zo=i.account)==null?void 0:zo.platform)==="openai"?(n(),r("div",Ww,[e("div",Gw,[e("div",Kw,[e("label",Qw,a(t(s)("admin.accounts.autoPause5hDisabled")),1),e("button",{type:"button",onClick:d[103]||(d[103]=h=>we.value=!we.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",we.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"]),"data-testid":"auto-pause-5h-disabled"},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",we.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),e("p",Jw,a(t(s)("admin.accounts.autoPauseDisabledHint")),1)]),e("div",null,[e("label",Yw,a(t(s)("admin.accounts.autoPause5hThreshold")),1),V(e("input",{"onUpdate:modelValue":d[104]||(d[104]=h=>tt.value=h),type:"number",min:"0",max:"100",step:"0.1",class:"input",disabled:we.value,"data-testid":"auto-pause-5h-threshold"},null,8,Xw),[[re,tt.value,void 0,{number:!0}]]),e("p",Zw,a(t(s)("admin.accounts.autoPauseThresholdHint")),1)]),e("div",e4,[e
22("div",t4,[e("label",a4,a(t(s)("admin.accounts.autoPause7dDisabled")),1),e("button",{type:"button",onClick:d[105]||(d[105]=h=>ie.value=!ie.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ie.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"]),"data-testid":"auto-pause-7d-disabled"},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ie.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),e("p",o4,a(t(s)("admin.accounts.autoPauseDisabledHint")),1)]),e("div",null,[e("label",s4,a(t(s)("admin.accounts.autoPause7dThreshold")),1),V(e("input",{"onUpdate:modelValue":d[106]||(d[106]=h=>Ke.value=h),type:"number",min:"0",max:"100",step:"0.1",class:"input",disabled:ie.value,"data-testid":"auto-pause-7d-threshold"},null,8,n4),[[re,Ke.value,void 0,{number:!0}]]),e("p",r4,a(t(s)("admin.accounts.autoPauseThresholdHint")),1)])])):v("",!0),((Xt=i.account)==null?void 0:Xt.platform)==="anthropic"&&(((ls=i.account)==null?void 0:ls.type)==="oauth"||((Va=i.account)==null?void 0:Va.type)==="setup-token")?(n(),r("div",l4,[e("div",i4,[e("h3",u4,a(t(s)("admin.accounts.quotaControl.title")),1),e("p",d4,a(t(s)("admin.accounts.quotaControl.hint")),1)]),e("div",c4,[e("div",p4,[e("div",null,[e("label",m4,a(t(s)("admin.accounts.quotaControl.windowCost.label")),1),e("p",g4,a(t(s)("admin.accounts.quotaControl.windowCost.hint")),1)]),e("button",{type:"button",onClick:d[107]||(d[107]=h=>St.value=!St.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",St.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",St.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),St.value?(n(),r("div",v4,[e("div",null,[e("label",y4,a(t(s)("admin.accounts.quotaControl.windowCost.limit")),1),e("div",b4,[d[153]||(d[153]=e("span",{class:"absolute left-3 top-1/2 -translate-y-1/2 text-gray-500 dark:text-gray-400"},"$",-1)),V(e("input",{"onUpdate:modelValue":d[108]||(d[108]=h=>Mt.value=h),type:"number",min:"0",step:"1",class:"input pl-7",placeholder:t(s)("admin.accounts.quotaControl.windowCost.limitPlaceholder")},null,8,h4),[[re,Mt.value,void 0,{number:!0}]])]),e("p",f4,a(t(s)("admin.accounts.quotaControl.windowCost.limitHint")),1)]),e("div",null,[e("label",x4,a(t(s)("admin.accounts.quotaControl.windowCost.stickyReserve")),1),e("div",_4,[d[154]||(d[154]=e("span",{class:"absolute left-3 top-1/2 -translate-y-1/2 text-gray-500 dark:text-gray-400"},"$",-1)),V(e("input",{"onUpdate:modelValue":d[109]||(d[109]=h=>oa.value=h),type:"number",min:"0",step:"1",class:"input pl-7",placeholder:t(s)("admin.accounts.quotaControl.windowCost.stickyReservePlaceholder")},null,8,k4),[[re,oa.value,void 0,{number:!0}]])]),e("p",w4,a(t(s)("admin.accounts.quotaControl.windowCost.stickyReserveHint")),1)])])):v("",!0)]),e("div",$4,[e("div",C4,[e("div",null,[e("label",T4,a(t(s)("admin.accounts.quotaControl.sessionLimit.label")),1),e("p",S4,a(t(s)("admin.accounts.quotaControl.sessionLimit.hint")),1)]),e("button",{type:"button",onClick:d[110]||(d[110]=h=>sa.value=!sa.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",sa.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",sa.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),sa.value?(n(),r("div",M4,[e("div",null,[e("label",E4,a(t(s)("admin.accounts.quotaControl.sessionLimit.maxSessions")),1),V(e("input",{"onUpdate:modelValue":d[111]||(d[111]=h=>He.value=h),type:"number",min:"1",step:"1",class:"input",placeholder:t(s)("admin.accounts.quotaControl.sessionLimit.maxSessionsPlaceholder")},null,8,U4),[[re,He.value,void 0,{number:!0}]]),e("p",A4,a(t(s)("admin.accounts.quotaControl.sessionLimit.maxSessionsHint")),1)]),e("div",null,[e("label",R4,a(t(s)("admin.accounts.quotaControl.sessionLimit.idleTimeout")),1),e("div",P4,[V(e("input",{"onUpdate:modelValue":d[112]||(d[112]=h=>$a.value=h),type:"number",min:"1",step:"1",class:"input pr-12",placeholder:t(s)("admin.accounts.quotaControl.sessionLimit.idleTimeoutPlaceholder")},null,8,I4),[[re,$a.value,void 0,{number:!0}]]),e("span",q4,a(t(s)("common.minutes")),1)]),e("p",O4,a(t(s)("admin.accounts.quotaControl.sessionLimit.idleTimeoutHint")),1)])])):v("",!0)]),e("div",D4,[e("div",L4,[e("div",null,[e("label",V4,a(t(s)("admin.accounts.quotaControl.rpmLimit.label")),1),e("p",z4,a(t(s)("admin.accounts.quotaControl.rpmLimit.hint")),1)]),e("button",{type:"button",onClick:d[113]||(d[113]=h=>
22la.value=!la.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",la.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",la.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),la.value?(n(),r("div",N4,[e("div",null,[e("label",j4,a(t(s)("admin.accounts.quotaControl.rpmLimit.baseRpm")),1),V(e("input",{"onUpdate:modelValue":d[114]||(d[114]=h=>ia.value=h),type:"number",min:"1",max:"1000",step:"1",class:"input",placeholder:t(s)("admin.accounts.quotaControl.rpmLimit.baseRpmPlaceholder")},null,8,B4),[[re,ia.value,void 0,{number:!0}]]),e("p",F4,a(t(s)("admin.accounts.quotaControl.rpmLimit.baseRpmHint")),1)]),e("div",null,[e("label",H4,a(t(s)("admin.accounts.quotaControl.rpmLimit.strategy")),1),e("div",W4,[e("button",{type:"button",onClick:d[115]||(d[115]=h=>Kt.value="tiered"),class:E(["flex-1 rounded-lg px-3 py-2 text-sm font-medium transition-all",Kt.value==="tiered"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[e("div",G4,[e("div",null,a(t(s)("admin.accounts.quotaControl.rpmLimit.strategyTiered")),1),e("div",K4,a(t(s)("admin.accounts.quotaControl.rpmLimit.strategyTieredHint")),1)])],2),e("button",{type:"button",onClick:d[116]||(d[116]=h=>Kt.value="sticky_exempt"),class:E(["flex-1 rounded-lg px-3 py-2 text-sm font-medium transition-all",Kt.value==="sticky_exempt"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},[e("div",Q4,[e("div",null,a(t(s)("admin.accounts.quotaControl.rpmLimit.strategyStickyExempt")),1),e("div",J4,a(t(s)("admin.accounts.quotaControl.rpmLimit.strategyStickyExemptHint")),1)])],2)])]),Kt.value==="tiered"?(n(),r("div",Y4,[e("label",X4,a(t(s)("admin.accounts.quotaControl.rpmLimit.stickyBuffer")),1),V(e("input",{"onUpdate:modelValue":d[117]||(d[117]=h=>Et.value=h),type:"number",min:"1",step:"1",class:"input",placeholder:t(s)("admin.accounts.quotaControl.rpmLimit.stickyBufferPlaceholder")},null,8,Z4),[[re,Et.value,void 0,{number:!0}]]),e("p",e5,a(t(s)("admin.accounts.quotaControl.rpmLimit.stickyBufferHint")),1)])):v("",!0)])):v("",!0),e("div",t5,[e("label",a5,a(t(s)("admin.accounts.quotaControl.rpmLimit.userMsgQueue")),1),e("p",o5,a(t(s)("admin.accounts.quotaControl.rpmLimit.userMsgQueueHint")),1),e("div",s5,[(n(!0),r(ve,null,Ue(Ca.value,h=>(n(),r("button",{type:"button",key:h.value,onClick:gt=>Qt.value=h.value,class:E(["px-3 py-1.5 text-sm rounded-md border transition-colors",Qt.value===h.value?"bg-primary-600 text-white border-primary-600":"bg-white dark:bg-dark-700 text-gray-700 dark:text-gray-300 border-gray-300 dark:border-dark-500 hover:bg-gray-50 dark:hover:bg-dark-600"])},a(h.label),11,n5))),128))])])]),e("div",r5,[e("div",l5,[e("div",null,[e("label",i5,a(t(s)("admin.accounts.quotaControl.tlsFingerprint.label")),1),e("p",u5,a(t(s)("admin.accounts.quotaControl.tlsFingerprint.hint")),1)]),e("button",{type:"button",onClick:d[118]||(d[118]=h=>Nt.value=!Nt.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Nt.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Nt.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Nt.value?(n(),r("div",d5,[V(e("select",{"onUpdate:modelValue":d[119]||(d[119]=h=>na.value=h),class:"input"},[e("option",c5,a(t(s)("admin.accounts.quotaControl.tlsFingerprint.defaultProfile")),1),da.value.length>0?(n(),r("option",p5,a(t(s)("admin.accounts.quotaControl.tlsFingerprint.randomProfile")),1)):v("",!0),(n(!0),r(ve,null,Ue(da.value,h=>(n(),r("option",{key:h.id,value:h.id},a(h.name),9,m5))),128))],512),[[ka,na.value]])])):v("",!0)]),e("div",g5,[e("div",v5,[e("div",null,[e("label",y5,a(t(s)("admin.accounts.quotaControl.sessionIdMasking.label")),1),e("p",b5,a(t(s)("admin.accounts.quotaControl.sessionIdMasking.hint")),1)]),e("button",{type:"button",onClick:d[120]||(d[120]=h=>Rt.value=!Rt.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Rt.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Rt.value?"translate-x-5":"translate-x-0"])},null,2)],2)])]),e("div",h5,[e("div",f5,[e("div",null,[e("label",x5,a(t(s)("admin.accounts.quotaControl.cacheTTLOverride.label")),1),e("p",_5,a(t(s)("admin.accounts.quotaControl.cacheTTLOverride.hint")),1)]),e("button",{type:"button",onClick:d[121]||(d[121]=h=>Vt.value=!Vt.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Vt.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Vt.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),Vt.value?(n(),r("div",k5,[e("label",w5,a(t(s)("admin.accounts.quotaControl.cacheTTLOverride.target")),1),V(e("select",{"onUpdate:modelValue":d[122]||(d[122]=h=>Ut.value=h),class:"mt-1 block w-full rounded-md border border-gray-300 bg-white px-3 py-2 text-sm shadow-sm focus:border-primary-500 focus:outline-none focus:ring-1 focus:ring-primary-500 dark:border-dark-500 dark:bg-dark-700 dark:text-white"},[...d[155]||(d[155]=[e("option",{value:"5m"},"5m",-1),e("option",{value:"1h"},"1h",-1)])],512),[[ka,Ut.value]]),e("p",$5,a(t(s)("admin.accounts.quotaControl.cacheTTLOverride.targetHint")),1)])):v("",!0)]),e("div",C5,[e("div",T5,[e("div",null,[e("label",S5,a(t(s)("admin.accounts.quotaControl.customBaseUrl.label")),1),e("p",M5,a(t(s)("admin.accounts.quotaControl.customBaseUrl.hint")),1)]),e("button",{type:"button",onClick:d[123]||(d[123]=h=>wt.value=!wt.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",wt.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",wt.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),wt.value?(n(),r("div",E5,[V(e("input",{"onUpdate:modelValue":d[124]||(d[124]=h=>yt.value=h),type:"text",class:"input",placeholder:t(s)("admin.accounts.quotaControl.customBaseUrl.urlHint")},null,8,U5),[[re,yt.value]])])):v("",!0)])])):v("",!0),e("div",A5,[e("div",null,[e("label",R5,a(t(s)("common.status")),1),U(Zt,{modelValue:Ve.status,"onUpdate:modelValue":d[125]||(d[125]=h=>Ve.status=h),options:Ya.value},null,8,["modelValue","options"])]),((Xs=i.account)==null?void 0:Xs.platform)==="antigravity"?(n(),r("div",P5,[e("label",I5,[V(e("input",{type:"checkbox","onUpdate:modelValue":d[126]||(d[126]=h=>Fe.value=h),disabled:"",class:"h-4 w-4 cursor-not-allowed rounded border-gray-300 text-primary-500 focus:ring-primary-500 dark:border-dark-500"},null,512),[[bt,Fe.value]]),e("span",q5,a(t(s)("admin.accounts.mixedScheduling")),1)]),e("div",O5,[d[157]||(d[157]=e("span",{class:"inline-flex h-4 w-4 cursor-help items-center justify-center rounded-full bg-gray-200 text-xs text-gray-500 hover:bg-gray-300 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"}," ? ",-1)),e("div",D5,[oe(a(t(s)("admin.accounts.mixedSchedulingTooltip"))+" ",1),d[156]||(d[156]=e("div",{class:"absolute bottom-full left-3 border-4 border-transparent border-b-gray-900 dark:border-b-gray-700"},null,-1))])])])):v("",!0),((hn=i.account)==null?void 0:hn.platform)==="antigravity"?(n(),r("div",L5,[e("label",V5,[V(e("input",{type:"checkbox","onUpdate:modelValue":d[127]||(d[127
22]=h=>Je.value=h),class:"h-4 w-4 rounded border-gray-300 text-primary-500 focus:ring-primary-500 dark:border-dark-500"},null,512),[[bt,Je.value]]),e("span",z5,a(t(s)("admin.accounts.allowOverages")),1)]),e("div",N5,[d[159]||(d[159]=e("span",{class:"inline-flex h-4 w-4 cursor-help items-center justify-center rounded-full bg-gray-200 text-xs text-gray-500 hover:bg-gray-300 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"}," ? ",-1)),e("div",j5,[oe(a(t(s)("admin.accounts.allowOveragesTooltip"))+" ",1),d[158]||(d[158]=e("div",{class:"absolute bottom-full left-3 border-4 border-transparent border-b-gray-900 dark:border-b-gray-700"},null,-1))])])])):v("",!0)]),t($).isSimpleMode?v("",!0):(n(),Ae(yn,{key:29,modelValue:Ve.group_ids,"onUpdate:modelValue":d[128]||(d[128]=h=>Ve.group_ids=h),groups:i.groups,platform:(fn=i.account)==null?void 0:fn.platform,"mixed-scheduling":Fe.value,"data-tour":"account-form-groups"},null,8,["modelValue","groups","platform","mixed-scheduling"]))],32)):v("",!0)]}),_:1},8,["show","title"]),U(so,{show:qt.value,title:t(s)("admin.accounts.mixedChannelWarningTitle"),message:Ja.value,"confirm-text":t(s)("common.confirm"),"cancel-text":t(s)("common.cancel"),danger:!0,onConfirm:Zo,onCancel:es},null,8,["show","title","message","confirm-text","cancel-text"])],64))}}),G5={class:"rounded-lg bg-blue-50 p-4 dark:bg-blue-900/20"},K5={class:"text-sm text-blue-700 dark:text-blue-400"},Q5={key:0,class:"rounded-lg bg-amber-50 p-4 dark:bg-amber-900/20"},J5={class:"text-sm text-amber-700 dark:text-amber-400"},Y5={key:1,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},X5={class:"mb-3 flex items-center justify-between"},Z5={class:"flex-1 pr-4"},e3={id:"bulk-edit-openai-passthrough-label",class:"input-label mb-0",for:"bulk-edit-openai-passthrough-enabled"},t3={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},a3={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},o3={class:"mb-3 flex items-center justify-between"},s3={id:"bulk-edit-base-url-label",class:"input-label mb-0",for:"bulk-edit-base-url-enabled"},n3=["disabled","placeholder"],r3={class:"input-hint"},l3={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},i3={class:"mb-3 flex items-center justify-between"},u3={id:"bulk-edit-model-restriction-label",class:"input-label mb-0",for:"bulk-edit-model-restriction-enabled"},d3={key:0,class:"rounded-lg bg-amber-50 p-3 dark:bg-amber-900/20"},c3={class:"text-xs text-amber-700 dark:text-amber-400"},p3={class:"mb-4 flex gap-2"},m3={key:0},g3={class:"mb-3 rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},v3={class:"text-xs text-blue-700 dark:text-blue-400"},y3={class:"text-xs text-gray-500 dark:text-gray-400"},b3={key:0},h3={key:1},f3={class:"mb-3 rounded-lg bg-purple-50 p-3 dark:bg-purple-900/20"},x3={class:"text-xs text-purple-700 dark:text-purple-400"},_3={key:0,class:"mb-3 space-y-2"},k3=["onUpdate:modelValue","placeholder"],w3=["onUpdate:modelValue","placeholder"],$3=["onClick"],C3={class:"flex flex-wrap gap-2"},T3=["onClick"],S3={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},M3={class:"mb-3 flex items-center justify-between"},E3={id:"bulk-edit-custom-error-codes-label",class:"input-label mb-0",for:"bulk-edit-custom-error-codes-enabled"},U3={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},A3={key:0,id:"bulk-edit-custom-error-codes-body",class:"space-y-3"},R3={class:"rounded-lg bg-amber-50 p-3 dark:bg-amber-900/20"},P3={class:"text-xs text-amber-700 dark:text-amber-400"},I3={class:"flex flex-wrap gap-2"},q3=["onClick"],O3={class:"flex items-center gap-2"},D3=["placeholder"],L3={class:"flex flex-wrap gap-1.5"},V3=["onClick"],z3={key:0,class:"text-xs text-gray-400"},N3={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},j3={class:"flex items-center justify-between"},B3={class:"flex-1 pr-4"},F3={id:"bulk-edit-intercept-warmup-label",class:"input-label mb-0",for:"bulk-edit-intercept-warmup-enabled"},H3={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},W3={key:0,id:"bulk-edit-intercept-warmup-body",class:"mt-3"},G3={key:2,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},K3={class:"flex items-center justify-between"},Q3={class:"flex-1 pr-4"},J3={id:"bulk-edit-header-override-label",class:"input-label mb-0",for:"bulk-edit-header-override-enabled"},Y3={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},X3={key:0,id:"bulk-edit-header-override-body",class:"mt-3 space-y-3"},Z3={key:0,class:"space-y-3"},e$={class:"rounded-lg bg-blue-50 p-3 dark:bg-blue-900/20"},t$={class:"text-xs text-blue-700 dark:text-blue-400"}
22,a$={class:"text-xs text-amber-600 dark:text-amber-400"},o$={key:1,class:"text-xs text-gray-500 dark:text-gray-400"},s$={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},n$={class:"mb-3 flex items-center justify-between"},r$={id:"bulk-edit-proxy-label",class:"input-label mb-0",for:"bulk-edit-proxy-enabled"},l$={class:"grid grid-cols-2 gap-4 border-t border-gray-200 pt-4 dark:border-dark-600 lg:grid-cols-4"},i$={class:"mb-3 flex items-center justify-between"},u$={id:"bulk-edit-concurrency-label",class:"input-label mb-0",for:"bulk-edit-concurrency-enabled"},d$=["disabled"],c$={class:"mb-3 flex items-center justify-between"},p$={id:"bulk-edit-load-factor-label",class:"input-label mb-0",for:"bulk-edit-load-factor-enabled"},m$=["disabled"],g$={class:"input-hint"},v$={class:"mb-3 flex items-center justify-between"},y$={id:"bulk-edit-priority-label",class:"input-label mb-0",for:"bulk-edit-priority-enabled"},b$=["disabled"],h$={class:"mb-3 flex items-center justify-between"},f$={id:"bulk-edit-rate-multiplier-label",class:"input-label mb-0",for:"bulk-edit-rate-multiplier-enabled"},x$=["disabled"],_$={class:"input-hint"},k$={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},w$={class:"mb-3 flex items-center justify-between"},$$={id:"bulk-edit-status-label",class:"input-label mb-0",for:"bulk-edit-status-enabled"},C$={key:3,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},T$={class:"mb-3 flex items-center justify-between"},S$={id:"bulk-edit-openai-ws-mode-label",class:"input-label mb-0",for:"bulk-edit-openai-ws-mode-enabled"},M$={class:"mb-3 text-xs text-gray-500 dark:text-gray-400"},E$={class:"mb-3 text-xs text-gray-500 dark:text-gray-400"},U$={key:4,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},A$={class:"mb-3 flex items-center justify-between"},R$={id:"bulk-edit-openai-codex-cli-only-label",class:"input-label mb-0",for:"bulk-edit-openai-codex-cli-only-enabled"},P$={class:"mb-3 text-xs text-gray-500 dark:text-gray-400"},I$={key:5,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},q$={class:"mb-3 flex items-center justify-between"},O$={id:"bulk-edit-openai-codex-app-server-label",class:"input-label mb-0",for:"bulk-edit-openai-codex-app-server-enabled"},D$={class:"mb-3 text-xs text-gray-500 dark:text-gray-400"},L$={key:6,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},V$={class:"mb-3 flex items-center justify-between"},z$={class:"flex-1 pr-4"},N$={id:"bulk-edit-upstream-billing-auto-probe-label",class:"input-label mb-0",for:"bulk-edit-upstream-billing-auto-probe-enabled"},j$={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},B$={key:7,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},F$={class:"mb-3 flex items-center justify-between"},H$={id:"bulk-edit-openai-apikey-ws-mode-label",class:"input-label mb-0",for:"bulk-edit-openai-apikey-ws-mode-enabled"},W$={class:"mb-3 text-xs text-gray-500 dark:text-gray-400"},G$={class:"mb-3 text-xs text-gray-500 dark:text-gray-400"},K$={key:8,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},Q$={class:"mb-3 flex items-center justify-between"},J$={class:"flex-1 pr-4"},Y$={id:"bulk-edit-openai-compact-mode-label",class:"input-label mb-0",for:"bulk-edit-openai-compact-mode-enabled"},X$={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},Z$={key:9,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},e6={class:"mb-3 flex items-center justify-between"},t6={class:"flex-1 pr-4"},a6={id:"bulk-edit-openai-compact-model-mapping-label",class:"input-label mb-0",for:"bulk-edit-openai-compact-model-mapping-enabled"},o6={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},s6={key:0,class:"mb-3 space-y-2"},n6=["onUpdate:modelValue","placeholder"],r6=["onUpdate:modelValue","placeholder"],l6=["onClick"],i6={key:10,class:"border-t border-gray-200 pt-4 dark:border-dark-600"},u6={class:"mb-3 flex items-center justify-between"},d6={id:"bulk-edit-rpm-limit-label",class:"input-label mb-0",for:"bulk-edit-rpm-limit-enabled"},c6={class:"mb-3 flex items-center justify-between"},p6={class:"text-sm text-gray-700 dark:text-gray-300"},m6={key:0,class:"space-y-3"},g6={class:"input-label text-xs"},v6=["placeholder"],y6={class:"input-hint"},b6={class:"input-label text-xs"},h6={class:"flex gap-2"},f6={key:0},x6={class:"input-label text-xs"},_6=["placeholder"],k6={class:"input-hint"},w6={class:"mt-4"},$6={class:"input-label"},C6={class:"mt-1 text-xs text-gray-500 dark:text-gray-400 mb-2"},T6={class:"flex space-x-2"},S6=["onClick"],M6={class:"border-t border-gray-200 pt-4 dark:border-dark-600"},E6={class:"mb-3 flex items-center justify-between"},U6={id:"bulk-edit-groups-label",class:"input-label mb-0",for:"bulk-edit-groups-enabled"},A6={class:"flex justify-end gap-3"},R6=["disabled"],P6={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},I6=ut({__name:"BulkEditAccountModal",props:{show:{type:Boolean},accountIds:{},selectedPlatforms:{},selectedTypes:{},target:{},proxies:{},groups:{}},emits:["close","updated"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=pa(),$=w(()=>{var de;return((de=o.target)==null?void 0:de.mode)??"selected"}),P=w(()=>{var de;return((de=o.target)==null?void 0:de.previewCount)??o.accountIds.length}),S=w(()=>{var de;return((de=o.target)==null?void 0:de.selectedPlatforms)??o.selectedPlatforms}),M=w(()=>{var de;return((de=o.target)==null?void 0:de.selectedTypes)??o.selectedTypes}),L=w(()=>S.value.length>0&&S.value.every(de=>de==="grok")),F=w(()=>S.value.length>1),R=w(()=>S.value.length===1&&S.value[0]==="openai"&&M.value.length>0&&M.value.every(de=>de==="oauth"||de==="setup-token"||de==="apikey")),_=w(()=>S.value.length===1&&S.value[0]==="openai"&&M.value.length>0&&M.value.every(de=>de==="oauth"||de==="setup-token")),y=w(()=>S.value.length===1&&S.value[0]==="openai"&&M.value.length>0&&M.value.every(de=>de==="apikey")),f=w(()=>S.value.length>0&&M.value.length>0&&S.value.every(de=>M.value.every(B=>cs(de,B)))),I=w(()=>S.value.length===1&&S.value[0]==="anthropic"&&M.value.every(de=>de==="oauth"||de==="setup-token")),q=w(()=>
22{if(S.value.length===0)return[];const de=new Map;for(const B of S.value)for(const J of Bo(B)){const Be=`${J.from}=>${J.to}`;de.has(Be)||de.set(Be,J)}return Array.from(de.values())}),D=p(!1),z=p(!1),ee=p(!1),ke=p(!1),W=p(!1),se=p(!1),G=p(!1),me=p(!1),ce=p(!1),le=p(!1),ne=p(!1),te=p(!1),N=p(!1),x=p(!1),H=p(!1),K=p(!1),be=p(!1),fe=p(!1),$e=p(!1),he=p(!1),Oe=p(!1),Re=p(!1),je=p(!1),Xe=p(""),Ze=p(null),it=p(""),ot=p("whitelist"),_t=p([]),tt=p([]),Ke=p([]),we=p(null),ie=p(!1),Ce=p(!1),Fe=p([]),Je=p(null),st=p(1),vt=p(null),At=p(1),Ye=p(1),$t=p("active"),mt=p([]),ht=p(!1),Lt=p(Gt),Ft=p(Gt),kt=p("enabled"),Ht=p(!1),qt=p(!1),Ct=p("auto"),Ot=p([]),ft=p(!1),Dt=p(null),St=p("tiered"),Mt=p(null),oa=p(null),sa=w(()=>[{value:"",label:s("admin.accounts.quotaControl.rpmLimit.umqModeOff")},{value:"throttle",label:s("admin.accounts.quotaControl.rpmLimit.umqModeThrottle")},{value:"serialize",label:s("admin.accounts.quotaControl.rpmLimit.umqModeSerialize")}]),He=[{value:401,label:"Unauthorized"},{value:403,label:"Forbidden"},{value:429,label:"Rate Limit"},{value:500,label:"Server Error"},{value:502,label:"Bad Gateway"},{value:503,label:"Unavailable"},{value:529,label:"Overloaded"}],$a=w(()=>[{value:"active",label:s("common.active")},{value:"inactive",label:s("common.inactive")}]),la=w(()=>[{value:"enabled",label:s("common.enabled")},{value:"disabled",label:s("common.disabled")}]),ia=w(()=>R.value&&N.value&&ht.value),Kt=w(()=>[{value:Gt,label:s("admin.accounts.openai.wsModeOff")},{value:gs,label:s("admin.accounts.openai.wsModeCtxPool")},{value:Ms,label:s("admin.accounts.openai.wsModePassthrough")},{value:Es,label:s("admin.accounts.openai.wsModeHttpBridge")}]),Et=w(()=>[{value:"auto",label:s("admin.accounts.openai.compactModeAuto")},{value:"force_on",label:s("admin.accounts.openai.compactModeForceOn")},{value:"force_off",label:s("admin.accounts.openai.compactModeForceOff")}]),Qt=w(()=>Qs(Lt.value)),Ca=w(()=>Qs(Ft.value)),Nt=()=>{tt.value.push({from:"",to:""})},na=de=>{tt.value.splice(de,1)},da=()=>{Ot.value.push({from:"",to:""})},Rt=de=>{Ot.value.splice(de,1)},Vt=(de,B)=>{if(tt.value.some(Be=>Be.from===de)){b.showInfo(s("admin.accounts.mappingExists",{model:de}));return}tt.value.push({from:de,to:B})},Ut=de=>{const B=Ke.value.indexOf(de);if(B===-1){if(de===429){if(!confirm(s("admin.accounts.customErrorCodes429Warning")))return}else if(de===529&&!confirm(s("admin.accounts.customErrorCodes529Warning")))return;Ke.value.push(de)}else Ke.value.splice(B,1)},wt=()=>{const de=we.value;if(de===null||de<100||de>599){b.showError(s("admin.accounts.invalidErrorCode"));return}if(Ke.value.includes(de)){b.showInfo(s("admin.accounts.errorCodeExists"));return}if(de===429){if(!confirm(s("admin.accounts.customErrorCodes429Warning")))return}else if(de===529&&!confirm(s("admin.accounts.customErrorCodes529Warning")))return;Ke.value.push(de),we.value=null},yt=de=>{const B=Ke.value.indexOf(de);B!==-1&&Ke.value.splice(B,1)},ct=()=>ga(ot.value,_t.value,tt.value),ea=()=>ga("mapping",[],Ot.value),ca=()=>{const de={},B={};let J=!1;const Be=()=>(de.extra||(de.extra={}),de.extra);if(se.value&&(de.proxy_id=Je.value===null?0:Je.value),G.value&&(de.concurrency=st.value),me.value){const Ie=vt.value;de.load_factor=Ie!=null&&!Number.isNaN(Ie)&&Ie>0?Ie:0}if(ce.value&&(de.priority=At.value),le.value&&(de.rate_multiplier=Ye.value),ne.value&&(de.status=$t.value),te.value&&(de.group_ids=mt.value),D.value){const Ie=it.value.trim();Ie&&(B.base_url=Ie,J=!0)}if(N.value){const Ie=Be();Ie.openai_passthrough=ht.value,ht.value||(Ie.openai_oauth_passthrough=!1)}if(z.value&&!ia.value)if(ot.value==="whitelist"){const Ie={};for(const Ge of _t.value)Ie[Ge]=Ge;B.model_mapping=Ie,J=!0}else{const Ie=ct();B.model_mapping=Ie??{},J=!0}if(ee.value&&(B.custom_error_codes_enabled=!0,B.custom_error_codes=[...Ke.value],J=!0),ke.value&&(B.intercept_warmup_requests=ie.value,J=!0),W.value&&(B[Hs]=Ce.value,B[Ws]=Ce.value?Qn(Fe.value):{},J=!0),x.value){const Ie=Be();Ie.openai_oauth_responses_websockets_v2_mode=Lt.value,Ie.openai_oauth_responses_websockets_v2_enabled=ps(Lt.value)}if(H.value){const Ie=Be();Ie.openai_apikey_responses_websockets_v2_mode=Ft.value,Ie.openai_apikey_responses_websockets_v2_enabled=ps(Ft.value)}if(K.value&&(de.upstream_billing_probe_enabled=kt.value==="enabled"),be.value){const Ie=Be();Ie.codex_cli_only=Ht.value}if(fe.value&&be.value&&Ht.value){const Ie=Be();Ie.codex_cli_only_allow_app_server=qt.value}if($e.value){const Ie=Be();Ie.openai_compact_mode=Ct.value}if(he.value&&(B.compact_model_mapping=ea()??{},J=!0),Oe.value){const Ie=Be();ft.value&&Dt.value!=null&&Dt.value>0?(Ie.base_rpm=Dt.value,Ie.rpm_strategy=St.value,Mt.value!=null&&Mt.value>0&&(Ie.rpm_sticky_buffer=Mt.value)):(Ie.base_rpm=0,Ie.rpm_strategy="",Ie.rpm_sticky_buffer=0),de.extra=Ie}if(oa.value!==null){const Ie=Be();Ie.user_msg_queue_mode=oa.value,Ie.user_msg_queue_enabled=!1}return J&&(de.credentials=B),Object.keys(de).length>0?de:null},Jt=p(!1),zt=()=>te.value&&mt.value.length>0&&S.value.length===1&&(S.value[0]==="antigravity"||S.value[0]==="anthropic"),O=()=>{je.value=!1,Xe.value="",Ze.value=null,Jt.value=!1,c("close")},Q=async de=>{if(!zt()||Jt.value)return!0;try{const B=await ye.accounts.checkMixedChannelRisk({platform:S.value[0],group_ids:mt.value});return B.has_risk?(Ze.value=de,Xe.value=B.message||s("admin.accounts.bulkEdit.failed"),je.value=!0,!1):!0}catch(B){return b.showError(B.message||s("admin.accounts.bulkEdit.failed")),!1}},pe=async()=>
22{if($.value==="selected"&&o.accountIds.length===0){b.showError(s("admin.accounts.bulkEdit.noSelection"));return}if(!(D.value||N.value||z.value||ee.value||ke.value||W.value||se.value||G.value||me.value||ce.value||le.value||ne.value||te.value||x.value||H.value||K.value||be.value||fe.value||$e.value||he.value||Oe.value||oa.value!==null)){b.showError(s("admin.accounts.bulkEdit.noFieldsSelected"));return}if(D.value){const Be=it.value.trim();if(Be&&!/^https?:\/\//i.test(Be)){b.showError(s("admin.accounts.grokCustomBaseUrl.invalid"));return}}if(W.value&&Ce.value){if(!Fe.value.some(Ie=>Ie.name.trim())){b.showError(s("admin.accounts.headerOverride.bulkEmptyRows"));return}const Be=Ts(Fe.value);if(Be){b.showError(s(`admin.accounts.headerOverride.${Be}`));return}}const B=ca();if(!B){b.showError(s("admin.accounts.bulkEdit.noFieldsSelected"));return}await Q(B)&&await qe(B)},qe=async de=>{var J;const B=Jt.value?{...de,confirm_mixed_channel_risk:!0}:de;Re.value=!0;try{const Be=$.value==="filtered"&&((J=o.target)!=null&&J.filters)?await ye.accounts.bulkUpdate({filters:o.target.filters,...B}):await ye.accounts.bulkUpdate(o.accountIds,B),Ie=Be.success||0,Ge=Be.failed||0;Ie>0&&Ge===0?b.showSuccess(s("admin.accounts.bulkEdit.success",{count:Ie})):Ie>0?b.showError(s("admin.accounts.bulkEdit.partialSuccess",{success:Ie,failed:Ge})):b.showError(s("admin.accounts.bulkEdit.failed")),Ie>0&&(Ze.value=null,c("updated"),O())}catch(Be){Be.status===409&&Be.error==="mixed_channel_warning"?(Ze.value=de,Xe.value=Be.message,je.value=!0):(b.showError(Be.message||s("admin.accounts.bulkEdit.failed")),console.error("Error bulk updating accounts:",Be))}finally{Re.value=!1}},at=async()=>{je.value=!1,Jt.value=!0,Ze.value&&await qe(Ze.value)},Ne=()=>{je.value=!1,Ze.value=null};return pt(()=>o.show,de=>{de||(D.value=!1,z.value=!1,ee.value=!1,ke.value=!1,W.value=!1,se.value=!1,G.value=!1,me.value=!1,ce.value=!1,le.value=!1,ne.value=!1,te.value=!1,N.value=!1,x.value=!1,H.value=!1,K.value=!1,be.value=!1,fe.value=!1,$e.value=!1,he.value=!1,Oe.value=!1,it.value="",ht.value=!1,ot.value="whitelist",_t.value=[],tt.value=[],Ke.value=[],we.value=null,ie.value=!1,Ce.value=!1,Fe.value=[],Je.value=null,st.value=1,vt.value=null,At.value=1,Ye.value=1,$t.value="active",mt.value=[],Lt.value=Gt,Ft.value=Gt,kt.value="enabled",Ht.value=!1,qt.value=!1,Ct.value="auto",Ot.value=[],ft.value=!1,Dt.value=null,St.value="tiered",Mt.value=null,oa.value=null,je.value=!1,Xe.value="",Ze.value=null,Jt.value=!1)}),(de,B)=>(n(),r(ve,null,[U(wa,{show:i.show,title:t(s)("admin.accounts.bulkEdit.title"),width:"wide",onClose:O},{footer:Me(()=>[e("div",A6,[e("button",{type:"button",class:"btn btn-secondary",onClick:O},a(t(s)("common.cancel")),1),e("button",{type:"submit",form:"bulk-edit-account-form",disabled:Re.value,class:"btn btn-primary"},[Re.value?(n(),r("svg",P6,[...B[63]||(B[63]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):v("",!0),oe(" "+a(Re.value?t(s)("admin.accounts.bulkEdit.updating"):t(s)("admin.accounts.bulkEdit.submit")),1)],8,R6)])]),default:Me(()=>[e("form",{id:"bulk-edit-account-form",class:"space-y-5",onSubmit:B[51]||(B[51]=Bt(()=>pe(),["prevent"]))},[e("div",G5,[e("p",K5,[B[52]||(B[52]=e("svg",{class:"mr-1.5 inline h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(s)("admin.accounts.bulkEdit.selectionInfo",{count:$.value==="filtered"?P.value:i.accountIds.length})),1)])]),F.value?(n(),r("div",Q5,[e("p",J5,[B[53]||(B[53]=e("svg",{class:"mr-1.5 inline h-5 w-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})],-1)),oe(" "+a(t(s)("admin.accounts.bulkEdit.mixedPlatformWarning",{platforms:S.value.join(", ")})),1)])])):v("",!0),R.value?(n(),r("div",Y5,[e("div",X5,[e("div",Z5,[e("label",e3,a(t(s)("admin.accounts.openai.oauthPassthrough")),1),e("p",t3,a(t(s)("admin.accounts.openai.oauthPassthroughDesc")),1
22)]),V(e("input",{"onUpdate:modelValue":B[0]||(B[0]=J=>N.value=J),id:"bulk-edit-openai-passthrough-enabled",type:"checkbox","aria-controls":"bulk-edit-openai-passthrough-body",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,N.value]])]),e("div",{id:"bulk-edit-openai-passthrough-body",class:E(!N.value&&"pointer-events-none opacity-50"),role:"group","aria-labelledby":"bulk-edit-openai-passthrough-label"},[e("button",{id:"bulk-edit-openai-passthrough-toggle",type:"button",class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ht.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"]),onClick:B[1]||(B[1]=J=>ht.value=!ht.value)},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ht.value?"translate-x-5":"translate-x-0"])},null,2)],2)],2)])):v("",!0),e("div",a3,[e("div",o3,[e("label",s3,a(t(s)("admin.accounts.baseUrl")),1),V(e("input",{"onUpdate:modelValue":B[2]||(B[2]=J=>D.value=J),id:"bulk-edit-base-url-enabled",type:"checkbox","aria-controls":"bulk-edit-base-url",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,D.value]])]),V(e("input",{"onUpdate:modelValue":B[3]||(B[3]=J=>it.value=J),id:"bulk-edit-base-url",type:"text",disabled:!D.value,class:E(["input",!D.value&&"cursor-not-allowed opacity-50"]),placeholder:t(s)("admin.accounts.bulkEdit.baseUrlPlaceholder"),"aria-labelledby":"bulk-edit-base-url-label"},null,10,n3),[[re,it.value]]),L.value?(n(),Ae(Ss,{key:0,class:"mt-2",onSelect:B[4]||(B[4]=J=>{it.value=J,D.value=!0})})):v("",!0),e("p",r3,a(t(s)("admin.accounts.bulkEdit.baseUrlNotice")),1)]),e("div",l3,[e("div",i3,[e("label",u3,a(t(s)("admin.accounts.modelRestriction")),1),V(e("input",{"onUpdate:modelValue":B[5]||(B[5]=J=>z.value=J),id:"bulk-edit-model-restriction-enabled",type:"checkbox","aria-controls":"bulk-edit-model-restriction-body",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,z.value]])]),e("div",{id:"bulk-edit-model-restriction-body",class:E(!z.value&&"pointer-events-none opacity-50"),role:"group","aria-labelledby":"bulk-edit-model-restriction-label"},[ia.value?(n(),r("div",d3,[e("p",c3,a(t(s)("admin.accounts.openai.modelRestrictionDisabledByPassthrough")),1)])):(n(),r(ve,{key:1},[e("div",p3,[e("button",{type:"button",class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",ot.value==="whitelist"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"]),onClick:B[6]||(B[6]=J=>ot.value="whitelist")},[B[54]||(B[54]=e("svg",{class:"mr-1.5 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(s)("admin.accounts.modelWhitelist")),1)],2),e("button",{type:"button",class:E(["flex-1 rounded-lg px-4 py-2 text-sm font-medium transition-all",ot.value==="mapping"?"bg-purple-100 text-purple-700 dark:bg-purple-900/30 dark:text-purple-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"]),onClick:B[7]||(B[7]=J=>ot.value="mapping")},[B[55]||(B[55]=e("svg",{class:"mr-1.5 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 7h12m0 0l-4-4m4 4l-4 4m0 6H4m0 0l4 4m-4-4l4-4"})],-1)),oe(" "+a(t(s)("admin.accounts.modelMapping")),1)],2)]),ot.value==="whitelist"?(n(),r("div",m3,[e("div",g3,[e("p",v3,[B[56]||(B[56]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(s)("admin.accounts.selectAllowedModels")),1)])]),U(Co,{modelValue:_t.value,"onUpdate:modelValue":B[8]||(B[8]=J=>_t.value=J),platforms:S.value},null,8,["modelValue","platforms"]),e("p",y3,[oe(a(t(s)("admin.accounts.selectedModels",{count:_t.value.length}))+" ",1),_t.value.length===0?(n(),r("span",b3,a(t(s)("admin.accounts.supportsAllModels")),1)):v("",!0)])])):(n(),r("div",h3,[e("div",f3,[e("p",x3,[B[57]||(B[57]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)),oe(" "+a(t(s)("admin.accounts.mapRequestModels")),1)])]),tt.value.length>0?(n(),r("div",_3,[(n(!0),r(ve,null,Ue(tt.value,(J,Be)=>(n(),r("div",{key:Be,class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":Ie=>J.from=Ie,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.requestModel")},null,8,k3),[[re,J.from]]),B[59]||(B[59]=e("svg",{class:"h-4 w-4 flex-shrink-0 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M14 5l7 7m0 0l-7 7m7-7H3"})],-1)),V(e("input",{"onUpdate:modelValue":Ie=>J.to=Ie,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.actualModel")},null,8,w3),[[re,J.to]]),e("button",{type:"button",class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20",onClick:Ie=>na(Be)},[...B[58]||(B[58]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})],-1)])],8,$3)]))),128))])):v("",!0),e("button",{type:"button",class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300",onClick:Nt},[B[60]||(B[60]=e("svg",{class:"mr-1 inline h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)),oe(" "+a(t(s)("admin.accounts.addMapping")),1)]),e("div",C3,[(n(!0),r(ve,null,Ue(q.value,J=>(n(),r("button",{key:J.label,type:"button",class:E(["rounded-lg px-3 py-1 text-xs transition-colors",J.color]),onClick:Be=>Vt(J.from,J.to)}," + "+a(J.label),11,T3))),128))])]))],64))],2)]),e("div",S3,[e("div",M3,[e("div",null,[e("label",E3,a(t(s)("admin.accounts.customErrorCodes")),1),e("p",U3,a(t(s)("admin.accounts.customErrorCodesHint")),1)]),V(e("input",{"onUpdate:modelValue":B[9]||(B[9]=J=>ee.value=J),id:"bulk-edit-custom-error-codes-enabled",type:"checkbox","aria-controls":"bulk-edit-custom-error-codes-body",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,ee.value]])]),ee.value?(n(),r("div",A3,[e("div",R3,[e("p",P3,[U(ae,{name:"exclamationTriangle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(s)("admin.accounts.customErrorCodesWarning")),1)])]),e("div",I3,[(n(),r(ve,null,Ue(He,J=>e("button",{key:J.value,type:"button",class:E(["rounded-lg px-3 py-1.5 text-sm font-medium transition-colors",Ke.value.includes(J.value)?"bg-red-100 text-red-700 ring-1 ring-red-500 dark:bg-red-900/30 dark:text-red-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"]),onClick:Be=>Ut(J.value)},a(J.value)+" "+a(J.label),11,q3)),64))]),e("div",O3,[V(e("input",{"onUpdate:modelValue":B[10]||(B[10]=J=>we.value=J),id:"bulk-edit-custom-error-code-input",type:"number",min:"100",max:"599",class:"input flex-1",placeholder:t(s)("admin.accounts.enterErrorCode"),"aria-labelledby":"bulk-edit-custom-error-codes-label",onKeyup:mn(wt,["enter"])},null,40,D3),[[re,we.value]]),e("button",{type:"button",class:"btn btn-secondary px-3",onClick:wt},[...B[61]||(B[61]=[e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 4v16m8-8H4"})],-1)])])]),e("div",L3,[(n(!0),r(ve,null,Ue(Ke.value.sort((J,Be)=>J-Be),J=>(n(),r("span",{key:J,class:"inline-flex items-center gap-1 rounded-full bg-red-100 px-2.5 py-0.5 text-sm font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400"},[oe(a(J)+" ",1),e("button",{type:"button",class:"hover:text-red-900 dark:hover:text-red-300",onClick:Be=>yt(J)}
22,[U(ae,{name:"x",size:"xs",class:"h-3.5 w-3.5","stroke-width":2})],8,V3)]))),128)),Ke.value.length===0?(n(),r("span",z3,a(t(s)("admin.accounts.noneSelectedUsesDefault")),1)):v("",!0)])])):v("",!0)]),e("div",N3,[e("div",j3,[e("div",B3,[e("label",F3,a(t(s)("admin.accounts.interceptWarmupRequests")),1),e("p",H3,a(t(s)("admin.accounts.interceptWarmupRequestsDesc")),1)]),V(e("input",{"onUpdate:modelValue":B[11]||(B[11]=J=>ke.value=J),id:"bulk-edit-intercept-warmup-enabled",type:"checkbox","aria-controls":"bulk-edit-intercept-warmup-body",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,ke.value]])]),ke.value?(n(),r("div",W3,[e("button",{type:"button",class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ie.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"]),onClick:B[12]||(B[12]=J=>ie.value=!ie.value)},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ie.value?"translate-x-5":"translate-x-0"])},null,2)],2)])):v("",!0)]),f.value?(n(),r("div",G3,[e("div",K3,[e("div",Q3,[e("label",J3,a(t(s)("admin.accounts.headerOverride.title")),1),e("p",Y3,a(t(s)("admin.accounts.headerOverride.hint")),1)]),V(e("input",{"onUpdate:modelValue":B[13]||(B[13]=J=>W.value=J),id:"bulk-edit-header-override-enabled",type:"checkbox","aria-controls":"bulk-edit-header-override-body",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,W.value]])]),W.value?(n(),r("div",X3,[e("button",{type:"button",class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ce.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"]),onClick:B[14]||(B[14]=J=>Ce.value=!Ce.value)},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ce.value?"translate-x-5":"translate-x-0"])},null,2)],2),Ce.value?(n(),r("div",Z3,[e("div",e$,[e("p",t$,[U(ae,{name:"exclamationCircle",size:"sm",class:"mr-1 inline","stroke-width":2}),oe(" "+a(t(s)("admin.accounts.headerOverride.info")),1)])]),e("p",a$,a(t(s)("admin.accounts.headerOverride.bulkReplaceHint")),1),U(Ks,{rows:Fe.value,"onUpdate:rows":B[15]||(B[15]=J=>Fe.value=J)},null,8,["rows"])])):(n(),r("p",o$,a(t(s)("admin.accounts.headerOverride.bulkDisableHint")),1))])):v("",!0)])):v("",!0),e("div",s$,[e("div",n$,[e("label",r$,a(t(s)("admin.accounts.proxy")),1),V(e("input",{"onUpdate:modelValue":B[16]||(B[16]=J=>se.value=J),id:"bulk-edit-proxy-enabled",type:"checkbox","aria-controls":"bulk-edit-proxy-body",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,se.value]])]),e("div",{id:"bulk-edit-proxy-body",class:E(!se.value&&"pointer-events-none opacity-50")},[U(vn,{modelValue:Je.value,"onUpdate:modelValue":B[17]||(B[17]=J=>Je.value=J),proxies:i.proxies,"aria-labelledby":"bulk-edit-proxy-label"},null,8,["modelValue","proxies"])],2)]),e("div",l$,[e("div",null,[e("div",i$,[e("label",u$,a(t(s)("admin.accounts.concurrency")),1),V(e("input",{"onUpdate:modelValue":B[18]||(B[18]=J=>G.value=J),id:"bulk-edit-concurrency-enabled",type:"checkbox","aria-controls":"bulk-edit-concurrency",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,G.value]])]),V(e("input",{"onUpdate:modelValue":B[19]||(B[19]=J=>st.value=J),id:"bulk-edit-concurrency",type:"number",min:"1",disabled:!G.value,class:E(["input",!G.value&&"cursor-not-allowed opacity-50"]),"aria-labelledby":"bulk-edit-concurrency-label",onInput:B[20]||(B[20]=J=>st.value=Math.max(1,st.value||1))},null,42,d$),[[re,st.value,void 0,{number:!0}]])]),e("div",null,[e("div",c$,[e("label",p$,a(t(s)("admin.accounts.loadFactor")),1),V(e("input",{"onUpdate:modelValue":B[21]||(B[21]=J=>me.value=J),id:"bulk-edit-load-factor-enabled",type:"checkbox","aria-controls":"bulk-edit-load-factor",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,me.value]])]),V(e("input",{"onUpdate:modelValue":B[22]||(B[22]=J=>vt.value=J),id:"bulk-edit-load-factor",type:"number",min:"1",disabled:!me.value,class:E(["input",!me.value&&"cursor-not-allowed opacity-50"]),"aria-labelledby":"bulk-edit-load-factor-label",onInput:B[23]||(B[23]=J=>vt.value=vt.value&&vt.value>=1?vt.value:null)},null,42,m$),[[re,vt.value,void 0,{number:!0}]]),e("p",g$,a(t(s)("admin.accounts.loadFactorHint")),1)]),e("div",null,[e("div",v$,[e("label",y$,a(t(s)("admin.accounts.priority")),1),V(e("input",{"onUpdate:modelValue":B[24]||(B[24]=J=>ce.value=J),id:"bulk-edit-priority-enabled",type:"checkbox","aria-controls":"bulk-edit-priority",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,ce.value]])]),V(e("input",{"onUpdate:modelValue":B[25]||(B[25]=J=>At.value=J),id:"bulk-edit-priority",type:"number",min:"1",disabled:!ce.value,class:E(["input",!ce.value&&"cursor-not-allowed opacity-50"]),"aria-labelledby":"bulk-edit-priority-label"},null,10,b$),[[re,At.value,void 0,{number:!0}]])]),e("div",null,[e("div",h$,[e("label",f$,a(t(s)("admin.accounts.billingRateMultiplier")),1),V(e("input",{"onUpdate:modelValue":B[26]||(B[26]=J=>le.value=J),id:"bulk-edit-rate-multiplier-enabled",type:"checkbox","aria-controls":"bulk-edit-rate-multiplier",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,le.value]])]),V(e("input",{"onUpdate:modelValue":B[27]||(B[27]=J=>Ye.value=J),id:"bulk-edit-rate-multiplier",type:"number",min:"0",step:"0.01",disabled:!le.value,class:E(["input",!le.value&&"cursor-not-allowed opacity-50"]),"aria-labelledby":"bulk-edit-rate-multiplier-label"},null,10,x$),[[re,Ye.value,void 0,{number:!0}]]),e("p",_$,a(t(s)("admin.accounts.billingRateMultiplierHint")),1)])]),e("div",k$,[e("div",w$,[e("label",$$,a(t(s)("common.status")),1),V(e("input",{"onUpdate:modelValue":B[28]||(B[28]=J=>ne.value=J),id:"bulk-edit-status-enabled",type:"checkbox","aria-controls":"bulk-edit-status",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,ne.value]])]),e("div",{id:"bulk-edit-status",class:E(!ne.value&&"pointer-events-none opacity-50")},[U(Zt,{modelValue:$t.value,"onUpdate:modelValue":B[29]||(B[29]=J=>$t.value=J),options:$a.value,"aria-labelledby":"bulk-edit-status-label"},null,8,["modelValue","options"])],2)]),_.value?(n(),r("div",C$,[e("div",T$,[e("label",S$,a(t(s)("admin.accounts.openai.wsMode")),1),V(e("input",{"onUpdate:modelValue":B[30]||(B[30]=J=>x.value=J),id:"bulk-edit-openai-ws-mode-enabled",type:"checkbox","aria-controls":"bulk-edit-openai-ws-mode",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,x.value]])]),e("div",{id:"bulk-edit-openai-ws-mode",class:E(!x.value&&"pointer-events-none opacity-50")}
22,[e("p",M$,a(t(s)("admin.accounts.openai.wsModeDesc")),1),e("p",E$,a(t(s)(Qt.value)),1),U(Zt,{modelValue:Lt.value,"onUpdate:modelValue":B[31]||(B[31]=J=>Lt.value=J),"data-testid":"bulk-edit-openai-ws-mode-select",options:Kt.value,"aria-labelledby":"bulk-edit-openai-ws-mode-label"},null,8,["modelValue","options"])],2)])):v("",!0),_.value?(n(),r("div",U$,[e("div",A$,[e("label",R$,a(t(s)("admin.accounts.openai.codexCLIOnly")),1),V(e("input",{"onUpdate:modelValue":B[32]||(B[32]=J=>be.value=J),id:"bulk-edit-openai-codex-cli-only-enabled",type:"checkbox","aria-controls":"bulk-edit-openai-codex-cli-only",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,be.value]])]),e("div",{id:"bulk-edit-openai-codex-cli-only",class:E(!be.value&&"pointer-events-none opacity-50")},[e("p",P$,a(t(s)("admin.accounts.openai.codexCLIOnlyDesc")),1),e("button",{id:"bulk-edit-openai-codex-cli-only-toggle",type:"button",class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",Ht.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"]),onClick:B[33]||(B[33]=J=>Ht.value=!Ht.value)},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",Ht.value?"translate-x-5":"translate-x-0"])},null,2)],2)],2)])):v("",!0),_.value?(n(),r("div",I$,[e("div",q$,[e("label",O$,a(t(s)("admin.accounts.openai.codexCLIOnlyAppServer")),1),V(e("input",{"onUpdate:modelValue":B[34]||(B[34]=J=>fe.value=J),id:"bulk-edit-openai-codex-app-server-enabled",type:"checkbox","aria-controls":"bulk-edit-openai-codex-app-server",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,fe.value]])]),e("div",{id:"bulk-edit-openai-codex-app-server",class:E(!fe.value&&"pointer-events-none opacity-50")},[e("p",D$,a(t(s)("admin.accounts.openai.codexCLIOnlyAppServerDesc")),1),e("button",{id:"bulk-edit-openai-codex-app-server-toggle",type:"button",class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",qt.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"]),onClick:B[35]||(B[35]=J=>qt.value=!qt.value)},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",qt.value?"translate-x-5":"translate-x-0"])},null,2)],2)],2)])):v("",!0),y.value?(n(),r("div",L$,[e("div",V$,[e("div",z$,[e("label",N$,a(t(s)("admin.accounts.upstreamBilling.autoProbe")),1),e("p",j$,a(t(s)("admin.accounts.upstreamBilling.autoProbeHint")),1)]),V(e("input",{"onUpdate:modelValue":B[36]||(B[36]=J=>K.value=J),id:"bulk-edit-upstream-billing-auto-probe-enabled",type:"checkbox","aria-controls":"bulk-edit-upstream-billing-auto-probe",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,K.value]])]),e("div",{id:"bulk-edit-upstream-billing-auto-probe",class:E(!K.value&&"pointer-events-none opacity-50"),role:"group","aria-labelledby":"bulk-edit-upstream-billing-auto-probe-label"},[U(Zt,{modelValue:kt.value,"onUpdate:modelValue":B[37]||(B[37]=J=>kt.value=J),disabled:!K.value,"data-testid":"bulk-edit-upstream-billing-auto-probe-select",options:la.value,"aria-labelledby":"bulk-edit-upstream-billing-auto-probe-label"},null,8,["modelValue","disabled","options"])],2)])):v("",!0),y.value?(n(),r("div",B$,[e("div",F$,[e("label",H$,a(t(s)("admin.accounts.openai.wsMode")),1),V(e("input",{"onUpdate:modelValue":B[38]||(B[38]=J=>H.value=J),id:"bulk-edit-openai-apikey-ws-mode-enabled",type:"checkbox","aria-controls":"bulk-edit-openai-apikey-ws-mode",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,H.value]])]),e("div",{id:"bulk-edit-openai-apikey-ws-mode",class:E(!H.value&&"pointer-events-none opacity-50")}
22,[e("p",W$,a(t(s)("admin.accounts.openai.wsModeDesc")),1),e("p",G$,a(t(s)(Ca.value)),1),U(Zt,{modelValue:Ft.value,"onUpdate:modelValue":B[39]||(B[39]=J=>Ft.value=J),"data-testid":"bulk-edit-openai-apikey-ws-mode-select",options:Kt.value,"aria-labelledby":"bulk-edit-openai-apikey-ws-mode-label"},null,8,["modelValue","options"])],2)])):v("",!0),R.value?(n(),r("div",K$,[e("div",Q$,[e("div",J$,[e("label",Y$,a(t(s)("admin.accounts.openai.compactMode")),1),e("p",X$,a(t(s)("admin.accounts.openai.compactModeDesc")),1)]),V(e("input",{"onUpdate:modelValue":B[40]||(B[40]=J=>$e.value=J),id:"bulk-edit-openai-compact-mode-enabled",type:"checkbox","aria-controls":"bulk-edit-openai-compact-mode",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,$e.value]])]),e("div",{id:"bulk-edit-openai-compact-mode",class:E(!$e.value&&"pointer-events-none opacity-50")},[U(Zt,{modelValue:Ct.value,"onUpdate:modelValue":B[41]||(B[41]=J=>Ct.value=J),"data-testid":"bulk-edit-openai-compact-mode-select",options:Et.value,"aria-labelledby":"bulk-edit-openai-compact-mode-label"},null,8,["modelValue","options"])],2)])):v("",!0),R.value?(n(),r("div",Z$,[e("div",e6,[e("div",t6,[e("label",a6,a(t(s)("admin.accounts.openai.compactModelMapping")),1),e("p",o6,a(t(s)("admin.accounts.openai.compactModelMappingDesc")),1)]),V(e("input",{"onUpdate:modelValue":B[42]||(B[42]=J=>he.value=J),id:"bulk-edit-openai-compact-model-mapping-enabled",type:"checkbox","aria-controls":"bulk-edit-openai-compact-model-mapping",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,he.value]])]),e("div",{id:"bulk-edit-openai-compact-model-mapping",class:E(!he.value&&"pointer-events-none opacity-50")},[Ot.value.length>0?(n(),r("div",s6,[(n(!0),r(ve,null,Ue(Ot.value,(J,Be)=>(n(),r("div",{key:Be,class:"flex items-center gap-2"},[V(e("input",{"onUpdate:modelValue":Ie=>J.from=Ie,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.fromModel"),"data-testid":"bulk-edit-openai-compact-model-mapping-input"},null,8,n6),[[re,J.from]]),B[62]||(B[62]=e("span",{class:"text-gray-400"},"→",-1)),V(e("input",{"onUpdate:modelValue":Ie=>J.to=Ie,type:"text",class:"input flex-1",placeholder:t(s)("admin.accounts.toModel"),"data-testid":"bulk-edit-openai-compact-model-mapping-input"},null,8,r6),[[re,J.to]]),e("button",{type:"button",class:"rounded-lg p-2 text-red-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20",onClick:Ie=>Rt(Be)},[U(ae,{name:"trash",size:"sm"})],8,l6)]))),128))])):v("",!0),e("button",{type:"button",class:"mb-3 w-full rounded-lg border-2 border-dashed border-gray-300 px-4 py-2 text-gray-600 transition-colors hover:border-gray-400 hover:text-gray-700 dark:border-dark-500 dark:text-gray-400 dark:hover:border-dark-400 dark:hover:text-gray-300","data-testid":"bulk-edit-openai-compact-model-mapping-add",onClick:da}," + "+a(t(s)("admin.accounts.addMapping")),1)],2)])):v("",!0),I.value?(n(),r("div",i6,[e("div",u6,[e("label",d6,a(t(s)("admin.accounts.quotaControl.rpmLimit.label")),1),V(e("input",{"onUpdate:modelValue":B[43]||(B[43]=J=>Oe.value=J),id:"bulk-edit-rpm-limit-enabled",type:"checkbox","aria-controls":"bulk-edit-rpm-limit-body",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,Oe.value]])]),e("div",{id:"bulk-edit-rpm-limit-body",class:E(!Oe.value&&"pointer-events-none opacity-50"),role:"group","aria-labelledby":"bulk-edit-rpm-limit-label"},[e("div",c6,[e("span",p6,a(t(s)("admin.accounts.quotaControl.rpmLimit.hint")),1),e("button",{type:"button",onClick:B[44]||(B[44]=J=>ft.value=!ft.value),class:E(["relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",ft.value?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",ft.value?"translate-x-5":"translate-x-0"])},null,2)],2)]),ft.value?(n(),r("div",m6,[e("div",null,[e("label",g6,a(t(s)("admin.accounts.quotaControl.rpmLimit.baseRpm")),1),V(e("input",{"onUpdate:modelValue":B[45]||(B[45]=J=>Dt.value=J),type:"number",min:"1",max:"1000",step:"1",class:"input",placeholder:t(s)("admin.accounts.quotaControl.rpmLimit.baseRpmPlaceholder")},null,8,v6),[[re,Dt.value,void 0,{number:!0}]]),e("p",y6,a(t(s)("admin.accounts.quotaControl.rpmLimit.baseRpmHint")),1)]),e("div",null,[e("label",b6,a(t(s)("admin.accounts.quotaControl.rpmLimit.strategy")),1),e("div",h6,[e("button",{type:"button",onClick:B[46]||(B[46]=J=>St.value="tiered"),class:E(["flex-1 rounded-lg px-3 py-2 text-sm font-medium transition-all",St.value==="tiered"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(s)("admin.accounts.quotaControl.rpmLimit.strategyTiered")),3),e("button",{type:"button",onClick:B[47]||(B[47]=J=>St.value="sticky_exempt"),class:E(["flex-1 rounded-lg px-3 py-2 text-sm font-medium transition-all",St.value==="sticky_exempt"?"bg-primary-100 text-primary-700 dark:bg-primary-900/30 dark:text-primary-400":"bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-400 dark:hover:bg-dark-500"])},a(t(s)("admin.accounts.quotaControl.rpmLimit.strategyStickyExempt")),3)])]),St.value==="tiered"?(n(),r("div",f6,[e("label",x6,a(t(s)("admin.accounts.quotaControl.rpmLimit.stickyBuffer")),1),V(e("input",{"onUpdate:modelValue":B[48]||(B[48]=J=>Mt.value=J),type:"number",min:"1",step:"1",class:"input",placeholder:t(s)("admin.accounts.quotaControl.rpmLimit.stickyBufferPlaceholder")},null,8,_6),[[re,Mt.value,void 0,{number:!0}]]),e("p",k6,a(t(s)("admin.accounts.quotaControl.rpmLimit.stickyBufferHint")),1)])):v("",!0)])):v("",!0)],2),e("div",w6,[e("label",$6,a(t(s)("admin.accounts.quotaControl.rpmLimit.userMsgQueue")),1),e("p",C6,a(t(s)("admin.accounts.quotaControl.rpmLimit.userMsgQueueHint")),1),e("div",T6,[(n(!0),r(ve,null,Ue(sa.value,J=>(n(),r("button",{type:"button",key:J.value,onClick:Be=>oa.value=oa.value===J.value?null:J.value,class:E(["px-3 py-1.5 text-sm rounded-md border transition-colors",oa.value===J.value?"bg-primary-600 text-white border-primary-600":"bg-white dark:bg-dark-700 text-gray-700 dark:text-gray-300 border-gray-300 dark:border-dark-500 hover:bg-gray-50 dark:hover:bg-dark-600"])},a(J.label),11,S6))),128))])])])):v("",!0),e("div",M6,[e("div",E6,[e("label",U6,a(t(s)("nav.groups")),1),V(e("input",{"onUpdate:modelValue":B[49]||(B[49]=J=>te.value=J),id:"bulk-edit-groups-enabled",type:"checkbox","aria-controls":"bulk-edit-groups",class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,te.value]])]),e("div",{id:"bulk-edit-groups",class:E(!te.value&&"pointer-events-none opacity-50")},[U(yn,{modelValue:mt.value,"onUpdate:modelValue":B[50]||(B[50]=J=>mt.value=J),groups:i.groups,"aria-labelledby":"bulk-edit-groups-label"},null,8,["modelValue","groups"])],2)])],32)]),_:1},8,["show","title"]),U(so,{show:je.value,title:t(s)("admin.accounts.mixedChannelWarningTitle"),message:Xe.value,"confirm-text":t(s)("common.confirm"),"cancel-text":t(s)("common.cancel"),danger:!0,onConfirm:at,onCancel:Ne},null,8,["show","title","message","confirm-text","cancel-text"])],64))}}),q6={class:"flex items-center gap-2"},O6={key:0,class:"flex flex-col items-center gap-1"},D6={class:"badge text-xs badge-warning"},L6={class:"text-[11px] text-gray-400 dark:text-gray-500"},V6={key:1,class:"flex flex-col items-center gap-1"},z6={class:"badge text-xs badge-danger"},N6={class:"text-[11px] text-gray-400 dark:text-gray-500"},j6=["title"],B6={key:3,class:"group/error relative"},F6={class:"invisible absolute left-0 top-full z-[100] mt-1.5 min-w-[200px] max-w-[300px] rounded-lg bg-gray-800 px-3 py-2 text-xs text-white opacity-0 shadow-xl transition-all duration-200 group-hover/error:visible group-hover/error:opacity-100 dark:bg-gray-900"},H6={class:"whitespace-pre-wrap break-words leading-relaxed text-gray-300"},W6={key:4,class:"group relative"},G6={class:"inline-flex items-center gap-1 rounded bg-amber-100 px-1.5 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400"},K6={class:"pointer-events-none absolute bottom-full left-1/2 z-50 mb-2 w-56 -translate-x-1/2 whitespace-normal rounded bg-gray-900 px-3 py-2 text-center text-xs leading-relaxed text-white opacity-0 transition-opacity group-hover:opacity-100 dark:bg-gray-700"},Q6={key:0,class:"inline-flex items-center gap-1 rounded bg-red-100 px-1.5 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400"},J6={class:"text-[10px] opacity-70"},Y6={key:1,class:"inline-flex items-center gap-1 rounded bg-amber-100 px-1.5 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-400"},X6={class:"text-[10px] opacity-70"},Z6={key:2,class:"inline-flex items-center gap-1 rounded bg-purple-100 px-1.5 py-0.5 text-xs font-medium text-purple-700 dark:bg-purple-900/30 dark:text-purple-400"},eC={class:"text-[10px] opacity-70"},tC={class:"pointer-events-none absolute bottom-full left-1/2 z-50 mb-2 w-max max-w-[320px] -translate-x-1/2 whitespace-nowrap rounded bg-gray-900 px-3 py-2 text-center text-xs leading-relaxed text-white opacity-0 transition-opacity group-hover:opacity-100 dark:bg-gray-700"},aC={key:6,class:"group relative"},oC={class:"inline-flex items-center gap-1 rounded bg-red-100 px-1.5 py-0.5 text-xs font-medium text-red-700 dark:bg-red-900/30 dark:text-red-400"},sC={class:"pointer-events-none absolute bottom-full left-1/2 z-50 mb-2 w-56 -translate-x-1/2 whitespace-normal rounded bg-gray-900 px-3 py-2 text-center text-xs leading-relaxed text-white opacity-0 transition-opacity group-hover:opacity-100 dark:bg-gray-700"},nC=ut({__name:"AccountStatusIndicator",props:{account:{}},emits:["show-temp-unsched"],setup(i,{emit:m}){const{t:o}=dt(),c=i,s=m,b=w(()=>c.account.rate_limit_reset_at?new Date(c.account.rate_limit_reset_at)>new Date:!1),$=w(()=>{const D=c.account.extra,z=D==null?void 0:D.model_rate_limits,ee=new Date,ke=[];if(!z)return ke;const W=z.AICredits,se=W&&new Date(W.rate_limit_reset_at)>ee,G=!!(D!=null&&D.allow_overages);for(const[me,ce]of Object.entries(z))new Date(ce.rate_limit_reset_at)<=ee||(me==="AICredits"?ke.push({kind:"credits_exhausted",model:me,reset_at:ce.rate_limit_reset_at}):G&&!se?ke.push({kind:"credits_active",model:me,reset_at:ce.rate_limit_reset_at}):ke.push({kind:"rate_limit",model:me,reset_at:ce.rate_limit_reset_at}));return ke}),P=D=>({"claude-fable-5":"CFable5","claude-opus-4-6":"COpus46","claude-opus-4-6-thinking":"COpus46T","claude-opus-4-7":"COpus47","claude-opus-4-8":"COpus48","claude-opus-5":"COpus5","claude-sonnet-4-6":"CSon46","claude-sonnet-4-5":"CSon45","claude-sonnet-4-5-thinking":"CSon45T","gemini-2.5-flash":"G25F","gemini-2.5-flash-lite":"G25FL","gemini-2.5-flash-thinking":"G25FT","gemini-2.5-pro":"G25P","gemini-2.5-flash-image":"G25I","gemini-3.5-flash":"G35F","gemini-3-flash":"G3F","gemini-3.1-pro-high":"G3PH","gemini-3.1-pro-low":"G3PL","gemini-3-pro-image":"G3PI","gemini-3.1-flash-image":"G31FI","gpt-oss-120b-medium":"GPT12
220",tab_flash_lite_preview:"TabFL",claude:"Claude",claude_sonnet:"CSon",claude_opus:"COpus",claude_haiku:"CHaiku",gemini_text:"Gemini",gemini_image:"GImg",gemini_flash:"GFlash",gemini_pro:"GPro"})[D]||D,S=w(()=>c.account.overload_until?new Date(c.account.overload_until)>new Date:!1),M=w(()=>c.account.temp_unschedulable_until?new Date(c.account.temp_unschedulable_until)>new Date:!1),L=w(()=>c.account.status==="error"),F=w(()=>{const D=(z,ee)=>typeof ee=="number"&&ee>0&&typeof z=="number"&&z>=ee;return D(c.account.quota_used,c.account.quota_limit)||D(c.account.quota_daily_used,c.account.quota_daily_limit)||D(c.account.quota_weekly_used,c.account.quota_weekly_limit)}),R=w(()=>Ls(c.account.rate_limit_reset_at)),_=w(()=>R.value?o("admin.accounts.status.rateLimitedAutoResume",{time:R.value}):""),y=w(()=>Xn(c.account.overload_until)),f=w(()=>L.value?"badge-danger":M.value?"badge-warning":c.account.status!=="active"?c.account.status==="error"?"badge-danger":"badge-gray":F.value?"badge-warning":c.account.schedulable?"badge-success":"badge-gray"),I=w(()=>L.value?o("admin.accounts.status.error"):M.value?o("admin.accounts.status.tempUnschedulable"):c.account.status!=="active"?o(`admin.accounts.status.${c.account.status}`):F.value?o("admin.accounts.status.quotaExceeded"):c.account.schedulable?o(`admin.accounts.status.${c.account.status}`):o("admin.accounts.status.paused")),q=()=>{M.value&&s("show-temp-unsched",c.account)};return(D,z)=>(n(),r("div",q6,[b.value?(n(),r("div",O6,[e("span",D6,a(t(o)("admin.accounts.status.rateLimited")),1),e("span",L6,a(_.value),1)])):S.value?(n(),r("div",V6,[e("span",z6,a(t(o)("admin.accounts.status.overloaded")),1),e("span",N6,a(y.value),1)])):(n(),r(ve,{key:2},[M.value?(n(),r("button",{key:0,type:"button",class:E(["badge text-xs",f.value,"cursor-pointer"]),title:t(o)("admin.accounts.status.viewTempUnschedDetails"),onClick:q},a(I.value),11,j6)):(n(),r("span",{key:1,class:E(["badge text-xs",f.value])},a(I.value),3))],64)),L.value&&i.account.error_message?(n(),r("div",B6,[z[1]||(z[1]=e("svg",{class:"h-4 w-4 cursor-help text-red-500 transition-colors hover:text-red-600 dark:text-red-400 dark:hover:text-red-300",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9.879 7.519c1.171-1.025 3.071-1.025 4.242 0 1.172 1.025 1.172 2.687 0 3.712-.203.179-.43.326-.67.442-.745.361-1.45.999-1.45 1.827v.75M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9 5.25h.008v.008H12v-.008z"})],-1)),e("div",F6,[e("div",H6,a(i.account.error_message),1),z[0]||(z[0]=e("div",{class:"absolute bottom-full left-3 border-[6px] border-transparent border-b-gray-800 dark:border-b-gray-900"},null,-1))])])):v("",!0),b.value?(n(),r("div",W6,[e("span",G6,[U(ae,{name:"exclamationTriangle",size:"xs","stroke-width":2}),z[2]||(z[2]=oe(" 429 ",-1))]),e("div",K6,[oe(a(t(o)("admin.accounts.status.rateLimitedUntil",{time:t(oo)(i.account.rate_limit_reset_at)}))+" ",1),z[3]||(z[3]=e("div",{class:"absolute left-1/2 top-full -translate-x-1/2 border-4 border-transparent border-t-gray-900 dark:border-t-gray-700"},null,-1))])])):v("",!0),$.value.length>0?(n(),r("div",{key:5,class:E([$.value.length<=4?"flex flex-col gap-1":$.value.length<=8?"columns-2 gap-x-2":"columns-3 gap-x-2"])},[(n(!0),r(ve,null,Ue($.value,ee=>(n(),r("div",{key:`${ee.kind}-${ee.model}`,class:"group relative mb-1 break-inside-avoid"},[ee.kind==="credits_exhausted"?(n(),r("span",Q6,[U(ae,{name:"exclamationTriangle",size:"xs","stroke-width":2}),oe(" "+a(t(o)("admin.accounts.status.creditsExhausted"))+" ",1),e("span",J6,a(t(Ls)(ee.reset_at)),1)])):ee.kind==="credits_active"?(n(),r("span",Y6,[z[4]||(z[4]=e("span",null,"⚡",-1)),oe(" "+a(P(ee.model))+" ",1),e("span",X6,a(t(Ls)(ee.reset_at)),1)])):(n(),r("span",Z6,[U(ae,{name:"exclamationTriangle",size:"xs","stroke-width":2}),oe(" "+a(P(ee.model))+" ",1),e("span",eC,a(t(Ls)(ee.reset_at)),1)])),e("div",tC,[oe(a(ee.kind==="credits_exhausted"?t(o)("admin.accounts.status.creditsExhaustedUntil",{time:t(Zs)(ee.reset_at)}):ee.kind==="credits_active"?t(o)("admin.accounts.status.modelCreditOveragesUntil",{model:P(ee.model),time:t(Zs)(ee.reset_at)}):t(o)("admin.accounts.status.modelRateLimitedUntil",{model:P(ee.model),time:t(Zs)(ee.reset_at)}))+" ",1),z[5]||(z[5]=e("div",{class:"absolute left-1/2 top-full -translate-x-1/2 border-4 border-transparent border-t-gray-900 dark:border-t-gray-700"},null,-1))])]))),128))],2)):v("",!0),S.value?(n(),r("div",aC,[e("span",oC,[U(ae,{name:"exclamationTriangle",size:"xs","stroke-width":2}),z[6]||(z[6]=oe(" 529 ",-1))]),e("div",sC,[oe(a(t(o)("admin.accounts.status.overloadedUntil",{time:t(Zn)(i.account.overload_until)}))+" ",1),z[7]||(z[7]=e("div",{class:"absolute left-1/2 top-full -translate-x-1/2 border-4 border-transparent border-t-gray-900 dark:border-t-gray-700"},null,-1))])])):v("",!0)]))}}),rC=i=>i==null?"":String(i),pn=i=>
22{if(i.platform!=="openai"||i.type!=="oauth")return"";const m=i.extra??{};return[i.id,i.updated_at,i.last_used_at,i.rate_limit_reset_at,m.codex_usage_updated_at,m.codex_5h_used_percent,m.codex_5h_reset_at,m.codex_5h_reset_after_seconds,m.codex_5h_window_minutes,m.codex_7d_used_percent,m.codex_7d_reset_at,m.codex_7d_reset_after_seconds,m.codex_7d_window_minutes].map(rC).join("|")};function lC(i,m){return m()}const iC={key:0,class:"mb-0.5 flex items-center"},uC={class:"flex items-center gap-1.5 text-[9px] text-gray-500 dark:text-gray-400"},dC={class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800"},cC={class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800"},pC=["title"],mC=["title"],gC={class:"flex items-center gap-1"},vC={class:"h-1.5 w-8 shrink-0 overflow-hidden rounded-full bg-gray-200 dark:bg-gray-700"},yC={key:0,class:"shrink-0 text-[10px] text-gray-400"},ra=ut({__name:"UsageProgressBar",props:{label:{},utilization:{},resetsAt:{},color:{},windowStats:{},showNowWhenIdle:{type:Boolean},remainingCapacity:{type:Boolean}},setup(i){const m=i,{t:o}=dt(),c=p(new Date),{pause:s,resume:b}=un(()=>{c.value=new Date},6e4,{immediate:!1});m.resetsAt&&b(),pt(()=>m.resetsAt,q=>{q?(c.value=new Date,b()):s()});const $=w(()=>({indigo:"bg-indigo-100 text-indigo-700 dark:bg-indigo-900/40 dark:text-indigo-300",emerald:"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/40 dark:text-emerald-300",purple:"bg-purple-100 text-purple-700 dark:bg-purple-900/40 dark:text-purple-300",amber:"bg-amber-100 text-amber-700 dark:bg-amber-900/40 dark:text-amber-300"})[m.color]),P=w(()=>m.remainingCapacity?m.utilization<=20?"bg-red-500":m.utilization<=50?"bg-amber-500":"bg-green-500":m.utilization>=100?"bg-red-500":m.utilization>=80?"bg-amber-500":"bg-green-500"),S=w(()=>m.remainingCapacity?m.utilization<=20?"text-red-600 dark:text-red-400":m.utilization<=50?"text-amber-600 dark:text-amber-400":"text-gray-600 dark:text-gray-400":m.utilization>=100?"text-red-600 dark:text-red-400":m.utilization>=80?"text-amber-600 dark:text-amber-400":"text-gray-600 dark:text-gray-400"),M=w(()=>`${Math.min(Math.max(m.utilization,0),100)}%`),L=w(()=>{const q=Math.round(m.remainingCapacity?Math.min(Math.max(m.utilization,0),100):m.utilization);return q>999?">999%":`${q}%`}),F=w(()=>m.resetsAt?!0:!!(m.showNowWhenIdle&&m.utilization<=0)),R=w(()=>
22{if(m.showNowWhenIdle&&m.utilization<=0)return o("usage.resetNow");if(!m.resetsAt)return"-";const D=new Date(m.resetsAt).getTime()-c.value.getTime();if(D<=0)return m.utilization>0?o("usage.resetPending"):o("usage.resetNow");const z=Math.floor(D/(1e3*60*60)),ee=Math.floor(D%(1e3*60*60)/(1e3*60));return z>=24?`${Math.floor(z/24)}d ${z%24}h`:z>0?`${z}h ${ee}m`:`${ee}m`}),_=w(()=>m.windowStats?jo(m.windowStats.requests,{allowBillions:!1}):""),y=w(()=>m.windowStats?jo(m.windowStats.tokens):""),f=w(()=>m.windowStats?m.windowStats.cost.toFixed(2):"0.00"),I=w(()=>!m.windowStats||m.windowStats.user_cost==null?"0.00":m.windowStats.user_cost.toFixed(2));return(q,D)=>{var z;return n(),r("div",null,[i.windowStats&&(i.windowStats.requests>0||i.windowStats.tokens>0)?(n(),r("div",iC,[e("div",uC,[e("span",dC,a(_.value)+" req ",1),e("span",cC,a(y.value),1),e("span",{class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800",title:t(o)("usage.accountBilled")}," A $"+a(f.value),9,pC),((z=i.windowStats)==null?void 0:z.user_cost)!=null?(n(),r("span",{key:0,class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800",title:t(o)("usage.userBilled")}," U $"+a(I.value),9,mC)):v("",!0)])])):v("",!0),e("div",gC,[e("span",{class:E(["w-[32px] shrink-0 rounded px-1 text-center text-[10px] font-medium",$.value])},a(i.label),3),e("div",vC,[e("div",{class:E(["h-full transition-all duration-300",P.value]),style:$s({width:M.value})},null,6)]),e("span",{class:E(["w-[32px] shrink-0 text-right text-[10px] font-medium",S.value])},a(L.value),3),F.value?(n(),r("span",yC,a(R.value),1)):v("",!0)])])}}}),bC={key:0},hC={class:"mb-1 flex items-center gap-1"},fC={class:"text-xs text-gray-400 dark:text-gray-500"},xC={key:0},_C=ut({__name:"AccountQuotaInfo",props:{account:{}},setup(i){const m=i,{t:o}=dt(),c=p(new Date);let s=null;const b=w(()=>{const _=m.account.credentials;return(_==null?void 0:_.oauth_type)==="code_assist"||!(_!=null&&_.oauth_type)&&!!(_!=null&&_.project_id)}),$=w(()=>{const _=m.account.credentials;return(_==null?void 0:_.oauth_type)==="google_one"}),P=w(()=>m.account.platform==="gemini"),S=w(()=>{const _=m.account.credentials;if(b.value){const f=((_==null?void 0:_.tier_id)||"").toString().trim().toLowerCase();if(f==="gcp_enterprise")return"GCP Enterprise";if(f==="gcp_standard")return"GCP Standard";const I=((_==null?void 0:_.tier_id)||"").toString().trim().toUpperCase();return I.includes("ULTRA")||I.includes("ENTERPRISE")?"GCP Enterprise":I?`GCP ${I}`:"GCP"}if($.value){const f=((_==null?void 0:_.tier_id)||"").toString().trim().toLowerCase();if(f==="google_ai_ultra")return"Google AI Ultra";if(f==="google_ai_pro")return"Google AI Pro";if(f==="google_one_free")return"Google One Free";const I=((_==null?void 0:_.tier_id)||"").toString().trim().toUpperCase();return I==="AI_PREMIUM"?"Google AI Pro":I==="GOOGLE_ONE_UNLIMITED"?"Google AI Ultra":I?`Google One ${I}`:"Google One"}const y=((_==null?void 0:_.tier_id)||"").toString().trim().toLowerCase();return y==="aistudio_paid"?"AI Studio Pay-as-you-go":y==="aistudio_free"?"AI Studio Free Tier":"AI Studio"}),M=w(()=>{const _=m.account.credentials;if(b.value){const f=((_==null?void 0:_.tier_id)||"").toString().trim().toLowerCase();if(f==="gcp_enterprise")return"bg-purple-100 text-purple-600 dark:bg-purple-900/40 dark:text-purple-300";if(f==="gcp_standard")return"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300";const I=((_==null?void 0:_.tier_id)||"").toString().trim().toUpperCase();return I.includes("ULTRA")||I.includes("ENTERPRISE")?"bg-purple-100 text-purple-600 dark:bg-purple-900/40 dark:text-purple-300":"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300"}if($.value){const f=((_==null?void 0:_.tier_id)||"").toString().trim().toLowerCase();if(f==="google_ai_ultra")return"bg-purple-100 text-purple-600 dark:bg-purple-900/40 dark:text-purple-300";if(f==="google_ai_pro")return"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300";if(f==="google_one_free")return"bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300";const I=((_==null?void 0:_.tier_id)||"").toString().trim().toUpperCase();return I==="GOOGLE_ONE_UNLIMITED"?"bg-purple-100 text-purple-600 dar
22k:bg-purple-900/40 dark:text-purple-300":I==="AI_PREMIUM"?"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300":"bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300"}const y=((_==null?void 0:_.tier_id)||"").toString().trim().toLowerCase();return y==="aistudio_paid"?"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300":y==="aistudio_free"?"bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300":"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300"}),L=w(()=>{if(!m.account.rate_limit_reset_at)return!1;const _=Date.parse(m.account.rate_limit_reset_at);return Number.isNaN(_)?!1:_>c.value.getTime()}),F=w(()=>{if(!m.account.rate_limit_reset_at)return"";const _=Date.parse(m.account.rate_limit_reset_at);if(Number.isNaN(_))return"-";const y=_-c.value.getTime();if(y<=0)return o("admin.accounts.gemini.rateLimit.now");const f=Math.floor(y/1e3),I=Math.floor(f/60),q=Math.floor(I/60);if(I<1)return`${f}s`;if(q<1){const z=f%60;return`${I}m ${z}s`}const D=I%60;return`${q}h ${D}m`}),R=w(()=>
22{if(!m.account.rate_limit_reset_at)return!1;const _=Date.parse(m.account.rate_limit_reset_at);if(Number.isNaN(_))return!1;const y=_-c.value.getTime();return y>0&&y<6e4});return pt(()=>L.value,_=>{_&&!s?s=setInterval(()=>{c.value=new Date},1e3):!_&&s&&(clearInterval(s),s=null)},{immediate:!0}),ms(()=>{s!==null&&(clearInterval(s),s=null)}),(_,y)=>P.value?(n(),r("div",bC,[e("div",hC,[e("span",{class:E(["badge text-xs px-2 py-0.5 rounded font-medium",M.value])},a(S.value),3)]),e("div",fC,[L.value?(n(),r("span",{key:1,class:E(["font-medium",R.value?"text-red-600 dark:text-red-400 animate-pulse":"text-amber-600 dark:text-amber-400"])},a(t(o)("admin.accounts.gemini.rateLimit.limited",{time:F.value})),3)):(n(),r("span",xC,a(t(o)("admin.accounts.gemini.rateLimit.unlimited")),1))])])):v("",!0)}}),kC={key:0,class:"space-y-1"},wC={class:"flex flex-wrap items-center gap-1.5"},$C=["disabled","title"],CC={key:0},TC=["disabled","title"],SC={key:0,class:"space-y-1"},MC={class:"flex flex-wrap items-center gap-1"},EC=["title"],UC=["aria-expanded","aria-label","title"],AC={key:0,"data-testid":"reset-credit-expiry-details",class:"inline-grid max-w-full gap-0.5 rounded border border-gray-200 bg-white px-1.5 py-1 text-[10px] leading-4 text-gray-600 shadow-sm dark:border-dark-700 dark:bg-dark-900 dark:text-gray-300"},RC={class:"sr-only"},PC=["title"],IC={class:"truncate"},qC=["title"],OC={key:2,class:"text-[10px] text-emerald-600 dark:text-emerald-400"},An=ut({__name:"OpenAIQuotaResetCell",props:{account:{}},setup(i){const m=i,{t:o}=dt(),c=w(()=>m.account.platform==="openai"&&m.account.type==="oauth"),s=p(!1),b=p(!1),$=p(null),P=p(null),S=p(null),M=p(!1),L=p(!1),F=w(()=>m.account.parent_account_id!=null),R=w(()=>{var N,x;return((x=(N=P.value)==null?void 0:N.rate_limit_reset_credits)==null?void 0:x.available_count)??0}),_=w(()=>{var N,x;return(((x=(N=P.value)==null?void 0:N.rate_limit_reset_credits)==null?void 0:x.credits)??[]).map(H=>{var K;return((K=H.expires_at)==null?void 0:K.trim())??""}).filter(H=>H.length>0).sort(se)}),y=w(()=>_.value[0]??""),f=w(()=>Math.max(_.value.length-1,0)),I=w(()=>R.value>0&&!F.value),q=w(()=>_.value.map(N=>G(N,"full")).join(`
23`)),D=w(()=>L.value?o("admin.accounts.openaiQuotaReset.collapseExpirations"):o("admin.accounts.openaiQuotaReset.expandExpirations",{count:f.value})),z=w(()=>F.value?o("admin.accounts.openaiQuotaReset.resetTooltipShadow"):P.value?I.value?o("admin.accounts.openaiQuotaReset.resetTooltipReady"):o("admin.accounts.openaiQuotaReset.resetTooltipNoCredits"):o("admin.accounts.openaiQuotaReset.resetTooltipNeedQuery")),ee=w(()=>P.value?o("admin.accounts.openaiQuotaReset.countTooltipRefresh"):o("admin.accounts.openaiQuotaReset.countTooltipLoad")),ke=w(()=>$.value?$.value.length>80?`${$.value.slice(0,80)}…`:$.value:""),W=N=>{const x=new Date(N).getTime();return Number.isNaN(x)?Number.POSITIVE_INFINITY:x},se=(N,x)=>{const H=W(N)-W(x);return H!==0?H:N.localeCompare(x)},G=(N,x)=>{const H=new Date(N);if(Number.isNaN(H.getTime()))return N;const K={month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};return x==="full"&&(K.year="numeric"),new Intl.DateTimeFormat(void 0,K).format(H)},me=N=>{var H,K,be,fe;const x=N;return(x==null?void 0:x.message)||(x==null?void 0:x.reason)||((K=(H=x==null?void 0:x.response)==null?void 0:H.data)==null?void 0:K.message)||((fe=(be=x==null?void 0:x.response)==null?void 0:be.data)==null?void 0:fe.error)||o("common.error")},ce=()=>{f.value<=0||(L.value=!L.value)},le=async()=>{if(!s.value){s.value=!0,$.value=null,S.value=null,L.value=!1;try{P.value=await er(m.account.id)}catch(N){$.value=me(N)}finally{s.value=!1}}},ne=()=>{if(!(b.value||s.value)){if(!I.value){$.value=o("admin.accounts.openaiQuotaReset.noCreditsAvailable");return}M.value=!0}},te=async()=>{if(M.value=!1,!b.value){if(!I.value){$.value=o("admin.accounts.openaiQuotaReset.noCreditsAvailable");return}b.value=!0,$.value=null,S.value=null;try{const N=await tr(m.account.id);await le(),S.value=o("admin.accounts.openaiQuotaReset.resetSuccess",{windows:N.windows_reset})}catch(N){$.value=me(N)}finally{b.value=!1}}};return pt(()=>m.account.id,()=>{P.value=null,$.value=null,S.value=null,s.value=!1,b.value=!1,M.value=!1,L.value=!1}),pt(_,()=>{f.value<=0&&(L.value=!1)}),(N,x)=>c.value?(n(),r("div",kC,[e("div",wC,[ds(N.$slots,"pre-actions"),e("button",{type:"button",class:"inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium text-blue-600 transition-colors hover:bg-blue-50 disabled:cursor-not-allowed disabled:opacity-50 dark:text-blue-400 dark:hover:bg-blue-900/30",disabled:s.value||b.value,title:ee.value,onClick:le},[(n(),r("svg",{class:E(["h-2.5 w-2.5",{"animate-spin":s.value}]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...x[1]||(x[1]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"},null,-1)])],2)),oe(" "+a(t(o)("admin.accounts.openaiQuotaReset.count")),1),P.value?(n(),r("span",CC,a(R.value),1)):v("",!0)],8,$C),e("button",{type:"button",class:"inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium text-orange-600 transition-colors hover:bg-orange-50 disabled:cursor-not-allowed disabled:opacity-50 dark:text-orange-400 dark:hover:bg-orange-900/30",disabled:b.value||s.value||!I.value,title:z.value,onClick:ne},[(n(),r("svg",{class:E(["h-2.5 w-2.5",{"animate-spin":b.value}]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...x[2]||(x[2]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M20 12a8 8 0 11-2.343-5.657L20 8m0 0V4m0 4h-4"},null,-1)])],2)),oe(" "+a(t(o)("admin.accounts.openaiQuotaReset.reset")),1)],8,TC)]),y.value?(n(),r("div",SC,[e("div",MC,[e("span",{class:"inline-flex max-w-full items-center rounded bg-gray-100 px-1.5 py-0.5 text-[10px] leading-4 text-gray-600 tabular-nums dark:bg-dark-800 dark:text-gray-300",title:t(o)("admin.accounts.openaiQuotaReset.expiresAtFull",{time:G(y.value,"full")})},a(t(o)("admin.accounts.openaiQuotaReset.expiresAt",{time:G(y.value,"short")})),9,EC),f.value>
230?(n(),r("button",{key:0,type:"button","data-testid":"reset-credit-expiry-toggle",class:"inline-flex items-center rounded-full bg-gray-100 px-1.5 py-0.5 text-[10px] font-medium leading-4 text-gray-600 transition-colors hover:bg-gray-200 dark:bg-dark-800 dark:text-gray-300 dark:hover:bg-dark-700","aria-expanded":L.value,"aria-label":D.value,title:q.value,onClick:ce}," +"+a(f.value),9,UC)):v("",!0)]),L.value&&_.value.length>1?(n(),r("div",AC,[e("span",RC,a(t(o)("admin.accounts.openaiQuotaReset.expirationDetails")),1),(n(!0),r(ve,null,Ue(_.value,(H,K)=>(n(),r("span",{key:`${H}-${K}`,class:"flex min-w-0 items-center gap-1 tabular-nums",title:t(o)("admin.accounts.openaiQuotaReset.expiresAtFull",{time:G(H,"full")})},[x[3]||(x[3]=e("span",{class:"h-1 w-1 shrink-0 rounded-full bg-gray-400 dark:bg-dark-500"},null,-1)),e("span",IC,a(G(H,"short")),1)],8,PC))),128))])):v("",!0)])):v("",!0),$.value?(n(),r("div",{key:1,class:"text-[10px] text-red-600 dark:text-red-400",title:$.value},a(ke.value),9,qC)):S.value?(n(),r("div",OC,a(S.value),1)):v("",!0),U(so,{show:M.value,title:t(o)("admin.accounts.openaiQuotaReset.confirmTitle"),message:t(o)("admin.accounts.openaiQuotaReset.confirmMessage",{count:R.value}),"confirm-text":t(o)("admin.accounts.openaiQuotaReset.reset"),"cancel-text":t(o)("common.cancel"),danger:"",onConfirm:te,onCancel:x[0]||(x[0]=H=>M.value=!1)},null,8,["show","title","message","confirm-text","cancel-text"])])):v("",!0)}}),DC={key:0,class:"space-y-1"},LC={class:"flex flex-wrap items-center gap-1.5"},VC=["disabled","title"],zC=["title"],NC={key:0,class:"text-[10px] text-gray-600 dark:text-gray-300"},jC=["title"],Rn=ut({__name:"GrokQuotaProbeCell",props:{account:{}},emits:["probed"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=w(()=>o.account.platform==="grok"&&o.account.type==="oauth"),$=p(!1),P=p(null),S=p(null),M=f=>{var q,D,z,ee;const I=f;return(I==null?void 0:I.message)||(I==null?void 0:I.reason)||((D=(q=I==null?void 0:I.response)==null?void 0:q.data)==null?void 0:D.message)||((ee=(z=I==null?void 0:I.response)==null?void 0:z.data)==null?void 0:ee.error)||s("common.error")},L=(f,I)=>!I||I.limit==null||I.remaining==null?null:`${f} ${I.remaining}/${I.limit}`,F=w(()=>{var I,q;const f=(q=(I=S.value)==null?void 0:I.snapshot)==null?void 0:q.retry_after_seconds;return f==null||f<=0?null:f<60?`${f}s`:`${Math.ceil(f/60)}m`}),R=w(()=>{var z,ee;const f=(z=S.value)==null?void 0:z.snapshot;if(!S.value)return"";const I=S.value.billing,q=[];((ee=I==null?void 0:I.period_type)==null?void 0:ee.toLowerCase())==="weekly"&&I.usage_percent!=null&&q.push(s("admin.accounts.usageWindow.grokWeeklyUsage",{percent:Math.round(Math.min(100,Math.max(0,I.usage_percent)))})),f&&q.push(L(s("admin.accounts.usageWindow.grokRequests"),f.requests),L(s("admin.accounts.usageWindow.grokTokens"),f.tokens)),F.value&&q.push(s("admin.accounts.usageWindow.grokRetryAfter",{time:F.value})),f!=null&&f.entitlement_status&&q.push(f.entitlement_status);const D=q.filter(ke=>!!ke);return D.length>0?D.join(" | "):s("admin.accounts.usageWindow.grokNoHeaders")}),_=w(()=>P.value?P.value.length>80?`${P.value.slice(0,80)}...`:P.value:""),y=async()=>{if(!$.value){$.value=!0,P.value=null;try{S.value=await ye.grok.queryQuota(o.account.id),P.value=S.value.probe_error||null,c("probed",S.value)}catch(f){P.value=M(f)}finally{$.value=!1}}};return pt(()=>o.account.id,()=>{S.value=null,P.value=null,$.value=!1}),(f,I)=>b.value?(n(),r("div",DC,[e("div",LC,[e("button",{type:"button",class:"inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium text-cyan-700 transition-colors hover:bg-cyan-50 disabled:cursor-not-allowed disabled:opacity-50 dark:text-cyan-300 dark:hover:bg-cyan-900/30",disabled:$.value,title:t(s)("admin.accounts.usageWindow.grokProbeTooltip"),onClick:y},[(n(),r("svg",{class:E(["h-2.5 w-2.5",{"animate-spin":$.value}]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...I[0]||(I[0]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"},null,-1)])],2)),oe(" "+a(t(s)("admin.accounts.usageWindow.grokProbe")),1)],8,VC),e("button",{type:"button",class:"inline-flex cursor-not-allowed items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium text-gray-400 opacity-70 dark:text-gray-500",disabled:"",title:t(s)("admin.accounts.usageWindow.grokResetUnsupportedTooltip")},a(t(s)("admin.accounts.usageWindow.grokResetUnsupported")),9,zC)]),R.value?(n(),r("div",NC,a(R.value),1)):v("",!0),P.value?(n(),r("div",{key:1,class:"truncate text-[10px] text-red-600 dark:text-red-400",title:P.value},a(_.value),9,jC)):v("",!0)])):v("",!0)}}),BC={key:0,class:"min-w-0 max-w-full space-y-1","data-testid":"ollama-cloud-usage-cell"},FC={key:1,class:"text-sm text-gray-400 dark:text-dark-500"},HC=ut({__name:"OllamaCloudUsageCell",props:{account:{}},setup(i){const m=i,o=w(()=>m.account.ollama_cloud_usage),c=w(()=>{var s;return(s=o.value)==null?void 0:s.snapshot});return(s,b)=>{var $,P,S,M,L;return($=o.value)!=null&&$.eligible?(n(),r("div",BC,[(S=(P=c.value)==null?void 0:P.data)!=null&&S.five_hour?(n(),Ae(ra,{key:0,label:"5h",utilization:c.value.data.five_hour.used_percent,"resets-at":c.value.data.five_hour.reset_at,color:"indigo","data-testid":"ollama-cloud-five-hour"},null,8,["utilization","resets-at"])):v("",!0),(L=(M=c.value)==null?void 0:M.data)!=null&&L.seven_day?(n(),Ae(ra,{key:1,label:"7d",utilization:c.value.data.seven_day.used_percent,"resets-at":c.value.data.seven_day.reset_at,color:"emerald","data-testid":"ollama-cloud-seven-day"},null,8,["utilization","resets-at"])):v("",!0)])):(n(),r("span",FC,"
23-"))}}}),WC={key:0,class:"space-y-1.5"},GC={key:1,class:"text-xs text-red-500"},KC={key:2,class:"space-y-1"},QC=["title"],JC={class:"flex items-center gap-1.5 mt-0.5"},YC={key:0,class:"text-[9px] text-gray-400 dark:text-gray-500 italic"},XC=["disabled"],ZC={key:3,class:"space-y-1"},e8={key:0,class:"space-y-1"},t8=["disabled"],a8={key:1,class:"space-y-1.5"},o8={key:2},s8={key:0,class:"mb-1 flex items-center gap-1"},n8={key:0,class:"group relative cursor-help"},r8={class:"pointer-events-none absolute left-0 top-full z-50 mt-1 w-80 whitespace-normal break-words rounded bg-gray-900 px-3 py-2 text-xs leading-relaxed text-white opacity-0 shadow-lg transition-opacity group-hover:opacity-100 dark:bg-gray-700"},l8={key:1,class:"space-y-1"},i8={key:0,class:"flex items-center gap-1"},u8=["href","title"],d8=["title"],c8={key:2,class:"space-y-1"},p8={class:"inline-block rounded px-1.5 py-0.5 text-[10px] font-medium bg-orange-100 text-orange-700 dark:bg-orange-900/40 dark:text-orange-300"},m8={key:3,class:"space-y-1"},g8={class:"inline-block rounded px-1.5 py-0.5 text-[10px] font-medium bg-amber-100 text-amber-700 dark:bg-amber-900/40 dark:text-amber-300"},v8={key:4,class:"space-y-1.5"},y8={key:5,class:"text-xs text-red-500"},b8={key:6,class:"space-y-1"},h8={key:4,class:"mt-1 text-[10px] text-gray-500 dark:text-gray-400"},f8={key:7,class:"text-[10px] text-gray-500 dark:text-gray-400"},x8={key:8,class:"text-xs text-gray-400"},_8={key:0,class:"space-y-1.5"},k8={key:1,class:"text-xs text-red-500"},w8={key:2,class:"space-y-1"},$8={class:"inline-block rounded px-1.5 py-0.5 text-[10px] font-medium bg-orange-100 text-orange-700 dark:bg-orange-900/40 dark:text-orange-300"},C8={key:3,class:"space-y-1"},T8={class:"inline-block rounded px-1.5 py-0.5 text-[10px] font-medium bg-red-100 text-red-700 dark:bg-red-900/40 dark:text-red-300"},S8={key:4,class:"space-y-1"},M8={key:0,class:"mb-0.5"},E8={class:"inline-block rounded bg-zinc-100 px-1.5 py-0.5 text-[10px] font-medium text-zinc-800 dark:bg-zinc-800 dark:text-zinc-200"},U8={key:1,class:"mb-0.5 flex items-center"},A8={class:"flex items-center gap-1.5 text-[9px] text-gray-500 dark:text-gray-400"},R8={class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800"},P8={class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800"},I8=["title"],q8=["title"],O8={key:6,class:"text-[10px] text-amber-600 dark:text-amber-400"},D8={key:7,class:"text-[10px] text-gray-500 dark:text-gray-400"},L8=["title"],V8={key:9,class:"text-[10px] text-gray-500 dark:text-gray-400"},z8={key:5,class:"text-xs text-gray-400"},N8={key:0,class:"mb-1 flex items-center gap-1"},j8={class:"group relative cursor-help"},B8={class:"pointer-events-none absolute left-0 top-full z-50 mt-1 w-80 whitespace-normal break-words rounded bg-gray-900 px-3 py-2 text-xs leading-relaxed text-white opacity-0 shadow-lg transition-opacity group-hover:opacity-100 dark:bg-gray-700"},F8={class:"font-semibold mb-1"},H8={class:"mb-2 text-gray-300"},W8={class:"space-y-1"},G8={class:"pl-2"},K8={class:"mt-2"},Q8=["href"],J8={class:"space-y-1"},Y8={key:0,class:"mb-0.5 flex items-center"},X8={class:"flex items-center gap-1.5 text-[9px] text-gray-500 dark:text-gray-400"},Z8={class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800"},e7={class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800"},t7=["title"],a7=["title"],o7={key:1,class:"mb-0.5 flex items-center gap-1"},s7={key:2,class:"space-y-1"},n7={key:3,class:"text-xs text-red-500"},r7={key:4,class:"space-y-1"},l7={class:"mt-1 text-[9px] leading-tight text-gray-400 dark:text-gray-500 italic"},i7={key:5,class:"text-xs text-gray-400"},u7={key:5,class:"text-xs text-gray-400"},d7={key:1,class:"space-y-1"},c7={key:1,class:"mb-0.5 flex items-center"},p7={class:"flex items-center gap-1.5 text-[9px] text-gray-500 dark:text-gray-400"},m7={class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800"},g7={class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800"},v7=["title"],y7=["title"],b7={key:2,class:"mb-0.5 flex items-center gap-1"},h7={key:6,class:"text-xs text-gray-400"},f7=5*60*1e3,Pn="(min-width: 768px)",x7=ut({__name:"AccountUsageCell",props:{account:{},todayStats:{default:null},todayStatsLoading:{type:Boolean,default:!1},manualRefreshToken:{default:0}},setup(i){const m=new Map,o=i,{t:c}=dt(),s=p(!1);Yn(()=>{s.value=!0});const b=p(!1),$=p(!1),P=p(null),S=p(null),M=p(null),L=p(typeof window>"u"?!0:window.matchMedia(Pn).matches),F=p(!1),R=p(!1),_=p(void 0);let y=null,f=null,I=null;const q=w(()=>o.account.platform==="gemini"?!0:o.account.type==="oauth"||o.account.type==="setup-token"),D=w(()=>o.account.platform==="anthropic"?o.account.type==="oauth"||o.account.type==="setup-token":o.account.platform==="gemini"?!0:o.account.platform==="antigravity"||o.account.platform==="grok"||o.account.platform==="openai"?o.account.type==="oauth":!1),z=w(()=>o.account.platform==="gemini"&&o.account.type==="service_account"),ee=w(()=>{var O,Q,pe,qe,at,Ne;return!!((O=S.value)!=null&&O.gemini_shared_daily)||!!((Q=S.value)!=null&&Q.gemini_pro_daily)||!!((pe=S.value)!=null&&pe.gemini_flash_daily)||!!((qe=S.value)!=null&&qe.gemini_shared_minute)||!!((at=S.value)!=null&&at.gemini_pro_minute)||!!((Ne=S.value)!=null&&Ne.gemini_flash_minute)}),ke=w(()=>{var O,Q;return o.account.platform!=="openai"||o.account.type!=="oauth"?!1:!!((O=S.value)!=null&&O.five_hour)||!!((Q=S.value)!=null&&Q.seven_day)}),W=w(()=>pn(o.account)),se=w(()=>D.value),G=w(()=>D.value&&!L.value),me=w(()=>{var O;return((O=S.value)==null?void 0:O.antigravity_quota)&&Object.keys(S.value.antigravity_quota).length>0}),ce=O=>{var at;const Q=(at=S.value)==null?void 0:at.antigravity_quota;if(!Q)return null;let pe=0,qe=null;for(const Ne of O){const de=Q[Ne];de&&(de.utilization>pe&&(pe=de.utilization),de.reset_time&&(!qe||de.reset_time<qe)&&(qe=de.reset_time))}return pe===0&&qe===null&&!O.some(de=>Q[de])?null:{utilization:pe,resetTime:qe}},le=w(()=>ce(["gemini-3-pro-low","gemini-3-pro-high","gemini-3-pro-preview"])),ne=w(()=>ce(["gemini-3-flash"])),te=w(()=>ce(["gemini-2.5-flash-image","gemini-3.1-flash-image","gemini-3-pro-image"])),N=w(()=>ce(["claude-fable-5","claude-sonnet-4-5","claude-opus-4-5-thinking","claude-sonnet-4-6","claude-opus-4-6","claude-opus-4-6-thinking","claude-opus-4-7","claude-opus-4-8"])),x=w(()=>{var pe;const O=(pe=S.value)==null?void 0:pe.ai_credits;if(!O||O.length===0)return null;const Q=O.reduce((qe,at)=>qe+(at.amount??0),0);return Q<=0?null:Q.toFixed(0)}),H=w(()=>{const O=o.account.extra;if(!O)return null;const Q=O.load_code_assist;if(!Q)return null;const pe=Q.paidTier;if(pe&&typeof pe.id=="string")return pe.id;const qe=Q.currentTier;return qe&&typeof qe.id=="string"?qe.id:null}),K=w(()=>
23{if(o.account.platform!=="gemini")return null;const O=o.account.credentials;return(O==null?void 0:O.tier_id)||null}),be=w(()=>{if(o.account.platform!=="gemini")return null;const O=o.account.credentials;return((O==null?void 0:O.oauth_type)||"").trim()||null}),fe=w(()=>{if(o.account.platform!=="gemini")return!1;const O=o.account.credentials;return(O==null?void 0:O.oauth_type)==="code_assist"||!(O!=null&&O.oauth_type)&&!!(O!=null&&O.project_id)}),$e=w(()=>o.account.platform!=="gemini"?null:o.account.type==="apikey"?"ai studio":be.value==="google_one"?"google one":fe.value?"gcp":be.value==="ai_studio"?"client":"ai studio"),he=w(()=>{if(o.account.platform!=="gemini")return null;const O=(K.value||"").toString().trim(),Q=O.toLowerCase(),pe=O.toUpperCase();return be.value==="google_one"?Q==="google_one_free"?"free":Q==="google_ai_pro"?"pro":Q==="google_ai_ultra"?"ultra":pe==="AI_PREMIUM"||pe==="GOOGLE_ONE_STANDARD"?"pro":pe==="GOOGLE_ONE_UNLIMITED"?"ultra":pe==="FREE"||pe==="GOOGLE_ONE_BASIC"||pe==="GOOGLE_ONE_UNKNOWN"||pe===""?"free":null:fe.value?Q==="gcp_enterprise"?"enterprise":Q==="gcp_standard"?"standard":pe.includes("ULTRA")||pe.includes("ENTERPRISE")?"enterprise":"standard":o.account.type==="apikey"||be.value==="ai_studio"?Q==="aistudio_paid"?"paid":Q==="aistudio_free"?"free":pe.includes("PAID")||pe.includes("PAYG")||pe.includes("PAY")?"paid":pe.includes("FREE")||o.account.type==="apikey"?"free":null:null}),Oe=w(()=>o.account.platform!=="gemini"||!$e.value?null:he.value?`${$e.value} ${he.value}`:$e.value),Re=w(()=>{const O=$e.value,Q=he.value;return O==="client"||O==="ai studio"?"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300":O==="google one"?Q==="ultra"?"bg-purple-100 text-purple-600 dark:bg-purple-900/40 dark:text-purple-300":Q==="pro"?"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300":"bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300":O==="gcp"?Q==="enterprise"?"bg-purple-100 text-purple-600 dark:bg-purple-900/40 dark:text-purple-300":"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300":""}),je=w(()=>be.value==="google_one"?c("admin.accounts.gemini.quotaPolicy.rows.googleOne.channel"):fe.value?c("admin.accounts.gemini.quotaPolicy.rows.gcp.channel"):c("admin.accounts.gemini.quotaPolicy.rows.aiStudio.channel")),Xe=w(()=>{const O=(K.value||"").toString().trim().toLowerCase();return be.value==="google_one"?O==="google_ai_ultra"||he.value==="ultra"?c("admin.accounts.gemini.quotaPolicy.rows.googleOne.limitsUltra"):O==="google_ai_pro"||he.value==="pro"?c("admin.accounts.gemini.quotaPolicy.rows.googleOne.limitsPro"):c("admin.accounts.gemini.quotaPolicy.rows.googleOne.limitsFree"):fe.value?O==="gcp_enterprise"||he.value==="enterprise"?c("admin.accounts.gemini.quotaPolicy.rows.gcp.limitsEnterprise"):c("admin.accounts.gemini.quotaPolicy.rows.gcp.limitsStandard"):O==="aistudio_paid"||he.value==="paid"?c("admin.accounts.gemini.quotaPolicy.rows.aiStudio.limitsPaid"):c("admin.accounts.gemini.quotaPolicy.rows.aiStudio.limitsFree")}),Ze=w(()=>be.value==="google_one"||fe.value?"https://developers.google.com/gemini-code-assist/resources/quotas":"https://ai.google.dev/pricing"),it=w(()=>{var O,Q;return o.account.platform!=="gemini"?!1:!!((O=S.value)!=null&&O.gemini_shared_daily)||!!((Q=S.value)!=null&&Q.gemini_shared_minute)||be.value==="google_one"||fe.value}),ot=w(()=>{if(o.account.platform!=="gemini")return[];if(!S.value)return[];const O=[];if(it.value){const qe=S.value.gemini_shared_daily;return qe&&O.push({key:"shared_daily",label:"1d",utilization:qe.utilization,resetsAt:qe.resets_at,windowStats:qe.window_stats,color:"indigo"}),O}const Q=S.value.gemini_pro_daily;Q&&O.push({key:"pro_daily",label:"pro",utilization:Q.utilization,resetsAt:Q.resets_at,windowStats:Q.window_stats,color:"indigo"});const pe=S.value.gemini_flash_daily;return pe&&O.push({key:"flash_daily",label:"flash",utilization:pe.utilization,resetsAt:pe.resets_at,windowStats:pe.window_stats,color:"emerald"}),O}),_t=O=>!O||O.limit==null||O.remaining==null||O.limit<=0?null:{utilization:Math.min(O.limit,Math.max(0,O.remaining))/O.limit*100,resetsAt:O.reset_at||null},tt=w(()=>{var O;return _t((O=S.value)==null?void 0:O.grok_request_quota)}),Ke=w(()=>{var O;return _t((O=S.value)==null?void 0:O.grok_token_quota)}),we=w(()=>{var O;return((O=S.value)==null?void 0:O.grok_billing)||null}),ie=w(()=>{var Q;const O=we.value;return((Q=O==null?void 0:O.period_type)==null?void 0:Q.toLowerCase())!=="weekly"||O.usage_percent==null?null:{utilization:Math.min(100,Math.max(0,O.usage_percent)),resetsAt:O.period_end||null}}),Ce=O=>O.includes("free")||O.includes("basic"),Fe=O=>O!==""&&!Ce(O)&&!O.includes("unknown"),Je=w(()=>{var at,Ne;if(o.account.platform!=="grok"||o.account.type!=="oauth")return!1;const O=we.value;if((O==null?void 0:O.usage_percent)!=null||(O==null?void 0:O.used_percent)!=null||(O==null?void 0:O.monthly_limit_cents)!=null&&O.monthly_limit_cents>0)return!1;const Q=((O==null?void 0:O.plan)||"").trim().toLowerCase(),pe=(((at=S.value)==null?void 0:at.subscription_tier)||"").trim().toLowerCase(),qe=(((Ne
23=S.value)==null?void 0:Ne.grok_entitlement_status)||"").toLowerCase();return Fe(Q)||Fe(pe)?!1:Ce(Q)||Ce(pe)||Ce(qe)?!0:O!=null}),st=w(()=>{var O;return((O=S.value)==null?void 0:O.grok_local_usage_24h)||null}),vt=w(()=>{var O,Q,pe;return Je.value?st.value:o.todayStats||((O=S.value)==null?void 0:O.grok_local_usage)||((Q=S.value)==null?void 0:Q.grok_local_usage_7d)||((pe=S.value)==null?void 0:pe.grok_local_usage_monthly)||null}),At=w(()=>{var pe;if(!Je.value||!st.value)return null;const O=(pe=S.value)==null?void 0:pe.grok_free_token_limit;if(typeof O!="number"||O<=0)return null;const Q=Math.max(0,st.value.tokens||0);return{utilization:Math.min(100,Q/O*100),limit:O}}),Ye=w(()=>{var O;return o.account.platform!=="grok"||we.value||At.value||tt.value||Ke.value?!1:((O=S.value)==null?void 0:O.grok_quota_snapshot_state)!=="observed"}),$t=w(()=>{var O;return((O=S.value)==null?void 0:O.grok_quota_snapshot_state)==="no_headers"?c("admin.accounts.usageWindow.grokNoHeaders"):c("admin.accounts.usageWindow.grokUnknown")}),mt=w(()=>{var pe,qe,at;if(o.account.platform!=="grok")return null;const O=[],Q=(pe=S.value)==null?void 0:pe.grok_last_status_code;return Q&&O.push(c("admin.accounts.usageWindow.grokLastStatus",{status:Q})),(qe=S.value)!=null&&qe.grok_last_quota_probe_at&&O.push(c("admin.accounts.usageWindow.grokLastProbe",{time:ln(S.value.grok_last_quota_probe_at)})),(at=S.value)!=null&&at.grok_last_headers_seen_at&&O.push(c("admin.accounts.usageWindow.grokLastHeadersSeen",{time:ln(S.value.grok_last_headers_seen_at)})),O.length>0?O.join(" | "):null}),ht=w(()=>{var Q;return(((Q=S.value)==null?void 0:Q.grok_entitlement_status)||"").trim()||null}),Lt=w(()=>{var pe;const O=(pe=S.value)==null?void 0:pe.grok_retry_after_seconds;return O==null||O<=0?null:O<60?`${O}s`:`${Math.ceil(O/60)}m`}),Ft=O=>jo(O.requests,{allowBillions:!1}),kt=O=>jo(O.tokens),Ht=O=>O.cost.toFixed(2),qt=O=>(O.user_cost??0).toFixed(2),Ct=w(()=>{switch(H.value){case"free-tier":return c("admin.accounts.tier.free");case"g1-pro-tier":return c("admin.accounts.tier.pro");case"g1-ultra-tier":return c("admin.accounts.tier.ultra");default:return null}}),Ot=w(()=>{switch(H.value){case"free-tier":return"bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300";case"g1-pro-tier":return"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300";case"g1-ultra-tier":return"bg-purple-100 text-purple-600 dark:bg-purple-900/40 dark:text-purple-300";default:return""}}),ft=w(()=>{const O=o.account.extra;if(!O)return!1;const Q=O.load_code_assist;if(!Q)return!1;const pe=Q.ineligibleTiers;return Array.isArray(pe)&&pe.length>0}),Dt=w(()=>{var O;return!!((O=S.value)!=null&&O.is_forbidden)}),St=w(()=>{var O;return((O=S.value)==null?void 0:O.forbidden_type)||"forbidden"}),Mt=w(()=>{var O;return((O=S.value)==null?void 0:O.validation_url)||""}),oa=w(()=>{var O;return!!((O=S.value)!=null&&O.needs_reauth)}),sa=w(()=>{var Q;return((Q=S.value)==null?void 0:Q.error_code)==="rate_limited"?c("admin.accounts.rateLimited"):c("admin.accounts.usageError")}),He=w(()=>{switch(St.value){case"validation":return c("admin.accounts.forbiddenValidation");case"violation":return c("admin.accounts.forbiddenViolation");default:return c("admin.accounts.forbidden")}}),$a=w(()=>St.value==="validation"?"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/40 dark:text-yellow-300":"bg-red-100 text-red-700 dark:bg-red-900/40 dark:text-red-300"),la=p(!1),ia=async()=>{if(Mt.value)try{await navigator.clipboard.writeText(Mt.value),la.value=!0,setTimeout(()=>{la.value=!1},2e3)}catch{}},Kt=w(()=>o.account.platform==="anthropic"&&(o.account.type==="oauth"||o.account.type==="setup-token")),Et=async O=>{if(D.value){if(!(O!=null&&O.bypassCache)){const Q=m.get(o.account.id);if(Q&&Date.now()-Q.ts<f7){S.value=Q.data,b.value=!1;return}}b.value=!0,P.value=null;try{const Q=()=>O!=null&&O.source?ye.accounts.getUsage(o.account.id,O.source):ye.accounts.getUsage(o.account.id),pe=await lC(o.account,Q);s.value||(S.value=pe,m.set(o.account.id,{data:pe,ts:Date.now()}))}catch(Q){s.value||(P.value=c("common.error"),console.error("Failed to load usage:",Q))}finally{s.value||(b.value=!1)}}},Qt=()=>{if(!R.value)return;const O=_.value;R.value=!1,_.value=void 0,Et({source:O}).catch(Q=>{console.error("Failed to load deferred usage:",Q)})},Ca=O=>{if(D.value){if(G.value&&!F.value){R.value=!0,_.value=O;return}Et({source:O}).catch(Q=>{console.error("Failed to auto load usage:",Q)})}},Nt=()=>{I==null||I.disconnect(),I=null},na=()=>
23{if(Nt(),!(!G.value||F.value)){if(typeof window>"u"||typeof IntersectionObserver>"u"){F.value=!0,Qt();return}M.value&&(I=new IntersectionObserver(O=>{O.some(Q=>Q.isIntersecting)&&(F.value=!0,Nt(),Qt())},{root:null,rootMargin:"200px 0px",threshold:.01}),I.observe(M.value))}},da=async()=>{$.value=!0;try{S.value=await ye.accounts.getUsage(o.account.id,"active",!0)}catch(O){console.error("Failed to load active usage:",O)}finally{$.value=!1}},Rt=O=>{var Ie,Ge,Wt;const Q=S.value;if(!Q)return;const pe=O.snapshot,qe=(pe==null?void 0:pe.status_code)??O.status_code,Ne=pe!=null&&(O.source==="active_probe"||O.source==="hybrid_probe"||pe.observation_source==="active_probe")&&qe!=null&&qe>=200&&qe<300,de=(Ie=pe==null?void 0:pe.entitlement_status)==null?void 0:Ie.trim(),B=(Ge=Q.grok_entitlement_status)==null?void 0:Ge.trim(),J=de||(Ne&&(B==null?void 0:B.toLowerCase())==="forbidden"?void 0:Q.grok_entitlement_status),Be={...Q,grok_billing:O.billing??Q.grok_billing,grok_local_usage_24h:O.local_usage_24h??Q.grok_local_usage_24h,grok_local_usage_7d:O.local_usage_7d??Q.grok_local_usage_7d,grok_local_usage_monthly:O.local_usage_monthly??Q.grok_local_usage_monthly,grok_request_quota:(pe==null?void 0:pe.requests)??Q.grok_request_quota,grok_token_quota:(pe==null?void 0:pe.tokens)??Q.grok_token_quota,grok_retry_after_seconds:(pe==null?void 0:pe.retry_after_seconds)??Q.grok_retry_after_seconds,grok_entitlement_status:J,grok_quota_snapshot_state:O.billing?"billing_observed":pe!=null&&pe.headers_observed?"observed":Q.grok_quota_snapshot_state,grok_last_quota_probe_at:((Wt=O.billing)==null?void 0:Wt.fetched_at)??(pe==null?void 0:pe.last_probe_at)??Q.grok_last_quota_probe_at,grok_last_headers_seen_at:(pe==null?void 0:pe.last_headers_seen_at)??Q.grok_last_headers_seen_at,grok_last_status_code:O.status_code??(pe==null?void 0:pe.status_code)??Q.grok_last_status_code,is_forbidden:Ne?!1:Q.is_forbidden,forbidden_reason:Ne?void 0:Q.forbidden_reason,forbidden_type:Ne?void 0:Q.forbidden_type,validation_url:Ne?void 0:Q.validation_url,needs_verify:Ne?!1:Q.needs_verify,is_banned:Ne?!1:Q.is_banned,error:O.billing||pe?void 0:Q.error,error_code:O.billing||pe?void 0:Q.error_code};S.value=Be,m.set(o.account.id,{data:Be,ts:Date.now()})},Vt=(O,Q,pe)=>{const qe=Q>0?O/Q*100:0;let at=null;if(pe){const Ne=o.account.extra,de=pe.includes("daily");if((de?(Ne==null?void 0:Ne.quota_daily_reset_mode)||"rolling":(Ne==null?void 0:Ne.quota_
23weekly_reset_mode)||"rolling")==="fixed"){const J=de?"quota_daily_reset_at":"quota_weekly_reset_at";at=(Ne==null?void 0:Ne[J])||null}else{const J=Ne==null?void 0:Ne[pe];if(J){const Be=new Date(J),Ie=de?24*60*60*1e3:7*24*60*60*1e3;at=new Date(Be.getTime()+Ie).toISOString()}}}return{utilization:qe,resetsAt:at}},Ut=w(()=>o.account.type!=="apikey"&&o.account.type!=="bedrock"?!1:(o.account.quota_daily_limit??0)>0||(o.account.quota_weekly_limit??0)>0||(o.account.quota_limit??0)>0),wt=w(()=>{const O=o.account.quota_daily_limit??0;return O<=0?null:Vt(o.account.quota_daily_used??0,O,"quota_daily_start")}),yt=w(()=>{const O=o.account.quota_weekly_limit??0;return O<=0?null:Vt(o.account.quota_weekly_used??0,O,"quota_weekly_start")}),ct=w(()=>{const O=o.account.quota_limit??0;return O<=0?null:Vt(o.account.quota_used??0,O)}),ea=w(()=>o.todayStats?jo(o.todayStats.requests,{allowBillions:!1}):""),ca=w(()=>o.todayStats?jo(o.todayStats.tokens):""),Jt=w(()=>o.todayStats?o.todayStats.cost.toFixed(2):"0.00"),zt=w(()=>!o.todayStats||o.todayStats.user_cost==null?"0.00":o.todayStats.user_cost.toFixed(2));return Js(()=>{if(typeof window<"u"&&(y=window.matchMedia(Pn),L.value=y.matches,f=Q=>{L.value=Q.matches},typeof y.addEventListener=="function"?y.addEventListener("change",f):y.addListener(f)),!se.value)return;const O=Kt.value?"passive":void 0;Ca(O)}),pt(W,(O,Q)=>{!Q||O===Q||o.account.platform!=="openai"||o.account.type!=="oauth"||(m.delete(o.account.id),Ca())}),pt(()=>o.manualRefreshToken,(O,Q)=>{if(O===Q||!D.value)return;const pe=Kt.value?"passive":void 0;m.delete(o.account.id),Et({source:pe,bypassCache:!0}).catch(qe=>{console.error("Failed to refresh usage after manual refresh:",qe)})}),pt([M,G],()=>{if(G.value){na();return}Nt()},{immediate:!0,flush:"post"}),pt(L,O=>{if(O){Nt(),F.value=!0,Qt();return}F.value=!1,na()}),ms(()=>{Nt(),y&&f&&(typeof y.removeEventListener=="function"?y.removeEventListener("change",f):y.removeListener(f)),f=null,y=null}),(O,Q)=>{var pe,qe,at,Ne,de;return q.value?(n(),r("div",{key:0,ref_key:"rootRef",ref:M},[i.account.platform==="anthropic"&&(i.account.type==="oauth"||i.account.type==="setup-token")?(n(),r(ve,{key:0},[b.value?(n(),r("div",WC,[Q[1]||(Q[1]=e("div",{class:"flex items-center gap-1"},[e("div",{class:"h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"}),e("div",{class:"h-1.5 w-8 animate-pulse rounded-full bg-gray-200 dark:bg-gray-700"}),e("div",{class:"h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"})],-1)),i.account.type==="oauth"?(n(),r(ve,{key:0},[Q[0]||(Q[0]=xn('<div class="flex items-center gap-1"><div class="h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div><div class="h-1.5 w-8 animate-pulse rounded-full bg-gray-200 dark:bg-gray-700"></div><div class="h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div></div><div class="flex items-center gap-1"><div class="h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div><div class="h-1.5 w-8 animate-pulse rounded-full bg-gray-200 dark:bg-gray-700"></div><div class="h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div></div>',2))],64)):v("",!0)])):P.value?(n(),r("div",GC,a(P.value),1)):S.value?(n(),r("div",KC,[S.value.error?(n(),r("div",{key:0,class:"text-xs text-amber-600 dark:text-amber-400 truncate max-w-[200px]",title:S.value.error},a(S.value.error),9,QC)):v("",!0),S.value.five_hour?(n(),Ae(ra,{key:1,label:"5h",utilization:S.value.five_hour.utilization,"resets-at":S.value.five_hour.resets_at,"window-stats":S.value.five_hour.window_stats,color:"indigo"},null,8,["utilization","resets-at","window-stats"])):v("",!0),S.value.seven_day?(n(),Ae(ra,{key:2,label:"7d",utilization:S.value.seven_day.utilization,"resets-at":S.value.seven_day.resets_at,color:"emerald"},null,8,["utilization","resets-at"])):v("",!0),S.value.seven_day_sonnet?(n(),Ae(ra,{key:3,label:"7d S",utilization:S.value.seven_day_sonnet.utilization,"resets-at":S.value.seven_day_sonnet.resets_at,color:"purple"},null,8,["utilization","resets-at"])):v("",!0),S.value.seven_day_fable?(n(),Ae(ra,{key:4,label:"7d F",utilization:S.value.seven_day_fable.utilization,"resets-at":S.value.seven_day_fable.resets_at,color:"amber"},null,8,["utilization","resets-at"])):v("",!0),e("div",JC,[S.value.source==="passive"?(n(),r("span",YC,a(t(c)("admin.accounts.usageWindow.passiveSampled")),1)):v("",!0),e("button",{type:"button",class:"inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[9px] font-medium text-blue-600 hover:bg-blue-50 dark:text-blue-400 dark:hover:bg-blue-900/30 transition-colors",disabled:$.value,onClick:da},[(n(),r("svg",{class:E(["h-2.5 w-2.5",{"animate-spin":$.value}]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...Q[2]||(Q[2]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"},null,-1)])],2)),oe(" "+a(t(c)("admin.accounts.usageWindow.activeQuery")),1)],8,XC)])])):(n(),r("div",ZC,[Q[3]||(Q[3]=e("div",{class:"text-xs text-gray-400"},"-",-1)),U(Rn,{account:i.account}
23,null,8,["account"])]))],64)):i.account.platform==="openai"&&i.account.type==="oauth"?(n(),r(ve,{key:1},[ke.value?(n(),r("div",e8,[(pe=S.value)!=null&&pe.five_hour?(n(),Ae(ra,{key:0,label:"5h",utilization:S.value.five_hour.utilization,"resets-at":S.value.five_hour.resets_at,"window-stats":S.value.five_hour.window_stats,"show-now-when-idle":!0,color:"indigo"},null,8,["utilization","resets-at","window-stats"])):v("",!0),(qe=S.value)!=null&&qe.seven_day?(n(),Ae(ra,{key:1,label:"7d",utilization:S.value.seven_day.utilization,"resets-at":S.value.seven_day.resets_at,"window-stats":S.value.seven_day.window_stats,"show-now-when-idle":!0,color:"emerald"},null,8,["utilization","resets-at","window-stats"])):v("",!0),U(An,{account:i.account},{"pre-actions":Me(()=>[e("button",{type:"button",class:"inline-flex items-center gap-0.5 rounded px-1.5 py-0.5 text-[10px] font-medium text-blue-600 hover:bg-blue-50 dark:text-blue-400 dark:hover:bg-blue-900/30 transition-colors disabled:cursor-not-allowed disabled:opacity-50",disabled:$.value,onClick:da},[(n(),r("svg",{class:E(["h-2.5 w-2.5",{"animate-spin":$.value}]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...Q[4]||(Q[4]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"},null,-1)])],2)),oe(" "+a(t(c)("admin.accounts.usageWindow.activeQuery")),1)],8,t8)]),_:1},8,["account"])])):b.value?(n(),r("div",a8,[...Q[5]||(Q[5]=[xn('<div class="flex items-center gap-1"><div class="h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div><div class="h-1.5 w-8 animate-pulse rounded-full bg-gray-200 dark:bg-gray-700"></div><div class="h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div></div><div class="flex items-center gap-1"><div class="h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div><div class="h-1.5 w-8 animate-pulse rounded-full bg-gray-200 dark:bg-gray-700"></div><div class="h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"></div></div>',2)])])):(n(),r("div",o8,[Q[6]||(Q[6]=e("div",{class:"text-xs text-gray-400"},"-",-1)),U(An,{account:i.account,class:"mt-1"},null,8,["account"])]))],64)):i.account.platform==="antigravity"&&i.account.type==="oauth"?(n(),r(ve,{key:2},[Ct.value?(n(),r("div",s8,[e("span",{class:E(["inline-block rounded px-1.5 py-0.5 text-[10px] font-medium",Ot.value])},a(Ct.value),3),ft.value?(n(),r("span",n8,[Q[7]||(Q[7]=e("svg",{class:"h-3.5 w-3.5 text-red-500",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{"fill-rule":"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z","clip-rule":"evenodd"})],-1)),e("span",r8,a(t(c)("admin.accounts.ineligibleWarning")),1)])):v("",!0)])):v("",!0),Dt.value?(n(),r("div",l8,[e("span",{class:E(["inline-block rounded px-1.5 py-0.5 text-[10px] font-medium",$a.value])},a(He.value),3),Mt.value?(n(),r("div",i8,[e("a",{href:Mt.value,target:"_blank",rel:"noopener noreferrer",class:"text-[10px] text-blue-600 hover:text-blue-800 hover:underline dark:text-blue-400 dark:hover:text-blue-300",title:t(c)("admin.accounts.openVerification")},a(t(c)("admin.accounts.openVerification")),9,u8),e("button",{type:"button",class:"text-[10px] text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200",title:t(c)("admin.accounts.copyLink"),onClick:ia},a(la.value?t(c)("admin.accounts.linkCopied"):t(c)("admin.accounts.copyLink")),9,d8)])):v("",!0)])):oa.value?(n(),r("div",c8,[e("span",p8,a(t(c)("admin.accounts.needsReauth")),1)])):(at=S.value)!=null&&at.error?(n(),r("div",m8,[e("span",g8,a(sa.value),1)])):b.value?(n(),r("div",v8,[...Q[8]||(Q[8]=[e("div",{class:"flex items-center gap-1"},[e("div",{class:"h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"}),e("div",{class:"h-1.5 w-8 animate-pulse rounded-full bg-gray-200 dark:bg-gray-700"}),e("div",{class:"h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"})],-1)])])):P.value?(n(),r("div",y8,a(P.value),1)):me.value?(n(),r("div",b8,[le.value!==null?(n(),Ae(ra,{key:0,label:t(c)("admin.accounts.usageWindow.gemini3Pro"),utilization:le.value.utilization,"resets-at":le.value.resetTime,color:"indigo"},null,8,["label","utilization","resets-at"])):v("",!0),ne.value!==null?(n(),Ae(ra,{key:1,label:t(c)("admin.accounts.usageWindow.gemini3Flash"),utilization:ne.value.utilization,"resets-at":ne.value.resetTime,color:"emerald"},null,8,["label","utilization","resets-at"])):v("",!0),te.value!==null?(n(),Ae(ra,{key:2,label:t(c)("admin.accounts.usageWindow.gemini3Image"),utilization:te.value.utilization,"resets-at":te.value.resetTime,color:"purple"},null,8,["label","utilization","resets-at"])):v("",!0),N.value!==null?(n(),Ae(ra,{key:3,label:t(c)("admin.accounts.usageWindow.claude"),utilization:N.value.utilization,"resets-at":N.value.resetTime,color:"amber"},null,8,["label","utilization","resets-at"])):v("",!0),x.value?(n(),r("div",h8," 💳 "+a(t(c)("admin.accounts.aiCreditsBalance"))+": "+a(x.value),1)):v("",!0)])):x.value?(n(),r("div",f8," 💳 "+a(t(c)("admin.accounts.aiCreditsBalance"))+": "+a(x.value),1)):(n(),r("div",x8,"-"))],64)):i.account.platform==="grok"&&i.account.type==="oauth"?(n(),r(ve,{key:3},[b.value?(n(),r("div",_8,[...Q[9]||(Q[9]=[e("div",{class:"flex items-center gap-1"},[e("div",{class:"h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"}),e("div",{class:"h-1.5 w-8 animate-pulse rounded-full bg-gray-200 dark:bg-gray-700"}),e("div",{class:"h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"})],-1)])])):P.value?(n(),r("div",k8,a(P.value),1)):oa.value?(n(),r("div",w8,[e("span",$8,a(t(c)("admin.accounts.needsReauth")),1)])):Dt.value?(n(),r("div",C8,[e("span",T8,a(ht.value||t(c)("admin.accounts.forbidden")),1)])):S.value?(n(),r("div",S8,[ht.value?(n(),r("div",M8,[e("span",E8,a(ht.value),1)])):v("",!0),vt.value?(n(),r("div",U8,[e("div",A8,[e("span",R8,a(Ft(vt.value))+" req ",1),e("span",P8,a(kt(vt.value)),1),e("span",{class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800",title:t(c)("usage.accountBilled")}," A $"+a(Ht(vt.value)),9,I8),vt.value.user_cost!=null?(n(),r("span",{key:0,class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800",title:t(c)("usage.userBilled")}," U $"+a(qt(vt.value)),9,q8)):v("",!0)])])):v("",!0),ie.value?(n(),Ae(ra,{key:2,label:"7d",utilization:ie.value.utilization,"resets-at":ie.value.resetsAt,"show-now-when-idle":!0,color:"indigo"},null,8,["utilization","resets-at"])):v("",!0),!ie.value&&!Je.value&&tt.value?(n(),Ae(ra,{key:3,label:t(c)("admin.accounts.usageWindow.grokRequests"),utilization:tt.value.utilization,"resets-at":tt.value.resetsAt,"remaining-capacity":!0,color:"indigo"},null,8,["label","utilization","resets-at"])):v("",!0),!ie.value&&!Je.value&&Ke.value?(n(),Ae(ra,{key:4,label:t(c)("admin.accounts.usageWindow.grokTokens"),utilization:Ke.value.utilization,"resets-at":Ke.value.resetsAt,"remaining-capacity":!0,color:"emerald"},null,8,["label","utilization","resets-at"])):v("",!0),At.value?(n(),Ae(ra,{key:5,label:"24h",title:t(c)("admin.accounts.usageWindow.grokFreeQuota24hHint",{limit:t(jo)(At.value.limit)}
23),utilization:At.value.utilization,"show-now-when-idle":!0,color:"emerald"},null,8,["title","utilization"])):v("",!0),Lt.value?(n(),r("div",O8,a(t(c)("admin.accounts.usageWindow.grokRetryAfter",{time:Lt.value})),1)):v("",!0),Ye.value?(n(),r("div",D8,a($t.value),1)):S.value.error?(n(),r("div",{key:8,class:"truncate text-xs text-amber-600 dark:text-amber-400 max-w-[200px]",title:S.value.error},a(sa.value),9,L8)):v("",!0),mt.value?(n(),r("div",V8,a(mt.value),1)):v("",!0),U(Rn,{account:i.account,onProbed:Rt},null,8,["account"])])):(n(),r("div",z8,"-"))],64)):i.account.platform==="gemini"?(n(),r(ve,{key:4},[Oe.value?(n(),r("div",N8,[e("span",{class:E(["inline-block rounded px-1.5 py-0.5 text-[10px] font-medium",Re.value])},a(Oe.value),3),e("span",j8,[Q[10]||(Q[10]=e("svg",{class:"h-3.5 w-3.5 text-gray-400 hover:text-gray-600 dark:text-gray-500 dark:hover:text-gray-300",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{"fill-rule":"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z","clip-rule":"evenodd"})],-1)),e("span",B8,[e("div",F8,a(t(c)("admin.accounts.gemini.quotaPolicy.title")),1),e("div",H8,a(t(c)("admin.accounts.gemini.quotaPolicy.note")),1),e("div",W8,[e("div",null,[e("strong",null,a(je.value)+":",1)]),e("div",G8,"• "+a(Xe.value),1),e("div",K8,[e("a",{href:Ze.value,target:"_blank",rel:"noopener noreferrer",class:"text-blue-400 hover:text-blue-300 underline"},a(t(c)("admin.accounts.gemini.quotaPolicy.columns.docs"))+" → ",9,Q8)])])])])])):v("",!0),e("div",J8,[z.value&&i.todayStats?(n(),r("div",Y8,[e("div",X8,[e("span",Z8,a(ea.value)+" req ",1),e("span",e7,a(ca.value),1),e("span",{class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800",title:t(c)("usage.accountBilled")}," A $"+a(Jt.value),9,t7),i.todayStats.user_cost!=null?(n(),r("span",{key:0,class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800",title:t(c)("usage.userBilled")}," U $"+a(zt.value),9,a7)):v("",!0)])])):z.value&&i.todayStatsLoading?(n(),r("div",o7,[...Q[11]||(Q[11]=[e("div",{class:"h-3 w-10 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1),e("div",{class:"h-3 w-8 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1),e("div",{class:"h-3 w-12 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1)])])):v("",!0),b.value?(n(),r("div",s7,[...Q[12]||(Q[12]=[e("div",{class:"flex items-center gap-1"},[e("div",{class:"h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"}),e("div",{class:"h-1.5 w-8 animate-pulse rounded-full bg-gray-200 dark:bg-gray-700"}),e("div",{class:"h-3 w-[32px] animate-pulse rounded bg-gray-200 dark:bg-gray-700"})],-1)])])):P.value?(n(),r("div",n7,a(P.value),1)):ee.value?(n(),r("div",r7,[(n(!0),r(ve,null,Ue(ot.value,B=>(n(),Ae(ra,{key:B.key,label:B.label,utilization:B.utilization,"resets-at":B.resetsAt,"window-stats":B.windowStats,color:B.color},null,8,["label","utilization","resets-at","window-stats","color"]))),128)),e("p",l7," * "+a(t(c)("admin.accounts.gemini.quotaPolicy.simulatedNote")||"Simulated quota"),1)])):(n(),r("div",i7,a(t(c)("admin.accounts.gemini.rateLimit.unlimited")),1))])],64)):(n(),r("div",u7,"-"))],512)):(n(),r("div",{key:1,ref_key:"rootRef",ref:M},[i.account.platform==="gemini"?(n(),Ae(_C,{key:0,account:i.account},null,8,["account"])):(n(),r("div",d7,[(Ne=i.account.ollama_cloud_usage)!=null&&Ne.eligible?(n(),Ae(HC,{key:0,account:i.account},null,8,["account"])):v("",!0),i.todayStats?(n(),r("div",c7,[e("div",p7,[e("span",m7,a(ea.value)+" req ",1),e("span",g7,a(ca.value),1),e("span",{class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800",title:t(c)("usage.accountBilled")}," A $"+a(Jt.value),9,v7),i.todayStats.user_cost!=null?(n(),r("span",{key:0,class:"rounded bg-gray-100 px-1.5 py-0.5 dark:bg-gray-800",title:t(c)("usage.userBilled")}," U $"+a(zt.value),9,y7)):v("",!0)])])):i.todayStatsLoading?(n(),r("div",b7,[...Q[13]||(Q[13]=[e("div",{class:"h-3 w-10 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1),e("div",{class:"h-3 w-8 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1),e("div",{class:"h-3 w-12 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1)])])):v("",!0),wt.value?(n(),Ae(ra,{key:3,label:"1d",utilization:wt.value.utilization,"resets-at":wt.value.resetsAt,color:"indigo"},null,8,["utilization","resets-at"])):v("",!0),yt.value?(n(),Ae(ra,{key:4,label:"7d",utilization:yt.value.utilization,"resets-at":yt.value.resetsAt,color:"emerald"},null,8,["utilization","resets-at"])):v("",!0),ct.value?(n(),Ae(ra,{key:5,label:"total",utilization:ct.value.utilization,color:"purple"},null,8,["utilization"])):v("",!0),!i.todayStats&&!i.todayStatsLoading&&!Ut.value&&!((de=i.account.ollama_cloud_usage)!=null&&de.eligible)?(n(),r("div",h7,"-")):v("",!0)]))],512))}}}),_7={class:"w-full"},k7=["for"],w7={key:0,class:"text-red-500"},$7={class:"relative"},C7=["id","value","disabled","required","placeholder","readonly","rows"],T7={key:1,class:"input-error-text mt-1.5"},S7={key:2,class:"input-hint mt-1.5"},M7=ut({__name:"TextArea",props:{modelValue:{},label:{},placeholder:{},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},error:{},hint:{},id:{},rows:{default:3}},emits:["update:modelValue","change","blur","focus"],setup(i,{expose:m,emit:o}){const c=i,s=o,b=p(null),$=w(()=>c.placeholder||""),P=S=>{const M=S.target.value;s("update:modelValue",M)};return m({focus:()=>{var S;return(S=b.value)==null?void 0:S.focus()},select:()=>{var S;return(S=b.value)==null?void 0:S.select()}}),(S,M)=>(n(),r("div",_7,[i.label?(n(),r("label",{key:0,for:i.id,class:"input-label mb-1.5 block"},[oe(a(i.label)+" ",1),i.required?(n(),r("span",w7,"*")):v("",!0)],8,k7)):v("",!0),e("div",$7,[e("textarea",{id:i.id,ref_key:"textAreaRef",ref:b,value:i.modelValue,disabled:i.disabled,required:i.required,placeholder:$.value,readonly:i.readonly,rows:i.rows,class:E(["input w-full min-h-[80px] transition-all duration-200 resize-y",i.error?"input-error ring-2 ring-red-500/20":"",i.disabled?"cursor-not-allowed bg-gray-100 opacity-60 dark:bg-dark-900":""]),onInput:P,onChange:M[0]||(M[0]=L=>S.$emit("change",L.target.value)),onBlur:M[1]||(M[1]=L=>S.$emit("blur",L)),onFocus:M[2]||(M[2]=L=>S.$emit("focus",L))},null,42,C7)]),i.error?(n(),r("p",T7,a(i.error),1)):i.hint?(n(),r("p",S7,a(i.hint),1)):v("",!0)]))}}),E7={key:0,class:"space-y-0.5"},U7={key:1,class:"text-xs text-red-500"},A7={key:2,class:"space-y-0.5 text-xs"},R7={class:"flex items-center gap-1"},P7={class:"text-gray-500 dark:text-gray-400"},I7={class:"font-medium text-gray-700 dark:text-gray-300"},q7={class:"flex items-center gap-1"},O7={class:"text-gray-500 dark:text-gray-400"},D7={class:"font-medium text-gray-700 dark:text-gray-300"},L7={class:"flex items-center gap-1"},V7={class:"text-gray-500 dark:text-gray-400"},z7={class:"font-medium text-emerald-600 dark:text-emerald-400"},N7={key:0,class:"flex items-center gap-1"},j7={class:"text-gray-500 dark:text-gray-400"},B7={class:"font-medium text-gray-700 dark:text-gray-300"},F7={key:3,class:"text-xs text-gray-400"},H7=ut({__name:"AccountTodayStatsCell",props:{stats:{default:null},loading:{type:Boolean,default:!1},error:{default:null}},setup(i){const m=i,{t:o}=dt(),c=s=>s>=1e6?`${(s/1e6).toFixed(2)}M`:s>=1e3?`${(s/1e3).toFixed(1)}K`:s.toString();return(s,b)=>(n(),r("div",null,[m.loading&&!m.stats?(n(),r("div",E7,[...b[0]||(b[0]=[e("div",{class:"h-3 w-12 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1),e("div",{class:"h-3 w-16 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1),e("div",{class:"h-3 w-10 animate-pulse rounded bg-gray-200 dark:bg-gray-700"},null,-1)])])):m.error&&!m.stats?(n(),r("div",U7,a(m.error),1)):m.stats?(n(),r("div",A7,[e("div",R7,[e("span",P7,a(t(o)("admin.accounts.stats.requests"))+":",1),e("span",I7,a(t(ar)(m.stats.requests)),1)]),e("div",q7,[e("span",O7,a(t(o)("admin.accounts.stats.tokens"))+":",1),e("span",D7,a(c(m.stats.tokens)),1)]),e("div",L7,[e("span",V7,a(t(o)("usage.accountBilled"))+":",1),e("span",z7,a(t(_n)(m.stats.cost)),1)]),m.stats.user_cost!=null?(n(),r("div",N7,[e("span",j7,a(t(o)("usage.userBilled"))+":",1),e("span",B7,a(t(_n)(m.stats.user_cost)),1)])):v("",!0)])):(n(),r("div",F7,"-"))]))}}),W7={class:"space-y-4"},G7={key:0,class:"flex items-center justify-center py-8"},K7={key:1,class:"rounded-lg border border-gray-200 p-4 text-sm text-gray-500 dark:border-dark-600 dark:text-gray-400"},Q7={key:2,class:"space-y-4"},J7={class:"rounded-lg border border-emerald-200 bg-emerald-50 p-3 text-sm text-emerald-800 dark:border-emerald-500/30 dark:bg-emerald-500/10 dark:text-emerald-300"},Y7={class:"rounded-lg border border-gray-200 p-4 dark:border-dark-600"},X7={class:"text-xs text-gray-500 dark:text-gray-400"},Z7={class:"mt-1 text-sm font-medium text-gray-900 dark:text-gray-100"},e9={class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},t9={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},a9={class:"text-xs text-gray-500 dark:text-gray-400"},o9={class:"mt-1 text-sm font-medium text-gray-900 dark:text-gray-100"},s9={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},n9={class:"text-xs text-gray-500 dark:text-gray-400"},r9={class:"mt-1 text-sm font-medium text-gray-900 dark:text-gray-100"},l9={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},i9={class:"text-xs text-gray-500 dark:text-gray-400"},u9={class:"mt-1 text-sm font-medium text-gray-900 dark:text-gray-100"},d9={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},c9={class:"text-xs text-gray-500 dark:text-gray-400"},p9={class:"mt-1 text-sm font-medium text-gray-900 dark:text-gray-100"},m9={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},g9={class:"text-xs text-gray-500 dark:text-gray-400"},v9={class:"mt-1 text-sm font-medium text-gray-900 dark:text-gray-100"},y9={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},b9={class:"text-xs text-gray-500 dark:text-gray-400"},h9={class:"mt-1 text-sm font-medium text-gray-900 dark:text-gray-100"},f9={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},x9={class:"text-xs text-gray-500 dark:text-gray-400"},_9={class:"mt-2 rounded bg-gray-50 p-2 text-xs text-gray-700 dark:bg-dark-700 dark:text-gray-300"},k9={class:"flex justify-end gap-3"},w9=["disabled"],$9={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"}
23,C9=ut({__name:"TempUnschedStatusModal",props:{show:{type:Boolean},account:{}},emits:["close","reset"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=pa(),$=p(!1),P=p(!1),S=p(null),M=w(()=>{var D;return((D=S.value)==null?void 0:D.state)||null}),L=w(()=>{var D;return!((D=S.value)!=null&&D.active)||!M.value?!1:M.value.until_unix*1e3>Date.now()}),F=w(()=>M.value?M.value.rule_index+1:"-"),R=w(()=>{var D;return(D=M.value)!=null&&D.triggered_at_unix?oo(new Date(M.value.triggered_at_unix*1e3)):"-"}),_=w(()=>{var D;return(D=M.value)!=null&&D.until_unix?oo(new Date(M.value.until_unix*1e3)):"-"}),y=w(()=>{if(!M.value)return"-";const D=M.value.until_unix*1e3-Date.now();if(D<=0)return s("admin.accounts.tempUnschedulable.expired");const z=Math.ceil(D/6e4);if(z<60)return s("admin.accounts.tempUnschedulable.remainingMinutes",{minutes:z});const ee=Math.floor(z/60),ke=z%60;return ke===0?s("admin.accounts.tempUnschedulable.remainingHours",{hours:ee}):s("admin.accounts.tempUnschedulable.remainingHoursMinutes",{hours:ee,minutes:ke})}),f=async()=>{if(o.account){$.value=!0;try{S.value=await ye.accounts.getTempUnschedulableStatus(o.account.id)}catch(D){b.showError((D==null?void 0:D.message)||s("admin.accounts.tempUnschedulable.failedToLoad")),S.value=null}finally{$.value=!1}}},I=()=>{c("close")},q=async()=>{if(o.account){P.value=!0;try{const D=await ye.accounts.recoverState(o.account.id);b.showSuccess(s("admin.accounts.recoverStateSuccess")),c("reset",D),I()}catch(D){b.showError((D==null?void 0:D.message)||s("admin.accounts.recoverStateFailed"))}finally{P.value=!1}}};return pt(()=>{var D;return[o.show,(D=o.account)==null?void 0:D.id]},([D])=>{if(D&&o.account){f();return}S.value=null}),(D,z)=>(n(),Ae(wa,{show:i.show,title:t(s)("admin.accounts.tempUnschedulable.statusTitle"),width:"normal",onClose:I},{footer:Me(()=>[e("div",k9,[e("button",{type:"button",class:"btn btn-secondary",onClick:I},a(t(s)("common.close")),1),e("button",{type:"button",class:"btn btn-primary",disabled:!L.value||P.value,onClick:q},[P.value?(n(),r("svg",$9,[...z[1]||(z[1]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):v("",!0),oe(" "+a(t(s)("admin.accounts.recoverState")),1)],8,w9)])]),default:Me(()=>{var ee,ke,W,se;return[e("div",W7,[$.value?(n(),r("div",G7,[...z[0]||(z[0]=[e("svg",{class:"h-6 w-6 animate-spin text-gray-400",fill:"none",viewBox:"0 0 24 24"},[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})],-1)])])):L.value?(n(),r("div",Q7,[e("div",J7,a(t(s)("admin.accounts.recoverStateHint")),1),e("div",Y7,[e("p",X7,a(t(s)("admin.accounts.tempUnschedulable.accountName")),1),e("p",Z7,a(((ee=i.account)==null?void 0:ee.name)||"-"),1)]),e("div",e9,[e("div",t9,[e("p",a9,a(t(s)("admin.accounts.tempUnschedulable.triggeredAt")),1),e("p",o9,a(R.value),1)]),e("div",s9,[e("p",n9,a(t(s)("admin.accounts.tempUnschedulable.until")),1),e("p",r9,a(_.value),1)]),e("div",l9,[e("p",i9,a(t(s)("admin.accounts.tempUnschedulable.remaining")),1),e("p",u9,a(y.value),1)]),e("div",d9,[e("p",c9,a(t(s)("admin.accounts.tempUnschedulable.errorCode")),1),e("p",p9,a(((ke=M.value)==null?void 0:ke.status_code)||"-"),1)]),e("div",m9,[e("p",g9,a(t(s)("admin.accounts.tempUnschedulable.matchedKeyword")),1),e("p",v9,a(((W=M.value)==null?void 0:W.matched_keyword)||"-"),1)]),e("div",y9,[e("p",b9,a(t(s)("admin.accounts.tempUnschedulable.ruleOrder")),1),e("p",h9,a(F.value),1)])]),e("div",f9,[e("p",x9,a(t(s)("admin.accounts.tempUnschedulable.errorMessage")),1),e("div",_9,a(((se=M.value)==null?void 0:se.error_message)||"-"),1)])])):(n(),r("div",K7,a(t(s)("admin.accounts.tempUnschedulable.notActive")),1))])]}),_:1},8,["show","title"]))}}),T9={class:"text-sm text-gray-600 dark:text-dark-300"},S9={class:"rounded-lg bg-gray-50 p-3 text-xs text-gray-500 dark:bg-dark-700/60 dark:text-dark-400"},M9={class:"rounded-lg border border-amber-200 bg-amber-50 p-3 text-xs text-amber-600 dar
23k:border-amber-800 dark:bg-amber-900/20 dark:text-amber-400"},E9={class:"grid grid-cols-1 gap-4"},U9={for:"crs-base-url",class:"input-label"},A9=["placeholder"],R9={class:"grid grid-cols-1 gap-4 sm:grid-cols-2"},P9={for:"crs-username",class:"input-label"},I9={for:"crs-password",class:"input-label"},q9={class:"flex items-center gap-2 text-sm text-gray-700 dark:text-dark-300"},O9={key:1,class:"space-y-4"},D9={key:0,class:"rounded-lg bg-gray-50 p-3 dark:bg-dark-700/60"},L9={class:"mb-2 text-sm font-medium text-gray-700 dark:text-dark-300"},V9={class:"ml-1 text-xs text-gray-400"},z9={class:"max-h-32 overflow-auto text-xs text-gray-500 dark:text-dark-400"},N9={class:"inline-block rounded bg-blue-100 px-1.5 py-0.5 text-[10px] font-medium text-blue-700 dark:bg-blue-900/30 dark:text-blue-400"},j9={class:"truncate"},B9={key:1},F9={class:"mb-2 flex items-center justify-between"},H9={class:"text-sm font-medium text-gray-900 dark:text-white"},W9={class:"ml-1 text-xs text-gray-400"},G9={class:"flex gap-2"},K9={class:"max-h-48 overflow-auto rounded-lg border border-gray-200 p-2 dark:border-dark-600"},Q9=["checked","onChange"],J9={class:"inline-block rounded bg-green-100 px-1.5 py-0.5 text-[10px] font-medium text-green-700 dark:bg-green-900/30 dark:text-green-400"},Y9={class:"truncate text-sm text-gray-700 dark:text-dark-300"},X9={class:"mt-1 text-xs text-gray-400"},Z9={class:"flex items-center gap-2 text-xs text-gray-500 dark:text-dark-400"},eT={key:2,class:"rounded-lg bg-gray-50 p-4 text-center text-sm text-gray-500 dark:bg-dark-700/60 dark:text-dark-400"},tT={key:0},aT={key:2,class:"space-y-4"},oT={class:"space-y-2 rounded-xl border border-gray-200 p-4 dark:border-dark-700"},sT={class:"text-sm font-medium text-gray-900 dark:text-white"},nT={class:"text-sm text-gray-700 dark:text-dark-300"},rT={key:0,class:"mt-2"},lT={class:"text-sm font-medium text-red-600 dark:text-red-400"},iT={class:"mt-2 max-h-48 overflow-auto rounded-lg bg-gray-50 p-3 font-mono text-xs dark:bg-dark-800"},uT={class:"flex justify-end gap-3"},dT=["disabled"],cT=["disabled"],pT=["disabled"],mT=["disabled"],gT=ut({__name:"SyncFromCrsModal",props:{show:{type:Boolean}},emits:["close","synced"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=pa(),$=p("input"),P=p(!1),S=p(!1),M=p(null),L=p(new Set),F=p(null),R=ya({base_url:"",username:"",password:"",sync_proxies:!0}),_=w(()=>M.value?M.value.new_accounts.length>0&&L.value.size===0:!1),y=w(()=>{var W;return(W=F.value)!=null&&W.items?F.value.items.filter(se=>se.action==="failed"||se.action==="skipped"&&se.error!=="not selected"):[]});pt(()=>o.show,W=>{W&&($.value="input",M.value=null,L.value=new Set,F.value=null,R.base_url="",R.username="",R.password="",R.sync_proxies=!0)});const f=()=>{S.value||P.value||c("close")},I=()=>{$.value="input",M.value=null,L.value=new Set},q=()=>{M.value&&(L.value=new Set(M.value.new_accounts.map(W=>W.crs_account_id)))},D=()=>{L.value=new Set},z=W=>{const se=new Set(L.value);se.has(W)?se.delete(W):se.add(W),L.value=se},ee=async()=>{if(!R.base_url.trim()||!R.username.trim()||!R.password.trim()){b.showError(s("admin.accounts.syncMissingFields"));return}P.value=!0;try{const W=await ye.accounts.previewFromCrs({base_url:R.base_url.trim(),username:R.username.trim(),password:R.password});M.value=W,L.value=new Set(W.new_accounts.map(se=>se.crs_account_id)),$.value="preview"}catch(W){b.showError((W==null?void 0:W.message)||s("admin.accounts.crsPreviewFailed"))}finally{P.value=!1}},ke=async()=>{if(!R.base_url.trim()||!R.username.trim()||!R.password.trim()){b.showError(s("admin.accounts.syncMissingFields"));return}S.value=!0;try{const W=await ye.accounts.syncFromCrs({base_url:R.base_url.trim(),username:R.username.trim(),password:R.password,sync_proxies:R.sync_proxies,selected_account_ids:[...L.value]});F.value=W,$.value="result",W.failed>0?b.showError(s("admin.accounts.syncCompletedWithErrors",W)):b.showSuccess(s("admin.accounts.syncCompleted",W)),c("synced")}catch(W){b.showError((W==null?void 0:W.message)||s("admin.accounts.syncFailed"))}finally{S.value=!1}};return(W,se)=>(n(),Ae(wa,{show:i.show,title:t(s)("admin.accounts.syncFromCrsTitle"),width:"normal","close-on-click-outside":"",onClose:f},{footer:Me(()=>
23[e("div",uT,[$.value==="input"?(n(),r(ve,{key:0},[e("button",{class:"btn btn-secondary",type:"button",disabled:P.value,onClick:f},a(t(s)("common.cancel")),9,dT),e("button",{class:"btn btn-primary",type:"submit",form:"sync-from-crs-form",disabled:P.value},a(P.value?t(s)("admin.accounts.crsPreviewing"):t(s)("admin.accounts.crsPreview")),9,cT)],64)):$.value==="preview"?(n(),r(ve,{key:1},[e("button",{class:"btn btn-secondary",type:"button",disabled:S.value,onClick:I},a(t(s)("admin.accounts.crsBack")),9,pT),e("button",{class:"btn btn-primary",type:"button",disabled:S.value||_.value,onClick:ke},a(S.value?t(s)("admin.accounts.syncing"):t(s)("admin.accounts.syncNow")),9,mT)],64)):$.value==="result"?(n(),r("button",{key:2,class:"btn btn-secondary",type:"button",onClick:f},a(t(s)("common.close")),1)):v("",!0)])]),default:Me(()=>[$.value==="input"?(n(),r("form",{key:0,id:"sync-from-crs-form",class:"space-y-4",onSubmit:Bt(ee,["prevent"])},[e("div",T9,a(t(s)("admin.accounts.syncFromCrsDesc")),1),e("div",S9,a(t(s)("admin.accounts.crsUpdateBehaviorNote")),1),e("div",M9,a(t(s)("admin.accounts.crsVersionRequirement")),1),e("div",E9,[e("div",null,[e("label",U9,a(t(s)("admin.accounts.crsBaseUrl")),1),V(e("input",{id:"crs-base-url","onUpdate:modelValue":se[0]||(se[0]=G=>R.base_url=G),type:"text",class:"input",required:"",placeholder:t(s)("admin.accounts.crsBaseUrlPlaceholder")},null,8,A9),[[re,R.base_url]])]),e("div",R9,[e("div",null,[e("label",P9,a(t(s)("admin.accounts.crsUsername")),1),V(e("input",{id:"crs-username","onUpdate:modelValue":se[1]||(se[1]=G=>R.username=G),type:"text",class:"input",required:"",autocomplete:"username"},null,512),[[re,R.username]])]),e("div",null,[e("label",I9,a(t(s)("admin.accounts.crsPassword")),1),V(e("input",{id:"crs-password","onUpdate:modelValue":se[2]||(se[2]=G=>R.password=G),type:"password",class:"input",required:"",autocomplete:"current-password"},null,512),[[re,R.password]])])]),e("label",q9,[V(e("input",{"onUpdate:modelValue":se[3]||(se[3]=G=>R.sync_proxies=G),type:"checkbox",class:"rounded border-gray-300 dark:border-dark-600"},null,512),[[bt,R.sync_proxies]]),oe(" "+a(t(s)("admin.accounts.syncProxies")),1)])])],32)):$.value==="preview"&&M.value?(n(),r("div",O9,[M.value.existing_accounts.length?(n(),r("div",D9,[e("div",L9,[oe(a(t(s)("admin.accounts.crsExistingAccounts"))+" ",1),e("span",V9,"("+a(M.value.existing_accounts.length)+")",1)]),e("div",z9,[(n(!0),r(ve,null,Ue(M.value.existing_accounts,G=>(n(),r("div",{key:G.crs_account_id,class:"flex items-center gap-2 py-0.5"},[e("span",N9,a(G.platform)+" / "+a(G.type),1),e("span",j9,a(G.name),1)]))),128))])])):v("",!0),M.value.new_accounts.length?(n(),r("div",B9,[e("div",F9,[e("div",H9,[oe(a(t(s)("admin.accounts.crsNewAccounts"))+" ",1),e("span",W9,"("+a(M.value.new_accounts.length)+")",1)]),e("div",G9,[e("button",{type:"button",class:"text-xs text-blue-600 hover:text-blue-700 dark:text-blue-400",onClick:q},a(t(s)("admin.accounts.crsSelectAll")),1),e("button",{type:"button",class:"text-xs text-gray-500 hover:text-gray-600 dark:text-gray-400",onClick:D},a(t(s)("admin.accounts.crsSelectNone")),1)])]),e("div",K9,[(n(!0),r(ve,null,Ue(M.value.new_accounts,G=>(n(),r("label",{key:G.crs_account_id,class:"flex cursor-pointer items-center gap-2 rounded px-2 py-1.5 hover:bg-gray-50 dark:hover:bg-dark-700/40"},[e("input",{type:"checkbox",checked:L.value.has(G.crs_account_id),class:"rounded border-gray-300 dark:border-dark-600",onChange:me=>z(G.crs_account_id)},null,40,Q9),e("span",J9,a(G.platform)+" / "+a(G.type),1),e("span",Y9,a(G.name),1)]))),128))]),e("div",X9,a(t(s)("admin.accounts.crsSelectedCount",{count:L.value.size})),1)])):v("",!0),e("div",Z9,[e("span",null,a(t(s)("admin.accounts.syncProxies"))+":",1),e("span",{class:E(R.sync_proxies?"text-green-600 dark:text-green-400":"text-gray-400 dark:text-dark-500")},a(R.sync_proxies?t(s)("common.yes"):t(s)("common.no")),3)]),M.value.new_accounts.length?v("",!0):(n(),r("div",eT,[oe(a(t(s)("admin.accounts.crsNoNewAccounts"))+" ",1),M.value.existing_accounts.length?(n(),r("span",tT,a(t(s)("admin.accounts.crsWillUpdate",{count:M.value.existing_accounts.length})),1)):v("",!0)]))])):$.value==="result"&&F.value?(n(),r("div",aT,[e("div",oT,[e("div",sT,a(t(s)("admin.accounts.syncResult")),1),e("div",nT,a(t(s)("admin.accounts.syncResultSummary",F.value)),1),y.value.length?(n(),r("div",rT,[e("div",lT,a(t(s)("admin.accounts.syncErrors")),1),e("div",iT,[(n(!0),r(ve,null,Ue(y.value,(G,me)=>(n(),r("div",{key:me,class:"whitespace-pre-wrap"},a(G.kind)+" "+a(G.crs_account_id)+" — "+a(G.action)+a(G.error?`: ${G.error}`:""),1))),128))])])):v("",!0)])])):v("",!0)]),_:1},8,["show","title"]))}}),vT={class:"flex flex-wrap items-center gap-3"},yT=["disabled"],bT=ut({__name:"AccountTableActions",props:["loading"],emits:["refresh","create"],setup(i){const{t:m}=dt();return(o,c)=>(n(),r("div",vT,[ds(o.$slots,"before"),e("button",{onClick:c[0]||(c[0]=s=>o.$emit("refresh")),disabled:i.loading,class:"btn btn-secondary"},[U(ae,{name:"refresh",size:"md",class:E([i.loading?"animate-spin":""])},null,8,["class"])],8,yT),ds(o.$slots,"after"),ds(o.$slots,"beforeCreate"),e("button",{onClick:c[1]||(c[1]=s=>o.$emit("create")),class:"btn btn-primary"},a(t(m)("admin.accounts.createAccount")),1),ds(o.$slots,"afterCreate")]))}}),hT={class:"flex flex-wrap items-center gap-3"},fT=ut({__name:"AccountTableFilters",props:{searchQuery:{},filters:{},groups:{}},emits:["update:searchQuery","update:filters","change"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=f=>{c("update:filters",{...o.filters,platform:f})},$=f=>{c("update:filters",{...o.filters,type:f})},P=f=>{c("update:filters",{...o.filters,status:f})},S=f=>{c("update:filters",{...o.filters,privacy_mode:f})},M=f=>{c("update:filters",{...o.filters,group:f})},L=w(()=>[{value:"",label:s("admin.accounts.allPlatforms")},{value:"anthropic",label:"Anthropic"},{value:"openai",label:"OpenAI"},{value:"gemini",label:"Gemini"},{value:"antigravity",label:"Antigravity"},{value:"grok",label:"Grok"}]),F=w(()=>[{value:"",label:s("admin.accounts.allTypes")},{value:"oauth",label:s("admin.accounts.oauthType")},{value:"setup-token",label:s("admin.accounts.setupToken")},{value:"apikey",label:s("admin.accounts.apiKey")},{value:"bedrock",label:"AWS Bedrock"}]),R=w(()=>[{value:"",label:s("admin.accounts.allStatus")},{value:"active",label:s("admin.accounts.status.active")},{value:"inactive",label:s("admin.accounts.status.inactive")},{value:"error",label:s("admin.accounts.status.error")},{value:"rate_limited",label:s("admin.accounts.status.rateLimited")},{value:"temp_unschedulable",label:s("admin.accounts.status.tempUnschedulable")},{value:"unschedulable",label:s("admin.accounts.status.unschedulable")}]),_=w(()=>[{value:"",label:s("admin.accounts.allPrivacyModes")},{value:"__unset__",label:s("admin.accounts.privacyUnset")},{value:"training_off",label:"Privacy"},{value:"training_set_cf_blocked",label:"CF"},{value:"training_set_failed",label:"Fail"}]),y=w(()=>[{value:"",label:s("admin.accounts.allGroups")},{value:"ungrouped",label:s("admin.accounts.ungroupedGroup")},...(o.groups||[]).map(f=>({value:String(f.id),label:f.name}))]);return(f,I)=>(n(),r("div",hT,[U(Sr,{"model-value":i.searchQuery,placeholder:t(s)("admin.accounts.searchAccounts"),class:"w-full sm:w-64","onUpdate:modelValue":I[0]||(I[0]=q=>
23f.$emit("update:searchQuery",q)),onSearch:I[1]||(I[1]=q=>f.$emit("change"))},null,8,["model-value","placeholder"]),U(Zt,{"model-value":i.filters.platform,class:"w-40",options:L.value,"onUpdate:modelValue":b,onChange:I[2]||(I[2]=q=>f.$emit("change"))},null,8,["model-value","options"]),U(Zt,{"model-value":i.filters.type,class:"w-40",options:F.value,"onUpdate:modelValue":$,onChange:I[3]||(I[3]=q=>f.$emit("change"))},null,8,["model-value","options"]),U(Zt,{"model-value":i.filters.status,class:"w-40",options:R.value,"onUpdate:modelValue":P,onChange:I[4]||(I[4]=q=>f.$emit("change"))},null,8,["model-value","options"]),U(Zt,{"model-value":i.filters.privacy_mode,class:"w-40",options:_.value,"onUpdate:modelValue":S,onChange:I[5]||(I[5]=q=>f.$emit("change"))},null,8,["model-value","options"]),U(Zt,{"model-value":i.filters.group,class:"w-40",options:y.value,"onUpdate:modelValue":M,onChange:I[6]||(I[6]=q=>f.$emit("change"))},null,8,["model-value","options"])]))}}),xT={class:"mb-4 flex items-center justify-between rounded-lg bg-primary-50 p-3 dark:bg-primary-900/20"},_T={class:"flex flex-wrap items-center gap-2"},kT={key:0,class:"text-sm font-medium text-primary-900 dark:text-primary-100"},wT={key:1,class:"text-sm font-medium text-primary-900 dark:text-primary-100"},$T={class:"flex gap-2"},CT=ut({__name:"AccountBulkActionsBar",props:{selectedIds:{}},emits:["delete","edit-selected","edit-filtered","clear","select-page","toggle-schedulable","reset-status","refresh-token","probe-upstream-billing"],setup(i){const{t:m}=dt();return(o,c)=>(n(),r("div",xT,[e("div",_T,[i.selectedIds.length>0?(n(),r("span",kT,a(t(m)("admin.accounts.bulkActions.selected",{count:i.selectedIds.length})),1)):(n(),r("span",wT,a(t(m)("admin.accounts.bulkEdit.title")),1)),i.selectedIds.length>0?(n(),r(ve,{key:2},[e("button",{onClick:c[0]||(c[0]=s=>o.$emit("select-page")),class:"text-xs font-medium text-primary-700 hover:text-primary-800 dark:text-primary-300 dark:hover:text-primary-200"},a(t(m)("admin.accounts.bulkActions.selectCurrentPage")),1),c[10]||(c[10]=e("span",{class:"text-gray-300 dark:text-primary-800"},"•",-1)),e("button",{onClick:c[1]||(c[1]=s=>o.$emit("clear")),class:"text-xs font-medium text-primary-700 hover:text-primary-800 dark:text-primary-300 dark:hover:text-primary-200"},a(t(m)("admin.accounts.bulkActions.clear")),1)],64)):v("",!0)]),e("div",$T,[i.selectedIds.length>0?(n(),r(ve,{key:0},[e("button",{onClick:c[2]||(c[2]=s=>o.$emit("delete")),class:"btn btn-danger btn-sm"},a(t(m)("admin.accounts.bulkActions.delete")),1),e("button",{onClick:c[3]||(c[3]=s=>o.$emit("reset-status")),class:"btn btn-secondary btn-sm"},a(t(m)("admin.accounts.bulkActions.resetStatus")),1),e("button",{onClick:c[4]||(c[4]=s=>o.$emit("refresh-token")),class:"btn btn-secondary btn-sm"},a(t(m)("admin.accounts.bulkActions.refreshToken")),1),e("button",{onClick:c[5]||(c[5]=s=>o.$emit("probe-upstream-billing")),class:"btn btn-secondary btn-sm"},a(t(m)("admin.accounts.bulkActions.probeUpstreamBilling")),1),e("button",{onClick:c[6]||(c[6]=s=>o.$emit("toggle-schedulable",!0)),class:"btn btn-success btn-sm"},a(t(m)("admin.accounts.bulkActions.enableScheduling")),1),e("button",{onClick:c[7]||(c[7]=s=>o.$emit("toggle-schedulable",!1)),class:"btn btn-warning btn-sm"},a(t(m)("admin.accounts.bulkActions.disableScheduling")),1),e("button",{onClick:c[8]||(c[8]=s=>o.$emit("edit-selected")),class:"btn btn-primary btn-sm"},a(t(m)("admin.accounts.bulkActions.edit")),1)],64)):v("",!0),e("button",{onClick:c[9]||(c[9]=s=>o.$emit("edit-filtered")),class:"btn btn-primary btn-sm"},a(t(m)("admin.accounts.bulkEdit.submit")),1)])]))}}),TT={key:0},ST={class:"py-1"},MT={key:4,class:"my-1 border-t border-gray-100 dark:border-dark-700"},ET=ut({__name:"AccountActionMenu",props:{show:{type:Boolean},account:{},position:{}},emits:["close","test","stats","schedule","duplicate","reauth","refresh-token","recover-state","reset-quota","set-privacy","create-spark-shadow"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=w(()=>!o.account||o.account.parent_account_id!=null?!1:["apikey","upstream","bedrock","service_account"].includes(o.account.type)),$=w(()=>{var D,z,ee;if((D=o.account)!=null&&D.rate_limit_reset_at&&new Date(o.account.rate_limit_reset_at)>new Date)return!0;const q=(ee=(z=o.account)==null?void 0:z.extra)==null?void 0:ee.model_rate_limits;if(q){const ke=new Date;return Object.values(q).some(W=>new Date(W.rate_limit_reset_at)>ke)}return!1}),P=w(()=>{var q;return((q=o.account)==null?void 0:q.overload_until)&&new Date(o.account.overload_until)>new Date}),S=w(()=>{var q;return((q=o.account)==null?void 0:q.temp_unschedulable_until)&&new Date(o.account.temp_unschedulable_until)>new Date}),M=w(()=>{var q;return((q=o.account)==null?void 0:q.status)==="error"||!!$.value||!!P.value||!!S.value}),L=w(()=>{var q,D;return((q=o.account)==null?void 0:q.platform)==="antigravity"&&((D=o.account)==null?void 0:D.type)==="oauth"}),F=w(()=>{var q,D;return((q=o.account)==null?void 0:q.platform)==="openai"&&((D=o.account)==null?void 0:D.type)==="oauth"}),R=w(()=>{var q;return((q=o.account)==null?void 0:q.parent_account_id)!=null}),_=w(()=>F.value&&!R.value),y=w(()=>(L.value||F.value)&&!R.value),f=w(()=>{var q,D,z,ee,ke;return(((q=o.account)==null?void 0:q.type)==="apikey"||((D=o.account)==null?void 0:D.type)==="bedrock")&&((((z=o.account)==null?void 0:z.quota_limit)??0)>0||(((ee=o.account)==null?void 0:ee.quota_daily_limit)??0)>
230||(((ke=o.account)==null?void 0:ke.quota_weekly_limit)??0)>0)}),I=q=>{q.key==="Escape"&&c("close")};return pt(()=>o.show,q=>{q?window.addEventListener("keydown",I):window.removeEventListener("keydown",I)},{immediate:!0}),ms(()=>{window.removeEventListener("keydown",I)}),(q,D)=>(n(),Ae(Ys,{to:"body"},[i.show&&i.position?(n(),r("div",TT,[e("div",{class:"fixed inset-0 z-[9998]",onClick:D[0]||(D[0]=z=>c("close"))}),e("div",{class:"action-menu-content fixed z-[9999] w-52 overflow-hidden rounded-xl bg-white shadow-lg ring-1 ring-black/5 dark:bg-dark-800",style:$s({top:i.position.top+"px",left:i.position.left+"px"}),onClick:D[11]||(D[11]=Bt(()=>{},["stop"]))},[e("div",ST,[i.account?(n(),r(ve,{key:0},[e("button",{onClick:D[1]||(D[1]=z=>{q.$emit("test",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"play",size:"sm",class:"text-green-500","stroke-width":2}),oe(" "+a(t(s)("admin.accounts.testConnection")),1)]),e("button",{onClick:D[2]||(D[2]=z=>{q.$emit("stats",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"chart",size:"sm",class:"text-indigo-500"}),oe(" "+a(t(s)("admin.accounts.viewStats")),1)]),e("button",{onClick:D[3]||(D[3]=z=>{q.$emit("schedule",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"clock",size:"sm",class:"text-orange-500"}),oe(" "+a(t(s)("admin.scheduledTests.schedule")),1)]),b.value?(n(),r("button",{key:0,onClick:D[4]||(D[4]=z=>{q.$emit("duplicate",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"copy",size:"sm",class:"text-sky-500"}),oe(" "+a(t(s)("admin.accounts.duplicateAccount")),1)])):v("",!0),(i.account.type==="oauth"||i.account.type==="setup-token")&&!R.value?(n(),r(ve,{key:1},[e("button",{onClick:D[5]||(D[5]=z=>{q.$emit("reauth",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm text-blue-600 hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"link",size:"sm"}),oe(" "+a(t(s)("admin.accounts.reAuthorize")),1)]),e("button",{onClick:D[6]||(D[6]=z=>{q.$emit("refresh-token",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm text-purple-600 hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"refresh",size:"sm"}),oe(" "+a(t(s)("admin.accounts.refreshToken")),1)])],64)):v("",!0),_.value?(n(),r("button",{key:2,onClick:D[7]||(D[7]=z=>{q.$emit("create-spark-shadow",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm text-amber-600 hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"sparkles",size:"sm"}),oe(" "+a(t(s)("admin.accounts.createSparkShadow")),1)])):v("",!0),y.value?(n(),r("button",{key:3,onClick:D[8]||(D[8]=z=>{q.$emit("set-privacy",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm text-emerald-600 hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"shield",size:"sm"}
23),oe(" "+a(t(s)("admin.accounts.setPrivacy")),1)])):v("",!0),M.value?(n(),r("div",MT)):v("",!0),M.value?(n(),r("button",{key:5,onClick:D[9]||(D[9]=z=>{q.$emit("recover-state",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm text-emerald-600 hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"sync",size:"sm"}),oe(" "+a(t(s)("admin.accounts.recoverState")),1)])):v("",!0),f.value?(n(),r("button",{key:6,onClick:D[10]||(D[10]=z=>{q.$emit("reset-quota",i.account),q.$emit("close")}),class:"flex w-full items-center gap-2 px-4 py-2 text-sm text-teal-600 hover:bg-gray-100 dark:hover:bg-dark-700"},[U(t(ae),{name:"refresh",size:"sm"}),oe(" "+a(t(s)("admin.accounts.resetQuota")),1)])):v("",!0)],64)):v("",!0)])],4)])):v("",!0)]))}}),UT={class:"text-sm text-gray-600 dark:text-dark-300"},AT={class:"rounded-lg border border-amber-200 bg-amber-50 p-3 text-xs text-amber-600 dark:border-amber-800 dark:bg-amber-900/20 dark:text-amber-400"},RT={class:"input-label"},PT={class:"min-w-0"},IT=["title"],qT={class:"text-xs text-gray-500 dark:text-dark-400"},OT={key:0},DT={key:0,class:"space-y-2 rounded-xl border border-gray-200 p-4 dark:border-dark-700"},LT={class:"text-sm font-medium text-gray-900 dark:text-white"},VT={class:"text-sm text-gray-700 dark:text-dark-300"},zT={key:0,class:"mt-2"},NT={class:"text-sm font-medium text-red-600 dark:text-red-400"},jT={class:"mt-2 max-h-48 overflow-auto rounded-lg bg-gray-50 p-3 font-mono text-xs dark:bg-dark-800"},BT={class:"flex justify-end gap-3"},FT=["disabled"],HT=["disabled"],WT=1,GT=ut({__name:"ImportDataModal",props:{show:{type:Boolean}},emits:["close","imported"],setup(i,{emit:m}){const o=i,c=m,{t:s}=dt(),b=pa(),$=p(!1),P=p([]),S=p(0),M=w(()=>S.value>0),L=p(!1),F=p(null),R=p(null),_=w(()=>{var te;return P.value.length===0?"":P.value.length===1?((te=P.value[0])==null?void 0:te.name)||"":s("admin.accounts.selectedCount",{count:P.value.length})}),y=w(()=>P.value.map(te=>te.name).join(", ")),f=w(()=>{var te;return((te=F.value)==null?void 0:te.errors)||[]});pt(()=>o.show,te=>{te&&(P.value=[],S.value=0,L.value=!1,F.value=null,R.value&&(R.value.value=""))});const I=()=>{var te;(te=R.value)==null||te.click()},q=te=>{const N=te.target;ee(N.files),N.value=""},D=()=>{$.value||(L.value&&(L.value=!1,c("imported")),c("close"))},z=te=>te.name.toLowerCase().endsWith(".json")||te.type==="application/json",ee=te=>{if($.value)return;const N=Array.from(te||[]),x=N.filter(z);if(!x.length){b.showError(s("admin.accounts.dataImportSelectFile"));return}x.length<N.length&&b.showWarning(s("admin.accounts.dataImportIgnoredFiles",{count:N.length-x.length})),P.value=x,F.value=null},ke=()=>{$.value||(S.value+=1)},W=()=>{S.value=Math.max(0,S.value-1)},se=te=>{var N;S.value=0,!$.value&&ee((N=te.dataTransfer)==null?void 0:N.files)},G=async te=>{if(typeof te.text=="function")return te.text();if(typeof te.arrayBuffer=="function"){const N=await te.arrayBuffer();return new TextDecoder().decode(N)}return await new Promise((N,x)=>{const H=new FileReader;H.onload=()=>N(String(H.result??"")),H.onerror=()=>x(H.error||new Error("Failed to read file")),H.readAsText(te)})},me=["sub2api-data","sub2api-bundle"],ce=te=>{if(!te||typeof te!="object"||Array.isArray(te))return!1;const N=te;return N.type!==void 0&&N.type!==""&&!me.includes(N.type)||N.version!==void 0&&N.version!==0&&N.version!==WT?!1:Array.isArray(N.proxies)&&Array.isArray(N.accounts)},le=te=>{var x,H;const[N]=te;return te.length===1&&N?N:{type:(x=te.find(K=>typeof K.type=="string"))==null?void 0:x.type,version:(H=te.find(K=>typeof K.version=="number"))==null?void 0:H.version,exported_at:new Date().toISOString(),proxies:te.flatMap(K=>K.proxies),accounts:te.flatMap(K=>K.accounts),skipped_shadows:te.reduce((K,be)=>{const fe=Number(be.skipped_shadows||0);return Number.isFinite(fe)?K+fe:K},0)}},ne=async()=>{if(P.value.length===0){b.showError(s("admin.accounts.dataImportSelectFile"));return}$.value=!0;try{const te=[];for(const K of P.value){let be;try{be=JSON.parse(await G(K))}catch{b.showError(s("admin.accounts.dataImportParseFailedFile",{name:K.name}));return}if(!ce(be)){b.showError(s("admin.accounts.dataImportInvalidFile",{name:K.name}));return}te.push(be)}const N=le(te),x=await ye.accounts.importData({data:N,skip_default_group_bind:!0});F.value=x;const H={account_created:x.account_created,account_failed:x.account_failed,proxy_created:x.proxy_created,proxy_reused:x.proxy_reused,proxy_failed:x.proxy_failed};x.account_failed>0||x.proxy_failed>0?((x.account_created>0||x.proxy_created>0)&&(L.value=!0),b.showError(s("admin.accounts.dataImportCompletedWithErrors",H))):(b.showSuccess(s("admin.accounts.dataImportSuccess",H)),c("imported"))}catch(te){b.showError((te==null?void 0:te.message)||s("admin.accounts.dataImportFailed"))}finally{$.value=!1}};return(te,N)=>(n(),Ae(wa,{show:i.show,title:t(s)("admin.accounts.dataImportTitle"),width:"normal","close-on-click-outside":"",onClose:D},{footer:Me(()=>[e("div",BT,[e("button",{class:"btn btn-secondary",type:"button",disabled:$.value,onClick:D},a(t(s)("common.cancel")),9,FT),e("button",{class:"btn btn-primary",type:"submit",form:"import-data-form",disabled:$.value},a($.value?t(s)("admin.accounts.dataImporting"):t(s)("admin.accounts.dataImportButton")),9,HT)])]),default:Me(()=>[e("form",{id:"import-data-form",class:"space-y-4",onSubmit:Bt(ne,["prevent"])},[e("div",UT,a(t(s)("admin.accounts.dataImportHint")),1),e("div",AT,a(t(s)("admin.accounts.dataImportWarning")),1),e("div",null,[e("label",RT,a(t(s)("admin.accounts.dataImportFile")),1),e("div",{class:E(["flex items-center justify-between gap-3 rounded-lg border border-dashed px-4 py-3 transition-colors",M.value?"border-primary-400 bg-primary-50/70 dark:border-primary-500 dark:bg-primary-900/20":"border-gray-300 bg-gray-50 dark:border-dark-600 dark:bg-dark-800"]),onDragenter:Bt(ke,["prevent"]),onDragover:N[0]||(N[0]=Bt(()=>{},["prevent"])),onDragleave:Bt(W,["prevent"]),onDrop:Bt(se,["prevent"])},[e("div",PT,[e("div",{class:"truncate text-sm text-gray-700 dark:text-dark-200",title:y.value},a(_.value||t(s)("admin.accounts.dataImportSelectFile")),9,IT),e("div",qT,[N[1]||(N[1]=oe(" JSON (.json) ",-1)),P.value.length>1?(n(),r("span",OT," · "+a(y.value),1)):v("",!0)])]),e("button",{type:"button",class:"btn btn-secondary shrink-0",onClick:I},a(t(s)("common.chooseFile")),1)],34),e("input",{ref_key:"fileInput",ref:R,type:"file",class:"hidden",accept:"application/json,.json",multiple:"",onChange:q},null,544)]),F.value?(n(),r("div",DT,[e("div",LT,a(t(s)("admin.accounts.dataImportResult")),1),e("div",VT,a(t(s)("admin.accounts.dataImportResultSummary",F.value)),1),f.value.length?(n(),r("div",zT,[e("div",NT,a(t(s)("admin.accounts.dataImportErrors")),1),e("div",jT,[(n(!0),r(ve,null,Ue(f.value,(x,H)=>(n(),r("div",{key:H,class:"whitespace-pre-wrap"},a(x.kind)+" "+a(x.name||x.proxy_key||"-")+" — "+a(x.message),1))),128))])])):v("",!0)])):v("",!0)],32)]),_:1},8,["show","title"]))}}),KT={key:0,class:"space-y-4"},QT={class:"rounded-lg border border-gray-200 bg-gray-50 p-4 dark:border-dark-600 dark:bg-dark-700"},JT={class:"flex items-center gap-3"},YT={class:"block font-semibold text-gray-900 dark:text-white"},XT={class:"text-sm text-gray-500 dark:text-gray-400"},ZT={key:0,class:"border-0 p-0"},eS={class:"input-label"},tS={class:"mt-2 flex gap-4"},aS={class:"flex cursor-pointer items-center"},oS={class:"text-sm text-gray-700 dark:text-gray-300"},sS={class:"flex cursor-pointer items-center"},nS={class:"text-sm text-gray-700 dark:text-gray-300"},rS={key:1,class:"rounded-lg border border-gray-200 bg-gray-50 p-4 dark:border-dark-600 dark:bg-dark-700"},lS={class:"mb-2 text-sm font-medium text-gray-700 dark:text-gray-300"},iS={class:"flex items-center gap-3"},uS={class:"block text-sm font-medium text-gray-900 dark:text-white"},dS={class:"text-xs text-gray-500 dark:text-gray-400"},cS={key:0,class:"flex justify-between gap-3"},pS=["disabled"],mS={key:0,class:"-ml-1 mr-2 h-4 w-4 animate-spin",fill:"none",viewBox:"0 0 24 24"},gS=ut({__name:"ReAuthAccountModal",props:{show:{type:Boolean},account:{}},emits:["close","reauthorized"],setup(i,{emit:m}
23){const o=i,c=m,s=pa(),{t:b}=dt(),$=Fn(),P=Hn(),S=Wn(),M=Gn(),L=Kn(),F=p(null),R=p("oauth"),_=p("code_assist"),y=w(()=>{var x;return((x=o.account)==null?void 0:x.platform)==="openai"}),f=w(()=>y.value),I=w(()=>{var x;return((x=o.account)==null?void 0:x.platform)==="gemini"}),q=w(()=>{var x;return((x=o.account)==null?void 0:x.platform)==="anthropic"}),D=w(()=>{var x;return((x=o.account)==null?void 0:x.platform)==="antigravity"}),z=w(()=>{var x;return((x=o.account)==null?void 0:x.platform)==="grok"}),ee=w(()=>f.value?P.authUrl.value:I.value?S.authUrl.value:D.value?M.authUrl.value:z.value?L.authUrl.value:$.authUrl.value),ke=w(()=>f.value?P.sessionId.value:I.value?S.sessionId.value:D.value?M.sessionId.value:z.value?L.sessionId.value:$.sessionId.value),W=w(()=>f.value?P.loading.value:I.value?S.loading.value:D.value?M.loading.value:z.value?L.loading.value:$.loading.value),se=w(()=>f.value?P.error.value:I.value?S.error.value:D.value?M.error.value:z.value?L.error.value:$.error.value),G=w(()=>{var x;return f.value||I.value||D.value||z.value||((x=F.value)==null?void 0:x.inputMethod)==="manual"}),me=w(()=>{var be;const x=((be=F.value)==null?void 0:be.authCode)||"",H=ke.value,K=W.value;return x.trim()&&H&&!K});pt(()=>o.show,x=>{if(x&&o.account){if(q.value&&(o.account.type==="oauth"||o.account.type==="setup-token")&&(R.value=o.account.type),I.value){const H=o.account.credentials||{};_.value=H.oauth_type==="google_one"?"google_one":H.oauth_type==="ai_studio"?"ai_studio":"code_assist"}}else ce()});const ce=()=>{var x;R.value="oauth",_.value="code_assist",$.resetState(),P.resetState(),S.resetState(),M.resetState(),L.resetState(),(x=F.value)==null||x.reset()},le=()=>{c("close")},ne=async()=>{var x;if(o.account)if(f.value)await P.generateAuthUrl(o.account.proxy_id);else if(I.value){const H=o.account.credentials||{},K=typeof H.tier_id=="string"?H.tier_id:void 0,be=_.value==="code_assist"?(x=F.value)==null?void 0:x.projectId:void 0;await S.generateAuthUrl(o.account.proxy_id,be,_.value,K)}else D.value?await M.generateAuthUrl(o.account.proxy_id):z.value?await L.generateAuthUrl(o.account.proxy_id):await $.generateAuthUrl(R.value,o.account.proxy_id)},te=async()=>{var H,K,be,fe,$e,he,Oe,Re,je,Xe,Ze,it,ot,_t,tt,Ke;if(!o.account)return;const x=((H=F.value)==null?void 0:H.authCode)||"";if(x.trim())if(f.value){const we=P,ie=we.sessionId.value;if(!ie)return;const Ce=(((K=F.value)==null?void 0:K.oauthState)||we.oauthState.value||"").trim();if(!Ce){we.error.value=b("admin.accounts.oauth.authFailed"),s.showError(we.error.value);return}const Fe=await we.exchangeAuthCode(x.trim(),ie,Ce,o.account.proxy_id);if(!Fe)return;const Je=we.buildCredentials(Fe),st=we.buildExtraInfo(Fe);try{const vt=await ye.accounts.applyOAuthCredentials(o.account.id,{type:"oauth",credentials:Je,extra:st});s.showSuccess(b("admin.accounts.reAuthorizedSuccess")),c("reauthorized",vt),le()}catch(vt){we.error.value=((fe=(be=vt.response)==null?void 0:be.data)==null?void 0:fe.detail)||b("admin.accounts.oauth.authFailed"),s.showError(we.error.value)}}else if(I.value){const we=S.sessionId.value;if(!we)return;const Ce=(($e=F.value)==null?void 0:$e.oauthState)||""||S.state.value;if(!Ce)return;const Fe=await S.exchangeAuthCode({code:x.trim(),sessionId:we,state:Ce,proxyId:o.account.proxy_id,oauthType:_.value,tierId:typeof((he=o.account.credentials)==null?void 0:he.tier_id)=="string"?o.account.credentials.tier_id:void 0});if(!Fe)return;const Je=S.buildCredentials(Fe);try{await ye.accounts.update(o.account.id,{type:"oauth",credentials:Je});const st=await ye.accounts.clearError(o.account.id);s.showSuccess(b("admin.accounts.reAuthorizedSuccess")),c("reauthorized",st),le()}catch(st){S.error.value=((Re=(Oe=st.response)==null?void 0:Oe.data)==null?void 0:Re.detail)||b("admin.accounts.oauth.authFailed"),s.showError(S.error.value)}}else if(D.value){const we=M.sessionId.value;if(!we)return;const Ce=((je=F.value)==null?void 0:je.oauthState)||""||M.state.value;if(!Ce)return;const Fe=await M.exchangeAuthCode({code:x.trim(),sessionId:we,state:Ce,proxyId:o.account.proxy_id});if(!Fe)return;const Je=M.buildCredentials(Fe);try{await ye.accounts.update(o.account.id,{type:"oauth",credentials:Je});const st=await ye.accounts.clearError(o.account.id);s.showSuccess(b("admin.accounts.reAuthorizedSuccess")),c("reauthorized",st),le()}catch(st){M.error.value=((Ze=(Xe=st.response)==null?void 0:Xe.data)==null?void 0:Ze.detail)||b("admin.accounts.oauth.authFailed"),s.showError(M.error.value)}}else if(z.value){const we=L.sessionId.value;if(!we)return;const Ce=((it=F.value)==null?void 0:it.oauthState)||""||L.state.value;if(!Ce)return;const Fe=await L.exchangeAuthCode({code:x.trim(),sessionId:we,state:Ce,proxyId:o.account.proxy_id});if(!Fe)return;const Je=L.buildCredentials(Fe),st=L.buildExtraInfo(Fe);try{const vt=await ye.accounts.applyOAuthCredentials(o.account.id,{type:"oauth",credentials:Je,extra:st});s.showSuccess(b("admin.accounts.reAuthorizedSuccess")),c("reauthorized",vt),le()}catch(vt){L.error.value=((_t=(ot=vt.response)==null?void 0:ot.data)==null?void 0:_t.detail)||b("admin.accounts.oauth.authFailed"),s.showError(L.error.value)}}else{const we=$.sessionId.value;if(!we)return;$.loading.value=!0,$.error.value="";try{const ie=o.account.proxy_id?{proxy_id:o.account.proxy_id}:{},Ce=R.value==="oauth"?"/admin/accounts/exchange-code":"/admin/accounts/exchange-setup-token-code",Fe=await ye.accounts.exch
23angeCode(Ce,{session_id:we,code:x.trim(),...ie}),Je=$.buildExtraInfo(Fe),st=await ye.accounts.applyOAuthCredentials(o.account.id,{type:R.value,credentials:Fe,extra:Je});s.showSuccess(b("admin.accounts.reAuthorizedSuccess")),c("reauthorized",st),le()}catch(ie){$.error.value=((Ke=(tt=ie.response)==null?void 0:tt.data)==null?void 0:Ke.detail)||b("admin.accounts.oauth.authFailed"),s.showError($.error.value)}finally{$.loading.value=!1}}},N=async x=>{var H,K;if(!(!o.account||f.value)){$.loading.value=!0,$.error.value="";try{const be=o.account.proxy_id?{proxy_id:o.account.proxy_id}:{},fe=R.value==="oauth"?"/admin/accounts/cookie-auth":"/admin/accounts/setup-token-cookie-auth",$e=await ye.accounts.exchangeCode(fe,{session_id:"",code:x.trim(),...be}),he=$.buildExtraInfo($e),Oe=await ye.accounts.applyOAuthCredentials(o.account.id,{type:R.value,credentials:$e,extra:he});s.showSuccess(b("admin.accounts.reAuthorizedSuccess")),c("reauthorized",Oe),le()}catch(be){$.error.value=((K=(H=be.response)==null?void 0:H.data)==null?void 0:K.detail)||b("admin.accounts.oauth.cookieAuthFailed")}finally{$.loading.value=!1}}};return(x,H)=>(n(),Ae(wa,{show:i.show,title:t(b)("admin.accounts.reAuthorizeAccount"),width:"normal",onClose:le},{footer:Me(()=>[i.account?(n(),r("div",cS,[e("button",{type:"button",class:"btn btn-secondary",onClick:le},a(t(b)("common.cancel")),1),G.value?(n(),r("button",{key:0,type:"button",disabled:!me.value,class:"btn btn-primary",onClick:te},[W.value?(n(),r("svg",mS,[...H[2]||(H[2]=[e("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),e("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])):v("",!0),oe(" "+a(W.value?t(b)("admin.accounts.oauth.verifying"):t(b)("admin.accounts.oauth.completeAuth")),1)],8,pS)):v("",!0)])):v("",!0)]),default:Me(()=>[i.account?(n(),r("div",KT,[e("div",QT,[e("div",JT,[e("div",{class:E(["flex h-10 w-10 items-center justify-center rounded-lg bg-gradient-to-br",f.value?"from-green-500 to-green-600":I.value?"from-blue-500 to-blue-600":D.value?"from-purple-500 to-purple-600":z.value?"from-zinc-700 to-zinc-900":"from-orange-500 to-orange-600"])},[U(ae,{name:"sparkles",size:"md",class:"text-white"})],2),e("div",null,[e("span",YT,a(i.account.name),1),e("span",XT,a(y.value?t(b)("admin.accounts.openaiAccount"):I.value?t(b)("admin.accounts.geminiAccount"):D.value?t(b)("admin.accounts.antigravityAccount"):z.value?t(b)("admin.accounts.grokAccount"):t(b)("admin.accounts.claudeCodeAccount")),1)])])]),q.value?(n(),r("fieldset",ZT,[e("legend",eS,a(t(b)("admin.accounts.oauth.authMethod")),1),e("div",tS,[e("label",aS,[V(e("input",{"onUpdate:modelValue":H[0]||(H[0]=K=>R.value=K),type:"radio",value:"oauth",class:"mr-2 text-primary-600 focus:ring-primary-500"},null,512),[[va,R.value]]),e("span",oS,a(t(b)("admin.accounts.types.oauth")),1)]),e("label",sS,[V(e("input",{"onUpdate:modelValue":H[1]||(H[1]=K=>R.value=K),type:"radio",value:"setup-token",class:"mr-2 text-primary-600 focus:ring-primary-500"},null,512),[[va,R.value]]),e("span",nS,a(t(b)("admin.accounts.setupTokenLongLived")),1)])])])):v("",!0),I.value?(n(),r("div",rS,[e("div",lS,a(t(b)("admin.accounts.oauth.gemini.oauthTypeLabel")),1),e("div",iS,[e("div",{class:E(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",_.value==="google_one"?"bg-purple-500 text-white":_.value==="code_assist"?"bg-blue-500 text-white":"bg-amber-500 text-white"])},[_.value==="google_one"?(n(),Ae(ae,{key:0,name:"user",size:"sm"})):_.value==="code_assist"?(n(),Ae(ae,{key:1,name:"cloud",size:"sm"})):(n(),Ae(ae,{key:2,name:"sparkles",size:"sm"}))],2),e("div",null,[e("span",uS,a(_.value==="google_one"?"Google One":_.value==="code_assist"?t(b)("admin.accounts.gemini.oauthType.builtInTitle"):t(b)("admin.accounts.gemini.oauthType.customTitle")),1),e("span",dS,a(_.value==="google_one"?t(b)("admin.accounts.gemini.oauthType.googleOneDesc"):_.value==="code_assist"?t(b)("admin.accounts.gemini.oauthType.builtInDesc"):t(b)("admin.accounts.gemini.oauthType.customDesc")),1
23)])])])):v("",!0),U(Jn,{ref_key:"oauthFlowRef",ref:F,"add-method":R.value,"auth-url":ee.value,"session-id":ke.value,loading:W.value,error:se.value,"show-help":q.value,"show-proxy-warning":q.value,"show-cookie-option":q.value,"allow-multiple":!1,"method-label":t(b)("admin.accounts.inputMethod"),platform:y.value?"openai":I.value?"gemini":D.value?"antigravity":z.value?"grok":"anthropic","show-project-id":I.value&&_.value==="code_assist",onGenerateUrl:ne,onCookieAuth:N},null,8,["add-method","auth-url","session-id","loading","error","show-help","show-proxy-warning","show-cookie-option","method-label","platform","show-project-id"])])):v("",!0)]),_:1},8,["show","title"]))}}),vS={class:"space-y-4"},yS={key:0,class:"flex items-center justify-between rounded-xl border border-gray-200 bg-gradient-to-r from-gray-50 to-gray-100 p-3 dark:border-dark-500 dark:from-dark-700 dark:to-dark-600"},bS={class:"flex items-center gap-3"},hS={class:"flex h-10 w-10 items-center justify-center rounded-lg bg-gradient-to-br from-primary-500 to-primary-600"},fS={class:"font-semibold text-gray-900 dark:text-gray-100"},xS={class:"flex items-center gap-1.5 text-xs text-gray-500 dark:text-gray-400"},_S={class:"rounded bg-gray-200 px-1.5 py-0.5 text-[10px] font-medium uppercase dark:bg-dark-500"},kS={class:"space-y-1.5"},wS={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},$S={key:1,class:"space-y-1.5"},CS={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},TS={key:2,class:"space-y-1.5"},SS={class:"group relative"},MS={key:0,class:"flex items-center gap-2 text-gray-500"},ES={key:1,class:"flex items-center gap-2 text-yellow-400"},US={key:2,class:"text-green-400"},AS={key:3,class:"mt-3 flex items-center gap-2 border-t border-gray-700 pt-3 text-green-400"},RS={key:4,class:"mt-3 flex items-center gap-2 border-t border-gray-700 pt-3 text-red-400"},PS=["title"],IS={key:3,class:"space-y-2"},qS={class:"text-xs font-medium text-gray-600 dark:text-gray-300"},OS={class:"flex flex-wrap justify-center gap-3"},DS=["onClick"],LS=["src","alt"],VS={class:"absolute inset-0 flex items-center justify-center bg-black/0 transition-colors group-hover/img:bg-black/20"},zS={class:"border-t border-gray-100 px-3 py-1.5 text-xs text-gray-500 dark:border-dark-500 dark:text-gray-300"},NS=["src"],jS={class:"flex items-center justify-between px-1 text-xs text-gray-500 dark:text-gray-400"},BS={class:"flex items-center gap-3"},FS={class:"flex items-center gap-1"},HS={class:"flex items-center gap-1"},WS={class:"flex justify-end gap-3"},GS=["disabled"],KS=ut({__name:"AccountTestModal",props:{show:{type:Boolean},account:{}},emits:["close"],setup(i,{emit:m}){const{t:o}=dt(),{copyToClipboard:c}=bn(),s=i,b=m,$=p(null),P=p("idle"),S=p([]),M=p(""),L=p(""),F=p([]),R=p(""),_=p(""),y=p(!1);let f=null;const I=p([]),q=p(""),D=p("default"),z=w(()=>{var fe;return((fe=s.account)==null?void 0:fe.platform)==="openai"}),ee=w(()=>[{value:"default",label:o("admin.accounts.openai.testModeDefault")},{value:"compact",label:o("admin.accounts.openai.testModeCompact")}]),ke=["gemini-3.1-flash-image","gemini-2.5-flash-image","gemini-3.5-flash","gemini-2.5-flash","gemini-2.5-pro","gemini-3-flash-preview","gemini-3-pro-preview","gemini-2.0-flash"],W=w(()=>{var $e,he,Oe;const fe=R.value.toLowerCase();return!fe.startsWith("gemini-")||!fe.includes("-image")?!1:(($e=s.account)==null?void 0:$e.platform)==="gemini"||((he=s.account)==null?void 0:he.platform)==="antigravity"&&((Oe=s.account)==null?void 0:Oe.type)==="apikey"}),se=w(()=>{var $e;return R.value.toLowerCase().startsWith("gpt-image-")?(($e=s.account)==null?void 0:$e.platform)==="openai":!1}),G=w(()=>W.value||se.value),me=fe=>{const $e=new Map(ke.map((he,Oe)=>[he,Oe]));return[...fe].sort((he,Oe)=>{const Re=$e.get(he.id)??Number.MAX_SAFE_INTEGER,je=$e.get(Oe.id)??Number.MAX_SAFE_INTEGER;return Re!==je?Re-je:0})};pt(()=>s.show,async fe=>{fe&&s.account?(_.value="",D.value="default",le(),await ce()):te()}),pt(R,()=>{G.value&&!_.value.trim()&&(_.value=o("admin.accounts.imagePromptDefault"))});const ce=async()=>{if(s.account){y.value=!0,R.value="";try{const fe=await ye.accounts.getAvailableModels(s.account.id);if(F.value=s.account.platform==="gemini"||s.account.platform==="antigravity"?me(fe):fe,F.value.length>0)if(s.account.platform==="gemini")R.value=F.value[0].id;else{const $e=F.value.find(he=>he.id.includes("sonnet"));R.value=($e==null?void 0:$e.id)||F.value[0].id}}catch(fe){console.error("Failed to load available models:",fe),F.value=[],R.value=""}finally{y.value=!1}}},le=()=>{P.value="idle",S.value=[],M.value="",L.value="",I.value=[],q.value=""},ne=()=>{te(),b("close")},te=()=>{f&&(f.abort(),f=null)},N=(fe,$e="text-gray-300")=>{S.value.push({text:fe,class:$e}),x()},x=async()=>{await On(),$.value&&($.value.scrollTop=$.value.scrollHeight)},H=async()=>{var fe;if(!(!s.account||!R.value)){le(),P.value="connecting",N(o("admin.accounts.startingTestForAccount",{name:s.account.name}),"text-blue-400"),N(o("admin.accounts.testAccountTypeLabel",{type:s.account.type}),"text-gray-400"),N("","text-gray-300"),te(),f=new AbortController;try{const $e={model_id:R.value,prompt:G.value?_.value.trim():""};z.value&&($e.mode=D.value);const he=or(`/admin/accounts/${s.account.id}/test`),Oe=await fetch(he,{method:"POST",headers:{Authorization:`Bearer ${localStorage.getItem("auth_token")}`,"Content-Type":"application/json",[sr]:"1"}
23,body:JSON.stringify($e),signal:f.signal});if(!Oe.ok)throw new Error(`HTTP error! status: ${Oe.status}`);const Re=(fe=Oe.body)==null?void 0:fe.getReader();if(!Re)throw new Error("No response body");const je=new TextDecoder;let Xe="";for(;;){const{done:Ze,value:it}=await Re.read();if(Ze)break;Xe+=je.decode(it,{stream:!0});const ot=Xe.split(`
24`);Xe=ot.pop()||"";for(const _t of ot)if(_t.startsWith("data: ")){const tt=_t.slice(6).trim();if(tt)try{const Ke=JSON.parse(tt);K(Ke)}catch(Ke){console.error("Failed to parse SSE event:",Ke)}}}}catch($e){if($e instanceof DOMException&&$e.name==="AbortError"){P.value="idle";return}P.value="error";const he=$e instanceof Error?$e.message:"Unknown error";L.value=he,N(`Error: ${he}`,"text-red-400")}}},K=fe=>{switch(fe.type){case"test_start":N(o("admin.accounts.connectedToApi"),"text-green-400"),fe.model&&N(o("admin.accounts.usingModel",{model:fe.model}),"text-cyan-400"),N(G.value?o("admin.accounts.sendingImageRequest"):o("admin.accounts.sendingTestMessage"),"text-gray-400"),N("","text-gray-300"),N(o("admin.accounts.response"),"text-yellow-400");break;case"content":fe.text&&(M.value+=fe.text,x());break;case"image":fe.image_url&&(I.value.push({url:fe.image_url,mimeType:fe.mime_type}),N(o("admin.accounts.imageReceived",{count:I.value.length}),"text-purple-300"));break;case"status":fe.text&&N(fe.text,"text-cyan-300");break;case"test_complete":M.value&&(N(M.value,"text-green-300"),M.value=""),fe.success?P.value="success":(P.value="error",L.value=fe.error||"Test failed");break;case"error":P.value="error",L.value=fe.error||"Unknown error",M.value&&(N(M.value,"text-green-300"),M.value="");break}},be=()=>{const fe=S.value.map($e=>$e.text).join(`
25`);c(fe,o("admin.accounts.outputCopied"))};return(fe,$e)=>(n(),Ae(wa,{show:i.show,title:t(o)("admin.accounts.testAccountConnection"),width:"normal",onClose:ne},{footer:Me(()=>[e("div",WS,[e("button",{onClick:ne,class:"rounded-lg bg-gray-100 px-4 py-2 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-300 dark:hover:bg-dark-500"},a(t(o)("common.close")),1),e("button",{onClick:H,disabled:P.value==="connecting"||!R.value,class:E(["flex items-center gap-2 rounded-lg px-4 py-2 text-sm font-medium transition-all",P.value==="connecting"||!R.value?"cursor-not-allowed bg-primary-400 text-white":P.value==="success"?"bg-green-500 text-white hover:bg-green-600":P.value==="error"?"bg-orange-500 text-white hover:bg-orange-600":"bg-primary-500 text-white hover:bg-primary-600"])},[P.value==="connecting"?(n(),Ae(t(ae),{key:0,name:"refresh",size:"sm",class:"animate-spin","stroke-width":2})):P.value==="idle"?(n(),Ae(t(ae),{key:1,name:"play",size:"sm","stroke-width":2})):(n(),Ae(t(ae),{key:2,name:"refresh",size:"sm","stroke-width":2})),e("span",null,a(P.value==="connecting"?t(o)("admin.accounts.testing"):P.value==="idle"?t(o)("admin.accounts.startTest"):t(o)("admin.accounts.retry")),1)],10,GS)])]),default:Me(()=>[e("div",vS,[i.account?(n(),r("div",yS,[e("div",bS,[e("div",hS,[U(t(ae),{name:"play",size:"md",class:"text-white","stroke-width":2})]),e("div",null,[e("div",fS,a(i.account.name),1),e("div",xS,[e("span",_S,a(i.account.type),1),e("span",null,a(t(o)("admin.accounts.account")),1)])])]),e("span",{class:E(["rounded-full px-2.5 py-1 text-xs font-semibold",i.account.status==="active"?"bg-green-100 text-green-700 dark:bg-green-500/20 dark:text-green-400":"bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-400"])},a(i.account.status),3)])):v("",!0),e("div",kS,[e("label",wS,a(t(o)("admin.accounts.selectTestModel")),1),U(Zt,{modelValue:R.value,"onUpdate:modelValue":$e[0]||($e[0]=he=>R.value=he),options:F.value,disabled:y.value||P.value==="connecting","value-key":"id","label-key":"display_name",placeholder:y.value?t(o)("common.loading")+"...":t(o)("admin.accounts.selectTestModel")},null,8,["modelValue","options","disabled","placeholder"])]),z.value?(n(),r("div",$S,[e("label",CS,a(t(o)("admin.accounts.openai.testMode")),1),U(Zt,{modelValue:D.value,"onUpdate:modelValue":$e[1]||($e[1]=he=>D.value=he),options:ee.value,disabled:P.value==="connecting"},null,8,["modelValue","options","disabled"])])):v("",!0),G.value?(n(),r("div",TS,[U(M7,{modelValue:_.value,"onUpdate:modelValue":$e[2]||($e[2]=he=>_.value=he),label:t(o)("admin.accounts.imagePromptLabel"),placeholder:t(o)("admin.accounts.imagePromptPlaceholder"),hint:t(o)("admin.accounts.imageTestHint"),disabled:P.value==="connecting",rows:"3"},null,8,["modelValue","label","placeholder","hint","disabled"])])):v("",!0),e("div",SS,[e("div",{ref_key:"terminalRef",ref:$,class:"max-h-[240px] min-h-[120px] overflow-y-auto rounded-xl border border-gray-700 bg-gray-900 p-4 font-mono text-sm dark:border-gray-800 dark:bg-black"},[P.value==="idle"?(n(),r("div",MS,[U(t(ae),{name:"play",size:"sm","stroke-width":2}),e("span",null,a(t(o)("admin.accounts.readyToTest")),1)])):P.value==="connecting"?(n(),r("div",ES,[U(t(ae),{name:"refresh",size:"sm",class:"animate-spin","stroke-width":2}),e("span",null,a(t(o)("admin.accounts.connectingToApi")),1)])):v("",!0),(n(!0),r(ve,null,Ue(S.value,(he,Oe)=>(n(),r("div",{key:Oe,class:E(he.class)},a(he.text),3))),128)),M.value?(n(),r("div",US,[oe(a(M.value),1),$e[5]||($e[5]=e("span",{class:"animate-pulse"},"_",-1))])):v("",!0),P.value==="success"?(n(),r("div",AS,[U(t(ae),{name:"check",size:"sm","stroke-width":2}),e("span",null,a(t(o)("admin.accounts.testCompleted")),1)])):P.value==="error"?(n(),r("div",RS,[U(t(ae),{name:"x",size:"sm","stroke-width":2}),e("span",null,a(L.value),1)])):v("",!0)],512),S.value.length>0?(n(),r("button",{key:0,onClick:be,class:"absolute right-2 top-2 rounded-lg bg-gray-800/80 p-1.5 text-gray-400 opacity-0 transition-all hover:bg-gray-700 hover:text-white group-hover:opacity-100",title:t(o)("admin.accounts.copyOutput")},[U(t(ae),{name:"link",size:"sm","stroke-width":2})],8,PS)):v("",!0)]),I.value.length>0?(n(),r("div",IS,[e("div",qS,a(t(o)("admin.accounts.imagePreview")),1),e("div",OS,[(n(!0),r(ve,null,Ue(I.value,(he,Oe)=>(n(),r("div",{key:`${he.url}-${Oe}`,class:"group/img relative cursor-pointer overflow-hidden rounded-xl border border-gray-200 bg-white shadow-sm transition hover:border-primary-300 hover:shadow-md dark:border-dark-500 dark:bg-dark-700",onClick:Re=>q.value=he.url},[e("img",{src:he.url,alt:`test-image-${Oe+1}`,class:"max-h-[360px] w-full object-contain"},null,8,LS),e("div",VS,[U(t(ae),{name:"eye",size:"lg",class:"text-white opacity-0 drop-shadow-lg transition-opacity group-hover/img:opacity-100","stroke-width":2})]),e("div",zS,a(he.mimeType||"image/*"),1)],8,DS))),128))])])):v("",!0),(n(),Ae(Ys,{to:"body"},[U(Dn,{name:"fade"},{default:Me(()=>[q.value?(n(),r("div",{key:0,class:"fixed inset-0 z-[100] flex items-center justify-center bg-black/80 p-4",onClick:$e[4]||($e[4]=Bt(he=>q.value="",["self"]))}
25,[e("button",{class:"absolute right-4 top-4 rounded-full bg-black/50 p-2 text-white transition-colors hover:bg-black/70",onClick:$e[3]||($e[3]=he=>q.value="")},[U(t(ae),{name:"x",size:"lg","stroke-width":2})]),e("img",{src:q.value,alt:"preview",class:"max-h-[90vh] max-w-[90vw] rounded-lg object-contain shadow-2xl"},null,8,NS)])):v("",!0)]),_:1})])),e("div",jS,[e("div",BS,[e("span",FS,[U(t(ae),{name:"grid",size:"sm","stroke-width":2}),oe(" "+a(t(o)("admin.accounts.testModel")),1)])]),e("span",HS,[U(t(ae),{name:"chat",size:"sm","stroke-width":2}),oe(" "+a(G.value?t(o)("admin.accounts.imageTestMode"):t(o)("admin.accounts.testPrompt")),1)])])])]),_:1},8,["show","title"]))}}),QS={class:"space-y-6"},JS={key:0,class:"flex items-center justify-between rounded-xl border border-primary-200 bg-gradient-to-r from-primary-50 to-primary-100 p-3 dark:border-primary-700/50 dark:from-primary-900/20 dark:to-primary-800/20"},YS={class:"flex items-center gap-3"},XS={class:"flex h-10 w-10 items-center justify-center rounded-lg bg-gradient-to-br from-primary-500 to-primary-600"},ZS={class:"font-semibold text-gray-900 dark:text-gray-100"},eM={class:"text-xs text-gray-500 dark:text-gray-400"},tM={key:1,class:"flex items-center justify-center py-12"},aM={class:"grid grid-cols-2 gap-4 lg:grid-cols-4"},oM={class:"card border-emerald-200 bg-gradient-to-br from-emerald-50 to-white p-4 dark:border-emerald-800/30 dark:from-emerald-900/10 dark:to-dark-700"},sM={class:"mb-2 flex items-center justify-between"},nM={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},rM={class:"rounded-lg bg-emerald-100 p-1.5 dark:bg-emerald-900/30"},lM={class:"text-2xl font-bold text-gray-900 dark:text-white"},iM={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},uM={class:"text-gray-400 dark:text-gray-500"},dM={class:"card border-blue-200 bg-gradient-to-br from-blue-50 to-white p-4 dark:border-blue-800/30 dark:from-blue-900/10 dark:to-dark-700"},cM={class:"mb-2 flex items-center justify-between"},pM={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},mM={class:"rounded-lg bg-blue-100 p-1.5 dark:bg-blue-900/30"},gM={class:"text-2xl font-bold text-gray-900 dark:text-white"},vM={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},yM={class:"card border-amber-200 bg-gradient-to-br from-amber-50 to-white p-4 dark:border-amber-800/30 dark:from-amber-900/10 dark:to-dark-700"},bM={class:"mb-2 flex items-center justify-between"},hM={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},fM={class:"rounded-lg bg-amber-100 p-1.5 dark:bg-amber-900/30"},xM={class:"text-2xl font-bold text-gray-900 dark:text-white"},_M={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},kM={class:"text-gray-400 dark:text-gray-500"},wM={class:"card border-purple-200 bg-gradient-to-br from-purple-50 to-white p-4 dark:border-purple-800/30 dark:from-purple-900/10 dark:to-dark-700"},$M={class:"mb-2 flex items-center justify-between"},CM={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},TM={class:"text-2xl font-bold text-gray-900 dark:text-white"},SM={class:"mt-1 text-xs text-gray-500 dark:text-gray-400"},MM={class:"grid grid-cols-1 gap-4 lg:grid-cols-3"},EM={class:"card p-4"},UM={class:"mb-3 flex items-center gap-2"},AM={class:"rounded-lg bg-cyan-100 p-1.5 dark:bg-cyan-900/30"},RM={class:"text-sm font-semibold text-gray-900 dark:text-white"},PM={class:"space-y-2"},IM={class:"flex items-center justify-between"},qM={class:"text-xs text-gray-500 dark:text-gray-400"},OM={class:"text-sm font-semibold text-gray-900 dark:text-white"},DM={class:"flex items-center justify-between"},LM={class:"text-xs text-gray-500 dark:text-gray-400"},VM={class:"text-sm font-semibold text-gray-900 dark:text-white"},zM={class:"flex items-center justify-between"},NM={class:"text-xs text-gray-500 dark:text-gray-400"},jM={class:"text-sm font-semibold text-gray-900 dark:text-white"},BM={class:"flex items-center justify-between"},FM={class:"text-xs text-gray-500 dark:text-gray-400"},HM={class:"text-sm font-semibold text-gray-900 dark:text-white"},WM={class:"card p-4"},GM={class:"mb-3 flex items-center gap-2"},KM={class:"rounded-lg bg-orange-100 p-1.5 dark:bg-orange-900/30"},QM={class:"text-sm font-semibold text-gray-900 dark:text-white"},JM={class:"space-y-2"},YM={class:"flex items-center justify-between"},XM={class:"text-xs text-gray-500 dark:text-gray-400"},ZM={class:"text-sm font-semibold text-gray-900 dark:text-white"},eE={class:"flex items-center justify-between"},tE={class:"text-xs text-gray-500 dark:text-gray-400"}
25,aE={class:"text-sm font-semibold text-orange-600 dark:text-orange-400"},oE={class:"flex items-center justify-between"},sE={class:"text-xs text-gray-500 dark:text-gray-400"},nE={class:"text-sm font-semibold text-gray-900 dark:text-white"},rE={class:"flex items-center justify-between"},lE={class:"text-xs text-gray-500 dark:text-gray-400"},iE={class:"text-sm font-semibold text-gray-900 dark:text-white"},uE={class:"card p-4"},dE={class:"mb-3 flex items-center gap-2"},cE={class:"rounded-lg bg-indigo-100 p-1.5 dark:bg-indigo-900/30"},pE={class:"text-sm font-semibold text-gray-900 dark:text-white"},mE={class:"space-y-2"},gE={class:"flex items-center justify-between"},vE={class:"text-xs text-gray-500 dark:text-gray-400"},yE={class:"text-sm font-semibold text-gray-900 dark:text-white"},bE={class:"flex items-center justify-between"},hE={class:"text-xs text-gray-500 dark:text-gray-400"},fE={class:"text-sm font-semibold text-indigo-600 dark:text-indigo-400"},xE={class:"flex items-center justify-between"},_E={class:"text-xs text-gray-500 dark:text-gray-400"},kE={class:"text-sm font-semibold text-gray-900 dark:text-white"},wE={class:"flex items-center justify-between"},$E={class:"text-xs text-gray-500 dark:text-gray-400"},CE={class:"text-sm font-semibold text-gray-900 dark:text-white"},TE={class:"grid grid-cols-1 gap-4 lg:grid-cols-3"},SE={class:"card p-4"},ME={class:"mb-3 flex items-center gap-2"},EE={class:"rounded-lg bg-teal-100 p-1.5 dark:bg-teal-900/30"},UE={class:"text-sm font-semibold text-gray-900 dark:text-white"},AE={class:"space-y-2"},RE={class:"flex items-center justify-between"},PE={class:"text-xs text-gray-500 dark:text-gray-400"},IE={class:"text-sm font-semibold text-gray-900 dark:text-white"},qE={class:"flex items-center justify-between"},OE={class:"text-xs text-gray-500 dark:text-gray-400"},DE={class:"text-sm font-semibold text-gray-900 dark:text-white"},LE={class:"card p-4"},VE={class:"mb-3 flex items-center gap-2"},zE={class:"rounded-lg bg-rose-100 p-1.5 dark:bg-rose-900/30"},NE={class:"text-sm font-semibold text-gray-900 dark:text-white"},jE={class:"space-y-2"},BE={class:"flex items-center justify-between"},FE={class:"text-xs text-gray-500 dark:text-gray-400"},HE={class:"text-sm font-semibold text-gray-900 dark:text-white"},WE={class:"flex items-center justify-between"},GE={class:"text-xs text-gray-500 dark:text-gray-400"},KE={class:"text-sm font-semibold text-gray-900 dark:text-white"},QE={class:"card p-4"},JE={class:"mb-3 flex items-center gap-2"},YE={class:"rounded-lg bg-lime-100 p-1.5 dark:bg-lime-900/30"},XE={class:"text-sm font-semibold text-gray-900 dark:text-white"},ZE={class:"space-y-2"},eU={class:"flex items-center justify-between"},tU={class:"text-xs text-gray-500 dark:text-gray-400"},aU={class:"text-sm font-semibold text-gray-900 dark:text-white"},oU={class:"flex items-center justify-between"},sU={class:"text-xs text-gray-500 dark:text-gray-400"},nU={class:"text-sm font-semibold text-gray-900 dark:text-white"},rU={class:"flex items-center justify-between"},lU={class:"text-xs text-gray-500 dark:text-gray-400"},iU={class:"text-sm font-semibold text-gray-900 dark:text-white"},uU={class:"card p-4"},dU={class:"mb-4 text-sm font-semibold text-gray-900 dark:text-white"},cU={class:"h-64"},pU={key:1,class:"flex h-full items-center justify-center text-sm text-gray-500 dark:text-gray-400"},mU={key:3,class:"flex flex-col items-center justify-center py-12 text-gray-500 dark:text-gray-400"},gU={class:"text-sm"},vU={class:"flex justify-end"},yU=ut({__name:"AccountStatsModal",props:{show:{type:Boolean},account:{}},emits:["close"],setup(i,{emit:m}){Mr.register(Er,Ur,Ar,Rr,Pr,Ir,qr,Or);const{t:o}=dt(),c=i,s=m,b=p(!1),$=p(null),P=w(()=>document.documentElement.classList.contains("dark")),S=w(()=>({text:P.value?"#e5e7eb":"#374151",grid:P.value?"#374151":"#e5e7eb"})),M=w(()=>{var q,D;return(D=(q=$.value)==null?void 0:q.history)!=null&&D.length?{labels:$.value.history.map(z=>z.label),datasets:[{label:o("usage.accountBilled")+" (USD)",data:$.value.history.map(z=>z.actual_cost),borderColor:"#3b82f6",backgroundColor:"rgba(59, 130, 246, 0.1)",fill:!0,tension:.3,yAxisID:"y"},{label:o("usage.userBilled")+" (USD)",data:$.value.history.map(z=>z.user_cost),borderColor:"#10b981",backgroundColor:"rgba(16, 185, 129, 0.08)",fill:!1,tension:.3,borderDash:[5,5],yAxisID:"y"},{label:o("admin.accounts.stats.requests"),data:$.value.history.map(z=>z.requests),borderColor:"#f97316",backgroundColor:"rgba(249, 115, 22, 0.1)",fill:!1,tension:.3,yAxisID:"y1"}]}:null}),L=w(()=>({responsive:!0,maintainAspectRatio:!1,interaction:{intersect:!1,mode:"index"},plugins:{legend:{position:"top",labels:{color:S.value.text,usePointStyle:!0,pointStyle:"circle",padding:15,font:{size:11}}},tooltip:{callbacks:{label:q=>{const D=q.dataset.label||"",z=q.raw;return D.includes("USD")?`${D}: $${_(z)}`:`${D}: ${y(z)}`}}}},scales:{x:{grid:{color:S.value.grid},ticks:{color:S.value.text,font:{size:10},maxRotation:45,minRotation:0}},y:{type:"linear",display:!0,position:"left",grid:{color:S.value.grid},ticks:{color:"#3b82f6",font:{size:10},callback:q=>"$"+_(Number(q))},title:{display:!0,text:o("usage.accountBilled")+" (USD)",color:"#3b82f6",font:{size:11}}},y1:{type:"linear",display:!0,position:"right",grid:{drawOnChartArea:!1},ticks:{color:"#f97316",font:{size:10},callback:q=>y(Number(q))},title:{display:!0,text:o("admin.accounts.stats.requests"),color:"#f97316",font:{size:11}}}}}));pt(()=>c.show,async q=>{q&&c.account?await F():$.value=null});const F=async()=>
25{if(c.account){b.value=!0;try{$.value=await ye.accounts.getStats(c.account.id,30)}catch(q){console.error("Failed to load account stats:",q),$.value=null}finally{b.value=!1}}},R=()=>{s("close")},_=q=>q>=1e3?(q/1e3).toFixed(2)+"K":q>=1?q.toFixed(2):q>=.01?q.toFixed(3):q.toFixed(4),y=q=>q>=1e6?(q/1e6).toFixed(2)+"M":q>=1e3?(q/1e3).toFixed(2)+"K":q.toLocaleString(),f=q=>q>=1e9?`${(q/1e9).toFixed(2)}B`:q>=1e6?`${(q/1e6).toFixed(2)}M`:q>=1e3?`${(q/1e3).toFixed(2)}K`:q.toLocaleString(),I=q=>q>=1e3?`${(q/1e3).toFixed(2)}s`:`${Math.round(q)}ms`;return(q,D)=>(n(),Ae(wa,{show:i.show,title:t(o)("admin.accounts.usageStatistics"),width:"extra-wide",onClose:R},{footer:Me(()=>[e("div",vU,[e("button",{onClick:R,class:"rounded-lg bg-gray-100 px-4 py-2 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-300 dark:hover:bg-dark-500"},a(t(o)("common.close")),1)])]),default:Me(()=>{var z,ee,ke,W,se,G,me,ce,le,ne,te,N,x,H,K;return[e("div",QS,[i.account?(n(),r("div",JS,[e("div",YS,[e("div",XS,[U(ae,{name:"chartBar",size:"md",class:"text-white"})]),e("div",null,[e("div",ZS,a(i.account.name),1),e("div",eM,a(t(o)("admin.accounts.last30DaysUsage")),1)])]),e("span",{class:E(["rounded-full px-2.5 py-1 text-xs font-semibold",i.account.status==="active"?"bg-green-100 text-green-700 dark:bg-green-500/20 dark:text-green-400":"bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-400"])},a(i.account.status),3)])):v("",!0),b.value?(n(),r("div",tM,[U(Tr)])):$.value?(n(),r(ve,{key:2},[e("div",aM,[e("div",oM,[e("div",sM,[e("span",nM,a(t(o)("admin.accounts.stats.totalCost")),1),e("div",rM,[U(ae,{name:"dollar",size:"sm",class:"text-emerald-600 dark:text-emerald-400"})])]),e("p",lM," $"+a(_($.value.summary.total_cost)),1),e("p",iM,[oe(a(t(o)("admin.accounts.stats.accumulatedCost"))+" ",1),e("span",uM," ("+a(t(o)("usage.userBilled"))+": $"+a(_($.value.summary.total_user_cost))+" · "+a(t(o)("admin.accounts.stats.standardCost"))+": $"+a(_($.value.summary.total_standard_cost))+") ",1)])]),e("div",dM,[e("div",cM,[e("span",pM,a(t(o)("admin.accounts.stats.totalRequests")),1),e("div",mM,[U(ae,{name:"bolt",size:"sm",class:"text-blue-600 dark:text-blue-400"})])]),e("p",gM,a(y($.value.summary.total_requests)),1),e("p",vM,a(t(o)("admin.accounts.stats.totalCalls")),1)]),e("div",yM,[e("div",bM,[e("span",hM,a(t(o)("admin.accounts.stats.avgDailyCost")),1),e("div",fM,[U(ae,{name:"calculator",size:"sm",class:"text-amber-600 dark:text-amber-400"})])]),e("p",xM," $"+a(_($.value.summary.avg_daily_cost)),1),e("p",_M,[oe(a(t(o)("admin.accounts.stats.basedOnActualDays",{days:$.value.summary.actual_days_used}))+" ",1),e("span",kM," ("+a(t(o)("usage.userBilled"))+": $"+a(_($.value.summary.avg_daily_user_cost))+") ",1)])]),e("div",wM,[e("div",$M,[e("span",CM,a(t(o)("admin.accounts.stats.avgDailyRequests")),1),D[0]||(D[0]=e("div",{class:"rounded-lg bg-purple-100 p-1.5 dark:bg-purple-900/30"},[e("svg",{class:"h-4 w-4 text-purple-600 dark:text-purple-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M7 12l3-3 3 3 4-4M8 21l4-4 4 4M3 4h18M4 4h16v12a1 1 0 01-1 1H5a1 1 0 01-1-1V4z"})])],-1))]),e("p",TM,a(y(Math.round($.value.summary.avg_daily_requests))),1),e("p",SM,a(t(o)("admin.accounts.stats.avgDailyUsage")),1)])]),e("div",MM,[e("div",EM,[e("div",UM,[e("div",AM,[U(ae,{name:"clock",size:"sm",class:"text-cyan-600 dark:text-cyan-400"})]),e("span",RM,a(t(o)("admin.accounts.stats.todayOverview")),1)]),e("div",PM,[e("div",IM,[e("span",qM,a(t(o)("usage.accountBilled")),1),e("span",OM,"$"+a(_(((z=$.value.summary.today)==null?void 0:z.cost)||0)),1)]),e("div",DM,[e("span",LM,a(t(o)("usage.userBilled")),1),e("span",VM,"$"+a(_(((ee=$.value.summary.today)==null?void 0:ee.user_cost)||0)),1)]),e("div",zM,[e("span",NM,a(t(o)("admin.accounts.stats.requests")),1),e("span",jM,a(y(((ke=$.value.summary.today)==null?void 0:ke.requests)||0)),1)]),e("div",BM,[e("span",FM,a(t(o)("admin.accounts.stats.tokens")),1),e("span",HM,a(f(((W=$.value.summary.today)==null?void 0:W.tokens)||0)),1)])])]),e("div",WM,[e("div",GM,[e("div",KM,[U(ae,{name:"fire",size:"sm",class:"text-orange-600 dar
25k:text-orange-400"})]),e("span",QM,a(t(o)("admin.accounts.stats.highestCostDay")),1)]),e("div",JM,[e("div",YM,[e("span",XM,a(t(o)("admin.accounts.stats.date")),1),e("span",ZM,a(((se=$.value.summary.highest_cost_day)==null?void 0:se.label)||"-"),1)]),e("div",eE,[e("span",tE,a(t(o)("usage.accountBilled")),1),e("span",aE,"$"+a(_(((G=$.value.summary.highest_cost_day)==null?void 0:G.cost)||0)),1)]),e("div",oE,[e("span",sE,a(t(o)("usage.userBilled")),1),e("span",nE,"$"+a(_(((me=$.value.summary.highest_cost_day)==null?void 0:me.user_cost)||0)),1)]),e("div",rE,[e("span",lE,a(t(o)("admin.accounts.stats.requests")),1),e("span",iE,a(y(((ce=$.value.summary.highest_cost_day)==null?void 0:ce.requests)||0)),1)])])]),e("div",uE,[e("div",dE,[e("div",cE,[U(ae,{name:"trendingUp",size:"sm",class:"text-indigo-600 dark:text-indigo-400"})]),e("span",pE,a(t(o)("admin.accounts.stats.highestRequestDay")),1)]),e("div",mE,[e("div",gE,[e("span",vE,a(t(o)("admin.accounts.stats.date")),1),e("span",yE,a(((le=$.value.summary.highest_request_day)==null?void 0:le.label)||"-"),1)]),e("div",bE,[e("span",hE,a(t(o)("admin.accounts.stats.requests")),1),e("span",fE,a(y(((ne=$.value.summary.highest_request_day)==null?void 0:ne.requests)||0)),1)]),e("div",xE,[e("span",_E,a(t(o)("usage.accountBilled")),1),e("span",kE,"$"+a(_(((te=$.value.summary.highest_request_day)==null?void 0:te.cost)||0)),1)]),e("div",wE,[e("span",$E,a(t(o)("usage.userBilled")),1),e("span",CE,"$"+a(_(((N=$.value.summary.highest_request_day)==null?void 0:N.user_cost)||0)),1)])])])]),e("div",TE,[e("div",SE,[e("div",ME,[e("div",EE,[U(ae,{name:"cube",size:"sm",class:"text-teal-600 dark:text-teal-400"})]),e("span",UE,a(t(o)("admin.accounts.stats.accumulatedTokens")),1)]),e("div",AE,[e("div",RE,[e("span",PE,a(t(o)("admin.accounts.stats.totalTokens")),1),e("span",IE,a(f($.value.summary.total_tokens)),1)]),e("div",qE,[e("span",OE,a(t(o)("admin.accounts.stats.dailyAvgTokens")),1),e("span",DE,a(f(Math.round($.value.summary.avg_daily_tokens))),1)])])]),e("div",LE,[e("div",VE,[e("div",zE,[U(ae,{name:"bolt",size:"sm",class:"text-rose-600 dar
25k:text-rose-400"})]),e("span",NE,a(t(o)("admin.accounts.stats.performance")),1)]),e("div",jE,[e("div",BE,[e("span",FE,a(t(o)("admin.accounts.stats.avgResponseTime")),1),e("span",HE,a(I($.value.summary.avg_duration_ms)),1)]),e("div",WE,[e("span",GE,a(t(o)("admin.accounts.stats.daysActive")),1),e("span",KE,a($.value.summary.actual_days_used)+" / "+a($.value.summary.days),1)])])]),e("div",QE,[e("div",JE,[e("div",YE,[U(ae,{name:"clipboard",size:"sm",class:"text-lime-600 dark:text-lime-400"})]),e("span",XE,a(t(o)("admin.accounts.stats.recentActivity")),1)]),e("div",ZE,[e("div",eU,[e("span",tU,a(t(o)("admin.accounts.stats.todayRequests")),1),e("span",aU,a(y(((x=$.value.summary.today)==null?void 0:x.requests)||0)),1)]),e("div",oU,[e("span",sU,a(t(o)("admin.accounts.stats.todayTokens")),1),e("span",nU,a(f(((H=$.value.summary.today)==null?void 0:H.tokens)||0)),1)]),e("div",rU,[e("span",lU,a(t(o)("admin.accounts.stats.todayCost")),1),e("span",iU,"$"+a(_(((K=$.value.summary.today)==null?void 0:K.cost)||0)),1)])])])]),e("div",uU,[e("h3",dU,a(t(o)("admin.accounts.stats.usageTrend")),1),e("div",cU,[M.value?(n(),Ae(t(Dr),{key:0,data:M.value,options:L.value},null,8,["data","options"])):(n(),r("div",pU,a(t(o)("admin.dashboard.noDataAvailable")),1))])]),U(Lr,{"model-stats":$.value.models,loading:!1},null,8,["model-stats"]),U($n,{"endpoint-stats":$.value.endpoints||[],loading:!1,title:t(o)("usage.inboundEndpoint")},null,8,["endpoint-stats","title"]),U($n,{"endpoint-stats":$.value.upstream_endpoints||[],loading:!1,title:t(o)("usage.upstreamEndpoint")},null,8,["endpoint-stats","title"])],64)):b.value?v("",!0):(n(),r("div",mU,[U(ae,{name:"chartBar",size:"xl",class:"mb-4 h-12 w-12"}),e("p",gU,a(t(o)("admin.accounts.stats.noData")),1)]))])]}),_:1},8,["show","title"]))}}),bU={class:"space-y-4"},hU={class:"flex items-center justify-between"},fU={class:"text-sm text-gray-500 dark:text-gray-400"},xU={key:0,class:"rounded-xl border border-primary-200 bg-primary-50/50 p-4 dark:border-primary-800 dark:bg-primary-900/20"},_U={class:"mb-3 text-sm font-medium text-gray-700 dark:text-gray-300"},kU={class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},wU={class:"mb-1 block text-xs font-medium text-gray-600 dark:text-gray-400"},$U={class:"mb-1 flex items-center gap-1 text-xs font-medium text-gray-600 dark:text-gray-400"},CU={class:"space-y-1.5"},TU={class:"font-medium"},SU={class:"mb-1 flex items-center gap-1 text-xs font-medium text-gray-600 dark:text-gray-400"},MU={class:"space-y-1.5"},EU={class:"font-medium"},UU={class:"flex items-end"},AU={class:"flex items-center gap-2 text-sm text-gray-700 dark:text-gray-300"},RU={class:"flex items-end"},PU={class:"flex items-center gap-2 text-sm text-gray-700 dark:text-gray-300"},IU={class:"mt-0.5 text-xs text-gray-400 dark:text-gray-500"},qU={class:"mt-3 flex justify-end gap-2"},OU=["disabled"],DU={key:1,class:"flex items-center justify-center py-8"},LU={class:"ml-2 text-sm text-gray-500"},VU={key:2,class:"rounded-xl border border-dashed border-gray-300 py-10 text-center dark:border-dark-600"},zU={class:"text-sm text-gray-500 dark:text-gray-400"},NU={key:3,class:"space-y-3"},jU=["onClick"],BU={class:"flex flex-1 items-center gap-4"},FU={class:"min-w-0"},HU={class:"text-sm font-medium text-gray-900 dark:text-gray-100"},WU={class:"mt-0.5 font-mono text-xs text-gray-500 dark:text-gray-400"},GU={class:"text-xs text-gray-500 dark:text-gray-400"},KU={key:0,class:"inline-flex items-center rounded-full bg-emerald-100 px-2 py-0.5 text-xs font-medium text-emerald-700 dark:bg-emerald-500/20 dark:text-emerald-400"},QU={class:"flex items-center gap-3"},JU={key:0,class:"hidden text-right text-xs text-gray-500 dark:text-gray-400 sm:block"},YU={key:1,class:"hidden text-right text-xs text-gray-500 dark:text-gray-400 sm:block"},XU=["onClick","title"],ZU=["onClick","title"],eA={class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"},tA={class:"grid grid-cols-1 gap-3 sm:grid-cols-2"},aA={class:"mb-1 block text-xs font-medium text-gray-600 dark:text-gray-400"},oA={class:"mb-1 flex items-center gap-1 text-xs font-medium text-gray-600 dark:text-gray-400"},sA={class:"space-y-1.5"},nA={class:"font-medium"},rA={class:"mb-1 flex items-center gap-1 text-xs font-medium text-gray-600 dark:text-gray-400"},lA={class:"space-y-1.5"},iA={class:"font-medium"},uA={class:"flex items-end"},dA={class:"flex items-center gap-2 text-sm text-gray-700 dark:text-gray-300"},cA={class:"flex items-end"},pA={class:"flex items-center gap-2 text-sm text-gray-700 dark:text-gray-300"},mA={class:"mt-0.5 text-xs text-gray-400 dark:text-gray-500"},gA={class:"mt-3 flex justify-end gap-2"},vA=["disabled"],yA={key:1,class:"border-t border-gray-100 px-4 py-3 dark:border-dark-700"},bA={class:"mb-2 text-xs font-medium text-gray-600 dark:text-gray-400"},hA={key:0,class:"flex items-center justify-center py-4"},fA={class:"ml-2 text-xs text-gray-500"},xA={key:1,class:"py-4 text-center text-xs text-gray-500 dark:text-gray-400"},_A={key:2,class:"max-h-64 space-y-2 overflow-y-auto"},kA={class:"flex items-center justify-between"},wA={class:"flex items-center gap-2"},$A={key:0,class:"text-xs text-gray-500 dark:text-gray-400"},CA={class:"text-xs text-gray-400"},TA={key:0,class:"mt-2"},SA=["onClick"],MA={key:0,class:"mt-1 max-h-32 overflow-auto whitespace-pre-wrap rounded bg-red-50 p-2 text-xs text-red-700 dark:bg-red-900/20 dark:text-red-300"},EA={key:1,class:"mt-2"},UA=["onClick"],AA={key:0,class:"mt-1 max-h-32 overflow-auto whitespace-pre-wrap rounded bg-gray-100 p-2 text-xs text-gray-700 dark:bg-dark-800 dark:text-gray-300"},RA=ut({__name:"ScheduledTestsPanel",props:{show:{type:Boolean},accountId:{},modelOptions:{}},emits:["close"],setup(i,{emit:m}){const{t:o}=dt(),c=pa(),s=i,b=m,$=p(!1),P=p(!1),S=p(!1),M=p([]),L=p([]),F=p(null),R=ya(new Set),_=p(!1),y=p(!1),f=p(null),I=p(null),q=p(!1),D=ya({model_id:"",cron_expression:"",max_results:"100",enabled:!0,auto_recover:!1}),z=ya({model_id:"",cron_expression:"",max_results:"100",enabled:!0,auto_recover:!1}),ee=()=>{z.model_id="",z.cron_expression="",z.max_results="100",z.enabled=!0,z.auto_recover=!1};pt(()=>s.show,async x=>{x&&s.accountId?await ke():(M.value=[],L.value=[],F.value=null,R.clear(),_.value=!1,y.value=!1)});const ke=async()=>
25{if(s.accountId){$.value=!0;try{M.value=await ye.scheduledTests.listByAccount(s.accountId)}catch(x){c.showError((x==null?void 0:x.message)||"Failed to load plans")}finally{$.value=!1}}},W=async()=>{if(!(!s.accountId||!z.model_id||!z.cron_expression)){P.value=!0;try{const x=Number(z.max_results)||100;await ye.scheduledTests.create({account_id:s.accountId,model_id:z.model_id,cron_expression:z.cron_expression,enabled:z.enabled,max_results:x,auto_recover:z.auto_recover}),c.showSuccess(o("admin.scheduledTests.createSuccess")),_.value=!1,ee(),await ke()}catch(x){c.showError((x==null?void 0:x.message)||"Failed to create plan")}finally{P.value=!1}}},se=async(x,H)=>{try{const K=await ye.scheduledTests.update(x.id,{enabled:H}),be=M.value.findIndex(fe=>fe.id===x.id);be!==-1&&(M.value[be]=K),c.showSuccess(o("admin.scheduledTests.updateSuccess"))}catch(K){c.showError((K==null?void 0:K.message)||"Failed to update plan")}},G=x=>{I.value=x.id,D.model_id=x.model_id,D.cron_expression=x.cron_expression,D.max_results=String(x.max_results),D.enabled=x.enabled,D.auto_recover=x.auto_recover},me=()=>{I.value=null},ce=async()=>{if(!(!I.value||!D.model_id||!D.cron_expression)){q.value=!0;try{const x=await ye.scheduledTests.update(I.value,{model_id:D.model_id,cron_expression:D.cron_expression,max_results:Number(D.max_results)||100,enabled:D.enabled,auto_recover:D.auto_recover}),H=M.value.findIndex(K=>K.id===I.value);H!==-1&&(M.value[H]=x),c.showSuccess(o("admin.scheduledTests.updateSuccess")),I.value=null}catch(x){c.showError((x==null?void 0:x.message)||"Failed to update plan")}finally{q.value=!1}}},le=x=>{f.value=x,y.value=!0},ne=async()=>{if(f.value)try{await ye.scheduledTests.delete(f.value.id),c.showSuccess(o("admin.scheduledTests.deleteSuccess")),M.value=M.value.filter(x=>x.id!==f.value.id),F.value===f.value.id&&(F.value=null,L.value=[])}catch(x){c.showError((x==null?void 0:x.message)||"Failed to delete plan")}finally{y.value=!1,f.value=null}},te=async x=>{if(F.value===x){F.value=null,L.value=[],R.clear();return}F.value=x,R.clear(),S.value=!0;try{L.value=await ye.scheduledTests.listResults(x,20)}catch(H){c.showError((H==null?void 0:H.message)||"Failed to load results"),L.value=[]}finally{S.value=!1}},N=x=>{R.has(x)?R.delete(x):R.add(x)};return(x,H)=>(n(),Ae(wa,{show:i.show,title:t(o)("admin.scheduledTests.title"),width:"wide",onClose:H[16]||(H[16]=K=>b("close"))},{default:Me(()=>[e("div",bU,[e("div",hU,[e("p",fU,a(t(o)("admin.scheduledTests.title")),1),e("button",{onClick:H[0]||(H[0]=K=>_.value=!_.value),class:"btn btn-primary flex items-center gap-1.5 text-sm"},[U(t(ae),{name:"plus",size:"sm","stroke-width":2}),oe(" "+a(t(o)("admin.scheduledTests.addPlan")),1)])]),_.value?(n(),r("div",xU,[e("div",_U,a(t(o)("admin.scheduledTests.addPlan")),1),e("div",kU,[e("div",null,[e("label",wU,a(t(o)("admin.scheduledTests.model")),1),U(Zt,{modelValue:z.model_id,"onUpdate:modelValue":H[1]||(H[1]=K=>z.model_id=K),options:i.modelOptions,placeholder:t(o)("admin.scheduledTests.model"),searchable:i.modelOptions.length>5},null,8,["modelValue","options","placeholder","searchable"])]),e("div",null,[e("label",$U,[oe(a(t(o)("admin.scheduledTests.cronExpression"))+" ",1),U(fo,null,{trigger:Me(()=>[...H[17]||(H[17]=[e("span",{class:"inline-flex h-4 w-4 cursor-help items-center justify-center rounded-full border border-gray-400/70 text-[10px] font-semibold text-gray-400 transition-colors hover:border-primary-500 hover:text-primary-600 dark:border-gray-500 dark:text-gray-500 dark:hover:border-primary-400 dark:hover:text-primary-400"}," ? ",-1)])]),default:Me(()=>[e("div",CU,[e("p",TU,a(t(o)("admin.scheduledTests.cronTooltipTitle")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipMeaning")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipExampleEvery30Min")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipExampleHourly")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipExampleDaily")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipExampleWeekly")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipRange")),1)])]),_:1})]),U(Vs,{modelValue:z.cron_expression,"onUpdate:modelValue":H[2]||(H[2]=K=>z.cron_expression=K),placeholder:"*/30 * * * *",hint:t(o)("admin.scheduledTests.cronHelp")},null,8,["modelValue","hint"])]),e("div",null,[e("label",SU,[oe(a(t(o)("admin.scheduledTests.maxResults"))+" ",1),U(fo,null,{trigger:Me(()=>[...H[18]||(H[18]=[e("span",{class:"inline-flex h-4 w-4 cursor-help items-center justify-center rounded-full border border-gray-400/70 text-[10px] font-semibold text-gray-400 transition-colors hover:border-primary-500 hover:text-primary-600 dark:border-gray-500 dark:text-gray-500 dark:hover:border-primary-400 dark:hover:text-primary-400"}," ? ",-1)])]),default:Me(()=>[e("div",MU,[e("p",EU,a(t(o)("admin.scheduledTests.maxResultsTooltipTitle")),1),e("p",null,a(t(o)("admin.scheduledTests.maxResultsTooltipMeaning")),1),e("p",null,a(t(o)("admin.scheduledTests.maxResultsTooltipBody")),1),e("p",null,a(t(o)("admin.scheduledTests.maxResultsTooltipExample")),1),e("p",null,a(t(o)("admin.scheduledTests.maxResultsTooltipRange")),1)])]),_:1})]),U(Vs,{modelValue:z.max_results,"onUpdate:modelValue":H[3]||(H[3]=K=>z.max_results=K),type:"number",placeholder:"100"},null,8,["modelValue"])]),e("div",UU,[e("label",AU,[U(ho,{modelValue:z.enabled,"onUpdate:modelValue":H[4]||(H[4]=K=>z.enabled=K)},null,8,["modelValue"]),oe(" "+a(t(o)("admin.scheduledTests.enabled")),1)])]),e("div",RU,[e("div",null,[e("label",PU,[U(ho,{modelValue:z.auto_recover,"onUpdate:modelValue":H[5]||(H[5]=K=>z.auto_recover=K)},null,8,["modelValue"]),oe(" "+a(t(o)("admin.scheduledTests.autoRecover")),1)]),e("p",IU,a(t(o)("admin.scheduledTests.autoRecoverHelp")),1)])])]),e("div",qU,[e("button",{onClick:H[6]||(H[6]=K=>{_.value=!1,ee()}),class:"rounded-lg bg-gray-100 px-3 py-1.5 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-300 dark:hover:bg-dark-500"},a(t(o)("common.cancel")),1),e("button",{onClick:W,disabled:!z.model_id||!z.cron_expression||P.value,class:"flex items-center gap-1.5 rounded-lg bg-primary-500 px-3 py-1.5 text-sm font-medium text-white transition-colors hover:bg-primary-600 disabled:cursor-not-allowed disabled:opacity-50"},[P.value?(n(),Ae(t(ae),{key:0,name:"refresh",size:"sm",class:"animate-spin","stroke-width":2})):v("",!0),oe(" "+a(t(o)("common.save")),1)],8,OU)])])):v("",!0),$.value?(n(),r("div",DU,[U(t(ae),{name:"refresh",size:"md",class:"animate-spin text-gray-400","stroke-width":2}),e("span",LU,a(t(o)("common.loading"))+"...",1)])):M.value.length===0?(n(),r("div",VU,[U(t(ae),{name:"calendar",size:"lg",class:"mx-auto mb-2 text-gray-400","stroke-width":1.5}
25),e("p",zU,a(t(o)("admin.scheduledTests.noPlans")),1)])):(n(),r("div",NU,[(n(!0),r(ve,null,Ue(M.value,K=>(n(),r("div",{key:K.id,class:"rounded-xl border border-gray-200 bg-white transition-all dark:border-dark-600 dark:bg-dark-800"},[e("div",{class:"flex cursor-pointer items-center justify-between px-4 py-3",onClick:be=>te(K.id)},[e("div",BU,[e("div",FU,[e("div",HU,a(K.model_id),1),e("div",WU,a(K.cron_expression),1)]),e("div",{class:"flex items-center gap-1.5",onClick:H[7]||(H[7]=Bt(()=>{},["stop"]))},[U(ho,{"model-value":K.enabled,"onUpdate:modelValue":be=>se(K,be)},null,8,["model-value","onUpdate:modelValue"]),e("span",GU,a(K.enabled?t(o)("admin.scheduledTests.enabled"):""),1)]),K.auto_recover?(n(),r("span",KU,a(t(o)("admin.scheduledTests.autoRecover")),1)):v("",!0)]),e("div",QU,[K.last_run_at?(n(),r("div",JU,[e("div",null,a(t(o)("admin.scheduledTests.lastRun")),1),e("div",null,a(t(oo)(K.last_run_at)),1)])):v("",!0),K.next_run_at?(n(),r("div",YU,[e("div",null,a(t(o)("admin.scheduledTests.nextRun")),1),e("div",null,a(t(oo)(K.next_run_at)),1)])):v("",!0),e("div",{class:"flex items-center gap-1",onClick:H[8]||(H[8]=Bt(()=>{},["stop"]))},[e("button",{onClick:be=>G(K),class:"rounded-lg p-1.5 text-gray-400 transition-colors hover:bg-blue-50 hover:text-blue-500 dark:hover:bg-blue-900/20",title:t(o)("admin.scheduledTests.editPlan")},[U(t(ae),{name:"edit",size:"sm","stroke-width":2})],8,XU),e("button",{onClick:be=>le(K),class:"rounded-lg p-1.5 text-gray-400 transition-colors hover:bg-red-50 hover:text-red-500 dark:hover:bg-red-900/20",title:t(o)("admin.scheduledTests.deletePlan")},[U(t(ae),{name:"trash",size:"sm","stroke-width":2})],8,ZU)]),U(t(ae),{name:"chevronDown",size:"sm",class:E(["text-gray-400 transition-transform duration-200",F.value===K.id?"rotate-180":""])},null,8,["class"])])],8,jU),I.value===K.id?(n(),r("div",{key:0,class:"border-t border-blue-100 bg-blue-50/50 px-4 py-3 dark:border-blue-900 dark:bg-blue-900/10",onClick:H[14]||(H[14]=Bt(()=>{},["stop"]))},[e("div",eA,a(t(o)("admin.scheduledTests.editPlan")),1),e("div",tA,[e("div",null,[e("label",aA,a(t(o)("admin.scheduledTests.model")),1),U(Zt,{modelValue:D.model_id,"onUpdate:modelValue":H[9]||(H[9]=be=>D.model_id=be),options:i.modelOptions,placeholder:t(o)("admin.scheduledTests.model"),searchable:i.modelOptions.length>5},null,8,["modelValue","options","placeholder","searchable"])]),e("div",null,[e("label",oA,[oe(a(t(o)("admin.scheduledTests.cronExpression"))+" ",1),U(fo,null,{trigger:Me(()=>[...H[19]||(H[19]=[e("span",{class:"inline-flex h-4 w-4 cursor-help items-center justify-center rounded-full border border-gray-400/70 text-[10px] font-semibold text-gray-400 transition-colors hover:border-primary-500 hover:text-primary-600 dark:border-gray-500 dark:text-gray-500 dark:hover:border-primary-400 dark:hover:text-primary-400"}," ? ",-1)])]),default:Me(()=>[e("div",sA,[e("p",nA,a(t(o)("admin.scheduledTests.cronTooltipTitle")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipMeaning")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipExampleEvery30Min")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipExampleHourly")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipExampleDaily")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipExampleWeekly")),1),e("p",null,a(t(o)("admin.scheduledTests.cronTooltipRange")),1)])]),_:1})]),U(Vs,{modelValue:D.cron_expression,"onUpdate:modelValue":H[10]||(H[10]=be=>D.cron_expression=be),placeholder:"*/30 * * * *",hint:t(o)("admin.scheduledTests.cronHelp")},null,8,["modelValue","hint"])]),e("div",null,[e("label",rA,[oe(a(t(o)("admin.scheduledTests.maxResults"))+" ",1),U(fo,null,{trigger:Me(()=>[...H[20]||(H[20]=[e("span",{class:"inline-flex h-4 w-4 cursor-help items-center justify-center rounded-full border border-gray-400/70 text-[10px] font-semibold text-gray-400 transition-colors hover:border-primary-500 hover:text-primary-600 dark:border-gray-500 dark:text-gray-500 dark:hover:border-primary-400 dark:hover:text-primary-400"}," ? ",-1)])]),default:Me(()=>[e("div",lA,[e("p",iA,a(t(o)("admin.scheduledTests.maxResultsTooltipTitle")),1),e("p",null,a(t(o)("admin.scheduledTests.maxResultsTooltipMeaning")),1),e("p",null,a(t(o)("admin.scheduledTests.maxResultsTooltipBody")),1),e("p",null,a(t(o)("admin.scheduledTests.maxResultsTooltipExample")),1),e("p",null,a(t(o)("admin.scheduledTests.maxResultsTooltipRange")),1)])]),_:1})]),U(Vs,{modelValue:D.max_results,"onUpdate:modelValue":H[11]||(H[11]=be=>D.max_results=be),type:"number",placeholder:"100"},null,8,["modelValue"])]),e("div",uA,[e("label",dA,[U(ho,{modelValue:D.enabled,"onUpdate:modelValue":H[12]||(H[12]=be=>D.enabled=be)},null,8,["modelValue"]),oe(" "+a(t(o)("admin.scheduledTests.enabled")),1)])]),e("div",cA,[e("div",null,[e("label",pA,[U(ho,{modelValue:D.auto_recover,"onUpdate:modelValue":H[13]||(H[13]=be=>D.auto_recover=be)},null,8,["modelValue"]),oe(" "+a(t(o)("admin.scheduledTests.autoRecover")),1)]),e("p",mA,a(t(o)("admin.scheduledTests.autoRecoverHelp")),1)])])]),e("div",gA,[e("button",{onClick:me,class:"rounded-lg bg-gray-100 px-3 py-1.5 text-sm font-medium text-gray-700 transition-colors hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-300 dark:hover:bg-dark-500"},a(t(o)("common.cancel")),1),e("button",{onClick:ce,disabled:!D.model_id||!D.cron_expression||q.value,class:"flex items-center gap-1.5 rounded-lg bg-primary-500 px-3 py-1.5 text-sm font-medium text-white transition-colors hover:bg-primary-600 disabled:cursor-not-allowed disabled:opacity-50"},[q.value?(n(),Ae(t(ae),{key:0,name:"refresh",size:"sm",class:"animate-spin","stroke-width":2})):v("",!0),oe(" "+a(t(o)("common.save")),1)],8,vA)])])):v("",!0),F.value===K.id?(n(),r("div",yA,[e("div",bA,a(t(o)("admin.scheduledTests.results")),1),S.value?(n(),r("div",hA,[U(t(ae),{name:"refresh",size:"sm",class:"animate-spin text-gray-400","stroke-width":2}),e("span",fA,a(t(o)("common.loading"))+"...",1)])):L.value.length===0?(n(),r("div",xA,a(t(
25o)("admin.scheduledTests.noResults")),1)):(n(),r("div",_A,[(n(!0),r(ve,null,Ue(L.value,be=>(n(),r("div",{key:be.id,class:"rounded-lg border border-gray-100 bg-gray-50 p-3 dark:border-dark-700 dark:bg-dark-900"},[e("div",kA,[e("div",wA,[e("span",{class:E(["inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium",be.status==="success"?"bg-green-100 text-green-700 dark:bg-green-500/20 dark:text-green-400":be.status==="running"?"bg-blue-100 text-blue-700 dark:bg-blue-500/20 dark:text-blue-400":"bg-red-100 text-red-700 dark:bg-red-500/20 dark:text-red-400"])},a(be.status==="success"?t(o)("admin.scheduledTests.success"):be.status==="running"?t(o)("admin.scheduledTests.running"):t(o)("admin.scheduledTests.failed")),3),be.latency_ms>0?(n(),r("span",$A,a(be.latency_ms)+"ms ",1)):v("",!0)]),e("span",CA,a(t(oo)(be.started_at)),1)]),be.error_message?(n(),r("div",TA,[e("div",{class:"cursor-pointer text-xs font-medium text-red-600 dark:text-red-400",onClick:fe=>N(be.id)},[oe(a(t(o)("admin.scheduledTests.errorMessage"))+" ",1),U(t(ae),{name:"chevronDown",size:"sm",class:E(["inline transition-transform duration-200",R.has(be.id)?"rotate-180":""])},null,8,["class"])],8,SA),R.has(be.id)?(n(),r("pre",MA,a(be.error_message),1)):v("",!0)])):be.response_text?(n(),r("div",EA,[e("div",{class:"cursor-pointer text-xs font-medium text-gray-600 dark:text-gray-400",onClick:fe=>N(be.id)},[oe(a(t(o)("admin.scheduledTests.responseText"))+" ",1),U(t(ae),{name:"chevronDown",size:"sm",class:E(["inline transition-transform duration-200",R.has(be.id)?"rotate-180":""])},null,8,["class"])],8,UA),R.has(be.id)?(n(),r("pre",AA,a(be.response_text),1)):v("",!0)])):v("",!0)]))),128))]))])):v("",!0)]))),128))]))]),U(so,{show:y.value,title:t(o)("admin.scheduledTests.deletePlan"),message:t(o)("admin.scheduledTests.confirmDelete"),"confirm-text":t(o)("common.delete"),"cancel-text":t(o)("common.cancel"),danger:!0,onConfirm:ne,onCancel:H[15]||(H[15]=K=>y.value=!1)},null,8,["show","title","message","confirm-text","cancel-text"])]),_:1},8,["show","title"]))}}),PA={key:0,class:"relative max-w-56"},IA={class:"flex flex-wrap gap-1 max-h-14 overflow-hidden"},qA={class:"mb-2 flex items-center justify-between"},OA={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},DA={class:"flex flex-wrap gap-1.5 max-h-64 overflow-y-auto"},LA={key:1,class:"text-sm text-gray-400 dark:text-dark-500"},VA=ut({__name:"AccountGroupsCell",props:{groups:{},maxDisplay:{default:4}},setup(i){const m=i,{t:o}=dt(),c=p(null),s=p(null),b=p(!1),$=w(()=>m.groups?m.groups.length<=m.maxDisplay?m.groups:m.groups.slice(0,m.maxDisplay-1):[]),P=w(()=>!m.groups||m.groups.length<=m.maxDisplay?0:m.groups.length-(m.maxDisplay-1)),S=w(()=>{if(!c.value)return{};const L=c.value.getBoundingClientRect(),F=window.innerHeight,R=window.innerWidth;let _=L.bottom+8,y=L.left;return _+280>F&&(_=Math.max(8,L.top-280)),y+384>R&&(y=Math.max(8,R-392)),{top:`${_}px`,left:`${y}px`}}),M=L=>{L.key==="Escape"&&(b.value=!1)};return Js(()=>{window.addEventListener("keydown",M)}),ms(()=>{window.removeEventListener("keydown",M)}),(L,F)=>i.groups&&i.groups.length>0?(n(),r("div",PA,[e("div",IA,[(n(!0),r(ve,null,Ue($.value,R=>(n(),Ae(Cn,{key:R.id,name:R.name,platform:R.platform,"subscription-type":R.subscription_type,"rate-multiplier":R.rate_multiplier,"show-rate":!1,class:"max-w-24"},null,8,["name","platform","subscription-type","rate-multiplier"]))),128)),P.value>0?(n(),r("button",{key:0,ref_key:"moreButtonRef",ref:c,onClick:F[0]||(F[0]=Bt(R=>b.value=!b.value,["stop"])),class:"inline-flex items-center gap-0.5 rounded-md px-1.5 py-0.5 text-xs font-medium bg-gray-100 text-gray-600 hover:bg-gray-200 dark:bg-dark-600 dark:text-gray-300 dark:hover:bg-dark-500 transition-colors cursor-pointer whitespace-nowrap"},[e("span",null,"+"+a(P.value),1)],512)):v("",!0)]),(n(),Ae(Ys,{to:"body"},[U(Dn,{"enter-active-class":"transition duration-150 ease-out","enter-from-class":"opacity-0 scale-95","enter-to-class":"opacity-100 scale-100","leave-active-class":"transition duration-100 ease-in","leave-from-class":"opacity-100 scale-100","leave-to-class":"opacity-0 scale-95"},{default:Me(()=>[b.value?(n(),r("div",{key:0,ref_key:"popoverRef",ref:s,class:"fixed z-50 min-w-48 max-w-96 rounded-lg border border-gray-200 bg-white p-3 shadow-lg dark:border-dark-600 dark:bg-dark-800",style:$s(S.value)},[e("div",qA,[e("span",OA,a(t(o)("admin.accounts.groupCountTotal",{count:i.groups.length})),1),e("button",{onClick:F[1]||(F[1]=R=>b.value=!1),class:"rounded p-0.5 text-gray-400 hover:bg-gray-100 hover:text-gray-600 dark:hover:bg-dark-700 dark:hover:text-gray-300"},[...F[3]||(F[3]=[e("svg",{class:"h-3.5 w-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)])])]),e("div",DA,[(n(!0),r(ve,null,Ue(i.groups,R=>(n(),Ae(Cn,{key:R.id,name:R.name,platform:R.platform,"subscription-type":R.subscription_type,"rate-multiplier":R.rate_multiplier,"show-rate":!1},null,8,["name","platform","subscription-type","rate-multiplier"]))),128))])],4)):v("",!0)]),_:1})])),b.value?(n(),r("div",{key:0,class:"fixed inset-0 z-40",onClick:F[2]||(F[2]=R=>b.value=!1)})):v("",!0)])):(n(),r("span",LA,"-"))}}),zA=["title"],NA={class:"font-mono"},jA={class:"font-mono"},BA={key:0,class:"text-[9px] opacity-60"},zs=ut({__name:"CapacityBadge",props:{colorClass:{},tooltip:{},current:{},max:{},suffix:{}},setup(i){return(m,o)=>(n(),r("span",{class:E(["inline-flex items-center gap-1 rounded-md px-1.5 py-px text-[10px] font-medium leading-tight",i.colorClass]),title:i.tooltip},[ds(m.$slots,"default"),e("span",NA,a(i.current),1),o[0]||(o[0]=e("span",{class:"text-gray-400 dark:text-gray-500"},"/",-1)),e("span",jA,a(i.max),1),i.suffix?(n(),r("span",BA,a(i.suffix
25),1)):v("",!0)],10,zA))}}),FA=["title"],HA={key:0,class:"font-semibold opacity-70"},WA={key:1,class:"h-2.5 w-2.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},GA={class:"font-mono"},KA={class:"font-mono"},sn=ut({__name:"QuotaBadge",props:{used:{},limit:{},label:{}},setup(i){const m=i,{t:o}=dt(),c=w(()=>m.used>=m.limit?"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400":m.used>=m.limit*.8?"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-400":"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400"),s=w(()=>m.used>=m.limit?o("admin.accounts.capacity.quota.exceeded"):o("admin.accounts.capacity.quota.normal")),b=$=>$.toFixed(2);return($,P)=>(n(),r("span",{class:E(["inline-flex items-center gap-1 rounded-md px-1.5 py-px text-[10px] font-medium leading-tight",c.value]),title:s.value},[i.label?(n(),r("span",HA,a(i.label),1)):(n(),r("svg",WA,[...P[0]||(P[0]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M2.25 18.75a60.07 60.07 0 0115.797 2.101c.727.198 1.453-.342 1.453-1.096V18.75M3.75 4.5v.75A.75.75 0 013 6h-.75m0 0v-.375c0-.621.504-1.125 1.125-1.125H20.25M2.25 6v9m18-10.5v.75c0 .414.336.75.75.75h.75m-1.5-1.5h.375c.621 0 1.125.504 1.125 1.125v9.75c0 .621-.504 1.125-1.125 1.125h-.375m1.5-1.5H21a.75.75 0 00-.75.75v.75m0 0H3.75m0 0h-.375a1.125 1.125 0 01-1.125-1.125V15m1.5 1.5v-.75A.75.75 0 003 15h-.75M15 10.5a3 3 0 11-6 0 3 3 0 016 0zm3 0h.008v.008H18V10.5zm-12 0h.008v.008H6V10.5z"},null,-1)])])),e("span",GA,"$"+a(b(i.used)),1),P[1]||(P[1]=e("span",{class:"text-gray-400 dark:text-gray-500"},"/",-1)),e("span",KA,"$"+a(b(i.limit)),1)],10,FA))}}),QA={class:"flex flex-col gap-0.5"},JA=ut({__name:"AccountCapacityCell",props:{account:{}},setup(i){const m=i,{t:o}=dt(),c=w(()=>m.account.current_concurrency||0),s=w(()=>{const ce=c.value,le=m.account.concurrency;return ce>=le?"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400":ce>0?"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-400":"bg-gray-100 text-gray-600 dark:bg-gray-800 dark:text-gray-400"}),b=w(()=>m.account.platform==="anthropic"&&(m.account.type==="oauth"||m.account.type==="setup-token")),$=w(()=>b.value&&m.account.window_cost_limit!=null&&m.account.window_cost_limit>0),P=w(()=>m.account.current_window_cost??0),S=w(()=>{if(!$.value)return"";const ce=P.value,le=m.account.window_cost_limit||0,ne=m.account.window_cost_sticky_reserve||10;return ce>=le+ne?"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400":ce>=le?"bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400":ce>=le*.8?"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-400":"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400"}),M=w(()=>
25{if(!$.value)return"";const ce=P.value,le=m.account.window_cost_limit||0,ne=m.account.window_cost_sticky_reserve||10;return ce>=le+ne?o("admin.accounts.capacity.windowCost.blocked"):ce>=le?o("admin.accounts.capacity.windowCost.stickyOnly"):o("admin.accounts.capacity.windowCost.normal")}),L=w(()=>b.value&&m.account.max_sessions!=null&&m.account.max_sessions>0),F=w(()=>m.account.active_sessions??0),R=w(()=>{if(!L.value)return"";const ce=F.value,le=m.account.max_sessions||0;return ce>=le?"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400":ce>=le*.8?"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-400":"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400"}),_=w(()=>{if(!L.value)return"";const ce=F.value,le=m.account.max_sessions||0,ne=m.account.session_idle_timeout_minutes||5;return ce>=le?o("admin.accounts.capacity.sessions.full",{idle:ne}):o("admin.accounts.capacity.sessions.normal",{idle:ne})}),y=w(()=>b.value&&m.account.base_rpm!=null&&m.account.base_rpm>0),f=w(()=>m.account.current_rpm??0),I=w(()=>m.account.rpm_strategy||"tiered"),q=w(()=>I.value==="sticky_exempt"?"[S]":"[T]"),D=w(()=>{const ce=m.account.base_rpm||0;return m.account.rpm_sticky_buffer??(ce>0?Math.max(1,Math.floor(ce/5)):0)}),z=w(()=>{if(!y.value)return"";const ce=f.value,le=m.account.base_rpm??0,ne=D.value;if(I.value==="tiered"){if(ce>=le+ne)return"bg-red-100 text-red-700 dark:bg-red-900/30 dark:text-red-400";if(ce>=le)return"bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400"}else if(ce>=le)return"bg-orange-100 text-orange-700 dark:bg-orange-900/30 dark:text-orange-400";return ce>=le*.8?"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/30 dark:text-yellow-400":"bg-emerald-100 text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-400"}),ee=w(()=>{if(!y.value)return"";const ce=f.value,le=m.account.base_rpm??0,ne=D.value;return I.value==="tiered"?ce>=le+ne?o("admin.accounts.capacity.rpm.tieredBlocked",{buffer:ne}):ce>=le?o("admin.accounts.capacity.rpm.tieredStickyOnly",{buffer:ne}):ce>=le*.8?o("admin.accounts.capacity.rpm.tieredWarning"):o("admin.accounts.capacity.rpm.tieredNormal"):ce>=le?o("admin.accounts.capacity.rpm.stickyExemptOver"):ce>=le*.8?o("admin.accounts.capacity.rpm.stickyExemptWarning"):o("admin.accounts.capacity.rpm.stickyExemptNormal")}),ke=ce=>ce==null?"0":ce.toFixed(2),W=w(()=>m.account.type==="apikey"||m.account.type==="bedrock"),se=w(()=>W.value&&m.account.quota_daily_limit!=null&&m.account.quota_daily_limit>0),G=w(()=>W.value&&m.account.quota_weekly_limit!=null&&m.account.quota_weekly_limit>0),me=w(()=>W.value&&m.account.quota_limit!=null&&m.account.quota_limit>0);return(ce,le)=>(n(),r("div",QA,[U(zs,{"color-class":s.value,current:c.value,max:i.account.concurrency},{default:Me(()=>[...le[0]||(le[0]=[e("svg",{class:"h-2.5 w-2.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M3.75 6A2.25 2.25 0 016 3.75h2.25A2.25 2.25 0 0110.5 6v2.25a2.25 2.25 0 01-2.25 2.25H6a2.25 2.25 0 01-2.25-2.25V6zM3.75 15.75A2.25 2.25 0 016 13.5h2.25a2.25 2.25 0 012.25 2.25V18a2.25 2.25 0 01-2.25 2.25H6A2.25 2.25 0 013.75 18v-2.25zM13.5 6a2.25 2.25 0 012.25-2.25H18A2.25 2.25 0 0120.25 6v2.25A2.25 2.25 0 0118 10.5h-2.25a2.25 2.25 0 01-2.25-2.25V6zM13.5 15.75a2.25 2.25 0 012.25-2.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-2.25A2.25 2.25 0 0113.5 18v-2.25z"})],-1)])]),_:1},8,["color-class","current","max"]),$.value?(n(),Ae(zs,{key:0,"color-class":S.value,tooltip:M.value,current:"$"+ke(P.value),max:"$"+ke(i.account.window_cost_limit)},{default:Me(()=>[...le[1]||(le[1]=[e("svg",{class:"h-2.5 w-2.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 6v12m-3-2.818l.879.659c1.171.879 3.07.879 4.242 0 1.172-.879 1.172-2.303 0-3.182C13.536 12.219 12.768 12 12 12c-.725 0-1.45-.22-2.003-.659-1.106-.879-1.106-2.303 0-3.182s2.9-.879 4.006 0l.415.33M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)])]),_:1},8,["color-class","tooltip","current","max"])):v("",!0),L.value?(n(),Ae(zs,{key:1,"color-class":R.value,tooltip:_.value,current:F.value,max:i.account.max_sessions},{default:Me(()=>[...le[2]||(le[2]=[e("svg",{class:"h-2.5 w-2.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M15 19.128a9.38 9.38 0 002.625.372 9.337 9.337 0 004.121-.952 4.125 4.125 0 00-7.533-2.493M15 19.128v-.003c0-1.113-.285-2.16-.786-3.07M15 19.128v.106A12.318 12.318 0 018.624 21c-2.331 0-4.512-.645-6.374-1.766l-.001-.109a6.375 6.375 0 0111.964-3.07M12 6.375a3.375 3.375 0 11-6.75 0 3.375 3.375 0 016.75 0zm8.25 2.25a2.625 2.625 0 11-5.25 0 2.625 2.625 0 015.25 0z"})],-1)])]),_:1},8,["color-class","tooltip","current","max"])):v("",!0),y.value?(n(),Ae(zs,{key:2,"color-class":z.value,tooltip:ee.value,current:f.value,max:i.account.base_rpm,suffix:q.value},{default:Me(()=>[...le[3]||(le[3]=[e("svg",{class:"h-2.5 w-2.5",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"})],-1)])]),_:1},8,["color-class","tooltip","current","max","suffix"])):v("",!0),se.value?(n(),Ae(sn,{key:3,used:i.account.quota_daily_used??0,limit:i.account.quota_daily_limit,label:"D"},null,8,["used","limit"])):v("",!0),G.value?(n(),Ae(sn,{key:4,used:i.account.quota_weekly_used??0,limit:i.account.quota_weekly_limit,label:"W"},null,8,["used","limit"])):v("",!0),me.value?(n(),Ae(sn,{key:5,used:i.account.quota_used??0,limit:i.account.quota_limit},null,8,["used","limit"])):v("",!0)]))}}),YA={key:0,class:"flex h-6 min-w-[7rem] items-center gap-1"},XA={class:"space-y-1"},ZA={key:0},eR={"data-testid":"upstream-billing-last-rate"},tR={"data-testid":"upstream-billing-last-time"},aR={"data-testid":"upstream-billing-elapsed"},oR={key:2},sR={key:3,"data-testid":"upstream-billing-next-probe"},nR={class:"mt-2 border-t border-white/15 pt-2","data-testid":"upstream-billing-probe-state"}
25,rR={key:4,class:"mt-1","data-testid":"upstream-billing-global-probe-state"},lR={class:"text-red-400"},iR=["disabled","aria-label","title"],uR={key:1,class:"text-sm text-gray-400 dark:text-dark-500"},dR=5*60*1e3,cR=ut({__name:"UpstreamBillingRateCell",props:{account:{},now:{},probing:{type:Boolean},globalProbeEnabled:{type:Boolean,default:!0}},emits:["probe"],setup(i){const m=i,{t:o}=dt(),c=w(()=>m.account.platform==="openai"&&m.account.type==="apikey"),s=w(()=>{var se;return(se=m.account.extra)==null?void 0:se.upstream_billing_probe}),b=w(()=>{var se;return(se=s.value)==null?void 0:se.data}),$=w(()=>{var se;return((se=m.account.extra)==null?void 0:se.upstream_billing_probe_enabled)===!0}),P=w(()=>{var G;const se=(G=s.value)==null?void 0:G.next_probe_at;return typeof se=="string"&&Number.isFinite(Date.parse(se))?se:""}),S=w(()=>{var se;return typeof((se=s.value)==null?void 0:se.received_at)=="string"?Date.parse(s.value.received_at):Number.NaN}),M=w(()=>{var G,me;if(typeof((G=s.value)==null?void 0:G.fresh_until)=="string")return Date.parse(s.value.fresh_until);if(((me=s.value)==null?void 0:me.status)!=="ok"||typeof s.value.next_probe_at!="string")return Number.NaN;const se=Date.parse(s.value.next_probe_at);return Number.isFinite(se)&&se>S.value?S.value+2*(se-S.value):Number.NaN}),L=w(()=>!Number.isFinite(S.value)||S.value>m.now+dR?!1:Number.isFinite(M.value)&&M.value>S.value),F=w(()=>s.value?Number.isFinite(S.value)?L.value?m.now>M.value:!0:s.value.status==="ok":!1),R=se=>{if(typeof se!="string")return null;const G=/^(\d{2}):(\d{2})$/.exec(se);if(!G)return null;const me=Number(G[1]),ce=Number(G[2]);return me<24&&ce<60?me*60+ce:null},_=(se,G)=>{var me,ce;if(!G)return null;try{const le=new Intl.DateTimeFormat("en-GB",{timeZone:G,hour:"2-digit",minute:"2-digit",hourCycle:"h23"}).formatToParts(new Date(se)),ne=Number((me=le.find(N=>N.type==="hour"))==null?void 0:me.value),te=Number((ce=le.find(N=>N.type==="minute"))==null?void 0:ce.value);return Number.isInteger(ne)&&Number.isInteger(te)?ne*60+te:null}catch{return null}},y=w(()=>{const se=b.value;if(!se||se.billing_scope!=="token")return null;const G=se.resolved_rate_multiplier;if(typeof G!="number"||!Number.isFinite(G)||G<0||typeof se.peak_rate_enabled!="boolean")return null;if(!se.peak_rate_enabled)return G;const me=R(se.peak_start),ce=R(se.peak_end),le=_(m.now,se.timezone),ne=se.peak_rate_multiplier;if(me==null||ce==null||le==null||me>=ce||typeof ne!="number"||!Number.isFinite(ne)||ne<0)return null;const te=le>=me&&le<ce?G*ne:G;return Number.isFinite(te)?te:null}),f=w(()=>{var G;const se=(G=b.value)==null?void 0:G.effective_rate_multiplier;return typeof se=="number"&&Number.isFinite(se)&&se>=0?Number(se.toPrecision(12)):null}),I=w(()=>
25{if(!Number.isFinite(S.value))return"-";const se=Math.max(0,Math.floor((m.now-S.value)/6e4));if(se<1)return o("admin.accounts.upstreamBilling.justNow");if(se<60)return o("admin.accounts.upstreamBilling.minutesAgo",{count:se});const G=Math.floor(se/60);return G<24?o("admin.accounts.upstreamBilling.hoursAgo",{count:G}):o("admin.accounts.upstreamBilling.daysAgo",{count:Math.floor(G/24)})}),q=w(()=>{var G;if(!L.value||F.value||!["ok","failed"].includes(((G=s.value)==null?void 0:G.status)??""))return"-";const se=y.value;return se==null?"-":`${Number(se.toPrecision(12))}x`}),D=w(()=>s.value?s.value.status==="unsupported"?o("admin.accounts.upstreamBilling.unsupported"):F.value?o("admin.accounts.upstreamBilling.stale"):s.value.status==="failed"?o("admin.accounts.upstreamBilling.failed"):"":o("admin.accounts.upstreamBilling.notProbed")),z=w(()=>s.value?s.value.status==="unsupported"?"text-gray-500 dark:text-gray-400":F.value?"text-amber-600 dark:text-amber-400":s.value.status==="failed"?"text-red-600 dark:text-red-400":"":"text-gray-400 dark:text-gray-500"),ee=w(()=>q.value!=="-"),ke=w(()=>ee.value?q.value:D.value||"-"),W=se=>se?new Date(se).toLocaleString(void 0,{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):"-";return(se,G)=>c.value?(n(),r("div",YA,[U(fo,{class:"-ml-1","width-class":"w-max max-w-[calc(100vw-2rem)]","data-testid":"upstream-billing-details"},{trigger:Me(()=>[e("span",{class:E(["cursor-help border-b border-dotted border-gray-300 text-sm font-medium dark:border-dark-600",ee.value?"font-mono text-gray-800 dark:text-gray-200":z.value||"text-gray-400 dark:text-gray-500"]),"data-testid":"upstream-billing-rate"},a(ke.value),3)]),default:Me(()=>{var me,ce;return[e("div",XA,[ee.value&&b.value?(n(),r(ve,{key:0},[e("p",null,a(t(o)("admin.accounts.upstreamBilling.groupRate",{value:b.value.group_rate_multiplier})),1),b.value.user_rate_multiplier!=null?(n(),r("p",ZA,a(t(o)("admin.accounts.upstreamBilling.userRate",{value:b.value.user_rate_multiplier})),1)):v("",!0),e("p",null,a(b.value.peak_rate_enabled?t(o)("admin.accounts.upstreamBilling.peakRate",{start:b.value.peak_start,end:b.value.peak_end,value:b.value.peak_rate_multiplier,timezone:b.value.timezone}):t(o)("admin.accounts.upstreamBilling.noPeakRate")),1),e("p",null,a(t(o)("admin.accounts.upstreamBilling.effectiveRate",{value:y.value??"-"})),1),e("p",null,a(t(o)("admin.accounts.upstreamBilling.updatedAt",{value:W((me=s.value)==null?void 0:me.received_at)})),1)],64)):F.value&&f.value!=null?(n(),r(ve,{key:1},[e("p",eR,a(t(o)("admin.accounts.upstreamBilling.lastDetectedRate",{value:f.value})),1),e("p",tR,a(t(o)("admin.accounts.upstreamBilling.lastDetectedAt",{value:W((ce=s.value)==null?void 0:ce.received_at)})),1),e("p",aR,a(t(o)("admin.accounts.upstreamBilling.elapsedSince",{value:I.value})),1)],64)):(n(),r("p",oR,a(D.value||"-"),1)),$.value&&i.globalProbeEnabled!==!1&&P.value?(n(),r("p",sR,a(t(o)("admin.accounts.upstreamBilling.nextProbeAt",{value:W(P.value)})),1)):v("",!0),e("p",nR,[oe(a(t(o)("admin.accounts.upstreamBilling.accountProbeState"))+" ",1),e("span",{class:E($.value?"text-emerald-400":"text-red-400")},a($.value?t(o)("admin.accounts.upstreamBilling.enabled"):t(o)("admin.accounts.upstreamBilling.disabled")),3)]),i.globalProbeEnabled===!1?(n(),r("p",rR,[oe(a(t(o)("admin.accounts.upstreamBilling.globalProbeState"))+" ",1),e("span",lR,a(t(o)("admin.accounts.upstreamBilling.disabled")),1)])):v("",!0)])]}),_:1}),ee.value&&D.value?(n(),r("span",{key:0,class:E([z.value,"whitespace-nowrap text-[10px] font-medium"])},a(D.value),3)):v("",!0),e("button",{type:"button",class:"inline-flex h-6 w-6 flex-shrink-0 items-center justify-center rounded text-blue-600 transition-colors hover:bg-blue-50 disabled:cursor-not-allowed disabled:opacity-50 dark:text-blue-400 dark:hover:bg-blue-900/30",disabled:i.probing,"aria-label":t(o)("admin.accounts.upstreamBilling.manualProbe"),title:t(o)("admin.accounts.upstreamBilling.manualProbe"),"data-testid":"upstream-billing-probe",onClick:G[0]||(G[0]=me=>se.$emit("probe"))},[U(ae,{name:"refresh",size:"xs",class:E({"animate-spin":i.probing})},null,8,["class"])],8,iR)])):(n(),r("span",uR,"-"))}}),pR={class:"space-y-4"},mR={class:"flex items-center justify-between"},gR={class:"text-sm text-gray-500 dark:text-gray-400"},vR={key:0,class:"flex items-center justify-center py-8"},yR={key:1,class:"py-8 text-center"},bR={class:"mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full bg-gray-100 dark:bg-dark-700"},hR={class:"mb-1 text-sm font-medium text-gray-900 dark:text-white"},fR={class:"text-sm text-gray-500 dark:text-gray-400"},xR={key:2,class:"max-h-96 overflow-auto rounded-lg border border-gray-200 dark:border-dark-600"},_R={class:"min-w-full divide-y divide-gray-200 dark:divide-dark-700"},kR={class:"sticky top-0 bg-gray-50 dark:bg-dark-700"},wR={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},$R={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},CR={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},TR={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},SR={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},MR={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},ER={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},UR={class:"divide-y divide-gray-200 bg-white dark:divide-dark-700 dark:bg-dark-800"},AR={class:"whitespace-nowrap px-3 py-2"},RR={class:"inline-flex h-5 w-5 items-center justify-center rounded bg-gray-100 text-xs font-medium text-gray-700 dark:bg-dark-600 dark:text-gray-300"},PR={class:"px-3 py-2"},IR={class:"font-medium text-gray-900 dark:text-white text-sm"},qR={key:0,class:"mt-0.5 text-xs text-gray-500 dark:text-gray-400 max-w-xs truncate"},OR={class:"px-3 py-2"},DR={class:"flex flex-wrap gap-1 max-w-48"},LR={key:0,class:"text-xs text-gray-500"},VR={key:1,class:"text-xs text-gray-500"},zR={class:"mt-0.5 text-xs text-gray-500 dark:text-gray-400"},NR={class:"px-3 py-2"},jR={key:0,class:"text-xs text-gray-500 dark:text-gray-400"},BR={key:1,class:"flex flex-wrap gap-1"},FR={key:0,class:"text-xs text-gray-500"},HR={class:"px-3 py-2"},WR={class:"text-xs space-y-0.5"},GR={class:"flex items-center gap-1"},KR={class:"text-gray-600 dark:text-gray-400"},QR={class:"flex items-center gap-1"},JR={class:"text-gray-600 dark:text-gray-400"},YR={key:0,class:"flex items-center gap-1"},XR={class:"text-gray-600 dark:text-gray-400"},ZR={class:"px-3 py-2"},eP=["onClick"],tP={class:"px-3 py-2"},aP={class:"flex items-center gap-1"},oP=["onClick","title"],sP=["onClick","title"],nP={class:"flex justify-end"},rP={class:"grid grid-cols-2 gap-4"},lP={class:"input-label"},iP=["placeholder"],uP={class:"input-label"},dP={class:"input-hint"},cP={class:"input-label"},pP=["placeholder"],mP={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},gP={class:"mb-2 text-sm font-medium text-gray-900 dark:text-white"},vP={class:"grid grid-cols-2 gap-3"},yP={class:"input-label text-xs"},bP=["placeholder"],hP={class:"input-hint text-xs"},fP={class:"input-label text-xs"},xP=["placeholder"],_P={class:"input-hint text-xs"},kP={class:"mt-3"},wP={class:"input-label text-xs"},$P={class:"mt-1 space-y-2"},CP=["value"],TP={class:"flex-1"},SP={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},MP={class:"text-xs text-gray-500 dark:text-gray-400"},EP={class:"mt-3"},UP={class:"input-label text-xs"},AP={class:"flex flex-wrap gap-3"},RP=["value"],PP={class:"text-xs text-gray-700 dark:text-gray-300"},IP={class:"input-hint text-xs mt-1"},qP={class:"rounded-lg border border-gray-200 p-3 dark:border-dark-600"},OP={class:"mb-2 text-sm font-medium text-gray-900 dark:text-white"},DP={class:"grid grid-cols-2 gap-3"},LP={class:"flex items-center gap-1.5"},VP={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},zP={key:0,class:"mt-2"},NP={class:"input-label text-xs"},jP={class:"flex items-center gap-1.5"},BP={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},FP={key:0,class:"mt-2"},HP={class:"input-label text-xs"},WP=["placeholder"],GP={class:"flex items-center gap-1.5"},KP={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},QP={class:"input-hint text-xs -mt-3"},JP={class:"flex items-center gap-1.5"},YP={class:"text-xs font-medium text-gray-700 dark:text-gray-300"},XP={class:"flex justify-end gap-3"},ZP=["disabled"],eI=ut({__name:"ErrorPassthroughRulesModal",props:{show:{type:Boolean}},emits:["close"],setup(i,{emit:m}){const o=i,{t:c}=dt(),s=pa(),b=p([]),$=p(!1),P=p(!1),S=p(!1),M=p(!1),L=p(!1),F=p(null),R=p(null),_=p(""),y=p(""),f=ya({name:"",enabled:!0,priority:0,match_mode:"any",platforms:[],passthrough_code:!0,response_code:null,passthrough_body:!0,custom_message:null,skip_monitoring:!1,description:null}),I=w(()=>[{value:"any",label:c("admin.errorPassthrough.matchMode.any"),description:c("admin.errorPassthrough.matchMode.anyHint")},{value:"all",label:c("admin.errorPassthrough.matchMode.all"),description:c("admin.errorPassthrough.matchMode.allHint")}]),q=[{value:"anthropic",label:"Anthropic"},{value:"openai",label:"OpenAI"},{value:"gemini",label:"Gemini"},{value:"antigravity",label:"Antigravity"},{value:"grok",label:"Grok"}];pt(()=>o.show,ne=>{ne&&D()});const D=async()=>{$.value=!0;try{b.value=await ye.errorPassthrough.list()}catch(ne){s.showError(c("admin.errorPassthrough.failedToLoad")),console.error("Error loading rules:",ne)}finally{$.value=!1}},z=()=>{f.name="",f.enabled=!0,f.priority=0,f.match_mode="any",f.platforms=[],f.passthrough_code=!0,f.response_code=null,f.passthrough_body=!0,f.custom_message=null,f.skip_monitoring=!1,f.description=null,_.value="",y.value=""},ee=()=>{S.value=!1,M.value=!1,F.value=null,z()},ke=ne=>{F.value=ne,f.name=ne.name,f.enabled=ne.enabled,f.priority=ne.priority,f.match_mode=ne.match_mode,f.platforms=[...ne.platforms],f.passthrough_code=ne.passthrough_code,f.response_code=ne.response_code,f.passthrough_body=ne.passthrough_body,f.custom_message=ne.custom_message,f.skip_monitoring=ne.skip_monitoring,f.description=ne.description,_.value=ne.error_codes.join(", "),y.value=ne.keywords.join(`
26`),M.value=!0},W=ne=>{R.value=ne,L.value=!0},se=()=>_.value.trim()?_.value.split(/[,\s]+/).map(ne=>parseInt(ne.trim(),10)).filter(ne=>!isNaN(ne)&&ne>0):[],G=()=>y.value.trim()?y.value.split(`
27`).map(ne=>ne.trim()).filter(ne=>ne.length>0):[],me=async()=>{var N,x,H;if(!f.name.trim()){s.showError(c("admin.errorPassthrough.nameRequired"));return}const ne=se(),te=G();if(ne.length===0&&te.length===0){s.showError(c("admin.errorPassthrough.conditionsRequired"));return}P.value=!0;try{const K={name:f.name.trim(),enabled:f.enabled,priority:f.priority,error_codes:ne,keywords:te,match_mode:f.match_mode,platforms:f.platforms,passthrough_code:f.passthrough_code,response_code:f.passthrough_code?null:f.response_code,passthrough_body:f.passthrough_body,custom_message:f.passthrough_body?null:f.custom_message,skip_monitoring:f.skip_monitoring,description:((N=f.description)==null?void 0:N.trim())||null};M.value&&F.value?(await ye.errorPassthrough.update(F.value.id,K),s.showSuccess(c("admin.errorPassthrough.ruleUpdated"))):(await ye.errorPassthrough.create(K),s.showSuccess(c("admin.errorPassthrough.ruleCreated"))),ee(),D()}catch(K){s.showError(((H=(x=K.response)==null?void 0:x.data)==null?void 0:H.detail)||c("admin.errorPassthrough.failedToSave")),console.error("Error saving rule:",K
27)}finally{P.value=!1}},ce=async ne=>{var te,N;try{await ye.errorPassthrough.toggleEnabled(ne.id,!ne.enabled),ne.enabled=!ne.enabled}catch(x){s.showError(((N=(te=x.response)==null?void 0:te.data)==null?void 0:N.detail)||c("admin.errorPassthrough.failedToToggle")),console.error("Error toggling rule:",x)}},le=async()=>{var ne,te;if(R.value)try{await ye.errorPassthrough.delete(R.value.id),s.showSuccess(c("admin.errorPassthrough.ruleDeleted")),L.value=!1,R.value=null,D()}catch(N){s.showError(((te=(ne=N.response)==null?void 0:ne.data)==null?void 0:te.detail)||c("admin.errorPassthrough.failedToDelete")),console.error("Error deleting rule:",N)}};return(ne,te)=>(n(),Ae(wa,{show:i.show,title:t(c)("admin.errorPassthrough.title"),width:"extra-wide",onClose:te[16]||(te[16]=N=>ne.$emit("close"))},{footer:Me(()=>[e("div",nP,[e("button",{onClick:te[1]||(te[1]=N=>ne.$emit("close")),class:"btn btn-secondary"},a(t(c)("common.close")),1)])]),default:Me(()=>{var N;return[e("div",pR,[e("div",mR,[e("p",gR,a(t(c)("admin.errorPassthrough.description")),1),e("button",{onClick:te[0]||(te[0]=x=>S.value=!0),class:"btn btn-primary btn-sm"},[U(ae,{name:"plus",size:"sm",class:"mr-1"}),oe(" "+a(t(c)("admin.errorPassthrough.createRule")),1)])]),$.value?(n(),r("div",vR,[U(ae,{name:"refresh",size:"lg",class:"animate-spin text-gray-400"})])):b.value.length===0?(n(),r("div",yR,[e("div",bR,[U(ae,{name:"shield",size:"lg",class:"text-gray-400"})]),e("h4",hR,a(t(c)("admin.errorPassthrough.noRules")),1),e("p",fR,a(t(c)("admin.errorPassthrough.createFirstRule")),1)])):(n(),r("div",xR,[e("table",_R,[e("thead",kR,[e("tr",null,[e("th",wR,a(t(c)("admin.errorPassthrough.columns.priority")),1),e("th",$R,a(t(c)("admin.errorPassthrough.columns.name")),1),e("th",CR,a(t(c)("admin.errorPassthrough.columns.conditions")),1),e("th",TR,a(t(c)("admin.errorPassthrough.columns.platforms")),1),e("th",SR,a(t(c)("admin.errorPassthrough.columns.behavior")),1),e("th",MR,a(t(c)("admin.errorPassthrough.columns.status")),1),e("th",ER,a(t(c)("admin.errorPassthrough.columns.actions")),1)])]),e("tbody",UR,[(n(!0),r(ve,null,Ue(b.value,x=>(n(),r("tr",{key:x.id,class:"hover:bg-gray-50 dark:hover:bg-dark-700"},[e("td",AR,[e("span",RR,a(x.priority),1)]),e("td",PR,[e("div",IR,a(x.name),1),x.description?(n(),r("div",qR,a(x.description),1)):v("",!0)]),e("td",OR,[e("div",DR,[(n(!0),r(ve,null,Ue(x.error_codes.slice(0,3),H=>(n(),r("span",{key:H,class:"badge badge-danger text-xs"},a(H),1))),128)),x.error_codes.length>3?(n(),r("span",LR," +"+a(x.error_codes.length-3),1)):v("",!0),(n(!0),r(ve,null,Ue(x.keywords.slice(0,1),H=>(n(),r("span",{key:H,class:"badge badge-gray text-xs"},' "'+a(H.length>10?H.substring(0,10)+"...":H)+'" ',1))),128)),x.keywords.length>1?(n(),r("span",VR," +"+a(x.keywords.length-1),1)):v("",!0)]),e("div",zR,a(t(c)("admin.errorPassthrough.matchMode."+x.match_mode)),1)]),e("td",NR,[x.platforms.length===0?(n(),r("div",jR,a(t(c)("admin.errorPassthrough.allPlatforms")),1)):(n(),r("div",BR,[(n(!0),r(ve,null,Ue(x.platforms.slice(0,2),H=>(n(),r("span",{key:H,class:"badge badge-primary text-xs"},a(H),1))),128)),x.platforms.length>2?(n(),r("span",FR," +"+a(x.platforms.length-2),1)):v("",!0)]))]),e("td",HR,[e("div",WR,[e("div",GR,[U(ae,{name:x.passthrough_code?"checkCircle":"xCircle",size:"xs",class:E(x.passthrough_code?"text-green-500":"text-gray-400")},null,8,["name","class"]),e("span",KR,a(t(c)("admin.errorPassthrough.code"))+": "+a(x.passthrough_code?t(c)("admin.errorPassthrough.passthrough"):x.response_code||"-"),1)]),e("div",QR,[U(ae,{name:x.passthrough_body?"checkCircle":"xCircle",size:"xs",class:E(x.passthrough_body?"text-green-500":"text-gray-400")},null,8,["name","class"]),e("span",JR,a(t(c)("admin.errorPassthrough.body"))+": "+a(x.passthrough_body?t(c)("admin.errorPassthrough.passthrough"):t(c)("admin.errorPassthrough.custom")),1)]),x.skip_monitoring?(n(),r("div",YR,[U(ae,{name:"checkCircle",size:"xs",class:"text-yellow-500"}),e("span",XR,a(t(c)("admin.errorPassthrough.skipMonitoring")),1)])):v("",!0)])]),e("td",ZR,[e("button",{onClick:H=>
27ce(x),class:E(["relative inline-flex h-4 w-7 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",x.enabled?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-3 w-3 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",x.enabled?"translate-x-3":"translate-x-0"])},null,2)],10,eP)]),e("td",tP,[e("div",aP,[e("button",{onClick:H=>ke(x),class:"p-1 text-gray-500 hover:text-primary-600 dark:hover:text-primary-400",title:t(c)("common.edit")},[U(ae,{name:"edit",size:"sm"})],8,oP),e("button",{onClick:H=>W(x),class:"p-1 text-gray-500 hover:text-red-600 dark:hover:text-red-400",title:t(c)("common.delete")},[U(ae,{name:"trash",size:"sm"})],8,sP)])])]))),128))])])]))]),U(wa,{show:S.value||M.value,title:M.value?t(c)("admin.errorPassthrough.editRule"):t(c)("admin.errorPassthrough.createRule"),width:"wide",onClose:ee},{footer:Me(()=>[e("div",XP,[e("button",{onClick:ee,type:"button",class:"btn btn-secondary"},a(t(c)("common.cancel")),1),e("button",{onClick:me,disabled:P.value,class:"btn btn-primary"},[P.value?(n(),Ae(ae,{key:0,name:"refresh",size:"sm",class:"mr-1 animate-spin"})):v("",!0),oe(" "+a(M.value?t(c)("common.update"):t(c)("common.create")),1)],8,ZP)])]),default:Me(()=>[e("form",{onSubmit:Bt(me,["prevent"]),class:"space-y-4"},[e("div",rP,[e("div",null,[e("label",lP,a(t(c)("admin.errorPassthrough.form.name")),1),V(e("input",{"onUpdate:modelValue":te[2]||(te[2]=x=>f.name=x),type:"text",required:"",class:"input",placeholder:t(c)("admin.errorPassthrough.form.namePlaceholder")},null,8,iP),[[re,f.name]])]),e("div",null,[e("label",uP,a(t(c)("admin.errorPassthrough.form.priority")),1),V(e("input",{"onUpdate:modelValue":te[3]||(te[3]=x=>f.priority=x),type:"number",min:"0",class:"input"},null,512),[[re,f.priority,void 0,{number:!0}]]),e("p",dP,a(t(c)("admin.errorPassthrough.form.priorityHint")),1)])]),e("div",null,[e("label",cP,a(t(c)("admin.errorPassthrough.form.description")),1),V(e("input",{"onUpdate:modelValue":te[4]||(te[4]=x=>f.description=x),type:"text",class:"input",placeholder:t(c)("admin.errorPassthrough.form.descriptionPlaceholder")},null,8,pP),[[re,f.description]])]),e("div",mP,[e("h4",gP,a(t(c)("admin.errorPassthrough.form.matchConditions")),1),e("div",vP,[e("div",null,[e("label",yP,a(t(c)("admin.errorPassthrough.form.errorCodes")),1),V(e("input",{"onUpdate:modelValue":te[5]||(te[5]=x=>_.value=x),type:"text",class:"input text-sm",placeholder:t(c)("admin.errorPassthrough.form.errorCodesPlaceholder")},null,8,bP),[[re,_.value]]),e("p",hP,a(t(c)("admin.errorPassthrough.form.errorCodesHint")),1)]),e("div",null,[e("label",fP,a(t(c)("admin.errorPassthrough.form.keywords")),1),V(e("textarea",{"onUpdate:modelValue":te[6]||(te[6]=x=>y.value=x),rows:"2",class:"input font-mono text-xs",placeholder:t(c)("admin.errorPassthrough.form.keywordsPlaceholder")},null,8,xP),[[re,y.value]]),e("p",_P,a(t(c)("admin.errorPassthrough.form.keywordsHint")),1)])]),e("div",kP,[e("label",wP,a(t(c)("admin.errorPassthrough.form.matchMode")),1),e("div",$P,[(n(!0),r(ve,null,Ue(I.value,x=>(n(),r("label",{key:x.value,class:"flex items-start gap-2 cursor-pointer"},[V(e("input",{type:"radio",value:x.value,"onUpdate:modelValue":te[7]||(te[7]=H=>f.match_mode=H),class:"mt-0.5 h-3.5 w-3.5 border-gray-300 text-primary-600 focus:ring-primary-500"},null,8,CP),[[va,f.match_mode]]),e("div",TP,[e("span",SP,a(x.label),1),e("p",MP,a(x.description),1)])]))),128))])]),e("div",EP,[e("label",UP,a(t(c)("admin.errorPassthrough.form.platforms")),1),e("div",AP,[(n(),r(ve,null,Ue(q,x=>e("label",{key:x.value,class:"inline-flex items-center gap-1.5"},[V(e("input",{type:"checkbox",value:x.value,"onUpdate:modelValue":te[8]||(te[8]=H=>f.platforms=H),class:"h-3.5 w-3.5 rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,8,RP),[[bt,f.platforms]]),e("span",PP,a(x.label),1)])),64))]),e("p",IP,a(t(c)("admin.errorPassthrough.form.platformsHint")),1)])]),e("div",qP,[e("h4",OP,a(t(c)("admin.errorPassthrough.form.responseBehavior")),1),e("div",DP,[e("div",null,[e("label",LP,[V(e("input",{type:"checkbox","onUpdate:modelValue":te[9]||(te[9]=x=>f.passthrough_code=x),class:"h-3.5 w-3.5 rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,f.passthrough_code]]),e("span",VP,a(t(c)("admin.errorPassthrough.form.passthroughCode")),1)]),f.passthrough_code?v("",!0):(n(),r("div",zP,[e("label",NP,a(t(c)("admin.errorPassthrough.form.responseCode")),1),V(e("input",{"onUpdate:modelValue":te[10]||(te[10
27]=x=>f.response_code=x),type:"number",min:"100",max:"599",class:"input text-sm",placeholder:"422"},null,512),[[re,f.response_code,void 0,{number:!0}]])]))]),e("div",null,[e("label",jP,[V(e("input",{type:"checkbox","onUpdate:modelValue":te[11]||(te[11]=x=>f.passthrough_body=x),class:"h-3.5 w-3.5 rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,f.passthrough_body]]),e("span",BP,a(t(c)("admin.errorPassthrough.form.passthroughBody")),1)]),f.passthrough_body?v("",!0):(n(),r("div",FP,[e("label",HP,a(t(c)("admin.errorPassthrough.form.customMessage")),1),V(e("input",{"onUpdate:modelValue":te[12]||(te[12]=x=>f.custom_message=x),type:"text",class:"input text-sm",placeholder:t(c)("admin.errorPassthrough.form.customMessagePlaceholder")},null,8,WP),[[re,f.custom_message]])]))])])]),e("div",GP,[V(e("input",{type:"checkbox","onUpdate:modelValue":te[13]||(te[13]=x=>f.skip_monitoring=x),class:"h-3.5 w-3.5 rounded border-gray-300 text-yellow-600 focus:ring-yellow-500"},null,512),[[bt,f.skip_monitoring]]),e("span",KP,a(t(c)("admin.errorPassthrough.form.skipMonitoring")),1)]),e("p",QP,a(t(c)("admin.errorPassthrough.form.skipMonitoringHint")),1),e("div",JP,[V(e("input",{type:"checkbox","onUpdate:modelValue":te[14]||(te[14]=x=>f.enabled=x),class:"h-3.5 w-3.5 rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,512),[[bt,f.enabled]]),e("span",YP,a(t(c)("admin.errorPassthrough.form.enabled")),1)])],32)]),_:1},8,["show","title"]),U(so,{show:L.value,title:t(c)("admin.errorPassthrough.deleteRule"),message:t(c)("admin.errorPassthrough.deleteConfirm",{name:(N=R.value)==null?void 0:N.name}),"confirm-text":t(c)("common.delete"),"cancel-text":t(c)("common.cancel"),danger:!0,onConfirm:le,onCancel:te[15]||(te[15]=x=>L.value=!1)},null,8,["show","title","message","confirm-text","cancel-text"])]}),_:1},8,["show","title"]))}}),tI={class:"space-y-4"},aI={class:"flex items-center justify-between"},oI={class:"text-sm text-gray-500 dark:text-gray-400"},sI={key:0,class:"flex items-center justify-center py-8"},nI={key:1,class:"py-8 text-center"},rI={class:"mx-auto mb-4 flex h-12 w-12 items-center justify-center rounded-full bg-gray-100 dark:bg-dark-700"},lI={class:"mb-1 text-sm font-medium text-gray-900 dark:text-white"},iI={class:"text-sm text-gray-500 dark:text-gray-400"},uI={key:2,class:"max-h-96 overflow-auto rounded-lg border border-gray-200 dark:border-dark-600"},dI={class:"min-w-full divide-y divide-gray-200 dark:divide-dark-700"},cI={class:"sticky top-0 bg-gray-50 dark:bg-dark-700"},pI={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},mI={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},gI={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},vI={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},yI={class:"px-3 py-2 text-left text-xs font-medium uppercase text-gray-500 dark:text-gray-400"},bI={class:"divide-y divide-gray-200 bg-white dark:divide-dark-700 dark:bg-dark-800"},hI={class:"px-3 py-2"},fI={class:"font-medium text-gray-900 dark:text-white text-sm"},xI={class:"px-3 py-2"},_I={key:0,class:"text-sm text-gray-500 dark:text-gray-400 max-w-xs truncate"},kI={key:1,class:"text-xs text-gray-400 dark:text-gray-600"},wI={class:"px-3 py-2"},$I={class:"px-3 py-2"},CI={key:0,class:"flex flex-wrap gap-1"},TI={key:0,class:"text-xs text-gray-500"},SI={key:1,class:"text-xs text-gray-400 dark:text-gray-600"},MI={class:"px-3 py-2"},EI={class:"flex items-center gap-1"},UI=["onClick","title"],AI=["onClick","title"],RI={class:"flex justify-end"},PI={class:"input-label"},II=["placeholder"],qI={class:"mt-1 flex items-center gap-2"},OI={class:"text-xs text-gray-500 dark:text-gray-400"},DI={href:"https://tls.sub2api.org",target:"_blank",rel:"noopener noreferrer",class:"text-primary-600 hover:text-primary-700 dark:text-primary-400 dark:hover:text-primary-300 underline"},LI={class:"grid grid-cols-2 gap-4"},VI={class:"input-label"},zI=["placeholder"],NI={class:"input-label"},jI=["placeholder"],BI={class:"flex items-center gap-3"},FI={class:"text-sm font-medium text-gray-700 dark:text-gray-300"},HI={class:"text-xs text-gray-500 dark:text-gray-400"},WI={class:"grid grid-cols-2 gap-4"},GI={class:"input-label text-xs"},KI={class:"input-hint text-xs"},QI={class:"input-label text-xs"},JI={class:"input-hint text-xs"},YI={class:"input-label text-xs"},XI={class:"input-label text-xs"},ZI={class:"input-label text-xs"},eq={class:"input-label text-xs"},tq={class:"input-label text-xs"},aq={class:"input-label text-xs"},oq={class:"input-label text-xs"},sq={class:"flex justify-end gap-3"},nq=["disabled"],rq=ut({__name:"TLSFingerprintProfilesModal",props:{show:{type:Boolean}},emits:["close"],setup(i,{emit:m}){const o=i,{t:c}=dt(),s=pa(),b=p([]),$=p(!1),P=p(!1),S=p(!1),M=p(!1),L=p(!1),F=p(null),R=p(null),_=p(""),y=ya({cipher_suites:"",curves:"",point_formats:"",signature_algorithms:"",alpn_protocols:"",supported_versions:"",key_share_groups:"",psk_modes:"",extensions:""}),f=ya({name:"",description:null,enable_grease:!1});pt(()=>o.show,N=>{N&&I()});const I=async()=>{$.value=!0;try{b.value=await ye.tlsFingerprintProfiles.list()}catch(N){s.showError(c("admin.tlsFingerprintProfiles.loadFailed")),console.error("Error loading TLS fingerprint profiles:",N)}finally{$.value=!1}},q=()=>{f.name="",f.description=null,f.enable_grease=!1,y.cipher_suites="",y.curves="",y.point_formats="",y.signature_algorithms="",y.alpn_protocols="",y.supported_versions="",y.key_share_groups="",y.psk_modes="",y.extensions="",_.value=""},D=()=>{const N=_.value.trim();if(!N)return;const x=N.split(`
28`);let H=!1;for(const K of x){const be=K.trim();if(!be||be.startsWith("#"))continue;const fe=be.match(/^(\w+):\s*(.+)$/);if(!fe)continue;const[,$e,he]=fe,Oe=he.trim();switch($e){case"name":{const Re=Oe.replace(/^["']|["']$/g,"");Re&&(f.name=Re,H=!0);break}case"enable_grease":f.enable_grease=Oe==="true";break;case"cipher_suites":case"curves":case"point_formats":case"signature_algorithms":case"supp
28orted_versions":case"key_share_groups":case"psk_modes":case"extensions":{const Re=Oe.match(/^\[(.*)?\]$/);if(Re){const je=Re[1]||"";y[$e]=je.split(",").map(Xe=>Xe.trim()).filter(Xe=>Xe.length>0).join(", ")}break}case"alpn_protocols":{const Re=Oe.match(/^\[(.*)?\]$/);if(Re){const je=Re[1]||"";y.alpn_protocols=je.split(",").map(Xe=>Xe.trim().replace(/^["']|["']$/g,"")).filter(Xe=>Xe.length>0).join(", ")}break}}}H?s.showSuccess(c("admin.tlsFingerprintProfiles.form.yamlParsed")):s.showError(c("admin.tlsFingerprintProfiles.form.yamlParseFailed"))},z=()=>{setTimeout(()=>D(),50)},ee=()=>{S.value=!1,M.value=!1,F.value=null,q()},ke=N=>N.trim()?N.split(",").map(x=>x.trim()).filter(x=>x.length>0).map(x=>x.startsWith("0x")||x.startsWith("0X")?parseInt(x,16):parseInt(x,10)).filter(x=>!isNaN(x)):[],W=N=>N.trim()?N.split(",").map(x=>x.trim()).filter(x=>x.length>0):[],se=N=>"0x"+N.toString(16).padStart(4,"0"),G=N=>(N??[]).map(se).join(", "),me=N=>(N??[]).join(", "),ce=N=>{F.value=N,f.name=N.name,f.description=N.description,f.enable_grease=N.enable_grease,y.cipher_suites=G(N.cipher_suites),y.curves=me(N.curves),y.point_formats=me(N.point_formats),y.signature_algorithms=G(N.signature_algorithms),y.alpn_protocols=(N.alpn_protocols??[]).join(", "),y.supported_versions=G(N.supported_versions),y.key_share_groups=me(N.key_share_groups),y.psk_modes=me(N.psk_modes),y.extensions=G(N.extensions),M.value=!0},le=N=>{R.value=N,L.value=!0},ne=async()=>{var N,x,H;if(!f.name.trim()){s.showError(c("admin.tlsFingerprintProfiles.form.name")+" "+c("common.required"));return}P.value=!0;try{const K={name:f.name.trim(),description:((N=f.description)==null?void 0:N.trim())||null,enable_grease:f.enable_grease,cipher_suites:ke(y.cipher_suites),curves:ke(y.curves),point_formats:ke(y.point_formats),signature_algorithms:ke(y.signature_algorithms),alpn_protocols:W(y.alpn_protocols),supported_versions:ke(y.supported_versions),key_share_groups:ke(y.key_share_groups),psk_modes:ke(y.psk_modes),extensions:ke(y.extensions)};M.value&&F.value?(await ye.tlsFingerprintProfiles.update(F.value.id,K),s.showSuccess(c("admin.tlsFingerprintProfiles.updateSuccess"))):(await ye.tlsFingerprintProfiles.create(K),s.showSuccess(c("admin.tlsFingerprintProfiles.createSuccess"))),ee(),I()}catch(K){s.showError(((H=(x=K.response)==null?void 0:x.data)==null?void 0:H.detail)||c("admin.tlsFingerprintProfiles.saveFailed")),console.error("Error saving TLS fingerprint profile:",K)}finally{P.value=!1}},te=async()=>{var N,x;if(R.value)try{await ye.tlsFingerprintProfiles.delete(R.value.id),s.showSuccess(c("admin.tlsFingerprintProfiles.deleteSuccess")),L.value=!1,R.value=null,I()}catch(H){s.showError(((x=(N=H.response)==null?void 0:N.data)==null?void 0:x.detail)||c("admin.tlsFingerprintProfiles.deleteFailed")),console.error("Error deleting TLS fingerprint profile:",H)}};return(N,x)=>(n(),Ae(wa,{show:i.show,title:t(c)("admin.tlsFingerprintProfiles.title"),width:"wide",onClose:x[16]||(x[16]=H=>N.$emit("close"))},{footer:Me(()=>[e("div",RI,[e("button",{onClick:x[1]||(x[1]=H=>N.$emit("close")),class:"btn btn-secondary"},a(t(c)("common.close")),1)])]),default:Me(()=>{var H;return[e("div",tI,[e("div",aI,[e("p",oI,a(t(c)("admin.tlsFingerprintProfiles.description")),1),e("button",{onClick:x[0]||(x[0]=K=>S.value=!0),class:"btn btn-primary btn-sm"},[U(ae,{name:"plus",size:"sm",class:"mr-1"}),oe(" "+a(t(c)("admin.tlsFingerprintProfiles.createProfile")),1)])]),$.value?(n(),r("div",sI,[U(ae,{name:"refresh",size:"lg",class:"animate-spin text-gray-400"})])):b.value.length===0?(n(),r("div",nI,[e("div",rI,[U(ae,{name:"shield",size:"lg",class:"text-gray-400"})]),e("h4",lI,a(t(c)("admin.tlsFingerprintProfiles.noProfiles")),1),e("p",iI,a(t(c)("admin.tlsFingerprintProfiles.createFirstProfile")),1)])):(n(),r("div",uI,[e("table",dI,[e("thead",cI,[e("tr",null,[e("th",pI,a(t(c)("admin.tlsFingerprintProfiles.columns.name")),1),e("th",mI,a(t(c)("admin.tlsFingerprintProfiles.columns.description")),1),e("th",gI,a(t(c)("admin.tlsFingerprintProfiles.columns.grease")),1),e("th",vI,a(t(c)("admin.tlsFingerprintProfiles.columns.alpn")),1),e("th",yI,a(t(c)("admin.tlsFingerprintProfiles.columns.actions")),1)])]),e("tbody",bI,[(n(!0),r(ve,null,Ue(b.value,K=>{var be;return n(),r("tr",{key:K.id,class:"hover:bg-gray-50 dark:hover:bg-dark-700"},[e("td",hI,[e("div",fI,a(K.name),1)]),e("td",xI,[K.description?(n(),r("div",_I,a(K.description),1)):(n(),r("div",kI,"—"))]),e("td",wI,[U(ae,{name:K.enable_grease?"check":"lock",size:"sm",class:E(K.enable_grease?"text-green-500":"text-gray-400")},null,8,["name","class"])]),e("td",$I,[(be=K.alpn_protocols)!=null&&be.length?(n(),r("div",CI,[(n(!0),r(ve,null,Ue(K.alpn_protocols.slice(0,3),fe=>(n(),r("span",{key:fe,class:"badge badge-primary text-xs"},a(fe),1))),128)),K.alpn_protocols.length>3?(n(),r("span",TI," +"+a(K.alpn_protocols.length-3),1)):v("",!0)])):(n(),r("div",SI,"—"))]),e("td",MI,[e("div",EI,[e("button",{onClick:fe=>ce(K),class:"p-1 text-gray-500 hover:text-primary-600 dark:hover:text-primary-400",title:t(c)("common.edit")},[U(ae,{name:"edit",size:"sm"})],8,UI),e("button",{onClick:fe=>le(K),class:"p-1 text-gray-500 hover:text-red-600 dark:hover:text-red-400",title:t(c)("common.delete")},[U(ae,{name:"trash",size:"sm"})],8,AI)])])])}),128))])])]))]),U(wa,{show:S.value||M.value,title:M.value?t(c)("admin.tlsFingerprintProfiles.editProfile"):t(c)("admin.tlsFingerprintProfiles.createProfile"),width:"wide","z-index":60,onClose:ee},{footer:Me(()=>[e("div",sq,[e("button",{onClick:ee,type:"button",class:"btn btn-secondary"},a(t(c)("common.cancel")),1),e("button",{onClick:ne,disabled:P.value,class:"btn btn-primary"},[P.value?(n(),Ae(ae,{key:0,name:"refresh",size:"sm",class:"mr-1 animate-spin"})):v("",!0),oe(" "+a(M.value?t(c)("common.update"):t(c)("common.create")),1)],8,nq)])]),default:Me(()=>[e("form",{onSubmit:Bt(ne,["prevent"]),class:"space-y-4"},[e("div",null,[e("label",PI,a(t(c)("admin.tlsFingerprintProfiles.form.pasteYaml")),1),V(e("textarea",{"onUpdate:modelValue":x[2]||(x[2]=K=>_.value=K),rows:"4",class:"input font-mono text-xs",placeholder:t(c)("admin.tlsFingerprintProfiles.form.pasteYamlPlaceholder"),onPaste:z},null,40,II),[[re,_.value]]),e("div",qI,[e("button",{type:"button",onClick:D,class:"btn btn-secondary btn-sm"},a(t(c)("admin.tlsFingerprintProfiles.form.parseYaml")),1),e("p",OI,[oe(a(t(c)("admin.tlsFingerprintProfiles.form.pasteYamlHint"))+" ",1),e("a",DI,a(t(c)("admin.tlsFingerprintProfiles.form.openCollector")),1)])])]),x[17]||(x[17]=e("hr",{class:"border-gray-200 dark:border-dark-600"},null,-1)),e("div",LI,[e("div",null,[e("label",VI,a(t(c)("admin.tlsFingerprintProfiles.form.name")),1),V(e("input",{"onUpdate:modelValue":x[3]||(x[3]=K=>
28f.name=K),type:"text",required:"",class:"input",placeholder:t(c)("admin.tlsFingerprintProfiles.form.namePlaceholder")},null,8,zI),[[re,f.name]])]),e("div",null,[e("label",NI,a(t(c)("admin.tlsFingerprintProfiles.form.description")),1),V(e("input",{"onUpdate:modelValue":x[4]||(x[4]=K=>f.description=K),type:"text",class:"input",placeholder:t(c)("admin.tlsFingerprintProfiles.form.descriptionPlaceholder")},null,8,jI),[[re,f.description]])])]),e("div",BI,[e("button",{type:"button",onClick:x[5]||(x[5]=K=>f.enable_grease=!f.enable_grease),class:E(["relative inline-flex h-5 w-9 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2",f.enable_grease?"bg-primary-600":"bg-gray-200 dark:bg-dark-600"])},[e("span",{class:E(["pointer-events-none inline-block h-4 w-4 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",f.enable_grease?"translate-x-4":"translate-x-0"])},null,2)],2),e("div",null,[e("span",FI,a(t(c)("admin.tlsFingerprintProfiles.form.enableGrease")),1),e("p",HI,a(t(c)("admin.tlsFingerprintProfiles.form.enableGreaseHint")),1)])]),e("div",WI,[e("div",null,[e("label",GI,a(t(c)("admin.tlsFingerprintProfiles.form.cipherSuites")),1),V(e("textarea",{"onUpdate:modelValue":x[6]||(x[6]=K=>y.cipher_suites=K),rows:"2",class:"input font-mono text-xs",placeholder:"0x1301, 0x1302, 0xc02c"},null,512),[[re,y.cipher_suites]]),e("p",KI,a(t(c)("admin.tlsFingerprintProfiles.form.cipherSuitesHint")),1)]),e("div",null,[e("label",QI,a(t(c)("admin.tlsFingerprintProfiles.form.curves")),1),V(e("textarea",{"onUpdate:modelValue":x[7]||(x[7]=K=>y.curves=K),rows:"2",class:"input font-mono text-xs",placeholder:"29, 23, 24"},null,512),[[re,y.curves]]),e("p",JI,a(t(c)("admin.tlsFingerprintProfiles.form.curvesHint")),1)]),e("div",null,[e("label",YI,a(t(c)("admin.tlsFingerprintProfiles.form.signatureAlgorithms")),1),V(e("textarea",{"onUpdate:modelValue":x[8]||(x[8]=K=>y.signature_algorithms=K),rows:"2",class:"input font-mono text-xs",placeholder:"0x0403, 0x0804, 0x0401"},null,512),[[re,y.signature_algorithms]])]),e("div",null,[e("label",XI,a(t(c)("admin.tlsFingerprintProfiles.form.supportedVersions")),1),V(e("textarea",{"onUpdate:modelValue":x[9]||(x[9]=K=>y.supported_versions=K),rows:"2",class:"input font-mono text-xs",placeholder:"0x0304, 0x0303"},null,512),[[re,y.supported_versions]])]),e("div",null,[e("label",ZI,a(t(c)("admin.tlsFingerprintProfiles.form.keyShareGroups")),1),V(e("textarea",{"onUpdate:modelValue":x[10]||(x[10]=K=>y.key_share_groups=K),rows:"2",class:"input font-mono text-xs",placeholder:"29, 23"},null,512),[[re,y.key_share_groups]])]),e("div",null,[e("label",eq,a(t(c)("admin.tlsFingerprintProfiles.form.extensions")),1),V(e("textarea",{"onUpdate:modelValue":x[11]||(x[11]=K=>y.extensions=K),rows:"2",class:"input font-mono text-xs",placeholder:"0x0000, 0x0005, 0x000a"},null,512),[[re,y.extensions]])]),e("div",null,[e("label",tq,a(t(c)("admin.tlsFingerprintProfiles.form.pointFormats")),1),V(e("textarea",{"onUpdate:modelValue":x[12]||(x[12]=K=>y.point_formats=K),rows:"2",class:"input font-mono text-xs",placeholder:"0"},null,512),[[re,y.point_formats]])]),e("div",null,[e("label",aq,a(t(c)("admin.tlsFingerprintProfiles.form.pskModes")),1),V(e("textarea",{"onUpdate:modelValue":x[13]||(x[13]=K=>y.psk_modes=K),rows:"2",class:"input font-mono text-xs",placeholder:"1"},null,512),[[re,y.psk_modes]])])]),e("div",null,[e("label",oq,a(t(c)("admin.tlsFingerprintProfiles.form.alpnProtocols")),1),V(e("textarea",{"onUpdate:modelValue":x[14]||(x[14]=K=>y.alpn_protocols=K),rows:"2",class:"input font-mono text-xs",placeholder:"h2, http/1.1"},null,512),[[re,y.alpn_protocols]])])],32)]),_:1},8,["show","title"]),U(so,{show:L.value,title:t(c)("admin.tlsFingerprintProfiles.deleteProfile"),message:t(c)("admin.tlsFingerprintProfiles.deleteConfirmMessage",{name:(H=R.value)==null?void 0:H.name}),"confirm-text":t(c)("common.delete"),"cancel-text":t(c)("common.cancel"),danger:!0,onConfirm:te,onCancel:x[15]||(x[15]=K=>L.value=!1)},null,8,["show","title","message","confirm-text","cancel-text"])]}),_:1},8,["show","title"]))}}),lq=(i,m,o,c={})=>{const s=c.viewportPadding??16,b=c.gap??8,$=c.maxWidth??320,P=c.maxHeightRatio??.7,S=c.mobileBreakpoint??768,M=c.minComfortableHeight??240,L=Math.max(0,m-s*2),F=Math.min($,L),R=m<S?s:Math.max(s,Math.min(i.right-F,m-F-s)),_=Math.max(0,Math.floor(o*P)),y=Math.max(0,o-i.bottom-b-s),f=Math.max(0,i.top-b-s),I=y<Math.min(M,_)&&f>y,q=Math.min(_,I?f:y);return{top:I?null:i.bottom+b,bottom:I?o-i.top+b:null,left:R,width:F,maxHeight:q}},iq={class:"flex flex-wrap-reverse items-start justify-between gap-3"},uq=["title"],dq={class:"hidden md:inline"},cq={key:0,class:"absolute right-0 z-50 mt-2 w-56 origin-top-right rounded-lg border border-gray-200 bg-white shadow-lg dark:border-dark-700 dark:bg-dark-800"},pq={class:"p-2"},mq=["onClick"],gq=["title","aria-expanded"],vq={class:"hidden md:inline"},yq={class:"px-2 py-2"},bq={class:"text-xs font-semibold uppercase tracking-wide text-gray-400 dark:text-gray-500"},hq={class:"account-tools-menu-icon bg-blue-50 text-blue-600 dar
28k:bg-blue-900/30 dark:text-blue-300"},fq={class:"flex-1 text-left"},xq={class:"account-tools-menu-icon bg-emerald-50 text-emerald-600 dark:bg-emerald-900/30 dark:text-emerald-300"},_q={class:"flex-1 text-left"},kq={class:"account-tools-menu-icon bg-violet-50 text-violet-600 dark:bg-violet-900/30 dark:text-violet-300"},wq={class:"flex-1 text-left"},$q={key:0,class:"rounded-full bg-primary-100 px-2 py-0.5 text-xs font-medium text-primary-700 dark:bg-primary-900/40 dark:text-primary-300"},Cq={class:"px-2 py-2"},Tq={class:"text-xs font-semibold uppercase tracking-wide text-gray-400 dark:text-gray-500"},Sq={class:"account-tools-menu-icon bg-amber-50 text-amber-600 dark:bg-amber-900/30 dark:text-amber-300"},Mq={class:"flex-1 text-left"},Eq={class:"account-tools-menu-icon bg-slate-100 text-slate-600 dark:bg-slate-700 dark:text-slate-200"},Uq={class:"flex-1 text-left"},Aq={class:"px-2 py-2"},Rq={class:"flex items-center justify-between gap-3"},Pq={class:"text-xs font-semibold uppercase tracking-wide text-gray-400 dark:text-gray-500"},Iq={class:"grid grid-cols-1 gap-1"},qq=["onClick"],Oq={class:"truncate"},Dq={key:0,class:"mt-2 flex items-center justify-between rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-sm text-amber-800 dark:border-amber-700/40 dark:bg-amber-900/20 dark:text-amber-200"},Lq=["checked"],Vq=["checked","onChange"],zq={class:"font-mono text-xs text-gray-500 dark:text-gray-400"},Nq={class:"flex flex-col"},jq=["href"],Bq={key:1,class:"font-medium text-gray-900 dark:text-white"},Fq=["title"],Hq=["title"],Wq={key:1,class:"text-sm text-gray-400 dark:text-dark-500"},Gq={class:"flex min-w-0 flex-col gap-1"},Kq={class:"flex flex-wrap items-center gap-1"},Qq=["title"],Jq={class:"flex items-center gap-1.5"},Yq=["onClick","disabled","title"],Xq={class:"flex items-center"},Zq={class:"flex flex-col gap-1"},eO={key:0,class:"flex items-center gap-2"},tO={class:"text-sm text-gray-700 dark:text-gray-300"},aO={key:0,class:"text-xs text-gray-500 dark:text-gray-400"},oO={key:1,class:"text-sm text-gray-400 dark:text-dark-500"},sO={key:2,class:"flex items-center gap-2 text-xs"},nO={class:"text-gray-600 dark:text-gray-300"},rO={key:3,class:"flex items-center gap-1"},lO=["title"],iO=["onClick"],uO={class:"text-sm font-mono text-gray-700 dark:text-gray-300"},dO={class:"flex items-center gap-1"},cO={class:"text-sm text-gray-700 dark:text-gray-300"},pO={class:"flex items-center"},mO={key:0,class:"flex min-w-[7rem] flex-col gap-0.5 font-mono text-[11px] leading-4"},gO=["title"],vO={class:"max-w-[4.75rem] truncate text-gray-500 dark:text-dark-400"},yO={class:"text-primary-700 dark:text-primary-300"},bO={key:1,class:"text-sm text-gray-400 dark:text-dark-500"},hO={class:"text-sm text-gray-500 dark:text-dark-400"},fO={class:"text-sm text-gray-500 dark:text-dark-400"},xO={class:"flex flex-col items-start gap-1"},_O={class:"text-sm text-gray-500 dark:text-dark-400"},kO={key:0,class:"flex items-center gap-1"},wO={key:0,class:"inline-flex items-center rounded-md bg-amber-100 px-2 py-0.5 text-xs font-medium text-amber-700 dark:bg-amber-900/30 dark:text-amber-300"},$O={key:1,class:"inline-flex items-center rounded-md bg-emerald-100 px-2 py-0.5 text-xs font-medium text-emerald-700 dark:bg-emerald-900/30 dark:text-emerald-300"},CO={class:"flex items-center gap-1"},TO=["onClick"],SO={class:"text-xs"},MO=["onClick"],EO={class:"text-xs"},UO=["onClick"],AO={class:"text-xs"},RO={class:"flex items-center gap-2 text-sm text-gray-700 dark:text-gray-300"},nn="account-hidden-columns",Ns="account-hidden-columns-version",js="scheduler-score-hidden-by-default",In="account-table-sort",qn="account-auto-refresh",PO=15e3,IO="ungrouped",qO="__unset__",OO=ut({__name:"AccountsView",setup(i){const{t:m}=dt(),o=pa(),c=gn(),s=p([]),b=p([]),$=p(null),P=p(null),S=w(()=>[...new Set(Ut.value.filter(T=>qe(T.id)).map(T=>T.platform))]),M=w(()=>[...new Set(Ut.value.filter(T=>qe(T.id)).map(T=>T.type))]),L=p(!1),F=p(!1),R=p(!1),_=p(!1),y=p(!1),f=p(!0),I=p(!1),q=p(null),D=p(!1),z=p(!1),ee=p(!1),ke=p(!1),W=p(!1),se=p(!1),G=p(!1),me=p(!1),ce=p(null),le=p(null),ne=p(null),te=p(null),N=p(null),x=p(null),H=p(null),K=p(!1),be=p(null),fe=p([]),$e=p(null),he=ya({show:!1,acc:null,pos:null}),Oe=p(!1),Re=ya(new Set),je=p(void 0),Xe=p(Date.now());let Ze=-1;un(()=>{Xe.value=Date.now()},6e4);const it=p(!1),ot=p(null),_t=p(null),tt=ya({top:null,bottom:null,left:16,width:320,maxHeight:0}),Ke=w(()=>({top:tt.top==null?"auto":`${tt.top}
28px`,bottom:tt.bottom==null?"auto":`${tt.bottom}px`,left:`${tt.left}px`,width:`${tt.width}px`})),we=ya(new Set),ie=["today_stats","proxy","notes","priority","scheduler_score","rate_multiplier"],Ce=new Set(["id","name","status","schedulable","priority","rate_multiplier","upstream_billing_rate","last_used_at","created_at","expires_at"]),Je=ya((()=>{const g={sort_by:"name",sort_order:"asc"};try{const T=localStorage.getItem(In);if(!T)return g;const ue=JSON.parse(T),Te=typeof ue.key=="string"?ue.key:"";return Ce.has(Te)?{sort_by:Te,sort_order:ue.order==="desc"?"desc":"asc"}:g}catch{return g}})()),st=p(!1),vt=p(null),At=[5,10,15,30],Ye=p(!1),$t=p(30),mt=p(0),ht=p(null),Lt=p(!1),Ft=p(0),kt=p(!1),Ht=p({}),qt=p(!1),Ct=p(null),Ot=p(0),ft=p(!1),Dt=p(0),St=()=>({requests:0,tokens:0,cost:0,standard_cost:0,user_cost:0}),Mt=async()=>{if(we.has("today_stats")&&we.has("usage")){qt.value=!1,Ct.value=null;return}const g=Ut.value.map(ue=>ue.id),T=++Ot.value;if(g.length===0){Ht.value={},Ct.value=null,qt.value=!1;return}qt.value=!0,Ct.value=null;try{const ue=await ye.accounts.getBatchTodayStats(g);if(T!==Ot.value)return;const Te=ue.stats??{},Le={};for(const Y of g){const Se=String(Y);Le[Se]=Te[Se]??St()}Ht.value=Le}catch(ue){if(T!==Ot.value)return;Ct.value="Failed",console.error("Failed to load account today stats:",ue)}finally{T===Ot.value&&(qt.value=!1)}},oa=g=>g===5?m("admin.accounts.refreshInterval5s"):g===10?m("admin.accounts.refreshInterval10s"):g===15?m("admin.accounts.refreshInterval15s"):g===30?m("admin.accounts.refreshInterval30s"):`${g}s`,sa=g=>{const T=Number(g);return Number.isFinite(T)?T.toFixed(6).replace(/\.?0+$/,""):"-"},He=g=>g?g.sticky_score_infinity?"+∞":sa(g.sticky_score):"-",$a=g=>{const T=Array.isArray(g.scheduler_scores)?g.scheduler_scores.filter(ue=>ue.group_id!=null):[];return T.length?T:g.scheduler_score?[{group_id:null,...g.scheduler_score}]:[]},la=g=>"group_name"in g&&g.group_name?g.group_name:"group_id"in g&&g.group_id!=null?`#${g.group_id}`:m("admin.accounts.schedulerScore.ungrouped"),ia=()=>{try{const g=localStorage.getItem(nn);g?(JSON.parse(g).forEach(ue=>{we.add(ue)}),localStorage.getItem(Ns)!==js&&(we.add("scheduler_score"),localStorage.setItem(nn,JSON.stringify([...we])),localStorage.setItem(Ns,js))):(ie.forEach(T=>{we.add(T)}),localStorage.setItem(Ns,js))}catch(g){console.error("Failed to load saved columns:",g),ie.forEach(T=>{we.add(T)})}},Kt=()=>{try{localStorage.setItem(nn,JSON.stringify([...we])),localStorage.setItem(Ns,js)}catch(g){console.error("Failed to save columns:",g)}},Et=()=>{try{const g=localStorage.getItem(qn);if(!g)return;const T=JSON.parse(g);Ye.value=T.enabled===!0;const ue=Number(T.interval_seconds);At.includes(ue)&&($t.value=ue)}catch(g){console.error("Failed to load saved auto refresh settings:",g)}},Qt=()=>{try{localStorage.setItem(qn,JSON.stringify({enabled:Ye.value,interval_seconds:$t.value}))}catch(g){console.error("Failed to save auto refresh settings:",g)}};typeof window<"u"&&(ia(),Et());const Ca=g=>{Ye.value=g,Qt(),g?(mt.value=$t.value,Oa()):(Eo(),mt.value=0)},Nt=g=>{$t.value=g,Qt(),Ye.value&&(mt.value=g)},na=g=>{const T=we.has(g);we.has(g)?we.delete(g):we.add(g),Kt(),(g==="today_stats"||g==="usage")&&T&&Mt().catch(ue=>{console.error("Failed to load account today stats after showing column:",ue)}),g==="scheduler_score"&&(Vt(),ua().catch(ue=>{console.error("Failed to reload accounts after toggling scheduler score column:",ue)}))},da=g=>!we.has(g),Rt=()=>da("scheduler_score"),Vt=()=>{const g=yt;g.include_scheduler_score=Rt()?"1":"0"},{items:Ut,loading:wt,params:yt,pagination:ct,load:ea,reload:ca,debouncedReload:Jt,handlePageChange:zt,handlePageSizeChange:O}=Vr({fetchFn:ye.accounts.list,initialParams:{platform:"",type:"",status:"",privacy_mode:"",group:"",search:"",include_scheduler_score:Rt()?"1":"0",sort_by:Je.sort_by,sort_order:Je.sort_order}}),{selectedIds:Q,allVisibleSelected:pe,isSelected:qe,setSelectedIds:at,select:Ne,deselect:de,toggle:B,clear:J,removeMany:Be,toggleVisible:Ie,selectVisible:Ge,batchUpdate:Wt}=gr({rows:Ut,getId:g=>g.id});dr($,{isSelected:qe,select:Ne,deselect:de,batchUpdate:Wt},{getVirtualizer:()=>{var g;return((g=P.value)==null?void 0:g.virtualizer)??null},getSortedData:()=>{var g;return((g=P.value)==null?void 0:g.sortedData)??Ut.value},getRowId:g=>g.id});const no=()=>{ht.value=null},So=p(!0);function ma(){Je.sort_by==="upstream_billing_rate"&&(Ze=Math.floor(Date.now()/6e4))}const ua=async()=>{const g=yt;ma(),Vt(),kt.value=!1,no(),ft.value=!1,So.value&&(g.lite="1"),await ea(),So.value&&(So.value=!1,delete g.lite),await Mt()},Pt=async()=>{ma(),Vt(),kt.value=!1,no(),ft.value=!1,await ca(),await Mt()},ba=async(g=!1)=>
28{if(Je.sort_by!=="upstream_billing_rate")return;const T=Math.floor(Xe.value/6e4);if(!(!g&&Ze===T)){Ze=T;try{await Pt()}catch(ue){console.error("Failed to refresh upstream billing sort:",ue)}}},Na=()=>{Vt(),kt.value=!1,no(),ft.value=!0,Jt()},Ua=g=>{Vt(),kt.value=!1,no(),ft.value=!0,zt(g)},ja=g=>{Vt(),kt.value=!1,no(),ft.value=!0,O(g)},ha=(g,T)=>{Je.sort_by=g,Je.sort_order=T;const ue=yt;ue.sort_by=g,ue.sort_order=T,Vt(),ct.page=1,kt.value=!1,no(),ft.value=!0,ua()};pt(wt,(g,T)=>{T&&!g&&(Xe.value=Date.now()),T&&!g&&ft.value&&(ft.value=!1,Mt().catch(ue=>{console.error("Failed to refresh account today stats after table load:",ue)}))}),pt(Xe,()=>{Je.sort_by!=="upstream_billing_rate"||wt.value||typeof document<"u"&&document.hidden||ba()});const Aa=w(()=>L.value||F.value||R.value||_.value||y.value||I.value||D.value||z.value||ke.value||W.value||se.value||K.value||G.value||me.value),Ta=()=>{Ft.value=Date.now()+PO,mt.value=$t.value},co=()=>Date.now()<Ft.value,Mo=(g,T)=>g.updated_at!==T.updated_at||g.current_concurrency!==T.current_concurrency||g.current_window_cost!==T.current_window_cost||g.active_sessions!==T.active_sessions||g.schedulable!==T.schedulable||g.status!==T.status||g.rate_limit_reset_at!==T.rate_limit_reset_at||g.overload_until!==T.overload_until||g.temp_unschedulable_until!==T.temp_unschedulable_until||pn(g)!==pn(T),Ga=g=>{var T,ue,Te,Le,Y;((T=ce.value)==null?void 0:T.id)===g.id&&(ce.value=g),((ue=N.value)==null?void 0:ue.id)===g.id&&(N.value=g),((Te=le.value)==null?void 0:Te.id)===g.id&&(le.value=g),((Le=ne.value)==null?void 0:Le.id)===g.id&&(ne.value=g),((Y=he.acc)==null?void 0:Y.id)===g.id&&(he.acc=g)},po=g=>{var Y;const T=Ut.value,ue=new Map(T.map(Se=>[Se.id,Se]));let Te=g.length!==T.length;const Le=g.map(Se=>{const It=ue.get(Se.id);return It?Mo(It,Se)?(Te=!0,Ga(Se),Se):It:(Te=!0,Se)});if(!Te){for(let Se=0;Se<Le.length;Se+=1)if(Le[Se].id!==((Y=T[Se])==null?void 0:Y.id)){Te=!0;break}}Te&&(Ut.value=Le)},_o=async()=>{if(!Lt.value){Vt(),Lt.value=!0;try{const g=await ye.accounts.listWithEtag(ct.page,ct.page_size,rn(yt),{etag:ht.value});g.etag&&(ht.value=g.etag),!g.notModified&&g.data&&(ct.total=g.data.total||0,ct.pages=g.data.pages||0,po(g.data.items||[]),kt.value=!1,ma()),Xe.value=Date.now(),await Mt()}catch(g){console.error("Auto refresh failed:",g)}finally{Lt.value=!1}}},Ba=async()=>{await Promise.all([ua(),Sa()]),Dt.value+=1},Sa=async()=>{try{const g=await ye.accounts.getUpstreamBillingProbeSettings();je.value=g.enabled}catch(g){console.error("Failed to load upstream billing probe settings:",g)}},Ra=()=>{it.value=!1},Ma=()=>{const g=_t.value;if(!g)return;const T=lq(g.getBoundingClientRect(),document.documentElement.clientWidth||window.innerWidth,window.innerHeight);Object.assign(tt,T)},Ea=()=>{const g=!it.value;st.value=!1,g&&Ma(),it.value=g},Pa=()=>{Ra(),R.value=!0},fa=()=>{Ra(),_.value=!0},Ia=()=>{Ra(),vo()},Fa=()=>{Ra(),G.value=!0},qa=()=>{Ra(),me.value=!0},Ka=async()=>{kt.value=!1,await ua(),Dt.value+=1},{pause:Eo,resume:Oa}=un(async()=>{if(Ye.value&&!document.hidden&&!(wt.value||Lt.value)&&!Aa.value&&!(he.show||it.value||st.value)){if(co()){mt.value=Math.max(0,Math.ceil((Ft.value-Date.now())/1e3));return}if(mt.value<=0){mt.value=$t.value,await _o();return}mt.value-=1}},1e3,{immediate:!1});function Qa(g){var T,ue,Te;if(g){if(g.platform==="grok"){const Le=g.extra||{},Y=Le.grok_billing_snapshot,Se=Le.grok_quota_snapshot;return(Y==null?void 0:Y.plan)||(Se==null?void 0:Se.subscription_tier)||((T=g.credentials)==null?void 0:T.subscription_tier)||Le.subscription_tier||((ue=g.credentials)==null?void 0:ue.plan_type)||g.parent_plan_type||void 0}return((Te=g.credentials)==null?void 0:Te.plan_type)||g.parent_plan_type||void 0}}function ro(g){var ue;if(!g||g.platform!=="openai"||g.type!=="oauth")return;const T=(ue=g.credentials)==null?void 0:ue.auth_mode;return typeof T=="string"&&T.trim()?T:void 0}function Ha(g){if(g.platform!=="antigravity")return null;const T=g.extra;if(!T)return null;const ue=T.load_code_assist;if(!ue)return null;const Te=ue.paidTier;if(Te&&typeof Te.id=="string")return Te.id;const Le=ue.currentTier;return Le&&typeof Le.id=="string"?Le.id:null}function Da(g){switch(Ha(g)){case"free-tier":return m("admin.accounts.tier.free");case"g1-pro-tier":return m("admin.accounts.tier.pro");case"g1-ultra-tier":return m("admin.accounts.tier.ultra");default:return null}}function Ja(g){var T,ue,Te;return((T=g.extra)==null?void 0:T.email_address)||((ue=g.extra)==null?void 0:ue.email)||((Te=g.credentials)==null?void 0:Te.email)||g.parent_email||""}function Ve(g){var ue;if(g.type!=="apikey"||typeof((ue=g.credentials)==null?void 0:ue.base_url)!="string")return"";const T=nr(g.credentials.base_url);return T?new URL(T).origin:""}function Ya(g){if(g.platform!=="openai"||g.type!=="oauth"&&g.type!=="apikey")return null;const T=g.extra,ue=typeof(T==null?void 0:T.openai_compact_mode)=="string"?T.openai_compact_mode:"auto";return ue==="force_on"?"active":ue==="force_off"?"blocked":typeof(T==null?void 0:T.openai_compact_supported)=="boolean"?T.openai_compact_supported?"active":"blocked":"auto"}function La(g){const T=Ya(g);if(!T)return null;switch(T){case"active":return{label:m("admin.accounts.openai.compactSupported"),className:"text-emerald-600 dark:text-emerald-300",dotClass:"bg-emerald-500 shadow-[0_0_0_2px_rgba(16,185,129,0.14)]"};case"blocked":return{label:m("admin.accounts.openai.compactUnsupported"),className:"text-rose-600 dar
28k:text-rose-300",dotClass:"bg-rose-500 shadow-[0_0_0_2px_rgba(244,63,94,0.14)]"};case"auto":return{label:m("admin.accounts.openai.compactAuto"),className:"text-slate-500 dark:text-slate-400",dotClass:"bg-slate-300 dark:bg-slate-500"}}}function lo(g){var Le;const T=g.extra,ue=typeof(T==null?void 0:T.openai_compact_checked_at)=="string"?T.openai_compact_checked_at:"",Te=((Le=La(g))==null?void 0:Le.label)||"";return ue?`${Te} | ${m("admin.accounts.openai.compactLastChecked")}: ${oo(new Date(ue))}`:Te}function xa(g){switch(Ha(g)){case"free-tier":return"bg-gray-100 text-gray-600 dark:bg-dark-700 dark:text-gray-300";case"g1-pro-tier":return"bg-blue-100 text-blue-600 dark:bg-blue-900/40 dark:text-blue-300";case"g1-ultra-tier":return"bg-purple-100 text-purple-600 dark:bg-purple-900/40 dark:text-purple-300";default:return""}}const Xa=w(()=>{const g=[{key:"select",label:"",sortable:!1},{key:"name",label:m("admin.accounts.columns.name"),sortable:!0},{key:"id",label:m("admin.accounts.columns.id"),sortable:!0},{key:"platform_type",label:m("admin.accounts.columns.platformType"),sortable:!1},{key:"capacity",label:m("admin.accounts.columns.capacity"),sortable:!1},{key:"status",label:m("admin.accounts.columns.status"),sortable:!0},{key:"schedulable",label:m("admin.accounts.columns.schedulable"),sortable:!0},{key:"today_stats",label:m("admin.accounts.columns.todayStats"),sortable:!1}];return c.isSimpleMode||g.push({key:"groups",label:m("admin.accounts.columns.groups"),sortable:!1}),g.push({key:"usage",label:m("admin.accounts.columns.usageWindows"),sortable:!1}),g.push({key:"proxy",label:m("admin.accounts.columns.proxy"),sortable:!1},{key:"priority",label:m("admin.accounts.columns.priority"),sortable:!0},{key:"scheduler_score",label:m("admin.accounts.columns.schedulerScore"),sortable:!1},{key:"rate_multiplier",label:m("admin.accounts.columns.billingRateMultiplier"),sortable:!0},{key:"upstream_billing_rate",label:m("admin.accounts.columns.upstreamBillingRate"),sortable:!0},{key:"last_used_at",label:m("admin.accounts.columns.lastUsed"),sortable:!0},{key:"created_at",label:m("admin.accounts.columns.createdAt"),sortable:!0},{key:"expires_at",label:m("admin.accounts.columns.expiresAt"),sortable:!0},{key:"notes",label:m("admin.accounts.columns.notes"),sortable:!1},{key:"actions",label:m("admin.accounts.columns.actions"),sortable:!1}),g}),vs=w(()=>Xa.value.filter(g=>g.key!=="select"&&g.key!=="name"&&g.key!=="actions")),Uo=w(()=>Xa.value.filter(g=>g.key==="select"||g.key==="name"||g.key==="actions"||!we.has(g.key))),ys=g=>{ce.value=g,F.value=!0},Wa=(g,T)=>{he.acc=g;const ue=T.currentTarget;if(ue){const Te=ue.getBoundingClientRect(),Le=200,Y=240,Se=8,It=window.innerWidth,aa=window.innerHeight;let jt,Tt;It<768?(jt=Math.max(Se,Math.min(Te.left+Te.width/2-Le/2,It-Le-Se)),Tt=Te.bottom+4,Tt+Y>aa-Se&&(Tt=Te.top-Y-4,Tt<Se&&(Tt=Se))):(jt=Math.max(Se,Math.min(T.clientX-Le,It-Le-Se)),Tt=T.clientY,Tt+Y>aa-Se&&(Tt=aa-Y-Se)),he.pos={top:Tt,left:jt}}else he.pos={top:T.clientY,left:T.clientX-200};he.show=!0},Ao=g=>{const T=g.target;Ie(T.checked)},mo=async()=>{if(confirm(m("common.confirm")))try{await Promise.all(Q.value.map(g=>ye.accounts.delete(g))),J(),Pt()}catch(g){console.error("Failed to bulk delete accounts:",g)}},ko=async()=>{if(confirm(m("common.confirm")))try{const g=await ye.accounts.batchClearError(Q.value);g.failed>0?o.showError(m("admin.accounts.bulkActions.partialSuccess",{success:g.success,failed:g.failed})):(o.showSuccess(m("admin.accounts.bulkActions.resetStatusSuccess",{count:g.success})),J()),Pt()}catch(g){console.error("Failed to bulk reset status:",g),o.showError(String(g))}},Fo=async()=>{if(confirm(m("common.confirm")))try{const g=await ye.accounts.batchRefresh(Q.value);g.failed>0?o.showError(m("admin.accounts.bulkActions.partialSuccess",{success:g.success,failed:g.failed})):(o.showSuccess(m("admin.accounts.bulkActions.refreshTokenSuccess",{count:g.success})),J()),Pt()}catch(g){console.error("Failed to bulk refresh token:",g),o.showError(String(g))}},bs=async()=>{const g=[...Q.value];if(g.length===0){o.showError(m("admin.accounts.upstreamBilling.noEligibleAccounts"));return}if(g.length>20){o.showError(m("admin.accounts.upstreamBilling.batchLimit"));return}g.forEach(T=>Re.add(T));try{const T=await ye.accounts.probeUpstreamBillingBatch(g);let ue=!1;T.forEach(Le=>{Le.snapshot&&(Qo(Le.account_id,Le.snapshot),ue=!0)}),ue&&await ba(!0);const Te=T.filter(Le=>Le.error).length;Te>0?o.showError(m("admin.accounts.upstreamBilling.batchPartial",{success:T.length-Te,failed:Te})):o.showSuccess(m("admin.accounts.upstreamBilling.batchCompleted",{count:T.length}))}catch(T){console.error("Failed to probe upstream billing in batch:",T),o.showError(To(T,m("admin.accounts.upstreamBilling.probeFailed")))}finally{g.forEach(T=>Re.delete(T))}},k=(g,T)=>{if(g.length===0)return;const ue=new Set(g);Ut.value=Ut.value.map(Te=>ue.has(Te.id)?{...Te,schedulable:T}:Te)},Za=(g,T)=>{const ue=Array.isArray(g.success_ids)?g.success_ids:[],Te=Array.isArray(g.failed_ids)?g.failed_ids:[];if(ue.length>0||Te.length>0)return{successIds:ue,failedIds:Te,successCount:typeof g.success=="number"?g.success:ue.length,failedCount:typeof g.failed=="number"?g.failed:Te.length,hasIds:!0,hasCounts:!0};const Le=Array.isArray(g.results)?g.results:[];if(Le.length>0){const aa=Le.filter(Tt=>Tt.success).map(Tt=>Tt.account_id),jt=Le.filter(Tt=>!Tt.success).map(Tt=>Tt.account_id);return{successIds:aa,failedIds:jt,successCount:typeof g.success=="number"?g.success:aa.length,failedCount:typeof g.failed=="number"?g.failed:jt.length,hasIds:!0,hasCounts:!0}}const Y=typeof g.success=="number"||typeof g.failed=="number",Se=typeof g.success=="number"?g.success:0,It=typeof g.failed=="number"?g.failed:0;return Y&&It===0&&Se===T.length&&T.length>0?{successIds:T,failedIds:[],successCount:Se,failedCount:It,hasIds:!0,hasCounts:!0}:{successIds:[],failedIds:[],successCount:Se,failedCount:It,hasIds:!1,hasCounts:Y}},Ho=async g=>{const T=[...Q.value];try{const ue=await ye.accounts.bulkUpdate(T,{schedulable:g}),{successIds:Te,failedIds:Le,successCount:Y,failedCount:Se,hasIds:It,hasCounts:aa}=Za(ue,T);if(!It&&!aa){o.showError(m("admin.accounts.bulkSchedulableResultUnknown")),at(T),ua().catch(jt=>{console.error("Failed to refresh accounts:",jt)});return}if(Te.length>0&&k(Te,g),Y>0&&Se===0){const jt=g?m("admin.accounts.bulkSchedulableEnabled",{count:Y}):m("admin.accounts.bulkSchedulableDisabled",{count:Y});o.showSuccess(jt)}if(Se>
280){const jt=aa||It?m("admin.accounts.bulkSchedulablePartial",{success:Y,failed:Se}):m("admin.accounts.bulkSchedulableResultUnknown");o.showError(jt),at(Le.length>0?Le:T)}else It?J():at(T)}catch(ue){console.error("Failed to bulk toggle schedulable:",ue),o.showError(m("common.error"))}},hs=()=>{const g=rn(yt),T=g.sort_order==="desc"?"desc":"asc";return{platform:typeof g.platform=="string"?g.platform:"",type:typeof g.type=="string"?g.type:"",status:typeof g.status=="string"?g.status:"",group:typeof g.group=="string"?g.group:"",search:typeof g.search=="string"?g.search:"",privacy_mode:typeof g.privacy_mode=="string"?g.privacy_mode:"",sort_by:typeof g.sort_by=="string"?g.sort_by:"",sort_order:T}},Ro=g=>{const T=Array.from(new Set(g.map(Te=>Te.platform))),ue=Array.from(new Set(g.map(Te=>Te.type)));return{selectedPlatforms:T,selectedTypes:ue}},fs=()=>{q.value={mode:"selected",accountIds:[...Q.value],selectedPlatforms:[...S.value],selectedTypes:[...M.value]},I.value=!0},wo=async()=>{const g=hs(),T=await ye.accounts.list(1,100,g),{selectedPlatforms:ue,selectedTypes:Te}=Ro(T.items);q.value={mode:"filtered",filters:g,previewCount:T.total,selectedPlatforms:ue,selectedTypes:Te},I.value=!0},Wo=()=>{I.value=!1,q.value=null,J(),Pt()},Go=()=>{_.value=!1,Pt()},Ko=()=>({platform:yt.platform||"",type:yt.type||"",status:yt.status||"",group:yt.group||"",privacy_mode:yt.privacy_mode||"",search:yt.search||"",sort_by:Je.sort_by,sort_order:Je.sort_order}),io=g=>{var Le,Y;const T=Ko();if(T.platform&&g.platform!==T.platform||T.type&&g.type!==T.type)return!1;if(T.status){const Se=Date.now(),It=g.rate_limit_reset_at?new Date(g.rate_limit_reset_at).getTime():Number.NaN,aa=Number.isFinite(It)&&It>Se,jt=g.temp_unschedulable_until?new Date(g.temp_unschedulable_until).getTime():Number.NaN,Tt=Number.isFinite(jt)&&jt>Se;if(T.status==="active"){if(g.status!=="active"||aa||Tt||!g.schedulable)return!1}else if(T.status==="rate_limited"){if(g.status!=="active"||!aa||Tt)return!1}else if(T.status==="temp_unschedulable"){if(g.status!=="active"||!Tt)return!1}else if(T.status==="unschedulable"){if(g.status!=="active"||g.schedulable||aa||Tt)return!1}else if(g.status!==T.status)return!1}if(T.group){const Se=g.group_ids??((Le=g.groups)==null?void 0:Le.map(It=>It.id))??[];if(T.group===IO){if(Se.length>0)return!1}else if(!Se.includes(Number(T.group)))return!1}const ue=typeof((Y=g.extra)==null?void 0:Y.privacy_mode)=="string"?g.extra.privacy_mode:"";if(T.privacy_mode){if(T.privacy_mode===qO){if(ue.trim()!=="")return!1}else if(ue!==T.privacy_mode)return!1}const Te=String(T.search||"").trim().toLowerCase();return!(Te&&!g.name.toLowerCase().includes(Te))},Po=(g,T)=>({...T,current_concurrency:T.current_concurrency??g.current_concurrency,current_window_cost:T.current_window_cost??g.current_window_cost,active_sessions:T.active_sessions??g.active_sessions}),xs=()=>{const g=Math.max(0,ct.total-1);ct.total=g,ct.pages=g>0?Math.ceil(g/ct.page_size):0;const T=Math.max(1,ct.pages||1);ct.page>T&&(ct.page=T),kt.value=g>0},eo=g=>{var Le;const T=Ut.value.findIndex(Y=>Y.id===g.id);if(T===-1)return;const ue=Po(Ut.value[T],g);if(!io(ue)){Ut.value=Ut.value.filter(Y=>Y.id!==ue.id),xs(),Be([ue.id]),((Le=he.acc)==null?void 0:Le.id)===ue.id&&(he.show=!1,he.acc=null);return}const Te=[...Ut.value];Te[T]=ue,Ut.value=Te,Ga(ue)},Qo=(g,T)=>{const ue=Ut.value.find(Te=>Te.id===g);ue&&(ma(),Xe.value=Date.now(),eo({...ue,extra:{...ue.extra,upstream_billing_probe:T}}))},Jo=async g=>{if(!Re.has(g.id)){Re.add(g.id);try{const T=await ye.accounts.probeUpstreamBilling(g.id);T.snapshot&&(Qo(g.id,T.snapshot),await ba(!0))}catch(T){console.error("Failed to probe upstream billing:",T),o.showError(To(T,m("admin.accounts.upstreamBilling.probeFailed")))}finally{Re.delete(g.id)}}},go=g=>{eo(g),Ta()},_s=()=>{const g=new Date,T=ue=>String(ue).padStart(2,"0");return`${g.getFullYear()}${T(g.getMonth()+1)}${T(g.getDate())}${T(g.getHours())}${T(g.getMinutes())}${T(g.getSeconds())}`},vo=()=>{f.value=!0,y.value=!0},Yo=async()=>{if(!Oe.value){Oe.value=!0;try{const g=await Io.run(()=>ye.accounts.exportData(Q.value.length>0?{ids:Q.value,includeProxies:f.value}:{includeProxies:f.value,filters:Ko()}
28)),ue=`sub2api-account-${_s()}.json`,Te=new Blob([JSON.stringify(g,null,2)],{type:"application/json"}),Le=URL.createObjectURL(Te),Y=document.createElement("a");Y.href=Le,Y.download=ue,Y.click(),URL.revokeObjectURL(Le),g.skipped_shadows&&g.skipped_shadows>0?o.showWarning(m("admin.accounts.dataExportedSkippedShadows",{count:g.skipped_shadows})):o.showSuccess(m("admin.accounts.dataExported"))}catch(g){br(g)||(hr(g)?o.showError(fr(g)==="STEP_UP_ADMIN_API_KEY_FORBIDDEN"?m("stepUp.adminApiKeyForbidden"):m("stepUp.notEnabled")):o.showError((g==null?void 0:g.message)||m("admin.accounts.dataExportFailed")))}finally{Oe.value=!1,y.value=!1}}},Io=vr(),Xo=()=>{W.value=!1,x.value=null},uo=()=>{se.value=!1,H.value=null},ks=()=>{ke.value=!1,N.value=null},yo=g=>{x.value=g,W.value=!0},qo=g=>{H.value=g,se.value=!0},bo=async g=>{be.value=g,fe.value=[],K.value=!0;try{const T=await ye.accounts.getAvailableModels(g.id);fe.value=T.map(ue=>({value:ue.id,label:ue.display_name||ue.id}))}catch{fe.value=[]}},Zo=()=>{K.value=!1,be.value=null,fe.value=[]},es=g=>{N.value=g,ke.value=!0},C=new Set,d=async g=>{if(!C.has(g.id)){C.add(g.id);try{const T=await ye.accounts.duplicate(g.id);o.showSuccess(m("admin.accounts.duplicateSuccess",{name:T.name})),Pt()}catch(T){console.error("Failed to duplicate account:",T),o.showError((T==null?void 0:T.message)||m("admin.accounts.duplicateFailed"))}finally{C.delete(g.id)}}},X=async g=>{try{const T=await ye.accounts.refreshCredentials(g.id);eo(T),Ta()}catch(T){console.error("Failed to refresh credentials:",T)}},Pe=async g=>{try{const T=await ye.accounts.recoverState(g.id);eo(T),Ta(),o.showSuccess(m("admin.accounts.recoverStateSuccess"))}catch(T){console.error("Failed to recover account state:",T),o.showError((T==null?void 0:T.message)||m("admin.accounts.recoverStateFailed"))}},nt=async g=>{try{const T=await ye.accounts.resetAccountQuota(g.id);eo(T),Ta(),o.showSuccess(m("common.success"))}catch(T){console.error("Failed to reset quota:",T)}},xe=g=>{var ue;const T=typeof((ue=g.extra)==null?void 0:ue.privacy_mode)=="string"?g.extra.privacy_mode:"";if(g.platform==="openai")switch(T){case"training_off":return{type:"success",key:"admin.accounts.privacyTrainingOff"};case"training_set_cf_blocked":return{type:"error",key:"admin.accounts.privacyCfBlocked"};default:return{type:"error",key:"admin.accounts.privacyFailed"}}return g.platform==="antigravity"?T==="privacy_set"?{type:"success",key:"admin.accounts.privacyAntigravitySet"}:{type:"error",key:"admin.accounts.privacyAntigravityFailed"}:{type:"error",key:"admin.accounts.privacyFailed"}},j=async g=>{var T,ue;try{const Te=await ye.accounts.setPrivacy(g.id);eo(Te),Ta();const Le=xe(Te);Le.type==="success"?o.showSuccess(m(Le.key)):o.showError(m(Le.key))}catch(Te){console.error("Failed to set privacy:",Te),o.showError(((ue=(T=Te==null?void 0:Te.response)==null?void 0:T.data)==null?void 0:ue.message)||m("admin.accounts.privacyFailed"))}},We=async g=>{var T,ue;try{await ye.accounts.revertProxyFallback(g.id),o.showSuccess(m("admin.accounts.revertProxySuccess")),Pt()}catch(Te){console.error("Failed to revert proxy fallback:",Te),o.showError(((ue=(T=Te==null?void 0:Te.response)==null?void 0:T.data)==null?void 0:ue.message)||m("admin.accounts.revertProxyFailed"))}},De=g=>{te.value=g,ee.value=!0},_a=async()=>{var T,ue;const g=te.value;if(g)try{await ye.accounts.createSparkShadow(g.id,{name:`${g.name} (Spark)`}),ee.value=!1,te.value=null,o.showSuccess(m("admin.accounts.createSparkShadowSuccess")),Pt()}catch(Te){console.error("Failed to create spark shadow:",Te),o.showError(((ue=(T=Te==null?void 0:Te.response)==null?void 0:T.data)==null?void 0:ue.message)||m("admin.accounts.createSparkShadowFailed"))}},ta=g=>{ne.value=g,z.value=!0},$o=async()=>{if(ne.value)try{await ye.accounts.delete(ne.value.id),z.value=!1,ne.value=null,Pt()}catch(g){console.error("Failed to delete account:",g)}},ts=async g=>{const T=!g.schedulable;$e.value=g.id;try{const ue=await ye.accounts.setSchedulable(g.id,T);k([g.id],(ue==null?void 0:ue.schedulable)??T),Ta()}catch(ue){console.error("Failed to toggle schedulable:",ue),o.showError(m("admin.accounts.failedToToggleSchedulable"))}finally{$e.value=null}},as=g=>{le.value=g,D.value=!0},os=async g=>{D.value=!1,le.value=null,eo(g),Ta()},ss=g=>g?oo(new Date(g*1e3),{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",hour12:!1},"sv-SE"):"-",Oo=g=>g?g*1e3<=Date.now():!1,ns=g=>cr(g.expires_at,g.status),rs=g=>{const{key:T,params:ue}=mr(g.expires_at,g.status);return ue?m(T,ue):m(T)},Do=()=>{he.show=!1,it.value&&Ma()},Lo=()=>{it.value&&Ma()},Vo=g=>{const T=g.target;ot.value&&!ot.value.contains(T)&&(it.value=!1),vt.value&&!vt.value.contains(T)&&(st.value=!1)};return Js(async()=>{ua(),Sa();try{const[g,T]=await Promise.all([ye.proxies.getAll(),ye.groups.getAll()]);s.value=g,b.value=T}catch(g){console.error("Failed to load proxies/groups:",g)}window.addEventListener("scroll",Do,!0),window.addEventListener("resize",Lo),document.addEventListener("click",Vo),Ye.value?(mt.value=$t.value,Oa()):Eo()}),ms(()=>{window.removeEventListener("scroll",Do,!0),window.removeEventListener("resize",Lo),document.removeEventListener("click",Vo)}),(g,T)=>(n(),Ae(xr,null,{default:Me(()=>{var ue,Te,Le;return[U(_r,null,{filters:Me(()=>[e("div",iq,[U(fT,{searchQuery:t(yt).search,"onUpdate:searchQuery":[T[0]||(T[0]=Y=>t(yt).search=Y),Na],filters:t(yt),groups:b.value,"onUpdate:filters":T[1]||(T[1]=Y=>Object.assign(t(yt),Y)),onChange:Na},null,8,["searchQuery","filters","groups"]),U(bT,{loading:t(wt),onRefresh:Ba,onCreate:T[5]||(T[5]=Y=>L.value=!0)},{after:Me(()=>[e("div",{class:"relative",ref_key:"autoRefreshDropdownRef",ref:vt},[e("button",{onClick:T[2]||(T[2]=Y=>{st.value=!st.value,it.value=!1}),class:"btn btn-secondary px-2 md:px-3",title:t(m)("admin.accounts.autoRefresh")},[U(ae,{name:"refresh",size:"sm",class:E([Ye.value?"animate-spin":""])},null,8,["class"]),e("span",dq,a(Ye.value?t(m)("admin.accounts.autoRefreshCountdown",{seconds:mt.value}):t(m)("admin.accounts.autoRefresh")),1)],8,uq),st.value?(n(),r("div",cq,[e("div",pq,[e("button",{onClick:T[3]||(T[3]=Y=>Ca(!Ye.value)),class:"flex w-full items-center justify-between rounded-md px-3 py-2 text-sm text-gray-700 hover:bg-gray-100 dark:text-gray-200 dark:hover:bg-dark-700"},[e("span",null,a(t(m)("admin.accounts.enableAutoRefresh")),1),Ye.value?(n(),Ae(ae,{key:0,name:"check",size:"sm",class:"text-primary-500"})):v("",!0)]),T[22]||(T[22]=e("div",{class:"my-1 border-t border-gray-100 dark:border-dark-700"},null,-1)),(n(),r(ve,null,Ue(At,Y=>e("button",{key:Y,onClick:Se=>Nt(Y),class:"flex w-full items-center justify-between rounded-md px-3 py-2 text-sm text-gray-700 hover:bg-gray-100 dark:text-gray-200 dark:hover:bg-dark-700"},[e("span",null,a(oa(Y)),1),$t.value===Y?(n(),Ae(ae,{key:0,name:"check",size:"sm",class:"text-primary-500"})):v("",!0)],8,mq)),64))])])):v("",!0)],512),e("div",{class:"relative",ref_key:"accountToolsDropdownRef",ref:ot},[e("button",{ref_key:"accountToolsTriggerRef",ref:_t,onClick:Ea,class:"btn btn-secondary px-2 md:px-3",title:t(m)("admin.accounts.moreActions"),"aria-expanded":it.value},[U(ae,{name:"more",size:"sm",class:"md:mr-1.5"}),e("span",vq,a(t(m)("admin.accounts.moreActions")),1),U(ae,{name:"chevronDown",size:"xs",class:"ml-1 hidden md:inline"})],8,gq),(n(),Ae(Ys,{to:"body"},[it.value?(n(),r("div",{key:0,class:"fixed z-[9999] origin-top-right overflow-hidden rounded-lg border border-gray-200 bg-white shadow-xl dark:border-dark-700 dark:bg-dark-800",style:$s(Ke.value),onClick:T[4]||(T[4]=Bt(()=>{},["stop"]))},[e("div",{class:"overflow-y-auto p-2",style:$s({maxHeight:`${tt.maxHeight}px`})},[e("div",yq,[e("div",bq,a(t(m)("admin.accounts.dataActions")),1)]),e("button",{class:"account-tools-menu-item",onClick:Pa},[e("span",hq,[U(ae,{name:"sync",size:"sm"})]),e("span",fq,a(t(m)("admin.accounts.syncFromCrs")),1)]),e("button",{class:"account-tools-menu-item",onClick:fa},[e("span",xq,[U(ae,{name:"upload",size:"sm"})]),e("span",_q,a(t(m)("admin.accounts.dataImport")),1)]),e("button",{class:"account-tools-menu-item",onClick:Ia},[e("span",kq,[U(ae,{name:"download",size:"sm"})]),e("span",wq,a(t(Q).length?t(m)("admin.accounts.dataExportSelected"):t(m)("admin.accounts.dataExport")),1),t(Q).length?(n(),r("span",$q,a(t(m)("admin.accounts.selectedCount",{count:t(Q).length})),1)):v("",!0)]),T[23]||(T[23]=e("div",{class:"my-2 border-t border-gray-100 dark:border-dark-700"},null,-1)),e("div",Cq,[e("div",Tq,a(t(m)("admin.accounts.toolActions")),1)]),e("button",{class:"account-tools-menu-item",onClick:Fa},[e("span",Sq,[U(ae,{name:"shield",size:"sm"})]),e("span",Mq,a(t(m)("admin.errorPassthrough.title")),1)]),e("button",{class:"account-tools-menu-item",onClick:qa},[e("span",Eq,[U(ae,{name:"lock",size:"sm"})]),e("span",Uq,a(t(m)("admin.tlsFingerprintProfiles.title")),1)]),T[24]||(T[24]=e("div",{class:"my-2 border-t border-gray-100 dark:border-dark-700"},null,-1)),e("div",Aq,[e("div",Rq,[e("span",Pq,a(t(m)("admin.accounts.viewColumns")),1),U(ae,{name:"grid",size:"sm",class:"text-gray-400"})])]),e("div",Iq,[(n(!0),r(ve,null,Ue(vs.value,Y=>(n(),r("button",{key:Y.key,onClick:Se=>na(Y.key),class:"flex w-full items-center justify-between rounded-md px-3 py-2 text-sm text-gray-700 transition-colors hover:bg-gray-100 dark:text-gray-200 dark:hover:bg-dark-700"},[e("span",Oq,a(Y.label),1),da(Y.key)?(n(),Ae(ae,{key:0,name:"check",size:"sm",class:"text-primary-500"})):v("",!0)],8,qq))),128))])],4)],4)):v("",!0)]))],512)]),_:1},8,["loading"])]),kt.value?(n(),r("div",Dq,[e("span",null,a(t(m)("admin.accounts.listPendingSyncHint")),1),e("button",{class:"btn btn-secondary px-2 py-1 text-xs",onClick:Ka},a(t(m)("admin.accounts.listPendingSyncAction")),1)])):v("",!0)]),table:Me(()=>[U(CT,{"selected-ids":t(Q),onDelete:mo,onResetStatus:ko,onRefreshToken:Fo,onProbeUpstreamBilling:bs,onEditSelected:fs,onEditFiltered:wo,onClear:t(J),onSelectPage:t(Ge),onToggleSchedulable:Ho},null,8,["selected-ids","onClear","onSelectPage"]),e("div",{ref_key:"accountTableRef",ref:$,class:"flex min-h-0 flex-1 flex-col overflow-hidden"},[U(kr,{ref_key:"dataTableRef",ref:P,columns:Uo.value,data:t(Ut),loading:t(wt),"row-key":"id","server-side-sort":!0,onSort:ha,"default-sort-key":"name","default-sort-order":"asc","sort-storage-key":In,"estimate-row-height":156,overscan:5,"virtualize-threshold":50},{"header-select":Me(()=>[e("input",{type:"checkbox",class:"h-4 w-4 cursor-pointer rounded border-gray-300 text-primary-600 focus:ring-primary-500",checked:t(pe),onClick:T[6]||(T[6]=Bt(()=>{}
28,["stop"])),onChange:T[7]||(T[7]=Y=>Ao(Y))},null,40,Lq)]),"cell-select":Me(({row:Y})=>[e("input",{type:"checkbox",checked:t(qe)(Y.id),onChange:Se=>t(B)(Y.id),class:"rounded border-gray-300 text-primary-600 focus:ring-primary-500"},null,40,Vq)]),"cell-id":Me(({value:Y})=>[e("span",zq,"#"+a(Y),1)]),"cell-name":Me(({row:Y,value:Se})=>[e("div",Nq,[Ve(Y)?(n(),Ae(fo,{key:0,content:Ve(Y),"width-class":"w-max max-w-sm break-all",class:"-ml-1 self-start"},{trigger:Me(()=>[e("a",{href:Ve(Y),target:"_blank",rel:"noopener noreferrer",class:"border-b border-dotted border-gray-300 font-medium text-gray-900 dark:border-dark-600 dark:text-white"},a(Se),9,jq)]),_:2},1032,["content"])):(n(),r("span",Bq,a(Se),1)),Ja(Y)?(n(),r("span",{key:2,class:"text-xs text-gray-500 dark:text-gray-400 truncate max-w-[200px]",title:Ja(Y)+(Y.parent_chatgpt_account_id?" · "+Y.parent_chatgpt_account_id:"")},a(Ja(Y)),9,Fq)):v("",!0)])]),"cell-notes":Me(({value:Y})=>[Y?(n(),r("span",{key:0,title:Y,class:"block max-w-xs truncate text-sm text-gray-600 dark:text-gray-300"},a(Y),9,Hq)):(n(),r("span",Wq,"-"))]),"cell-platform_type":Me(({row:Y})=>{var Se,It,aa,jt,Tt;return[e("div",Gq,[e("div",Kq,[U(pr,{platform:Y.platform,type:Y.type,"auth-mode":ro(Y),"plan-type":Qa(Y),"privacy-mode":((Se=Y.extra)==null?void 0:Se.privacy_mode)||Y.parent_privacy_mode,"subscription-expires-at":((It=Y.credentials)==null?void 0:It.subscription_expires_at)||Y.parent_subscription_expires_at},null,8,["platform","type","auth-mode","plan-type","privacy-mode","subscription-expires-at"]),Da(Y)?(n(),r("span",{key:0,class:E(["inline-block rounded px-1.5 py-0.5 text-[10px] font-medium",xa(Y)])},a(Da(Y)),3)):v("",!0)]),La(Y)?(n(),r("div",{key:0,class:E(["inline-flex items-center gap-1.5 pl-0.5 text-[11px] font-medium leading-4",(aa=La(Y))==null?void 0:aa.className]),title:lo(Y)},[e("span",{class:E(["h-1.5 w-1.5 rounded-full",(jt=La(Y))==null?void 0:jt.dotClass])},null,2),e("span",null,a((Tt=La(Y))==null?void 0:Tt.label),1)],10,Qq)):v("",!0)])]}),"cell-capacity":Me(({row:Y})=>[U(JA,{account:Y},null,8,["account"])]),"cell-status":Me(({row:Y})=>[e("div",Jq,[U(nC,{account:Y,onShowTempUnsched:as},null,8,["account"])])]),"cell-schedulable":Me(({row:Y})=>[e("button",{onClick:Se=>ts(Y),disabled:$e.value===Y.id,class:E(["relative inline-flex h-5 w-9 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 dark:focus:ring-offset-dark-800",[Y.schedulable?"bg-primary-500 hover:bg-primary-600":"bg-gray-200 hover:bg-gray-300 dark:bg-dark-600 dark:hover:bg-dark-500"]]),title:Y.schedulable?t(m)("admin.accounts.schedulableEnabled"):t(m)("admin.accounts.schedulableDisabled")},[e("span",{class:E(["pointer-events-none inline-block h-4 w-4 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out",[Y.schedulable?"translate-x-4":"translate-x-0"]])},null,2)],10,Yq)]),"cell-today_stats":Me(({row:Y})=>[U(H7,{stats:Ht.value[String(Y.id)]??null,loading:qt.value,error:Ct.value},null,8,["stats","loading","error"])]),"cell-groups":Me(({row:Y})=>[U(VA,{groups:Y.groups,"max-display":4},null,8,["groups"])]),"header-usage":Me(({column:Y})=>[e("div",Xq,[e("span",null,a(Y.label),1),U(fo,{content:t(m)("admin.accounts.usageWindowsHint"),"width-class":"w-72"},null,8,["content"])])]),"cell-usage":Me(({row:Y})=>[U(x7,{account:Y,"today-stats":Ht.value[String(Y.id)]??null,"today-stats-loading":qt.value,"manual-refresh-token":Dt.value},null,8,["account","today-stats","today-stats-loading","manual-refresh-token"])]),"cell-proxy":Me(({row:Y})=>[e("div",Zq,[Y.proxy?(n(),r("div",eO,[e("span",tO,a(Y.proxy.name),1),Y.proxy.country_code?(n(),r("span",aO," ("+a(Y.proxy.country_code)+") ",1)):v("",!0)])):(n(),r("span",oO,"-")),Y.proxy&&Y.proxy.expires_at?(n(),r("div",sO,[e("span",nO,a(t(oo)(Y.proxy.expires_at)),1),e("span",{class:E(ns(Y.proxy))},a(rs(Y.proxy)),3)])):v("",!0),Y.proxy_fallback_origin_id?(n(),r("div",rO,[e("span",{class:"inline-flex items-center px-1.5 py-0.5 rounded text-xs font-medium bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-200",title:t(m)("admin.accounts.fallbackActiveTip",{origin:Y.proxy_fallback_origin_name})},a(t(m)("admin.accounts.fallbackActive")),9,lO),e("button",{class:"text-xs px-1.5 py-0.5 rounded border border-gray-300 dark:border-dark-600 text-gray-600 dark:text-gray-300 hover:bg-gray-100 dark:hover:bg-dark-700",onClick:Se=>We(Y)},a(t(m)("admin.accounts.revertProxy")),9,iO)])):v("",!0)])]),"cell-rate_multiplier":Me(({row:Y})=>[e("span",uO,a((Y.rate_multiplier??1).toFixed(2))+"x ",1)]),"header-upstream_billing_rate":Me(({column:Y})=>[e("div",dO,[e("span",null,a(Y.label),1),e("span",{onClick:T[8]||(T[8]=Bt(()=>{},["stop"]))},[U(fo,{content:t(m)("admin.accounts.upstreamBilling.trustWarning"),"width-class":"w-80"},null,8,["content"])])])]),"cell-upstream_billing_rate":Me(({row:Y})=>[U(cR,{account:Y,"global-probe-enabled":je.value,now:Xe.value,probing:Re.has(Y.id),onProbe:Se=>Jo(Y)},null,8,["account","global-probe-enabled","now","probing","onProbe"])]),"cell-priority":Me(({value:Y})=>[e("span",cO,a(Y),1)]),"header-scheduler_score":Me(({column:Y})=>[e("div",pO,[e("span",null,a(Y.label),1),U(fo,{content:t(m)("admin.accounts.schedulerScore.hint"),"width-class":"w-80"},null,8,["content"])])]),"cell-scheduler_score":Me(({row:Y})=>[$a(Y).length?(n(),r("div",mO,[(n(!0),r(ve,null,Ue($a(Y),Se=>(n(),r("div",{key:String(Se.group_id),class:"flex items-center gap-1 whitespace-nowrap text-gray-700 dark:text-gray-300",title:`${la(Se)} / ${sa(Se.base_score)} / ${He(Se)}`},[e("span",vO,a(la(Se)),1),T[25]||(T[25]=e("span",{class:"text-gray-300 dark:text-gray-600"}
28,"/",-1)),e("span",null,a(sa(Se.base_score)),1),T[26]||(T[26]=e("span",{class:"text-gray-300 dark:text-gray-600"},"/",-1)),e("span",yO,a(He(Se)),1)],8,gO))),128))])):(n(),r("span",bO,"-"))]),"cell-last_used_at":Me(({value:Y})=>[e("span",hO,a(t(ln)(Y)),1)]),"cell-created_at":Me(({value:Y})=>[e("span",fO,a(t(oo)(Y)),1)]),"cell-expires_at":Me(({row:Y,value:Se})=>[e("div",xO,[e("span",_O,a(ss(Se)),1),Oo(Se)||Y.auto_pause_on_expired&&Se?(n(),r("div",kO,[Oo(Se)?(n(),r("span",wO,a(t(m)("admin.accounts.expired")),1)):v("",!0),Y.auto_pause_on_expired&&Se?(n(),r("span",$O,a(t(m)("admin.accounts.autoPauseOnExpired")),1)):v("",!0)])):v("",!0)])]),"cell-actions":Me(({row:Y})=>[e("div",CO,[e("button",{onClick:Se=>ys(Y),class:"flex flex-col items-center gap-0.5 rounded-lg p-1.5 text-gray-500 transition-colors hover:bg-gray-100 hover:text-primary-600 dark:hover:bg-dark-700 dark:hover:text-primary-400"},[T[27]||(T[27]=e("svg",{class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M16.862 4.487l1.687-1.688a1.875 1.875 0 112.652 2.652L10.582 16.07a4.5 4.5 0 01-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 011.13-1.897l8.932-8.931zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0115.75 21H5.25A2.25 2.25 0 013 18.75V8.25A2.25 2.25 0 015.25 6H10"})],-1)),e("span",SO,a(t(m)("common.edit")),1)],8,TO),e("button",{onClick:Se=>ta(Y),class:"flex flex-col items-center gap-0.5 rounded-lg p-1.5 text-gray-500 transition-colors hover:bg-red-50 hover:text-red-600 dark:hover:bg-red-900/20 dark:hover:text-red-400"},[T[28]||(T[28]=e("svg",{class:"h-4 w-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 01-2.244 2.077H8.084a2.25 2.25 0 01-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 00-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 013.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 00-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 00-7.5 0"})],-1)),e("span",EO,a(t(m)("common.delete")),1)],8,MO),e("button",{onClick:Se=>Wa(Y,Se),class:"flex flex-col items-center gap-0.5 rounded-lg p-1.5 text-gray-500 transition-colors hover:bg-gray-100 hover:text-gray-900 dark:hover:bg-dark-700 dark:hover:text-white"},[T[29]||(T[29]=e("svg",{class:"h-4 w-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"1.5"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6.75 12a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM12.75 12a.75.75 0 11-1.5 0 .75.75 0 011.5 0zM18.75 12a.75.75 0 11-1.5 0 .75.75 0 011.5 0z"})],-1)),e("span",AO,a(t(m)("common.more")),1)],8,UO)])]),_:1},8,["columns","data","loading"])],512)]),pagination:Me(()=>[t(ct).total>0?(n(),Ae(wr,{key:0,page:t(ct).page,total:t(ct).total,"page-size":t(ct).page_size,"onUpdate:page":Ua,"onUpdate:pageSize":ja},null,8,["page","total","page-size"])):v("",!0)]),_:1}),U(t(df),{show:L.value,proxies:s.value,groups:b.value,onClose:T[9]||(T[9]=Y=>L.value=!1),onCreated:Pt},null,8,["show","proxies","groups"]),U(t(W5),{show:F.value,account:ce.value,proxies:s.value,groups:b.value,onClose:T[10]||(T[10]=Y=>F.value=!1),onUpdated:go},null,8,["show","account","proxies","groups"]),U(gS,{show:ke.value,account:N.value,onClose:ks,onReauthorized:go},null,8,["show","account"]),U(KS,{show:W.value,account:x.value,onClose:Xo},null,8,["show","account"]),U(yU,{show:se.value,account:H.value,onClose:uo},null,8,["show","account"]),U(RA,{show:K.value,"account-id":((ue=be.value)==null?void 0:ue.id)??null,"model-options":fe.value,onClose:Zo},null,8,["show","account-id","model-options"]),U(ET,{show:he.show,account:he.acc,position:he.pos,onClose:T[11]||(T[11]=Y=>he.show=!1),onTest:yo,onStats:qo,onSchedule:bo,onDuplicate:d,onReauth:es,onRefreshToken:X,onRecoverState:Pe,onResetQuota:nt,onSetPrivacy:j,onCreateSparkShadow:De},null,8,["show","account","position"]),U(t(gT),{show:R.value,onClose:T[12]||(T[12]=Y=>R.value=!1),onSynced:Pt},null,8,["show"]),U(GT,{show:_.value,onClose:T[13]||(T[13]=Y=>_.value=!1),onImported:Go},null,8,["show"]),U(t(I6),{show:I.value,"account-ids":t(Q),"selected-platforms":S.value,"selected-types":M.value,target:q.value??void 0,proxies:s.value,groups:b.value,onClose:T[14]||(T[14]=Y=>I.value=!1),onUpdated:Wo},null,8,["show","account-ids","selected-platforms","selected-types","target","proxies","groups"]),U(t(C9),{show:D.value,account:le.value,onClose:T[15]||(T[15]=Y=>D.value=!1),onReset:os}
28,null,8,["show","account"]),U(so,{show:z.value,title:t(m)("admin.accounts.deleteAccount"),message:t(m)("admin.accounts.deleteConfirm",{name:(Te=ne.value)==null?void 0:Te.name}),"confirm-text":t(m)("common.delete"),"cancel-text":t(m)("common.cancel"),danger:!0,onConfirm:$o,onCancel:T[16]||(T[16]=Y=>z.value=!1)},null,8,["show","title","message","confirm-text","cancel-text"]),U(so,{show:ee.value,title:t(m)("admin.accounts.createSparkShadow"),message:t(m)("admin.accounts.createSparkShadowConfirm",{name:(Le=te.value)==null?void 0:Le.name}),onConfirm:_a,onCancel:T[17]||(T[17]=Y=>ee.value=!1)},null,8,["show","title","message"]),U(so,{show:y.value,title:t(m)("admin.accounts.dataExport"),message:t(m)("admin.accounts.dataExportConfirmMessage"),"confirm-text":t(m)("admin.accounts.dataExportConfirm"),"cancel-text":t(m)("common.cancel"),onConfirm:Yo,onCancel:T[19]||(T[19]=Y=>y.value=!1)},{default:Me(()=>[e("label",RO,[V(e("input",{type:"checkbox",class:"h-4 w-4 rounded border-gray-300 text-primary-600 focus:ring-primary-500","onUpdate:modelValue":T[18]||(T[18]=Y=>f.value=Y)},null,512),[[bt,f.value]]),e("span",null,a(t(m)("admin.accounts.dataExportIncludeProxies")),1)])]),_:1},8,["show","title","message","confirm-text","cancel-text"]),U(eI,{show:G.value,onClose:T[20]||(T[20]=Y=>G.value=!1)},null,8,["show"]),U(rq,{show:me.value,onClose:T[21]||(T[21]=Y=>me.value=!1)},null,8,["show"]),U(yr,{controller:t(Io)},null,8,["controller"])]}),_:1}))}}),hD=rr(OO,[["__scopeId","data-v-729dbbb4"]]);export{hD as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.