ultisuite-client/out/_next/static/chunks/3183.c2a261c3fbbecb64.js
R3D347HR4Y d6d18f911b
Some checks failed
E2E / Playwright e2e (push) Has been cancelled
Lots of stuff and mobile app
2026-06-17 00:13:28 +02:00

5 lines
22 KiB
JavaScript

"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3183],{7:(e,r,t)=>{t.d(r,{y:()=>s});var a=t(4208);function s({title:e,description:r}){return(0,a.jsxs)("header",{className:"mb-6",children:[(0,a.jsx)("h2",{className:"text-lg font-medium text-foreground",children:e}),r?(0,a.jsx)("p",{className:"mt-1 text-sm text-muted-foreground",children:r}):null]})}},2336:(e,r,t)=>{t.d(r,{BQ:()=>d,QL:()=>l,v8:()=>o});var a=t(98306),s=t(39927),n=t(17745),i=t(94927);function l(e="org"){return(0,a.I)({queryKey:["admin","ai","usage",e],queryFn:()=>i.uE.get(`/admin/ai/usage?scope=${e}`),staleTime:3e4})}function d(){return(0,a.I)({queryKey:["admin","ai","pricing"],queryFn:async()=>(await i.uE.get("/admin/ai/pricing")).prices??[],staleTime:6e4})}function o(e){let r=(0,s.jE)();return(0,n.n)({mutationFn:r=>i.uE.put(`/admin/users/${e}/ai-policy`,r),onSuccess:()=>{r.invalidateQueries({queryKey:["admin","ai"]})}})}},6078:(e,r,t)=>{t.d(r,{v:()=>i});var a=t(4208),s=t(61554),n=t(18747);function i({isFetching:e,isError:r,onRetry:t}){let{ready:s,authenticated:d}=(0,n.v)();return!s||e?null:d?r?(0,a.jsx)(l,{onRetry:t}):null:(0,a.jsx)("p",{className:"mb-4 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-900 dark:border-amber-900/40 dark:bg-amber-950/30 dark:text-amber-200",children:"Connectez-vous pour synchroniser avec le serveur. Les r\xe9glages locaux restent disponibles hors ligne."})}function l({onRetry:e}){return(0,a.jsxs)("div",{className:"mb-4 flex flex-wrap items-center gap-2 rounded-lg border border-destructive/30 bg-destructive/5 px-3 py-2 text-xs text-destructive",children:[(0,a.jsx)("span",{children:"\xc9chec de synchronisation avec le serveur."}),e?(0,a.jsx)(s.$,{type:"button",variant:"outline",size:"sm",className:"h-7",onClick:e,children:"R\xe9essayer"}):null]})}},12154:(e,r,t)=>{t.d(r,{d:()=>i});var a=t(4208);t(91356);var s=t(56235),n=t(58113);function i({className:e,...r}){return(0,a.jsx)(s.bL,{"data-slot":"switch",className:(0,n.cn)("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/50 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e),...r,children:(0,a.jsx)(s.zi,{"data-slot":"switch-thumb",className:"bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0"})})}},19096:(e,r,t)=>{t.d(r,{J:()=>i});var a=t(4208);t(91356);var s=t(84068),n=t(58113);function i({className:e,...r}){return(0,a.jsx)(s.b,{"data-slot":"label",className:(0,n.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",e),...r})}},25729:(e,r,t)=>{t.d(r,{KT:()=>o,Kk:()=>u,XE:()=>m,hY:()=>h,u8:()=>c,wB:()=>x});var a=t(4208),s=t(19096),n=t(12154),i=t(30925),l=t(58113);let d=(0,l.cn)("rounded-xl border border-mail-border bg-mail-surface shadow-sm","dark:bg-mail-surface-elevated dark:shadow-[0_1px_4px_rgba(0,0,0,0.35)]");function o({title:e,description:r,hint:t,action:s,badges:n,footer:i,children:c,className:u,bodyClassName:m,contentClassName:x,divider:h=!0}){let g=!!(e||r||s||n||t);return(0,a.jsx)("section",{className:(0,l.cn)(d,u),children:(0,a.jsxs)("div",{className:(0,l.cn)("p-5",m),children:[g?(0,a.jsxs)("div",{className:"flex items-start gap-4",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[e?(0,a.jsx)("p",{className:"text-sm font-semibold text-foreground",children:e}):null,r?(0,a.jsx)("p",{className:(0,l.cn)(e&&"mt-1","text-[13px] leading-relaxed text-muted-foreground"),children:r}):null,n?(0,a.jsx)("div",{className:"mt-2 flex flex-wrap gap-2",children:n}):null,t?(0,a.jsx)("div",{className:"mt-2",children:t}):null]}),s?(0,a.jsx)("div",{className:"shrink-0",children:s}):null]}):null,c?(0,a.jsx)("div",{className:(0,l.cn)(g&&"mt-4 pt-4",g&&h&&"border-t border-mail-border","space-y-4",x),children:c}):null,i?(0,a.jsx)("div",{className:"mt-4",children:i}):null]})})}function c({label:e,htmlFor:r,hint:t,error:n,required:i,children:d,className:o,labelClassName:u,labelAction:m}){return(0,a.jsxs)("div",{className:(0,l.cn)("space-y-1.5",o),children:[e?(0,a.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,a.jsxs)(s.J,{htmlFor:r,className:(0,l.cn)("text-xs font-medium text-muted-foreground",u),children:[e,i?(0,a.jsx)("span",{className:"ml-0.5 text-destructive",children:"*"}):null]}),m]}):null,d,t?(0,a.jsx)("div",{className:"text-xs leading-relaxed text-muted-foreground",children:t}):null,n?(0,a.jsx)("div",{className:"text-xs leading-relaxed text-destructive",children:n}):null]})}function u({title:e,description:r,checked:t,onCheckedChange:s,disabled:i,hint:d,variant:o="bordered",className:c}){let m=(0,a.jsxs)("label",{className:(0,l.cn)("flex items-center justify-between gap-4","bordered"===o&&"rounded-lg border border-mail-border bg-mail-surface-muted/40 px-3.5 py-3",i&&"opacity-70",c),children:[(0,a.jsxs)("span",{className:"min-w-0",children:[(0,a.jsx)("span",{className:"block text-sm font-medium text-foreground",children:e}),r?(0,a.jsx)("span",{className:"mt-0.5 block text-xs leading-relaxed text-muted-foreground",children:r}):null]}),(0,a.jsx)(n.d,{checked:t,disabled:i,onCheckedChange:s})]});return d?(0,a.jsxs)("div",{className:"space-y-1.5",children:[m,d]}):m}function m({title:e,description:r,checked:t,onCheckedChange:s,disabled:n,variant:d="plain",className:o}){return(0,a.jsxs)("label",{className:(0,l.cn)("flex items-start gap-2.5","bordered"===d&&"rounded-lg border border-mail-border bg-mail-surface-muted/40 px-3.5 py-3",n&&"opacity-70",o),children:[(0,a.jsx)(i.S,{checked:t,disabled:n,onCheckedChange:e=>s(!0===e),className:"mt-0.5"}),(0,a.jsxs)("span",{className:"min-w-0",children:[(0,a.jsx)("span",{className:"block text-sm text-foreground",children:e}),r?(0,a.jsx)("span",{className:"mt-0.5 block text-xs leading-relaxed text-muted-foreground",children:r}):null]})]})}function x({columns:e=2,children:r,className:t}){return(0,a.jsx)("div",{className:(0,l.cn)("grid min-w-0 gap-4",2===e&&"sm:grid-cols-2",t),children:r})}function h({children:e,tone:r="muted",className:t}){return(0,a.jsx)("p",{className:(0,l.cn)("text-xs leading-relaxed","muted"===r&&"text-muted-foreground","warning"===r&&"text-amber-600 dark:text-amber-500","danger"===r&&"text-destructive",t),children:e})}},30925:(e,r,t)=>{t.d(r,{S:()=>d});var a=t(4208);t(91356);var s=t(28879),n=t(68183),i=t(35019),l=t(58113);function d({className:e,checked:r,...t}){return(0,a.jsx)(s.bL,{"data-slot":"checkbox",className:(0,l.cn)("peer border-[1.5px] border-mail-row-checkbox-border bg-background dark:bg-mail-surface-muted data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary data-[state=indeterminate]:bg-primary data-[state=indeterminate]:text-primary-foreground data-[state=indeterminate]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 cursor-pointer rounded-[4px] shadow-xs transition-all outline-none hover:border-foreground/60 hover:shadow-sm focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",e),...t,checked:r,children:(0,a.jsx)(s.C1,{"data-slot":"checkbox-indicator",className:"flex items-center justify-center text-current transition-none",children:"indeterminate"===r?(0,a.jsx)(n.A,{className:"size-3 stroke-[2.5] text-inherit"}):(0,a.jsx)(i.A,{className:"size-3.5 text-inherit stroke-[2.5]"})})})}},40505:(e,r,t)=>{t.d(r,{Y7:()=>d,Yc:()=>o,tR:()=>i,yT:()=>c,zT:()=>l});var a=t(98306),s=t(17745),n=t(94927);function i(e){let r="number"==typeof e&&Number.isFinite(e)?e:0;return new Intl.NumberFormat("fr-FR",{style:"currency",currency:"EUR",minimumFractionDigits:2,maximumFractionDigits:4}).format(r/1e6)}function l(e){let r=e.cost_limit_month_micro_eur;return!r||r<=0?null:Math.min(100,Math.round(e.cost_used_month_micro_eur/r*100))}function d(){return(0,a.I)({queryKey:["ai","config"],queryFn:()=>n.uE.get("/ai/config"),staleTime:6e4})}function o(e=!0){return(0,a.I)({queryKey:["ai","quota"],queryFn:()=>n.uE.get("/ai/quota"),enabled:e,staleTime:3e4})}function c(){return(0,s.n)({mutationFn:e=>n.uE.post("/ai/sessions",{app:e.app,temporary:e.temporary??!0,message_id:e.messageId,account_id:e.accountId,drive_path:e.drivePath,file_id:e.fileId,contact_id:e.contactId,subject:e.subject,snippet:e.snippet})})}},51355:(e,r,t)=>{t.d(r,{E:()=>d});var a=t(4208);t(91356);var s=t(49402),n=t(57542),i=t(58113);let l=(0,n.F)("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}},defaultVariants:{variant:"default"}});function d({className:e,variant:r,asChild:t=!1,...n}){let o=t?s.DX:"span";return(0,a.jsx)(o,{"data-slot":"badge",className:(0,i.cn)(l({variant:r}),e),...n})}},51618:(e,r,t)=>{t.d(r,{A0:()=>i,BF:()=>l,Hj:()=>d,XI:()=>n,nA:()=>c,nd:()=>o});var a=t(4208);t(91356);var s=t(58113);function n({className:e,...r}){return(0,a.jsx)("div",{"data-slot":"table-container",className:"relative w-full overflow-x-auto",children:(0,a.jsx)("table",{"data-slot":"table",className:(0,s.cn)("w-full caption-bottom text-sm",e),...r})})}function i({className:e,...r}){return(0,a.jsx)("thead",{"data-slot":"table-header",className:(0,s.cn)("[&_tr]:border-b",e),...r})}function l({className:e,...r}){return(0,a.jsx)("tbody",{"data-slot":"table-body",className:(0,s.cn)("[&_tr:last-child]:border-0",e),...r})}function d({className:e,...r}){return(0,a.jsx)("tr",{"data-slot":"table-row",className:(0,s.cn)("hover:bg-muted/50 data-[state=selected]:bg-muted border-b transition-colors",e),...r})}function o({className:e,...r}){return(0,a.jsx)("th",{"data-slot":"table-head",className:(0,s.cn)("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...r})}function c({className:e,...r}){return(0,a.jsx)("td",{"data-slot":"table-cell",className:(0,s.cn)("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...r})}},83183:(e,r,t)=>{t.r(r),t.d(r,{AiUsageSection:()=>S});var a=t(4208),s=t(35855),n=t.n(s),i=t(91356),l=t(9702),d=t(31376),o=t(18259),c=t(64096),u=t(63638),m=t(96080),x=t(68817),h=t(21174),g=t(93017),p=t(7),b=t(6078),f=t(25729),v=t(51355),j=t(61554),y=t(55741),N=t(55003),k=t(24121),_=t(58113);let w={light:"",dark:".dark"},F=i.createContext(null);function q({id:e,className:r,children:t,config:s,...n}){let l=i.useId(),d=`chart-${e||l.replace(/:/g,"")}`;return(0,a.jsx)(F.Provider,{value:{config:s},children:(0,a.jsxs)("div",{"data-slot":"chart","data-chart":d,className:(0,_.cn)("[&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border flex aspect-video justify-center text-xs [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden",r),...n,children:[(0,a.jsx)(C,{id:d,config:s}),(0,a.jsx)(y.u,{children:t})]})})}let C=({id:e,config:r})=>{let t=Object.entries(r).filter(([,e])=>e.theme||e.color);return t.length?(0,a.jsx)("style",{dangerouslySetInnerHTML:{__html:Object.entries(w).map(([r,a])=>`
${a} [data-chart=${e}] {
${t.map(([e,t])=>{let a=t.theme?.[r]||t.color;return a?` --color-${e}: ${a};`:null}).join("\n")}
}
`).join("\n")}}):null},E=N.m;function M({active:e,payload:r,className:t,indicator:s="dot",hideLabel:n=!1,hideIndicator:l=!1,label:d,labelFormatter:o,labelClassName:c,formatter:u,color:m,nameKey:x,labelKey:h}){let{config:g}=function(){let e=i.useContext(F);if(!e)throw Error("useChart must be used within a <ChartContainer />");return e}(),p=i.useMemo(()=>{if(n||!r?.length)return null;let[e]=r,t=`${h||e?.dataKey||e?.name||"value"}`,s=R(g,e,t),i=h||"string"!=typeof d?s?.label:g[d]?.label||d;return o?(0,a.jsx)("div",{className:(0,_.cn)("font-medium",c),children:o(i,r)}):i?(0,a.jsx)("div",{className:(0,_.cn)("font-medium",c),children:i}):null},[d,o,r,n,c,g,h]);if(!e||!r?.length)return null;let b=1===r.length&&"dot"!==s;return(0,a.jsxs)("div",{className:(0,_.cn)("border-border/50 bg-background grid min-w-[8rem] items-start gap-1.5 rounded-lg border px-2.5 py-1.5 text-xs shadow-xl",t),children:[b?null:p,(0,a.jsx)("div",{className:"grid gap-1.5",children:r.map((e,r)=>{let t=`${x||e.name||e.dataKey||"value"}`,n=R(g,e,t),i=m||e.payload.fill||e.color;return(0,a.jsx)("div",{className:(0,_.cn)("[&>svg]:text-muted-foreground flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5","dot"===s&&"items-center"),children:u&&e?.value!==void 0&&e.name?u(e.value,e.name,e,r,e.payload):(0,a.jsxs)(a.Fragment,{children:[n?.icon?(0,a.jsx)(n.icon,{}):!l&&(0,a.jsx)("div",{className:(0,_.cn)("shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",{"h-2.5 w-2.5":"dot"===s,"w-1":"line"===s,"w-0 border-[1.5px] border-dashed bg-transparent":"dashed"===s,"my-0.5":b&&"dashed"===s}),style:{"--color-bg":i,"--color-border":i}}),(0,a.jsxs)("div",{className:(0,_.cn)("flex flex-1 justify-between leading-none",b?"items-end":"items-center"),children:[(0,a.jsxs)("div",{className:"grid gap-1.5",children:[b?p:null,(0,a.jsx)("span",{className:"text-muted-foreground",children:n?.label||e.name})]}),e.value&&(0,a.jsx)("span",{className:"text-foreground font-mono font-medium tabular-nums",children:e.value.toLocaleString("en-US")})]})]})},e.dataKey)})})]})}function R(e,r,t){if("object"!=typeof r||null===r)return;let a="payload"in r&&"object"==typeof r.payload&&null!==r.payload?r.payload:void 0,s=t;return t in r&&"string"==typeof r[t]?s=r[t]:a&&t in a&&"string"==typeof a[t]&&(s=a[t]),s in e?e[s]:e[t]}k.s;var T=t(51618),$=t(2336),A=t(40505);let I={cost:{label:"Co\xfbt org",color:"hsl(var(--primary))"}};function L(e){return new Intl.NumberFormat("fr-FR",{style:"currency",currency:"EUR",minimumFractionDigits:2,maximumFractionDigits:2}).format(e)}function K({label:e,value:r,hint:t,icon:s}){return(0,a.jsx)("div",{className:"rounded-xl border border-mail-border bg-mail-surface p-5 shadow-sm dark:bg-mail-surface-elevated dark:shadow-[0_1px_4px_rgba(0,0,0,0.35)]",children:(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("p",{className:"text-xs font-medium text-muted-foreground",children:e}),(0,a.jsx)("p",{className:"mt-1 text-2xl font-semibold tabular-nums tracking-tight",children:r}),t?(0,a.jsx)("p",{className:"mt-1 text-xs text-muted-foreground",children:t}):null]}),(0,a.jsx)("div",{className:"flex size-9 shrink-0 items-center justify-center rounded-lg bg-primary/10 text-primary",children:(0,a.jsx)(s,{className:"size-4"})})]})})}function z({rank:e,label:r,sublabel:t,value:s,sharePct:n}){return(0,a.jsxs)("div",{className:"flex items-start gap-3 py-2.5",children:[(0,a.jsx)("span",{className:"mt-0.5 w-5 shrink-0 text-xs font-medium tabular-nums text-muted-foreground",children:e}),(0,a.jsxs)("div",{className:"min-w-0 flex-1 space-y-1.5",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("p",{className:"truncate text-sm font-medium",children:r}),t?(0,a.jsx)("p",{className:"truncate text-xs text-muted-foreground",children:t}):null]}),(0,a.jsx)("span",{className:"shrink-0 text-sm tabular-nums font-medium",children:s})]}),(0,a.jsx)("div",{className:"h-1 overflow-hidden rounded-full bg-muted",children:(0,a.jsx)("div",{className:"h-full rounded-full bg-primary/80 transition-all",style:{width:`${Math.max(n,4)}%`}})})]})]})}function D({message:e}){return(0,a.jsx)("p",{className:"py-8 text-center text-sm text-muted-foreground",children:e})}function S(){let{data:e,isFetching:r,isError:t,refetch:s}=(0,$.QL)("org"),{data:y}=(0,$.BQ)(),N=e?.daily_series??[],k=e?.top_users??[],w=e?.top_models??[],F=y??[],C=(0,i.useMemo)(()=>N.map(e=>{var r;return{date:e.date,label:(r=e.date,new Date(`${r}T12:00:00`).toLocaleDateString("fr-FR",{day:"numeric",month:"short"})),cost:e.cost_org_micro_eur/1e6,requests:e.requests}}),[N]),R=(0,i.useMemo)(()=>Math.max(...k.map(e=>e.cost_org_micro_eur),1),[k]),S=(0,i.useMemo)(()=>Math.max(...w.map(e=>e.cost_micro_eur),1),[w]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(p.y,{title:"Usage IA",description:"Co\xfbts estim\xe9s de la consommation LLM (cl\xe9s organisation) et tarifs mod\xe8les."}),(0,a.jsx)(b.v,{isFetching:r,isError:t,onRetry:()=>s()}),(0,a.jsx)("div",{className:"mb-6 flex flex-wrap items-center gap-2",children:(0,a.jsx)(j.$,{asChild:!0,variant:"outline",size:"sm",children:(0,a.jsxs)(n(),{href:"/admin/settings/quotas",children:[(0,a.jsx)(m.A,{className:"mr-2 size-4"}),"Modifier les plafonds"]})})}),e?(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:[(0,a.jsx)(K,{label:"Aujourd'hui (org)",value:(0,A.tR)(e.cost_today_micro_eur),icon:x.A}),(0,a.jsx)(K,{label:"Ce mois (org)",value:(0,A.tR)(e.cost_month_micro_eur),icon:h.A}),(0,a.jsx)(K,{label:"Devise",value:e.currency,hint:"Estimation bas\xe9e sur les tarifs mod\xe8les",icon:g.A})]}),N.length>0?(0,a.jsx)(f.KT,{title:"30 derniers jours",description:"Co\xfbt quotidien estim\xe9 pour les cl\xe9s organisation.",children:(0,a.jsx)(q,{config:I,className:"aspect-3/1 h-48 w-full",children:(0,a.jsxs)(l.E,{data:C,margin:{top:8,right:4,left:0,bottom:0},children:[(0,a.jsx)(d.d,{vertical:!1,strokeDasharray:"3 3"}),(0,a.jsx)(o.W,{dataKey:"label",tickLine:!1,axisLine:!1,interval:"preserveStartEnd",minTickGap:28}),(0,a.jsx)(c.h,{tickLine:!1,axisLine:!1,width:48,tickFormatter:e=>new Intl.NumberFormat("fr-FR",{style:"currency",currency:"EUR",notation:"compact",maximumFractionDigits:1}).format(e)}),(0,a.jsx)(E,{cursor:{fill:"hsl(var(--muted))",opacity:.35},content:(0,a.jsx)(M,{labelFormatter:(e,r)=>{let t=r?.[0]?.payload;return t?.date?new Date(`${t.date}T12:00:00`).toLocaleDateString("fr-FR",{weekday:"short",day:"numeric",month:"long"}):""},formatter:(e,r,t)=>{let s=t.payload.requests??0;return(0,a.jsxs)("div",{className:"flex w-full items-center justify-between gap-4",children:[(0,a.jsx)("span",{children:I.cost.label}),(0,a.jsxs)("span",{className:"font-mono tabular-nums",children:[(0,A.tR)(1e6*Number(e)),s>0?` \xb7 ${s} req.`:""]})]})}})}),(0,a.jsx)(u.y,{dataKey:"cost",fill:"var(--color-cost)",radius:[3,3,0,0]})]})})}):null,(0,a.jsxs)("div",{className:"grid gap-4 lg:grid-cols-2",children:[(0,a.jsx)(f.KT,{title:"Top utilisateurs (mois)",description:"Cl\xe9s organisation uniquement.",children:0===k.length?(0,a.jsx)(D,{message:"Aucune consommation enregistr\xe9e"}):(0,a.jsx)("div",{className:"divide-y divide-mail-border",children:k.map((e,r)=>(0,a.jsx)(z,{rank:r+1,label:e.display_name||e.email,sublabel:e.display_name?e.email:void 0,value:(0,A.tR)(e.cost_org_micro_eur),sharePct:Math.round(e.cost_org_micro_eur/R*100)},e.user_id))})}),(0,a.jsx)(f.KT,{title:"Top mod\xe8les (mois)",description:"R\xe9partition par mod\xe8le LLM.",children:0===w.length?(0,a.jsx)(D,{message:"Aucune consommation enregistr\xe9e"}):(0,a.jsx)("div",{className:"divide-y divide-mail-border",children:w.map((e,r)=>(0,a.jsx)(z,{rank:r+1,label:e.model_id,sublabel:`${e.request_count} requ\xeate${e.request_count>1?"s":""}`,value:(0,A.tR)(e.cost_micro_eur),sharePct:Math.round(e.cost_micro_eur/S*100)},e.model_id))})})]}),F.length>0?(0,a.jsx)(f.KT,{title:"Tarifs mod\xe8les",description:"Prix de r\xe9f\xe9rence utilis\xe9s pour estimer les co\xfbts.",children:(0,a.jsx)("div",{className:"overflow-x-auto rounded-lg border border-mail-border",children:(0,a.jsxs)(T.XI,{children:[(0,a.jsx)(T.A0,{children:(0,a.jsxs)(T.Hj,{children:[(0,a.jsx)(T.nd,{children:"Mod\xe8le"}),(0,a.jsxs)(T.nd,{className:"text-right",children:["Input ",(0,a.jsx)("span",{className:"font-normal text-muted-foreground",children:"/ 1M"})]}),(0,a.jsxs)(T.nd,{className:"text-right",children:["Output ",(0,a.jsx)("span",{className:"font-normal text-muted-foreground",children:"/ 1M"})]})]})}),(0,a.jsx)(T.BF,{children:F.map(e=>(0,a.jsxs)(T.Hj,{children:[(0,a.jsx)(T.nA,{children:(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[(0,a.jsx)("span",{className:"font-mono text-xs",children:e.model_id}),e.provider_type?(0,a.jsx)(v.E,{variant:"secondary",className:"text-[10px] font-normal",children:e.provider_type}):null]})}),(0,a.jsx)(T.nA,{className:"text-right tabular-nums",children:L(e.input_eur_per_mtok)}),(0,a.jsx)(T.nA,{className:"text-right tabular-nums",children:L(e.output_eur_per_mtok)})]},e.model_id))})]})})}):null]}):r?(0,a.jsx)("p",{className:(0,_.cn)("text-sm text-muted-foreground"),children:"Chargement de la consommation…"}):null]})}}}]);