PageSourceSearch

https://twozero.ai/_app/immutable/nodes/6.9ydHeYMV.js

js twozero.ai collected 2026-10-05 13:12:03 UTC 28,620 bytes, 1 lines download raw bytes

1import"../chunks/DsnmJJEf.js";import{i as at}from"../chunks/BBXrdGVi.js";import{p as et,f as _,am as t,an as e,s as n,k as R,u as i,g as a,ag as g,q as u,b as c,a as tt,m as j,o as $t,au as St,l as fa,d as Pt,h as N,e as me,n as ua,t as va,j as Ya,aq as Ee,av as kt,r as Tt,aw as Nt}from"../chunks/77vpnFW2.js";import{h as At}from"../chunks/DYs-6EPd.js";import{i as C}from"../chunks/DljiYl60.js";import{e as J,c as ta,b as Ha,i as Da}from"../chunks/C6Od3s4X.js";import{s as Ut,a as Mt}from"../chunks/Bjiw63jq.js";import{a as Dt,w as Et}from"../chunks/DS8dJ9ix.js";import{I as Le}from"../chunks/A_fNoe3s.js";import{C as ee}from"../chunks/Dq1dNT5n.js";import{S as Re}from"../chunks/c7t1D-va.js";import{T as Lt}from"../chunks/B4zArb20.js";import{S as Ie}from"../chunks/QWLeB22y.js";import{R as Rt}from"../chunks/Zpl9QA4v.js";import{E as It}from"../chunks/Bt3RyOoS.js";import{N as Oe}from"../chunks/CSwD6qWN.js";import{S as Ot}from"../chunks/BZSslOdl.js";import{E as fe}from"../chunks/Cgn_S4qO.js";import{C as Ct}from"../chunks/wcueCxtP.js";import{a as Ft}from"../chunks/BFzYSzm0.js";import{p as be}from"../chunks/Cs13naKd.js";const st=[{value:"today",label:"Today"},{value:"7d",label:"7 days"},{value:"30d",label:"30 days"}],Ce="substats_traffic_period",Fe="substats_traffic_team";function Ht(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC"}catch{return"UTC"}}function He(r,s){try{const o=localStorage.getItem(r);return o??s}catch{return s}}function je(r,s){try{localStorage.setItem(r,s)}catch{}}function qe(r){return st.some(s=>s.value===r)?r:"today"}class jt extends Error{constructor(s,o=null){super(s),this.status=o}}async function rt(r,s,o){const b=await r(s,{headers:{"x-user-id":o.userId,"x-access-key":o.accessKey}});if(!b.ok){let p=`HTTP ${b.status}`;try{const F=await b.json();F?.error&&(p=F.error)}catch{}throw new jt(p,b.status)}return b.json()}function qt(r,{period:s,tz:o,includeTeam:b},p=fetch){const F=new URLSearchParams({period:s,tz:o,team:b?"include":"exclude"});return rt(p,`/substats/api/traffic?${F}`,r)}function zt(r,s=fetch){return rt(s,"/substats/api/data",r)}function h(r){return r==null||!Number.isFinite(Number(r))?"—":Number(r).toLocaleString("en-US")}function ge(r){if(r==null)return"—";const s=Number(r);return Number.isFinite(s)?Math.abs(s)>=1e3?"$"+s.toLocaleString("en-US",{maximumFractionDigits:0}):"$"+s.toFixed(2).replace(/\.00$/,""):"—"}function Ka(r){if(!r)return"—";const s=new Date(r);return Number.isNaN(s.getTime())?"—":s.toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric"})}function ye(r){if(!r)return"";const s=new Date(r);return Number.isNaN(s.getTime())?"":s.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit"})}function re(r){const s=String(r||"").slice(0,10).split("-").map(Number);return s.length!==3||s.some(o=>!Number.isFinite(o))?"—":new Date(Date.UTC(s[0],s[1]-1,s[2])).toLocaleDateString("en-US",{month:"short",day:"numeric",timeZone:"UTC"})}function ze(r){if(!r)return"";const s=[r.period==="today"?"Today since 00:00":`Last ${r.days} days including today`,r.tz];r.team?.error?s.push("team list unavailable, team is counted"):r.team?.excluded?s.push(`team excluded (${r.team.accounts} accounts)`):s.push("team included");const o=ye(r.generated_at);return o&&s.push(`updated ${o}`),s.join(", ")}function Be(r){const s=r?.posthog||{},o=s.totals||null,b=r?.db||{},p=s.coverage||null,F=s.configured?"PostHog didn’t answer":"PostHog is not configured",q="Database didn’t answer";return[{k:"People on the site",tone:"people",v:o?h(o.people):null,sub:o?`twozero.ai ${h(o.people_site)}, app ${h(o.people_app)}`:F,src:"PostHog"},{k:"Sessions",tone:"people",v:o?h(o.sessions):null,sub:o?`${h(o.pageviews)} page views`:F,src:"PostHog"},{k:"New sign-ups",tone:"accounts",v:b.ok?h(b.signups):null,sub:b.ok?"accounts created":q,src:"Database"},{k:"Active accounts",tone:"accounts",v:b.ok?h(b.active_accounts):null,
1sub:b.ok?"signed in on the site or in the plugin":q,src:"Database"},{k:"PostHog sees",v:p&&p.ratio!=null?`≈${Math.round(p.ratio*100)}%`:null,sub:p?`${h(p.client)} of ${h((p.client||0)+(p.server||0))} /pricing views, ${p.days} days`:F,src:"PostHog"}]}function We(r){const s=r?.posthog?.coverage;let o="PostHog counts only visitors who accepted analytics cookies, so people, sections and sources are a sample. ";if(s&&s.ratio){const b=Math.round(s.ratio*100),p=(1/s.ratio).toFixed(1).replace(/\.0$/,"");o+=`On /pricing it saw ${b}% of views over the last ${s.days} days, the server counted the rest. If the rest of the site behaves the same, real traffic is about ${p}× these numbers. `}return o+"Sign-ups and active accounts come from our database and count everyone."}function Ze(r){const s=[],o=r?.posthog;if(o&&!o.configured)s.push("PostHog isn’t configured on this server, so only the database numbers are shown.");else if(o?.errors){const b=Object.keys(o.errors);b.length&&s.push(`PostHog didn’t answer for ${b.join(", ")}.`)}return r?.db&&!r.db.ok&&s.push("The database part didn’t answer: sign-ups and active accounts are missing."),s}function te(r,s){if(!Array.isArray(r)||!r.length||r.every(p=>p?.[s]==null))return null;const o=Math.max(1,...r.map(p=>Number(p?.[s])||0)),b=r.length;return r.map((p,F)=>{const q=p?.[s]==null?null:Number(p[s])||0;return{day:p.day,value:q,share:q?q/o:0,inPeriod:p.in_period!==!1,label:(b-1-F)%7===0?re(p.day):"",title:`${re(p.day)}: ${q==null?"—":h(q)}`}})}function Ye(r){return r?.ref&&r.ref!=="$direct"?r.ref:r?.utm_source?r.utm_source:"Direct, no referrer"}function se(r){const s=[];return r?.utm_source&&s.push(`utm_source=${r.utm_source}`),r?.utm_campaign&&s.push(`utm_campaign=${r.utm_campaign}`),s.join(", ")}function Ke(r){const s=r?.kpis||{},o=r?.founding||null,b=Object.entries(s.by_billing_key||{}).map(([p,F])=>`${p} ${F}`).join(", ");return[{k:"Purchases total",tone:"pro",v:h(s.purchases_total),sub:b||"no purchases yet"},{k:"Active now",tone:"good",v:h(s.active),sub:"have PRO today"},{k:"Cancelled, still active",v:h(s.cancelled_access_until_end),sub:"counted in active until the end date"},{k:"Ended",v:h(s.ended),sub:"expired or past the end date"},{k:"MRR",tone:"pro",v:s.mrr_usd==null?null:ge(s.mrr_usd),sub:s.mrr_usd==null?"prices didn’t load":"yearly spread over 12 months"},{k:"Founding seats",v:o&&o.taken!=null?`${o.taken} of ${o.limit}`:null,sub:o&&o.left!=null?`${o.left} left, not on sale`:"count unavailable"},{k:"PRO without purchase",v:h(s.admin_assigned),sub:"assigned or gifted by the team"}]}function Ve(r){const s=String(r?.status||"");return r?.grantsPlan&&s==="cancelled"?{label:`Cancelled, until ${Ka(r.endsAt)}`,tone:"ending"}:r?.grantsPlan&&s==="past_due"?{label:"Payment failed",tone:"failed"}:r?.grantsPlan&&s==="paused"?{label:"Paused",tone:"ending"}:r?.grantsPlan?{label:s?s[0].toUpperCase()+s.slice(1):"Active",tone:"ok"}:s==="unpaid"?{label:"Unpaid",tone:"failed"}:{label:s?s[0].toUpperCase()+s.slice(1):"Ended",tone:"ended"}}const Je={ok:"circle-check",ending:"clock",failed:"triangle-alert",ended:"circle-dashed"};function xa(r,s,o){const b=Math.max(0,...(s||[]).map(p=>Number(p?.[o])||0));return b>0?Math.max(0,Math.min(1,(Number(r)||0)/b)):0}const Bt={monthly:"Monthly",yearly:"Yearly",founding:"Founding"};function Xe(r){return r?Bt[r]||r:"—"}function Ge(r){if(!Array.isArray(r)||!r.length)return null;const s=Math.max(1,...r.map(p=>Number(p.purchases)||0)),o=r.length,b=Math.max(1,Math.ceil(o/4));return r.map((p,F)=>{const q=Number(p.purchases)||0;return{day:p.day,value:q,share:q/s,inPeriod:!0,label:(o-1-F)%b===0?re(p.day):"",title:`${re(p.day)}: ${h(q)}`}})}var Wt=_('<span class="db-col svelte-1m6w8yr"><span class="db-num svelte-1m6w8yr"> </span> <span class="db-fill svelte-1m6w8yr"></span></span>'),Zt=_('<span class="svelte-1m6w8yr"> </span>'),Yt=_('<div class="db svelte-1m6w8yr" role="img"><div class="db-in svelte-1m6w8yr"><div class="db-bars svelte-1m6w8yr"></div> <div class="db-axis svelte-1m6w8yr" aria-hidden="true"></div></div></div>');function Qe(r,s){et(s,!1);let o=be(s,"bars",24,()=>[]),b=be(s,"label",8,""),p=be(s,"tone",8,null);const F=100;function q(I){const E=()=>I.scrollLeft=I.scrollWidth;return requestAnimationFrame(E),{update:()=>requestAnimationFrame(E)}}at();var pa=Yt(),Ea=t(pa),m=t(Ea);J(m,5,o,I=>I.day,(I,E)=>{var aa=Wt(),wa=t(aa),ie=t(wa,!0);e(wa);var $a=n(wa,2);e(aa),R((Sa,k)=>{ta(aa,"data-dim",(a(E),i(()=>!a(E).inPeriod||void 0))),ta(aa,"title",(a(E),i(()=>a(E).title))),u(ie,Sa),Ha($a,`height: ${k??""}px`)},[()=>(a(E),g(h),i(()=>a(E).value?h(a(E).value):"")),()=>(a(E),i(()=>a(E).value?Math.max(4,Math.round(a(E).share*F)):1))]),c(I,aa)}),e(m);var ja=n(m,2);J(ja,5,o,I=>I.day,(I,E)=>{var aa=Zt(),wa=t(aa,!0);e(aa),R(()=>u(wa,(a(E),i(()=>a(E).label)))),c(I,aa)}),e(ja),e(Ea),e(pa),Ft(pa,(I,E)=>q?.(I),()=>o().length),R(I=>{ta(pa,"data-tone",p()||void 0),ta(pa,"aria-label",`${b()??""}: ${I??""}`),Ha(Ea,`--db-n: ${g(o()),i(()=>o().length)??""}; --db-min: 28px`)},[()=>(g(o()),i(()=>o().map(I=>I.title).join(", ")))]),c(r,pa),tt()}var Kt=_('<div class="as-card ds-skin svelte-1a7179i" aria-busy="true" aria-label="Traffic"><div class="as-stats svelte-1a7179i"></div></div>'),Vt=_('<div class="as-stat svelte-1a7179i"><dt class="svelte-1a7179i"> </dt> <dd class="as-v svelte-1a7179i"> </dd> <dd class="as-sub svelte-1a7179i"> <span class="as-src svelte-1a7179i"> </span></dd></div>'),Jt=_('<p class="as-empty svelte-1a7179i">Numbers unavailable</p>'),Xt=_('<div class="as-card ds-skin svelte-1a7179i"><div class="as-cardhead svelte-1a7179i"><h3 class="svelte-1a7179i"><span class="as-key svelte-1a7179i" aria-hidden="true"></span> </h3><span class="svelte-1a7179i"> </span></div> <!></div>'),Gt=_('<p class="as-empty svelte-1a7179i">Unavailable</p>'),Qt=_('<p class="as-empty svelte-1a7179i">No page views in this period</p>'),as=_('<tr class="svelte-1a7179i"><td class="svelte-1a7179i"><span class="as-name svelte-1a7179i"><span><span class="as-host svelte-1a7179i"> </span> </span><!></span><span class="as-bar svelte-1a7179i" aria-hidden="true"></span></td><td class="r svelte-1a7179i"> </td><td class="r svelte-1a7179i"> </td></tr>'),es=_('<div class="as-tw svelte-1a7179i"><table class="svelte-1a7179i"><thead><tr><th class="svelte-1a7179i">Section</th><th class="r svelte-1a7179i">People</th><th class="r svelte-1a7179i">Views</th></tr></thead><tbody class="svelte-1a7179i"></tbody></table></div>'),ts=_('<p class="as-empty svelte-1a7179i">Unavailable</p>'),ss=_('<p class="as-empty svelte-1a7179i">No sessions in this period</p>'),rs=_('<tr class="svelte-1a7179i"><td class="svelte-1a7179i"> <span class="as-bar svelte-1a7179i" aria-hidden="true"></span></td><td class="r svelte-1a7179i"> </td><td class="r svelte-1a7179i"> </td></tr>'),is=_('<div class="as-tw svelte-1a7179i"><table class="svelte-1a7179i"><thead><tr><th class="svelte-1a7179i">Channel</th><th class="r svelte-1a7179i">People</th><th class="r svelte-1a7179i">Sessions</th></tr></thead><tbody class="svelte-1a7179i"></tbody></table></div>'),ns=_('<p class="as-empty svelte-1a7179i">Unavailable</p>'),ls=_('<p class="as-empty svelte-1a7179i">No sessions in this period</p>'),os=_('<span class="as-line as-dim as-url svelte-1a7179i"> </span>'),ds=_('<span class="as-line as-url svelte-1a7179i"> <span class="as-n svelte-1a7179i"> </span></span>'),vs=_('<tr class="svelte-1a7179i"><td class="svelte-1a7179i"><span class="as-name svelte-1a7179i"><span class="as-url svelte-1a7179i"> </span><!></span> <!> <span class="as-bar svelte-1a7179i" aria-hidden="true"></span></td><td class="as-dim svelte-1a7179i"></td><td class="r svelte-1a7179i"> </td><td class="r svelte-1a7179i"> </td></tr>'),cs=_('<div class="as-tw svelte-1a7179i"><table class="wide svelte-1a7179i"><thead><tr><th class="svelte-1a7179i">Source</th><th class="svelte-1a7179i">Landed on</th><th class="r svelte-1a7179i">People</th><th class="r svelte-1a7179i">Sessions</th></tr></thead><tbody class="svelte-1a7179i"></tbody></table></div>'),us=_('<p class="as-empty svelte-1a7179i">Unavailable</p>'),ps=_('<p class="as-empty svelte-1a7179i">No page views in this period</p>'),_s=_('<tr class="svelte-1a7179i"><td class="as-url svelte-1a7179i"><span class="as-host svelte-1a7179i"> </span> <span class="as-bar svelte-1a7179i" aria-hidden="true"></span></td><td class="r svelte-1a7179i"> </td><td class="r svelte-1a7179i"> </td></tr>'),hs=_('<div class="as-tw svelte-1a7179i"><table class="svelte-1a7179i"><thead><tr><th class="svelte-1a7179i">Page</th><th class="r svelte-1a7179i">People</th><th class="r svelte-1a7179i">Views</th></tr></thead><tbody class="svelte-1a7179i"></tbody></table></div>
1'),ms=_('<p class="as-meta svelte-1a7179i" aria-live="polite"> <!></p> <!> <!> <div class="as-card ds-skin svelte-1a7179i"><dl class="as-stats svelte-1a7179i"></dl> <p class="as-hint svelte-1a7179i"><!> </p></div> <!> <div class="as-two svelte-1a7179i"><div class="as-card ds-skin svelte-1a7179i"><div class="as-cardhead svelte-1a7179i"><h3 class="svelte-1a7179i">Where they went</h3><span class="svelte-1a7179i">sections</span></div> <!></div> <div class="as-card ds-skin svelte-1a7179i"><div class="as-cardhead svelte-1a7179i"><h3 class="svelte-1a7179i">Where they came from</h3><span class="svelte-1a7179i">channels</span></div> <!></div></div> <div class="as-card ds-skin svelte-1a7179i"><div class="as-cardhead svelte-1a7179i"><h3 class="svelte-1a7179i">Sources and the pages people landed on</h3></div> <!></div> <div class="as-card ds-skin svelte-1a7179i"><div class="as-cardhead svelte-1a7179i"><h3 class="svelte-1a7179i">Top pages</h3></div> <!></div>',1),fs=_('<span class="as-meta svelte-1a7179i"> </span>'),bs=_('<div class="as-card ds-skin svelte-1a7179i" aria-busy="true" aria-label="Subscriptions"><div class="as-stats svelte-1a7179i"></div></div>'),gs=_('<div class="as-stat svelte-1a7179i"><dt class="svelte-1a7179i"> </dt> <dd class="as-v svelte-1a7179i"> </dd> <dd class="as-sub svelte-1a7179i"> </dd></div>'),ys=_('<p class="as-empty svelte-1a7179i">No purchases yet</p>'),xs=_('<tr class="svelte-1a7179i"><td class="svelte-1a7179i"><span class="as-name svelte-1a7179i"><span> </span><!></span> <span class="as-line as-dim nw svelte-1a7179i"> </span></td><td class="as-dim svelte-1a7179i"> </td><td class="svelte-1a7179i"><span class="as-st svelte-1a7179i"><!> </span></td><td class="r svelte-1a7179i"> </td><td class="r as-dim svelte-1a7179i"> </td><td class="r as-dim svelte-1a7179i"> </td><td class="r as-dim svelte-1a7179i"> </td></tr>'),ws=_('<div class="as-tw svelte-1a7179i"><table class="wide svelte-1a7179i"><thead><tr><th class="svelte-1a7179i">User</th><th class="svelte-1a7179i">Plan</th><th class="svelte-1a7179i">Status</th><th class="r svelte-1a7179i">MRR</th><th class="r svelte-1a7179i">Purchased</th><th class="r svelte-1a7179i">Renews or ends</th><th class="r svelte-1a7179i">Lemon Squeezy</th></tr></thead><tbody class="svelte-1a7179i"></tbody></table></div>'),$s=_('<p class="as-empty svelte-1a7179i">None</p>'),Ss=_('<tr class="svelte-1a7179i"><td class="svelte-1a7179i"><span class="as-name svelte-1a7179i"><span> </span><!></span> <span class="as-line as-dim nw svelte-1a7179i"> </span></td><td class="as-dim svelte-1a7179i"> </td></tr>'),Ps=_('<div class="as-tw svelte-1a7179i"><table class="svelte-1a7179i"><thead><tr><th class="svelte-1a7179i">User</th><th class="svelte-1a7179i">Plan</th></tr></thead><tbody class="svelte-1a7179i"></tbody></table></div>'),ks=_('<div class="as-card ds-skin svelte-1a7179i"><dl class="as-stats svelte-1a7179i"></dl></div> <div class="as-card ds-skin svelte-1a7179i"><div class="as-cardhead svelte-1a7179i"><h3 class="svelte-1a7179i"><span class="as-key svelte-1a7179i" data-tone="pro" aria-hidden="true"></span>Purchases by day</h3><span class="svelte-1a7179i">all time</span></div> <!></div> <div class="as-card ds-skin svelte-1a7179i"><div class="as-cardhead svelte-1a7179i"><h3 class="svelte-1a7179i">PRO subscriptions</h3><span class="svelte-1a7179i"> </span></div> <!></div> <div class="as-card ds-skin svelte-1a7179i"><div class="as-cardhead svelte-1a7179i"><h3 class="svelte-1a7179i">PRO without a purchase</h3><span class="svelte-1a7179i">assigned or gifted by the team</span></div> <!></div>',1),Ts=_('<section class="as-sec svelte-1a7179i" aria-labelledby="as-traffic"><div class="as-sechead svelte-1a7179i"><!> <div class="as-ctrl svelte-1a7179i"><!> <!></div></div> <!></section> <section class="as-sec svelte-1a7179i" aria-labelledby="as-subs"><div class="as-sechead svelte-1a7179i"><!> <!></div> <!></section>',1),Ns=_('<div class="as svelte-1a7179i"><!> <!></div>');function As(r,s){et(s,!1);const o=()=>Mt(Dt,"$authStore",b),[b,p]=Ut(),F=j(),q=j(),pa=j(),Ea=j(),m=j(),ja=j(),I=j(),E=j(),aa=j(),wa="stats-title",ie=Ht();let $a=j(qe(He(Ce,"today"))),Sa=j(He(Fe,"exclude")==="include"),k=j(null),la=j("loading"),qa=j(""),ne=0,A=j(null),Pa=j("loading"),xe=j(""),Va=j(!1),za=!0,we=null;async function Ja(sa){if(!sa?.userId)return;const ra=++ne;N(la,"loading");try{const ka=await qt(sa,{period:a($a),tz:ie,includeTeam:a(Sa)});if(!za||ra!==ne)return;N(k,ka),N(la,"ready")}
1catch(ka){if(!za||ra!==ne)return;N(qa,ka.message),N(la,"error")}}async function $e(sa){if(sa?.userId){a(A)||N(Pa,"loading");try{const ra=await zt(sa);if(!za)return;N(A,ra),N(Pa,"ready")}catch(ra){if(!za)return;N(xe,ra.message),N(Pa,ra.status===401||ra.status===403?"denied":"error")}}}async function Se(){N(Va,!0),await Promise.all([Ja(o().user),$e(o().user)]),N(Va,!1)}function it(sa){const ra=qe(sa.detail.value);ra!==a($a)&&(N($a,ra),je(Ce,a($a)),Ja(o().user))}function nt(){N(Sa,!a(Sa)),je(Fe,a(Sa)?"include":"exclude"),Ja(o().user)}$t(()=>{we=Et(sa=>{Ja(sa),$e(sa)})}),St(()=>{za=!1,we?.()}),fa(()=>o(),()=>{N(F,o().user)}),fa(()=>(a(Pa),a(qa)),()=>{N(q,a(Pa)==="denied"||a(qa)==="Admin access required")}),fa(()=>(a(k),Be),()=>{N(pa,a(k)?Be(a(k)):[])}),fa(()=>(a(k),Ze),()=>{N(Ea,a(k)?Ze(a(k)):[])}),fa(()=>a(k),()=>{N(m,a(k)?.posthog||{})}),fa(()=>(a(k),te),()=>{N(ja,a(k)?te(a(k).daily,"people"):null)}),fa(()=>(a(k),te),()=>{N(I,a(k)?te(a(k).daily,"signups"):null)}),fa(()=>(a(A),Ke),()=>{N(E,a(A)?Ke(a(A)):[])}),fa(()=>(a(A),Ge),()=>{N(aa,a(A)?Ge(a(A).by_day):null)}),Pt(),at(),Ct(r,{section:"admin-stats",title:"Stats",crumbs:[{label:"Admin"},{label:"Stats"}],children:(sa,ra)=>{var ka=Ns(),Pe=t(ka);Rt(Pe,{variant:"page",title:"Site stats",titleId:wa,titleTabindex:-1,lede:"Who came to the site, where from, and how PRO is selling. Only admins see this page."});var lt=n(Pe,2);{var ot=La=>{fe(La,{kind:"403",title:"This page is for admins",lede:"Your account can’t see site stats. Ask an admin if you need the numbers."})},dt=La=>{var ke=Ts(),le=me(ke),oe=t(le),Te=t(oe);Re(Te,{id:"as-traffic",children:(x,P)=>{ua();var L=va("Traffic");c(x,L)},$$slots:{default:!0}});var Ne=n(Te,2),Ae=t(Ne);Ot(Ae,{variant:"soft",label:"Period",get options(){return st},get value(){return a($a)},$$events:{change:it}});var vt=n(Ae,2);{let x=Ya(()=>!a(Sa));Lt(vt,{get on(){return a(x)},$$events:{click:nt},children:(P,L)=>{ua();var z=va("No team");c(P,z)},$$slots:{default:!0}})}e(Ne),e(oe);var ct=n(oe,2);{var ut=x=>{var P=Kt(),L=t(P);J(L,4,()=>[0,1,2,3,4],z=>z,(z,Ta)=>{Ie(z,{lines:["60%","40%"],height:14})}),e(L),e(P),c(x,P)},pt=x=>{{let P=Ya(()=>a(qa)||"The server didn’t answer.");fe(x,{kind:"load",title:"Traffic didn’t load",get lede(){return a(P)},get retrying(){return a(Va)},$$events:{retry:Se}})}},_t=x=>{var P=ms(),L=me(P),z=t(L,!0),Ta=n(z);{var ve=l=>{var v=va(", updating…");c(l,v)};C(Ta,l=>{a(la)==="loading"&&l(ve)})}e(L);var Xa=n(L,2);{var ce=l=>{Oe(l,{tone:"warn",plate:"band",children:(v,y)=>{ua();var $=va();R(()=>u($,`Refresh failed (${a(qa)??""}). These are the previous numbers.`)),c(v,$)},$$slots:{default:!0}})};C(Xa,l=>{a(la)==="error"&&l(ce)})}var Ra=n(Xa,2);J(Ra,1,()=>a(Ea),Da,(l,v)=>{Oe(l,{tone:"warn",plate:"band",children:(y,$)=>{ua();var B=va();R(()=>u(B,a(v))),c(y,B)},$$slots:{default:!0}})});var ba=n(Ra,2),Ia=t(ba);J(Ia,5,()=>a(pa),l=>l.k,(l,v)=>{var y=Vt(),$=t(y),B=t($,!0);e($);var d=n($,2),M=t(d,!0);e(d);var S=n(d,2),T=t(S,!0),D=n(T),O=t(D);e(D),e(S),e(y),R(()=>{ta(y,"data-tone",(a(v),i(()=>a(v).tone||void 0))),u(B,(a(v),i(()=>a(v).k))),u(M,(a(v),i(()=>a(v).v??"—"))),u(T,(a(v),i(()=>a(v).sub))),u(O,`, ${a(v),i(()=>a(v).src)??""}`)}),c(l,y)}),e(Ia);var Ga=n(Ia,2),Qa=t(Ga);Le(Qa,{name:"info",size:14});var ue=n(Qa,1,!0);e(Ga),e(ba);var ae=n(ba,2);J(ae,1,()=>[["People per day","PostHog, 30 days",a(ja),"people"],["Sign-ups per day","Database, 30 days",a(I),"accounts"]],([l,v,y,$])=>l,(l,v)=>{var y=Ee(()=>kt(a(v),4));let $=()=>a(y)[0],B=()=>a(y)[1],d=()=>a(y)[2],M=()=>a(y)[3];var S=Xt(),T=t(S),D=t(T),O=t(D),ia=n(O,1,!0);e(D);var K=n(D),H=t(K,!0);e(K),e(T);var G=n(T,2);{var na=Q=>{Qe(Q,{get bars(){return d()},get label(){return $()},get tone(){return M()}})},V=Q=>{var ca=Jt();c(Q,ca)};C(G,Q=>{d()?Q(na):Q(V,!1)})}e(S),R(()=>{ta(S,"data-stale",a(la)==="loading"||void 0),ta(O,"data-tone",M()),u(ia,$()),u(H,B())}),c(l,S)});var Na=n(ae,2),Ba=t(Na),pe=n(t(Ba),2);{var _e=l=>{var v=Gt();c(l,v)},w=l=>{var v=Qt();c(l,v)},U=l=>{var v=es(),y=t(v),$=n(t(y));J($,5,()=>(a(m),i(()=>a(m).sections)),Da,(B,d)=>{var M=as(),S=t(M),T=t(S),D=t(T),O=t(D),ia=t(O,!0);e(O);var K=n(O,1,!0);e(D);var H=n(D);{var G=ga=>{ee(ga,{children:(Za,W)=>{ua();var Z=va("Landing");c(Za,Z)},$$slots:{default:!0}})};C(H,ga=>{a(d),i(()=>a(d).section==="/"&&a(d).host==="twozero.ai")&&ga(G)})}e(T);var na=n(T);e(S);var V=n(S),Q=t(V,!0);e(V);
1var ca=n(V),he=t(ca,!0);e(ca),e(M),R((ga,Za,W)=>{u(ia,(a(d),i(()=>a(d).host))),u(K,(a(d),i(()=>a(d).section||"(unknown)"))),Ha(na,`--_w: ${ga??""}`),u(Q,Za),u(he,W)},[()=>(g(xa),a(d),a(m),i(()=>xa(a(d).people,a(m).sections,"people"))),()=>(g(h),a(d),i(()=>h(a(d).people))),()=>(g(h),a(d),i(()=>h(a(d).pageviews)))]),c(B,M)}),e($),e(y),e(v),c(l,v)};C(pe,l=>{a(m),i(()=>a(m).sections==null)?l(_e):(a(m),i(()=>!a(m).sections.length)?l(w,1):l(U,!1))})}e(Ba);var ea=n(Ba,2),oa=n(t(ea),2);{var _a=l=>{var v=ts();c(l,v)},f=l=>{var v=ss();c(l,v)},X=l=>{var v=is(),y=t(v),$=n(t(y));J($,5,()=>(a(m),i(()=>a(m).channels)),Da,(B,d)=>{var M=rs(),S=t(M),T=t(S,!0),D=n(T);e(S);var O=n(S),ia=t(O,!0);e(O);var K=n(O),H=t(K,!0);e(K),e(M),R((G,na,V)=>{u(T,(a(d),i(()=>a(d).channel||"(unknown)"))),Ha(D,`--_w: ${G??""}`),u(ia,na),u(H,V)},[()=>(g(xa),a(d),a(m),i(()=>xa(a(d).people,a(m).channels,"people"))),()=>(g(h),a(d),i(()=>h(a(d).people))),()=>(g(h),a(d),i(()=>h(a(d).sessions)))]),c(B,M)}),e($),e(y),e(v),c(l,v)};C(oa,l=>{a(m),i(()=>a(m).channels==null)?l(_a):(a(m),i(()=>!a(m).channels.length)?l(f,1):l(X,!1))})}e(ea),e(Na);var Y=n(Na,2),da=n(t(Y),2);{var ha=l=>{var v=ns();c(l,v)},Aa=l=>{var v=ls();c(l,v)},Wa=l=>{var v=cs(),y=t(v),$=n(t(y));J($,5,()=>(a(m),i(()=>a(m).sources)),Da,(B,d)=>{var M=vs(),S=t(M),T=t(S),D=t(T),O=t(D,!0);e(D);var ia=n(D);{var K=W=>{ee(W,{children:(Z,ya)=>{ua();var ma=va();R(()=>u(ma,(a(d),i(()=>a(d).channel)))),c(Z,ma)},$$slots:{default:!0}})};C(ia,W=>{a(d),i(()=>a(d).channel)&&W(K)})}e(T);var H=n(T,2);{var G=W=>{var Z=os(),ya=t(Z,!0);e(Z),R(ma=>u(ya,ma),[()=>(g(se),a(d),i(()=>se(a(d))))]),c(W,Z)},na=Ee(()=>(g(se),a(d),i(()=>se(a(d)))));C(H,W=>{a(na)&&W(G)})}var V=n(H,2);e(S);var Q=n(S);J(Q,5,()=>(a(d),i(()=>a(d).entries||[])),Da,(W,Z)=>{var ya=ds(),ma=t(ya),De=n(ma),xt=t(De,!0);e(De),e(ya),R(wt=>{u(ma,`${a(Z),i(()=>a(Z).path||"(unknown)")??""} `),u(xt,wt)},[()=>(g(h),a(Z),i(()=>h(a(Z).people)))]),c(W,ya)},W=>{ua();var Z=va("—");c(W,Z)}),e(Q);var ca=n(Q),he=t(ca,!0);e(ca);var ga=n(ca),Za=t(ga,!0);e(ga),e(M),R((W,Z,ya,ma)=>{u(O,W),Ha(V,`--_w: ${Z??""}`),u(he,ya),u(Za,ma)},[()=>(g(Ye),a(d),i(()=>Ye(a(d)))),()=>(g(xa),a(d),a(m),i(()=>xa(a(d).people,a(m).sources,"people"))),()=>(g(h),a(d),i(()=>h(a(d).people))),()=>(g(h),a(d),i(()=>h(a(d).sessions)))]),c(B,M)}),e($),e(y),e(v),c(l,v)};C(da,l=>{a(m),i(()=>a(m).sources==null)?l(ha):(a(m),i(()=>!a(m).sources.length)?l(Aa,1):l(Wa,!1))})}e(Y);var Ua=n(Y,2),Oa=n(t(Ua),2);{var Ca=l=>{var v=us();c(l,v)},Fa=l=>{var v=ps();c(l,v)},Ma=l=>{var v=hs(),y=t(v),$=n(t(y));J($,5,()=>(a(m),i(()=>a(m).pages)),Da,(B,d)=>{var M=_s(),S=t(M),T=t(S),D=t(T,!0);e(T);var O=n(T,1,!0),ia=n(O);e(S);var K=n(S),H=t(K,!0);e(K);var G=n(K),na=t(G,!0);e(G),e(M),R((V,Q,ca)=>{u(D,(a(d),i(()=>a(d).host))),u(O,(a(d),i(()=>a(d).path||"(unknown)"))),Ha(ia,`--_w: ${V??""}`),u(H,Q),u(na,ca)},[()=>(g(xa),a(d),a(m),i(()=>xa(a(d).people,a(m).pages,"people"))),()=>(g(h),a(d),i(()=>h(a(d).people))),()=>(g(h),a(d),i(()=>h(a(d).pageviews)))]),c(B,M)}),e($),e(y),e(v),c(l,v)};C(Oa,l=>{a(m),i(()=>a(m).pages==null)?l(Ca):(a(m),i(()=>!a(m).pages.length)?l(Fa,1):l(Ma,!1))})}e(Ua),R((l,v)=>{u(z,l),ta(ba,"data-stale",a(la)==="loading"||void 0),u(ue,v),ta(Na,"data-stale",a(la)==="loading"||void 0),ta(Y,"data-stale",a(la)==="loading"||void 0),ta(Ua,"data-stale",a(la)==="loading"||void 0)},[()=>(g(ze),a(k),i(()=>ze(a(k)))),()=>(g(We),a(k),i(()=>We(a(k))))]),c(x,P)};C(ct,x=>{!a(k)&&a(la)==="loading"?x(ut):a(k)?x(_t,!1):x(pt,1)})}e(le);var Ue=n(le,2),de=t(Ue),Me=t(de);Re(Me,{id:"as-subs",children:(x,P)=>{ua();var L=va("Subscriptions");c(x,L)},$$slots:{default:!0}});var ht=n(Me,2);{var mt=x=>{var P=fs(),L=t(P);e(P),R(z=>u(L,`Updated ${z??""}, active means the plan is on today`),[()=>(g(ye),a(A),i(()=>ye(a(A).generated_at)))]),c(x,P)};C(ht,x=>{a(A)&&x(mt)})}e(de);var ft=n(de,2);{var bt=x=>{var P=bs(),L=t(P);J(L,4,()=>[0,1,2,3],z=>z,(z,Ta)=>{Ie(z,{lines:["60%","40%"],height:14})}),e(L),e(P),c(x,P)},gt=x=>{{let P=Ya(()=>a(xe)||"The server didn’t answer.");fe(x,{kind:"load",title:"Subscriptions didn’t load",get lede(){return a(P)},get retrying(){return a(Va)},$$events:{retry:Se}})}},yt=x=>{var P=ks(),L=me(P),z=t(L);J(z,5,()=>a(E),w=>w.k,(w,U)=>{var ea=gs(),oa=t(ea),_a=t(oa,!0);e(oa);var f=n(oa,2),X=t(f,!0);e(f);var Y=n(f,2),da=t(Y,!0);e(Y),e(ea),R(()=>{ta(ea,"data-tone",(a(U),i(()=>a(U).tone||void 0))),u(_a,(a(U),i(()=>a(U).k))),u(X,(a(U),i(()=>a(U).v??"—"))),u(da,(a(U),i(()=>a(U).sub)))}),c(w,ea)}),e(z),e(L);var Ta=n(L,2),ve=n(t(Ta),2);{var Xa=w=>{Qe(w,{get bars(){return a(aa)},label:"Purchases by day",tone:"pro"})},ce=w=>{var U=ys();c(w,U)};C(ve,w=>{a(aa)?w(Xa):w(ce,!1)})}e(Ta);var Ra=n(Ta,2),ba=t(Ra),Ia=n(t(ba)),Ga=t(Ia);e(Ia),e(ba);var Qa=n(ba,2);{var ue=w=>{It(w,{icon:"receipt",title:"No subscriptions yet",lede:"Purchases from the pricing page show up here.",size:"panel"})},ae=w=>{var U=ws(),ea=t(U),oa=n(t(ea));J(oa,5,()=>(a(A),i(()=>a(A).subscriptions)),_a=>_a.id,(_a,f)=>{const X=Ya(()=>(g(Ve),a(f),i(()=>Ve(a(f)))));var Y=xs(),da=t(Y),ha=t(da),Aa=t(ha),Wa=t(Aa,!0);e(Aa);var Ua=n(Aa);{var Oa=H=>{ee(H,{children:(G,na)=>{ua();var V=va("Admin");c(G,V)},$$slots:{default:!0}})};C(Ua,H=>{a(f),i(()=>a(f).isAdmin)&&H(Oa)})}e(ha);var Ca=n(ha,2),Fa=t(Ca,!0);e(Ca),e(da);var Ma=n(da),l=t(Ma,!0);e(Ma);var v=n(Ma),y=t(v),$=t(y);{let H=Ya(()=>(g(Je),g(a(X)),i(()=>Je[a(X).tone]||"circle")));Le($,{get name(){return a(H)},size:14})}var B=n($,1,!0);e(y),e(v);var d=n(v),M=t(d,!0);e(d);var S=n(d),T=t(S,!0);e(S);var D=n(S),O=t(D,!0);e(D);var ia=n(D),K=t(ia,!0);e(ia),e(Y),R((H,G,na,V)=>{u(Wa,(a(f),i(()=>a(f).username||"(no username)"))),u(Fa,(a(f),i(()=>a(f).email||""))),u(l,H),ta(y,"data-tone",(g(a(X)),i(()=>a(X).tone))),u(B,(g(a(X)),i(()=>a(X).label))),u(M,G),u(T,na),u(O,V),u(K,(a(f),i(()=>
1a(f).lsSubscriptionId||"—")))},[()=>(g(Xe),a(f),i(()=>Xe(a(f).billingKey))),()=>(g(ge),a(f),i(()=>ge(a(f).mrrUsd))),()=>(g(Ka),a(f),i(()=>Ka(a(f).createdAt))),()=>(g(Ka),a(f),i(()=>Ka(a(f).renewsAt||a(f).endsAt)))]),c(_a,Y)}),e(oa),e(ea),e(U),c(w,U)};C(Qa,w=>{a(A),i(()=>!a(A).subscriptions?.length)?w(ue):w(ae,!1)})}e(Ra);var Na=n(Ra,2),Ba=n(t(Na),2);{var pe=w=>{var U=$s();c(w,U)},_e=w=>{var U=Ps(),ea=t(U),oa=n(t(ea));J(oa,5,()=>(a(A),i(()=>a(A).admin_assigned)),Da,(_a,f)=>{var X=Ss(),Y=t(X),da=t(Y),ha=t(da),Aa=t(ha,!0);e(ha);var Wa=n(ha);{var Ua=l=>{ee(l,{children:(v,y)=>{ua();var $=va("Admin");c(v,$)},$$slots:{default:!0}})};C(Wa,l=>{a(f),i(()=>a(f).isAdmin)&&l(Ua)})}e(da);var Oa=n(da,2),Ca=t(Oa,!0);e(Oa),e(Y);var Fa=n(Y),Ma=t(Fa,!0);e(Fa),e(X),R(()=>{u(Aa,(a(f),i(()=>a(f).username||"(no username)"))),u(Ca,(a(f),i(()=>a(f).email||""))),u(Ma,(a(f),i(()=>a(f).plan)))}),c(_a,X)}),e(oa),e(ea),e(U),c(w,U)};C(Ba,w=>{a(A),i(()=>!a(A).admin_assigned?.length)?w(pe):w(_e,!1)})}e(Na),R(w=>u(Ga,`${w??""} total`),[()=>(g(h),a(A),i(()=>h(a(A).subscriptions?.length||0)))]),c(x,P)};C(ft,x=>{a(Pa)==="loading"?x(bt):a(Pa)==="error"?x(gt,1):a(A)&&x(yt,2)})}e(Ue),c(La,ke)};C(lt,La=>{a(q)?La(ot):La(dt,!1)})}e(ka),c(sa,ka)},$$slots:{default:!0}}),tt(),p()}var Us=_('<meta name="robots" content="noindex, nofollow"/>');function Gs(r){At("zsopx9",s=>{var o=Us();Tt(()=>{Nt.title="Site stats — TWOZERO"}),c(s,o)}),As(r,{})}export{Gs as component};

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.