PageSourceSearch

https://dashboard.xfa.tech/static/js/4968.797495a8.chunk.js

js xfa.tech collected 2026-09-24 09:30:06 UTC 22,600 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkxfa_dashboard=self.webpackChunkxfa_dashboard||[]).push([[4968],{55527(e,o,n){n.d(o,{R:()=>r});var t=n(5544);async function r(e,o){const n={};for(const t of e)n[t]={EUR:1};const r=o.filter(e=>"EUR"!==e);if(0===r.length||0===e.length)return n;const i=[...e].sort(),s=i[0]+"-01",c=i[i.length-1].split("-").map(Number),a=(0,t.A)(c,2),l=a[0],d=a[1],u=12===d?1:d+1,g="".concat(12===d?l+1:l,"-").concat(String(u).padStart(2,"0"),"-01");for(const f of r)try{const o="https://api.frankfurter.app/".concat(s,"..").concat(g,"?from=").concat(f,"&to=EUR"),r=await fetch(o);if(!r.ok){console.warn("Exchange rate fetch failed for ".concat(f,": ").concat(r.status));for(const o of e)n[o][f]=1;continue}const i=await r.json(),c={};for(const e of Object.entries(i.rates)){var h=(0,t.A)(e,2);const o=h[0],n=h[1];c[o]=n.EUR}const a=Object.keys(c).sort();for(const t of e){const e=t+"-01";let o=null;for(const n of a)if(n<=e&&(o=n),n>=e){o=n;break}o&&void 0!==c[o]?n[t][f]=c[o]:n[t][f]=1}}catch(x){console.warn("Error fetching exchange rates for ".concat(f,":"),x);for(const o of e)n[o][f]=1}return n}},65029(e,o,n){n.d(o,{A:()=>g});n(9950);var t=n(20032),r=n(70006),i=n(23266),s=n(87233),c=n(10226),a=n(99320),l=n(40635),d=n(55030),u=n(44414);const g=e=>{let o=e.currentPage,n=e.totalPages,g=e.pageSize,h=e.totalItems,x=e.onPageChange,f=e.onPageSizeChange,p=e.pageSizeOptions,y=void 0===p?[50,100]:p;const b=(0,d.Bd)().t;if(n<=1)return null;const k=(o-1)*g+1,m=Math.min(o*g,h);return(0,u.jsxs)(t.A,{className:"pagination-container",children:[(0,u.jsx)(t.A,{className:"pagination-info",children:(0,u.jsx)(t.A,{className:"page-size-selector",children:(0,u.jsx)(r.A,{value:g,onChange:e=>f(Number(e.target.value)),size:"small",className:"page-size-select",children:y.map(e=>(0,u.jsxs)(i.A,{value:e,children:[e," ",b("pagination.itemsPerPage")]},e))})})}),(0,u.jsxs)(t.A,{className:"pagination-controls",children:[(0,u.jsx)(s.A,{variant:"body2",className:"pagination-text",children:(0,u.jsx)(d.x6,{i18nKey:"pagination.showing",values:{start:k,end:m,total:h},components:{bold:(0,u.jsx)("strong",{})}})}),(0,u.jsx)(c.A,{onClick:()=>{o>1&&x(o-1)},disabled:1===o,className:"pagination-nav-button","aria-label":b("pagination.previous"),children:(0,u.jsx)(a.A,{})}),(0,u.jsx)(c.A,{onClick:()=>{o<n&&x(o+1)},disabled:o===n,className:"pagination-nav-button","aria-label":b("pagination.next"),children:(0,u.jsx)(l.A,{})})]})]})}},84968(e,o,n){n.r(o),n.d(o,{default:()=>W});var t=n(89379),r=n(5544),i=n(9950),s=n(55030),c=n(20032),a=n(8145),l=n(2046),d=n(16497),u=n(70006),g=n(23266),h=n(46639),x=n(65429),f=n(87233),p=n(49715),y=n(1320),b=n(70693),k=n(15769),m=n(69780),v=n(9213),A=n(21671),C=n(34075),j=n(25235),z=n(51790),R=n(55527),M=n(65029),w=n(83250),I=n(44414);function S(e){const o=new Set;for(const n of e)for(const e of Object.keys(n.months))o.add(e);return Array.from(o).sort()}function Y(e,o){var n,t;const r=null===(n=e.invoiceMonth)||void 0===n?void 0:n[o],i=r?null===(t=e.monthlyInvoiceAmounts)||void 0===t?void 0:t[r]:void 0;return null!==i&&void 0!==i?i:e.months[o]}function E(e){const o=e.split("-"),n=(0,r.A)(o,2),t=n[0],i=n[1];return new Date(parseInt(t,10),parseInt(i,10)-1).toLocaleDateString("en-US",{year:"numeric",month:"short"})}function P(e,o){if("MoM"===o)return E(e);if("QoQ"===o){const o=e.split("-"),n=(0,r.A)(o,2),t=n[0],i=n[1];return"".concat(i,"'").concat(t.slice(2))}return e}const W=()=>{const e=(0,s.Bd)().t,o=(0,j.Q)(),n=o.organizations,W=o.loading,L=o.error,B=o.invoicesByOrg,U=o.invoicesLoading,N=o.invoicesError,O=i.useState(""),F=(0,r.A)(O,2),D=F[0],Q=F[1],_=i.useState(1),H=(0,r.A)(_,2),K=H[0],T=H[1],q=i.useState(50),G=(0,r.A)(q,2),X=G[0],J=G[1],V=i.useState(!0),Z=(0,r.A)(V,2),$=Z[0],ee=Z[1],oe=i.useState(!1),ne=(0,r.A)(oe,2),te=ne[0],re=ne[1],ie=i.useState({}),se=(0,r.A)(ie,2),ce=se[0],ae=se[1],le=i.useState(!1),de=(0,r.A)(le,2),ue=de[0],ge=de[1],he=i.useState("MoM"),xe=(0,r.A)(he,2),fe=xe[0],pe=xe[1],ye=i.useState("en-US"),be=(0,r.A)(ye,2),ke=be[0],me=be[1],ve=i.useState(!0),Ae=(0,r.A)(ve,2),Ce=Ae[0],je=Ae[1],ze=i.useState(!1),Re=(0,r.A)(ze,2),Me=Re[0],we=Re[1],Ie=i.useCallback(e=>function(e){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"en-US";
1return e.toLocaleString(o,{minimumFractionDigits:2,maximumFractionDigits:2})}(e,ke),[ke]),Se=i.useMemo(()=>{if(!n)return[];const e=(0,z.Q9)(n,B);return e.sort((e,o)=>{const n=Object.keys(e.months).sort(),t=Object.keys(o.months).sort(),r=n[0]||"",i=t[0]||"";return r||i?r?i?i.localeCompare(r):1:-1:0}),e},[n,B]),Ye=i.useMemo(()=>{const e=D.trim().toLowerCase();return""===e?Se:Se.filter(o=>o.name.toLowerCase().includes(e)||o.organizationId.toLowerCase().includes(e))},[Se,D]),Ee=i.useMemo(()=>te?Ye.filter(e=>!e.churned):Ye,[Ye,te]),Pe=i.useMemo(()=>S(Ye),[Ye]),We=i.useMemo(()=>{const e=new Set;for(const o of Se)"EUR"!==o.currency&&e.add(o.currency);return Array.from(e).sort()},[Se]),Le=i.useMemo(()=>S(Se),[Se]);i.useEffect(()=>{if(0===We.length||0===Le.length)return void ae({});let e=!1;return ge(!0),(0,R.R)(Le,We).then(o=>{e||(ae(o),ge(!1))}).catch(o=>{console.warn("Failed to fetch exchange rates:",o),e||ge(!1)}),()=>{e=!0}},[Le,We]);const Be=Ee.length,Ue=Math.max(1,Math.ceil(Be/X));i.useEffect(()=>{K>Ue?T(Ue):K<1&&T(1)},[K,Ue]),i.useEffect(()=>{T(1)},[D]);const Ne=i.useMemo(()=>{const e=(K-1)*X;return Ee.slice(e,e+X)},[Ee,K,X]),Oe=i.useMemo(()=>{const e=new Date,o=new Date(e.getFullYear(),e.getMonth()-1,1);return"".concat(o.getFullYear(),"-").concat(String(o.getMonth()+1).padStart(2,"0"))},[]),Fe=i.useMemo(()=>{const e=new Date;return"".concat(e.getFullYear(),"-").concat(String(e.getMonth()+1).padStart(2,"0"))},[]),De=i.useMemo(()=>(0,z.Fl)(Pe,fe,Oe),[Pe,fe,Oe]),Qe=i.useCallback(e=>{if(e.isYearly){var o,n;if(void 0!==(null===(o=e.invoiceAmounts)||void 0===o?void 0:o[Fe]))return Fe;if(void 0!==(null===(n=e.extraLicenseAmounts)||void 0===n?void 0:n[Fe]))return Fe}else if(void 0!==Y(e,Fe))return Fe;return Oe},[Oe,Fe]),_e=i.useCallback((e,o)=>!!e.contractEndMonth&&o>e.contractEndMonth,[]),He=i.useCallback((e,o,n)=>{var t;if("EUR"===o)return e;const r=null===(t=ce[n])||void 0===t?void 0:t[o];return void 0===r?e:Math.round(e*r*100)/100},[ce]),Ke=i.useCallback((e,o)=>{var n,t,r;const i=e.months[o];if(void 0===i)return;if(!$)return i;const s=null!==(n=null===(t=e.extraLicenseAmounts)||void 0===t?void 0:t[o])&&void 0!==n?n:0,c=i-s,a=(null===(r=e.invoiceMonth)||void 0===r?void 0:r[o])||o;return He(c,e.currency,a)+He(s,e.currency,o)},[$,He]),Te=i.useCallback((e,o)=>(0,z.uT)(e,o,(o,n)=>$?He(o,e.currency,n):o),[$,He]),qe=i.useCallback((e,o)=>{var n,t;if(e.isYearly){var r,i;const n=Te(e,o);if(void 0===n)return Ke(e,o);const t=null!==(r=null===(i=e.extraLicenseAmounts)||void 0===i?void 0:i[o])&&void 0!==r?r:0;return n/12+($?He(t,e.currency,o):t)}const s=null===(n=e.invoiceMonth)||void 0===n?void 0:n[o],c=s?null===(t=e.monthlyInvoiceAmounts)||void 0===t?void 0:t[s]:void 0;return void 0===c||void 0===s?Ke(e,o):$?He(c,e.currency,s):c},[Ke,$,He,Te]),Ge=i.useCallback((e,o)=>{var n,t;if(!e.hasExtraLicenseBilling)return 0;const r=null!==(n=null===(t=e.extraLicenseAmounts)||void 0===t?void 0:t[o])&&void 0!==n?n:0;return 12*($?He(r,e.currency,o):r)},[$,He]),Xe=i.useCallback(e=>{var o;const n=Qe(e);if(_e(e,n))return"\u2014";const t=(null===(o=e.invoiceMonth)||void 0===o?void 0:o[n])||n;if(e.isYearly){const o=Te(e,n);let t;if(void 0!==o)t=o;else{if(!e.hasExtraLicenseBilling||void 0===e.contractedYearlyAmount)return"\u2014";t=$?He(e.contractedYearlyAmount,e.currency,n):e.contractedYearlyAmount}return t+=Ge(e,n),Ie(t)}const r=Y(e,n);if(void 0===r)return"\u2014";const i=$?He(r,e.currency,t):r;return Ie(12*i)},[Qe,_e,$,He,Ie,Ge,Te]),Je=i.useMemo(()=>{if($){let o=0;for(const n of Ee){var e;const t=Qe(n);if(_e(n,t))continue;const r=(null===(e=n.invoiceMonth)||void 0===e?void 0:e[t])||t;if(n.isYearly){const e=Te(n,t);if(void 0!==e)o+=e;else{if(!n.hasExtraLicenseBilling||void 0===n.contractedYearlyAmount)continue;o+=He(n.contractedYearlyAmount,n.currency,t)}o+=Ge(n,t)}else{const e=Y(n,t);if(void 0===e)continue;o+=12*He(e,n.currency,r)}}return o>0?{EUR:o}:{}}{const e={};for(const o of Ee){const n=Qe(o);if(!_e(o,n))if(o.isYearly){const t=Te(o,n);if(void 0!==t)e[o.currency]=(e[o.currency]||0)+t;else{if(!o.hasExtraLicenseBilling||void 0===o.contractedYearlyAmount)continue;e[o.currency]=(e[o.currency]||0)+o.contractedYearlyAmount}e[o.currency]=(e[o.currency]||0)+Ge(o,n)}else{const t=Y(o,n);if(void 0===t)continue;e[o.currency]=(e[o.currency]||0)+12*t}}return e}},[Ee,Qe,_e,$,He,Ge,Te]),Ve=i.useCallback(e=>{const o=Qe(e);if(_e(e,o))return"\u2014";if(void 0!==e.contractedYearlyAmount){let n=$?He(e.contractedYearlyAmount,e.currency,o):e.contractedYearlyAmount;return n+=Ge(e,o),Ie(n)}return Xe(e)},[Xe,Qe,_e,$,He,Ie,Ge,Te]),Ze=i.useMemo(()=>{const e=(e,o)=>
1{if(e.isYearly){if(void 0!==e.contractedYearlyAmount)return{amount:e.contractedYearlyAmount,rateMonth:o};const n=Te(e,o);return void 0!==n?{amount:n,preConverted:!0}:void 0}{var n;const t=Y(e,o);if(void 0===t)return;return{amount:12*t,rateMonth:(null===(n=e.invoiceMonth)||void 0===n?void 0:n[o])||o}}};if($){let o=0;for(const n of Ee){const t=Qe(n);if(_e(n,t))continue;const r=e(n,t);r&&(o+=(r.preConverted?r.amount:He(r.amount,n.currency,r.rateMonth))+Ge(n,t))}return o>0?{EUR:o}:{}}{const o={};for(const n of Ee){const t=Qe(n);if(_e(n,t))continue;const r=e(n,t);r&&(o[n.currency]=(o[n.currency]||0)+r.amount+Ge(n,t))}return o}},[Ee,Qe,_e,$,He,Ge,Te]),$e=i.useMemo(()=>(0,z.O0)(Ee,Pe,{currencyKey:e=>$?"EUR":e.currency,amount:(e,o)=>qe(e,o),convert:(e,o,n)=>$?He(e,o.currency,n):e}),[Ee,Pe,$,He,qe]),eo=i.useMemo(()=>{const e=(0,z._1)(Ye,Pe),o=e.paying,n=e.nonPaying,t=e.notYetStarted,r=e.former,i={};for(const s of Pe){let e=0;for(const o of Ye)void 0!==o.months[s]&&(e+=o.users[s]||0);i[s]=e}return{payingCustomers:o,nonPayingCustomers:n,notYetStartedCustomers:t,formerCustomers:r,userCounts:i}},[Ye,Pe]),oo=i.useMemo(()=>{const e={};for(const n of Object.entries($e)){var o=(0,r.A)(n,2);const t=o[0],i=o[1],s={};for(const e of z.G5){const o=e.key,n=e.agg,t={};for(const e of De){const r=(0,z.H3)(i[o],e,n);void 0!==r&&(t[e.key]=r)}s[o]=t}e[t]=s}return e},[$e,De]),no=i.useMemo(()=>{const e={},o={},n={},t={},r={};for(const i of De){const s=i.lastMonth;e[i.key]=eo.payingCustomers[s]||0,o[i.key]=eo.nonPayingCustomers[s]||0,n[i.key]=eo.notYetStartedCustomers[s]||0,t[i.key]=eo.formerCustomers[s]||0,r[i.key]=eo.userCounts[s]||0}return{payingCustomers:e,nonPayingCustomers:o,notYetStartedCustomers:n,formerCustomers:t,userCounts:r}},[eo,De]),to=i.useCallback((e,o,n)=>{const t=De.findIndex(e=>e.key===o);if(t<=0)return"";const r=n[De[t-1].key];if(void 0===r||0===r)return"";const i=(e-r)/r*100;return" (".concat(i>0?"+":"").concat(i.toFixed(1),"%)")},[De]),ro=i.useMemo(()=>(0,z._u)(Oe,fe),[Oe,fe]),io=Fe.slice(0,4),so=i.useMemo(()=>Me?De:De.filter(e=>e.lastMonth.slice(0,4)>=io),[De,Me,io]),co=W||U,ao=i.useRef(null),lo=i.useRef(!1);return i.useEffect(()=>{lo.current=!1},[fe,Me]),i.useEffect(()=>{if(lo.current||U||!ro||!ao.current)return;const e=ao.current.querySelector('[data-month="'.concat(ro,'"]'));if(e){const o=ao.current,n=e.offsetLeft+e.offsetWidth-o.clientWidth+40;o.scrollLeft=Math.max(0,n),lo.current=!0}},[U,ro,so]),(0,I.jsxs)("div",{children:[(0,I.jsx)(c.A,{display:"flex",flexDirection:"column",justifyContent:"flex-start",alignItems:"flex-start",gap:2,mb:2,mt:2,children:(0,I.jsxs)(c.A,{display:"flex",alignItems:"center",gap:2,children:[(0,I.jsx)(a.A,{value:D,onChange:e=>Q(e.target.value),placeholder:e("organization.searchPlaceholder"),label:e("organization.search"),size:"small",variant:"outlined",InputProps:{startAdornment:(0,I.jsx)(l.A,{position:"start",children:(0,I.jsx)(p.A,{fontSize:"small",color:"action"})})},style:{width:320}}),(0,I.jsx)(d.A,{control:(0,I.jsx)(w.w,{checked:$,onChange:()=>ee(!$),size:"small"}),label:"Show all in EUR"}),(0,I.jsx)(d.A,{control:(0,I.jsx)(w.w,{checked:te,onChange:()=>re(!te),size:"small"}),label:"Hide churned customers"}),(0,I.jsxs)(u.A,{value:fe,onChange:e=>pe(e.target.value),size:"small",sx:{minWidth:100},children:[(0,I.jsx)(g.A,{value:"MoM",children:"MoM"}),(0,I.jsx)(g.A,{value:"QoQ",children:"QoQ"}),(0,I.jsx)(g.A,{value:"YoY",children:"YoY"})]}),(0,I.jsxs)(u.A,{value:ke,onChange:e=>me(e.target.value),size:"small",sx:{minWidth:100},children:[(0,I.jsx)(g.A,{value:"en-US",children:"1,000.00"}),(0,I.jsx)(g.A,{value:"de-DE",children:"1.000,00"})]}),(0,I.jsx)(d.A,{control:(0,I.jsx)(w.w,{checked:Ce,onChange:()=>je(!Ce),size:"small"}),label:"Show %"}),(0,I.jsx)(d.A,{control:(0,I.jsx)(w.w,{checked:Me,onChange:()=>we(!Me),size:"small"}),label:"Show full history"}),ue&&(0,I.jsx)(h.A,{size:16})]})}),L&&(0,I.jsx)(x.A,{severity:"error",sx:{mb:2},children:L}),N&&(0,I.jsx)(x.A,{severity:"error",sx:{mb:2},children:N}),(0,I.jsx)(y.A,{ref:ao,component:b.A,sx:{marginBottom:0,overflowX:"auto",maxHeight:"calc(100vh - 220px)",overflowY:"auto"},children:(0,I.jsxs)(k.A,{sx:{minWidth:650},size:"small",children:[(0,I.jsx)(m.A,{sx:{position:"sticky",top:0,zIndex:5},children:(0,I.jsxs)(v.A,{children:[(0,I.jsx)(A.A,{sx:{position:"sticky",left:0,backgroundColor:"background.paper",zIndex:3,minWidth:40,borderRight:"1px solid",borderRightColor:"divider"},children:"#"}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:40,backgroundColor:"background.paper",zIndex:3,minWidth:200},children:e("organization.name")}
1),(0,I.jsx)(A.A,{sx:{position:"sticky",left:240,backgroundColor:"background.paper",zIndex:3,minWidth:120},align:"right",children:e("Billing.arr")}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:360,backgroundColor:"background.paper",zIndex:3,minWidth:120},align:"right",children:e("Billing.cArr")}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:480,backgroundColor:"background.paper",zIndex:3,minWidth:80},children:e("Billing.currency")}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:560,backgroundColor:"background.paper",zIndex:3,minWidth:80,borderRight:"2px solid",borderRightColor:"divider"},children:e("Billing.billingType")}),so.map(e=>{const o=e.lastMonth>Oe,n=e.key===ro;return(0,I.jsxs)(A.A,{"data-month":e.key,align:"right",sx:(0,t.A)((0,t.A)({minWidth:100,backgroundColor:o?"#e0e0e0":"background.paper"},o&&{color:"text.disabled",fontStyle:"italic"}),n&&{borderRight:"3px solid #1976d2",fontWeight:"bold"}),children:[P(e.key,fe),e.incomplete?"*":""]},e.key)})]})}),(0,I.jsxs)(C.A,{children:[Ne.map((o,n)=>(0,I.jsxs)(v.A,{className:"stripedRows",children:[(0,I.jsx)(A.A,{sx:{position:"sticky",left:0,backgroundColor:"background.paper",zIndex:1,borderRight:"1px solid",borderRightColor:"divider"},children:(K-1)*X+n+1}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:40,backgroundColor:"background.paper",zIndex:1},children:o.name}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:240,backgroundColor:"background.paper",zIndex:1},align:"right",children:Xe(o)}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:360,backgroundColor:"background.paper",zIndex:1},align:"right",children:Ve(o)}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:480,backgroundColor:"background.paper",zIndex:1},children:o.currency}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:560,backgroundColor:"background.paper",zIndex:1,borderRight:"2px solid",borderRightColor:"divider"},children:o.isPerUserYearly?e("Billing.yearlyPerUser"):o.isYearly?e("Billing.yearly"):e("Billing.monthly")}),so.map(e=>{const n=e.lastMonth>Oe,r=e.key===ro,i=(0,t.A)((0,t.A)({},n&&{backgroundColor:"#e8e8e8",color:"text.disabled"}),r&&{borderRight:"3px solid #1976d2"});let s=0,c=!1;for(const t of e.flowMonths){const e=Ke(o,t);void 0!==e&&(s+=e,c=!0)}return c?(0,I.jsx)(A.A,{align:"right",sx:i,children:Ie(s)},e.key):(0,I.jsx)(A.A,{align:"right",sx:i,children:"\u2014"},e.key)})]},o.organizationId)),Object.entries(oo).map(e=>{let o=(0,r.A)(e,2),n=o[0],i=o[1];return[{key:"bop",label:"ARR BoP (".concat(n,")"),data:i.bop,bold:!0,showArr:!1},{key:"new",label:"New ARR (".concat(n,")"),data:i.newMrr,color:"#2e7d32",showArr:!1},{key:"reactivated",label:"Reactivated ARR (".concat(n,")"),data:i.reactivated,color:"#2e7d32",showArr:!1},{key:"netExpansion",label:"Net Expansion ARR (".concat(n,") \u2014 % of BoP"),data:i.netExpansion,color:"#1565c0",showArr:!1},{key:"upsell",label:"Upsell ARR (".concat(n,")"),data:i.upsell,color:"#1565c0",showArr:!1,indent:!0},{key:"downsell",label:"Downsell ARR (".concat(n,")"),data:i.downsell,color:"#c62828",showArr:!1,indent:!0},{key:"churned",label:"Churned ARR (".concat(n,")"),data:i.churned,color:"#b71c1c",showArr:!1},{key:"eop",label:"ARR EoP (".concat(n,")"),data:i.eop,bold:!0,showArr:!0},{key:"invoicedYearly",label:"Invoiced Yearly (".concat(n,")"),data:i.invoicedYearly,bold:!0,showArr:!1},{key:"invoicedMonthly",label:"Invoiced Monthly (".concat(n,")"),data:i.invoicedMonthly,bold:!0,showArr:!1}].filter(e=>"bop"===e.key||"eop"===e.key||so.some(o=>{const n=e.data[o.key];return void 0!==n&&0!==n})).map(e=>(0,I.jsxs)(v.A,{sx:(0,t.A)({},e.bold&&{fontWeight:"bold"}),children:[(0,I.jsx)(A.A,{sx:{position:"sticky",left:0,backgroundColor:"#e8e8e8",zIndex:1,borderRight:"1px solid",borderRightColor:"divider",fontWeight:e.bold?"bold":void 0}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:40,backgroundColor:"#e8e8e8",zIndex:1,fontWeight:e.bold?"bold":void 0,color:e.color,pl:e.indent?4:void 0,fontStyle:e.indent?"italic":void 0},children:e.label}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:240,backgroundColor:"#e8e8e8",zIndex:1,fontWeight:e.bold?"bold":void 0},align:"right",children:e.showArr&&void 0!==Je[n]?Ie(Je[n]):""}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:360,backgroundColor:"#e8e8e8",zIndex:1,fontWeight:e.bold?"bold":void 0},align:"right",children:e.showArr&&void 0!==Ze[n]?Ie(Ze[n]):""}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:480,backgroundColor:"#e8e8e8",zIndex:1,fontWeight:e.bold?"bold":void 0},children:"eop"===e.key?n:""}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:560,backgroundColor:"#e8e8e8",zIndex:1,borderRight:"2px solid",borderRightColor:"divider"}}),so.map(o=>{const n=o.lastMonth>Oe,r=o.key===ro,s=e.data[o.key],c=o.incomplete&&"bop"!==e.key;return(0,I.jsx)(A.A,{align:"right",sx:(0,t.A)((0,t.A)({backgroundColor:n?"#d6d6d6":"#e8e8e8",fontWeight:e.bold?"bold":void 0,color:n?e.color||"text.disabled":e.color},e.indent&&{fontSize:"0.85em",fontStyle:"italic"}),r&&{borderRight:"3px solid #1976d2"}),children:void 0!==s&&0!==s?(0,I.jsxs)(I.Fragment,{children:[Ie(s),c?"*":"",Ce&&("eop"===e.key||"bop"===e.key)&&
1(()=>{const n=to(s,o.key,e.data);return n?(0,I.jsx)("span",{style:{fontSize:"0.75em",color:n.includes("+")?"#2e7d32":n.includes("-")?"#c62828":void 0},children:n}):null})(),Ce&&"netExpansion"===e.key&&(()=>{const e=i.bop[o.key];if(!e||0===e)return null;const n=s/e*100,t=n>0?"+":"";return(0,I.jsx)("span",{style:{fontSize:"0.75em",color:n>0?"#2e7d32":n<0?"#c62828":void 0},children:" (".concat(t).concat(n.toFixed(1),"%)")})})()]}):"\u2014"},o.key)})]},"".concat(e.key,"-").concat(n)))}),[{key:"payingCustomers",label:"# Paying customers",data:no.payingCustomers},{key:"nonPayingCustomers",label:"# Non-paying customers",data:no.nonPayingCustomers},{key:"notYetStartedCustomers",label:"# Not yet started",data:no.notYetStartedCustomers},{key:"formerCustomers",label:"# Former customers",data:no.formerCustomers}].filter(e=>"payingCustomers"===e.key||"nonPayingCustomers"===e.key||so.some(o=>0!==(e.data[o.key]||0))).map(e=>(0,I.jsxs)(v.A,{children:[(0,I.jsx)(A.A,{sx:{position:"sticky",left:0,backgroundColor:"#e8f5e9",zIndex:1,borderRight:"1px solid",borderRightColor:"divider",fontWeight:"bold"}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:40,backgroundColor:"#e8f5e9",zIndex:1,fontWeight:"bold"},children:e.label}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:240,backgroundColor:"#e8f5e9",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:360,backgroundColor:"#e8f5e9",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:480,backgroundColor:"#e8f5e9",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:560,backgroundColor:"#e8f5e9",zIndex:1,borderRight:"2px solid",borderRightColor:"divider"}}),so.map(o=>{const n=o.lastMonth>Oe,r=o.key===ro,i=e.data[o.key]||0,s=to(i,o.key,e.data);return(0,I.jsxs)(A.A,{align:"right",sx:(0,t.A)({fontWeight:"bold",backgroundColor:n?"#c8e6c9":"#e8f5e9",whiteSpace:"nowrap"},r&&{borderRight:"3px solid #1976d2"}),children:[i,o.incomplete?"*":"",Ce&&s&&(0,I.jsx)("span",{style:{fontSize:"0.75em",color:s.includes("+")?"#2e7d32":s.includes("-")?"#c62828":void 0},children:s})]},o.key)})]},e.key)),co&&(0,I.jsxs)(v.A,{children:[(0,I.jsx)(A.A,{sx:{position:"sticky",left:0,backgroundColor:"background.paper",zIndex:1,borderRight:"1px solid",borderRightColor:"divider"}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:40,backgroundColor:"background.paper",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:240,backgroundColor:"background.paper",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:360,backgroundColor:"background.paper",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:480,backgroundColor:"background.paper",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:560,backgroundColor:"background.paper",zIndex:1,borderRight:"2px solid",borderRightColor:"divider"}}),(0,I.jsx)(A.A,{colSpan:so.length,align:"center",children:(0,I.jsx)(h.A,{size:20})})]}),!co&&0===Ne.length&&(0,I.jsxs)(v.A,{children:[(0,I.jsx)(A.A,{sx:{position:"sticky",left:0,backgroundColor:"background.paper",zIndex:1,borderRight:"1px solid",borderRightColor:"divider"}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:40,backgroundColor:"background.paper",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:240,backgroundColor:"background.paper",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:360,backgroundColor:"background.paper",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:480,backgroundColor:"background.paper",zIndex:1}}),(0,I.jsx)(A.A,{sx:{position:"sticky",left:560,backgroundColor:"background.paper",zIndex:1,borderRight:"2px solid",borderRightColor:"divider"}}),(0,I.jsx)(A.A,{colSpan:so.length,align:"center",children:e("organization.noOrganizations")})]})]})]})}),"MoM"!==fe&&so.some(e=>e.incomplete)&&(0,I.jsxs)(f.A,{variant:"caption",color:"text.secondary",sx:{mt:.5,display:"block"},children:["* Incomplete period \u2014 values based on data through ",E(Oe)]}),(0,I.jsx)(c.A,{mt:0,children:(0,I.jsx)(M.A,{currentPage:K,totalPages:Ue,totalItems:Be,pageSize:X,pageSizeOptions:[50,100],onPageChange:e=>{T(e),window.scrollTo({top:0,behavior:"smooth"})},onPageSizeChange:e=>{J(e),T(1)}})})]})}},99320(e,o,n){n.d(o,{A:()=>i});var t=n(23235),r=n(44414);const i=(0,t.A)((0,r.jsx)("path",{d:"M15.41 16.59 10.83 12l4.58-4.59L14 6l-6 6 6 6z"}),"KeyboardArrowLeft")}}]);

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