@buildbase/sdk 0.0.75 → 0.0.77
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +59 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +11 -1
- package/dist/index.mjs +1 -1
- package/dist/mcp/index.cjs +1 -1
- package/dist/mcp/index.mjs +1 -1
- package/dist/react/chunks/{SettingsDialog-B9rUReiX.mjs → SettingsDialog-jJxOT6-j.mjs} +1 -1
- package/dist/react/chunks/{SettingsDialog-dEUtkvim.cjs → SettingsDialog-oJ031H7P.cjs} +1 -1
- package/dist/react/chunks/SubscriptionDialog-CDBtbbJi.mjs +2 -0
- package/dist/react/chunks/SubscriptionDialog-DgBEfcU8.cjs +2 -0
- package/dist/react/chunks/react-4qMM6kB7.mjs +2 -0
- package/dist/react/chunks/react-6MIS8oUC.cjs +2 -0
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.d.ts +11 -1
- package/dist/react/index.mjs +1 -1
- package/dist/server/next/index.cjs +1 -1
- package/dist/server/next/index.mjs +1 -1
- package/docs/ERROR_CODES.md +61 -98
- package/docs/THEMING.md +35 -4
- package/package.json +1 -1
- package/dist/react/chunks/SubscriptionDialog-SgJhIzLG.mjs +0 -2
- package/dist/react/chunks/SubscriptionDialog-uO8qhl6I.cjs +0 -2
- package/dist/react/chunks/react-DTOi9eck.cjs +0 -2
- package/dist/react/chunks/react-DkhpyQTr.mjs +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{jsx as e,jsxs as a,Fragment as t}from"react/jsx-runtime";import{Coins as i,ShieldAlert as n,ShoppingCart as s,RefreshCw as r,CheckCircle2 as c,History as o,Trash2 as l,Loader2 as d,ToggleRight as u,Smile as m,ImageIcon as p,Bell as g,BellOff as f,Lock as h,Mail as b,Smartphone as x,ChevronsUpDown as v,CheckCheck as N,KeyRound as A,Check as S,X as y,Pencil as T,FileText as C,ExternalLink as w,Download as k,AlertTriangle as E,Calendar as P,CreditCard as M,BarChart3 as U,TrashIcon as D,UserIcon as I,MonitorSmartphone as R,Bot as _,SettingsIcon as G,UsersIcon as B,Shield as L,Settings as K,ArrowLeft as O}from"lucide-react";import*as W from"react";import F,{useMemo as V,useState as z,useEffect as j,useCallback as H,useRef as J,Suspense as Y,lazy as Z}from"react";import{C as $,u as q,D as X,a as Q,b as ee,c as ae,g as te,d as ie,B as ne,f as se,e as re,S as ce,h as oe,i as le,P as de,j as ue,k as me,l as pe,m as ge,n as fe,w as he,o as be,p as xe,q as ve,r as Ne,s as Ae,L as Se,E as ye,t as Te,v as Ce,x as we,y as ke,z as Ee,A as Pe,F as Me,G as Ue,H as De,I as Ie,J as Re,K as _e,M as Ge,N as Be,O as Le,Q as Ke,R as Oe,T as We,U as Fe,V as Ve,W as ze,X as je,Y as He,Z as Je,_ as Ye,$ as Ze,a0 as $e,a1 as qe,a2 as Xe,a3 as Qe,a4 as ea,a5 as aa,a6 as ta,a7 as ia,a8 as na,a9 as sa,aa as ra,ab as ca,ac as oa,ad as la,ae as da,af as ua,ag as ma,ah as pa,ai as ga,aj as fa,ak as ha,al as ba,am as xa,an as va,ao as Na,ap as Aa,aq as Sa,ar as ya,as as Ta,at as Ca,au as wa,av as ka,aw as Ea,ax as Pa,ay as Ma,az as Ua,aA as Da,aB as Ia,aC as Ra,aD as _a,aE as Ga,aF as Ba,aG as La,aH as Ka,aI as Oa,aJ as Wa,aK as Fa,aL as Va,aM as za,aN as ja,aO as Ha,aP as Ja,aQ as Ya,aR as Za,aS as $a,aT as qa,aU as Xa,aV as Qa,aW as et,aX as at,aY as tt,aZ as it}from"./react-DkhpyQTr.mjs";export{a_ as SETTINGS_SCREENS}from"./react-DkhpyQTr.mjs";import*as nt from"@radix-ui/react-switch";import{zodResolver as st}from"@hookform/resolvers/zod";import{useForm as rt}from"react-hook-form";import{z as ct}from"zod";import{MagnifyingGlassIcon as ot,CaretSortIcon as lt,CheckIcon as dt}from"@radix-ui/react-icons";import{Command as ut}from"cmdk";import*as mt from"@radix-ui/react-select";import{SelectValue as pt}from"@radix-ui/react-select";import"clsx";import"tailwind-merge";import"intl-messageformat";import"@radix-ui/react-slot";import"class-variance-authority";import"@radix-ui/react-dialog";import"@radix-ui/react-label";import"@radix-ui/react-avatar";import"@radix-ui/react-radio-group";import"@radix-ui/react-scroll-area";import"@radix-ui/react-separator";import"@radix-ui/react-accordion";import"@radix-ui/react-alert-dialog";import"@radix-ui/react-popover";const gt=()=>e($,{title:null});const ft=({open:t,onOpenChange:n,packages:s,billingCurrency:r,workspaceName:c,onSelectPackage:o,purchasingPackageId:l,loading:d=!1})=>{const{t:u,dir:m,fmtNum:p,fmtCents:g,formattingLocale:f}=q(),h=V(()=>{const e=new Set;return s.forEach(a=>{a.pricingVariants?.forEach(a=>{a.currency&&e.add(a.currency.toLowerCase())})}),Array.from(e)},[s]),b=V(()=>{const e=r?.trim().toLowerCase();return e?h.includes(e)?[e]:[]:h},[r,h]),[x,v]=z(()=>b.length>0?b[0]:""),N=r?.trim().toLowerCase()||x,A=d||!!l;return e(X,{open:t,onOpenChange:n,children:a(Q,{dir:m,className:"inset-0 w-screen h-screen max-w-none rounded-none translate-x-0 translate-y-0 p-0 flex flex-col",children:[a("div",{className:"flex-shrink-0 px-4 py-4 sm:px-6 sm:py-6 border-b space-y-3 sm:space-y-4",children:[a("div",{children:[e(ee,{className:"text-xl font-semibold",children:u("credits.dialogTitle")}),a(ae,{className:"mt-1 text-sm",children:[u("credits.dialogDescription"),c&&e("span",{className:"ms-1 font-medium text-foreground",children:u("credits.dialogDescriptionWorkspace",{workspace:c})})]})]}),!r?.trim()&&b.length>1&&a("div",{className:"flex items-center gap-2",children:[e("span",{className:"text-sm text-muted-foreground",children:u("pricing.currency")}),e("div",{className:"flex gap-1 rounded-lg border border-border bg-muted/30 p-1",children:b.map(e=>a("button",{type:"button",onClick:()=>v(e),className:ie("rounded-md px-3 py-1.5 text-sm font-medium transition-colors",N===e?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[te(e)," ",e.toUpperCase()]},e))})]})]}),e("div",{className:"flex-1 overflow-y-auto",children:0===s.length?a("div",{className:"flex flex-col items-center justify-center py-16 text-muted-foreground/70",children:[e(i,{className:"h-12 w-12 mb-3"}),e("p",{className:"text-sm",children:u("credits.noPackages")})]}):e("div",{className:"max-w-2xl mx-auto px-4 py-6 sm:px-6 space-y-4",children:s.map(t=>{const n=t.pricingVariants?.find(e=>e.currency?.toLowerCase()===N)??t.pricingVariants?.[0],s=n?.amount,r=n?.currency??N,c=l===t._id,d=null!=s&&s>0&&t.creditAmount>0?function(e,a,t){const i=Math.round(e);if(i>=1)return se(i,a,t);const n=re(a),s=e/10**n,r=Math.min(n+4,Math.max(n,Math.ceil(-Math.log10(s))+1));try{return new Intl.NumberFormat(t,{style:"currency",currency:a.trim().toUpperCase(),minimumFractionDigits:r,maximumFractionDigits:r}).format(s)}catch{return te(a)+s.toFixed(r)}}(s/t.creditAmount,r,f):null;return a("div",{className:ie("rounded-xl border p-5 sm:p-6 flex flex-col sm:flex-row sm:items-center gap-4 transition-all",c?"border-primary bg-primary/5 shadow-md":"border-border hover:border-border hover:shadow-sm"),children:[a("div",{className:"flex-1 min-w-0",children:[a("div",{className:"flex items-center gap-2 mb-1",children:[e("h3",{className:"text-lg font-semibold text-foreground",children:t.name}),a("span",{className:"inline-flex items-center gap-1 rounded-full bg-info/10 px-2.5 py-0.5 text-xs font-medium text-info",children:[e(i,{className:"h-3.5 w-3.5"}),u("credits.creditsAmount",{count:p(t.creditAmount)})]})]}),t.description&&e("p",{className:"text-sm text-muted-foreground mb-2",children:t.description}),a("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-muted-foreground/70",children:[e("span",{children:t.validityDays?u("credits.validityDays",{count:t.validityDays}):u("credits.validityUnlimited")}),null!=d&&e("span",{children:u("credits.perCredit",{price:d})})]})]}),a("div",{className:"flex items-center gap-4 sm:flex-col sm:items-end sm:gap-2 shrink-0",children:[null!=s&&e("span",{className:"text-2xl sm:text-3xl font-bold text-foreground whitespace-nowrap",children:g(s,r)}),e(ne,{size:"sm",onClick:()=>o(t),disabled:A,progress:c,className:"whitespace-nowrap",children:c?u("credits.purchasing"):u("credits.buyAmount",{count:p(t.creditAmount)})})]})]},t._id)})})})]})})},ht=({titleKey:t,descriptionKey:i})=>{const{t:s}=q();return e("div",{className:"border border-warning/20 bg-warning/10 rounded-lg p-4",children:a("div",{className:"flex items-start gap-3",children:[e(n,{className:"h-5 w-5 text-warning shrink-0 mt-0.5"}),a("div",{children:[e("h4",{className:"text-sm font-medium text-warning",children:s(t??"settings.common.noPermissionTitle")}),e("p",{className:"text-xs text-warning/80 mt-1",children:s(i??"settings.common.noPermissionDescription")})]})]})})};function bt(){return a("div",{className:"space-y-3.5",children:[e(ce,{className:"h-10 w-full"}),e(ce,{className:"h-10 w-full"}),e(ce,{className:"h-10 w-full"})]})}const xt={[ke.PlanGrant]:"credits.type.plan_grant",[ke.PackPurchased]:"credits.type.pack_purchased",[ke.Consumed]:"credits.type.consumed",[ke.Expired]:"credits.type.expired",[ke.AdminGrant]:"credits.type.admin_grant",[ke.AdminRevoke]:"credits.type.admin_revoke",[ke.Refund]:"credits.type.refund"};const vt=({workspace:n})=>{const l=n._id?.toString(),{t:d,fmtNum:u}=q(),{can:m}=oe(),{visible:p}=le(),g=p(e=>e.settings?.credits?.transactions),f=m(de.WORKSPACE_BILLING_VIEW),h=p(e=>e.settings?.credits?.buyButton,de.WORKSPACE_BILLING_MANAGE),{balance:b,loading:x,error:v,refetch:N}=ue(),{packages:A,loading:S}=me(l),{expiringCredits:y,loading:T}=pe(l,7),[C,w]=z(1),{transactions:k,hasNextPage:E,loading:P,refetch:M}=ge(l,{limit:10,page:C}),[U,D]=z([]);j(()=>{P||0===k.length||D(1===C?k:e=>{const a=new Set(e.map(e=>e._id)),t=k.filter(e=>!a.has(e._id));return t.length>0?[...e,...t]:e})},[k,C,P]);const I=H(()=>{E&&!P&&w(e=>e+1)},[E,P]),R=U,{purchaseCredits:_,loading:G}=fe(l),[B,L]=z(!1),[K,O]=z(null),[W,F]=z(!1),[V,Y]=z(!1),[Z,$]=z(null),[X,Q]=z(!1),ee=J(!1),ae=x&&!b;j(()=>{if(ee.current)return;const e=he.getState();if(!e.params?.action)return;if(e.params.action===be.OpenCreditStore)return ee.current=!0,he.clearParams(),void Q(!0);if(e.params.action!==be.CreditPurchase)return;ee.current=!0;const a=e.params.status;if(he.clearParams(),a===xe.Success){F(!0),ve();const e=setTimeout(()=>F(!1),8e3);return()=>clearTimeout(e)}if(a===xe.Cancel){Y(!0);const e=setTimeout(()=>Y(!1),5e3);return()=>clearTimeout(e)}a===xe.Error&&O(d("credits.purchaseFailed"))},[]);if(ae)return e(bt,{});if(!f)return e(ht,{});if(!l)return e("div",{className:"border rounded-lg p-4 text-center text-muted-foreground",children:e("p",{children:d("subscription.invalidWorkspace")})});const te=!S&&A.length>0;return a("div",{className:"space-y-4",children:[a("div",{className:"space-y-3",children:[e("p",{className:"text-sm text-muted-foreground",children:d("credits.description")}),a("div",{className:"flex flex-wrap items-center gap-2",children:[te&&h&&a(ne,{size:"sm",onClick:()=>Q(!0),children:[e(s,{className:"h-3.5 w-3.5 me-1.5"}),d("credits.buyCredits")]}),a(ne,{variant:"ghost",size:"sm",onClick:async()=>{L(!0);try{await N()}finally{L(!1)}},disabled:B,children:[e(r,{className:ie("h-3.5 w-3.5 me-1.5",B&&"animate-spin")}),d("settings.common.refreshAction",{loading:String(B)})]})]})]}),v&&e(Ne,{variant:"error",title:d("credits.errorLoading"),message:v}),W&&e(Ne,{variant:"success",icon:e(c,{className:"h-4 w-4 flex-shrink-0"}),title:d("credits.purchaseSuccess"),actionLabel:d("settings.common.dismiss"),onAction:()=>F(!1)}),V&&e(Ne,{variant:"warning",title:d("credits.purchaseCanceled"),actionLabel:d("settings.common.dismiss"),onAction:()=>Y(!1)}),K&&e(Ne,{variant:"error",message:K,actionLabel:d("settings.common.dismiss"),onAction:()=>O(null)}),a("div",{className:"border border-border rounded-lg overflow-hidden",children:[a("div",{className:"bg-muted/30 p-4 sm:p-5",children:[a("div",{className:"flex items-center justify-between mb-3",children:[e("h3",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wider",children:d("credits.balance")}),e(i,{className:"h-5 w-5 text-muted-foreground/70"})]}),b?a(t,{children:[e("div",{className:"text-3xl font-bold text-foreground mb-4",children:u(b.available)}),a("div",{className:"grid grid-cols-2 gap-3",children:[a("div",{children:[e("p",{className:"text-xs text-muted-foreground",children:d("credits.totalGranted")}),e("p",{className:"text-sm font-medium text-foreground",children:u(b.totalGranted)})]}),a("div",{children:[e("p",{className:"text-xs text-muted-foreground",children:d("credits.totalConsumed")}),e("p",{className:"text-sm font-medium text-foreground",children:u(b.totalConsumed)})]}),a("div",{children:[e("p",{className:"text-xs text-muted-foreground",children:d("credits.totalExpired")}),e("p",{className:"text-sm font-medium text-foreground",children:u(b.totalExpired)})]}),a("div",{children:[e("p",{className:"text-xs text-muted-foreground",children:d("credits.available")}),e("p",{className:"text-sm font-semibold text-success",children:u(b.available)})]})]})]}):a("div",{className:"text-center py-4",children:[e(i,{className:"h-10 w-10 text-muted-foreground/50 mx-auto mb-2"}),e("p",{className:"text-sm text-muted-foreground",children:d("credits.noCredits")}),e("p",{className:"text-xs text-muted-foreground mt-1",children:d("credits.noCreditsHint")}),te&&h&&a(ne,{size:"sm",className:"mt-3",onClick:()=>Q(!0),children:[e(s,{className:"h-3.5 w-3.5 me-1.5"}),d("credits.buyCredits")]})]})]}),!T&&y>0&&e("div",{className:"px-4 py-3 bg-warning/10 border-t border-warning/30 text-sm text-warning",children:d("credits.expiringInDays",{count:y,days:7})})]}),g&&a("div",{children:[e(Ae,{title:d("credits.transactions"),className:"mb-3"}),P&&0===R.length?e(Se,{}):0===R.length?e(ye,{icon:e(o,{className:"h-5 w-5 text-muted-foreground"}),description:d("credits.noTransactions"),action:e(ne,{variant:"outline",size:"sm",progress:P,onClick:M,children:d("settings.common.refreshAction",{loading:String(P)})})}):a("div",{className:"border border-border rounded-lg overflow-hidden",children:[e("div",{className:"divide-y divide-border/60",children:R.map(a=>e(Nt,{tx:a},a._id))}),E&&e("div",{className:"border-t border-border px-4 py-3 text-center",children:e(ne,{variant:"ghost",size:"sm",onClick:I,disabled:P,progress:P&&C>1,children:d("credits.loadMore")})})]})]}),te&&h&&e(ft,{open:X,onOpenChange:Q,packages:A,billingCurrency:n.billingCurrency,workspaceName:n.name,onSelectPackage:async e=>{if(l){O(null),$(e._id);try{const{successUrl:a,cancelUrl:t}=Ce(l),i=await _({creditPackageId:e._id,successUrl:a,cancelUrl:t});i.url&&we(i.url)}catch(e){O(e instanceof Error?e.message:d("errors.purchaseCredits")),$(null)}}},purchasingPackageId:Z,loading:G})]})};function Nt({tx:t}){const{t:i,formattingLocale:n,fmtNum:s}=q(),r=xt[t.type]??"credits.type.consumed",c=function(e){switch(e){case"plan_grant":case"admin_grant":case"refund":return"bg-success/15 text-success";case"pack_purchased":return"bg-info/15 text-info";case"consumed":default:return"bg-muted text-foreground";case"expired":case"admin_revoke":return"bg-destructive/15 text-destructive"}}(t.type),o=t.amount>0;return e("div",{className:"px-3 py-3 sm:px-4",children:a("div",{className:"flex items-start justify-between gap-2",children:[a("div",{className:"min-w-0 flex-1",children:[a("div",{className:"flex flex-wrap items-center gap-1.5 mb-0.5",children:[e("span",{className:ie("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium shrink-0",c),children:i(r)}),t.description&&e("p",{className:"text-sm text-foreground truncate",children:t.description})]}),e("p",{className:"text-xs text-muted-foreground/70",children:Te(t.createdAt,n)})]}),a("div",{className:"text-end shrink-0",children:[a("span",{className:ie("text-sm font-semibold",o?"text-success":"text-foreground"),children:[o?"+":"",s(t.amount)]}),e("p",{className:"text-xs text-muted-foreground/70",children:s(t.balanceAfter)})]})]})})}const At=({workspace:i})=>{const[n,s]=z(!1),{deleteWorkspace:r}=Ee(),{can:c}=oe(),{settings:o}=Pe(),{t:u}=q();if(1===(o?.workspace?.maxWorkspacesPerUser??0))return null;if(!i)return e(bt,{});return c(de.WORKSPACE_DELETE)?a("div",{className:"space-y-4",children:[e(Ae,{title:u("danger.title"),titleClassName:"text-destructive",description:u("danger.deleteDescription")}),a(Me,{children:[e(Ue,{asChild:!0,children:a(ne,{variant:"destructive",disabled:n,progress:n,children:[e(l,{className:"h-4 w-4 me-2"}),u("danger.deleteWorkspace")]})}),a(De,{children:[a(Ie,{children:[e(Re,{children:u("danger.deleteConfirm")}),e(_e,{children:u("danger.deleteConfirmDescription")})]}),a(Ge,{children:[e(Be,{disabled:n,children:u("settings.common.cancel")}),e(Le,{onClick:async()=>{s(!0);try{await r(i._id)}catch(e){Ke(e,{component:"WorkspaceSettingsDanger",action:"handleDeleteWorkspace",metadata:{workspaceId:i._id}})}finally{s(!1)}},disabled:n,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:n?a(t,{children:[e(d,{className:"me-2 h-4 w-4 animate-spin"}),u("danger.deleting")]}):u("danger.deleteWorkspace")})]})]})]})]}):e(ht,{descriptionKey:"danger.adminOnly"})},St=()=>{const{visible:t}=le(),i=t(e=>e.settings?.devices?.sessions);return a("div",{className:"space-y-8",children:[e(Oe,{title:null}),i&&e(We,{})]})},yt=W.forwardRef(({className:a,...t},i)=>e(nt.Root,{className:ie("peer inline-flex h-[20px] w-[36px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",a),...t,ref:i,children:e(nt.Thumb,{className:ie("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 rtl:data-[state=checked]:-translate-x-4 data-[state=unchecked]:translate-x-0")})}));function Tt(e=5e3){const[a,t]=z(null),i=J(null);j(()=>()=>{i.current&&clearTimeout(i.current)},[]);return{message:a,show:H(a=>{t(a),i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{t(null)},e)},[e]),clear:H(()=>{t(null),i.current&&clearTimeout(i.current)},[])}}yt.displayName=nt.Root.displayName;const Ct=({workspaceId:t})=>{const{t:i}=q(),{allFeatures:n,updateFeature:s,getWorkspace:r}=Ee(),{can:c}=oe(),[o,l]=z({}),m=Tt(),[p,g]=z(null);if(j(()=>{r(t).then(g).catch(e=>{Ke(e,{component:"WorkspaceSettingsFeatures",action:"getWorkspace"})})},[t]),!p)return e(bt,{});const f=c(de.WORKSPACE_FEATURES_EDIT);return a("div",{children:[m.message&&e(Ne,{variant:"success",title:i("settings.common.success"),message:m.message,className:"mb-4"}),a("div",{className:"flex flex-col gap-y-3.5 pe-4",children:[!f&&e(ht,{descriptionKey:"features.ownerOnly"}),!n.length&&e(ye,{icon:e(u,{className:"h-5 w-5 text-muted-foreground"}),description:i("features.noFeatures")}),n.length>0&&e("div",{className:"flex flex-col gap-y-3.5",children:n.map(t=>{const r=p?.features?.[t.slug],c=null!==o[t.slug]&&void 0!==o[t.slug],u=o[t.slug],h=i("features.actionStatus",{action:!0===u?"enabling":!1===u?"disabling":"none"});return a("div",{className:"flex items-center gap-x-2 justify-between w-full",children:[a("div",{className:"flex gap-x-2 flex-col",children:[e("h3",{className:"font-medium text-ellipsis",children:t.name}),e("p",{className:"text-muted-foreground",children:t.description})]}),c?a("div",{className:"flex items-center gap-x-1",children:[e(d,{className:"h-4 w-4 animate-spin text-muted-foreground"}),a("span",{className:"text-sm text-muted-foreground",children:[h,"..."]})]}):e(yt,{disabled:!f,checked:r??t.defaultValue,onCheckedChange:e=>async function(e,a){if(p){l(t=>({...t,[e]:a})),m.clear();try{const t=await s(p._id,e,a);g(t);const r=n.find(a=>a.slug===e),c=r?.name||i("features.fallbackName");m.show(i("features.updateSuccess",{feature:c,enabled:String(a)}))}catch(a){Ke(a,{component:"WorkspaceSettingsFeatures",action:"updateFeature",metadata:{workspaceId:p._id,featureKey:e}})}finally{l(a=>({...a,[e]:null}))}}}(t.slug,e)})]},t._id)})})]})]})},wt=({workspace:t})=>{const{t:i}=q(),{visible:n}=le(),s=n(e=>e.settings?.general?.nameEdit),r=n(e=>e.settings?.general?.iconEditor),{updateWorkspace:c}=Ee(),{can:o}=oe(),[l,d]=z(!1),[u,g]=z("emoji"),[f,h]=z(),b=Tt(),x=ct.object({name:ct.string().min(2,{message:i("general.nameMinLength")}),image:ct.string().optional()}),v=rt({resolver:st(x),defaultValues:{name:t.name||"",image:t.image||""}});if(!t)return e(bt,{});const N=o(de.WORKSPACE_SETTINGS_EDIT);return a("div",{children:[b.message&&e(Ne,{variant:"success",title:i("settings.common.success"),message:b.message,className:"mb-4"}),!N&&e(ht,{descriptionKey:"general.ownerOnly"}),e(Fe,{...v,children:a("form",{onSubmit:v.handleSubmit(async function(e){d(!0),b.clear();try{await c(t,e),b.show(i("general.success"))}catch(e){Ke(e,{component:"WorkspaceSettingsGeneral",action:"updateWorkspace",metadata:{workspaceId:t._id}})}finally{d(!1)}}),className:"space-y-6",children:[s&&e(Ve,{control:v.control,name:"name",render:({field:t})=>a(ze,{children:[e(je,{children:i("general.name")}),e(He,{children:e(Je,{placeholder:i("general.namePlaceholder"),...t,disabled:!N})}),e(Ye,{})]})}),t.billingCurrency?.trim()&&a("div",{className:"space-y-1.5",children:[e(Ze,{className:"text-sm font-medium text-muted-foreground",children:i("general.billingCurrency")}),a("div",{className:"flex items-center gap-2 text-sm",children:[$e(t.billingCurrency)&&e("span",{className:"text-base",children:$e(t.billingCurrency)}),e("span",{children:t.billingCurrency.trim().toUpperCase()})]})]}),r&&a("div",{className:"space-y-4",children:[a("div",{children:[e(Ze,{className:"text-sm font-medium",children:i("general.icon")}),e(qe,{children:i("general.iconDescription")})]}),a(Xe,{value:u,disabled:!N,onValueChange:e=>g(e),className:"flex flex-col space-y-3",children:[a("div",{className:"flex items-center space-x-2",children:[e(Qe,{value:"emoji",id:"emoji"}),a(Ze,{htmlFor:"emoji",className:"flex items-center gap-2",children:[e(m,{className:"h-4 w-4"}),i("general.chooseEmoji")]})]}),a("div",{className:"flex items-center space-x-2",children:[e(Qe,{value:"url",id:"url"}),a(Ze,{htmlFor:"url",className:"flex items-center gap-2",children:[e(p,{className:"h-4 w-4"}),i("general.customImageUrl")]})]})]}),"emoji"===u&&a("div",{className:"space-y-3",children:[a("div",{className:"flex items-center gap-3",children:[e("span",{className:"text-sm font-medium",children:i("general.previewLabel")}),a("div",{className:"w-12 h-12 rounded-lg border-2 border-border flex items-center justify-center text-2xl bg-muted",children:[f&&e("span",{className:"text-2xl",children:f}),!f&&v.watch("image")?.trim()&&e("img",{src:v.watch("image")||void 0,alt:i("general.previewImageAlt")})]})]}),N&&e(ea,{className:"h-32 w-full rounded-md border",children:e("div",{className:"p-4 grid grid-cols-8 gap-2",children:aa.map((a,t)=>e("button",{type:"button",onClick:()=>(e=>{h(e),v.setValue("image",ta(e))})(a),disabled:!N,"aria-label":a,"aria-pressed":f===a,className:"w-10 h-10 sm:w-8 sm:h-8 rounded flex items-center justify-center text-lg hover:bg-muted transition-colors "+(f===a?"bg-primary text-primary-foreground":""),children:a},t))})})]}),"url"===u&&a("div",{className:"space-y-3",children:[e(Ve,{control:v.control,name:"image",render:({field:t})=>a(ze,{children:[e(je,{children:i("general.imageUrl")}),e(He,{children:e(Je,{placeholder:i("general.imageUrlPlaceholder"),...t,disabled:!N})}),e(qe,{children:i("general.imageUrlDescription")}),e(Ye,{})]})}),v.watch("image")&&v.watch("image")?.trim()&&a("div",{className:"flex items-center gap-3",children:[e("span",{className:"text-sm font-medium",children:i("general.previewLabel")}),e("div",{className:"w-12 h-12 rounded-lg border-2 border-border overflow-hidden bg-muted",children:e("img",{src:v.watch("image")||void 0,className:"w-full h-full object-cover",alt:i("general.previewImageAlt")})})]})]})]}),e("div",{className:"flex justify-end gap-3 pt-4",children:N&&(s||r)&&e(ne,{type:"submit",disabled:l,progress:l,children:i("general.updateWorkspace")})})]})})]})};function kt(e,a,t){const i=e.defaults[a],n=i?.required?void 0:e.mine[a]?.[t];return"boolean"==typeof n?n:!1!==i?.[t]}const Et={firefox:4,safari:4,edge:4,chrome:4},Pt={defaults:{},mine:{}},Mt=({workspace:i})=>{const{isSupported:s,permission:r,isSubscribed:c,loading:o,error:l,subscribe:d,unsubscribe:u}=ia(),{t:m}=q(),{api:p}=na(),{can:b}=oe(),{visible:x}=le(),v=b(de.WORKSPACE_SETTINGS_EDIT),N=x(e=>e.settings?.notifications?.push),A=x(e=>e.settings?.notifications?.emailToggles),S=x(e=>e.settings?.notifications?.pushToggles),y=V(()=>function(){const e="undefined"!=typeof navigator?navigator.userAgent:"";return e.includes("Firefox")?"firefox":e.includes("Safari")&&!e.includes("Chrome")?"safari":e.includes("Edg")?"edge":"chrome"}(),[]),T=Et[y],[C,w]=z([]),[k,E]=z(!0),[P,M]=z(Pt),[U,D]=z(!0),[I,R]=z(null),[_,G]=z(null),[B,L]=z(null),K=J(null);j(()=>()=>{K.current&&clearTimeout(K.current)},[]),j(()=>{if(!i?._id)return;const e=i._id.toString();E(!0),D(!0),Promise.all([p.getNotificationEvents(e).catch(()=>[]),p.getMyNotificationPreferences(e).catch(()=>Pt)]).then(([e,a])=>{w(e),M(a)}).finally(()=>{E(!1),D(!1)})},[i?._id]);const O=H(()=>{G(m("notifications.prefsSaved")),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>G(null),3e3)},[m]),W=H(async(e,a)=>{if(!i?._id)return;if(P.defaults[e]?.required)return;const t=!kt(P,e,a),n=!1!==P.defaults[e]?.[a]===t?null:t,s=P;R(`mine.${e}.${a}`),G(null),L(null),M(t=>{const i={...t.mine[e]};return null===n?delete i[a]:i[a]=n,{...t,mine:{...t.mine,[e]:i}}});try{const t=await p.updateMyNotificationPreferences(i._id.toString(),{[e]:{[a]:n}});M(t),O()}catch(e){M(s),L(m("notifications.prefsSaveFailed")),Ke(e,{component:"SettingsNotifications",action:"toggleMine"})}finally{R(null)}},[i?._id,P,p,O,m]),F=H(async(e,a)=>{if(!i?._id||!v)return;const t=P.defaults[e]??{},n="required"===a?!t.required:!1===t[a],s=P;R(`defaults.${e}.${a}`),G(null),L(null),M(i=>({...i,defaults:{...i.defaults,[e]:{...t,[a]:n}}}));try{const t=await p.updateNotificationPreferences(i._id.toString(),{[e]:{[a]:n}});M(e=>({...e,defaults:t})),O()}catch(e){M(s),L(m("notifications.prefsSaveFailed")),Ke(e,{component:"SettingsNotifications",action:"toggleDefault"})}finally{R(null)}},[i?._id,v,P,p,O,m]),Y=V(()=>{const e=new Map;for(const a of C){const t=a.category||"general";e.has(t)||e.set(t,[]),e.get(t).push(a)}return Array.from(e.entries())},[C]),Z=k||U,$=C.length>0;return a("div",{className:"space-y-4",children:[e("p",{className:"text-sm text-muted-foreground",children:m("notifications.manageDescription")}),N&&s&&a(t,{children:[l&&"denied"!==r&&e(Ne,{variant:"error",message:l}),"denied"===r&&e("div",{className:"border border-warning/30 bg-warning/10 rounded-lg p-4",children:a("div",{className:"flex items-start gap-3",children:[e(n,{className:"h-5 w-5 text-warning shrink-0 mt-0.5"}),a("div",{children:[e("h4",{className:"text-sm font-medium text-warning",children:m("notifications.blocked")}),e("p",{className:"text-xs text-warning mt-1",children:m("notifications.blockedDescription")}),e("ol",{className:"text-xs text-warning mt-2 space-y-1 list-decimal list-inside",children:Array.from({length:T},(a,t)=>e("li",{children:m(`notifications.unblock.${y}.step${t+1}`)},t))})]})]})}),"denied"!==r&&a("div",{className:"border rounded-lg p-4",children:[a("div",{className:"flex items-start justify-between gap-4",children:[a("div",{className:"flex items-start gap-3",children:[e("div",{className:"mt-0.5 p-2 rounded-lg "+(c?"bg-success/15":"bg-muted"),children:c?e(g,{className:"h-4 w-4 text-success"}):e(f,{className:"h-4 w-4 text-muted-foreground/70"})}),a("div",{children:[e("h4",{className:"text-sm font-medium text-foreground",children:m("notifications.pushTitle")}),e("p",{className:"text-xs text-muted-foreground mt-0.5",children:m("notifications.pushDescription",{subscribed:String(c)})})]})]}),e(ne,{variant:c?"outline":"default",size:"sm",className:"shrink-0",onClick:c?u:d,disabled:o,progress:o,children:m("notifications.toggleAction",{loading:String(o),subscribed:String(c)})})]}),c&&e("div",{className:"mt-3 pt-3 border-t border-border/60 text-xs text-muted-foreground",children:m("notifications.deviceNote")})]})]}),Z&&e("div",{className:"text-center text-sm text-muted-foreground/70 py-4",children:m("notifications.loadingPrefs")}),!Z&&$&&(A||S)&&a(t,{children:[_&&e(Ne,{variant:"success",message:_}),B&&e(Ne,{variant:"error",message:B}),e(Ut,{title:m("notifications.yourTitle"),description:m("notifications.yourDescription"),grouped:Y,showEmail:A,showPush:S,renderCell:(a,t)=>{const i=Boolean(P.defaults[a.slug]?.required);return e(yt,{checked:kt(P,a.slug,t),onCheckedChange:()=>W(a.slug,t),disabled:i||I===`mine.${a.slug}.${t}`,"aria-label":`${a.name}: ${t}`})},renderNote:t=>P.defaults[t.slug]?.required?a("span",{className:"inline-flex items-center gap-1 text-xs text-muted-foreground",children:[e(h,{className:"h-3 w-3","aria-hidden":"true"}),m("notifications.requiredHint")]}):null}),v&&e(Ut,{title:m("notifications.defaultsTitle"),description:m("notifications.defaultsDescription"),grouped:Y,showEmail:A,showPush:S,extraColumn:{header:m("notifications.requiredLabel"),render:a=>e(yt,{checked:Boolean(P.defaults[a.slug]?.required),onCheckedChange:()=>F(a.slug,"required"),disabled:I===`defaults.${a.slug}.required`,"aria-label":`${a.name}: ${m("notifications.requiredLabel")}`})},renderCell:(a,t)=>e(yt,{checked:!1!==P.defaults[a.slug]?.[t],onCheckedChange:()=>F(a.slug,t),disabled:I===`defaults.${a.slug}.${t}`,"aria-label":`${a.name}: ${t}`})})]})]})};function Ut({title:t,description:i,grouped:n,showEmail:s,showPush:r,renderCell:c,renderNote:o,extraColumn:l}){return a("section",{className:"space-y-2",children:[a("div",{children:[e("h3",{className:"text-sm font-medium text-foreground",children:t}),e("p",{className:"text-xs text-muted-foreground mt-0.5",children:i})]}),n.map(([t,i])=>a("div",{className:"border rounded-lg overflow-hidden",children:[e("div",{className:"bg-muted/50 px-4 py-2.5 border-b",children:e("h4",{className:"text-sm font-medium text-foreground capitalize",children:t})}),a("div",{className:"divide-y",children:[a("div",{className:"flex items-center px-4 py-2 bg-muted/30",children:[e("div",{className:"flex-1"}),a("div",{className:"flex items-center gap-6",children:[s&&e("div",{className:"w-12 flex justify-center",children:e(b,{className:"h-3.5 w-3.5 text-muted-foreground/70","aria-hidden":"true"})}),r&&e("div",{className:"w-12 flex justify-center",children:e(x,{className:"h-3.5 w-3.5 text-muted-foreground/70","aria-hidden":"true"})}),l&&e("div",{className:"w-16 text-center text-xs text-muted-foreground",children:l.header})]})]}),i.map(t=>a("div",{className:"flex items-center px-4 py-3",children:[a("div",{className:"flex-1 min-w-0",children:[e("div",{className:"text-sm font-medium text-foreground",children:t.name}),t.description&&e("div",{className:"text-xs text-muted-foreground mt-0.5",children:t.description}),o?.(t)]}),a("div",{className:"flex items-center gap-6 shrink-0",children:[s&&e("div",{className:"w-12 flex justify-center",children:t.channels.email?c(t,"email"):e("span",{className:"text-xs text-muted-foreground/50",children:"-"})}),r&&e("div",{className:"w-12 flex justify-center",children:t.channels.push?c(t,"push"):e("span",{className:"text-xs text-muted-foreground/50",children:"-"})}),l&&e("div",{className:"w-16 flex justify-center",children:l.render(t)})]})]},t.slug))]})]},t))]})}const Dt=({workspace:t})=>{const{t:i}=q(),{isOwner:n}=oe(),{settings:s}=Pe(),{appPermissions:r}=sa(),{updateWorkspacePermissions:c}=Ee(),[o,l]=z(!1),d=Tt(),u=V(()=>s?.workspace?.roles??t.roles??[],[s?.workspace?.roles,t.roles]),m=V(()=>ra(s,r),[s,r]),p=V(()=>e=>ca(e,{workspace:t,settings:s,appPermissions:r},{applyRestrictions:!1}),[t,s,r]),[g,f]=z({});j(()=>{const e={};for(const a of u)e[a]=[...p(a)].filter(e=>!e.startsWith("workspace:"));f(e)},[p,u]);const h=V(()=>{const e=new Map;for(const a of m){const t=a.group??"";e.set(t,[...e.get(t)??[],a])}return[...e.entries()]},[m]);if(!t)return e(bt,{});if(0===m.length)return null;return a("div",{children:[d.message&&e(Ne,{variant:"success",title:i("settings.common.success"),message:d.message,className:"mb-4"}),!n&&e(ht,{descriptionKey:"permissions.ownerOnly"}),e("p",{className:"text-sm text-muted-foreground mb-4",children:i("permissions.description")}),e("div",{className:"overflow-x-auto",children:a("table",{className:"w-full text-sm",children:[e("thead",{children:a("tr",{className:"border-b",children:[e("th",{className:"text-start py-2 pe-4 font-medium text-muted-foreground min-w-[160px]"}),u.map(a=>e("th",{className:"text-center py-2 px-3 font-medium text-foreground capitalize min-w-[80px]",children:a},a))]})}),e("tbody",{children:h.map(([t,i])=>a(F.Fragment,{children:[h.length>1&&t&&e("tr",{children:e("td",{colSpan:u.length+1,className:"pt-4 pb-1 text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:t})}),i.map(({key:t,label:i})=>a("tr",{className:"border-b border-border/40 hover:bg-muted/30",children:[a("td",{className:"py-2 pe-4 text-foreground",children:[e("div",{children:i}),i!==t&&e("div",{className:"font-mono text-xs opacity-60",children:t})]}),u.map(a=>{const s="admin"===a,r=s||(g[a]??[]).includes(t);return e("td",{className:"text-center py-2 px-3",children:e(yt,{checked:r,disabled:!n||s,onCheckedChange:()=>((e,a)=>{f(t=>{const i=t[e]??[],n=i.includes(a);return{...t,[e]:n?i.filter(e=>e!==a):[...i,a]}})})(a,t),className:"mx-auto","aria-label":`${i}: ${a}`})},a)})]},t))]},t||"_"))})]})}),n&&e("div",{className:"mt-6",children:e(ne,{onClick:async()=>{l(!0),d.clear();try{const e={};for(const a of u){const t=[...p(a)].filter(e=>e.startsWith("workspace:"));e[a]=[...t,...g[a]??[]]}await c(t._id,e),d.show(i("permissions.saveSuccess"))}catch(e){Ke(e,{component:"WorkspaceSettingsPermissions",action:"savePermissions",metadata:{workspaceId:t._id}})}finally{l(!1)}},disabled:o,progress:o,children:i(o?"permissions.saving":"permissions.save")})})]})},It=W.forwardRef(({className:a,...t},i)=>e(ut,{ref:i,className:ie("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...t}));It.displayName=ut.displayName;const Rt=W.forwardRef(({className:t,...i},n)=>a("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[e(ot,{className:"me-2 h-4 w-4 shrink-0 opacity-50"}),e(ut.Input,{ref:n,className:ie("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",t),...i})]}));Rt.displayName=ut.Input.displayName;const _t=W.forwardRef(({className:a,...t},i)=>e(ut.List,{ref:i,className:ie("max-h-[300px] overflow-y-auto overflow-x-hidden",a),...t}));_t.displayName=ut.List.displayName;const Gt=W.forwardRef((a,t)=>e(ut.Empty,{ref:t,className:"py-6 text-center text-sm",...a}));Gt.displayName=ut.Empty.displayName;const Bt=W.forwardRef(({className:a,...t},i)=>e(ut.Group,{ref:i,className:ie("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",a),...t}));Bt.displayName=ut.Group.displayName;W.forwardRef(({className:a,...t},i)=>e(ut.Separator,{ref:i,className:ie("-mx-1 h-px bg-border",a),...t})).displayName=ut.Separator.displayName;const Lt=W.forwardRef(({className:a,...t},i)=>e(ut.Item,{ref:i,className:ie("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50",a),...t}));function Kt({options:t,value:i,onChange:n,placeholder:s,emptyLabel:r}){const{t:c}=q(),o=s??c("dropdowns.search"),l=r??c("dropdowns.chooseOption"),[d,u]=z(i??""),[m,p]=z(!1);j(()=>{void 0!==i&&u(i)},[i]);const g=t.find(e=>e.value===d);return a(oa,{open:m,onOpenChange:p,children:[e(la,{asChild:!0,children:a(ne,{variant:"outline",role:"combobox","aria-expanded":m,className:"h-10 sm:h-9 w-full justify-between rounded-md border-input bg-transparent px-3 py-1 text-base sm:text-sm font-normal shadow-sm hover:bg-transparent",children:[g?a("div",{className:"truncate",children:[String(g.label).trim(),g.icon&&e("span",{className:"ms-2 text-xs text-muted-foreground",children:g.icon})]}):e("span",{className:"text-muted-foreground",children:l}),e(v,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),e(da,{className:"p-0 overflow-hidden text-ellipsis",asChild:!0,children:a(It,{children:[e(Rt,{placeholder:o}),a(_t,{children:[e(Gt,{children:c("dropdowns.noResults")}),e(Bt,{children:t.map(t=>a(Lt,{className:ie("whitespace-nowrap text-start",{"text-success":d===t.value}),value:t.value,keywords:[t.label],onSelect:()=>{return e=t.value,u(e),n?.(e),void p(!1);var e},children:[d===t.value&&e(N,{className:ie("me-2 h-4 w-4 text-success",d===t.value?"opacity-100":"opacity-0")}),String(t.label).trim(),t.icon&&e("span",{className:"ms-2 text-xs text-muted-foreground",children:t.icon})]},t.value))})]})]})})]})}Lt.displayName=ut.Item.displayName;const Ot={USD:"$",EUR:"€",JPY:"¥",GBP:"£",AUD:"A$",CAD:"C$",CHF:"CHF",CNY:"¥",SEK:"kr",NZD:"NZ$",INR:"₹",RUB:"₽",KRW:"₩",BRL:"R$",ZAR:"R",HKD:"HK$",SGD:"S$",MXN:"Mex$",NOK:"kr",TRY:"₺",IDR:"Rp",PLN:"zł",THB:"฿",ILS:"₪",PHP:"₱",MYR:"RM",CZK:"Kč",HUF:"Ft",DKK:"kr",PKR:"₨",EGP:"£",NGN:"₦",BDT:"৳",UAH:"₴",KZT:"₸",VND:"₫",ARS:"$",BGN:"лв",COP:"COL$",HRK:"kn",ISK:"kr",KES:"KSh",LKR:"Rs",MAD:"د.م.",MNT:"₮",NPR:"रू",RSD:"дин.",SAR:"ر.س",TWD:"NT$",UYU:"$U",YER:"﷼",FJD:"FJ$",JMD:"J$",HTG:"G",BHD:"ب.د",KWD:"د.ك",OMR:"ر.ع.",BND:"B$",KPW:"₩",GHS:"₵",SYP:"ل.س",SLL:"Le",SSP:"£",AFN:"؋",MGA:"Ar",MDL:"lei",FOK:"kr",GMD:"D",LTL:"Lt",LVL:"Ls",HNL:"L",GEL:"₾",BMD:"$",AWG:"Afl",BTN:"Nu",GTQ:"Q",TZS:"TSh",BBD:"Bds$",NAD:"N$",BZD:"$",JEP:"£",WST:"T",PGK:"K",KGS:"лв",AZN:"₼",QAR:"ر.ق",XOF:"CFA",XPF:"CFP"},Wt={AF:"AFN",AX:"EUR",AL:"ALL",DZ:"DZD",AS:"USD",AD:"EUR",AO:"AOA",AI:"XCD",AQ:"USD",AG:"XCD",AR:"ARS",AM:"AMD",AW:"AWG",AU:"AUD",AT:"EUR",AZ:"AZN",BS:"BSD",BH:"BHD",BD:"BDT",BB:"BBD",BY:"BYN",BE:"EUR",BZ:"BZD",BJ:"XOF",BM:"BMD",BT:"BTN",BO:"BOB",BA:"BAM",BW:"BWP",BV:"NOK",BR:"BRL",IO:"USD",BN:"BND",BG:"BGN",BF:"XOF",BI:"BIF",KH:"KHR",CM:"XAF",CA:"CAD",CV:"CVE",KY:"KYD",CF:"XAF",TD:"XAF",CL:"CLP",CN:"CNY",CX:"AUD",CC:"AUD",CO:"COP",KM:"KMF",CG:"XAF",CD:"CDF",CK:"NZD",CR:"CRC",CI:"XOF",HR:"HRK",CU:"CUP",CY:"EUR",CZ:"CZK",DK:"DKK",DJ:"DJF",DM:"XCD",DO:"DOP",EC:"USD",EG:"EGP",SV:"USD",GQ:"XAF",ER:"ERN",EE:"EUR",ET:"ETB",FK:"FKP",FO:"DKK",FJ:"FJD",FI:"EUR",FR:"EUR",GF:"EUR",PF:"XPF",TF:"EUR",GA:"XAF",GM:"GMD",GE:"GEL",DE:"EUR",GH:"GHS",GI:"GIP",GR:"EUR",GL:"DKK",GD:"XCD",GP:"EUR",GU:"USD",GT:"GTQ",GG:"GBP",GN:"GNF",GW:"XOF",GY:"GYD",HT:"HTG",HM:"AUD",VA:"EUR",HN:"HNL",HK:"HKD",HU:"HUF",IS:"ISK",IN:"INR",ID:"IDR",IR:"IRR",IQ:"IQD",IE:"EUR",IM:"GBP",IL:"ILS",IT:"EUR",JM:"JMD",JP:"JPY",JE:"GBP",JO:"JOD",KZ:"KZT",KE:"KES",KI:"AUD",KP:"KPW",KR:"KRW",KW:"KWD",KG:"KGS",LA:"LAK",LV:"EUR",LB:"LBP",LS:"LSL",LR:"LRD",LY:"LYD",LI:"CHF",LT:"EUR",LU:"EUR",MO:"MOP",MK:"MKD",MG:"MGA",MW:"MWK",MY:"MYR",MV:"MVR",ML:"XOF",MT:"EUR",MH:"USD",MQ:"EUR",MR:"MRU",MU:"MUR",YT:"EUR",MX:"MXN",FM:"USD",MD:"MDL",MC:"EUR",MN:"MNT",ME:"EUR",MS:"XCD",MA:"MAD",MZ:"MZN",MM:"MMK",NA:"NAD",NR:"AUD",NP:"NPR",NL:"EUR",AN:"ANG",NC:"XPF",NZ:"NZD",NI:"NIO",NE:"XOF",NG:"NGN",NU:"NZD",NF:"AUD",MP:"USD",NO:"NOK",OM:"OMR",PK:"PKR",PW:"USD",PS:"ILS",PA:"PAB",PG:"PGK",PY:"PYG",PE:"PEN",PH:"PHP",PN:"NZD",PL:"PLN",PT:"EUR",PR:"USD",QA:"QAR",RE:"EUR",RO:"RON",RU:"RUB",RW:"RWF",SH:"SHP",KN:"XCD",LC:"XCD",PM:"EUR",VC:"XCD",WS:"WST",SM:"EUR",ST:"STN",SA:"SAR",SN:"XOF",RS:"RSD",SC:"SCR",SL:"SLL",SG:"SGD",SK:"EUR",SI:"EUR",SB:"SBD",SO:"SOS",ZA:"ZAR",GS:"GBP",ES:"EUR",LK:"LKR",SD:"SDG",SR:"SRD",SJ:"NOK",SZ:"SZL",SE:"SEK",CH:"CHF",SY:"SYP",TW:"TWD",TJ:"TJS",TZ:"TZS",TH:"THB"},Ft=[{name:"Afghanistan",code:"AF"},{name:"land Islands",code:"AX"},{name:"Albania",code:"AL"},{name:"Algeria",code:"DZ"},{name:"American Samoa",code:"AS"},{name:"AndorrA",code:"AD"},{name:"Angola",code:"AO"},{name:"Anguilla",code:"AI"},{name:"Antarctica",code:"AQ"},{name:"Antigua and Barbuda",code:"AG"},{name:"Argentina",code:"AR"},{name:"Armenia",code:"AM"},{name:"Aruba",code:"AW"},{name:"Australia",code:"AU"},{name:"Austria",code:"AT"},{name:"Azerbaijan",code:"AZ"},{name:"Bahamas",code:"BS"},{name:"Bahrain",code:"BH"},{name:"Bangladesh",code:"BD"},{name:"Barbados",code:"BB"},{name:"Belarus",code:"BY"},{name:"Belgium",code:"BE"},{name:"Belize",code:"BZ"},{name:"Benin",code:"BJ"},{name:"Bermuda",code:"BM"},{name:"Bhutan",code:"BT"},{name:"Bolivia",code:"BO"},{name:"Bosnia and Herzegovina",code:"BA"},{name:"Botswana",code:"BW"},{name:"Bouvet Island",code:"BV"},{name:"Brazil",code:"BR"},{name:"British Indian Ocean Territory",code:"IO"},{name:"Brunei Darussalam",code:"BN"},{name:"Bulgaria",code:"BG"},{name:"Burkina Faso",code:"BF"},{name:"Burundi",code:"BI"},{name:"Cambodia",code:"KH"},{name:"Cameroon",code:"CM"},{name:"Canada",code:"CA"},{name:"Cape Verde",code:"CV"},{name:"Cayman Islands",code:"KY"},{name:"Central African Republic",code:"CF"},{name:"Chad",code:"TD"},{name:"Chile",code:"CL"},{name:"China",code:"CN"},{name:"Christmas Island",code:"CX"},{name:"Cocos (Keeling) Islands",code:"CC"},{name:"Colombia",code:"CO"},{name:"Comoros",code:"KM"},{name:"Congo",code:"CG"},{name:"Congo, The Democratic Republic of the",code:"CD"},{name:"Cook Islands",code:"CK"},{name:"Costa Rica",code:"CR"},{name:"Cote D Ivoire",code:"CI"},{name:"Croatia",code:"HR"},{name:"Cuba",code:"CU"},{name:"Cyprus",code:"CY"},{name:"Czech Republic",code:"CZ"},{name:"Denmark",code:"DK"},{name:"Djibouti",code:"DJ"},{name:"Dominica",code:"DM"},{name:"Dominican Republic",code:"DO"},{name:"Ecuador",code:"EC"},{name:"Egypt",code:"EG"},{name:"El Salvador",code:"SV"},{name:"Equatorial Guinea",code:"GQ"},{name:"Eritrea",code:"ER"},{name:"Estonia",code:"EE"},{name:"Ethiopia",code:"ET"},{name:"Falkland Islands (Malvinas)",code:"FK"},{name:"Faroe Islands",code:"FO"},{name:"Fiji",code:"FJ"},{name:"Finland",code:"FI"},{name:"France",code:"FR"},{name:"French Guiana",code:"GF"},{name:"French Polynesia",code:"PF"},{name:"French Southern Territories",code:"TF"},{name:"Gabon",code:"GA"},{name:"Gambia",code:"GM"},{name:"Georgia",code:"GE"},{name:"Germany",code:"DE"},{name:"Ghana",code:"GH"},{name:"Gibraltar",code:"GI"},{name:"Greece",code:"GR"},{name:"Greenland",code:"GL"},{name:"Grenada",code:"GD"},{name:"Guadeloupe",code:"GP"},{name:"Guam",code:"GU"},{name:"Guatemala",code:"GT"},{name:"Guernsey",code:"GG"},{name:"Guinea",code:"GN"},{name:"Guinea-Bissau",code:"GW"},{name:"Guyana",code:"GY"},{name:"Haiti",code:"HT"},{name:"Heard Island and Mcdonald Islands",code:"HM"},{name:"Holy See (Vatican City State)",code:"VA"},{name:"Honduras",code:"HN"},{name:"Hong Kong",code:"HK"},{name:"Hungary",code:"HU"},{name:"Iceland",code:"IS"},{name:"India",code:"IN"},{name:"Indonesia",code:"ID"},{name:"Iran, Islamic Republic Of",code:"IR"},{name:"Iraq",code:"IQ"},{name:"Ireland",code:"IE"},{name:"Isle of Man",code:"IM"},{name:"Israel",code:"IL"},{name:"Italy",code:"IT"},{name:"Jamaica",code:"JM"},{name:"Japan",code:"JP"},{name:"Jersey",code:"JE"},{name:"Jordan",code:"JO"},{name:"Kazakhstan",code:"KZ"},{name:"Kenya",code:"KE"},{name:"Kiribati",code:"KI"},{name:'Korea, Democratic People"S Republic of',code:"KP"},{name:"Korea, Republic of",code:"KR"},{name:"Kuwait",code:"KW"},{name:"Kyrgyzstan",code:"KG"},{name:'Lao People"S Democratic Republic',code:"LA"},{name:"Latvia",code:"LV"},{name:"Lebanon",code:"LB"},{name:"Lesotho",code:"LS"},{name:"Liberia",code:"LR"},{name:"Libyan Arab Jamahiriya",code:"LY"},{name:"Liechtenstein",code:"LI"},{name:"Lithuania",code:"LT"},{name:"Luxembourg",code:"LU"},{name:"Macao",code:"MO"},{name:"Macedonia, The Former Yugoslav Republic of",code:"MK"},{name:"Madagascar",code:"MG"},{name:"Malawi",code:"MW"},{name:"Malaysia",code:"MY"},{name:"Maldives",code:"MV"},{name:"Mali",code:"ML"},{name:"Malta",code:"MT"},{name:"Marshall Islands",code:"MH"},{name:"Martinique",code:"MQ"},{name:"Mauritania",code:"MR"},{name:"Mauritius",code:"MU"},{name:"Mayotte",code:"YT"},{name:"Mexico",code:"MX"},{name:"Micronesia, Federated States of",code:"FM"},{name:"Moldova, Republic of",code:"MD"},{name:"Monaco",code:"MC"},{name:"Mongolia",code:"MN"},{name:"Montenegro",code:"ME"},{name:"Montserrat",code:"MS"},{name:"Morocco",code:"MA"},{name:"Mozambique",code:"MZ"},{name:"Myanmar",code:"MM"},{name:"Namibia",code:"NA"},{name:"Nauru",code:"NR"},{name:"Nepal",code:"NP"},{name:"Netherlands",code:"NL"},{name:"Netherlands Antilles",code:"AN"},{name:"New Caledonia",code:"NC"},{name:"New Zealand",code:"NZ"},{name:"Nicaragua",code:"NI"},{name:"Niger",code:"NE"},{name:"Nigeria",code:"NG"},{name:"Niue",code:"NU"},{name:"Norfolk Island",code:"NF"},{name:"Northern Mariana Islands",code:"MP"},{name:"Norway",code:"NO"},{name:"Oman",code:"OM"},{name:"Pakistan",code:"PK"},{name:"Palau",code:"PW"},{name:"Palestinian Territory, Occupied",code:"PS"},{name:"Panama",code:"PA"},{name:"Papua New Guinea",code:"PG"},{name:"Paraguay",code:"PY"},{name:"Peru",code:"PE"},{name:"Philippines",code:"PH"},{name:"Pitcairn",code:"PN"},{name:"Poland",code:"PL"},{name:"Portugal",code:"PT"},{name:"Puerto Rico",code:"PR"},{name:"Qatar",code:"QA"},{name:"Reunion",code:"RE"},{name:"Romania",code:"RO"},{name:"Russian Federation",code:"RU"},{name:"RWANDA",code:"RW"},{name:"Saint Helena",code:"SH"},{name:"Saint Kitts and Nevis",code:"KN"},{name:"Saint Lucia",code:"LC"},{name:"Saint Pierre and Miquelon",code:"PM"},{name:"Saint Vincent and the Grenadines",code:"VC"},{name:"Samoa",code:"WS"},{name:"San Marino",code:"SM"},{name:"Sao Tome and Principe",code:"ST"},{name:"Saudi Arabia",code:"SA"},{name:"Senegal",code:"SN"},{name:"Serbia",code:"RS"},{name:"Seychelles",code:"SC"},{name:"Sierra Leone",code:"SL"},{name:"Singapore",code:"SG"},{name:"Slovakia",code:"SK"},{name:"Slovenia",code:"SI"},{name:"Solomon Islands",code:"SB"},{name:"Somalia",code:"SO"},{name:"South Africa",code:"ZA"},{name:"South Georgia and the South Sandwich Islands",code:"GS"},{name:"Spain",code:"ES"},{name:"Sri Lanka",code:"LK"},{name:"Sudan",code:"SD"},{name:"Suriname",code:"SR"},{name:"Svalbard and Jan Mayen",code:"SJ"},{name:"Swaziland",code:"SZ"},{name:"Sweden",code:"SE"},{name:"Switzerland",code:"CH"},{name:"Syrian Arab Republic",code:"SY"},{name:"Taiwan, Province of China",code:"TW"},{name:"Tajikistan",code:"TJ"},{name:"Tanzania, United Republic of",code:"TZ"},{name:"Thailand",code:"TH"},{name:"Timor-Leste",code:"TL"},{name:"Togo",code:"TG"},{name:"Tokelau",code:"TK"},{name:"Tonga",code:"TO"},{name:"Trinidad and Tobago",code:"TT"},{name:"Tunisia",code:"TN"},{name:"Turkey",code:"TR"},{name:"Turkmenistan",code:"TM"},{name:"Turks and Caicos Islands",code:"TC"},{name:"Tuvalu",code:"TV"},{name:"Uganda",code:"UG"},{name:"Ukraine",code:"UA"},{name:"United Arab Emirates",code:"AE"},{name:"United Kingdom",code:"GB"},{name:"United States",code:"US"},{name:"United States Minor Outlying Islands",code:"UM"},{name:"Uruguay",code:"UY"},{name:"Uzbekistan",code:"UZ"},{name:"Vanuatu",code:"VU"},{name:"Venezuela",code:"VE"},{name:"Viet Nam",code:"VN"},{name:"Virgin Islands, British",code:"VG"},{name:"Virgin Islands, U.S.",code:"VI"},{name:"Wallis and Futuna",code:"WF"},{name:"Western Sahara",code:"EH"},{name:"Yemen",code:"YE"},{name:"Zambia",code:"ZM"},{name:"Zimbabwe",code:"ZW"}].map(e=>{const a=Wt[e.code]||"USD",t=Ot[a]||"";return{value:e.code,flag:(i=e.code,i.toUpperCase().replace(/./g,e=>String.fromCodePoint(127397+e.charCodeAt(0)))),text:e.name,currencyCode:a,currencyIcon:t};var i});function Vt({value:a,onChange:t}){const{t:i}=q(),n=Ft.map(e=>({value:e.value,label:e.text,icon:e.flag}));return e(Kt,{options:n,value:a,onChange:t,placeholder:i("dropdowns.searchCountry"),emptyLabel:i("dropdowns.chooseCountry")})}const zt=Ft.map(e=>({value:e.currencyCode,text:e.currencyCode,icon:e.currencyIcon??null})),jt=Array.from(new Set(zt.map(e=>e.value))).map(e=>zt.find(a=>a.value===e)).filter(e=>void 0!==e);function Ht({value:a,onChange:t}){const{t:i}=q(),n=jt.map(e=>({value:e.value,label:e.text,icon:e.icon??void 0}));return e(Kt,{options:n,value:a,onChange:t,placeholder:i("dropdowns.searchCurrency"),emptyLabel:i("dropdowns.chooseCurrency")})}let Jt=[{code:"en",label:"English",flag:"🇬🇧"},{code:"en-GB",label:"English (United Kingdom)",flag:"🇬🇧"},{code:"en-US",label:"English (United States)",flag:"🇺🇸"},{code:"en-AU",label:"English (Australia)",flag:"🇦🇺"},{code:"en-CA",label:"English (Canada)",flag:"🇨🇦"},{code:"en-NZ",label:"English (New Zealand)",flag:"🇳🇿"},{code:"es",label:"Spanish",flag:"🇪🇸"},{code:"es-ES",label:"Spanish (Spain)",flag:"🇪🇸"},{code:"es-MX",label:"Spanish (Mexico)",flag:"🇲🇽"},{code:"fr",label:"French",flag:"🇫🇷"},{code:"fr-FR",label:"French (France)",flag:"🇫🇷"},{code:"de",label:"German",flag:"🇩🇪"},{code:"de-DE",label:"German (Germany)",flag:"🇩🇪"},{code:"it",label:"Italian",flag:"🇮🇹"},{code:"it-IT",label:"Italian (Italy)",flag:"🇮🇹"},{code:"pt",label:"Portuguese",flag:"🇵🇹"},{code:"pt-PT",label:"Portuguese (Portugal)",flag:"🇵🇹"},{code:"pt-BR",label:"Portuguese (Brazil)",flag:"🇧🇷"},{code:"ru",label:"Russian",flag:"🇷🇺"},{code:"ru-RU",label:"Russian (Russia)",flag:"🇷🇺"},{code:"zh",label:"Chinese",flag:"🇨🇳"},{code:"zh-CN",label:"Chinese (Simplified)",flag:"🇨🇳"},{code:"zh-TW",label:"Chinese (Traditional)",flag:"🇹🇼"},{code:"ja",label:"Japanese",flag:"🇯🇵"},{code:"ja-JP",label:"Japanese (Japan)",flag:"🇯🇵"},{code:"ko",label:"Korean",flag:"🇰🇷"},{code:"ko-KR",label:"Korean (South Korea)",flag:"🇰🇷"},{code:"ar",label:"Arabic",flag:"🇸🇦"},{code:"ar-SA",label:"Arabic (Saudi Arabia)",flag:"🇸🇦"},{code:"hi",label:"Hindi",flag:"🇮🇳"},{code:"hi-IN",label:"Hindi (India)",flag:"🇮🇳"},{code:"bn",label:"Bengali",flag:"🇮🇳"},{code:"bn-IN",label:"Bengali (India)",flag:"🇮🇳"},{code:"gu",label:"Gujarati",flag:"🇮🇳"},{code:"gu-IN",label:"Gujarati (India)",flag:"🇮🇳"},{code:"ta",label:"Tamil",flag:"🇮🇳"},{code:"ta-IN",label:"Tamil (India)",flag:"🇮🇳"},{code:"te",label:"Telugu",flag:"🇮🇳"},{code:"te-IN",label:"Telugu (India)",flag:"🇮🇳"},{code:"ml",label:"Malayalam",flag:"🇮🇳"},{code:"ml-IN",label:"Malayalam (India)",flag:"🇮🇳"},{code:"kn",label:"Kannada",flag:"🇮🇳"},{code:"kn-IN",label:"Kannada (India)",flag:"🇮🇳"},{code:"mr",label:"Marathi",flag:"🇮🇳"},{code:"mr-IN",label:"Marathi (India)",flag:"🇮🇳"},{code:"pa",label:"Punjabi",flag:"🇮🇳"},{code:"pa-IN",label:"Punjabi (India)",flag:"🇮🇳"},{code:"ur",label:"Urdu",flag:"🇮🇳"},{code:"ur-IN",label:"Urdu (India)",flag:"🇮🇳"},{code:"or",label:"Odia",flag:"🇮🇳"},{code:"or-IN",label:"Odia (India)",flag:"🇮🇳"},{code:"as",label:"Assamese",flag:"🇮🇳"},{code:"as-IN",label:"Assamese (India)",flag:"🇮🇳"},{code:"zh-HK",label:"Chinese (Hong Kong)",flag:"🇭🇰"},{code:"nl",label:"Dutch",flag:"🇳🇱"},{code:"nl-NL",label:"Dutch (Netherlands)",flag:"🇳🇱"},{code:"pl",label:"Polish",flag:"🇵🇱"},{code:"pl-PL",label:"Polish (Poland)",flag:"🇵🇱"},{code:"sv",label:"Swedish",flag:"🇸🇪"},{code:"sv-SE",label:"Swedish (Sweden)",flag:"🇸🇪"},{code:"da",label:"Danish",flag:"🇩🇰"},{code:"da-DK",label:"Danish (Denmark)",flag:"🇩🇰"},{code:"no",label:"Norwegian",flag:"🇳🇴"},{code:"no-NO",label:"Norwegian (Norway)",flag:"🇳🇴"},{code:"fi",label:"Finnish",flag:"🇫🇮"},{code:"fi-FI",label:"Finnish (Finland)",flag:"🇫🇮"},{code:"tr",label:"Turkish",flag:"🇹🇷"},{code:"tr-TR",label:"Turkish (Turkey)",flag:"🇹🇷"},{code:"cs",label:"Czech",flag:"🇨🇿"},{code:"cs-CZ",label:"Czech (Czech Republic)",flag:"🇨🇿"},{code:"sk",label:"Slovak",flag:"🇸🇰"},{code:"sk-SK",label:"Slovak (Slovakia)",flag:"🇸🇰"},{code:"hu",label:"Hungarian",flag:"🇭🇺"},{code:"hu-HU",label:"Hungarian (Hungary)",flag:"🇭🇺"},{code:"ro",label:"Romanian",flag:"🇷🇴"},{code:"ro-RO",label:"Romanian (Romania)",flag:"🇷🇴"},{code:"el",label:"Greek",flag:"🇬🇷"},{code:"el-GR",label:"Greek (Greece)",flag:"🇬🇷"},{code:"th",label:"Thai",flag:"🇹🇭"},{code:"th-TH",label:"Thai (Thailand)",flag:"🇹🇭"},{code:"id",label:"Indonesian",flag:"🇮🇩"},{code:"id-ID",label:"Indonesian (Indonesia)",flag:"🇮🇩"},{code:"ms",label:"Malay",flag:"🇲🇾"},{code:"ms-MY",label:"Malay (Malaysia)",flag:"🇲🇾"},{code:"vi",label:"Vietnamese",flag:"🇻🇳"},{code:"vi-VN",label:"Vietnamese (Vietnam)",flag:"🇻🇳"},{code:"he",label:"Hebrew",flag:"🇮🇱"},{code:"he-IL",label:"Hebrew (Israel)",flag:"🇮🇱"}];Jt=Jt.filter((e,a,t)=>a===t.findIndex(a=>a.code===e.code&&a.label===e.label)),Jt.sort((e,a)=>e.label<a.label?-1:e.label>a.label?1:0);const Yt=Jt.filter(e=>function(e){try{const a=new Intl.DateTimeFormat(e);return a.resolvedOptions().locale===e||a.resolvedOptions().locale.startsWith(e)}catch{return!1}}(e.code)).filter((e,a,t)=>a===t.findIndex(a=>a.code===e.code&&a.label===e.label)).map(e=>({value:e.code,label:e.label,flag:e.flag}));function Zt({value:a,onChange:t}){const{t:i}=q(),n=Yt.map(e=>({value:e.value,label:e.label,icon:e.flag}));return e(Kt,{options:n,value:a,onChange:t,placeholder:i("dropdowns.searchLanguage"),emptyLabel:i("dropdowns.chooseLanguage")})}const $t=[{value:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{value:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{value:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{value:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{value:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{value:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Daylight Time (US & Canada)",utc:["America/Los_Angeles","America/Tijuana","America/Vancouver"]},{value:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Standard Time (US & Canada)",utc:["America/Los_Angeles","America/Tijuana","America/Vancouver","PST8PDT"]},{value:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson","America/Dawson_Creek","America/Hermosillo","America/Phoenix","America/Whitehorse","Etc/GMT+7"]},{value:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{value:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{value:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{value:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{value:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{value:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{value:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{value:"Eastern Standard Time",abbr:"EST",offset:-5,isdst:!1,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto"]},{value:"Eastern Daylight Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-04:00) Eastern Daylight Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto"]},{value:"US Eastern Standard Time",abbr:"UEDT",offset:-5,isdst:!1,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{value:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{value:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{value:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{value:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{value:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{value:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{value:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{value:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{value:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/Buenos_Aires","America/Argentina/Catamarca","America/Argentina/Cordoba","America/Argentina/Jujuy","America/Argentina/La_Rioja","America/Argentina/Mendoza","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{value:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{value:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{value:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{value:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{value:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{value:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{value:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{value:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{value:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{value:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{value:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{value:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{value:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{value:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{value:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{value:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{value:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{value:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{value:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{value:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{value:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{value:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{value:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{value:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{value:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kyiv","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhhorod","Europe/Vilnius","Europe/Zaporizhzhia"]},{value:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{value:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kyiv","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhhorod","Europe/Vilnius","Europe/Zaporizhzhia"]},{value:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{value:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{value:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{value:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{value:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{value:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{value:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{value:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{value:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{value:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{value:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{value:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{value:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{value:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{value:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{value:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{value:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{value:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{value:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{value:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{value:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata","Asia/Calcutta"]},{value:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{value:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{value:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{value:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{value:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{value:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{value:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{value:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{value:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{value:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{value:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{value:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{value:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{value:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{value:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{value:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{value:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{value:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{value:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{value:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{value:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{value:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{value:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{value:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{value:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{value:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{value:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{value:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{value:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{value:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{value:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{value:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}].filter(e=>e.utc.length).reduce((e,a)=>{let t=a.utc;for(let i=0;i<t.length;i++){const n=t[i],s=a.text;let r=s.substring(s.indexOf("(")+1,s.indexOf(")"));-1!==r.indexOf("UTC")&&e.push({value:n,abbr:a.abbr,offset:a.offset,isdst:a.isdst,text:`(${r}) ${n}`,utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]})}return e},[]).filter((e,a,t)=>a===t.findIndex(a=>a.value===e.value));function qt({value:a,onChange:t}){const{t:i}=q(),n=$t.map(e=>({value:e.value,label:e.text}));return e(Kt,{options:n,value:a,onChange:t,placeholder:i("dropdowns.searchTimezone"),emptyLabel:i("dropdowns.chooseTimezone")})}const Xt=({workspace:t})=>{const{t:i}=q(),{visible:n}=le(),s=n(e=>e.settings?.profile?.language),r=n(e=>e.settings?.profile?.country),c=n(e=>e.settings?.profile?.currency),o=n(e=>e.settings?.profile?.timezone),{updateUserProfile:l,getProfile:d}=Ee(),[u,m]=z(!1),[p,g]=z(),[f,h]=z(0),b=Tt(),x=ct.object({name:ct.string().min(2,{message:i("profile.nameMinLength")}),country:ct.string().optional(),timezone:ct.string().optional(),language:ct.string().optional(),currency:ct.string().optional()}),v=rt({resolver:st(x),defaultValues:{name:p?.name||"",country:p?.country||"",timezone:p?.timezone||"",language:p?.language||"",currency:p?.currency||""}});return j(()=>{d().then(e=>{g(e),v.setValue("name",e.name),v.setValue("country",e.country),v.setValue("timezone",e.timezone),v.setValue("language",e.language),v.setValue("currency",e.currency)}).catch(e=>{Ke(e,{component:"WorkspaceSettingsProfile",action:"getProfile"})})},[f]),p?a("div",{children:[b.message&&e(Ne,{variant:"success",title:i("settings.common.success"),message:b.message,className:"mb-4"}),e("div",{className:"space-y-4",children:e(Fe,{...v,children:a("form",{onSubmit:v.handleSubmit(async function(e){m(!0),b.clear();try{await l({name:e.name,country:e.country,timezone:e.timezone,language:e.language,currency:e.currency}),b.show(i("profile.success"))}catch(e){Ke(e,{component:"WorkspaceSettingsProfile",action:"updateUserProfile",metadata:{workspaceId:t._id}})}finally{m(!1)}}),className:"space-y-4",children:[a("div",{children:[e("label",{htmlFor:"profile-email",className:"block text-sm font-medium mb-1",children:i("profile.email")}),e(Je,{id:"profile-email",disabled:!0,className:"w-full border rounded px-3 py-2 bg-muted",value:p?.email})]}),e(Ve,{disabled:u,control:v.control,name:"name",render:({field:t})=>a(ze,{children:[e(je,{children:i("profile.name")}),e(He,{children:e(Je,{...t})}),e(Ye,{})]})}),a("div",{className:"flex gap-y-2 my-4 flex-col",children:[s&&a("div",{className:"flex flex-col gap-0.5",children:[e("div",{className:"text-sm font-medium",children:i("profile.language")}),e(Zt,{value:v.watch("language"),onChange:e=>{v.setValue("language",e)}})]}),r&&a("div",{className:"flex flex-col gap-0.5",children:[e("div",{className:"text-sm font-medium",children:i("profile.country")}),e(Vt,{value:v.watch("country"),onChange:e=>{v.setValue("country",e)}})]}),c&&a("div",{className:"flex flex-col gap-0.5",children:[e("div",{className:"text-sm font-medium",children:i("profile.currency")}),e(Ht,{value:v.watch("currency"),onChange:e=>{v.setValue("currency",e)}})]}),o&&a("div",{className:"flex flex-col gap-0.5",children:[e("div",{className:"text-sm font-medium",children:i("profile.timezone")}),e(qt,{value:v.watch("timezone"),onChange:e=>{v.setValue("timezone",e)}})]})]}),a("div",{className:"flex justify-end gap-x-2",children:[e(ne,{type:"submit",progress:u,disabled:u,children:i("profile.save")}),e(ne,{type:"button",variant:"outline",onClick:()=>{h(e=>e+1)},disabled:u,children:i("profile.reset")})]})]})})}),p?.image&&a("div",{children:[e("p",{className:"block text-sm font-medium mb-1",children:i("profile.profileImage")}),e("div",{className:"w-16 h-16 rounded-full overflow-hidden",children:e("img",{src:p.image,alt:p.name,className:"w-full h-full object-cover"})})]})]}):e(bt,{})},Qt=()=>{const{t:i,formattingLocale:n}=q(),{visible:s,ui:r}=le(),c=r.formats?.date??{dateStyle:"medium"},o=s(e=>e.settings?.security?.passkeyRename),d=s(e=>e.settings?.security?.passkeyDelete),{api:u}=na(),[m,p]=z(!0),[g,f]=z([]),[h,b]=z(null),[x,v]=z(null),[N,C]=z(""),w=H(async()=>{try{const e=await u.getPasskeys();f(e)}catch(e){Ke(e,{component:"WorkspaceSettingsSecurity"})}finally{p(!1)}},[u]);return j(()=>{w()},[w]),m?e(bt,{}):a("div",{className:"space-y-4",children:[e(Ae,{title:i("security.passkeysTitle"),description:i("security.passkeysDescription")}),0===g.length?e(ye,{icon:e(A,{className:"h-5 w-5 text-muted-foreground"}),description:i("security.noPasskeys")}):e("div",{className:"space-y-2",children:g.map(s=>a("div",{className:"flex items-center justify-between gap-3 rounded-md border p-3 "+(!1===s.active?"opacity-70":""),children:[a("div",{className:"flex min-w-0 items-center gap-3",children:[e(A,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),e("div",{className:"min-w-0",children:x===s.id?a("div",{className:"flex items-center gap-2",children:[e(Je,{value:N,onChange:e=>C(e.target.value),placeholder:i("security.renamePlaceholder"),className:"h-8"}),e(ne,{size:"icon",variant:"ghost",className:"h-10 w-10 sm:h-8 sm:w-8 shrink-0",disabled:h===s.id,onClick:()=>async function(e){const a=N.trim();if(a){b(e);try{await u.renamePasskey(e,a),f(t=>t.map(t=>t.id===e?{...t,name:a}:t)),v(null)}catch(e){Ke(e,{component:"WorkspaceSettingsSecurity"})}finally{b(null)}}}(s.id),children:e(S,{className:"h-4 w-4"})}),e(ne,{size:"icon",variant:"ghost",className:"h-10 w-10 sm:h-8 sm:w-8 shrink-0",onClick:()=>v(null),children:e(y,{className:"h-4 w-4"})})]}):a(t,{children:[a("div",{className:"flex items-center gap-2",children:[e("p",{className:"truncate text-sm font-medium",children:s.name}),!1===s.active&&e("span",{className:"shrink-0 rounded-full border border-warning/40 bg-warning/10 px-2 py-0.5 text-xs font-medium text-warning",title:i("security.inactiveHint"),children:i("security.inactive")})]}),e("p",{className:"text-xs text-muted-foreground",children:!1===s.active?i("security.inactiveHint"):s.lastUsedAt?`${i("security.lastUsed")}: ${ua(s.lastUsedAt,n,c)}`:s.createdAt?`${i("security.added")}: ${ua(s.createdAt,n,c)}`:null})]})})]}),x!==s.id&&(o||d)&&a("div",{className:"flex shrink-0 items-center gap-1",children:[o&&e(ne,{size:"icon",variant:"ghost",className:"h-10 w-10 sm:h-8 sm:w-8","aria-label":i("security.rename"),onClick:()=>{v(s.id),C(s.name)},children:e(T,{className:"h-4 w-4"})}),d&&a(Me,{children:[e(Ue,{asChild:!0,children:e(ne,{size:"icon",variant:"ghost",className:"h-10 w-10 sm:h-8 sm:w-8 text-destructive","aria-label":i("security.remove"),disabled:h===s.id,children:e(l,{className:"h-4 w-4"})})}),a(De,{children:[a(Ie,{children:[e(Re,{children:i("security.removeTitle")}),e(_e,{children:i("security.removeDescription")})]}),a(Ge,{children:[e(Be,{children:i("settings.common.cancel")}),e(Le,{onClick:()=>async function(e){b(e);try{await u.deletePasskey(e),f(a=>a.filter(a=>a.id!==e))}catch(e){Ke(e,{component:"WorkspaceSettingsSecurity"})}finally{b(null)}}(s.id),children:i("security.remove")})]})]})]})]})]},s.id))}),e("p",{className:"text-xs text-muted-foreground",children:i("security.addHint")})]})},ei=e=>{switch(e){case ga.Paid:return"bg-success/15 text-success";case ga.Open:return"bg-warning/15 text-warning";case ga.Draft:return"bg-muted text-foreground";case ga.Uncollectible:return"bg-destructive/15 text-destructive";case ga.Void:default:return"bg-muted text-foreground"}},ai=({workspaceId:i,hasActiveSubscription:n=!1,onViewPricingPlans:s,limit:r=20})=>{const{t:c,formattingLocale:o}=q(),{can:l}=oe(),d=l(de.WORKSPACE_BILLING_VIEW),{invoices:u,loading:m,error:p,refetch:g}=ma(i,r);if(!d)return e(ht,{});const f=u.length>0;return a("div",{className:"space-y-4",children:[e(Ae,{title:c("invoices.title"),description:c("invoices.description"),actions:e(ne,{variant:"ghost",size:"sm",progress:m,onClick:g,disabled:m,children:c("settings.common.refreshAction",{loading:String(m)})})}),p&&e(Ne,{variant:"error",title:c("invoices.errorLoading"),message:p,actionLabel:c("settings.common.retryAction",{loading:String(m)}),onAction:g,actionDisabled:m}),m&&!f?e("div",{className:"border rounded-lg p-6",children:e(bt,{})}):f?e("div",{className:"space-y-2",children:u.map(i=>{const n=(e=>{switch(e.status){case ga.Draft:case ga.Open:return{textKey:"invoices.pay",color:"bg-info text-info-foreground hover:bg-info/90"};case ga.Paid:return{textKey:"invoices.view",color:"bg-success text-success-foreground hover:bg-success/90"};case ga.Uncollectible:case ga.Void:return{textKey:"invoices.viewDetails",color:"bg-muted-foreground text-background hover:bg-muted-foreground/90"};default:return{textKey:"invoices.view",color:"bg-muted-foreground text-background hover:bg-muted-foreground/90"}}})(i);return a("div",{className:"border rounded-md bg-background hover:shadow-sm transition-shadow p-3",children:[a("div",{className:"flex items-center justify-between gap-2 mb-1.5",children:[e("span",{className:"text-sm font-medium text-foreground truncate min-w-0",children:i.description||i.number||i.id.slice(-8)}),e("span",{className:`inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium shrink-0 ${ei(i.status)}`,children:c(`invoices.status.${i.status}`)})]}),a("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-0.5 text-sm text-muted-foreground mb-2.5",children:[e("span",{className:"font-medium text-foreground",children:se(i.amount_due,i.currency,o)}),i.created&&a(t,{children:[e("span",{className:"text-muted-foreground/50 hidden sm:inline",children:"·"}),e("span",{children:pa(i.created,o)})]}),i.amount_paid>0&&i.amount_due>0&&e("span",{className:"text-xs text-muted-foreground",children:c("invoices.paidAmount",{amount:se(i.amount_paid,i.currency,o)})})]}),a("div",{className:"flex items-center gap-2",children:[a(ne,{size:"sm",disabled:!i.hosted_invoice_url,onClick:()=>i.hosted_invoice_url&&window.open(i.hosted_invoice_url,"_blank","noopener,noreferrer"),className:n.color,children:[c(n.textKey),e(w,{className:"h-3.5 w-3.5 ms-1.5"})]}),i.invoice_pdf&&a(ne,{size:"sm",variant:"outline",onClick:()=>window.open(i.invoice_pdf,"_blank","noopener,noreferrer"),children:[e(k,{className:"h-3.5 w-3.5 me-1.5"}),c("invoices.download")]})]})]},i.id)})}):e(ye,{icon:e(C,{className:"h-5 w-5 text-muted-foreground"}),description:c(n?"invoices.noInvoicesWithSub":"invoices.noInvoices"),action:!n&&s?e(ne,{size:"sm",className:"mt-2",onClick:s,children:c("subscription.viewPricingPlans")}):void 0})]})},ti=(e,a)=>a?ua(a,e,{month:"long",day:"numeric",year:"numeric"}):"",ii=({planVersion:t,subscriptionCurrency:i,billingInterval:n,seatPricingConfig:s,memberCount:r,includedSeats:c,billableSeats:o,perSeatPrice:l,intervalLabel:d})=>{const{t:u,formattingLocale:m,fmtNum:p,fmtCents:g}=q(),f=((e,a,t=ha.Monthly)=>{if(!e?.subscriptionItems)return{features:[],limits:[],quotas:[]};const i=[],n=[],s=[];return e.subscriptionItems.forEach(r=>{const c=r.slug;if(r.type===ba.Feature){const a=e.features?.[c]??!1;i.push({item:r,enabled:a})}else if(r.type===ba.Limit){const a=e.limits?.[c]??0;n.push({item:r,value:a})}else if(r.type===ba.Quota){const i=a&&e.pricingVariants?.length?xa(e,a,c,t):va(e.quotas?.[c],t);null!=i&&s.push({item:r,value:i})}}),{features:i,limits:n,quotas:s}})(t,i,n??"monthly");return f.features.length>0||f.limits.length>0||f.quotas.length>0?e("div",{className:"px-4 py-4 sm:px-5 sm:py-5 border-t border-border/60",children:a("div",{className:"space-y-5",children:[f.features.length>0&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.items.features")}),e("ul",{className:"space-y-1.5",children:f.features.sort(e=>e.enabled?-1:1).map(({item:t,enabled:i})=>a("li",{className:"flex items-center gap-2 text-sm",children:[e("span",{className:"w-4 text-center shrink-0 "+(i?"text-success":"text-muted-foreground/50"),children:i?"✓":"✕"}),e("span",{className:i?"text-foreground":"text-muted-foreground/70",children:t.name})]},t._id))})]}),f.limits.length>0&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.items.limits")}),e("ul",{className:"space-y-1.5",children:f.limits.map(({item:t,value:i})=>a("li",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:t.name}),e("span",{className:"font-medium text-foreground",children:p(i)})]},t._id))})]}),f.quotas.length>0&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.items.quotas")}),e("ul",{className:"space-y-1.5",children:f.quotas.map(({item:t,value:n})=>{const s=fa(n,t.name.toLowerCase(),{currency:i,locale:m}),r=s?s.hasOverage?u("quota.includedWithOverage",{count:s.included,price:s.price,unit:s.unit}):u("quota.includedOnly",{count:s.included}):"—";return e("li",{className:"text-sm",children:a("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-0.5",children:[e("span",{className:"text-muted-foreground",children:t.name}),e("span",{className:"font-medium text-foreground text-xs sm:text-sm",children:r})]})},t._id)})})]}),s&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.seats.title")}),a("div",{className:"bg-muted/50 rounded-lg p-3 space-y-1.5",children:[a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.members")}),e("span",{className:"font-semibold text-foreground",children:p(r)})]}),a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.included")}),e("span",{className:"text-foreground",children:p(c)})]}),o>0&&a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.billable")}),a("span",{className:"font-medium text-warning",children:[p(o)," ",u("subscription.seats.extra")]})]}),null!=l&&l>0&&a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.perExtraSeat")}),a("span",{className:"text-foreground",children:[g(l,i),d]})]}),(s?.maxSeats??0)>0&&a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.limit")}),e("span",{className:"text-foreground",children:p(s.maxSeats)})]})]})]}),t?.creditGrant?.enabled&&"object"==typeof t.creditGrant.creditPackage&&null!==t.creditGrant.creditPackage&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.items.credits")}),a("div",{className:"bg-info/10 rounded-lg p-3 space-y-1.5",children:[a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:t.creditGrant.renewOnPeriod?u("subscription.items.creditsPerMonth"):u("subscription.items.creditsOneTime")}),e("span",{className:"font-semibold text-info",children:p("object"==typeof t.creditGrant.creditPackage?t.creditGrant.creditPackage.creditAmount:0)})]}),a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.items.creditRenewal")}),e("span",{className:"font-medium text-foreground",children:t.creditGrant.renewOnPeriod?"reset"===t.creditGrant.mode?u("subscription.items.creditModeReset"):u("subscription.items.creditModeTopup"):u("subscription.items.creditModeLifetime")})]})]})]})]})}):null},ni=({resumeDialogOpen:t,setResumeDialogOpen:i,resumeLoading:n,handleResumeSubscription:s,subscription:r})=>{const{t:c,formattingLocale:o}=q();return e(Me,{open:t,onOpenChange:i,children:a(De,{children:[a(Ie,{children:[e(Re,{children:c("subscription.resumeTitle")}),e(_e,{asChild:!0,children:a("div",{className:"space-y-3",children:[e("p",{children:c("subscription.resumeConfirm")}),a("div",{className:"bg-warning/10 border border-warning/30 rounded-lg p-4 space-y-2 text-sm",children:[a("div",{className:"flex items-start gap-2",children:[e(E,{className:"h-4 w-4 text-warning mt-0.5 flex-shrink-0"}),a("span",{children:[c("subscription.resumeChargeDate")," ",r?.subscription?.stripeCurrentPeriodEnd&&ti(o,r.subscription.stripeCurrentPeriodEnd)?e("span",{className:"font-medium",children:ti(o,r.subscription.stripeCurrentPeriodEnd)}):c("subscription.resumeChargeFallback")]})]}),a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-warning mt-0.5",children:"•"}),e("span",{children:c("subscription.resumeContinue")})]}),a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-info mt-0.5",children:"ℹ"}),e("span",{children:c("subscription.resumeCancelAnytime")})]})]})]})})]}),a(Ge,{children:[e(Be,{disabled:n,children:c("subscription.resumeKeep")}),e(Le,{onClick:s,disabled:n,children:c(n?"subscription.resuming":"subscription.resumeButton")})]})]})})},si=({cancelDialogOpen:t,setCancelDialogOpen:i,cancelLoading:n,handleCancelSubscription:s,subscription:r})=>{const{t:c,formattingLocale:o}=q(),l=r?.subscription?.subscriptionStatus===Na.Trialing,d=l&&r?.subscription?.trialEnd||r?.subscription?.stripeCurrentPeriodEnd;return e(Me,{open:t,onOpenChange:i,children:a(De,{children:[a(Ie,{children:[e(Re,{children:c(l?"subscription.cancelTrialTitle":"subscription.cancelTitle")}),e(_e,{asChild:!0,children:a("div",{className:"space-y-3",children:[e("p",{children:c(l?"subscription.cancelTrialConfirm":"subscription.cancelConfirm")}),a("div",{className:"bg-muted/50 rounded-lg p-4 space-y-2 text-sm",children:[a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-success mt-0.5",children:"✓"}),a("span",{children:[c(l?"subscription.cancelTrialAccess":"subscription.retainAccess")," ",d&&ti(o,d)?e("span",{className:"font-medium",children:ti(o,d)}):c("subscription.retainAccessFallback")]})]}),a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-success mt-0.5",children:"✓"}),e("span",{children:c(l?"subscription.cancelTrialNoCharge":"subscription.cancelNotCharged")})]}),a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-info mt-0.5",children:"ℹ"}),e("span",{children:c(l?"subscription.cancelTrialResume":"subscription.cancelResumeAnytime")})]})]})]})})]}),a(Ge,{children:[e(Be,{disabled:n,children:c(l?"subscription.cancelTrialKeep":"subscription.cancelKeep")}),e(Le,{onClick:s,disabled:n,className:"bg-destructive hover:bg-destructive/90 focus:ring-destructive",children:c(n?"subscription.canceling":l?"subscription.cancelTrialButton":"subscription.cancelButton")})]})]})})},ri=({className:t,icon:i,titleClassName:n,title:s,descriptionClassName:r,description:c,children:o,kind:l})=>(Aa(!!l,l??"","subscription_notice_shown",{kind:l}),e("div",{className:t,children:a("div",{className:"flex items-start gap-3",children:[i,a("div",{children:[e("p",{className:n,children:s}),e("p",{className:r,children:c}),o]})]})})),ci=({subscription:e})=>{const{t:t}=q();return a("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium "+(e.subscriptionStatus===Na.Active?e.cancelAtPeriodEnd?"bg-warning/15 text-warning":"bg-success/15 text-success":e.subscriptionStatus===Na.Trialing?"bg-info/15 text-info":e.subscriptionStatus===Na.Canceled?"bg-muted text-foreground":"bg-destructive/15 text-destructive"),children:[e.subscriptionStatus===Na.Active&&(e.cancelAtPeriodEnd?t("subscription.status.canceling"):t("subscription.status.active")),e.subscriptionStatus===Na.Trialing&&t("subscription.status.trial"),e.subscriptionStatus===Na.Canceled&&t("subscription.status.canceled"),e.subscriptionStatus===Na.PastDue&&t("subscription.status.pastDue")]})},oi=({subscription:t,showChangePlan:i,setDialogOpen:n})=>{const{t:s}=q(),r=t.trialEnd||t.stripeCurrentPeriodEnd,c=r?new Date(r):null,o=c&&!isNaN(c.getTime())?c:null,l=o?Math.max(0,Math.ceil((o.getTime()-Date.now())/864e5)):null,d=null!==l&&l<=3;return Aa(!0,"trial","subscription_notice_shown",{kind:d?"trial_ending":"trial",days_remaining:l??void 0}),a("div",{className:"px-4 py-3 sm:px-5 text-sm flex flex-col sm:flex-row sm:items-center justify-between gap-2 "+(d?"bg-warning/10 text-warning border-b border-warning/30":"bg-info/10 text-info border-b border-info/20"),children:[a("span",{children:[null!==l&&l<=0?s("subscription.trialEnded"):null!==l?s("subscription.trialEndsIn",{days:l}):s("subscription.onTrial")," ",s("subscription.upgradeToKeepAccess")]}),i&&e(ne,{size:"sm",variant:d?"default":"outline",className:"shrink-0 "+(d?"":"border-info/30 text-info hover:bg-info/15"),onClick:()=>n(!0),children:s("subscription.upgradePlan")})]})};function li(){const e=J(null);return j(()=>()=>{e.current&&clearTimeout(e.current)},[]),H((a,t=5e3)=>{e.current&&clearTimeout(e.current),e.current=setTimeout(()=>{e.current=null,a()},t)},[])}const di=Z(()=>import("./SubscriptionDialog-SgJhIzLG.mjs").then(e=>({default:e.default}))),ui=({workspace:i})=>{const n=i._id?.toString(),{t:s,formattingLocale:r,fmtCents:c}=q(),{api:o}=na(),{can:l}=oe(),{visible:u,ui:m}=le(),p=m.behavior,g=u(e=>e.settings?.subscription?.changePlan),f=u(e=>e.settings?.subscription?.cancel),h=u(e=>e.settings?.subscription?.managePayment),b=u(e=>e.settings?.subscription?.invoicesTab),x=u(e=>e.settings?.subscription?.planDetails),v=l(de.WORKSPACE_BILLING_VIEW),N=l(de.WORKSPACE_BILLING_MANAGE),{subscription:A,loading:S,error:y,updateSubscription:T,refetch:C}=Sa(n),{createCheckoutSession:w}=ya(n),{cancelSubscription:k,loading:U}=Ta(n),{resumeSubscription:D,loading:I}=Ca(n),{openBillingPortal:R,loading:_}=wa(n),{versions:G,loading:B,error:L,refetch:K}=ka(n),O=S||B,W=y||L,{currentVersion:F,latestVersion:H,isDeprecated:Z,plansToShow:$}=V(()=>{const e=G?.currentVersion,a=G?.availableVersions||[],t=null!=A?.subscription;let i=null;a.length>0?i=a.reduce((e,a)=>a.version>e.version?a:e):e&&(i=e);return{currentVersion:e,latestVersion:i,isDeprecated:!!(t&&i&&e)&&i.version>e.version&&t,plansToShow:i?.plans&&i.plans.length>0?i.plans:[]}},[G,A?.subscription]),[X,Q]=z(!1),[ee,ae]=z(null),[te,ie]=z(null),se=li(),[re,ce]=z(!1),[ue,me]=z(!1),pe=J("unknown"),ge=e=>{pe.current=e,ce(!0)},{emit:fe}=Ea(),xe=()=>({plan_version_id:A?.planVersion?._id,plan_slug:A?.plan?.slug,subscription_status:A?.subscription?.subscriptionStatus}),ve=e=>{fe("subscription_cancel_started",{...xe(),source:e}),me(!0)},Ae=J(void 0),Te=J(!1);j(()=>{if(Te.current)return;if(S||!$||0===$.length)return;const e=he.getState(),a=e.params?.action===be.SelectPlan,t=!1!==p?.autoOpenPlanDialog;(!A?.subscription&&t||a)&&(Te.current=!0,a&&(Ae.current=e.params,he.clearParams()),ge(a?"deep_link":"auto_no_subscription"))},[S,A?.subscription,$,p?.autoOpenPlanDialog]);const[Ce,ke]=z(!1),[Ee,Pe]=z("subscription"),Me=async()=>{await Promise.all([C(),K()])},Ue=V(()=>Pa(A?.subscription?.stripePriceId,$??[]),[A?.subscription?.stripePriceId,$]);if(!v)return e(ht,{});if(O&&!A&&!G)return e(bt,{});const De=A?.planVersion?._id||null;return n?a("div",{className:"space-y-4",children:[W&&e(Ne,{variant:"error",title:s("subscription.errorLoading"),message:W,description:s("subscription.errorLoadingDescription"),actionLabel:s("settings.common.retryAction",{loading:String(O)}),onAction:Me,actionDisabled:O}),ee&&e(Ne,{variant:"error",title:s("subscription.updateFailed"),message:ee,actionLabel:s("settings.common.dismiss"),onAction:()=>ae(null)}),te&&e(Ne,{variant:"success",title:s("settings.common.success"),message:te,actionLabel:s("settings.common.dismiss"),onAction:()=>ie(null)}),b&&e("div",{className:"border-b border-border",children:a("nav",{className:"-mb-px flex gap-6",role:"tablist","aria-label":s("subscription.tabsLabel"),onKeyDown:e=>{"ArrowLeft"!==e.key&&"ArrowRight"!==e.key&&"Home"!==e.key&&"End"!==e.key||(e.preventDefault(),Pe("ArrowLeft"===e.key||"End"===e.key?"invoices":"subscription"))},children:[e("button",{type:"button",role:"tab",id:"subscription-tab-subscription","aria-controls":"subscription-panel-subscription","aria-selected":"subscription"===Ee,tabIndex:"subscription"===Ee?0:-1,onClick:()=>Pe("subscription"),className:"border-b-2 py-3 text-sm font-medium transition-colors "+("subscription"===Ee?"border-primary text-primary":"border-transparent text-muted-foreground hover:border-border hover:text-foreground"),children:s("subscription.plan")}),e("button",{type:"button",role:"tab",id:"subscription-tab-invoices","aria-controls":"subscription-panel-invoices","aria-selected":"invoices"===Ee,tabIndex:"invoices"===Ee?0:-1,onClick:()=>Pe("invoices"),className:"border-b-2 py-3 text-sm font-medium transition-colors "+("invoices"===Ee?"border-primary text-primary":"border-transparent text-muted-foreground hover:border-border hover:text-foreground"),children:s("subscription.invoicesTab")})]})}),"subscription"===Ee&&a("div",{id:"subscription-panel-subscription",role:"tabpanel","aria-labelledby":"subscription-tab-subscription",tabIndex:0,children:[O&&e(Se,{}),g&&Z&&A?.subscription&&a("div",{className:"bg-warning/10 border border-warning/30 rounded-lg px-4 py-3 flex flex-col sm:flex-row sm:items-center justify-between gap-2",children:[a("div",{className:"flex items-center gap-2 min-w-0",children:[e(E,{className:"h-4 w-4 text-warning shrink-0"}),a("span",{className:"text-sm text-warning",children:[e("span",{className:"font-medium",children:s("subscription.planUpdateAvailable")}),a("span",{className:"text-warning",children:[" ","— v",F?.version||"?"," → v",H?.version||"?"]})]})]}),e(ne,{size:"sm",variant:"outline",className:"shrink-0 border-warning/40 text-warning hover:bg-warning/15",onClick:()=>ge("new_version_notice"),children:s("subscription.viewPlans")})]}),a("div",{className:"space-y-4",children:[a("div",{className:"flex items-center justify-between",children:[e("div",{children:e("p",{className:"text-sm text-muted-foreground",children:s("subscription.managePlan")})}),a("div",{className:"flex items-center gap-2",children:[(()=>{if(!g)return null;const a=A?.subscription?.subscriptionStatus===Na.Canceled,t=A?.subscription?.cancelAtPeriodEnd;return t||U?null:a&&$&&$.length>0?e(ne,{size:"sm",onClick:()=>ge("resubscribe"),children:s("subscription.viewPricingPlans")}):A?.subscription&&!a&&N?e(ne,{variant:"outline",size:"sm",onClick:()=>ge("change_plan"),children:s("subscription.changePlanButton")}):!A?.subscription&&$&&$.length>0?e(ne,{size:"sm",onClick:()=>ge("choose_plan"),children:s("subscription.viewPricingPlans")}):null})(),e(ne,{variant:"ghost",size:"sm",progress:O,onClick:Me,disabled:O||X,children:s("settings.common.refreshAction",{loading:String(O)})})]})]}),A?.subscription?(()=>{const n=Pa(A.subscription.stripePriceId,$??[]),o=n?.interval??null,l=n?.currency??A.plan?.currency??i?.billingCurrency??"",d=o&&A.planVersion?Ma(A.planVersion,l,o):null,u=l,m=A.planVersion?Ua(A.planVersion,l):null,p=m&&o?Da(A.planVersion,l,o):null,v=Array.isArray(i?.users)?i.users.length:1,S=m?.includedSeats??0,y=Math.max(0,v-S),T=!!A.plan?.isFreemium,C=null!=d?0===d?s("subscription.free"):c(d,u):T?s("subscription.free"):null,w=o===ha.Monthly?s("subscription.billingInterval.perMonth"):o===ha.Quarterly?s("subscription.billingInterval.perQuarter"):o===ha.Yearly?s("subscription.billingInterval.perYear"):"";return a("div",{className:"border rounded-lg overflow-hidden "+(Z?"border-warning/40":"border-border"),children:[A.subscription.subscriptionStatus===Na.Trialing&&!A.subscription.cancelAtPeriodEnd&&e(oi,{subscription:A.subscription,showChangePlan:g,setDialogOpen:e=>{!0===e?ge("trial_banner"):ce(e)}}),a("div",{className:"p-4 sm:p-5 "+(Z?"bg-warning/5":"bg-muted/30"),children:[a("div",{className:"flex flex-wrap items-center gap-2 mb-2",children:[e("h3",{className:"text-lg font-semibold text-foreground",children:A.plan?.name||s("subscription.noPlanAssigned")}),e(ci,{subscription:A.subscription}),A.subscription.subscriptionStatus===Na.Trialing&&ti(r,A.subscription.trialEnd||A.subscription.stripeCurrentPeriodEnd)&&e("span",{className:"text-xs text-muted-foreground",children:s("subscription.endsOn",{date:ti(r,A.subscription.trialEnd||A.subscription.stripeCurrentPeriodEnd)})}),Z&&a("span",{className:"inline-flex items-center gap-1 px-2.5 py-0.5 rounded-full text-xs font-medium bg-warning/15 text-warning",children:[e(E,{className:"h-3.5 w-3.5"}),s("subscription.status.deprecated")]})]}),A.plan?.description&&e("p",{className:"text-sm text-muted-foreground mb-3",children:A.plan.description}),!T&&a("div",{className:"flex flex-col sm:flex-row sm:items-start sm:justify-between gap-3 sm:gap-4",children:[a("div",{children:[a("div",{className:"flex items-baseline gap-1 whitespace-nowrap",children:[e("span",{className:"text-2xl font-bold text-foreground",children:C||s("invoices.na")}),C&&C!==s("subscription.free")&&w&&e("span",{className:"text-sm text-muted-foreground",children:w})]}),m&&null!=p&&p>0&&e("div",{className:"text-xs text-muted-foreground mt-1",children:s("subscription.perSeatDisplay",{price:c(p,u),interval:w})}),m&&null!=p&&p>0&&y>0&&C&&C!==s("subscription.free")&&null!=d&&e("div",{className:"text-xs text-muted-foreground mt-1 pt-1 border-t border-border",children:s("subscription.estTotalDisplay",{total:c(d+p*y,u),interval:w,count:y})})]}),(A.subscription.subscriptionStatus===Na.Active||A.subscription.subscriptionStatus===Na.Trialing)&&!A.subscription.cancelAtPeriodEnd&&ti(r,A.subscription.stripeCurrentPeriodEnd)&&a("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[e(P,{className:"h-3.5 w-3.5 flex-shrink-0"}),e("span",{children:s("subscription.nextBillingDisplay",{date:ti(r,A.subscription.stripeCurrentPeriodEnd)??""})})]})]}),Z&&e("p",{className:"text-xs text-warning mt-2",children:s("subscription.versionLabel",{version:F?.version||s("invoices.na")})}),!T&&(h||f||A.subscription.cancelAtPeriodEnd)&&(A.subscription.subscriptionStatus===Na.Active||A.subscription.subscriptionStatus===Na.Trialing||A.subscription.subscriptionStatus===Na.PastDue)&&a("div",{className:"flex flex-wrap items-center gap-2 sm:gap-3 mt-4 pt-4 border-t border-border",children:[h&&A.subscription&&N&&A.subscription?.subscriptionId&&e(ne,{variant:"outline",size:"sm",onClick:()=>{fe("billing_portal_opened",xe()),R()},disabled:_,progress:_,children:s(_?"subscription.openingPortal":"subscription.managePayment")}),N&&A.subscription?.subscriptionId&&(A.subscription.subscriptionStatus===Na.Active||A.subscription.subscriptionStatus===Na.Trialing)&&e(t,{children:A.subscription.cancelAtPeriodEnd?e(ne,{variant:"outline",size:"sm",onClick:()=>ke(!0),disabled:X||U||I,progress:I,children:A.subscription.subscriptionStatus===Na.Trialing?s("subscription.resumeTrial"):s("subscription.resumeTitle")}):f?e(ne,{variant:"outline",size:"sm",className:"text-destructive hover:text-destructive hover:bg-destructive/10 border-destructive/20",onClick:()=>ve("billing_tab"),disabled:X||U||I,progress:U||X,children:U||X?s("subscription.canceling"):A.subscription.subscriptionStatus===Na.Trialing?s("subscription.cancelTrial"):s("subscription.cancelTitle")}):null})]})]}),A.subscription.subscriptionStatus===Na.PastDue&&e(ri,{kind:"past_due",className:"px-5 py-3 bg-destructive/10 border-t border-destructive/20",icon:e(E,{className:"h-5 w-5 text-destructive flex-shrink-0 mt-0.5"}),titleClassName:"text-sm font-medium text-destructive",title:s("subscription.paymentPastDue"),descriptionClassName:"text-sm text-destructive mt-0.5",description:s("subscription.paymentPastDueDescription"),children:b&&e(ne,{variant:"outline",size:"sm",className:"mt-2 border-destructive/20 text-destructive hover:bg-destructive/15",onClick:()=>Pe("invoices"),children:s("subscription.viewInvoices")})}),A.subscription.subscriptionStatus===Na.PastDue&&A.subscription.dunningState&&A.subscription.dunningState!==Ia.None&&e(ri,{kind:"dunning",className:"px-5 py-3 bg-destructive/10 border-t border-destructive/20",icon:e(E,{className:"h-5 w-5 text-destructive flex-shrink-0 mt-0.5"}),titleClassName:"text-sm font-medium text-destructive",title:A.subscription.dunningState===Ia.Final?s("subscription.dunningFinal"):A.subscription.dunningState===Ia.Suspended?s("subscription.dunningSuspended"):s("subscription.dunningRecovery"),descriptionClassName:"text-sm text-destructive mt-0.5",description:A.subscription.dunningState===Ia.Suspended?s("subscription.dunningSuspendedDescription"):s("subscription.dunningRecoveryDescription")}),A.subscription.subscriptionStatus===Na.Paused&&e(ri,{kind:"paused",className:"px-5 py-3 bg-info/10 border-t border-info/20",icon:e(P,{className:"h-5 w-5 text-info flex-shrink-0 mt-0.5"}),titleClassName:"text-sm font-medium text-info",title:s("subscription.subscriptionPaused"),descriptionClassName:"text-sm text-info mt-0.5",description:s("subscription.subscriptionPausedDescription")}),A.subscription.cancelAtPeriodEnd&&e(ri,{kind:"cancel_scheduled",className:"px-5 py-3 bg-warning/10 border-t border-warning/30",icon:e(P,{className:"h-5 w-5 text-warning flex-shrink-0 mt-0.5"}),titleClassName:"text-sm font-medium text-warning",title:A.subscription.subscriptionStatus===Na.Trialing?s("subscription.scheduledTrialCancellation"):s("subscription.scheduledCancellation"),descriptionClassName:"text-sm text-warning mt-0.5",description:ti(r,A.subscription.subscriptionStatus===Na.Trialing&&A.subscription.trialEnd||A.subscription.stripeCurrentPeriodEnd)?a(t,{children:[A.subscription.subscriptionStatus===Na.Trialing?s("subscription.trialEndDescription"):s("subscription.cancelEndDescription")," ",e("span",{className:"font-medium",children:ti(r,A.subscription.subscriptionStatus===Na.Trialing&&A.subscription.trialEnd||A.subscription.stripeCurrentPeriodEnd)}),"."]}):s("subscription.cancelEndFallback")}),x&&A.planVersion&&e(ii,{planVersion:A.planVersion,subscriptionCurrency:l,billingInterval:o,seatPricingConfig:m,memberCount:v,includedSeats:S,billableSeats:y,perSeatPrice:p,intervalLabel:w})]})})():e(ye,{icon:e(M,{className:"h-5 w-5 text-muted-foreground"}),title:s("subscription.noSubscription"),description:s("subscription.noSubscriptionDescription"),action:g&&$&&$.length>0?e(ne,{size:"sm",onClick:()=>ge("empty_state"),children:s("subscription.viewPricingPlans")}):void 0})]}),!G&&!O&&!W&&e(ye,{title:s("subscription.errorLoading"),description:s("subscription.noPlansAvailable"),action:e(ne,{variant:"outline",size:"sm",progress:O,onClick:Me,children:s("settings.common.refreshAction",{loading:String(O)})})})]}),b&&"invoices"===Ee&&a("div",{id:"subscription-panel-invoices",role:"tabpanel","aria-labelledby":"subscription-tab-invoices",tabIndex:0,children:[O&&e(Se,{}),e(ai,{workspaceId:n,hasActiveSubscription:null!=A?.subscription,onViewPricingPlans:()=>Pe("subscription"),limit:20})]}),$&&$.length>0&&e(Y,{fallback:re?e("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-background/80 backdrop-blur-sm",children:a("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e(d,{className:"h-5 w-5 animate-spin"}),e("span",{children:s("settings.common.loading")})]})}):null,children:e(di,{open:re,onOpenChange:ce,source:pe.current,planVersions:$,currentPlanVersionId:De||null,currentStripePriceId:A?.subscription?.stripePriceId,billingCurrency:i.billingCurrency,trialUsedAt:i.trialUsedAt,workspaceName:i.name,initialInterval:Ae.current?.interval,initialCurrency:Ae.current?.currency,currentMemberCount:Array.isArray(i?.users)?i.users.length:void 0,onSelectPlan:async(e,a=ha.Monthly,t)=>{if(!n)return;const r=$?.find(a=>a._id===e),c=t??Ue?.currency??A?.plan?.currency??i?.billingCurrency??"",l=r?Ra(r,c,a):null,d=A?.subscription?.stripePriceId;if(!l||!d||l!==d){Q(!0),ae(null),ie(null);try{const{successUrl:t,cancelUrl:i}=_a(n);let l;if(r?.plan?.isFreemium){return A?.subscription?.subscriptionId?(ce(!1),void ve("downgrade_to_free")):(await o.selectFreePlan(n,e),ce(!1),Ga(),await Me(),void ie(s("subscription.updateSuccess")))}const d=A?.subscription?.subscriptionStatus===Na.Canceled;if(l=A?.subscription&&!d?await T(e,{billingInterval:a,successUrl:t,cancelUrl:i}):await w({planVersionId:e,billingInterval:a,currency:c||void 0,successUrl:t,cancelUrl:i}),l&&"checkoutUrl"in l&&l.checkoutUrl)return void we(l.checkoutUrl);ie(s("subscription.updateSuccess")),await Me()}catch(e){const a=e instanceof Error?e.message:s("subscription.errorProcessing");ae(a)}finally{Q(!1),se(()=>{ae(null),ie(null)})}}},loading:X||O})}),e(ni,{resumeDialogOpen:Ce,setResumeDialogOpen:ke,resumeLoading:I,handleResumeSubscription:async()=>{if(n){ke(!1),Q(!0),ae(null),ie(null);try{await D(),fe("subscription_resumed",xe()),ie(s("subscription.resumeSuccess")),await Me()}catch(e){const a=e instanceof Error?e.message:s("subscription.errorResuming");ae(a)}finally{Q(!1),se(()=>{ae(null),ie(null)})}}},subscription:A}),e(si,{cancelDialogOpen:ue,setCancelDialogOpen:me,cancelLoading:U,handleCancelSubscription:async()=>{if(n){me(!1),Q(!0),ae(null),ie(null);try{await k(),fe("subscription_cancelled",xe()),ie(s("subscription.cancelSuccess")),await Me()}catch(e){const a=e instanceof Error?e.message:s("subscription.errorCanceling");ae(a)}finally{Q(!1),se(()=>{ae(null),ie(null)})}}},subscription:A})]}):e("div",{className:"border rounded-lg p-4 text-center text-muted-foreground",children:e("p",{children:s("subscription.invalidWorkspace")})})};function mi(e){return e.replace(/[_-]/g," ").replace(/\b\w/g,e=>e.toUpperCase())}function pi(e){try{const a=new Date(e);if(isNaN(a.getTime()))return null;const t=new Date;return Math.ceil((a.getTime()-t.getTime())/864e5)}catch{return null}}const gi=()=>{const{quotas:t,loading:i,error:n,refetch:s}=Ba(),{t:c,formattingLocale:o,fmtNum:l}=q(),{can:d}=oe(),{response:u}=La(),[m,p]=z(!1),g=V(()=>{const e={};if(!u?.planVersion||!u?.subscription)return e;const a=u.planVersion,i=u.subscription,n=i.billingInterval??"monthly",s=i.plan?.currency??"usd";if(!t)return e;for(const i of Object.keys(t)){const r=Ka(a,s,i,n);if(null==r||r<=0)continue;const c=a.quotas?.[i],o=c?.[n],l=o?.unitSize??1,d=t[i].overage,u=(l>1?Math.ceil(d/l):d)*r;e[i]={overageCents:r,unitSize:l,currency:s,estimatedCostCents:u}}return e},[u,t]),f=V(()=>{const e=u?.subscription?.usageCurrentPeriodEnd||u?.subscription?.stripeCurrentPeriodEnd;if(!e)return null;const a=ua(e,o);return a?{endDate:a,daysRemaining:pi(e)}:null},[u,o]),h=async()=>{p(!0);try{await s()}finally{p(!1)}};if(i&&!t)return e(bt,{});if(!d(de.WORKSPACE_USAGE_VIEW))return null;if(n)return e(Ne,{variant:"error",title:c("usage.errorLoading"),message:n,actionLabel:c("settings.common.retryAction",{loading:String(m)}),onAction:h,actionDisabled:m});const b=function(e){return[...e].sort(([,e],[,a])=>{if(e.hasOverage&&!a.hasOverage)return-1;if(!e.hasOverage&&a.hasOverage)return 1;const t=e.included>0?e.consumed/e.included:e.consumed>0?1:0;return(a.included>0?a.consumed/a.included:a.consumed>0?1:0)-t})}(t?Object.entries(t):[]);if(0===b.length)return e(ye,{icon:e(U,{className:"h-5 w-5 text-muted-foreground"}),title:c("usage.noData"),description:c("usage.noDataHint"),action:e(ne,{variant:"outline",size:"sm",progress:m,onClick:h,children:c("settings.common.refreshAction",{loading:String(m)})})});const x=b.filter(([,e])=>e.hasOverage).length,v=b.length>0?Math.round(b.reduce((e,[,a])=>e+(a.included>0?a.consumed/a.included*100:0),0)/b.length):0,N=Object.values(g).reduce((e,a)=>e+a.estimatedCostCents,0),A=Object.values(g)[0]?.currency??"usd",S=e=>se(e,A,o);return a("div",{className:"space-y-4",children:[a("div",{className:"flex items-center justify-between",children:[e("p",{className:"text-sm text-muted-foreground",children:c("usage.description")}),a(ne,{variant:"ghost",size:"sm",onClick:h,disabled:m,children:[e(r,{className:ie("h-3.5 w-3.5 me-1.5",m&&"animate-spin")}),c("settings.common.refreshAction",{loading:String(m)})]})]}),f&&a("div",{className:"flex items-center gap-2 rounded-lg border border-border bg-muted/30 px-4 py-3 text-sm text-muted-foreground",children:[e(P,{className:"h-4 w-4 text-muted-foreground/70 flex-shrink-0"}),a("span",{children:[c("usage.resetDateDisplay",{date:f.endDate}),null!==f.daysRemaining&&f.daysRemaining>0&&a("span",{className:"text-muted-foreground",children:[" ","(",c("usage.daysRemainingDisplay",{count:f.daysRemaining}),")"]}),null!==f.daysRemaining&&f.daysRemaining<=0&&a("span",{className:"text-warning font-medium",children:[" (",c("usage.renewingSoon"),")"]})]})]}),a("div",{className:"grid grid-cols-2 sm:grid-cols-3 gap-2 sm:gap-3",children:[a("div",{className:"border border-border rounded-lg p-3 sm:p-4",children:[e("p",{className:"text-xs text-muted-foreground font-medium",children:c("usage.totalResources")}),e("p",{className:"text-lg sm:text-xl font-semibold text-foreground mt-1",children:l(b.length)})]}),a("div",{className:"border border-border rounded-lg p-3 sm:p-4",children:[e("p",{className:"text-xs text-muted-foreground font-medium",children:c("usage.overallUsage")}),e("p",{className:"text-lg sm:text-xl font-semibold text-foreground mt-1",children:l(v)+"%"})]}),a("div",{className:ie("border rounded-lg p-3 sm:p-4",x>0?"border-destructive/20 bg-destructive/10":"border-border"),children:[e("p",{className:"text-xs text-muted-foreground font-medium",children:c("usage.inOverage")}),e("p",{className:ie("text-lg sm:text-xl font-semibold mt-1",x>0?"text-destructive":"text-foreground"),children:l(x)})]}),x>0&&N>0&&a("div",{className:"border border-destructive/20 bg-destructive/10 rounded-lg p-3 sm:p-4",children:[e("p",{className:"text-xs text-muted-foreground font-medium",children:c("usage.estOverageCost")}),e("p",{className:"text-lg sm:text-xl font-semibold mt-1 text-destructive",children:S(N)})]})]}),x>0&&e("div",{className:"bg-warning/10 border border-warning/30 rounded-lg p-4",children:a("div",{className:"flex items-start gap-3",children:[e(E,{className:"h-5 w-5 text-warning flex-shrink-0 mt-0.5 hidden sm:block"}),a("div",{className:"flex-1",children:[e("h3",{className:"text-sm font-semibold text-warning mb-1",children:c("usage.overageDetected")}),e("p",{className:"text-sm text-warning",children:c("usage.overageWarning",{count:x})}),N>0&&e("p",{className:"text-sm text-warning font-medium mt-1",children:c("usage.estOverageCharges",{amount:S(N)})})]})]})}),e("div",{className:"space-y-3",children:b.map(([a,t])=>{const i=(n=t.consumed,(s=t.included)<=0?n>0?100:0:Math.min(n/s*100,100));var n,s;const r=function(e,a){return a?{bar:"bg-destructive",bg:"bg-destructive/15",badge:"bg-destructive/15",badgeText:"text-destructive"}:e>=90?{bar:"bg-warning",bg:"bg-warning/15",badge:"bg-warning/15",badgeText:"text-warning"}:e>=75?{bar:"bg-warning/70",bg:"bg-warning/15",badge:"bg-warning/15",badgeText:"text-warning"}:{bar:"bg-info",bg:"bg-info/15",badge:"bg-info/15",badgeText:"text-info"}}(i,t.hasOverage),c=g[a];return e(fi,{slug:a,quota:t,percent:i,colors:r,pricing:c},a)})})]})};function fi({slug:t,quota:i,percent:n,colors:s,pricing:r}){const{t:c,formattingLocale:o}=q(),l=e=>function(e,a){return new Intl.NumberFormat(a,{notation:"compact",maximumFractionDigits:1}).format(e)}(e,o),d=(e,a)=>se(e,a,o);return a("div",{className:"border border-border rounded-lg p-4 sm:p-5",children:[a("div",{className:"flex flex-wrap items-center justify-between gap-y-1 mb-3",children:[a("div",{className:"flex items-center gap-2 min-w-0",children:[e("h3",{className:"text-sm font-medium text-foreground truncate",children:mi(t)}),i.hasOverage&&e("span",{className:ie("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",s.badge,s.badgeText),children:c("usage.overage")}),!i.hasOverage&&n>=90&&e("span",{className:ie("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",s.badge,s.badgeText),children:c("usage.almostFull")})]}),a("span",{className:"text-sm text-muted-foreground whitespace-nowrap",children:[l(i.consumed)," / ",l(i.included)]})]}),e("div",{role:"progressbar","aria-valuenow":Math.round(n),"aria-valuemin":0,"aria-valuemax":100,"aria-label":mi(t),className:ie("h-2 rounded-full w-full",s.bg),children:e("div",{className:ie("h-2 rounded-full transition-all duration-500",s.bar),style:{width:`${n}%`}})}),a("div",{className:"flex items-center justify-between mt-2 text-xs text-muted-foreground",children:[e("span",{children:c("usage.percentUsed",{percent:Math.round(n)})}),e("span",{children:i.available>0?c("usage.availableRemaining",{count:l(i.available)}):i.hasOverage?c("usage.overLimitCount",{count:l(i.overage)}):c("usage.fullyUsed")})]}),i.hasOverage&&r&&a("div",{className:"mt-3 pt-3 border-t border-border space-y-2",children:[a("div",{className:"flex items-center justify-between text-xs",children:[e("span",{className:"text-muted-foreground",children:c("usage.overageUnits")}),e("span",{className:"font-medium text-foreground",children:l(i.overage)})]}),a("div",{className:"flex items-center justify-between text-xs",children:[e("span",{className:"text-muted-foreground",children:c("usage.rate")}),e("span",{className:"font-medium text-foreground",children:c("usage.rateDisplay",{rate:d(r.overageCents,r.currency),unitSize:r.unitSize})})]}),r.unitSize>1&&a("div",{className:"flex items-center justify-between text-xs",children:[e("span",{className:"text-muted-foreground",children:c("usage.billableBlocks")}),e("span",{className:"font-medium text-foreground",children:l(Math.ceil(i.overage/r.unitSize))})]}),a("div",{className:"flex items-center justify-between text-xs pt-2 border-t border-border",children:[e("span",{className:"font-medium text-destructive",children:c("usage.estimatedCharge")}),e("span",{className:"font-semibold text-destructive",children:d(r.estimatedCostCents,r.currency)})]})]}),!i.hasOverage&&r&&e("div",{className:"mt-2 text-xs text-muted-foreground",children:c("usage.overageRateDisplay",{rate:c("usage.rateDisplay",{rate:d(r.overageCents,r.currency),unitSize:r.unitSize})})})]})}const hi=mt.Root,bi=W.forwardRef(({className:t,children:i,...n},s)=>a(mt.Trigger,{ref:s,className:ie("flex h-10 sm:h-9 w-full items-center justify-between rounded-md border border-input bg-transparent px-3 py-2 text-base sm:text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50",t),...n,children:[i,e(mt.Icon,{asChild:!0,children:e(lt,{className:"h-4 w-4 opacity-50"})})]}));bi.displayName=mt.Trigger.displayName;const xi=W.forwardRef(({className:a,children:t,position:i="popper",...n},s)=>{const{container:r}=W.useContext(Oa);return e(mt.Portal,{container:r,children:e(mt.Content,{ref:s,className:ie("relative z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===i&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:i,...n,children:e(mt.Viewport,{className:ie("p-1","popper"===i&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t})})})});xi.displayName=mt.Content.displayName;W.forwardRef(({className:a,...t},i)=>e(mt.Label,{ref:i,className:ie("px-2 py-1.5 text-sm font-semibold",a),...t})).displayName=mt.Label.displayName;const vi=W.forwardRef(({className:t,children:i,...n},s)=>a(mt.Item,{ref:s,className:ie("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 ps-2 pe-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...n,children:[e("span",{className:"absolute end-2 flex h-3.5 w-3.5 items-center justify-center",children:e(mt.ItemIndicator,{children:e(dt,{className:"h-4 w-4"})})}),e(mt.ItemText,{children:i})]}));vi.displayName=mt.Item.displayName;W.forwardRef(({className:a,...t},i)=>e(mt.Separator,{ref:i,className:ie("-mx-1 my-1 h-px bg-muted",a),...t})).displayName=mt.Separator.displayName;const Ni=({workspace:i})=>{const{user:n}=Wa(),{t:s,fmtNum:r,fmtCents:c}=q(),[o,l]=z(0),[u,m]=z(!1),[p,g]=z(!1),[f,h]=z([]),[b,x]=z(null),{getUsers:v,removeUser:N,updateUser:A}=Ee(),{settings:S}=Pe(),{can:y}=oe(),{visible:T}=le(),{response:C}=La(),w=Fa(S),k=Va(za({canView:y(de.WORKSPACE_MEMBERS_VIEW)})?i?._id:null),E=ja(i,{settingsMaxUsers:S?.workspace?.maxWorkspaceUsers,pendingInvitations:k.pendingCount});j(()=>{i&&(m(!0),v(i._id).then(e=>{h(e)}).catch(e=>{Ke(e,{component:"WorkspaceSettingsUsers",action:"getUsers",metadata:{workspaceId:i._id}})}).finally(()=>{m(!1),g(!0)}))},[i,o,v]);const P=()=>{l(e=>e+1)};if(!p||!i)return e(bt,{});const M=e=>"string"==typeof e?{name:s("users.unknownUser"),email:e,id:e,role:"-"}:{name:e.name||s("users.unknownUser"),email:e.email,id:e._id},U=f.map(e=>({...e,...M(e.user)})),I=T(e=>e.settings?.users?.invite,de.WORKSPACE_MEMBERS_INVITE),R=T(e=>e.settings?.users?.remove,de.WORKSPACE_MEMBERS_REMOVE),_=T(e=>e.settings?.users?.roleChange,de.WORKSPACE_MEMBERS_ROLE_CHANGE),G=T(e=>e.settings?.users?.seatPricing),B=T(e=>e.settings?.users?.invitations,de.WORKSPACE_MEMBERS_VIEW),{hasSeatPricing:L,includedSeats:K,maxUsers:O,canInvite:W,inviteBlockReason:F,inviteBlockMessageKey:V,inviteBlockMessageValues:H,perSeatPriceCents:J,currency:Y}=E,Z=f.length+k.pendingCount,$=C?.subscription?.billingInterval??"monthly",X=L&&Z>=K;return a("div",{children:[!y(de.WORKSPACE_MEMBERS_INVITE)&&!y(de.WORKSPACE_MEMBERS_REMOVE)&&!y(de.WORKSPACE_MEMBERS_ROLE_CHANGE)&&e(ht,{descriptionKey:"users.adminOnly"}),I&&w&&e("div",{className:"mb-4",children:W?a("div",{children:[e(Ai,{onInvite:()=>{P(),k.refresh().catch(()=>{})},workspaceId:i._id}),G&&X&&null!=J&&J>0&&e("div",{className:"flex items-center gap-1.5 mt-2 text-xs text-warning bg-warning/10 px-3 py-1.5 rounded-md",children:e("span",{children:s("users.extraSeatCost",{price:c(J,Y),interval:$})})})]}):e("div",{className:"flex items-center justify-between p-3 bg-destructive/10 border border-destructive/20 rounded-md",children:a("div",{children:[e("p",{className:"text-sm font-medium text-destructive",children:s("users.limitReached",{reason:F??"member_limit_reached"})}),e("p",{className:"text-xs text-destructive mt-0.5",children:V?s(V,H??void 0):""})]})})}),G&&(L||O>0)&&a("div",{className:"mb-4 rounded-lg border bg-muted/50 p-4",children:[a("div",{className:"flex items-center justify-between mb-2",children:[e("h4",{className:"text-sm font-medium text-foreground",children:s("users.seatHeading",{hasSeatPricing:String(L)})}),O>0&&a("span",{className:"text-xs font-medium px-2 py-0.5 rounded-full "+(Z>=O?"bg-destructive/15 text-destructive":Z>=.8*O?"bg-warning/15 text-warning":"bg-success/15 text-success"),children:[r(Z)," / ",r(O)]})]}),O>0&&e("div",{role:"progressbar","aria-valuenow":Z,"aria-valuemin":0,"aria-valuemax":O,"aria-label":s("users.seatHeading"),className:"w-full h-1.5 bg-muted rounded-full mb-3",children:e("div",{className:"h-1.5 rounded-full transition-all "+(Z>=O?"bg-destructive":Z>=.8*O?"bg-warning":"bg-success"),style:{width:`${Math.min(100,Z/O*100)}%`}})}),a("div",{className:"flex items-center justify-between text-sm text-muted-foreground",children:[e("div",{children:L?a(t,{children:[e("span",{className:"text-foreground font-medium",children:r(K)})," ",s("users.included"),null!=J&&J>0&&a("span",{className:"text-muted-foreground/70",children:[" ","· ",c(J,Y),s("users.perExtraSeat")]})]}):a("span",{children:[e("span",{className:"text-foreground font-medium",children:r(O)})," ",s("users.maxMembers")]})}),O>0?a("span",{children:[r(Math.max(0,O-Z))," ",s("users.available")]}):e("span",{className:"text-muted-foreground/70",children:s("users.noMemberLimit")})]}),k.pendingCount>0&&e("p",{className:"mt-2 text-xs text-muted-foreground",children:s("users.invitations.seatNote",{count:k.pendingCount})})]}),B&&e(Si,{state:k,canResend:I&&w,canRevoke:I,onChanged:P}),a("div",{className:"mb-4 flex items-center justify-between",children:[e("div",{children:e("div",{className:"text-sm text-muted-foreground",children:s("users.memberCount",{count:f.length})})}),e("div",{children:e(ne,{variant:"ghost",size:"sm",onClick:P,progress:u,children:s("settings.common.refreshAction",{loading:String(u)})})})]}),e("ul",{className:"space-y-2",children:U.map((t,r)=>{const c=t.id===n?.id,o=("object"==typeof i.createdBy&&null!==i.createdBy?i.createdBy._id:i.createdBy)===t.id;return a("li",{className:"border rounded-md p-3",children:[a("div",{className:"flex items-center justify-between gap-2",children:[a("div",{className:"flex items-center gap-2 sm:gap-3 min-w-0",children:[e("div",{className:"w-8 h-8 bg-muted rounded-full flex items-center justify-center text-sm font-medium shrink-0",children:t.name.charAt(0).toUpperCase()}),a("div",{className:"min-w-0",children:[e("div",{className:"font-medium text-sm truncate",children:t.name}),e("div",{className:"text-xs text-muted-foreground truncate",children:t.email})]})]}),a("div",{className:"flex items-center gap-1 shrink-0",children:[c&&e("span",{className:"text-xs bg-info/15 text-info px-2 py-0.5 rounded",children:s("users.you")}),o&&e("span",{className:"text-xs bg-primary/10 text-primary px-2 py-0.5 rounded",children:s("users.owner")})]})]}),_&&a("div",{className:"flex items-center gap-2 mt-2 pt-2 border-t border-border/60 sm:mt-0 sm:pt-0 sm:border-0",children:[a("div",{className:"relative flex-1 sm:flex-initial",children:[a(hi,{disabled:c||!_||o||b===t.id,value:t.role,onValueChange:e=>{return a=i._id,n=t.id,s=e,void($a(i,n)?Ke(new Error("Cannot change the role of the workspace owner"),{component:"WorkspaceSettingsUsers",action:"handleUpdateRole",metadata:{workspaceId:a,userId:n,role:s}}):(x(n),A(a,n,{role:s}).then(()=>{P()}).catch(e=>{Ke(e,{component:"WorkspaceSettingsUsers",action:"handleUpdateRole",metadata:{workspaceId:a,userId:n,role:s}})}).finally(()=>{x(null)})));var a,n,s},children:[e(bi,{children:e(pt,{placeholder:s("users.selectRole")})}),e(xi,{children:(S?.workspace?.roles??i?.roles??[]).map(a=>e(vi,{value:a,children:a},a))})]}),b===t.id&&e("div",{className:"absolute end-8 top-1/2 -translate-y-1/2 pointer-events-none",children:e(d,{className:"h-4 w-4 animate-spin text-muted-foreground"})})]}),!c&&!o&&R&&e(ne,{variant:"destructive",size:"sm",startIcon:e(D,{}),"aria-label":s("settings.common.delete"),onClick:()=>{return e=t.id,void($a(i,e)?Ke(new Error("Cannot remove the workspace owner"),{component:"WorkspaceSettingsUsers",action:"handleRemoveUser",metadata:{workspaceId:i._id,userId:e}}):N(i._id,e).then(()=>{P()}).catch(a=>{Ke(a,{component:"WorkspaceSettingsUsers",action:"handleRemoveUser",metadata:{workspaceId:i._id,userId:e}})}));var e}})]})]},t.id??r)})}),0===f.length&&e("div",{className:"text-center py-8 text-muted-foreground",children:s("users.noMembers")})]})};function Ai({onInvite:t,workspaceId:i}){const{t:n}=q(),{inviteMember:s,getWorkspace:r}=Ee(),{settings:c}=Pe(),[o,l]=z(""),[d,u]=z(null),m=c?.workspace.roles??d?.roles??[],p=Ha(m,c?.workspace.defaultRole),[g,f]=z(p),[h,b]=z(!1),[x,v]=z(null),[N,A]=z(null),S=li();j(()=>{!g&&p&&f(p)},[p]),j(()=>{i&&r(i).then(u).catch(e=>{Ke(e,{component:"InviteMember",action:"getWorkspace"})})},[i]);const y=()=>{v(null),A(null),l(""),f(p)};return a("div",{className:"flex gap-2 flex-col gap-y-2",children:[x&&e(Ne,{variant:"error",message:x}),N&&e(Ne,{variant:"success",message:N}),a("div",{children:[e(Ze,{children:n("users.inviteByEmail")}),e(Je,{type:"email",value:o,onChange:e=>l(e.target.value),placeholder:n("users.emailPlaceholder")})]}),a("div",{children:[e(Ze,{children:n("users.role")}),a(hi,{value:g,onValueChange:f,children:[e(bi,{children:e(pt,{placeholder:n("users.selectRole")})}),e(xi,{children:m.map(a=>e(vi,{value:a,children:a},a))})]})]}),e("div",{children:e(ne,{progress:h,onClick:async()=>{const e=o.trim();if(!e)return void v(n("users.emailRequired"));/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)?(b(!0),v(null),A(null),await s(i,e,g).then(()=>{A(n("users.invitations.sent",{email:e})),t?.()}).catch(a=>{Ke(a,{component:"InviteMember",action:"inviteMember",metadata:{workspaceId:i,email:e,role:g}}),v(a instanceof Error?a.message:n("users.inviteFailed"))}).finally(()=>{b(!1),S(y,6e3)})):v(n("users.invalidEmail"))},disabled:h||!o||!g,children:h?n("users.inviting"):n("users.inviteAs",{role:g})})})]})}function Si({state:i,canResend:n,canRevoke:s,onChanged:r}){const{t:c,formattingLocale:o}=q(),{formats:l}=Ja(),{invitations:d,loading:u,error:m,busy:p,resend:g,revoke:f}=i,[h,b]=z(null),[x,v]=z(null),N=li(),[,A]=z(0);if(j(()=>{if(!d.some(e=>Ya(e)>0))return;const e=setInterval(()=>A(e=>e+1),1e3);return()=>clearInterval(e)},[d]),!u&&0===d.length&&!m)return null;const S=e=>e?ua(e,o,l?.date??{dateStyle:"medium"}):"";return a("div",{className:"mb-4",children:[a("div",{className:"mb-2 flex items-center justify-between",children:[e("h4",{className:"text-sm font-medium text-foreground",children:c("users.invitations.title")}),e("span",{className:"text-xs text-muted-foreground",children:c("users.invitations.pendingCount",{count:i.pendingCount})})]}),m&&e(Ne,{variant:"error",message:m}),x&&e(Ne,{variant:"success",message:x}),e("ul",{className:"space-y-2",children:d.map(i=>{const o=Za(i),l="invited"===i.status&&!o,d=l?Ya(i):0,u=p===i._id;return e("li",{className:"rounded-md border p-3",children:a("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[a("div",{className:"min-w-0",children:[a("div",{className:"flex flex-wrap items-center gap-1.5",children:[e("span",{className:"truncate text-sm font-medium",children:i.email}),e("span",{className:"rounded bg-muted px-2 py-0.5 text-xs",children:i.role}),e("span",{className:"rounded px-2 py-0.5 text-xs "+(l?"bg-info/15 text-info":"accepted"===i.status?"bg-success/15 text-success":"bg-muted text-muted-foreground"),children:c(`users.invitations.status.${o?"expired":i.status}`)})]}),a("div",{className:"text-xs text-muted-foreground",children:[c("users.invitations.sentAt",{date:S(i.lastSentAt??i.invitedAt)}),l&&i.validTill&&a(t,{children:[" · ",c("users.invitations.expiresAt",{date:S(i.validTill)})]})]})]}),(n&&(l||o)||s&&l)&&a("div",{className:"flex shrink-0 items-center gap-2",children:[n&&e(ne,{variant:"outline",size:"sm",disabled:u||d>0,progress:u,onClick:()=>(e=>{g(e._id).then(()=>{v(c("users.invitations.sent",{email:e.email})),N(()=>v(null),6e3),r()}).catch(()=>{})})(i),children:d>0?c("users.invitations.resendIn",{minutes:Math.max(1,Math.ceil(d/60))}):c("users.invitations.resend")}),s&&l&&e(ne,{variant:"destructive",size:"sm",disabled:u,onClick:()=>b(i),children:c("users.invitations.revoke")})]})]})},i._id)})}),e(Me,{open:null!==h,onOpenChange:e=>!e&&b(null),children:a(De,{children:[a(Ie,{children:[e(Re,{children:c("users.invitations.revokeTitle")}),e(_e,{children:c("users.invitations.revokeConfirm",{email:h?.email??""})})]}),a(Ge,{children:[e(Be,{children:c("settings.common.cancel")}),e(Le,{onClick:()=>{return h&&(e=h,b(null),void f(e._id).then(r).catch(()=>{}));var e},className:"bg-destructive hover:bg-destructive/90 focus:ring-destructive",children:c("users.invitations.revoke")})]})]})})]})}const yi=({workspace:t,section:n,setSection:s})=>{const{t:r}=q(),{settings:c}=Pe(),{appPermissions:o}=sa(),{visible:l}=le(),d=qa(c),m=ra(c,o).length>0,p=(e,a)=>l(a=>a.settings?.sections?.[e],a),f=p(Xa.Profile),h=p(Xa.Security),b=p(Xa.Devices),x=p(Xa.ConnectedAgents),v=p(Xa.General,de.WORKSPACE_SETTINGS_VIEW),N=p(Xa.Users,de.WORKSPACE_MEMBERS_VIEW),S=p(Xa.Subscription,de.WORKSPACE_BILLING_VIEW),y=p(Xa.Usage,de.WORKSPACE_USAGE_VIEW),T=p(Xa.Credits,de.WORKSPACE_BILLING_VIEW),C=p(Xa.Features,de.WORKSPACE_FEATURES_VIEW),w=p(Xa.Notifications),k=p(Xa.Permissions)&&m,P=p(Xa.Danger,de.WORKSPACE_DELETE)&&d,D=f||h||b||x,K=v||N||S||y||T||C||w||k||P,O=(a,t,i)=>e(et,{icon:t,label:i,active:n===a,onClick:()=>s(a)});return a("div",{className:"w-full sm:w-56 sm:h-full flex flex-col space-y-4 sm:space-y-6 shrink-0",children:[t&&e("div",{className:"sticky top-0 z-10 bg-muted border-b p-2 py-4 pe-10 sm:pe-2",children:a("div",{className:"flex items-center gap-x-2",children:[t.image&&t.image.trim()&&e("div",{className:"bg-info/15 rounded flex items-center justify-center text-info font-medium px-0.5 py-0.5",style:{width:"40px",height:"40px",minWidth:"40px",minHeight:"40px"},children:e("img",{src:t.image,className:"w-full h-full object-contain",style:{width:"36px",height:"36px",maxWidth:"36px",maxHeight:"36px",objectFit:"contain"},alt:t.name})}),a("div",{className:ie("flex-1 min-w-0",t.image?"":"ps-2"),children:[e("div",{className:"font-medium text-sm line-clamp-1 text-ellipsis overflow-hidden",children:t.name}),e("div",{className:"text-xs text-muted-foreground",children:t.workspaceId})]})]})}),D&&a(Qa,{title:r("settings.sidebar.account"),children:[f&&O(Xa.Profile,e(I,{className:"h-3.5 w-3.5"}),r("settings.sidebar.profile")),h&&O(Xa.Security,e(A,{className:"h-3.5 w-3.5"}),r("settings.sidebar.security")),b&&O(Xa.Devices,e(R,{className:"h-3.5 w-3.5"}),r("settings.sidebar.devices")),x&&O(Xa.ConnectedAgents,e(_,{className:"h-3.5 w-3.5"}),r("security.connectedAgentsTitle"))]}),K&&a(Qa,{title:r("settings.sidebar.workspace"),children:[v&&O(Xa.General,e(G,{className:"h-3.5 w-3.5"}),r("settings.sidebar.general")),N&&O(Xa.Users,e(B,{className:"h-3.5 w-3.5"}),r("settings.sidebar.users")),S&&O(Xa.Subscription,e(M,{className:"h-3.5 w-3.5"}),r("settings.sidebar.subscription")),y&&O(Xa.Usage,e(U,{className:"h-3.5 w-3.5"}),r("settings.sidebar.usage")),T&&O(Xa.Credits,e(i,{className:"h-3.5 w-3.5"}),r("settings.sidebar.credits")),C&&O(Xa.Features,e(u,{className:"h-3.5 w-3.5"}),r("settings.sidebar.features")),w&&O(Xa.Notifications,e(g,{className:"h-3.5 w-3.5"}),r("settings.sidebar.notifications")),k&&O(Xa.Permissions,e(L,{className:"h-3.5 w-3.5"}),r("settings.sidebar.permissions")),P&&O(Xa.Danger,e(E,{className:"h-3.5 w-3.5"}),r("settings.sidebar.danger"))]})]})},Ti={[Xa.Profile]:"settings.titles.profile",[Xa.Security]:"settings.titles.security",[Xa.Devices]:"settings.titles.devices",[Xa.ConnectedAgents]:"security.connectedAgentsTitle",[Xa.General]:"settings.titles.general",[Xa.Users]:"settings.titles.users",[Xa.Subscription]:"settings.titles.subscription",[Xa.Usage]:"settings.titles.usage",[Xa.Credits]:"settings.titles.credits",[Xa.Features]:"settings.titles.features",[Xa.Notifications]:"settings.titles.notifications",[Xa.Permissions]:"settings.titles.permissions",[Xa.Danger]:"settings.titles.danger"},Ci=({ui:a,...t})=>{const i=Ja(),n=V(()=>at(i,a),[i,a]);return a?e(tt,{ui:n,children:e(wi,{...t})}):e(wi,{...t})},wi=({workspace:t,onClose:i,open:n,onOpenChange:s,defaultSection:r=Xa.Profile,section:c,onSectionChange:o,showTrigger:l=!0,trigger:d})=>{const{t:u,dir:m}=q(),{visible:p}=le(),[g,f]=z(!1),[h,b]=z(r),x=void 0!==n?n:g,v=s||f,N=void 0!==c?c:h,A=o||b,S=e=>p(a=>a.settings?.sections?.[e]),y=S(N)?N:Object.values(Xa).find(S)??null,T=void 0===c&&r===Xa.Profile,[C,w]=z(T),k=J(y),E=J(null),P=J(null),M=J(C);j(()=>{M.current!==C&&(M.current=C,"undefined"==typeof window||window.innerWidth>=640||(C?P:E).current?.focus())},[C]),j(()=>{k.current!==y&&(k.current=y,w(!1))},[y]),j(()=>{x&&w(T)},[x]);const{emit:U}=Ea(),D=J(!1),I=J(null);j(()=>x?y?D.current?void(I.current!==y&&(I.current=y,U("workspace_settings_section_viewed",{section:y}))):(D.current=!0,I.current=y,void U("workspace_settings_opened",{section:y})):void 0:(D.current=!1,void(I.current=null)),[x,y,U]);if(!t||!y)return null;const R=e(ne,{variant:"outline",size:"icon","aria-label":u("settings.common.openSettings"),children:e(K,{className:"h-4 w-4"})});return a(X,{open:x,onOpenChange:e=>{v(e),!e&&i&&i()},children:[l&&e(it,{asChild:!0,children:d||R}),a(Q,{dir:m,className:"flex flex-col sm:flex-row max-w-2xl min-w-full md:min-w-[800px] xl:min-w-[960px] p-0 m-0 bg-muted h-dvh max-h-dvh sm:h-auto sm:max-h-[90vh] sm:min-h-[600px] overflow-hidden gap-x-0 space-x-0",children:[e(ae,{className:"sr-only",children:u(Ti[y])}),e("div",{ref:P,tabIndex:-1,className:ie("flex-col flex-1 min-h-0 overflow-y-auto overscroll-contain px-2 pb-2 sm:p-0 sm:flex sm:flex-none focus:outline-none",C?"flex":"hidden"),children:e(yi,{workspace:t,section:y,setSection:e=>{A(e),w(!1)}})}),a("div",{ref:E,tabIndex:-1,className:ie("flex-1 p-4 sm:p-6 overflow-auto flex-col bg-background sm:flex focus:outline-none",C?"hidden":"flex"),children:[a("div",{className:"flex items-center gap-1 mb-4 pe-10 sm:pe-0",children:[e(ne,{variant:"ghost",size:"icon",className:"sm:hidden -ms-2 shrink-0 text-muted-foreground","aria-label":u("settings.common.back"),onClick:()=>w(!0),children:e(O,{className:"h-5 w-5 rtl:rotate-180"})}),e(ee,{className:"text-xl font-semibold min-w-0 truncate",children:u(Ti[y])})]}),a("div",{className:"sm:max-h-[500px] xl:max-h-[65vh] overflow-y-auto",children:[y===Xa.Profile&&e(Xt,{workspace:t}),y===Xa.Security&&e(Qt,{}),y===Xa.Devices&&e(St,{}),y===Xa.ConnectedAgents&&e(gt,{}),y===Xa.General&&e(wt,{workspace:t}),y===Xa.Users&&e(Ni,{workspace:t}),y===Xa.Subscription&&e(ui,{workspace:t}),y===Xa.Usage&&e(gi,{}),y===Xa.Credits&&e(vt,{workspace:t}),y===Xa.Features&&e(Ct,{workspaceId:t._id?.toString()}),y===Xa.Notifications&&e(Mt,{workspace:t}),y===Xa.Permissions&&e(Dt,{workspace:t}),y===Xa.Danger&&e(At,{workspace:t})]})]})]})]})};export{Xa as SettingsScreen,Ci as WorkspaceSettingsDialog,Ci as default};
|
|
2
|
+
import{jsx as e,jsxs as a,Fragment as t}from"react/jsx-runtime";import{Coins as i,ShieldAlert as n,ShoppingCart as s,RefreshCw as r,CheckCircle2 as c,History as o,Trash2 as l,Loader2 as d,ToggleRight as u,Smile as m,ImageIcon as p,Bell as g,BellOff as f,Lock as h,Mail as b,Smartphone as x,ChevronsUpDown as v,CheckCheck as N,KeyRound as A,Check as S,X as y,Pencil as T,FileText as C,ExternalLink as w,Download as k,AlertTriangle as E,Calendar as P,CreditCard as M,BarChart3 as U,TrashIcon as D,UserIcon as I,MonitorSmartphone as R,Bot as _,SettingsIcon as G,UsersIcon as B,Shield as L,Settings as K,ArrowLeft as O}from"lucide-react";import*as W from"react";import F,{useMemo as V,useState as z,useEffect as j,useCallback as H,useRef as J,Suspense as Y,lazy as Z}from"react";import{C as $,u as q,D as X,a as Q,b as ee,c as ae,g as te,d as ie,B as ne,f as se,e as re,S as ce,h as oe,i as le,P as de,j as ue,k as me,l as pe,m as ge,n as fe,w as he,o as be,p as xe,q as ve,r as Ne,s as Ae,L as Se,E as ye,t as Te,v as Ce,x as we,y as ke,z as Ee,A as Pe,F as Me,G as Ue,H as De,I as Ie,J as Re,K as _e,M as Ge,N as Be,O as Le,Q as Ke,R as Oe,T as We,U as Fe,V as Ve,W as ze,X as je,Y as He,Z as Je,_ as Ye,$ as Ze,a0 as $e,a1 as qe,a2 as Xe,a3 as Qe,a4 as ea,a5 as aa,a6 as ta,a7 as ia,a8 as na,a9 as sa,aa as ra,ab as ca,ac as oa,ad as la,ae as da,af as ua,ag as ma,ah as pa,ai as ga,aj as fa,ak as ha,al as ba,am as xa,an as va,ao as Na,ap as Aa,aq as Sa,ar as ya,as as Ta,at as Ca,au as wa,av as ka,aw as Ea,ax as Pa,ay as Ma,az as Ua,aA as Da,aB as Ia,aC as Ra,aD as _a,aE as Ga,aF as Ba,aG as La,aH as Ka,aI as Oa,aJ as Wa,aK as Fa,aL as Va,aM as za,aN as ja,aO as Ha,aP as Ja,aQ as Ya,aR as Za,aS as $a,aT as qa,aU as Xa,aV as Qa,aW as et,aX as at,aY as tt,aZ as it}from"./react-4qMM6kB7.mjs";export{a_ as SETTINGS_SCREENS}from"./react-4qMM6kB7.mjs";import*as nt from"@radix-ui/react-switch";import{zodResolver as st}from"@hookform/resolvers/zod";import{useForm as rt}from"react-hook-form";import{z as ct}from"zod";import{MagnifyingGlassIcon as ot,CaretSortIcon as lt,CheckIcon as dt}from"@radix-ui/react-icons";import{Command as ut}from"cmdk";import*as mt from"@radix-ui/react-select";import{SelectValue as pt}from"@radix-ui/react-select";import"clsx";import"tailwind-merge";import"intl-messageformat";import"@radix-ui/react-slot";import"class-variance-authority";import"@radix-ui/react-dialog";import"@radix-ui/react-label";import"@radix-ui/react-avatar";import"@radix-ui/react-radio-group";import"@radix-ui/react-scroll-area";import"@radix-ui/react-separator";import"@radix-ui/react-accordion";import"@radix-ui/react-alert-dialog";import"@radix-ui/react-popover";const gt=()=>e($,{title:null});const ft=({open:t,onOpenChange:n,packages:s,billingCurrency:r,workspaceName:c,onSelectPackage:o,purchasingPackageId:l,loading:d=!1})=>{const{t:u,dir:m,fmtNum:p,fmtCents:g,formattingLocale:f}=q(),h=V(()=>{const e=new Set;return s.forEach(a=>{a.pricingVariants?.forEach(a=>{a.currency&&e.add(a.currency.toLowerCase())})}),Array.from(e)},[s]),b=V(()=>{const e=r?.trim().toLowerCase();return e?h.includes(e)?[e]:[]:h},[r,h]),[x,v]=z(()=>b.length>0?b[0]:""),N=r?.trim().toLowerCase()||x,A=d||!!l;return e(X,{open:t,onOpenChange:n,children:a(Q,{dir:m,className:"inset-0 w-screen h-screen max-w-none rounded-none translate-x-0 translate-y-0 p-0 flex flex-col",children:[a("div",{className:"flex-shrink-0 px-4 py-4 sm:px-6 sm:py-6 border-b space-y-3 sm:space-y-4",children:[a("div",{children:[e(ee,{className:"text-xl font-semibold",children:u("credits.dialogTitle")}),a(ae,{className:"mt-1 text-sm",children:[u("credits.dialogDescription"),c&&e("span",{className:"ms-1 font-medium text-foreground",children:u("credits.dialogDescriptionWorkspace",{workspace:c})})]})]}),!r?.trim()&&b.length>1&&a("div",{className:"flex items-center gap-2",children:[e("span",{className:"text-sm text-muted-foreground",children:u("pricing.currency")}),e("div",{className:"flex gap-1 rounded-lg border border-border bg-muted/30 p-1",children:b.map(e=>a("button",{type:"button",onClick:()=>v(e),className:ie("rounded-md px-3 py-1.5 text-sm font-medium transition-colors",N===e?"bg-background text-foreground shadow-sm":"text-muted-foreground hover:text-foreground"),children:[te(e)," ",e.toUpperCase()]},e))})]})]}),e("div",{className:"flex-1 overflow-y-auto",children:0===s.length?a("div",{className:"flex flex-col items-center justify-center py-16 text-muted-foreground/70",children:[e(i,{className:"h-12 w-12 mb-3"}),e("p",{className:"text-sm",children:u("credits.noPackages")})]}):e("div",{className:"max-w-2xl mx-auto px-4 py-6 sm:px-6 space-y-4",children:s.map(t=>{const n=t.pricingVariants?.find(e=>e.currency?.toLowerCase()===N)??t.pricingVariants?.[0],s=n?.amount,r=n?.currency??N,c=l===t._id,d=null!=s&&s>0&&t.creditAmount>0?function(e,a,t){const i=Math.round(e);if(i>=1)return se(i,a,t);const n=re(a),s=e/10**n,r=Math.min(n+4,Math.max(n,Math.ceil(-Math.log10(s))+1));try{return new Intl.NumberFormat(t,{style:"currency",currency:a.trim().toUpperCase(),minimumFractionDigits:r,maximumFractionDigits:r}).format(s)}catch{return te(a)+s.toFixed(r)}}(s/t.creditAmount,r,f):null;return a("div",{className:ie("rounded-xl border p-5 sm:p-6 flex flex-col sm:flex-row sm:items-center gap-4 transition-all",c?"border-primary bg-primary/5 shadow-md":"border-border hover:border-border hover:shadow-sm"),children:[a("div",{className:"flex-1 min-w-0",children:[a("div",{className:"flex items-center gap-2 mb-1",children:[e("h3",{className:"text-lg font-semibold text-foreground",children:t.name}),a("span",{className:"inline-flex items-center gap-1 rounded-full bg-info/10 px-2.5 py-0.5 text-xs font-medium text-info",children:[e(i,{className:"h-3.5 w-3.5"}),u("credits.creditsAmount",{count:p(t.creditAmount)})]})]}),t.description&&e("p",{className:"text-sm text-muted-foreground mb-2",children:t.description}),a("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-muted-foreground/70",children:[e("span",{children:t.validityDays?u("credits.validityDays",{count:t.validityDays}):u("credits.validityUnlimited")}),null!=d&&e("span",{children:u("credits.perCredit",{price:d})})]})]}),a("div",{className:"flex items-center gap-4 sm:flex-col sm:items-end sm:gap-2 shrink-0",children:[null!=s&&e("span",{className:"text-2xl sm:text-3xl font-bold text-foreground whitespace-nowrap",children:g(s,r)}),e(ne,{size:"sm",onClick:()=>o(t),disabled:A,progress:c,className:"whitespace-nowrap",children:c?u("credits.purchasing"):u("credits.buyAmount",{count:p(t.creditAmount)})})]})]},t._id)})})})]})})},ht=({titleKey:t,descriptionKey:i})=>{const{t:s}=q();return e("div",{className:"border border-warning/20 bg-warning/10 rounded-lg p-4",children:a("div",{className:"flex items-start gap-3",children:[e(n,{className:"h-5 w-5 text-warning shrink-0 mt-0.5"}),a("div",{children:[e("h4",{className:"text-sm font-medium text-warning",children:s(t??"settings.common.noPermissionTitle")}),e("p",{className:"text-xs text-warning/80 mt-1",children:s(i??"settings.common.noPermissionDescription")})]})]})})};function bt(){return a("div",{className:"space-y-3.5",children:[e(ce,{className:"h-10 w-full"}),e(ce,{className:"h-10 w-full"}),e(ce,{className:"h-10 w-full"})]})}const xt={[ke.PlanGrant]:"credits.type.plan_grant",[ke.PackPurchased]:"credits.type.pack_purchased",[ke.Consumed]:"credits.type.consumed",[ke.Expired]:"credits.type.expired",[ke.AdminGrant]:"credits.type.admin_grant",[ke.AdminRevoke]:"credits.type.admin_revoke",[ke.Refund]:"credits.type.refund"};const vt=({workspace:n})=>{const l=n._id?.toString(),{t:d,fmtNum:u}=q(),{can:m}=oe(),{visible:p}=le(),g=p(e=>e.settings?.credits?.transactions),f=m(de.WORKSPACE_BILLING_VIEW),h=p(e=>e.settings?.credits?.buyButton,de.WORKSPACE_BILLING_MANAGE),{balance:b,loading:x,error:v,refetch:N}=ue(),{packages:A,loading:S}=me(l),{expiringCredits:y,loading:T}=pe(l,7),[C,w]=z(1),{transactions:k,hasNextPage:E,loading:P,refetch:M}=ge(l,{limit:10,page:C}),[U,D]=z([]);j(()=>{P||0===k.length||D(1===C?k:e=>{const a=new Set(e.map(e=>e._id)),t=k.filter(e=>!a.has(e._id));return t.length>0?[...e,...t]:e})},[k,C,P]);const I=H(()=>{E&&!P&&w(e=>e+1)},[E,P]),R=U,{purchaseCredits:_,loading:G}=fe(l),[B,L]=z(!1),[K,O]=z(null),[W,F]=z(!1),[V,Y]=z(!1),[Z,$]=z(null),[X,Q]=z(!1),ee=J(!1),ae=x&&!b;j(()=>{if(ee.current)return;const e=he.getState();if(!e.params?.action)return;if(e.params.action===be.OpenCreditStore)return ee.current=!0,he.clearParams(),void Q(!0);if(e.params.action!==be.CreditPurchase)return;ee.current=!0;const a=e.params.status;if(he.clearParams(),a===xe.Success){F(!0),ve();const e=setTimeout(()=>F(!1),8e3);return()=>clearTimeout(e)}if(a===xe.Cancel){Y(!0);const e=setTimeout(()=>Y(!1),5e3);return()=>clearTimeout(e)}a===xe.Error&&O(d("credits.purchaseFailed"))},[]);if(ae)return e(bt,{});if(!f)return e(ht,{});if(!l)return e("div",{className:"border rounded-lg p-4 text-center text-muted-foreground",children:e("p",{children:d("subscription.invalidWorkspace")})});const te=!S&&A.length>0;return a("div",{className:"space-y-4",children:[a("div",{className:"space-y-3",children:[e("p",{className:"text-sm text-muted-foreground",children:d("credits.description")}),a("div",{className:"flex flex-wrap items-center gap-2",children:[te&&h&&a(ne,{size:"sm",onClick:()=>Q(!0),children:[e(s,{className:"h-3.5 w-3.5 me-1.5"}),d("credits.buyCredits")]}),a(ne,{variant:"ghost",size:"sm",onClick:async()=>{L(!0);try{await N()}finally{L(!1)}},disabled:B,children:[e(r,{className:ie("h-3.5 w-3.5 me-1.5",B&&"animate-spin")}),d("settings.common.refreshAction",{loading:String(B)})]})]})]}),v&&e(Ne,{variant:"error",title:d("credits.errorLoading"),message:v}),W&&e(Ne,{variant:"success",icon:e(c,{className:"h-4 w-4 flex-shrink-0"}),title:d("credits.purchaseSuccess"),actionLabel:d("settings.common.dismiss"),onAction:()=>F(!1)}),V&&e(Ne,{variant:"warning",title:d("credits.purchaseCanceled"),actionLabel:d("settings.common.dismiss"),onAction:()=>Y(!1)}),K&&e(Ne,{variant:"error",message:K,actionLabel:d("settings.common.dismiss"),onAction:()=>O(null)}),a("div",{className:"border border-border rounded-lg overflow-hidden",children:[a("div",{className:"bg-muted/30 p-4 sm:p-5",children:[a("div",{className:"flex items-center justify-between mb-3",children:[e("h3",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wider",children:d("credits.balance")}),e(i,{className:"h-5 w-5 text-muted-foreground/70"})]}),b?a(t,{children:[e("div",{className:"text-3xl font-bold text-foreground mb-4",children:u(b.available)}),a("div",{className:"grid grid-cols-2 gap-3",children:[a("div",{children:[e("p",{className:"text-xs text-muted-foreground",children:d("credits.totalGranted")}),e("p",{className:"text-sm font-medium text-foreground",children:u(b.totalGranted)})]}),a("div",{children:[e("p",{className:"text-xs text-muted-foreground",children:d("credits.totalConsumed")}),e("p",{className:"text-sm font-medium text-foreground",children:u(b.totalConsumed)})]}),a("div",{children:[e("p",{className:"text-xs text-muted-foreground",children:d("credits.totalExpired")}),e("p",{className:"text-sm font-medium text-foreground",children:u(b.totalExpired)})]}),a("div",{children:[e("p",{className:"text-xs text-muted-foreground",children:d("credits.available")}),e("p",{className:"text-sm font-semibold text-success",children:u(b.available)})]})]})]}):a("div",{className:"text-center py-4",children:[e(i,{className:"h-10 w-10 text-muted-foreground/50 mx-auto mb-2"}),e("p",{className:"text-sm text-muted-foreground",children:d("credits.noCredits")}),e("p",{className:"text-xs text-muted-foreground mt-1",children:d("credits.noCreditsHint")}),te&&h&&a(ne,{size:"sm",className:"mt-3",onClick:()=>Q(!0),children:[e(s,{className:"h-3.5 w-3.5 me-1.5"}),d("credits.buyCredits")]})]})]}),!T&&y>0&&e("div",{className:"px-4 py-3 bg-warning/10 border-t border-warning/30 text-sm text-warning",children:d("credits.expiringInDays",{count:y,days:7})})]}),g&&a("div",{children:[e(Ae,{title:d("credits.transactions"),className:"mb-3"}),P&&0===R.length?e(Se,{}):0===R.length?e(ye,{icon:e(o,{className:"h-5 w-5 text-muted-foreground"}),description:d("credits.noTransactions"),action:e(ne,{variant:"outline",size:"sm",progress:P,onClick:M,children:d("settings.common.refreshAction",{loading:String(P)})})}):a("div",{className:"border border-border rounded-lg overflow-hidden",children:[e("div",{className:"divide-y divide-border/60",children:R.map(a=>e(Nt,{tx:a},a._id))}),E&&e("div",{className:"border-t border-border px-4 py-3 text-center",children:e(ne,{variant:"ghost",size:"sm",onClick:I,disabled:P,progress:P&&C>1,children:d("credits.loadMore")})})]})]}),te&&h&&e(ft,{open:X,onOpenChange:Q,packages:A,billingCurrency:n.billingCurrency,workspaceName:n.name,onSelectPackage:async e=>{if(l){O(null),$(e._id);try{const{successUrl:a,cancelUrl:t}=Ce(l),i=await _({creditPackageId:e._id,successUrl:a,cancelUrl:t});i.url&&we(i.url)}catch(e){O(e instanceof Error?e.message:d("errors.purchaseCredits")),$(null)}}},purchasingPackageId:Z,loading:G})]})};function Nt({tx:t}){const{t:i,formattingLocale:n,fmtNum:s}=q(),r=xt[t.type]??"credits.type.consumed",c=function(e){switch(e){case"plan_grant":case"admin_grant":case"refund":return"bg-success/15 text-success";case"pack_purchased":return"bg-info/15 text-info";case"consumed":default:return"bg-muted text-foreground";case"expired":case"admin_revoke":return"bg-destructive/15 text-destructive"}}(t.type),o=t.amount>0;return e("div",{className:"px-3 py-3 sm:px-4",children:a("div",{className:"flex items-start justify-between gap-2",children:[a("div",{className:"min-w-0 flex-1",children:[a("div",{className:"flex flex-wrap items-center gap-1.5 mb-0.5",children:[e("span",{className:ie("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium shrink-0",c),children:i(r)}),t.description&&e("p",{className:"text-sm text-foreground truncate",children:t.description})]}),e("p",{className:"text-xs text-muted-foreground/70",children:Te(t.createdAt,n)})]}),a("div",{className:"text-end shrink-0",children:[a("span",{className:ie("text-sm font-semibold",o?"text-success":"text-foreground"),children:[o?"+":"",s(t.amount)]}),e("p",{className:"text-xs text-muted-foreground/70",children:s(t.balanceAfter)})]})]})})}const At=({workspace:i})=>{const[n,s]=z(!1),{deleteWorkspace:r}=Ee(),{can:c}=oe(),{settings:o}=Pe(),{t:u}=q();if(1===(o?.workspace?.maxWorkspacesPerUser??0))return null;if(!i)return e(bt,{});return c(de.WORKSPACE_DELETE)?a("div",{className:"space-y-4",children:[e(Ae,{title:u("danger.title"),titleClassName:"text-destructive",description:u("danger.deleteDescription")}),a(Me,{children:[e(Ue,{asChild:!0,children:a(ne,{variant:"destructive",disabled:n,progress:n,children:[e(l,{className:"h-4 w-4 me-2"}),u("danger.deleteWorkspace")]})}),a(De,{children:[a(Ie,{children:[e(Re,{children:u("danger.deleteConfirm")}),e(_e,{children:u("danger.deleteConfirmDescription")})]}),a(Ge,{children:[e(Be,{disabled:n,children:u("settings.common.cancel")}),e(Le,{onClick:async()=>{s(!0);try{await r(i._id)}catch(e){Ke(e,{component:"WorkspaceSettingsDanger",action:"handleDeleteWorkspace",metadata:{workspaceId:i._id}})}finally{s(!1)}},disabled:n,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:n?a(t,{children:[e(d,{className:"me-2 h-4 w-4 animate-spin"}),u("danger.deleting")]}):u("danger.deleteWorkspace")})]})]})]})]}):e(ht,{descriptionKey:"danger.adminOnly"})},St=()=>{const{visible:t}=le(),i=t(e=>e.settings?.devices?.sessions);return a("div",{className:"space-y-8",children:[e(Oe,{title:null}),i&&e(We,{})]})},yt=W.forwardRef(({className:a,...t},i)=>e(nt.Root,{className:ie("peer inline-flex h-[20px] w-[36px] shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",a),...t,ref:i,children:e(nt.Thumb,{className:ie("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 rtl:data-[state=checked]:-translate-x-4 data-[state=unchecked]:translate-x-0")})}));function Tt(e=5e3){const[a,t]=z(null),i=J(null);j(()=>()=>{i.current&&clearTimeout(i.current)},[]);return{message:a,show:H(a=>{t(a),i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{t(null)},e)},[e]),clear:H(()=>{t(null),i.current&&clearTimeout(i.current)},[])}}yt.displayName=nt.Root.displayName;const Ct=({workspaceId:t})=>{const{t:i}=q(),{allFeatures:n,updateFeature:s,getWorkspace:r}=Ee(),{can:c}=oe(),[o,l]=z({}),m=Tt(),[p,g]=z(null);if(j(()=>{r(t).then(g).catch(e=>{Ke(e,{component:"WorkspaceSettingsFeatures",action:"getWorkspace"})})},[t]),!p)return e(bt,{});const f=c(de.WORKSPACE_FEATURES_EDIT);return a("div",{children:[m.message&&e(Ne,{variant:"success",title:i("settings.common.success"),message:m.message,className:"mb-4"}),a("div",{className:"flex flex-col gap-y-3.5 pe-4",children:[!f&&e(ht,{descriptionKey:"features.ownerOnly"}),!n.length&&e(ye,{icon:e(u,{className:"h-5 w-5 text-muted-foreground"}),description:i("features.noFeatures")}),n.length>0&&e("div",{className:"flex flex-col gap-y-3.5",children:n.map(t=>{const r=p?.features?.[t.slug],c=null!==o[t.slug]&&void 0!==o[t.slug],u=o[t.slug],h=i("features.actionStatus",{action:!0===u?"enabling":!1===u?"disabling":"none"});return a("div",{className:"flex items-center gap-x-2 justify-between w-full",children:[a("div",{className:"flex gap-x-2 flex-col",children:[e("h3",{className:"font-medium text-ellipsis",children:t.name}),e("p",{className:"text-muted-foreground",children:t.description})]}),c?a("div",{className:"flex items-center gap-x-1",children:[e(d,{className:"h-4 w-4 animate-spin text-muted-foreground"}),a("span",{className:"text-sm text-muted-foreground",children:[h,"..."]})]}):e(yt,{disabled:!f,checked:r??t.defaultValue,onCheckedChange:e=>async function(e,a){if(p){l(t=>({...t,[e]:a})),m.clear();try{const t=await s(p._id,e,a);g(t);const r=n.find(a=>a.slug===e),c=r?.name||i("features.fallbackName");m.show(i("features.updateSuccess",{feature:c,enabled:String(a)}))}catch(a){Ke(a,{component:"WorkspaceSettingsFeatures",action:"updateFeature",metadata:{workspaceId:p._id,featureKey:e}})}finally{l(a=>({...a,[e]:null}))}}}(t.slug,e)})]},t._id)})})]})]})},wt=({workspace:t})=>{const{t:i}=q(),{visible:n}=le(),s=n(e=>e.settings?.general?.nameEdit),r=n(e=>e.settings?.general?.iconEditor),{updateWorkspace:c}=Ee(),{can:o}=oe(),[l,d]=z(!1),[u,g]=z("emoji"),[f,h]=z(),b=Tt(),x=ct.object({name:ct.string().min(2,{message:i("general.nameMinLength")}),image:ct.string().optional()}),v=rt({resolver:st(x),defaultValues:{name:t.name||"",image:t.image||""}});if(!t)return e(bt,{});const N=o(de.WORKSPACE_SETTINGS_EDIT);return a("div",{children:[b.message&&e(Ne,{variant:"success",title:i("settings.common.success"),message:b.message,className:"mb-4"}),!N&&e(ht,{descriptionKey:"general.ownerOnly"}),e(Fe,{...v,children:a("form",{onSubmit:v.handleSubmit(async function(e){d(!0),b.clear();try{await c(t,e),b.show(i("general.success"))}catch(e){Ke(e,{component:"WorkspaceSettingsGeneral",action:"updateWorkspace",metadata:{workspaceId:t._id}})}finally{d(!1)}}),className:"space-y-6",children:[s&&e(Ve,{control:v.control,name:"name",render:({field:t})=>a(ze,{children:[e(je,{children:i("general.name")}),e(He,{children:e(Je,{placeholder:i("general.namePlaceholder"),...t,disabled:!N})}),e(Ye,{})]})}),t.billingCurrency?.trim()&&a("div",{className:"space-y-1.5",children:[e(Ze,{className:"text-sm font-medium text-muted-foreground",children:i("general.billingCurrency")}),a("div",{className:"flex items-center gap-2 text-sm",children:[$e(t.billingCurrency)&&e("span",{className:"text-base",children:$e(t.billingCurrency)}),e("span",{children:t.billingCurrency.trim().toUpperCase()})]})]}),r&&a("div",{className:"space-y-4",children:[a("div",{children:[e(Ze,{className:"text-sm font-medium",children:i("general.icon")}),e(qe,{children:i("general.iconDescription")})]}),a(Xe,{value:u,disabled:!N,onValueChange:e=>g(e),className:"flex flex-col space-y-3",children:[a("div",{className:"flex items-center space-x-2",children:[e(Qe,{value:"emoji",id:"emoji"}),a(Ze,{htmlFor:"emoji",className:"flex items-center gap-2",children:[e(m,{className:"h-4 w-4"}),i("general.chooseEmoji")]})]}),a("div",{className:"flex items-center space-x-2",children:[e(Qe,{value:"url",id:"url"}),a(Ze,{htmlFor:"url",className:"flex items-center gap-2",children:[e(p,{className:"h-4 w-4"}),i("general.customImageUrl")]})]})]}),"emoji"===u&&a("div",{className:"space-y-3",children:[a("div",{className:"flex items-center gap-3",children:[e("span",{className:"text-sm font-medium",children:i("general.previewLabel")}),a("div",{className:"w-12 h-12 rounded-lg border-2 border-border flex items-center justify-center text-2xl bg-muted",children:[f&&e("span",{className:"text-2xl",children:f}),!f&&v.watch("image")?.trim()&&e("img",{src:v.watch("image")||void 0,alt:i("general.previewImageAlt")})]})]}),N&&e(ea,{className:"h-32 w-full rounded-md border",children:e("div",{className:"p-4 grid grid-cols-8 gap-2",children:aa.map((a,t)=>e("button",{type:"button",onClick:()=>(e=>{h(e),v.setValue("image",ta(e))})(a),disabled:!N,"aria-label":a,"aria-pressed":f===a,className:"w-10 h-10 sm:w-8 sm:h-8 rounded flex items-center justify-center text-lg hover:bg-muted transition-colors "+(f===a?"bg-primary text-primary-foreground":""),children:a},t))})})]}),"url"===u&&a("div",{className:"space-y-3",children:[e(Ve,{control:v.control,name:"image",render:({field:t})=>a(ze,{children:[e(je,{children:i("general.imageUrl")}),e(He,{children:e(Je,{placeholder:i("general.imageUrlPlaceholder"),...t,disabled:!N})}),e(qe,{children:i("general.imageUrlDescription")}),e(Ye,{})]})}),v.watch("image")&&v.watch("image")?.trim()&&a("div",{className:"flex items-center gap-3",children:[e("span",{className:"text-sm font-medium",children:i("general.previewLabel")}),e("div",{className:"w-12 h-12 rounded-lg border-2 border-border overflow-hidden bg-muted",children:e("img",{src:v.watch("image")||void 0,className:"w-full h-full object-cover",alt:i("general.previewImageAlt")})})]})]})]}),e("div",{className:"flex justify-end gap-3 pt-4",children:N&&(s||r)&&e(ne,{type:"submit",disabled:l,progress:l,children:i("general.updateWorkspace")})})]})})]})};function kt(e,a,t){const i=e.defaults[a],n=i?.required?void 0:e.mine[a]?.[t];return"boolean"==typeof n?n:!1!==i?.[t]}const Et={firefox:4,safari:4,edge:4,chrome:4},Pt={defaults:{},mine:{}},Mt=({workspace:i})=>{const{isSupported:s,permission:r,isSubscribed:c,loading:o,error:l,subscribe:d,unsubscribe:u}=ia(),{t:m}=q(),{api:p}=na(),{can:b}=oe(),{visible:x}=le(),v=b(de.WORKSPACE_SETTINGS_EDIT),N=x(e=>e.settings?.notifications?.push),A=x(e=>e.settings?.notifications?.emailToggles),S=x(e=>e.settings?.notifications?.pushToggles),y=V(()=>function(){const e="undefined"!=typeof navigator?navigator.userAgent:"";return e.includes("Firefox")?"firefox":e.includes("Safari")&&!e.includes("Chrome")?"safari":e.includes("Edg")?"edge":"chrome"}(),[]),T=Et[y],[C,w]=z([]),[k,E]=z(!0),[P,M]=z(Pt),[U,D]=z(!0),[I,R]=z(null),[_,G]=z(null),[B,L]=z(null),K=J(null);j(()=>()=>{K.current&&clearTimeout(K.current)},[]),j(()=>{if(!i?._id)return;const e=i._id.toString();E(!0),D(!0),Promise.all([p.getNotificationEvents(e).catch(()=>[]),p.getMyNotificationPreferences(e).catch(()=>Pt)]).then(([e,a])=>{w(e),M(a)}).finally(()=>{E(!1),D(!1)})},[i?._id]);const O=H(()=>{G(m("notifications.prefsSaved")),K.current&&clearTimeout(K.current),K.current=setTimeout(()=>G(null),3e3)},[m]),W=H(async(e,a)=>{if(!i?._id)return;if(P.defaults[e]?.required)return;const t=!kt(P,e,a),n=!1!==P.defaults[e]?.[a]===t?null:t,s=P;R(`mine.${e}.${a}`),G(null),L(null),M(t=>{const i={...t.mine[e]};return null===n?delete i[a]:i[a]=n,{...t,mine:{...t.mine,[e]:i}}});try{const t=await p.updateMyNotificationPreferences(i._id.toString(),{[e]:{[a]:n}});M(t),O()}catch(e){M(s),L(m("notifications.prefsSaveFailed")),Ke(e,{component:"SettingsNotifications",action:"toggleMine"})}finally{R(null)}},[i?._id,P,p,O,m]),F=H(async(e,a)=>{if(!i?._id||!v)return;const t=P.defaults[e]??{},n="required"===a?!t.required:!1===t[a],s=P;R(`defaults.${e}.${a}`),G(null),L(null),M(i=>({...i,defaults:{...i.defaults,[e]:{...t,[a]:n}}}));try{const t=await p.updateNotificationPreferences(i._id.toString(),{[e]:{[a]:n}});M(e=>({...e,defaults:t})),O()}catch(e){M(s),L(m("notifications.prefsSaveFailed")),Ke(e,{component:"SettingsNotifications",action:"toggleDefault"})}finally{R(null)}},[i?._id,v,P,p,O,m]),Y=V(()=>{const e=new Map;for(const a of C){const t=a.category||"general";e.has(t)||e.set(t,[]),e.get(t).push(a)}return Array.from(e.entries())},[C]),Z=k||U,$=C.length>0;return a("div",{className:"space-y-4",children:[e("p",{className:"text-sm text-muted-foreground",children:m("notifications.manageDescription")}),N&&s&&a(t,{children:[l&&"denied"!==r&&e(Ne,{variant:"error",message:l}),"denied"===r&&e("div",{className:"border border-warning/30 bg-warning/10 rounded-lg p-4",children:a("div",{className:"flex items-start gap-3",children:[e(n,{className:"h-5 w-5 text-warning shrink-0 mt-0.5"}),a("div",{children:[e("h4",{className:"text-sm font-medium text-warning",children:m("notifications.blocked")}),e("p",{className:"text-xs text-warning mt-1",children:m("notifications.blockedDescription")}),e("ol",{className:"text-xs text-warning mt-2 space-y-1 list-decimal list-inside",children:Array.from({length:T},(a,t)=>e("li",{children:m(`notifications.unblock.${y}.step${t+1}`)},t))})]})]})}),"denied"!==r&&a("div",{className:"border rounded-lg p-4",children:[a("div",{className:"flex items-start justify-between gap-4",children:[a("div",{className:"flex items-start gap-3",children:[e("div",{className:"mt-0.5 p-2 rounded-lg "+(c?"bg-success/15":"bg-muted"),children:c?e(g,{className:"h-4 w-4 text-success"}):e(f,{className:"h-4 w-4 text-muted-foreground/70"})}),a("div",{children:[e("h4",{className:"text-sm font-medium text-foreground",children:m("notifications.pushTitle")}),e("p",{className:"text-xs text-muted-foreground mt-0.5",children:m("notifications.pushDescription",{subscribed:String(c)})})]})]}),e(ne,{variant:c?"outline":"default",size:"sm",className:"shrink-0",onClick:c?u:d,disabled:o,progress:o,children:m("notifications.toggleAction",{loading:String(o),subscribed:String(c)})})]}),c&&e("div",{className:"mt-3 pt-3 border-t border-border/60 text-xs text-muted-foreground",children:m("notifications.deviceNote")})]})]}),Z&&e("div",{className:"text-center text-sm text-muted-foreground/70 py-4",children:m("notifications.loadingPrefs")}),!Z&&$&&(A||S)&&a(t,{children:[_&&e(Ne,{variant:"success",message:_}),B&&e(Ne,{variant:"error",message:B}),e(Ut,{title:m("notifications.yourTitle"),description:m("notifications.yourDescription"),grouped:Y,showEmail:A,showPush:S,renderCell:(a,t)=>{const i=Boolean(P.defaults[a.slug]?.required);return e(yt,{checked:kt(P,a.slug,t),onCheckedChange:()=>W(a.slug,t),disabled:i||I===`mine.${a.slug}.${t}`,"aria-label":`${a.name}: ${t}`})},renderNote:t=>P.defaults[t.slug]?.required?a("span",{className:"inline-flex items-center gap-1 text-xs text-muted-foreground",children:[e(h,{className:"h-3 w-3","aria-hidden":"true"}),m("notifications.requiredHint")]}):null}),v&&e(Ut,{title:m("notifications.defaultsTitle"),description:m("notifications.defaultsDescription"),grouped:Y,showEmail:A,showPush:S,extraColumn:{header:m("notifications.requiredLabel"),render:a=>e(yt,{checked:Boolean(P.defaults[a.slug]?.required),onCheckedChange:()=>F(a.slug,"required"),disabled:I===`defaults.${a.slug}.required`,"aria-label":`${a.name}: ${m("notifications.requiredLabel")}`})},renderCell:(a,t)=>e(yt,{checked:!1!==P.defaults[a.slug]?.[t],onCheckedChange:()=>F(a.slug,t),disabled:I===`defaults.${a.slug}.${t}`,"aria-label":`${a.name}: ${t}`})})]})]})};function Ut({title:t,description:i,grouped:n,showEmail:s,showPush:r,renderCell:c,renderNote:o,extraColumn:l}){return a("section",{className:"space-y-2",children:[a("div",{children:[e("h3",{className:"text-sm font-medium text-foreground",children:t}),e("p",{className:"text-xs text-muted-foreground mt-0.5",children:i})]}),n.map(([t,i])=>a("div",{className:"border rounded-lg overflow-hidden",children:[e("div",{className:"bg-muted/50 px-4 py-2.5 border-b",children:e("h4",{className:"text-sm font-medium text-foreground capitalize",children:t})}),a("div",{className:"divide-y",children:[a("div",{className:"flex items-center px-4 py-2 bg-muted/30",children:[e("div",{className:"flex-1"}),a("div",{className:"flex items-center gap-6",children:[s&&e("div",{className:"w-12 flex justify-center",children:e(b,{className:"h-3.5 w-3.5 text-muted-foreground/70","aria-hidden":"true"})}),r&&e("div",{className:"w-12 flex justify-center",children:e(x,{className:"h-3.5 w-3.5 text-muted-foreground/70","aria-hidden":"true"})}),l&&e("div",{className:"w-16 text-center text-xs text-muted-foreground",children:l.header})]})]}),i.map(t=>a("div",{className:"flex items-center px-4 py-3",children:[a("div",{className:"flex-1 min-w-0",children:[e("div",{className:"text-sm font-medium text-foreground",children:t.name}),t.description&&e("div",{className:"text-xs text-muted-foreground mt-0.5",children:t.description}),o?.(t)]}),a("div",{className:"flex items-center gap-6 shrink-0",children:[s&&e("div",{className:"w-12 flex justify-center",children:t.channels.email?c(t,"email"):e("span",{className:"text-xs text-muted-foreground/50",children:"-"})}),r&&e("div",{className:"w-12 flex justify-center",children:t.channels.push?c(t,"push"):e("span",{className:"text-xs text-muted-foreground/50",children:"-"})}),l&&e("div",{className:"w-16 flex justify-center",children:l.render(t)})]})]},t.slug))]})]},t))]})}const Dt=({workspace:t})=>{const{t:i}=q(),{isOwner:n}=oe(),{settings:s}=Pe(),{appPermissions:r}=sa(),{updateWorkspacePermissions:c}=Ee(),[o,l]=z(!1),d=Tt(),u=V(()=>s?.workspace?.roles??t.roles??[],[s?.workspace?.roles,t.roles]),m=V(()=>ra(s,r),[s,r]),p=V(()=>e=>ca(e,{workspace:t,settings:s,appPermissions:r},{applyRestrictions:!1}),[t,s,r]),[g,f]=z({});j(()=>{const e={};for(const a of u)e[a]=[...p(a)].filter(e=>!e.startsWith("workspace:"));f(e)},[p,u]);const h=V(()=>{const e=new Map;for(const a of m){const t=a.group??"";e.set(t,[...e.get(t)??[],a])}return[...e.entries()]},[m]);if(!t)return e(bt,{});if(0===m.length)return null;return a("div",{children:[d.message&&e(Ne,{variant:"success",title:i("settings.common.success"),message:d.message,className:"mb-4"}),!n&&e(ht,{descriptionKey:"permissions.ownerOnly"}),e("p",{className:"text-sm text-muted-foreground mb-4",children:i("permissions.description")}),e("div",{className:"overflow-x-auto",children:a("table",{className:"w-full text-sm",children:[e("thead",{children:a("tr",{className:"border-b",children:[e("th",{className:"text-start py-2 pe-4 font-medium text-muted-foreground min-w-[160px]"}),u.map(a=>e("th",{className:"text-center py-2 px-3 font-medium text-foreground capitalize min-w-[80px]",children:a},a))]})}),e("tbody",{children:h.map(([t,i])=>a(F.Fragment,{children:[h.length>1&&t&&e("tr",{children:e("td",{colSpan:u.length+1,className:"pt-4 pb-1 text-xs font-semibold uppercase tracking-wide text-muted-foreground",children:t})}),i.map(({key:t,label:i})=>a("tr",{className:"border-b border-border/40 hover:bg-muted/30",children:[a("td",{className:"py-2 pe-4 text-foreground",children:[e("div",{children:i}),i!==t&&e("div",{className:"font-mono text-xs opacity-60",children:t})]}),u.map(a=>{const s="admin"===a,r=s||(g[a]??[]).includes(t);return e("td",{className:"text-center py-2 px-3",children:e(yt,{checked:r,disabled:!n||s,onCheckedChange:()=>((e,a)=>{f(t=>{const i=t[e]??[],n=i.includes(a);return{...t,[e]:n?i.filter(e=>e!==a):[...i,a]}})})(a,t),className:"mx-auto","aria-label":`${i}: ${a}`})},a)})]},t))]},t||"_"))})]})}),n&&e("div",{className:"mt-6",children:e(ne,{onClick:async()=>{l(!0),d.clear();try{const e={};for(const a of u){const t=[...p(a)].filter(e=>e.startsWith("workspace:"));e[a]=[...t,...g[a]??[]]}await c(t._id,e),d.show(i("permissions.saveSuccess"))}catch(e){Ke(e,{component:"WorkspaceSettingsPermissions",action:"savePermissions",metadata:{workspaceId:t._id}})}finally{l(!1)}},disabled:o,progress:o,children:i(o?"permissions.saving":"permissions.save")})})]})},It=W.forwardRef(({className:a,...t},i)=>e(ut,{ref:i,className:ie("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...t}));It.displayName=ut.displayName;const Rt=W.forwardRef(({className:t,...i},n)=>a("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[e(ot,{className:"me-2 h-4 w-4 shrink-0 opacity-50"}),e(ut.Input,{ref:n,className:ie("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",t),...i})]}));Rt.displayName=ut.Input.displayName;const _t=W.forwardRef(({className:a,...t},i)=>e(ut.List,{ref:i,className:ie("max-h-[300px] overflow-y-auto overflow-x-hidden",a),...t}));_t.displayName=ut.List.displayName;const Gt=W.forwardRef((a,t)=>e(ut.Empty,{ref:t,className:"py-6 text-center text-sm",...a}));Gt.displayName=ut.Empty.displayName;const Bt=W.forwardRef(({className:a,...t},i)=>e(ut.Group,{ref:i,className:ie("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",a),...t}));Bt.displayName=ut.Group.displayName;W.forwardRef(({className:a,...t},i)=>e(ut.Separator,{ref:i,className:ie("-mx-1 h-px bg-border",a),...t})).displayName=ut.Separator.displayName;const Lt=W.forwardRef(({className:a,...t},i)=>e(ut.Item,{ref:i,className:ie("relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none aria-selected:bg-accent aria-selected:text-accent-foreground data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50",a),...t}));function Kt({options:t,value:i,onChange:n,placeholder:s,emptyLabel:r}){const{t:c}=q(),o=s??c("dropdowns.search"),l=r??c("dropdowns.chooseOption"),[d,u]=z(i??""),[m,p]=z(!1);j(()=>{void 0!==i&&u(i)},[i]);const g=t.find(e=>e.value===d);return a(oa,{open:m,onOpenChange:p,children:[e(la,{asChild:!0,children:a(ne,{variant:"outline",role:"combobox","aria-expanded":m,className:"h-10 sm:h-9 w-full justify-between rounded-md border-input bg-transparent px-3 py-1 text-base sm:text-sm font-normal shadow-sm hover:bg-transparent",children:[g?a("div",{className:"truncate",children:[String(g.label).trim(),g.icon&&e("span",{className:"ms-2 text-xs text-muted-foreground",children:g.icon})]}):e("span",{className:"text-muted-foreground",children:l}),e(v,{className:"ms-2 h-4 w-4 shrink-0 opacity-50"})]})}),e(da,{className:"p-0 overflow-hidden text-ellipsis",asChild:!0,children:a(It,{children:[e(Rt,{placeholder:o}),a(_t,{children:[e(Gt,{children:c("dropdowns.noResults")}),e(Bt,{children:t.map(t=>a(Lt,{className:ie("whitespace-nowrap text-start",{"text-success":d===t.value}),value:t.value,keywords:[t.label],onSelect:()=>{return e=t.value,u(e),n?.(e),void p(!1);var e},children:[d===t.value&&e(N,{className:ie("me-2 h-4 w-4 text-success",d===t.value?"opacity-100":"opacity-0")}),String(t.label).trim(),t.icon&&e("span",{className:"ms-2 text-xs text-muted-foreground",children:t.icon})]},t.value))})]})]})})]})}Lt.displayName=ut.Item.displayName;const Ot={USD:"$",EUR:"€",JPY:"¥",GBP:"£",AUD:"A$",CAD:"C$",CHF:"CHF",CNY:"¥",SEK:"kr",NZD:"NZ$",INR:"₹",RUB:"₽",KRW:"₩",BRL:"R$",ZAR:"R",HKD:"HK$",SGD:"S$",MXN:"Mex$",NOK:"kr",TRY:"₺",IDR:"Rp",PLN:"zł",THB:"฿",ILS:"₪",PHP:"₱",MYR:"RM",CZK:"Kč",HUF:"Ft",DKK:"kr",PKR:"₨",EGP:"£",NGN:"₦",BDT:"৳",UAH:"₴",KZT:"₸",VND:"₫",ARS:"$",BGN:"лв",COP:"COL$",HRK:"kn",ISK:"kr",KES:"KSh",LKR:"Rs",MAD:"د.م.",MNT:"₮",NPR:"रू",RSD:"дин.",SAR:"ر.س",TWD:"NT$",UYU:"$U",YER:"﷼",FJD:"FJ$",JMD:"J$",HTG:"G",BHD:"ب.د",KWD:"د.ك",OMR:"ر.ع.",BND:"B$",KPW:"₩",GHS:"₵",SYP:"ل.س",SLL:"Le",SSP:"£",AFN:"؋",MGA:"Ar",MDL:"lei",FOK:"kr",GMD:"D",LTL:"Lt",LVL:"Ls",HNL:"L",GEL:"₾",BMD:"$",AWG:"Afl",BTN:"Nu",GTQ:"Q",TZS:"TSh",BBD:"Bds$",NAD:"N$",BZD:"$",JEP:"£",WST:"T",PGK:"K",KGS:"лв",AZN:"₼",QAR:"ر.ق",XOF:"CFA",XPF:"CFP"},Wt={AF:"AFN",AX:"EUR",AL:"ALL",DZ:"DZD",AS:"USD",AD:"EUR",AO:"AOA",AI:"XCD",AQ:"USD",AG:"XCD",AR:"ARS",AM:"AMD",AW:"AWG",AU:"AUD",AT:"EUR",AZ:"AZN",BS:"BSD",BH:"BHD",BD:"BDT",BB:"BBD",BY:"BYN",BE:"EUR",BZ:"BZD",BJ:"XOF",BM:"BMD",BT:"BTN",BO:"BOB",BA:"BAM",BW:"BWP",BV:"NOK",BR:"BRL",IO:"USD",BN:"BND",BG:"BGN",BF:"XOF",BI:"BIF",KH:"KHR",CM:"XAF",CA:"CAD",CV:"CVE",KY:"KYD",CF:"XAF",TD:"XAF",CL:"CLP",CN:"CNY",CX:"AUD",CC:"AUD",CO:"COP",KM:"KMF",CG:"XAF",CD:"CDF",CK:"NZD",CR:"CRC",CI:"XOF",HR:"HRK",CU:"CUP",CY:"EUR",CZ:"CZK",DK:"DKK",DJ:"DJF",DM:"XCD",DO:"DOP",EC:"USD",EG:"EGP",SV:"USD",GQ:"XAF",ER:"ERN",EE:"EUR",ET:"ETB",FK:"FKP",FO:"DKK",FJ:"FJD",FI:"EUR",FR:"EUR",GF:"EUR",PF:"XPF",TF:"EUR",GA:"XAF",GM:"GMD",GE:"GEL",DE:"EUR",GH:"GHS",GI:"GIP",GR:"EUR",GL:"DKK",GD:"XCD",GP:"EUR",GU:"USD",GT:"GTQ",GG:"GBP",GN:"GNF",GW:"XOF",GY:"GYD",HT:"HTG",HM:"AUD",VA:"EUR",HN:"HNL",HK:"HKD",HU:"HUF",IS:"ISK",IN:"INR",ID:"IDR",IR:"IRR",IQ:"IQD",IE:"EUR",IM:"GBP",IL:"ILS",IT:"EUR",JM:"JMD",JP:"JPY",JE:"GBP",JO:"JOD",KZ:"KZT",KE:"KES",KI:"AUD",KP:"KPW",KR:"KRW",KW:"KWD",KG:"KGS",LA:"LAK",LV:"EUR",LB:"LBP",LS:"LSL",LR:"LRD",LY:"LYD",LI:"CHF",LT:"EUR",LU:"EUR",MO:"MOP",MK:"MKD",MG:"MGA",MW:"MWK",MY:"MYR",MV:"MVR",ML:"XOF",MT:"EUR",MH:"USD",MQ:"EUR",MR:"MRU",MU:"MUR",YT:"EUR",MX:"MXN",FM:"USD",MD:"MDL",MC:"EUR",MN:"MNT",ME:"EUR",MS:"XCD",MA:"MAD",MZ:"MZN",MM:"MMK",NA:"NAD",NR:"AUD",NP:"NPR",NL:"EUR",AN:"ANG",NC:"XPF",NZ:"NZD",NI:"NIO",NE:"XOF",NG:"NGN",NU:"NZD",NF:"AUD",MP:"USD",NO:"NOK",OM:"OMR",PK:"PKR",PW:"USD",PS:"ILS",PA:"PAB",PG:"PGK",PY:"PYG",PE:"PEN",PH:"PHP",PN:"NZD",PL:"PLN",PT:"EUR",PR:"USD",QA:"QAR",RE:"EUR",RO:"RON",RU:"RUB",RW:"RWF",SH:"SHP",KN:"XCD",LC:"XCD",PM:"EUR",VC:"XCD",WS:"WST",SM:"EUR",ST:"STN",SA:"SAR",SN:"XOF",RS:"RSD",SC:"SCR",SL:"SLL",SG:"SGD",SK:"EUR",SI:"EUR",SB:"SBD",SO:"SOS",ZA:"ZAR",GS:"GBP",ES:"EUR",LK:"LKR",SD:"SDG",SR:"SRD",SJ:"NOK",SZ:"SZL",SE:"SEK",CH:"CHF",SY:"SYP",TW:"TWD",TJ:"TJS",TZ:"TZS",TH:"THB"},Ft=[{name:"Afghanistan",code:"AF"},{name:"land Islands",code:"AX"},{name:"Albania",code:"AL"},{name:"Algeria",code:"DZ"},{name:"American Samoa",code:"AS"},{name:"AndorrA",code:"AD"},{name:"Angola",code:"AO"},{name:"Anguilla",code:"AI"},{name:"Antarctica",code:"AQ"},{name:"Antigua and Barbuda",code:"AG"},{name:"Argentina",code:"AR"},{name:"Armenia",code:"AM"},{name:"Aruba",code:"AW"},{name:"Australia",code:"AU"},{name:"Austria",code:"AT"},{name:"Azerbaijan",code:"AZ"},{name:"Bahamas",code:"BS"},{name:"Bahrain",code:"BH"},{name:"Bangladesh",code:"BD"},{name:"Barbados",code:"BB"},{name:"Belarus",code:"BY"},{name:"Belgium",code:"BE"},{name:"Belize",code:"BZ"},{name:"Benin",code:"BJ"},{name:"Bermuda",code:"BM"},{name:"Bhutan",code:"BT"},{name:"Bolivia",code:"BO"},{name:"Bosnia and Herzegovina",code:"BA"},{name:"Botswana",code:"BW"},{name:"Bouvet Island",code:"BV"},{name:"Brazil",code:"BR"},{name:"British Indian Ocean Territory",code:"IO"},{name:"Brunei Darussalam",code:"BN"},{name:"Bulgaria",code:"BG"},{name:"Burkina Faso",code:"BF"},{name:"Burundi",code:"BI"},{name:"Cambodia",code:"KH"},{name:"Cameroon",code:"CM"},{name:"Canada",code:"CA"},{name:"Cape Verde",code:"CV"},{name:"Cayman Islands",code:"KY"},{name:"Central African Republic",code:"CF"},{name:"Chad",code:"TD"},{name:"Chile",code:"CL"},{name:"China",code:"CN"},{name:"Christmas Island",code:"CX"},{name:"Cocos (Keeling) Islands",code:"CC"},{name:"Colombia",code:"CO"},{name:"Comoros",code:"KM"},{name:"Congo",code:"CG"},{name:"Congo, The Democratic Republic of the",code:"CD"},{name:"Cook Islands",code:"CK"},{name:"Costa Rica",code:"CR"},{name:"Cote D Ivoire",code:"CI"},{name:"Croatia",code:"HR"},{name:"Cuba",code:"CU"},{name:"Cyprus",code:"CY"},{name:"Czech Republic",code:"CZ"},{name:"Denmark",code:"DK"},{name:"Djibouti",code:"DJ"},{name:"Dominica",code:"DM"},{name:"Dominican Republic",code:"DO"},{name:"Ecuador",code:"EC"},{name:"Egypt",code:"EG"},{name:"El Salvador",code:"SV"},{name:"Equatorial Guinea",code:"GQ"},{name:"Eritrea",code:"ER"},{name:"Estonia",code:"EE"},{name:"Ethiopia",code:"ET"},{name:"Falkland Islands (Malvinas)",code:"FK"},{name:"Faroe Islands",code:"FO"},{name:"Fiji",code:"FJ"},{name:"Finland",code:"FI"},{name:"France",code:"FR"},{name:"French Guiana",code:"GF"},{name:"French Polynesia",code:"PF"},{name:"French Southern Territories",code:"TF"},{name:"Gabon",code:"GA"},{name:"Gambia",code:"GM"},{name:"Georgia",code:"GE"},{name:"Germany",code:"DE"},{name:"Ghana",code:"GH"},{name:"Gibraltar",code:"GI"},{name:"Greece",code:"GR"},{name:"Greenland",code:"GL"},{name:"Grenada",code:"GD"},{name:"Guadeloupe",code:"GP"},{name:"Guam",code:"GU"},{name:"Guatemala",code:"GT"},{name:"Guernsey",code:"GG"},{name:"Guinea",code:"GN"},{name:"Guinea-Bissau",code:"GW"},{name:"Guyana",code:"GY"},{name:"Haiti",code:"HT"},{name:"Heard Island and Mcdonald Islands",code:"HM"},{name:"Holy See (Vatican City State)",code:"VA"},{name:"Honduras",code:"HN"},{name:"Hong Kong",code:"HK"},{name:"Hungary",code:"HU"},{name:"Iceland",code:"IS"},{name:"India",code:"IN"},{name:"Indonesia",code:"ID"},{name:"Iran, Islamic Republic Of",code:"IR"},{name:"Iraq",code:"IQ"},{name:"Ireland",code:"IE"},{name:"Isle of Man",code:"IM"},{name:"Israel",code:"IL"},{name:"Italy",code:"IT"},{name:"Jamaica",code:"JM"},{name:"Japan",code:"JP"},{name:"Jersey",code:"JE"},{name:"Jordan",code:"JO"},{name:"Kazakhstan",code:"KZ"},{name:"Kenya",code:"KE"},{name:"Kiribati",code:"KI"},{name:'Korea, Democratic People"S Republic of',code:"KP"},{name:"Korea, Republic of",code:"KR"},{name:"Kuwait",code:"KW"},{name:"Kyrgyzstan",code:"KG"},{name:'Lao People"S Democratic Republic',code:"LA"},{name:"Latvia",code:"LV"},{name:"Lebanon",code:"LB"},{name:"Lesotho",code:"LS"},{name:"Liberia",code:"LR"},{name:"Libyan Arab Jamahiriya",code:"LY"},{name:"Liechtenstein",code:"LI"},{name:"Lithuania",code:"LT"},{name:"Luxembourg",code:"LU"},{name:"Macao",code:"MO"},{name:"Macedonia, The Former Yugoslav Republic of",code:"MK"},{name:"Madagascar",code:"MG"},{name:"Malawi",code:"MW"},{name:"Malaysia",code:"MY"},{name:"Maldives",code:"MV"},{name:"Mali",code:"ML"},{name:"Malta",code:"MT"},{name:"Marshall Islands",code:"MH"},{name:"Martinique",code:"MQ"},{name:"Mauritania",code:"MR"},{name:"Mauritius",code:"MU"},{name:"Mayotte",code:"YT"},{name:"Mexico",code:"MX"},{name:"Micronesia, Federated States of",code:"FM"},{name:"Moldova, Republic of",code:"MD"},{name:"Monaco",code:"MC"},{name:"Mongolia",code:"MN"},{name:"Montenegro",code:"ME"},{name:"Montserrat",code:"MS"},{name:"Morocco",code:"MA"},{name:"Mozambique",code:"MZ"},{name:"Myanmar",code:"MM"},{name:"Namibia",code:"NA"},{name:"Nauru",code:"NR"},{name:"Nepal",code:"NP"},{name:"Netherlands",code:"NL"},{name:"Netherlands Antilles",code:"AN"},{name:"New Caledonia",code:"NC"},{name:"New Zealand",code:"NZ"},{name:"Nicaragua",code:"NI"},{name:"Niger",code:"NE"},{name:"Nigeria",code:"NG"},{name:"Niue",code:"NU"},{name:"Norfolk Island",code:"NF"},{name:"Northern Mariana Islands",code:"MP"},{name:"Norway",code:"NO"},{name:"Oman",code:"OM"},{name:"Pakistan",code:"PK"},{name:"Palau",code:"PW"},{name:"Palestinian Territory, Occupied",code:"PS"},{name:"Panama",code:"PA"},{name:"Papua New Guinea",code:"PG"},{name:"Paraguay",code:"PY"},{name:"Peru",code:"PE"},{name:"Philippines",code:"PH"},{name:"Pitcairn",code:"PN"},{name:"Poland",code:"PL"},{name:"Portugal",code:"PT"},{name:"Puerto Rico",code:"PR"},{name:"Qatar",code:"QA"},{name:"Reunion",code:"RE"},{name:"Romania",code:"RO"},{name:"Russian Federation",code:"RU"},{name:"RWANDA",code:"RW"},{name:"Saint Helena",code:"SH"},{name:"Saint Kitts and Nevis",code:"KN"},{name:"Saint Lucia",code:"LC"},{name:"Saint Pierre and Miquelon",code:"PM"},{name:"Saint Vincent and the Grenadines",code:"VC"},{name:"Samoa",code:"WS"},{name:"San Marino",code:"SM"},{name:"Sao Tome and Principe",code:"ST"},{name:"Saudi Arabia",code:"SA"},{name:"Senegal",code:"SN"},{name:"Serbia",code:"RS"},{name:"Seychelles",code:"SC"},{name:"Sierra Leone",code:"SL"},{name:"Singapore",code:"SG"},{name:"Slovakia",code:"SK"},{name:"Slovenia",code:"SI"},{name:"Solomon Islands",code:"SB"},{name:"Somalia",code:"SO"},{name:"South Africa",code:"ZA"},{name:"South Georgia and the South Sandwich Islands",code:"GS"},{name:"Spain",code:"ES"},{name:"Sri Lanka",code:"LK"},{name:"Sudan",code:"SD"},{name:"Suriname",code:"SR"},{name:"Svalbard and Jan Mayen",code:"SJ"},{name:"Swaziland",code:"SZ"},{name:"Sweden",code:"SE"},{name:"Switzerland",code:"CH"},{name:"Syrian Arab Republic",code:"SY"},{name:"Taiwan, Province of China",code:"TW"},{name:"Tajikistan",code:"TJ"},{name:"Tanzania, United Republic of",code:"TZ"},{name:"Thailand",code:"TH"},{name:"Timor-Leste",code:"TL"},{name:"Togo",code:"TG"},{name:"Tokelau",code:"TK"},{name:"Tonga",code:"TO"},{name:"Trinidad and Tobago",code:"TT"},{name:"Tunisia",code:"TN"},{name:"Turkey",code:"TR"},{name:"Turkmenistan",code:"TM"},{name:"Turks and Caicos Islands",code:"TC"},{name:"Tuvalu",code:"TV"},{name:"Uganda",code:"UG"},{name:"Ukraine",code:"UA"},{name:"United Arab Emirates",code:"AE"},{name:"United Kingdom",code:"GB"},{name:"United States",code:"US"},{name:"United States Minor Outlying Islands",code:"UM"},{name:"Uruguay",code:"UY"},{name:"Uzbekistan",code:"UZ"},{name:"Vanuatu",code:"VU"},{name:"Venezuela",code:"VE"},{name:"Viet Nam",code:"VN"},{name:"Virgin Islands, British",code:"VG"},{name:"Virgin Islands, U.S.",code:"VI"},{name:"Wallis and Futuna",code:"WF"},{name:"Western Sahara",code:"EH"},{name:"Yemen",code:"YE"},{name:"Zambia",code:"ZM"},{name:"Zimbabwe",code:"ZW"}].map(e=>{const a=Wt[e.code]||"USD",t=Ot[a]||"";return{value:e.code,flag:(i=e.code,i.toUpperCase().replace(/./g,e=>String.fromCodePoint(127397+e.charCodeAt(0)))),text:e.name,currencyCode:a,currencyIcon:t};var i});function Vt({value:a,onChange:t}){const{t:i}=q(),n=Ft.map(e=>({value:e.value,label:e.text,icon:e.flag}));return e(Kt,{options:n,value:a,onChange:t,placeholder:i("dropdowns.searchCountry"),emptyLabel:i("dropdowns.chooseCountry")})}const zt=Ft.map(e=>({value:e.currencyCode,text:e.currencyCode,icon:e.currencyIcon??null})),jt=Array.from(new Set(zt.map(e=>e.value))).map(e=>zt.find(a=>a.value===e)).filter(e=>void 0!==e);function Ht({value:a,onChange:t}){const{t:i}=q(),n=jt.map(e=>({value:e.value,label:e.text,icon:e.icon??void 0}));return e(Kt,{options:n,value:a,onChange:t,placeholder:i("dropdowns.searchCurrency"),emptyLabel:i("dropdowns.chooseCurrency")})}let Jt=[{code:"en",label:"English",flag:"🇬🇧"},{code:"en-GB",label:"English (United Kingdom)",flag:"🇬🇧"},{code:"en-US",label:"English (United States)",flag:"🇺🇸"},{code:"en-AU",label:"English (Australia)",flag:"🇦🇺"},{code:"en-CA",label:"English (Canada)",flag:"🇨🇦"},{code:"en-NZ",label:"English (New Zealand)",flag:"🇳🇿"},{code:"es",label:"Spanish",flag:"🇪🇸"},{code:"es-ES",label:"Spanish (Spain)",flag:"🇪🇸"},{code:"es-MX",label:"Spanish (Mexico)",flag:"🇲🇽"},{code:"fr",label:"French",flag:"🇫🇷"},{code:"fr-FR",label:"French (France)",flag:"🇫🇷"},{code:"de",label:"German",flag:"🇩🇪"},{code:"de-DE",label:"German (Germany)",flag:"🇩🇪"},{code:"it",label:"Italian",flag:"🇮🇹"},{code:"it-IT",label:"Italian (Italy)",flag:"🇮🇹"},{code:"pt",label:"Portuguese",flag:"🇵🇹"},{code:"pt-PT",label:"Portuguese (Portugal)",flag:"🇵🇹"},{code:"pt-BR",label:"Portuguese (Brazil)",flag:"🇧🇷"},{code:"ru",label:"Russian",flag:"🇷🇺"},{code:"ru-RU",label:"Russian (Russia)",flag:"🇷🇺"},{code:"zh",label:"Chinese",flag:"🇨🇳"},{code:"zh-CN",label:"Chinese (Simplified)",flag:"🇨🇳"},{code:"zh-TW",label:"Chinese (Traditional)",flag:"🇹🇼"},{code:"ja",label:"Japanese",flag:"🇯🇵"},{code:"ja-JP",label:"Japanese (Japan)",flag:"🇯🇵"},{code:"ko",label:"Korean",flag:"🇰🇷"},{code:"ko-KR",label:"Korean (South Korea)",flag:"🇰🇷"},{code:"ar",label:"Arabic",flag:"🇸🇦"},{code:"ar-SA",label:"Arabic (Saudi Arabia)",flag:"🇸🇦"},{code:"hi",label:"Hindi",flag:"🇮🇳"},{code:"hi-IN",label:"Hindi (India)",flag:"🇮🇳"},{code:"bn",label:"Bengali",flag:"🇮🇳"},{code:"bn-IN",label:"Bengali (India)",flag:"🇮🇳"},{code:"gu",label:"Gujarati",flag:"🇮🇳"},{code:"gu-IN",label:"Gujarati (India)",flag:"🇮🇳"},{code:"ta",label:"Tamil",flag:"🇮🇳"},{code:"ta-IN",label:"Tamil (India)",flag:"🇮🇳"},{code:"te",label:"Telugu",flag:"🇮🇳"},{code:"te-IN",label:"Telugu (India)",flag:"🇮🇳"},{code:"ml",label:"Malayalam",flag:"🇮🇳"},{code:"ml-IN",label:"Malayalam (India)",flag:"🇮🇳"},{code:"kn",label:"Kannada",flag:"🇮🇳"},{code:"kn-IN",label:"Kannada (India)",flag:"🇮🇳"},{code:"mr",label:"Marathi",flag:"🇮🇳"},{code:"mr-IN",label:"Marathi (India)",flag:"🇮🇳"},{code:"pa",label:"Punjabi",flag:"🇮🇳"},{code:"pa-IN",label:"Punjabi (India)",flag:"🇮🇳"},{code:"ur",label:"Urdu",flag:"🇮🇳"},{code:"ur-IN",label:"Urdu (India)",flag:"🇮🇳"},{code:"or",label:"Odia",flag:"🇮🇳"},{code:"or-IN",label:"Odia (India)",flag:"🇮🇳"},{code:"as",label:"Assamese",flag:"🇮🇳"},{code:"as-IN",label:"Assamese (India)",flag:"🇮🇳"},{code:"zh-HK",label:"Chinese (Hong Kong)",flag:"🇭🇰"},{code:"nl",label:"Dutch",flag:"🇳🇱"},{code:"nl-NL",label:"Dutch (Netherlands)",flag:"🇳🇱"},{code:"pl",label:"Polish",flag:"🇵🇱"},{code:"pl-PL",label:"Polish (Poland)",flag:"🇵🇱"},{code:"sv",label:"Swedish",flag:"🇸🇪"},{code:"sv-SE",label:"Swedish (Sweden)",flag:"🇸🇪"},{code:"da",label:"Danish",flag:"🇩🇰"},{code:"da-DK",label:"Danish (Denmark)",flag:"🇩🇰"},{code:"no",label:"Norwegian",flag:"🇳🇴"},{code:"no-NO",label:"Norwegian (Norway)",flag:"🇳🇴"},{code:"fi",label:"Finnish",flag:"🇫🇮"},{code:"fi-FI",label:"Finnish (Finland)",flag:"🇫🇮"},{code:"tr",label:"Turkish",flag:"🇹🇷"},{code:"tr-TR",label:"Turkish (Turkey)",flag:"🇹🇷"},{code:"cs",label:"Czech",flag:"🇨🇿"},{code:"cs-CZ",label:"Czech (Czech Republic)",flag:"🇨🇿"},{code:"sk",label:"Slovak",flag:"🇸🇰"},{code:"sk-SK",label:"Slovak (Slovakia)",flag:"🇸🇰"},{code:"hu",label:"Hungarian",flag:"🇭🇺"},{code:"hu-HU",label:"Hungarian (Hungary)",flag:"🇭🇺"},{code:"ro",label:"Romanian",flag:"🇷🇴"},{code:"ro-RO",label:"Romanian (Romania)",flag:"🇷🇴"},{code:"el",label:"Greek",flag:"🇬🇷"},{code:"el-GR",label:"Greek (Greece)",flag:"🇬🇷"},{code:"th",label:"Thai",flag:"🇹🇭"},{code:"th-TH",label:"Thai (Thailand)",flag:"🇹🇭"},{code:"id",label:"Indonesian",flag:"🇮🇩"},{code:"id-ID",label:"Indonesian (Indonesia)",flag:"🇮🇩"},{code:"ms",label:"Malay",flag:"🇲🇾"},{code:"ms-MY",label:"Malay (Malaysia)",flag:"🇲🇾"},{code:"vi",label:"Vietnamese",flag:"🇻🇳"},{code:"vi-VN",label:"Vietnamese (Vietnam)",flag:"🇻🇳"},{code:"he",label:"Hebrew",flag:"🇮🇱"},{code:"he-IL",label:"Hebrew (Israel)",flag:"🇮🇱"}];Jt=Jt.filter((e,a,t)=>a===t.findIndex(a=>a.code===e.code&&a.label===e.label)),Jt.sort((e,a)=>e.label<a.label?-1:e.label>a.label?1:0);const Yt=Jt.filter(e=>function(e){try{const a=new Intl.DateTimeFormat(e);return a.resolvedOptions().locale===e||a.resolvedOptions().locale.startsWith(e)}catch{return!1}}(e.code)).filter((e,a,t)=>a===t.findIndex(a=>a.code===e.code&&a.label===e.label)).map(e=>({value:e.code,label:e.label,flag:e.flag}));function Zt({value:a,onChange:t}){const{t:i}=q(),n=Yt.map(e=>({value:e.value,label:e.label,icon:e.flag}));return e(Kt,{options:n,value:a,onChange:t,placeholder:i("dropdowns.searchLanguage"),emptyLabel:i("dropdowns.chooseLanguage")})}const $t=[{value:"Dateline Standard Time",abbr:"DST",offset:-12,isdst:!1,text:"(UTC-12:00) International Date Line West",utc:["Etc/GMT+12"]},{value:"UTC-11",abbr:"U",offset:-11,isdst:!1,text:"(UTC-11:00) Coordinated Universal Time-11",utc:["Etc/GMT+11","Pacific/Midway","Pacific/Niue","Pacific/Pago_Pago"]},{value:"Hawaiian Standard Time",abbr:"HST",offset:-10,isdst:!1,text:"(UTC-10:00) Hawaii",utc:["Etc/GMT+10","Pacific/Honolulu","Pacific/Johnston","Pacific/Rarotonga","Pacific/Tahiti"]},{value:"Alaskan Standard Time",abbr:"AKDT",offset:-8,isdst:!0,text:"(UTC-09:00) Alaska",utc:["America/Anchorage","America/Juneau","America/Nome","America/Sitka","America/Yakutat"]},{value:"Pacific Standard Time (Mexico)",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-08:00) Baja California",utc:["America/Santa_Isabel"]},{value:"Pacific Daylight Time",abbr:"PDT",offset:-7,isdst:!0,text:"(UTC-07:00) Pacific Daylight Time (US & Canada)",utc:["America/Los_Angeles","America/Tijuana","America/Vancouver"]},{value:"Pacific Standard Time",abbr:"PST",offset:-8,isdst:!1,text:"(UTC-08:00) Pacific Standard Time (US & Canada)",utc:["America/Los_Angeles","America/Tijuana","America/Vancouver","PST8PDT"]},{value:"US Mountain Standard Time",abbr:"UMST",offset:-7,isdst:!1,text:"(UTC-07:00) Arizona",utc:["America/Creston","America/Dawson","America/Dawson_Creek","America/Hermosillo","America/Phoenix","America/Whitehorse","Etc/GMT+7"]},{value:"Mountain Standard Time (Mexico)",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Chihuahua, La Paz, Mazatlan",utc:["America/Chihuahua","America/Mazatlan"]},{value:"Mountain Standard Time",abbr:"MDT",offset:-6,isdst:!0,text:"(UTC-07:00) Mountain Time (US & Canada)",utc:["America/Boise","America/Cambridge_Bay","America/Denver","America/Edmonton","America/Inuvik","America/Ojinaga","America/Yellowknife","MST7MDT"]},{value:"Central America Standard Time",abbr:"CAST",offset:-6,isdst:!1,text:"(UTC-06:00) Central America",utc:["America/Belize","America/Costa_Rica","America/El_Salvador","America/Guatemala","America/Managua","America/Tegucigalpa","Etc/GMT+6","Pacific/Galapagos"]},{value:"Central Standard Time",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Central Time (US & Canada)",utc:["America/Chicago","America/Indiana/Knox","America/Indiana/Tell_City","America/Matamoros","America/Menominee","America/North_Dakota/Beulah","America/North_Dakota/Center","America/North_Dakota/New_Salem","America/Rainy_River","America/Rankin_Inlet","America/Resolute","America/Winnipeg","CST6CDT"]},{value:"Central Standard Time (Mexico)",abbr:"CDT",offset:-5,isdst:!0,text:"(UTC-06:00) Guadalajara, Mexico City, Monterrey",utc:["America/Bahia_Banderas","America/Cancun","America/Merida","America/Mexico_City","America/Monterrey"]},{value:"Canada Central Standard Time",abbr:"CCST",offset:-6,isdst:!1,text:"(UTC-06:00) Saskatchewan",utc:["America/Regina","America/Swift_Current"]},{value:"SA Pacific Standard Time",abbr:"SPST",offset:-5,isdst:!1,text:"(UTC-05:00) Bogota, Lima, Quito",utc:["America/Bogota","America/Cayman","America/Coral_Harbour","America/Eirunepe","America/Guayaquil","America/Jamaica","America/Lima","America/Panama","America/Rio_Branco","Etc/GMT+5"]},{value:"Eastern Standard Time",abbr:"EST",offset:-5,isdst:!1,text:"(UTC-05:00) Eastern Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto"]},{value:"Eastern Daylight Time",abbr:"EDT",offset:-4,isdst:!0,text:"(UTC-04:00) Eastern Daylight Time (US & Canada)",utc:["America/Detroit","America/Havana","America/Indiana/Petersburg","America/Indiana/Vincennes","America/Indiana/Winamac","America/Iqaluit","America/Kentucky/Monticello","America/Louisville","America/Montreal","America/Nassau","America/New_York","America/Nipigon","America/Pangnirtung","America/Port-au-Prince","America/Thunder_Bay","America/Toronto"]},{value:"US Eastern Standard Time",abbr:"UEDT",offset:-5,isdst:!1,text:"(UTC-05:00) Indiana (East)",utc:["America/Indiana/Marengo","America/Indiana/Vevay","America/Indianapolis"]},{value:"Venezuela Standard Time",abbr:"VST",offset:-4.5,isdst:!1,text:"(UTC-04:30) Caracas",utc:["America/Caracas"]},{value:"Paraguay Standard Time",abbr:"PYT",offset:-4,isdst:!1,text:"(UTC-04:00) Asuncion",utc:["America/Asuncion"]},{value:"Atlantic Standard Time",abbr:"ADT",offset:-3,isdst:!0,text:"(UTC-04:00) Atlantic Time (Canada)",utc:["America/Glace_Bay","America/Goose_Bay","America/Halifax","America/Moncton","America/Thule","Atlantic/Bermuda"]},{value:"Central Brazilian Standard Time",abbr:"CBST",offset:-4,isdst:!1,text:"(UTC-04:00) Cuiaba",utc:["America/Campo_Grande","America/Cuiaba"]},{value:"SA Western Standard Time",abbr:"SWST",offset:-4,isdst:!1,text:"(UTC-04:00) Georgetown, La Paz, Manaus, San Juan",utc:["America/Anguilla","America/Antigua","America/Aruba","America/Barbados","America/Blanc-Sablon","America/Boa_Vista","America/Curacao","America/Dominica","America/Grand_Turk","America/Grenada","America/Guadeloupe","America/Guyana","America/Kralendijk","America/La_Paz","America/Lower_Princes","America/Manaus","America/Marigot","America/Martinique","America/Montserrat","America/Port_of_Spain","America/Porto_Velho","America/Puerto_Rico","America/Santo_Domingo","America/St_Barthelemy","America/St_Kitts","America/St_Lucia","America/St_Thomas","America/St_Vincent","America/Tortola","Etc/GMT+4"]},{value:"Pacific SA Standard Time",abbr:"PSST",offset:-4,isdst:!1,text:"(UTC-04:00) Santiago",utc:["America/Santiago","Antarctica/Palmer"]},{value:"Newfoundland Standard Time",abbr:"NDT",offset:-2.5,isdst:!0,text:"(UTC-03:30) Newfoundland",utc:["America/St_Johns"]},{value:"E. South America Standard Time",abbr:"ESAST",offset:-3,isdst:!1,text:"(UTC-03:00) Brasilia",utc:["America/Sao_Paulo"]},{value:"Argentina Standard Time",abbr:"AST",offset:-3,isdst:!1,text:"(UTC-03:00) Buenos Aires",utc:["America/Argentina/Buenos_Aires","America/Argentina/Catamarca","America/Argentina/Cordoba","America/Argentina/Jujuy","America/Argentina/La_Rioja","America/Argentina/Mendoza","America/Argentina/Rio_Gallegos","America/Argentina/Salta","America/Argentina/San_Juan","America/Argentina/San_Luis","America/Argentina/Tucuman","America/Argentina/Ushuaia","America/Buenos_Aires","America/Catamarca","America/Cordoba","America/Jujuy","America/Mendoza"]},{value:"SA Eastern Standard Time",abbr:"SEST",offset:-3,isdst:!1,text:"(UTC-03:00) Cayenne, Fortaleza",utc:["America/Araguaina","America/Belem","America/Cayenne","America/Fortaleza","America/Maceio","America/Paramaribo","America/Recife","America/Santarem","Antarctica/Rothera","Atlantic/Stanley","Etc/GMT+3"]},{value:"Greenland Standard Time",abbr:"GDT",offset:-3,isdst:!0,text:"(UTC-03:00) Greenland",utc:["America/Godthab"]},{value:"Montevideo Standard Time",abbr:"MST",offset:-3,isdst:!1,text:"(UTC-03:00) Montevideo",utc:["America/Montevideo"]},{value:"Bahia Standard Time",abbr:"BST",offset:-3,isdst:!1,text:"(UTC-03:00) Salvador",utc:["America/Bahia"]},{value:"UTC-02",abbr:"U",offset:-2,isdst:!1,text:"(UTC-02:00) Coordinated Universal Time-02",utc:["America/Noronha","Atlantic/South_Georgia","Etc/GMT+2"]},{value:"Mid-Atlantic Standard Time",abbr:"MDT",offset:-1,isdst:!0,text:"(UTC-02:00) Mid-Atlantic - Old",utc:[]},{value:"Azores Standard Time",abbr:"ADT",offset:0,isdst:!0,text:"(UTC-01:00) Azores",utc:["America/Scoresbysund","Atlantic/Azores"]},{value:"Cape Verde Standard Time",abbr:"CVST",offset:-1,isdst:!1,text:"(UTC-01:00) Cape Verde Is.",utc:["Atlantic/Cape_Verde","Etc/GMT+1"]},{value:"Morocco Standard Time",abbr:"MDT",offset:1,isdst:!0,text:"(UTC) Casablanca",utc:["Africa/Casablanca","Africa/El_Aaiun"]},{value:"UTC",abbr:"UTC",offset:0,isdst:!1,text:"(UTC) Coordinated Universal Time",utc:["America/Danmarkshavn","Etc/GMT"]},{value:"GMT Standard Time",abbr:"GMT",offset:0,isdst:!1,text:"(UTC) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{value:"British Summer Time",abbr:"BST",offset:1,isdst:!0,text:"(UTC+01:00) Edinburgh, London",utc:["Europe/Isle_of_Man","Europe/Guernsey","Europe/Jersey","Europe/London"]},{value:"GMT Standard Time",abbr:"GDT",offset:1,isdst:!0,text:"(UTC) Dublin, Lisbon",utc:["Atlantic/Canary","Atlantic/Faeroe","Atlantic/Madeira","Europe/Dublin","Europe/Lisbon"]},{value:"Greenwich Standard Time",abbr:"GST",offset:0,isdst:!1,text:"(UTC) Monrovia, Reykjavik",utc:["Africa/Abidjan","Africa/Accra","Africa/Bamako","Africa/Banjul","Africa/Bissau","Africa/Conakry","Africa/Dakar","Africa/Freetown","Africa/Lome","Africa/Monrovia","Africa/Nouakchott","Africa/Ouagadougou","Africa/Sao_Tome","Atlantic/Reykjavik","Atlantic/St_Helena"]},{value:"W. Europe Standard Time",abbr:"WEDT",offset:2,isdst:!0,text:"(UTC+01:00) Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna",utc:["Arctic/Longyearbyen","Europe/Amsterdam","Europe/Andorra","Europe/Berlin","Europe/Busingen","Europe/Gibraltar","Europe/Luxembourg","Europe/Malta","Europe/Monaco","Europe/Oslo","Europe/Rome","Europe/San_Marino","Europe/Stockholm","Europe/Vaduz","Europe/Vatican","Europe/Vienna","Europe/Zurich"]},{value:"Central Europe Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Belgrade, Bratislava, Budapest, Ljubljana, Prague",utc:["Europe/Belgrade","Europe/Bratislava","Europe/Budapest","Europe/Ljubljana","Europe/Podgorica","Europe/Prague","Europe/Tirane"]},{value:"Romance Standard Time",abbr:"RDT",offset:2,isdst:!0,text:"(UTC+01:00) Brussels, Copenhagen, Madrid, Paris",utc:["Africa/Ceuta","Europe/Brussels","Europe/Copenhagen","Europe/Madrid","Europe/Paris"]},{value:"Central European Standard Time",abbr:"CEDT",offset:2,isdst:!0,text:"(UTC+01:00) Sarajevo, Skopje, Warsaw, Zagreb",utc:["Europe/Sarajevo","Europe/Skopje","Europe/Warsaw","Europe/Zagreb"]},{value:"W. Central Africa Standard Time",abbr:"WCAST",offset:1,isdst:!1,text:"(UTC+01:00) West Central Africa",utc:["Africa/Algiers","Africa/Bangui","Africa/Brazzaville","Africa/Douala","Africa/Kinshasa","Africa/Lagos","Africa/Libreville","Africa/Luanda","Africa/Malabo","Africa/Ndjamena","Africa/Niamey","Africa/Porto-Novo","Africa/Tunis","Etc/GMT-1"]},{value:"Namibia Standard Time",abbr:"NST",offset:1,isdst:!1,text:"(UTC+01:00) Windhoek",utc:["Africa/Windhoek"]},{value:"GTB Standard Time",abbr:"GDT",offset:3,isdst:!0,text:"(UTC+02:00) Athens, Bucharest",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau"]},{value:"Middle East Standard Time",abbr:"MEDT",offset:3,isdst:!0,text:"(UTC+02:00) Beirut",utc:["Asia/Beirut"]},{value:"Egypt Standard Time",abbr:"EST",offset:2,isdst:!1,text:"(UTC+02:00) Cairo",utc:["Africa/Cairo"]},{value:"Syria Standard Time",abbr:"SDT",offset:3,isdst:!0,text:"(UTC+02:00) Damascus",utc:["Asia/Damascus"]},{value:"E. Europe Standard Time",abbr:"EEDT",offset:3,isdst:!0,text:"(UTC+02:00) E. Europe",utc:["Asia/Nicosia","Europe/Athens","Europe/Bucharest","Europe/Chisinau","Europe/Helsinki","Europe/Kyiv","Europe/Mariehamn","Europe/Nicosia","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhhorod","Europe/Vilnius","Europe/Zaporizhzhia"]},{value:"South Africa Standard Time",abbr:"SAST",offset:2,isdst:!1,text:"(UTC+02:00) Harare, Pretoria",utc:["Africa/Blantyre","Africa/Bujumbura","Africa/Gaborone","Africa/Harare","Africa/Johannesburg","Africa/Kigali","Africa/Lubumbashi","Africa/Lusaka","Africa/Maputo","Africa/Maseru","Africa/Mbabane","Etc/GMT-2"]},{value:"FLE Standard Time",abbr:"FDT",offset:3,isdst:!0,text:"(UTC+02:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius",utc:["Europe/Helsinki","Europe/Kyiv","Europe/Mariehamn","Europe/Riga","Europe/Sofia","Europe/Tallinn","Europe/Uzhhorod","Europe/Vilnius","Europe/Zaporizhzhia"]},{value:"Turkey Standard Time",abbr:"TDT",offset:3,isdst:!1,text:"(UTC+03:00) Istanbul",utc:["Europe/Istanbul"]},{value:"Israel Standard Time",abbr:"JDT",offset:3,isdst:!0,text:"(UTC+02:00) Jerusalem",utc:["Asia/Jerusalem"]},{value:"Libya Standard Time",abbr:"LST",offset:2,isdst:!1,text:"(UTC+02:00) Tripoli",utc:["Africa/Tripoli"]},{value:"Jordan Standard Time",abbr:"JST",offset:3,isdst:!1,text:"(UTC+03:00) Amman",utc:["Asia/Amman"]},{value:"Arabic Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Baghdad",utc:["Asia/Baghdad"]},{value:"Kaliningrad Standard Time",abbr:"KST",offset:3,isdst:!1,text:"(UTC+02:00) Kaliningrad",utc:["Europe/Kaliningrad"]},{value:"Arab Standard Time",abbr:"AST",offset:3,isdst:!1,text:"(UTC+03:00) Kuwait, Riyadh",utc:["Asia/Aden","Asia/Bahrain","Asia/Kuwait","Asia/Qatar","Asia/Riyadh"]},{value:"E. Africa Standard Time",abbr:"EAST",offset:3,isdst:!1,text:"(UTC+03:00) Nairobi",utc:["Africa/Addis_Ababa","Africa/Asmera","Africa/Dar_es_Salaam","Africa/Djibouti","Africa/Juba","Africa/Kampala","Africa/Khartoum","Africa/Mogadishu","Africa/Nairobi","Antarctica/Syowa","Etc/GMT-3","Indian/Antananarivo","Indian/Comoro","Indian/Mayotte"]},{value:"Moscow Standard Time",abbr:"MSK",offset:3,isdst:!1,text:"(UTC+03:00) Moscow, St. Petersburg, Volgograd, Minsk",utc:["Europe/Kirov","Europe/Moscow","Europe/Simferopol","Europe/Volgograd","Europe/Minsk"]},{value:"Samara Time",abbr:"SAMT",offset:4,isdst:!1,text:"(UTC+04:00) Samara, Ulyanovsk, Saratov",utc:["Europe/Astrakhan","Europe/Samara","Europe/Ulyanovsk"]},{value:"Iran Standard Time",abbr:"IDT",offset:4.5,isdst:!0,text:"(UTC+03:30) Tehran",utc:["Asia/Tehran"]},{value:"Arabian Standard Time",abbr:"AST",offset:4,isdst:!1,text:"(UTC+04:00) Abu Dhabi, Muscat",utc:["Asia/Dubai","Asia/Muscat","Etc/GMT-4"]},{value:"Azerbaijan Standard Time",abbr:"ADT",offset:5,isdst:!0,text:"(UTC+04:00) Baku",utc:["Asia/Baku"]},{value:"Mauritius Standard Time",abbr:"MST",offset:4,isdst:!1,text:"(UTC+04:00) Port Louis",utc:["Indian/Mahe","Indian/Mauritius","Indian/Reunion"]},{value:"Georgian Standard Time",abbr:"GET",offset:4,isdst:!1,text:"(UTC+04:00) Tbilisi",utc:["Asia/Tbilisi"]},{value:"Caucasus Standard Time",abbr:"CST",offset:4,isdst:!1,text:"(UTC+04:00) Yerevan",utc:["Asia/Yerevan"]},{value:"Afghanistan Standard Time",abbr:"AST",offset:4.5,isdst:!1,text:"(UTC+04:30) Kabul",utc:["Asia/Kabul"]},{value:"West Asia Standard Time",abbr:"WAST",offset:5,isdst:!1,text:"(UTC+05:00) Ashgabat, Tashkent",utc:["Antarctica/Mawson","Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Dushanbe","Asia/Oral","Asia/Samarkand","Asia/Tashkent","Etc/GMT-5","Indian/Kerguelen","Indian/Maldives"]},{value:"Yekaterinburg Time",abbr:"YEKT",offset:5,isdst:!1,text:"(UTC+05:00) Yekaterinburg",utc:["Asia/Yekaterinburg"]},{value:"Pakistan Standard Time",abbr:"PKT",offset:5,isdst:!1,text:"(UTC+05:00) Islamabad, Karachi",utc:["Asia/Karachi"]},{value:"India Standard Time",abbr:"IST",offset:5.5,isdst:!1,text:"(UTC+05:30) Chennai, Kolkata, Mumbai, New Delhi",utc:["Asia/Kolkata","Asia/Calcutta"]},{value:"Sri Lanka Standard Time",abbr:"SLST",offset:5.5,isdst:!1,text:"(UTC+05:30) Sri Jayawardenepura",utc:["Asia/Colombo"]},{value:"Nepal Standard Time",abbr:"NST",offset:5.75,isdst:!1,text:"(UTC+05:45) Kathmandu",utc:["Asia/Kathmandu"]},{value:"Central Asia Standard Time",abbr:"CAST",offset:6,isdst:!1,text:"(UTC+06:00) Nur-Sultan (Astana)",utc:["Antarctica/Vostok","Asia/Almaty","Asia/Bishkek","Asia/Qyzylorda","Asia/Urumqi","Etc/GMT-6","Indian/Chagos"]},{value:"Bangladesh Standard Time",abbr:"BST",offset:6,isdst:!1,text:"(UTC+06:00) Dhaka",utc:["Asia/Dhaka","Asia/Thimphu"]},{value:"Myanmar Standard Time",abbr:"MST",offset:6.5,isdst:!1,text:"(UTC+06:30) Yangon (Rangoon)",utc:["Asia/Rangoon","Indian/Cocos"]},{value:"SE Asia Standard Time",abbr:"SAST",offset:7,isdst:!1,text:"(UTC+07:00) Bangkok, Hanoi, Jakarta",utc:["Antarctica/Davis","Asia/Bangkok","Asia/Hovd","Asia/Jakarta","Asia/Phnom_Penh","Asia/Pontianak","Asia/Saigon","Asia/Vientiane","Etc/GMT-7","Indian/Christmas"]},{value:"N. Central Asia Standard Time",abbr:"NCAST",offset:7,isdst:!1,text:"(UTC+07:00) Novosibirsk",utc:["Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk"]},{value:"China Standard Time",abbr:"CST",offset:8,isdst:!1,text:"(UTC+08:00) Beijing, Chongqing, Hong Kong, Urumqi",utc:["Asia/Hong_Kong","Asia/Macau","Asia/Shanghai"]},{value:"North Asia Standard Time",abbr:"NAST",offset:8,isdst:!1,text:"(UTC+08:00) Krasnoyarsk",utc:["Asia/Krasnoyarsk"]},{value:"Singapore Standard Time",abbr:"MPST",offset:8,isdst:!1,text:"(UTC+08:00) Kuala Lumpur, Singapore",utc:["Asia/Brunei","Asia/Kuala_Lumpur","Asia/Kuching","Asia/Makassar","Asia/Manila","Asia/Singapore","Etc/GMT-8"]},{value:"W. Australia Standard Time",abbr:"WAST",offset:8,isdst:!1,text:"(UTC+08:00) Perth",utc:["Antarctica/Casey","Australia/Perth"]},{value:"Taipei Standard Time",abbr:"TST",offset:8,isdst:!1,text:"(UTC+08:00) Taipei",utc:["Asia/Taipei"]},{value:"Ulaanbaatar Standard Time",abbr:"UST",offset:8,isdst:!1,text:"(UTC+08:00) Ulaanbaatar",utc:["Asia/Choibalsan","Asia/Ulaanbaatar"]},{value:"North Asia East Standard Time",abbr:"NAEST",offset:8,isdst:!1,text:"(UTC+08:00) Irkutsk",utc:["Asia/Irkutsk"]},{value:"Japan Standard Time",abbr:"JST",offset:9,isdst:!1,text:"(UTC+09:00) Osaka, Sapporo, Tokyo",utc:["Asia/Dili","Asia/Jayapura","Asia/Tokyo","Etc/GMT-9","Pacific/Palau"]},{value:"Korea Standard Time",abbr:"KST",offset:9,isdst:!1,text:"(UTC+09:00) Seoul",utc:["Asia/Pyongyang","Asia/Seoul"]},{value:"Cen. Australia Standard Time",abbr:"CAST",offset:9.5,isdst:!1,text:"(UTC+09:30) Adelaide",utc:["Australia/Adelaide","Australia/Broken_Hill"]},{value:"AUS Central Standard Time",abbr:"ACST",offset:9.5,isdst:!1,text:"(UTC+09:30) Darwin",utc:["Australia/Darwin"]},{value:"E. Australia Standard Time",abbr:"EAST",offset:10,isdst:!1,text:"(UTC+10:00) Brisbane",utc:["Australia/Brisbane","Australia/Lindeman"]},{value:"AUS Eastern Standard Time",abbr:"AEST",offset:10,isdst:!1,text:"(UTC+10:00) Canberra, Melbourne, Sydney",utc:["Australia/Melbourne","Australia/Sydney"]},{value:"West Pacific Standard Time",abbr:"WPST",offset:10,isdst:!1,text:"(UTC+10:00) Guam, Port Moresby",utc:["Antarctica/DumontDUrville","Etc/GMT-10","Pacific/Guam","Pacific/Port_Moresby","Pacific/Saipan","Pacific/Truk"]},{value:"Tasmania Standard Time",abbr:"TST",offset:10,isdst:!1,text:"(UTC+10:00) Hobart",utc:["Australia/Currie","Australia/Hobart"]},{value:"Yakutsk Standard Time",abbr:"YST",offset:9,isdst:!1,text:"(UTC+09:00) Yakutsk",utc:["Asia/Chita","Asia/Khandyga","Asia/Yakutsk"]},{value:"Central Pacific Standard Time",abbr:"CPST",offset:11,isdst:!1,text:"(UTC+11:00) Solomon Is., New Caledonia",utc:["Antarctica/Macquarie","Etc/GMT-11","Pacific/Efate","Pacific/Guadalcanal","Pacific/Kosrae","Pacific/Noumea","Pacific/Ponape"]},{value:"Vladivostok Standard Time",abbr:"VST",offset:11,isdst:!1,text:"(UTC+11:00) Vladivostok",utc:["Asia/Sakhalin","Asia/Ust-Nera","Asia/Vladivostok"]},{value:"New Zealand Standard Time",abbr:"NZST",offset:12,isdst:!1,text:"(UTC+12:00) Auckland, Wellington",utc:["Antarctica/McMurdo","Pacific/Auckland"]},{value:"UTC+12",abbr:"U",offset:12,isdst:!1,text:"(UTC+12:00) Coordinated Universal Time+12",utc:["Etc/GMT-12","Pacific/Funafuti","Pacific/Kwajalein","Pacific/Majuro","Pacific/Nauru","Pacific/Tarawa","Pacific/Wake","Pacific/Wallis"]},{value:"Fiji Standard Time",abbr:"FST",offset:12,isdst:!1,text:"(UTC+12:00) Fiji",utc:["Pacific/Fiji"]},{value:"Magadan Standard Time",abbr:"MST",offset:12,isdst:!1,text:"(UTC+12:00) Magadan",utc:["Asia/Anadyr","Asia/Kamchatka","Asia/Magadan","Asia/Srednekolymsk"]},{value:"Kamchatka Standard Time",abbr:"KDT",offset:13,isdst:!0,text:"(UTC+12:00) Petropavlovsk-Kamchatsky - Old",utc:["Asia/Kamchatka"]},{value:"Tonga Standard Time",abbr:"TST",offset:13,isdst:!1,text:"(UTC+13:00) Nuku'alofa",utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]},{value:"Samoa Standard Time",abbr:"SST",offset:13,isdst:!1,text:"(UTC+13:00) Samoa",utc:["Pacific/Apia"]}].filter(e=>e.utc.length).reduce((e,a)=>{let t=a.utc;for(let i=0;i<t.length;i++){const n=t[i],s=a.text;let r=s.substring(s.indexOf("(")+1,s.indexOf(")"));-1!==r.indexOf("UTC")&&e.push({value:n,abbr:a.abbr,offset:a.offset,isdst:a.isdst,text:`(${r}) ${n}`,utc:["Etc/GMT-13","Pacific/Enderbury","Pacific/Fakaofo","Pacific/Tongatapu"]})}return e},[]).filter((e,a,t)=>a===t.findIndex(a=>a.value===e.value));function qt({value:a,onChange:t}){const{t:i}=q(),n=$t.map(e=>({value:e.value,label:e.text}));return e(Kt,{options:n,value:a,onChange:t,placeholder:i("dropdowns.searchTimezone"),emptyLabel:i("dropdowns.chooseTimezone")})}const Xt=({workspace:t})=>{const{t:i}=q(),{visible:n}=le(),s=n(e=>e.settings?.profile?.language),r=n(e=>e.settings?.profile?.country),c=n(e=>e.settings?.profile?.currency),o=n(e=>e.settings?.profile?.timezone),{updateUserProfile:l,getProfile:d}=Ee(),[u,m]=z(!1),[p,g]=z(),[f,h]=z(0),b=Tt(),x=ct.object({name:ct.string().min(2,{message:i("profile.nameMinLength")}),country:ct.string().optional(),timezone:ct.string().optional(),language:ct.string().optional(),currency:ct.string().optional()}),v=rt({resolver:st(x),defaultValues:{name:p?.name||"",country:p?.country||"",timezone:p?.timezone||"",language:p?.language||"",currency:p?.currency||""}});return j(()=>{d().then(e=>{g(e),v.setValue("name",e.name),v.setValue("country",e.country),v.setValue("timezone",e.timezone),v.setValue("language",e.language),v.setValue("currency",e.currency)}).catch(e=>{Ke(e,{component:"WorkspaceSettingsProfile",action:"getProfile"})})},[f]),p?a("div",{children:[b.message&&e(Ne,{variant:"success",title:i("settings.common.success"),message:b.message,className:"mb-4"}),e("div",{className:"space-y-4",children:e(Fe,{...v,children:a("form",{onSubmit:v.handleSubmit(async function(e){m(!0),b.clear();try{await l({name:e.name,country:e.country,timezone:e.timezone,language:e.language,currency:e.currency}),b.show(i("profile.success"))}catch(e){Ke(e,{component:"WorkspaceSettingsProfile",action:"updateUserProfile",metadata:{workspaceId:t._id}})}finally{m(!1)}}),className:"space-y-4",children:[a("div",{children:[e("label",{htmlFor:"profile-email",className:"block text-sm font-medium mb-1",children:i("profile.email")}),e(Je,{id:"profile-email",disabled:!0,className:"w-full border rounded px-3 py-2 bg-muted",value:p?.email})]}),e(Ve,{disabled:u,control:v.control,name:"name",render:({field:t})=>a(ze,{children:[e(je,{children:i("profile.name")}),e(He,{children:e(Je,{...t})}),e(Ye,{})]})}),a("div",{className:"flex gap-y-2 my-4 flex-col",children:[s&&a("div",{className:"flex flex-col gap-0.5",children:[e("div",{className:"text-sm font-medium",children:i("profile.language")}),e(Zt,{value:v.watch("language"),onChange:e=>{v.setValue("language",e)}})]}),r&&a("div",{className:"flex flex-col gap-0.5",children:[e("div",{className:"text-sm font-medium",children:i("profile.country")}),e(Vt,{value:v.watch("country"),onChange:e=>{v.setValue("country",e)}})]}),c&&a("div",{className:"flex flex-col gap-0.5",children:[e("div",{className:"text-sm font-medium",children:i("profile.currency")}),e(Ht,{value:v.watch("currency"),onChange:e=>{v.setValue("currency",e)}})]}),o&&a("div",{className:"flex flex-col gap-0.5",children:[e("div",{className:"text-sm font-medium",children:i("profile.timezone")}),e(qt,{value:v.watch("timezone"),onChange:e=>{v.setValue("timezone",e)}})]})]}),a("div",{className:"flex justify-end gap-x-2",children:[e(ne,{type:"submit",progress:u,disabled:u,children:i("profile.save")}),e(ne,{type:"button",variant:"outline",onClick:()=>{h(e=>e+1)},disabled:u,children:i("profile.reset")})]})]})})}),p?.image&&a("div",{children:[e("p",{className:"block text-sm font-medium mb-1",children:i("profile.profileImage")}),e("div",{className:"w-16 h-16 rounded-full overflow-hidden",children:e("img",{src:p.image,alt:p.name,className:"w-full h-full object-cover"})})]})]}):e(bt,{})},Qt=()=>{const{t:i,formattingLocale:n}=q(),{visible:s,ui:r}=le(),c=r.formats?.date??{dateStyle:"medium"},o=s(e=>e.settings?.security?.passkeyRename),d=s(e=>e.settings?.security?.passkeyDelete),{api:u}=na(),[m,p]=z(!0),[g,f]=z([]),[h,b]=z(null),[x,v]=z(null),[N,C]=z(""),w=H(async()=>{try{const e=await u.getPasskeys();f(e)}catch(e){Ke(e,{component:"WorkspaceSettingsSecurity"})}finally{p(!1)}},[u]);return j(()=>{w()},[w]),m?e(bt,{}):a("div",{className:"space-y-4",children:[e(Ae,{title:i("security.passkeysTitle"),description:i("security.passkeysDescription")}),0===g.length?e(ye,{icon:e(A,{className:"h-5 w-5 text-muted-foreground"}),description:i("security.noPasskeys")}):e("div",{className:"space-y-2",children:g.map(s=>a("div",{className:"flex items-center justify-between gap-3 rounded-md border p-3 "+(!1===s.active?"opacity-70":""),children:[a("div",{className:"flex min-w-0 items-center gap-3",children:[e(A,{className:"h-4 w-4 shrink-0 text-muted-foreground"}),e("div",{className:"min-w-0",children:x===s.id?a("div",{className:"flex items-center gap-2",children:[e(Je,{value:N,onChange:e=>C(e.target.value),placeholder:i("security.renamePlaceholder"),className:"h-8"}),e(ne,{size:"icon",variant:"ghost",className:"h-10 w-10 sm:h-8 sm:w-8 shrink-0",disabled:h===s.id,onClick:()=>async function(e){const a=N.trim();if(a){b(e);try{await u.renamePasskey(e,a),f(t=>t.map(t=>t.id===e?{...t,name:a}:t)),v(null)}catch(e){Ke(e,{component:"WorkspaceSettingsSecurity"})}finally{b(null)}}}(s.id),children:e(S,{className:"h-4 w-4"})}),e(ne,{size:"icon",variant:"ghost",className:"h-10 w-10 sm:h-8 sm:w-8 shrink-0",onClick:()=>v(null),children:e(y,{className:"h-4 w-4"})})]}):a(t,{children:[a("div",{className:"flex items-center gap-2",children:[e("p",{className:"truncate text-sm font-medium",children:s.name}),!1===s.active&&e("span",{className:"shrink-0 rounded-full border border-warning/40 bg-warning/10 px-2 py-0.5 text-xs font-medium text-warning",title:i("security.inactiveHint"),children:i("security.inactive")})]}),e("p",{className:"text-xs text-muted-foreground",children:!1===s.active?i("security.inactiveHint"):s.lastUsedAt?`${i("security.lastUsed")}: ${ua(s.lastUsedAt,n,c)}`:s.createdAt?`${i("security.added")}: ${ua(s.createdAt,n,c)}`:null})]})})]}),x!==s.id&&(o||d)&&a("div",{className:"flex shrink-0 items-center gap-1",children:[o&&e(ne,{size:"icon",variant:"ghost",className:"h-10 w-10 sm:h-8 sm:w-8","aria-label":i("security.rename"),onClick:()=>{v(s.id),C(s.name)},children:e(T,{className:"h-4 w-4"})}),d&&a(Me,{children:[e(Ue,{asChild:!0,children:e(ne,{size:"icon",variant:"ghost",className:"h-10 w-10 sm:h-8 sm:w-8 text-destructive","aria-label":i("security.remove"),disabled:h===s.id,children:e(l,{className:"h-4 w-4"})})}),a(De,{children:[a(Ie,{children:[e(Re,{children:i("security.removeTitle")}),e(_e,{children:i("security.removeDescription")})]}),a(Ge,{children:[e(Be,{children:i("settings.common.cancel")}),e(Le,{onClick:()=>async function(e){b(e);try{await u.deletePasskey(e),f(a=>a.filter(a=>a.id!==e))}catch(e){Ke(e,{component:"WorkspaceSettingsSecurity"})}finally{b(null)}}(s.id),children:i("security.remove")})]})]})]})]})]},s.id))}),e("p",{className:"text-xs text-muted-foreground",children:i("security.addHint")})]})},ei=e=>{switch(e){case ga.Paid:return"bg-success/15 text-success";case ga.Open:return"bg-warning/15 text-warning";case ga.Draft:return"bg-muted text-foreground";case ga.Uncollectible:return"bg-destructive/15 text-destructive";case ga.Void:default:return"bg-muted text-foreground"}},ai=({workspaceId:i,hasActiveSubscription:n=!1,onViewPricingPlans:s,limit:r=20})=>{const{t:c,formattingLocale:o}=q(),{can:l}=oe(),d=l(de.WORKSPACE_BILLING_VIEW),{invoices:u,loading:m,error:p,refetch:g}=ma(i,r);if(!d)return e(ht,{});const f=u.length>0;return a("div",{className:"space-y-4",children:[e(Ae,{title:c("invoices.title"),description:c("invoices.description"),actions:e(ne,{variant:"ghost",size:"sm",progress:m,onClick:g,disabled:m,children:c("settings.common.refreshAction",{loading:String(m)})})}),p&&e(Ne,{variant:"error",title:c("invoices.errorLoading"),message:p,actionLabel:c("settings.common.retryAction",{loading:String(m)}),onAction:g,actionDisabled:m}),m&&!f?e("div",{className:"border rounded-lg p-6",children:e(bt,{})}):f?e("div",{className:"space-y-2",children:u.map(i=>{const n=(e=>{switch(e.status){case ga.Draft:case ga.Open:return{textKey:"invoices.pay",color:"bg-info text-info-foreground hover:bg-info/90"};case ga.Paid:return{textKey:"invoices.view",color:"bg-success text-success-foreground hover:bg-success/90"};case ga.Uncollectible:case ga.Void:return{textKey:"invoices.viewDetails",color:"bg-muted-foreground text-background hover:bg-muted-foreground/90"};default:return{textKey:"invoices.view",color:"bg-muted-foreground text-background hover:bg-muted-foreground/90"}}})(i);return a("div",{className:"border rounded-md bg-background hover:shadow-sm transition-shadow p-3",children:[a("div",{className:"flex items-center justify-between gap-2 mb-1.5",children:[e("span",{className:"text-sm font-medium text-foreground truncate min-w-0",children:i.description||i.number||i.id.slice(-8)}),e("span",{className:`inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium shrink-0 ${ei(i.status)}`,children:c(`invoices.status.${i.status}`)})]}),a("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-0.5 text-sm text-muted-foreground mb-2.5",children:[e("span",{className:"font-medium text-foreground",children:se(i.amount_due,i.currency,o)}),i.created&&a(t,{children:[e("span",{className:"text-muted-foreground/50 hidden sm:inline",children:"·"}),e("span",{children:pa(i.created,o)})]}),i.amount_paid>0&&i.amount_due>0&&e("span",{className:"text-xs text-muted-foreground",children:c("invoices.paidAmount",{amount:se(i.amount_paid,i.currency,o)})})]}),a("div",{className:"flex items-center gap-2",children:[a(ne,{size:"sm",disabled:!i.hosted_invoice_url,onClick:()=>i.hosted_invoice_url&&window.open(i.hosted_invoice_url,"_blank","noopener,noreferrer"),className:n.color,children:[c(n.textKey),e(w,{className:"h-3.5 w-3.5 ms-1.5"})]}),i.invoice_pdf&&a(ne,{size:"sm",variant:"outline",onClick:()=>window.open(i.invoice_pdf,"_blank","noopener,noreferrer"),children:[e(k,{className:"h-3.5 w-3.5 me-1.5"}),c("invoices.download")]})]})]},i.id)})}):e(ye,{icon:e(C,{className:"h-5 w-5 text-muted-foreground"}),description:c(n?"invoices.noInvoicesWithSub":"invoices.noInvoices"),action:!n&&s?e(ne,{size:"sm",className:"mt-2",onClick:s,children:c("subscription.viewPricingPlans")}):void 0})]})},ti=(e,a)=>a?ua(a,e,{month:"long",day:"numeric",year:"numeric"}):"",ii=({planVersion:t,subscriptionCurrency:i,billingInterval:n,seatPricingConfig:s,memberCount:r,includedSeats:c,billableSeats:o,perSeatPrice:l,intervalLabel:d})=>{const{t:u,formattingLocale:m,fmtNum:p,fmtCents:g}=q(),f=((e,a,t=ha.Monthly)=>{if(!e?.subscriptionItems)return{features:[],limits:[],quotas:[]};const i=[],n=[],s=[];return e.subscriptionItems.forEach(r=>{const c=r.slug;if(r.type===ba.Feature){const a=e.features?.[c]??!1;i.push({item:r,enabled:a})}else if(r.type===ba.Limit){const a=e.limits?.[c]??0;n.push({item:r,value:a})}else if(r.type===ba.Quota){const i=a&&e.pricingVariants?.length?xa(e,a,c,t):va(e.quotas?.[c],t);null!=i&&s.push({item:r,value:i})}}),{features:i,limits:n,quotas:s}})(t,i,n??"monthly");return f.features.length>0||f.limits.length>0||f.quotas.length>0?e("div",{className:"px-4 py-4 sm:px-5 sm:py-5 border-t border-border/60",children:a("div",{className:"space-y-5",children:[f.features.length>0&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.items.features")}),e("ul",{className:"space-y-1.5",children:f.features.sort(e=>e.enabled?-1:1).map(({item:t,enabled:i})=>a("li",{className:"flex items-center gap-2 text-sm",children:[e("span",{className:"w-4 text-center shrink-0 "+(i?"text-success":"text-muted-foreground/50"),children:i?"✓":"✕"}),e("span",{className:i?"text-foreground":"text-muted-foreground/70",children:t.name})]},t._id))})]}),f.limits.length>0&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.items.limits")}),e("ul",{className:"space-y-1.5",children:f.limits.map(({item:t,value:i})=>a("li",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:t.name}),e("span",{className:"font-medium text-foreground",children:p(i)})]},t._id))})]}),f.quotas.length>0&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.items.quotas")}),e("ul",{className:"space-y-1.5",children:f.quotas.map(({item:t,value:n})=>{const s=fa(n,t.name.toLowerCase(),{currency:i,locale:m}),r=s?s.hasOverage?u("quota.includedWithOverage",{count:s.included,price:s.price,unit:s.unit}):u("quota.includedOnly",{count:s.included}):"—";return e("li",{className:"text-sm",children:a("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-0.5",children:[e("span",{className:"text-muted-foreground",children:t.name}),e("span",{className:"font-medium text-foreground text-xs sm:text-sm",children:r})]})},t._id)})})]}),s&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.seats.title")}),a("div",{className:"bg-muted/50 rounded-lg p-3 space-y-1.5",children:[a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.members")}),e("span",{className:"font-semibold text-foreground",children:p(r)})]}),a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.included")}),e("span",{className:"text-foreground",children:p(c)})]}),o>0&&a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.billable")}),a("span",{className:"font-medium text-warning",children:[p(o)," ",u("subscription.seats.extra")]})]}),null!=l&&l>0&&a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.perExtraSeat")}),a("span",{className:"text-foreground",children:[g(l,i),d]})]}),(s?.maxSeats??0)>0&&a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.seats.limit")}),e("span",{className:"text-foreground",children:p(s.maxSeats)})]})]})]}),t?.creditGrant?.enabled&&"object"==typeof t.creditGrant.creditPackage&&null!==t.creditGrant.creditPackage&&a("div",{children:[e("h4",{className:"text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-2",children:u("subscription.items.credits")}),a("div",{className:"bg-info/10 rounded-lg p-3 space-y-1.5",children:[a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:t.creditGrant.renewOnPeriod?u("subscription.items.creditsPerMonth"):u("subscription.items.creditsOneTime")}),e("span",{className:"font-semibold text-info",children:p("object"==typeof t.creditGrant.creditPackage?t.creditGrant.creditPackage.creditAmount:0)})]}),a("div",{className:"flex items-center justify-between text-sm",children:[e("span",{className:"text-muted-foreground",children:u("subscription.items.creditRenewal")}),e("span",{className:"font-medium text-foreground",children:t.creditGrant.renewOnPeriod?"reset"===t.creditGrant.mode?u("subscription.items.creditModeReset"):u("subscription.items.creditModeTopup"):u("subscription.items.creditModeLifetime")})]})]})]})]})}):null},ni=({resumeDialogOpen:t,setResumeDialogOpen:i,resumeLoading:n,handleResumeSubscription:s,subscription:r})=>{const{t:c,formattingLocale:o}=q();return e(Me,{open:t,onOpenChange:i,children:a(De,{children:[a(Ie,{children:[e(Re,{children:c("subscription.resumeTitle")}),e(_e,{asChild:!0,children:a("div",{className:"space-y-3",children:[e("p",{children:c("subscription.resumeConfirm")}),a("div",{className:"bg-warning/10 border border-warning/30 rounded-lg p-4 space-y-2 text-sm",children:[a("div",{className:"flex items-start gap-2",children:[e(E,{className:"h-4 w-4 text-warning mt-0.5 flex-shrink-0"}),a("span",{children:[c("subscription.resumeChargeDate")," ",r?.subscription?.stripeCurrentPeriodEnd&&ti(o,r.subscription.stripeCurrentPeriodEnd)?e("span",{className:"font-medium",children:ti(o,r.subscription.stripeCurrentPeriodEnd)}):c("subscription.resumeChargeFallback")]})]}),a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-warning mt-0.5",children:"•"}),e("span",{children:c("subscription.resumeContinue")})]}),a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-info mt-0.5",children:"ℹ"}),e("span",{children:c("subscription.resumeCancelAnytime")})]})]})]})})]}),a(Ge,{children:[e(Be,{disabled:n,children:c("subscription.resumeKeep")}),e(Le,{onClick:s,disabled:n,children:c(n?"subscription.resuming":"subscription.resumeButton")})]})]})})},si=({cancelDialogOpen:t,setCancelDialogOpen:i,cancelLoading:n,handleCancelSubscription:s,subscription:r})=>{const{t:c,formattingLocale:o}=q(),l=r?.subscription?.subscriptionStatus===Na.Trialing,d=l&&r?.subscription?.trialEnd||r?.subscription?.stripeCurrentPeriodEnd;return e(Me,{open:t,onOpenChange:i,children:a(De,{children:[a(Ie,{children:[e(Re,{children:c(l?"subscription.cancelTrialTitle":"subscription.cancelTitle")}),e(_e,{asChild:!0,children:a("div",{className:"space-y-3",children:[e("p",{children:c(l?"subscription.cancelTrialConfirm":"subscription.cancelConfirm")}),a("div",{className:"bg-muted/50 rounded-lg p-4 space-y-2 text-sm",children:[a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-success mt-0.5",children:"✓"}),a("span",{children:[c(l?"subscription.cancelTrialAccess":"subscription.retainAccess")," ",d&&ti(o,d)?e("span",{className:"font-medium",children:ti(o,d)}):c("subscription.retainAccessFallback")]})]}),a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-success mt-0.5",children:"✓"}),e("span",{children:c(l?"subscription.cancelTrialNoCharge":"subscription.cancelNotCharged")})]}),a("div",{className:"flex items-start gap-2",children:[e("span",{className:"text-info mt-0.5",children:"ℹ"}),e("span",{children:c(l?"subscription.cancelTrialResume":"subscription.cancelResumeAnytime")})]})]})]})})]}),a(Ge,{children:[e(Be,{disabled:n,children:c(l?"subscription.cancelTrialKeep":"subscription.cancelKeep")}),e(Le,{onClick:s,disabled:n,className:"bg-destructive hover:bg-destructive/90 focus:ring-destructive",children:c(n?"subscription.canceling":l?"subscription.cancelTrialButton":"subscription.cancelButton")})]})]})})},ri=({className:t,icon:i,titleClassName:n,title:s,descriptionClassName:r,description:c,children:o,kind:l})=>(Aa(!!l,l??"","subscription_notice_shown",{kind:l}),e("div",{className:t,children:a("div",{className:"flex items-start gap-3",children:[i,a("div",{children:[e("p",{className:n,children:s}),e("p",{className:r,children:c}),o]})]})})),ci=({subscription:e})=>{const{t:t}=q();return a("span",{className:"inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium "+(e.subscriptionStatus===Na.Active?e.cancelAtPeriodEnd?"bg-warning/15 text-warning":"bg-success/15 text-success":e.subscriptionStatus===Na.Trialing?"bg-info/15 text-info":e.subscriptionStatus===Na.Canceled?"bg-muted text-foreground":"bg-destructive/15 text-destructive"),children:[e.subscriptionStatus===Na.Active&&(e.cancelAtPeriodEnd?t("subscription.status.canceling"):t("subscription.status.active")),e.subscriptionStatus===Na.Trialing&&t("subscription.status.trial"),e.subscriptionStatus===Na.Canceled&&t("subscription.status.canceled"),e.subscriptionStatus===Na.PastDue&&t("subscription.status.pastDue")]})},oi=({subscription:t,showChangePlan:i,setDialogOpen:n})=>{const{t:s}=q(),r=t.trialEnd||t.stripeCurrentPeriodEnd,c=r?new Date(r):null,o=c&&!isNaN(c.getTime())?c:null,l=o?Math.max(0,Math.ceil((o.getTime()-Date.now())/864e5)):null,d=null!==l&&l<=3;return Aa(!0,"trial","subscription_notice_shown",{kind:d?"trial_ending":"trial",days_remaining:l??void 0}),a("div",{className:"px-4 py-3 sm:px-5 text-sm flex flex-col sm:flex-row sm:items-center justify-between gap-2 "+(d?"bg-warning/10 text-warning border-b border-warning/30":"bg-info/10 text-info border-b border-info/20"),children:[a("span",{children:[null!==l&&l<=0?s("subscription.trialEnded"):null!==l?s("subscription.trialEndsIn",{days:l}):s("subscription.onTrial")," ",s("subscription.upgradeToKeepAccess")]}),i&&e(ne,{size:"sm",variant:d?"default":"outline",className:"shrink-0 "+(d?"":"border-info/30 text-info hover:bg-info/15"),onClick:()=>n(!0),children:s("subscription.upgradePlan")})]})};function li(){const e=J(null);return j(()=>()=>{e.current&&clearTimeout(e.current)},[]),H((a,t=5e3)=>{e.current&&clearTimeout(e.current),e.current=setTimeout(()=>{e.current=null,a()},t)},[])}const di=Z(()=>import("./SubscriptionDialog-CDBtbbJi.mjs").then(e=>({default:e.default}))),ui=({workspace:i})=>{const n=i._id?.toString(),{t:s,formattingLocale:r,fmtCents:c}=q(),{api:o}=na(),{can:l}=oe(),{visible:u,ui:m}=le(),p=m.behavior,g=u(e=>e.settings?.subscription?.changePlan),f=u(e=>e.settings?.subscription?.cancel),h=u(e=>e.settings?.subscription?.managePayment),b=u(e=>e.settings?.subscription?.invoicesTab),x=u(e=>e.settings?.subscription?.planDetails),v=l(de.WORKSPACE_BILLING_VIEW),N=l(de.WORKSPACE_BILLING_MANAGE),{subscription:A,loading:S,error:y,updateSubscription:T,refetch:C}=Sa(n),{createCheckoutSession:w}=ya(n),{cancelSubscription:k,loading:U}=Ta(n),{resumeSubscription:D,loading:I}=Ca(n),{openBillingPortal:R,loading:_}=wa(n),{versions:G,loading:B,error:L,refetch:K}=ka(n),O=S||B,W=y||L,{currentVersion:F,latestVersion:H,isDeprecated:Z,plansToShow:$}=V(()=>{const e=G?.currentVersion,a=G?.availableVersions||[],t=null!=A?.subscription;let i=null;a.length>0?i=a.reduce((e,a)=>a.version>e.version?a:e):e&&(i=e);return{currentVersion:e,latestVersion:i,isDeprecated:!!(t&&i&&e)&&i.version>e.version&&t,plansToShow:i?.plans&&i.plans.length>0?i.plans:[]}},[G,A?.subscription]),[X,Q]=z(!1),[ee,ae]=z(null),[te,ie]=z(null),se=li(),[re,ce]=z(!1),[ue,me]=z(!1),pe=J("unknown"),ge=e=>{pe.current=e,ce(!0)},{emit:fe}=Ea(),xe=()=>({plan_version_id:A?.planVersion?._id,plan_slug:A?.plan?.slug,subscription_status:A?.subscription?.subscriptionStatus}),ve=e=>{fe("subscription_cancel_started",{...xe(),source:e}),me(!0)},Ae=J(void 0),Te=J(!1);j(()=>{if(Te.current)return;if(S||!$||0===$.length)return;const e=he.getState(),a=e.params?.action===be.SelectPlan,t=!1!==p?.autoOpenPlanDialog;(!A?.subscription&&t||a)&&(Te.current=!0,a&&(Ae.current=e.params,he.clearParams()),ge(a?"deep_link":"auto_no_subscription"))},[S,A?.subscription,$,p?.autoOpenPlanDialog]);const[Ce,ke]=z(!1),[Ee,Pe]=z("subscription"),Me=async()=>{await Promise.all([C(),K()])},Ue=V(()=>Pa(A?.subscription?.stripePriceId,$??[]),[A?.subscription?.stripePriceId,$]);if(!v)return e(ht,{});if(O&&!A&&!G)return e(bt,{});const De=A?.planVersion?._id||null;return n?a("div",{className:"space-y-4",children:[W&&e(Ne,{variant:"error",title:s("subscription.errorLoading"),message:W,description:s("subscription.errorLoadingDescription"),actionLabel:s("settings.common.retryAction",{loading:String(O)}),onAction:Me,actionDisabled:O}),ee&&e(Ne,{variant:"error",title:s("subscription.updateFailed"),message:ee,actionLabel:s("settings.common.dismiss"),onAction:()=>ae(null)}),te&&e(Ne,{variant:"success",title:s("settings.common.success"),message:te,actionLabel:s("settings.common.dismiss"),onAction:()=>ie(null)}),b&&e("div",{className:"border-b border-border",children:a("nav",{className:"-mb-px flex gap-6",role:"tablist","aria-label":s("subscription.tabsLabel"),onKeyDown:e=>{"ArrowLeft"!==e.key&&"ArrowRight"!==e.key&&"Home"!==e.key&&"End"!==e.key||(e.preventDefault(),Pe("ArrowLeft"===e.key||"End"===e.key?"invoices":"subscription"))},children:[e("button",{type:"button",role:"tab",id:"subscription-tab-subscription","aria-controls":"subscription-panel-subscription","aria-selected":"subscription"===Ee,tabIndex:"subscription"===Ee?0:-1,onClick:()=>Pe("subscription"),className:"border-b-2 py-3 text-sm font-medium transition-colors "+("subscription"===Ee?"border-primary text-primary":"border-transparent text-muted-foreground hover:border-border hover:text-foreground"),children:s("subscription.plan")}),e("button",{type:"button",role:"tab",id:"subscription-tab-invoices","aria-controls":"subscription-panel-invoices","aria-selected":"invoices"===Ee,tabIndex:"invoices"===Ee?0:-1,onClick:()=>Pe("invoices"),className:"border-b-2 py-3 text-sm font-medium transition-colors "+("invoices"===Ee?"border-primary text-primary":"border-transparent text-muted-foreground hover:border-border hover:text-foreground"),children:s("subscription.invoicesTab")})]})}),"subscription"===Ee&&a("div",{id:"subscription-panel-subscription",role:"tabpanel","aria-labelledby":"subscription-tab-subscription",tabIndex:0,children:[O&&e(Se,{}),g&&Z&&A?.subscription&&a("div",{className:"bg-warning/10 border border-warning/30 rounded-lg px-4 py-3 flex flex-col sm:flex-row sm:items-center justify-between gap-2",children:[a("div",{className:"flex items-center gap-2 min-w-0",children:[e(E,{className:"h-4 w-4 text-warning shrink-0"}),a("span",{className:"text-sm text-warning",children:[e("span",{className:"font-medium",children:s("subscription.planUpdateAvailable")}),a("span",{className:"text-warning",children:[" ","— v",F?.version||"?"," → v",H?.version||"?"]})]})]}),e(ne,{size:"sm",variant:"outline",className:"shrink-0 border-warning/40 text-warning hover:bg-warning/15",onClick:()=>ge("new_version_notice"),children:s("subscription.viewPlans")})]}),a("div",{className:"space-y-4",children:[a("div",{className:"flex items-center justify-between",children:[e("div",{children:e("p",{className:"text-sm text-muted-foreground",children:s("subscription.managePlan")})}),a("div",{className:"flex items-center gap-2",children:[(()=>{if(!g)return null;const a=A?.subscription?.subscriptionStatus===Na.Canceled,t=A?.subscription?.cancelAtPeriodEnd;return t||U?null:a&&$&&$.length>0?e(ne,{size:"sm",onClick:()=>ge("resubscribe"),children:s("subscription.viewPricingPlans")}):A?.subscription&&!a&&N?e(ne,{variant:"outline",size:"sm",onClick:()=>ge("change_plan"),children:s("subscription.changePlanButton")}):!A?.subscription&&$&&$.length>0?e(ne,{size:"sm",onClick:()=>ge("choose_plan"),children:s("subscription.viewPricingPlans")}):null})(),e(ne,{variant:"ghost",size:"sm",progress:O,onClick:Me,disabled:O||X,children:s("settings.common.refreshAction",{loading:String(O)})})]})]}),A?.subscription?(()=>{const n=Pa(A.subscription.stripePriceId,$??[]),o=n?.interval??null,l=n?.currency??A.plan?.currency??i?.billingCurrency??"",d=o&&A.planVersion?Ma(A.planVersion,l,o):null,u=l,m=A.planVersion?Ua(A.planVersion,l):null,p=m&&o?Da(A.planVersion,l,o):null,v=Array.isArray(i?.users)?i.users.length:1,S=m?.includedSeats??0,y=Math.max(0,v-S),T=!!A.plan?.isFreemium,C=null!=d?0===d?s("subscription.free"):c(d,u):T?s("subscription.free"):null,w=o===ha.Monthly?s("subscription.billingInterval.perMonth"):o===ha.Quarterly?s("subscription.billingInterval.perQuarter"):o===ha.Yearly?s("subscription.billingInterval.perYear"):"";return a("div",{className:"border rounded-lg overflow-hidden "+(Z?"border-warning/40":"border-border"),children:[A.subscription.subscriptionStatus===Na.Trialing&&!A.subscription.cancelAtPeriodEnd&&e(oi,{subscription:A.subscription,showChangePlan:g,setDialogOpen:e=>{!0===e?ge("trial_banner"):ce(e)}}),a("div",{className:"p-4 sm:p-5 "+(Z?"bg-warning/5":"bg-muted/30"),children:[a("div",{className:"flex flex-wrap items-center gap-2 mb-2",children:[e("h3",{className:"text-lg font-semibold text-foreground",children:A.plan?.name||s("subscription.noPlanAssigned")}),e(ci,{subscription:A.subscription}),A.subscription.subscriptionStatus===Na.Trialing&&ti(r,A.subscription.trialEnd||A.subscription.stripeCurrentPeriodEnd)&&e("span",{className:"text-xs text-muted-foreground",children:s("subscription.endsOn",{date:ti(r,A.subscription.trialEnd||A.subscription.stripeCurrentPeriodEnd)})}),Z&&a("span",{className:"inline-flex items-center gap-1 px-2.5 py-0.5 rounded-full text-xs font-medium bg-warning/15 text-warning",children:[e(E,{className:"h-3.5 w-3.5"}),s("subscription.status.deprecated")]})]}),A.plan?.description&&e("p",{className:"text-sm text-muted-foreground mb-3",children:A.plan.description}),!T&&a("div",{className:"flex flex-col sm:flex-row sm:items-start sm:justify-between gap-3 sm:gap-4",children:[a("div",{children:[a("div",{className:"flex items-baseline gap-1 whitespace-nowrap",children:[e("span",{className:"text-2xl font-bold text-foreground",children:C||s("invoices.na")}),C&&C!==s("subscription.free")&&w&&e("span",{className:"text-sm text-muted-foreground",children:w})]}),m&&null!=p&&p>0&&e("div",{className:"text-xs text-muted-foreground mt-1",children:s("subscription.perSeatDisplay",{price:c(p,u),interval:w})}),m&&null!=p&&p>0&&y>0&&C&&C!==s("subscription.free")&&null!=d&&e("div",{className:"text-xs text-muted-foreground mt-1 pt-1 border-t border-border",children:s("subscription.estTotalDisplay",{total:c(d+p*y,u),interval:w,count:y})})]}),(A.subscription.subscriptionStatus===Na.Active||A.subscription.subscriptionStatus===Na.Trialing)&&!A.subscription.cancelAtPeriodEnd&&ti(r,A.subscription.stripeCurrentPeriodEnd)&&a("div",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[e(P,{className:"h-3.5 w-3.5 flex-shrink-0"}),e("span",{children:s("subscription.nextBillingDisplay",{date:ti(r,A.subscription.stripeCurrentPeriodEnd)??""})})]})]}),Z&&e("p",{className:"text-xs text-warning mt-2",children:s("subscription.versionLabel",{version:F?.version||s("invoices.na")})}),!T&&(h||f||A.subscription.cancelAtPeriodEnd)&&(A.subscription.subscriptionStatus===Na.Active||A.subscription.subscriptionStatus===Na.Trialing||A.subscription.subscriptionStatus===Na.PastDue)&&a("div",{className:"flex flex-wrap items-center gap-2 sm:gap-3 mt-4 pt-4 border-t border-border",children:[h&&A.subscription&&N&&A.subscription?.subscriptionId&&e(ne,{variant:"outline",size:"sm",onClick:()=>{fe("billing_portal_opened",xe()),R()},disabled:_,progress:_,children:s(_?"subscription.openingPortal":"subscription.managePayment")}),N&&A.subscription?.subscriptionId&&(A.subscription.subscriptionStatus===Na.Active||A.subscription.subscriptionStatus===Na.Trialing)&&e(t,{children:A.subscription.cancelAtPeriodEnd?e(ne,{variant:"outline",size:"sm",onClick:()=>ke(!0),disabled:X||U||I,progress:I,children:A.subscription.subscriptionStatus===Na.Trialing?s("subscription.resumeTrial"):s("subscription.resumeTitle")}):f?e(ne,{variant:"outline",size:"sm",className:"text-destructive hover:text-destructive hover:bg-destructive/10 border-destructive/20",onClick:()=>ve("billing_tab"),disabled:X||U||I,progress:U||X,children:U||X?s("subscription.canceling"):A.subscription.subscriptionStatus===Na.Trialing?s("subscription.cancelTrial"):s("subscription.cancelTitle")}):null})]})]}),A.subscription.subscriptionStatus===Na.PastDue&&e(ri,{kind:"past_due",className:"px-5 py-3 bg-destructive/10 border-t border-destructive/20",icon:e(E,{className:"h-5 w-5 text-destructive flex-shrink-0 mt-0.5"}),titleClassName:"text-sm font-medium text-destructive",title:s("subscription.paymentPastDue"),descriptionClassName:"text-sm text-destructive mt-0.5",description:s("subscription.paymentPastDueDescription"),children:b&&e(ne,{variant:"outline",size:"sm",className:"mt-2 border-destructive/20 text-destructive hover:bg-destructive/15",onClick:()=>Pe("invoices"),children:s("subscription.viewInvoices")})}),A.subscription.subscriptionStatus===Na.PastDue&&A.subscription.dunningState&&A.subscription.dunningState!==Ia.None&&e(ri,{kind:"dunning",className:"px-5 py-3 bg-destructive/10 border-t border-destructive/20",icon:e(E,{className:"h-5 w-5 text-destructive flex-shrink-0 mt-0.5"}),titleClassName:"text-sm font-medium text-destructive",title:A.subscription.dunningState===Ia.Final?s("subscription.dunningFinal"):A.subscription.dunningState===Ia.Suspended?s("subscription.dunningSuspended"):s("subscription.dunningRecovery"),descriptionClassName:"text-sm text-destructive mt-0.5",description:A.subscription.dunningState===Ia.Suspended?s("subscription.dunningSuspendedDescription"):s("subscription.dunningRecoveryDescription")}),A.subscription.subscriptionStatus===Na.Paused&&e(ri,{kind:"paused",className:"px-5 py-3 bg-info/10 border-t border-info/20",icon:e(P,{className:"h-5 w-5 text-info flex-shrink-0 mt-0.5"}),titleClassName:"text-sm font-medium text-info",title:s("subscription.subscriptionPaused"),descriptionClassName:"text-sm text-info mt-0.5",description:s("subscription.subscriptionPausedDescription")}),A.subscription.cancelAtPeriodEnd&&e(ri,{kind:"cancel_scheduled",className:"px-5 py-3 bg-warning/10 border-t border-warning/30",icon:e(P,{className:"h-5 w-5 text-warning flex-shrink-0 mt-0.5"}),titleClassName:"text-sm font-medium text-warning",title:A.subscription.subscriptionStatus===Na.Trialing?s("subscription.scheduledTrialCancellation"):s("subscription.scheduledCancellation"),descriptionClassName:"text-sm text-warning mt-0.5",description:ti(r,A.subscription.subscriptionStatus===Na.Trialing&&A.subscription.trialEnd||A.subscription.stripeCurrentPeriodEnd)?a(t,{children:[A.subscription.subscriptionStatus===Na.Trialing?s("subscription.trialEndDescription"):s("subscription.cancelEndDescription")," ",e("span",{className:"font-medium",children:ti(r,A.subscription.subscriptionStatus===Na.Trialing&&A.subscription.trialEnd||A.subscription.stripeCurrentPeriodEnd)}),"."]}):s("subscription.cancelEndFallback")}),x&&A.planVersion&&e(ii,{planVersion:A.planVersion,subscriptionCurrency:l,billingInterval:o,seatPricingConfig:m,memberCount:v,includedSeats:S,billableSeats:y,perSeatPrice:p,intervalLabel:w})]})})():e(ye,{icon:e(M,{className:"h-5 w-5 text-muted-foreground"}),title:s("subscription.noSubscription"),description:s("subscription.noSubscriptionDescription"),action:g&&$&&$.length>0?e(ne,{size:"sm",onClick:()=>ge("empty_state"),children:s("subscription.viewPricingPlans")}):void 0})]}),!G&&!O&&!W&&e(ye,{title:s("subscription.errorLoading"),description:s("subscription.noPlansAvailable"),action:e(ne,{variant:"outline",size:"sm",progress:O,onClick:Me,children:s("settings.common.refreshAction",{loading:String(O)})})})]}),b&&"invoices"===Ee&&a("div",{id:"subscription-panel-invoices",role:"tabpanel","aria-labelledby":"subscription-tab-invoices",tabIndex:0,children:[O&&e(Se,{}),e(ai,{workspaceId:n,hasActiveSubscription:null!=A?.subscription,onViewPricingPlans:()=>Pe("subscription"),limit:20})]}),$&&$.length>0&&e(Y,{fallback:re?e("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-background/80 backdrop-blur-sm",children:a("div",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[e(d,{className:"h-5 w-5 animate-spin"}),e("span",{children:s("settings.common.loading")})]})}):null,children:e(di,{open:re,onOpenChange:ce,source:pe.current,planVersions:$,currentPlanVersionId:De||null,currentStripePriceId:A?.subscription?.stripePriceId,billingCurrency:i.billingCurrency,trialUsedAt:i.trialUsedAt,workspaceName:i.name,initialInterval:Ae.current?.interval,initialCurrency:Ae.current?.currency,currentMemberCount:Array.isArray(i?.users)?i.users.length:void 0,onSelectPlan:async(e,a=ha.Monthly,t)=>{if(!n)return;const r=$?.find(a=>a._id===e),c=t??Ue?.currency??A?.plan?.currency??i?.billingCurrency??"",l=r?Ra(r,c,a):null,d=A?.subscription?.stripePriceId;if(!l||!d||l!==d){Q(!0),ae(null),ie(null);try{const{successUrl:t,cancelUrl:i}=_a(n);let l;if(r?.plan?.isFreemium){return A?.subscription?.subscriptionId?(ce(!1),void ve("downgrade_to_free")):(await o.selectFreePlan(n,e),ce(!1),Ga(),await Me(),void ie(s("subscription.updateSuccess")))}const d=A?.subscription?.subscriptionStatus===Na.Canceled;if(l=A?.subscription&&!d?await T(e,{billingInterval:a,successUrl:t,cancelUrl:i}):await w({planVersionId:e,billingInterval:a,currency:c||void 0,successUrl:t,cancelUrl:i}),l&&"checkoutUrl"in l&&l.checkoutUrl)return void we(l.checkoutUrl);ie(s("subscription.updateSuccess")),await Me()}catch(e){const a=e instanceof Error?e.message:s("subscription.errorProcessing");ae(a)}finally{Q(!1),se(()=>{ae(null),ie(null)})}}},loading:X||O})}),e(ni,{resumeDialogOpen:Ce,setResumeDialogOpen:ke,resumeLoading:I,handleResumeSubscription:async()=>{if(n){ke(!1),Q(!0),ae(null),ie(null);try{await D(),fe("subscription_resumed",xe()),ie(s("subscription.resumeSuccess")),await Me()}catch(e){const a=e instanceof Error?e.message:s("subscription.errorResuming");ae(a)}finally{Q(!1),se(()=>{ae(null),ie(null)})}}},subscription:A}),e(si,{cancelDialogOpen:ue,setCancelDialogOpen:me,cancelLoading:U,handleCancelSubscription:async()=>{if(n){me(!1),Q(!0),ae(null),ie(null);try{await k(),fe("subscription_cancelled",xe()),ie(s("subscription.cancelSuccess")),await Me()}catch(e){const a=e instanceof Error?e.message:s("subscription.errorCanceling");ae(a)}finally{Q(!1),se(()=>{ae(null),ie(null)})}}},subscription:A})]}):e("div",{className:"border rounded-lg p-4 text-center text-muted-foreground",children:e("p",{children:s("subscription.invalidWorkspace")})})};function mi(e){return e.replace(/[_-]/g," ").replace(/\b\w/g,e=>e.toUpperCase())}function pi(e){try{const a=new Date(e);if(isNaN(a.getTime()))return null;const t=new Date;return Math.ceil((a.getTime()-t.getTime())/864e5)}catch{return null}}const gi=()=>{const{quotas:t,loading:i,error:n,refetch:s}=Ba(),{t:c,formattingLocale:o,fmtNum:l}=q(),{can:d}=oe(),{response:u}=La(),[m,p]=z(!1),g=V(()=>{const e={};if(!u?.planVersion||!u?.subscription)return e;const a=u.planVersion,i=u.subscription,n=i.billingInterval??"monthly",s=i.plan?.currency??"usd";if(!t)return e;for(const i of Object.keys(t)){const r=Ka(a,s,i,n);if(null==r||r<=0)continue;const c=a.quotas?.[i],o=c?.[n],l=o?.unitSize??1,d=t[i].overage,u=(l>1?Math.ceil(d/l):d)*r;e[i]={overageCents:r,unitSize:l,currency:s,estimatedCostCents:u}}return e},[u,t]),f=V(()=>{const e=u?.subscription?.usageCurrentPeriodEnd||u?.subscription?.stripeCurrentPeriodEnd;if(!e)return null;const a=ua(e,o);return a?{endDate:a,daysRemaining:pi(e)}:null},[u,o]),h=async()=>{p(!0);try{await s()}finally{p(!1)}};if(i&&!t)return e(bt,{});if(!d(de.WORKSPACE_USAGE_VIEW))return null;if(n)return e(Ne,{variant:"error",title:c("usage.errorLoading"),message:n,actionLabel:c("settings.common.retryAction",{loading:String(m)}),onAction:h,actionDisabled:m});const b=function(e){return[...e].sort(([,e],[,a])=>{if(e.hasOverage&&!a.hasOverage)return-1;if(!e.hasOverage&&a.hasOverage)return 1;const t=e.included>0?e.consumed/e.included:e.consumed>0?1:0;return(a.included>0?a.consumed/a.included:a.consumed>0?1:0)-t})}(t?Object.entries(t):[]);if(0===b.length)return e(ye,{icon:e(U,{className:"h-5 w-5 text-muted-foreground"}),title:c("usage.noData"),description:c("usage.noDataHint"),action:e(ne,{variant:"outline",size:"sm",progress:m,onClick:h,children:c("settings.common.refreshAction",{loading:String(m)})})});const x=b.filter(([,e])=>e.hasOverage).length,v=b.length>0?Math.round(b.reduce((e,[,a])=>e+(a.included>0?a.consumed/a.included*100:0),0)/b.length):0,N=Object.values(g).reduce((e,a)=>e+a.estimatedCostCents,0),A=Object.values(g)[0]?.currency??"usd",S=e=>se(e,A,o);return a("div",{className:"space-y-4",children:[a("div",{className:"flex items-center justify-between",children:[e("p",{className:"text-sm text-muted-foreground",children:c("usage.description")}),a(ne,{variant:"ghost",size:"sm",onClick:h,disabled:m,children:[e(r,{className:ie("h-3.5 w-3.5 me-1.5",m&&"animate-spin")}),c("settings.common.refreshAction",{loading:String(m)})]})]}),f&&a("div",{className:"flex items-center gap-2 rounded-lg border border-border bg-muted/30 px-4 py-3 text-sm text-muted-foreground",children:[e(P,{className:"h-4 w-4 text-muted-foreground/70 flex-shrink-0"}),a("span",{children:[c("usage.resetDateDisplay",{date:f.endDate}),null!==f.daysRemaining&&f.daysRemaining>0&&a("span",{className:"text-muted-foreground",children:[" ","(",c("usage.daysRemainingDisplay",{count:f.daysRemaining}),")"]}),null!==f.daysRemaining&&f.daysRemaining<=0&&a("span",{className:"text-warning font-medium",children:[" (",c("usage.renewingSoon"),")"]})]})]}),a("div",{className:"grid grid-cols-2 sm:grid-cols-3 gap-2 sm:gap-3",children:[a("div",{className:"border border-border rounded-lg p-3 sm:p-4",children:[e("p",{className:"text-xs text-muted-foreground font-medium",children:c("usage.totalResources")}),e("p",{className:"text-lg sm:text-xl font-semibold text-foreground mt-1",children:l(b.length)})]}),a("div",{className:"border border-border rounded-lg p-3 sm:p-4",children:[e("p",{className:"text-xs text-muted-foreground font-medium",children:c("usage.overallUsage")}),e("p",{className:"text-lg sm:text-xl font-semibold text-foreground mt-1",children:l(v)+"%"})]}),a("div",{className:ie("border rounded-lg p-3 sm:p-4",x>0?"border-destructive/20 bg-destructive/10":"border-border"),children:[e("p",{className:"text-xs text-muted-foreground font-medium",children:c("usage.inOverage")}),e("p",{className:ie("text-lg sm:text-xl font-semibold mt-1",x>0?"text-destructive":"text-foreground"),children:l(x)})]}),x>0&&N>0&&a("div",{className:"border border-destructive/20 bg-destructive/10 rounded-lg p-3 sm:p-4",children:[e("p",{className:"text-xs text-muted-foreground font-medium",children:c("usage.estOverageCost")}),e("p",{className:"text-lg sm:text-xl font-semibold mt-1 text-destructive",children:S(N)})]})]}),x>0&&e("div",{className:"bg-warning/10 border border-warning/30 rounded-lg p-4",children:a("div",{className:"flex items-start gap-3",children:[e(E,{className:"h-5 w-5 text-warning flex-shrink-0 mt-0.5 hidden sm:block"}),a("div",{className:"flex-1",children:[e("h3",{className:"text-sm font-semibold text-warning mb-1",children:c("usage.overageDetected")}),e("p",{className:"text-sm text-warning",children:c("usage.overageWarning",{count:x})}),N>0&&e("p",{className:"text-sm text-warning font-medium mt-1",children:c("usage.estOverageCharges",{amount:S(N)})})]})]})}),e("div",{className:"space-y-3",children:b.map(([a,t])=>{const i=(n=t.consumed,(s=t.included)<=0?n>0?100:0:Math.min(n/s*100,100));var n,s;const r=function(e,a){return a?{bar:"bg-destructive",bg:"bg-destructive/15",badge:"bg-destructive/15",badgeText:"text-destructive"}:e>=90?{bar:"bg-warning",bg:"bg-warning/15",badge:"bg-warning/15",badgeText:"text-warning"}:e>=75?{bar:"bg-warning/70",bg:"bg-warning/15",badge:"bg-warning/15",badgeText:"text-warning"}:{bar:"bg-info",bg:"bg-info/15",badge:"bg-info/15",badgeText:"text-info"}}(i,t.hasOverage),c=g[a];return e(fi,{slug:a,quota:t,percent:i,colors:r,pricing:c},a)})})]})};function fi({slug:t,quota:i,percent:n,colors:s,pricing:r}){const{t:c,formattingLocale:o}=q(),l=e=>function(e,a){return new Intl.NumberFormat(a,{notation:"compact",maximumFractionDigits:1}).format(e)}(e,o),d=(e,a)=>se(e,a,o);return a("div",{className:"border border-border rounded-lg p-4 sm:p-5",children:[a("div",{className:"flex flex-wrap items-center justify-between gap-y-1 mb-3",children:[a("div",{className:"flex items-center gap-2 min-w-0",children:[e("h3",{className:"text-sm font-medium text-foreground truncate",children:mi(t)}),i.hasOverage&&e("span",{className:ie("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",s.badge,s.badgeText),children:c("usage.overage")}),!i.hasOverage&&n>=90&&e("span",{className:ie("inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",s.badge,s.badgeText),children:c("usage.almostFull")})]}),a("span",{className:"text-sm text-muted-foreground whitespace-nowrap",children:[l(i.consumed)," / ",l(i.included)]})]}),e("div",{role:"progressbar","aria-valuenow":Math.round(n),"aria-valuemin":0,"aria-valuemax":100,"aria-label":mi(t),className:ie("h-2 rounded-full w-full",s.bg),children:e("div",{className:ie("h-2 rounded-full transition-all duration-500",s.bar),style:{width:`${n}%`}})}),a("div",{className:"flex items-center justify-between mt-2 text-xs text-muted-foreground",children:[e("span",{children:c("usage.percentUsed",{percent:Math.round(n)})}),e("span",{children:i.available>0?c("usage.availableRemaining",{count:l(i.available)}):i.hasOverage?c("usage.overLimitCount",{count:l(i.overage)}):c("usage.fullyUsed")})]}),i.hasOverage&&r&&a("div",{className:"mt-3 pt-3 border-t border-border space-y-2",children:[a("div",{className:"flex items-center justify-between text-xs",children:[e("span",{className:"text-muted-foreground",children:c("usage.overageUnits")}),e("span",{className:"font-medium text-foreground",children:l(i.overage)})]}),a("div",{className:"flex items-center justify-between text-xs",children:[e("span",{className:"text-muted-foreground",children:c("usage.rate")}),e("span",{className:"font-medium text-foreground",children:c("usage.rateDisplay",{rate:d(r.overageCents,r.currency),unitSize:r.unitSize})})]}),r.unitSize>1&&a("div",{className:"flex items-center justify-between text-xs",children:[e("span",{className:"text-muted-foreground",children:c("usage.billableBlocks")}),e("span",{className:"font-medium text-foreground",children:l(Math.ceil(i.overage/r.unitSize))})]}),a("div",{className:"flex items-center justify-between text-xs pt-2 border-t border-border",children:[e("span",{className:"font-medium text-destructive",children:c("usage.estimatedCharge")}),e("span",{className:"font-semibold text-destructive",children:d(r.estimatedCostCents,r.currency)})]})]}),!i.hasOverage&&r&&e("div",{className:"mt-2 text-xs text-muted-foreground",children:c("usage.overageRateDisplay",{rate:c("usage.rateDisplay",{rate:d(r.overageCents,r.currency),unitSize:r.unitSize})})})]})}const hi=mt.Root,bi=W.forwardRef(({className:t,children:i,...n},s)=>a(mt.Trigger,{ref:s,className:ie("flex h-10 sm:h-9 w-full items-center justify-between rounded-md border border-input bg-transparent px-3 py-2 text-base sm:text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50",t),...n,children:[i,e(mt.Icon,{asChild:!0,children:e(lt,{className:"h-4 w-4 opacity-50"})})]}));bi.displayName=mt.Trigger.displayName;const xi=W.forwardRef(({className:a,children:t,position:i="popper",...n},s)=>{const{container:r}=W.useContext(Oa);return e(mt.Portal,{container:r,children:e(mt.Content,{ref:s,className:ie("relative z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===i&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:i,...n,children:e(mt.Viewport,{className:ie("p-1","popper"===i&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:t})})})});xi.displayName=mt.Content.displayName;W.forwardRef(({className:a,...t},i)=>e(mt.Label,{ref:i,className:ie("px-2 py-1.5 text-sm font-semibold",a),...t})).displayName=mt.Label.displayName;const vi=W.forwardRef(({className:t,children:i,...n},s)=>a(mt.Item,{ref:s,className:ie("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 ps-2 pe-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...n,children:[e("span",{className:"absolute end-2 flex h-3.5 w-3.5 items-center justify-center",children:e(mt.ItemIndicator,{children:e(dt,{className:"h-4 w-4"})})}),e(mt.ItemText,{children:i})]}));vi.displayName=mt.Item.displayName;W.forwardRef(({className:a,...t},i)=>e(mt.Separator,{ref:i,className:ie("-mx-1 my-1 h-px bg-muted",a),...t})).displayName=mt.Separator.displayName;const Ni=({workspace:i})=>{const{user:n}=Wa(),{t:s,fmtNum:r,fmtCents:c}=q(),[o,l]=z(0),[u,m]=z(!1),[p,g]=z(!1),[f,h]=z([]),[b,x]=z(null),{getUsers:v,removeUser:N,updateUser:A}=Ee(),{settings:S}=Pe(),{can:y}=oe(),{visible:T}=le(),{response:C}=La(),w=Fa(S),k=Va(za({canView:y(de.WORKSPACE_MEMBERS_VIEW)})?i?._id:null),E=ja(i,{settingsMaxUsers:S?.workspace?.maxWorkspaceUsers,pendingInvitations:k.pendingCount});j(()=>{i&&(m(!0),v(i._id).then(e=>{h(e)}).catch(e=>{Ke(e,{component:"WorkspaceSettingsUsers",action:"getUsers",metadata:{workspaceId:i._id}})}).finally(()=>{m(!1),g(!0)}))},[i,o,v]);const P=()=>{l(e=>e+1)};if(!p||!i)return e(bt,{});const M=e=>"string"==typeof e?{name:s("users.unknownUser"),email:e,id:e,role:"-"}:{name:e.name||s("users.unknownUser"),email:e.email,id:e._id},U=f.map(e=>({...e,...M(e.user)})),I=T(e=>e.settings?.users?.invite,de.WORKSPACE_MEMBERS_INVITE),R=T(e=>e.settings?.users?.remove,de.WORKSPACE_MEMBERS_REMOVE),_=T(e=>e.settings?.users?.roleChange,de.WORKSPACE_MEMBERS_ROLE_CHANGE),G=T(e=>e.settings?.users?.seatPricing),B=T(e=>e.settings?.users?.invitations,de.WORKSPACE_MEMBERS_VIEW),{hasSeatPricing:L,includedSeats:K,maxUsers:O,canInvite:W,inviteBlockReason:F,inviteBlockMessageKey:V,inviteBlockMessageValues:H,perSeatPriceCents:J,currency:Y}=E,Z=f.length+k.pendingCount,$=C?.subscription?.billingInterval??"monthly",X=L&&Z>=K;return a("div",{children:[!y(de.WORKSPACE_MEMBERS_INVITE)&&!y(de.WORKSPACE_MEMBERS_REMOVE)&&!y(de.WORKSPACE_MEMBERS_ROLE_CHANGE)&&e(ht,{descriptionKey:"users.adminOnly"}),I&&w&&e("div",{className:"mb-4",children:W?a("div",{children:[e(Ai,{onInvite:()=>{P(),k.refresh().catch(()=>{})},workspaceId:i._id}),G&&X&&null!=J&&J>0&&e("div",{className:"flex items-center gap-1.5 mt-2 text-xs text-warning bg-warning/10 px-3 py-1.5 rounded-md",children:e("span",{children:s("users.extraSeatCost",{price:c(J,Y),interval:$})})})]}):e("div",{className:"flex items-center justify-between p-3 bg-destructive/10 border border-destructive/20 rounded-md",children:a("div",{children:[e("p",{className:"text-sm font-medium text-destructive",children:s("users.limitReached",{reason:F??"member_limit_reached"})}),e("p",{className:"text-xs text-destructive mt-0.5",children:V?s(V,H??void 0):""})]})})}),G&&(L||O>0)&&a("div",{className:"mb-4 rounded-lg border bg-muted/50 p-4",children:[a("div",{className:"flex items-center justify-between mb-2",children:[e("h4",{className:"text-sm font-medium text-foreground",children:s("users.seatHeading",{hasSeatPricing:String(L)})}),O>0&&a("span",{className:"text-xs font-medium px-2 py-0.5 rounded-full "+(Z>=O?"bg-destructive/15 text-destructive":Z>=.8*O?"bg-warning/15 text-warning":"bg-success/15 text-success"),children:[r(Z)," / ",r(O)]})]}),O>0&&e("div",{role:"progressbar","aria-valuenow":Z,"aria-valuemin":0,"aria-valuemax":O,"aria-label":s("users.seatHeading"),className:"w-full h-1.5 bg-muted rounded-full mb-3",children:e("div",{className:"h-1.5 rounded-full transition-all "+(Z>=O?"bg-destructive":Z>=.8*O?"bg-warning":"bg-success"),style:{width:`${Math.min(100,Z/O*100)}%`}})}),a("div",{className:"flex items-center justify-between text-sm text-muted-foreground",children:[e("div",{children:L?a(t,{children:[e("span",{className:"text-foreground font-medium",children:r(K)})," ",s("users.included"),null!=J&&J>0&&a("span",{className:"text-muted-foreground/70",children:[" ","· ",c(J,Y),s("users.perExtraSeat")]})]}):a("span",{children:[e("span",{className:"text-foreground font-medium",children:r(O)})," ",s("users.maxMembers")]})}),O>0?a("span",{children:[r(Math.max(0,O-Z))," ",s("users.available")]}):e("span",{className:"text-muted-foreground/70",children:s("users.noMemberLimit")})]}),k.pendingCount>0&&e("p",{className:"mt-2 text-xs text-muted-foreground",children:s("users.invitations.seatNote",{count:k.pendingCount})})]}),B&&e(Si,{state:k,canResend:I&&w,canRevoke:I,onChanged:P}),a("div",{className:"mb-4 flex items-center justify-between",children:[e("div",{children:e("div",{className:"text-sm text-muted-foreground",children:s("users.memberCount",{count:f.length})})}),e("div",{children:e(ne,{variant:"ghost",size:"sm",onClick:P,progress:u,children:s("settings.common.refreshAction",{loading:String(u)})})})]}),e("ul",{className:"space-y-2",children:U.map((t,r)=>{const c=t.id===n?.id,o=("object"==typeof i.createdBy&&null!==i.createdBy?i.createdBy._id:i.createdBy)===t.id;return a("li",{className:"border rounded-md p-3",children:[a("div",{className:"flex items-center justify-between gap-2",children:[a("div",{className:"flex items-center gap-2 sm:gap-3 min-w-0",children:[e("div",{className:"w-8 h-8 bg-muted rounded-full flex items-center justify-center text-sm font-medium shrink-0",children:t.name.charAt(0).toUpperCase()}),a("div",{className:"min-w-0",children:[e("div",{className:"font-medium text-sm truncate",children:t.name}),e("div",{className:"text-xs text-muted-foreground truncate",children:t.email})]})]}),a("div",{className:"flex items-center gap-1 shrink-0",children:[c&&e("span",{className:"text-xs bg-info/15 text-info px-2 py-0.5 rounded",children:s("users.you")}),o&&e("span",{className:"text-xs bg-primary/10 text-primary px-2 py-0.5 rounded",children:s("users.owner")})]})]}),_&&a("div",{className:"flex items-center gap-2 mt-2 pt-2 border-t border-border/60 sm:mt-0 sm:pt-0 sm:border-0",children:[a("div",{className:"relative flex-1 sm:flex-initial",children:[a(hi,{disabled:c||!_||o||b===t.id,value:t.role,onValueChange:e=>{return a=i._id,n=t.id,s=e,void($a(i,n)?Ke(new Error("Cannot change the role of the workspace owner"),{component:"WorkspaceSettingsUsers",action:"handleUpdateRole",metadata:{workspaceId:a,userId:n,role:s}}):(x(n),A(a,n,{role:s}).then(()=>{P()}).catch(e=>{Ke(e,{component:"WorkspaceSettingsUsers",action:"handleUpdateRole",metadata:{workspaceId:a,userId:n,role:s}})}).finally(()=>{x(null)})));var a,n,s},children:[e(bi,{children:e(pt,{placeholder:s("users.selectRole")})}),e(xi,{children:(S?.workspace?.roles??i?.roles??[]).map(a=>e(vi,{value:a,children:a},a))})]}),b===t.id&&e("div",{className:"absolute end-8 top-1/2 -translate-y-1/2 pointer-events-none",children:e(d,{className:"h-4 w-4 animate-spin text-muted-foreground"})})]}),!c&&!o&&R&&e(ne,{variant:"destructive",size:"sm",startIcon:e(D,{}),"aria-label":s("settings.common.delete"),onClick:()=>{return e=t.id,void($a(i,e)?Ke(new Error("Cannot remove the workspace owner"),{component:"WorkspaceSettingsUsers",action:"handleRemoveUser",metadata:{workspaceId:i._id,userId:e}}):N(i._id,e).then(()=>{P()}).catch(a=>{Ke(a,{component:"WorkspaceSettingsUsers",action:"handleRemoveUser",metadata:{workspaceId:i._id,userId:e}})}));var e}})]})]},t.id??r)})}),0===f.length&&e("div",{className:"text-center py-8 text-muted-foreground",children:s("users.noMembers")})]})};function Ai({onInvite:t,workspaceId:i}){const{t:n}=q(),{inviteMember:s,getWorkspace:r}=Ee(),{settings:c}=Pe(),[o,l]=z(""),[d,u]=z(null),m=c?.workspace.roles??d?.roles??[],p=Ha(m,c?.workspace.defaultRole),[g,f]=z(p),[h,b]=z(!1),[x,v]=z(null),[N,A]=z(null),S=li();j(()=>{!g&&p&&f(p)},[p]),j(()=>{i&&r(i).then(u).catch(e=>{Ke(e,{component:"InviteMember",action:"getWorkspace"})})},[i]);const y=()=>{v(null),A(null),l(""),f(p)};return a("div",{className:"flex gap-2 flex-col gap-y-2",children:[x&&e(Ne,{variant:"error",message:x}),N&&e(Ne,{variant:"success",message:N}),a("div",{children:[e(Ze,{children:n("users.inviteByEmail")}),e(Je,{type:"email",value:o,onChange:e=>l(e.target.value),placeholder:n("users.emailPlaceholder")})]}),a("div",{children:[e(Ze,{children:n("users.role")}),a(hi,{value:g,onValueChange:f,children:[e(bi,{children:e(pt,{placeholder:n("users.selectRole")})}),e(xi,{children:m.map(a=>e(vi,{value:a,children:a},a))})]})]}),e("div",{children:e(ne,{progress:h,onClick:async()=>{const e=o.trim();if(!e)return void v(n("users.emailRequired"));/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)?(b(!0),v(null),A(null),await s(i,e,g).then(()=>{A(n("users.invitations.sent",{email:e})),t?.()}).catch(a=>{Ke(a,{component:"InviteMember",action:"inviteMember",metadata:{workspaceId:i,email:e,role:g}}),v(a instanceof Error?a.message:n("users.inviteFailed"))}).finally(()=>{b(!1),S(y,6e3)})):v(n("users.invalidEmail"))},disabled:h||!o||!g,children:h?n("users.inviting"):n("users.inviteAs",{role:g})})})]})}function Si({state:i,canResend:n,canRevoke:s,onChanged:r}){const{t:c,formattingLocale:o}=q(),{formats:l}=Ja(),{invitations:d,loading:u,error:m,busy:p,resend:g,revoke:f}=i,[h,b]=z(null),[x,v]=z(null),N=li(),[,A]=z(0);if(j(()=>{if(!d.some(e=>Ya(e)>0))return;const e=setInterval(()=>A(e=>e+1),1e3);return()=>clearInterval(e)},[d]),!u&&0===d.length&&!m)return null;const S=e=>e?ua(e,o,l?.date??{dateStyle:"medium"}):"";return a("div",{className:"mb-4",children:[a("div",{className:"mb-2 flex items-center justify-between",children:[e("h4",{className:"text-sm font-medium text-foreground",children:c("users.invitations.title")}),e("span",{className:"text-xs text-muted-foreground",children:c("users.invitations.pendingCount",{count:i.pendingCount})})]}),m&&e(Ne,{variant:"error",message:m}),x&&e(Ne,{variant:"success",message:x}),e("ul",{className:"space-y-2",children:d.map(i=>{const o=Za(i),l="invited"===i.status&&!o,d=l?Ya(i):0,u=p===i._id;return e("li",{className:"rounded-md border p-3",children:a("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[a("div",{className:"min-w-0",children:[a("div",{className:"flex flex-wrap items-center gap-1.5",children:[e("span",{className:"truncate text-sm font-medium",children:i.email}),e("span",{className:"rounded bg-muted px-2 py-0.5 text-xs",children:i.role}),e("span",{className:"rounded px-2 py-0.5 text-xs "+(l?"bg-info/15 text-info":"accepted"===i.status?"bg-success/15 text-success":"bg-muted text-muted-foreground"),children:c(`users.invitations.status.${o?"expired":i.status}`)})]}),a("div",{className:"text-xs text-muted-foreground",children:[c("users.invitations.sentAt",{date:S(i.lastSentAt??i.invitedAt)}),l&&i.validTill&&a(t,{children:[" · ",c("users.invitations.expiresAt",{date:S(i.validTill)})]})]})]}),(n&&(l||o)||s&&l)&&a("div",{className:"flex shrink-0 items-center gap-2",children:[n&&e(ne,{variant:"outline",size:"sm",disabled:u||d>0,progress:u,onClick:()=>(e=>{g(e._id).then(()=>{v(c("users.invitations.sent",{email:e.email})),N(()=>v(null),6e3),r()}).catch(()=>{})})(i),children:d>0?c("users.invitations.resendIn",{minutes:Math.max(1,Math.ceil(d/60))}):c("users.invitations.resend")}),s&&l&&e(ne,{variant:"destructive",size:"sm",disabled:u,onClick:()=>b(i),children:c("users.invitations.revoke")})]})]})},i._id)})}),e(Me,{open:null!==h,onOpenChange:e=>!e&&b(null),children:a(De,{children:[a(Ie,{children:[e(Re,{children:c("users.invitations.revokeTitle")}),e(_e,{children:c("users.invitations.revokeConfirm",{email:h?.email??""})})]}),a(Ge,{children:[e(Be,{children:c("settings.common.cancel")}),e(Le,{onClick:()=>{return h&&(e=h,b(null),void f(e._id).then(r).catch(()=>{}));var e},className:"bg-destructive hover:bg-destructive/90 focus:ring-destructive",children:c("users.invitations.revoke")})]})]})})]})}const yi=({workspace:t,section:n,setSection:s})=>{const{t:r}=q(),{settings:c}=Pe(),{appPermissions:o}=sa(),{visible:l}=le(),d=qa(c),m=ra(c,o).length>0,p=(e,a)=>l(a=>a.settings?.sections?.[e],a),f=p(Xa.Profile),h=p(Xa.Security),b=p(Xa.Devices),x=p(Xa.ConnectedAgents),v=p(Xa.General,de.WORKSPACE_SETTINGS_VIEW),N=p(Xa.Users,de.WORKSPACE_MEMBERS_VIEW),S=p(Xa.Subscription,de.WORKSPACE_BILLING_VIEW),y=p(Xa.Usage,de.WORKSPACE_USAGE_VIEW),T=p(Xa.Credits,de.WORKSPACE_BILLING_VIEW),C=p(Xa.Features,de.WORKSPACE_FEATURES_VIEW),w=p(Xa.Notifications),k=p(Xa.Permissions)&&m,P=p(Xa.Danger,de.WORKSPACE_DELETE)&&d,D=f||h||b||x,K=v||N||S||y||T||C||w||k||P,O=(a,t,i)=>e(et,{icon:t,label:i,active:n===a,onClick:()=>s(a)});return a("div",{className:"w-full sm:w-56 sm:h-full flex flex-col space-y-4 sm:space-y-6 shrink-0",children:[t&&e("div",{className:"sticky top-0 z-10 bg-muted border-b p-2 py-4 pe-10 sm:pe-2",children:a("div",{className:"flex items-center gap-x-2",children:[t.image&&t.image.trim()&&e("div",{className:"bg-info/15 rounded flex items-center justify-center text-info font-medium px-0.5 py-0.5",style:{width:"40px",height:"40px",minWidth:"40px",minHeight:"40px"},children:e("img",{src:t.image,className:"w-full h-full object-contain",style:{width:"36px",height:"36px",maxWidth:"36px",maxHeight:"36px",objectFit:"contain"},alt:t.name})}),a("div",{className:ie("flex-1 min-w-0",t.image?"":"ps-2"),children:[e("div",{className:"font-medium text-sm line-clamp-1 text-ellipsis overflow-hidden",children:t.name}),e("div",{className:"text-xs text-muted-foreground",children:t.workspaceId})]})]})}),D&&a(Qa,{title:r("settings.sidebar.account"),children:[f&&O(Xa.Profile,e(I,{className:"h-3.5 w-3.5"}),r("settings.sidebar.profile")),h&&O(Xa.Security,e(A,{className:"h-3.5 w-3.5"}),r("settings.sidebar.security")),b&&O(Xa.Devices,e(R,{className:"h-3.5 w-3.5"}),r("settings.sidebar.devices")),x&&O(Xa.ConnectedAgents,e(_,{className:"h-3.5 w-3.5"}),r("security.connectedAgentsTitle"))]}),K&&a(Qa,{title:r("settings.sidebar.workspace"),children:[v&&O(Xa.General,e(G,{className:"h-3.5 w-3.5"}),r("settings.sidebar.general")),N&&O(Xa.Users,e(B,{className:"h-3.5 w-3.5"}),r("settings.sidebar.users")),S&&O(Xa.Subscription,e(M,{className:"h-3.5 w-3.5"}),r("settings.sidebar.subscription")),y&&O(Xa.Usage,e(U,{className:"h-3.5 w-3.5"}),r("settings.sidebar.usage")),T&&O(Xa.Credits,e(i,{className:"h-3.5 w-3.5"}),r("settings.sidebar.credits")),C&&O(Xa.Features,e(u,{className:"h-3.5 w-3.5"}),r("settings.sidebar.features")),w&&O(Xa.Notifications,e(g,{className:"h-3.5 w-3.5"}),r("settings.sidebar.notifications")),k&&O(Xa.Permissions,e(L,{className:"h-3.5 w-3.5"}),r("settings.sidebar.permissions")),P&&O(Xa.Danger,e(E,{className:"h-3.5 w-3.5"}),r("settings.sidebar.danger"))]})]})},Ti={[Xa.Profile]:"settings.titles.profile",[Xa.Security]:"settings.titles.security",[Xa.Devices]:"settings.titles.devices",[Xa.ConnectedAgents]:"security.connectedAgentsTitle",[Xa.General]:"settings.titles.general",[Xa.Users]:"settings.titles.users",[Xa.Subscription]:"settings.titles.subscription",[Xa.Usage]:"settings.titles.usage",[Xa.Credits]:"settings.titles.credits",[Xa.Features]:"settings.titles.features",[Xa.Notifications]:"settings.titles.notifications",[Xa.Permissions]:"settings.titles.permissions",[Xa.Danger]:"settings.titles.danger"},Ci=({ui:a,...t})=>{const i=Ja(),n=V(()=>at(i,a),[i,a]);return a?e(tt,{ui:n,children:e(wi,{...t})}):e(wi,{...t})},wi=({workspace:t,onClose:i,open:n,onOpenChange:s,defaultSection:r=Xa.Profile,section:c,onSectionChange:o,showTrigger:l=!0,trigger:d})=>{const{t:u,dir:m}=q(),{visible:p}=le(),[g,f]=z(!1),[h,b]=z(r),x=void 0!==n?n:g,v=s||f,N=void 0!==c?c:h,A=o||b,S=e=>p(a=>a.settings?.sections?.[e]),y=S(N)?N:Object.values(Xa).find(S)??null,T=void 0===c&&r===Xa.Profile,[C,w]=z(T),k=J(y),E=J(null),P=J(null),M=J(C);j(()=>{M.current!==C&&(M.current=C,"undefined"==typeof window||window.innerWidth>=640||(C?P:E).current?.focus())},[C]),j(()=>{k.current!==y&&(k.current=y,w(!1))},[y]),j(()=>{x&&w(T)},[x]);const{emit:U}=Ea(),D=J(!1),I=J(null);j(()=>x?y?D.current?void(I.current!==y&&(I.current=y,U("workspace_settings_section_viewed",{section:y}))):(D.current=!0,I.current=y,void U("workspace_settings_opened",{section:y})):void 0:(D.current=!1,void(I.current=null)),[x,y,U]);if(!t||!y)return null;const R=e(ne,{variant:"outline",size:"icon","aria-label":u("settings.common.openSettings"),children:e(K,{className:"h-4 w-4"})});return a(X,{open:x,onOpenChange:e=>{v(e),!e&&i&&i()},children:[l&&e(it,{asChild:!0,children:d||R}),a(Q,{dir:m,className:"flex flex-col sm:flex-row max-w-2xl min-w-full md:min-w-[800px] xl:min-w-[960px] p-0 m-0 bg-muted h-dvh max-h-dvh sm:h-auto sm:max-h-[90vh] sm:min-h-[600px] overflow-hidden gap-x-0 space-x-0",children:[e(ae,{className:"sr-only",children:u(Ti[y])}),e("div",{ref:P,tabIndex:-1,className:ie("flex-col flex-1 min-h-0 overflow-y-auto overscroll-contain px-2 pb-2 sm:p-0 sm:flex sm:flex-none focus:outline-none",C?"flex":"hidden"),children:e(yi,{workspace:t,section:y,setSection:e=>{A(e),w(!1)}})}),a("div",{ref:E,tabIndex:-1,className:ie("flex-1 p-4 sm:p-6 overflow-auto flex-col bg-background sm:flex focus:outline-none",C?"hidden":"flex"),children:[a("div",{className:"flex items-center gap-1 mb-4 pe-10 sm:pe-0",children:[e(ne,{variant:"ghost",size:"icon",className:"sm:hidden -ms-2 shrink-0 text-muted-foreground","aria-label":u("settings.common.back"),onClick:()=>w(!0),children:e(O,{className:"h-5 w-5 rtl:rotate-180"})}),e(ee,{className:"text-xl font-semibold min-w-0 truncate",children:u(Ti[y])})]}),a("div",{className:"sm:max-h-[500px] xl:max-h-[65vh] overflow-y-auto",children:[y===Xa.Profile&&e(Xt,{workspace:t}),y===Xa.Security&&e(Qt,{}),y===Xa.Devices&&e(St,{}),y===Xa.ConnectedAgents&&e(gt,{}),y===Xa.General&&e(wt,{workspace:t}),y===Xa.Users&&e(Ni,{workspace:t}),y===Xa.Subscription&&e(ui,{workspace:t}),y===Xa.Usage&&e(gi,{}),y===Xa.Credits&&e(vt,{workspace:t}),y===Xa.Features&&e(Ct,{workspaceId:t._id?.toString()}),y===Xa.Notifications&&e(Mt,{workspace:t}),y===Xa.Permissions&&e(Dt,{workspace:t}),y===Xa.Danger&&e(At,{workspace:t})]})]})]})]})};export{Xa as SettingsScreen,Ci as WorkspaceSettingsDialog,Ci as default};
|