Files
server/opt/psa/admin/cp/public/javascript/components/pages/TrafficUsageByDomainPage.js
2026-01-07 20:52:11 +01:00

2 lines
9.1 KiB
JavaScript

"use strict";(globalThis.webpackChunkPlesk=globalThis.webpackChunkPlesk||[]).push([["components/pages/TrafficUsageByDomainPage"],{1435:(e,t,a)=>{a.r(t),a.d(t,{SORT_ASC:()=>l,SORT_DESC:()=>d,default:()=>f});var r=a(296),s=a(668),i=a.n(s),n=a(297);const o=a(90).Locale.getSection("components.list"),l="ASC",d="DESC",c="all",g={set(e,t){localStorage.setItem(e,JSON.stringify(t))},get(e){const t=localStorage.getItem(e);return JSON.parse(t)}},u=e=>`list-sort_${e}`,m=e=>`list-page_${e}`,p=({id:e,data:t,columns:a,itemsPerPage:s=25,itemsPerPageOptions:i=[10,25,100,c],sortColumn:d,sortDirection:p=l,searchField:f,locale:h={},emptyView:y,emptyFilteredView:P,toolbar:v,selection:b=[],onSelectionChange:x,searchBarInputProps:S,rowKey:j="key",useStorage:w=!0,...C})=>{const{sortColumn:R,sortDirection:D,setSortState:T}=((e,{sortColumn:t,sortDirection:a})=>{const[{sortColumn:s,sortDirection:i},n]=(0,r.useState)({sortColumn:g.get(u(e))?.sortColumn??t,sortDirection:g.get(u(e))?.sortDirection??a});return{sortColumn:s,sortDirection:i,setSortState:t=>{n(e=>({...e,...t})),g.set(u(e),{...g.get(u(e)),...t})}}})(e,{sortColumn:d??a.find(({sortable:e})=>e)?.key,sortDirection:p}),{page:k,itemsPerPage:q,searchPattern:F,setPageState:U}=((e,{itemsPerPage:t},a=!0)=>{const s=a?{page:g.get(m(e))?.page,itemsPerPage:g.get(m(e))?.itemsPerPage,searchPattern:g.get(m(e))?.searchPattern}:{},[{page:i,itemsPerPage:n,searchPattern:o},l]=(0,r.useState)({page:s.page??1,itemsPerPage:s.itemsPerPage??t,searchPattern:s.searchPattern??""});return{page:i,itemsPerPage:n,searchPattern:o,setPageState:t=>{l(e=>({...e,...t})),a&&g.set(m(e),{...g.get(m(e)),...t})}}})(e,{itemsPerPage:i.includes(s)?s:i[0]},w),O=(0,r.useMemo)(()=>F?P??(0,r.jsx)(n.ListEmptyView,{reason:"filtered","data-testid":"list-empty-view-filtered"}):y??(0,r.jsx)(n.ListEmptyView,{}),[F,y,P]),L=(0,r.useMemo)(()=>a.map(({sortDataField:e,...t})=>t),[a]),I=(0,r.useMemo)(()=>f&&F?t.filter(e=>(Array.isArray(f)?f:[f]).some(t=>e[t]&&String(e[t]).toLowerCase().includes(F.toLowerCase()))):t,[t,F,f]),N=(0,r.useMemo)(()=>{if(!R)return I;const e=a.find(({key:e})=>e===R)?.sortDataField??R,t=a.find(({key:e})=>e===R)?.sort??((t,a)=>t[e]<a[e]?-1:t[e]>a[e]?1:0);return[...I].sort((e,a)=>l===D?t(e,a):t(a,e))},[I,R,D,a]),M=(0,r.useMemo)(()=>{if(q===c)return N;const e=q*(k-1),t=e+q;return N.slice(e,t)},[k,N,q]),$=(0,r.useCallback)(e=>{U({searchPattern:e}),e!==F&&U({page:1})},[F]),_=(0,r.useCallback)(e=>{U({itemsPerPage:e});(e===c?1:Math.ceil(I.length/e))<k&&U({page:1})},[I.length,k]);return(0,r.useEffect)(()=>{if("function"==typeof x&&b.length){const e=I.map(e=>{return t=e,"function"==typeof(a=j)?a(t):t[a];var t,a}).filter(e=>b.includes(e));x(e)}},[I]),(0,r.jsx)(n.List,{pagination:(0,r.jsx)(n.Pagination,{current:k,total:q===c?1:Math.ceil(I.length/q),onSelect:e=>U({page:e}),itemsPerPage:q,itemsPerPageOptions:i,onItemsPerPageChange:_}),toolbar:(v||f)&&(0,r.jsxs)(n.Toolbar,{children:[v,f&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(n.ToolbarExpander,{}),(0,r.jsx)(n.ToolbarGroup,{title:"",children:(0,r.jsx)(n.SearchBar,{inputProps:{placeholder:o.lmsg("searchPlaceholder"),"data-testid":"list-searchbar",value:F,...S??{}},onTyping:$})})]})]}),totalRows:I.length,sortColumn:R,sortDirection:D,onSortChange:T,columns:L,data:M,filtered:!!F,locale:{totalRows:({totalRows:e})=>o.formatMessage("recordsTotal",{total:e}),...h},emptyView:O,onSelectionChange:x,selection:b,rowKey:j,...C})};p.propTypes={id:i().string.isRequired,data:i().array.isRequired,columns:i().array.isRequired,itemsPerPage:i().number,itemsPerPageOptions:i().array,sortColumn:i().string,sortDirection:i().string,searchField:i().oneOfType([i().string,i().arrayOf(i().string.isRequired)]),locale:i().object,emptyView:i().node,emptyFilteredView:i().node,toolbar:i().node,onSelectionChange:i().func,selection:i().array,rowKey:i().oneOfType([i().string,i().func]),searchBarInputProps:i().object,useStorage:i().bool};const f=p},2304:(e,t,a)=>{function r(e,t){if(e.__typename!==t)throw new Error(`GraphQL type assertion failed: expected ${t} but received ${e.__typename}`)}a.r(t),a.d(t,{assertNodeTypename:()=>r})},2863:(e,t,a)=>{a.r(t),a.d(t,{default:()=>r.default});var r=a(2864)},2864:(e,t,a)=>{a.r(t),a.d(t,{default:()=>g});var r=a(296),s=a(599),i=a(620),n=a(2865),o=a(1259),l=a.n(o),d=a(2867),c=a(2872);const g=()=>{const{intervals:e}=(0,s.useLoaderData)(),{domainId:t}=(0,s.useParams)(),[a,o]=(0,r.useState)(void 0),g=e.find(({key:e})=>a===e)??e.at(-1),{data:u,previousData:m,loading:p}=(0,i.useQuery)(l(),{variables:{domainId:btoa(`Domain:${t}`),intervalKey:a}}),f=u??m;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(d.default,{domainId:t,intervalKey:a,interval:g}),(0,r.jsx)(c.default,{intervalSelect:(0,r.jsx)(n.default,{value:a,onChange:o,intervals:e}),loading:p,data:f.domain.statistics.trafficUsage.usageByServices})]})}},2865:(e,t,a)=>{a.r(t),a.d(t,{default:()=>r.default});var r=a(2866)},2866:(e,t,a)=>{a.r(t),a.d(t,{default:()=>d});var r=a(668),s=a.n(r),i=a(297),n=a(296);const o=({year:e,month:t,formattedTotalUsage:a})=>`${((e,t)=>new Date(e,t).toLocaleDateString(document.documentElement.lang||"en",{month:"short"}))(e,t-1)} ${e} (${a})`,l=({value:e=null,intervals:t,onChange:a,...r})=>{const s=[...t].reverse(),l=s.find(({key:t})=>t===(e??s[0]?.key));return(0,n.jsx)(i.Dropdown,{...r,"data-testid":"interval-select",menu:(0,n.jsx)(i.Menu,{children:s.map(e=>(0,n.jsx)(i.MenuItem,{onClick:()=>a(e.key),children:o(e)},e.key))}),children:o(l)})};l.propTypes={value:s().string,onChange:s().func.isRequired,intervals:s().arrayOf(s().shape({key:s().string.isRequired,month:s().number.isRequired,year:s().number.isRequired,formattedTotalUsage:s().string.isRequired}).isRequired).isRequired};const d=l},2867:(e,t,a)=>{a.r(t),a.d(t,{default:()=>d});var r=a(620),s=a(1259),i=a.n(s),n=a(2868),o=a(2304),l=(a(2871),a(296));const d=({domainId:e,intervalKey:t,interval:a})=>{const{data:s,previousData:d,loading:c}=(0,r.useQuery)(i(),{variables:{domainId:btoa(`Domain:${e}`),intervalKey:t}}),g=s??d;(0,o.assertNodeTypename)(g.domain,"Domain");const u=g.domain.statistics.trafficUsage,m=g.domain.subscription.limits.traffic;return(0,l.jsx)(n.default,{loading:c,trafficData:{totalUsageFormatted:u.totalUsageFormatted,limitUsagePercent:u.limitUsagePercent,isUnlimited:m.isUnlimited,limitFormatted:m.formattedValue},interval:a,className:"traffic-usage-by-domain-total-usage"})}},2868:(e,t,a)=>{a.r(t),a.d(t,{default:()=>r.default});var r=a(2869)},2869:(e,t,a)=>{a.r(t),a.d(t,{default:()=>c});var r=a(683),s=a.n(r),i=a(297),n=a(90),o=(a(2870),a(296));const l=n.Locale.getTranslate("components.common.TrafficUsage.TotalUsageInfo"),d=n.Locale.getSection("smb.components.months"),c=({loading:e,interval:t,trafficData:a,className:r})=>{const n=()=>e?(0,o.jsx)(i.Skeleton,{width:a.isUnlimited?70:200}):a.isUnlimited?a.totalUsageFormatted:(0,o.jsx)(l,{content:"usedLimited",params:{used:a.totalUsageFormatted,limit:a.limitFormatted,percent:a.limitUsagePercent},component:"span",className:"traffic-usage-total-usage-info__used-limited"});return t?(0,o.jsx)(l,{content:"usageWithInterval",params:{usage:n(),month:d.lmsg(t.month.toString()),year:t.year},component:"div",className:s()("traffic-usage-total-usage-info",r)}):(0,o.jsx)(l,{content:"usage",params:{usage:n()},component:"div",className:s()("traffic-usage-total-usage-info",r)})}},2870:(e,t,a)=>{a.r(t)},2871:(e,t,a)=>{a.r(t)},2872:(e,t,a)=>{a.r(t),a.d(t,{default:()=>u});var r=a(668),s=a.n(r),i=a(297),n=a(90),o=a(1435),l=a(2873),d=a(296);const c=n.Locale.getTranslate("components.pages.TrafficUsageByDomain.List"),g=({intervalSelect:e,data:t,loading:a})=>{const r=[{key:"serviceName",title:(0,d.jsx)(c,{content:"service"}),type:"title",sortable:!0},{key:"usage",title:(0,d.jsx)(c,{content:"usage"}),sortable:!0,align:"right",width:"110px",render:({usageFormatted:e})=>e},{key:"incoming",title:(0,d.jsx)(c,{content:"incoming"}),sortable:!0,align:"right",width:"110px",render:({incomingFormatted:e})=>e},{key:"outgoing",title:(0,d.jsx)(c,{content:"outgoing"}),sortable:!0,align:"right",width:"110px",render:({outgoingFormatted:e})=>e},{key:"percentOfAll",title:(0,d.jsx)(c,{content:"percentOfAll"}),sortable:!0,align:"right",width:"200px",render:({percentOfAll:e})=>(0,d.jsx)(l.default,{progress:e})}];return(0,d.jsx)(o.default,{id:"domain-traffic-usage-list","data-testid":"domain-services-traffic-usage-list",rowKey:"serviceName",searchField:"serviceName",columns:r,toolbar:(0,d.jsx)(i.ToolbarGroup,{groupable:!1,children:e}),data:t,loading:a,totalRows:void 0})};g.propTypes={intervalSelect:s().node.isRequired,loading:s().bool.isRequired,data:s().arrayOf(s().shape({serviceName:s().string.isRequired,usage:s().number.isRequired,usageFormatted:s().string.isRequired,incoming:s().number.isRequired,incomingFormatted:s().string.isRequired,outgoing:s().number.isRequired,outgoingFormatted:s().string.isRequired,percentOfAll:s().number.isRequired})).isRequired};const u=g},2873:(e,t,a)=>{a.r(t),a.d(t,{default:()=>r.default});var r=a(2874)},2874:(e,t,a)=>{a.r(t),a.d(t,{default:()=>l});var r=a(668),s=a.n(r),i=a(297),n=a(296);const o=({progress:e})=>(0,n.jsxs)("div",{children:[`${e.toFixed(1)}%`,(0,n.jsx)(i.ProgressBar,{progress:Math.min(e,100),intent:e>100?"danger":"info"})]});o.propTypes={progress:s().number.isRequired};const l=o}}]);
//# sourceMappingURL=TrafficUsageByDomainPage.js.map?9985cf0380476da99df0