码桶

发现社区成员的开源项目

geekssl /

wstats

公开
main
wstats/public/assets/Journey-3qZE92uE.js
Journey-3qZE92uE.js5.1 KB
import{u as C,a as A,c as D,r as n,q as G,b as V,j as s,T as h,f as o,S as q,B as H,t as J}from"./index-GWuvg2UH.js";import{B as E}from"./index-DihvOmSo.js";import{E as x}from"./index-VbOLTMR0.js";import{S as B}from"./index-BZDftoba.js";import{T as K}from"./index-mZVFvfKe.js";import{E as L}from"./EChart-Bps-t-O3.js";import"./IconTickCircle-BYgwCdAe.js";import"./_baseDifference-DopHgqVv.js";import"./index-DIHsQVbu.js";import"./slice-B6jKCnyX.js";import"./object-DkPZvw8u.js";import"./index-BMbdBPA2.js";import"./echarts-CEICS1Jr.js";const M=[1,7,30];function z({title:a,columns:i,items:r}){const{t:c}=C();return s.jsxs("div",{className:"card",style:{padding:0,overflow:"hidden"},children:[s.jsx("div",{className:"card-title",style:{padding:"14px 16px 6px"},children:a}),s.jsx(K,{columns:i,dataSource:r||[],rowKey:(e,m)=>`${m}`,pagination:!1,size:"small",empty:s.jsx(x,{description:c("analysisEmpty")})})]})}function ns(){var v,S,N,b,T,w,k;const{t:a}=C();A();const{site:i}=D(),[r,c]=n.useState(1),[e,m]=n.useState(null),[I,y]=n.useState(!1),[g,j]=n.useState(""),u=n.useCallback(async()=>{if(i){y(!0);try{const{start:t,end:l}=G(r);m(await V.journey(i.id,t,l)),j("")}catch(t){j(t.message)}finally{y(!1)}}},[i,r]);if(n.useEffect(()=>{u()},[u]),!i)return s.jsx("div",{className:"page",children:s.jsx(x,{style:{marginTop:60},title:s.jsx(h.Title,{heading:5,children:a("noSiteHint")})})});const f=(e==null?void 0:e.totals)||{sessions:0,pv:0},p=(e==null?void 0:e.flow)||{nodes:[],links:[]},P=[{title:a("jPath"),dataIndex:"path",ellipsis:{showTitle:!0},render:t=>s.jsx("span",{style:{fontFamily:"monospace",fontSize:12},children:t})},{title:a("auVisits"),dataIndex:"visits",width:110,render:t=>o(t)},{title:a("auPct"),dataIndex:"pct",width:200,render:t=>s.jsxs(q,{style:{width:"100%"},children:[s.jsxs("span",{style:{width:46,textAlign:"right",fontSize:12},children:[t,"%"]}),s.jsx("span",{style:{flex:1,height:6,background:"#f0f1f3",borderRadius:3,overflow:"hidden"},children:s.jsx("span",{style:{display:"block",height:"100%",width:`${Math.min(100,Number(t)||0)}%`,background:"#2a5cff"}})})]})}],$=[{title:a("jFrom"),dataIndex:"from",ellipsis:{showTitle:!0},render:t=>s.jsx("span",{style:{fontFamily:"monospace",fontSize:12},children:t})},{title:a("jTo"),dataIndex:"to",ellipsis:{showTitle:!0},render:t=>s.jsx("span",{style:{fontFamily:"monospace",fontSize:12},children:t})},{title:a("colPv"),dataIndex:"pv",width:100,render:t=>o(t)}],d=t=>String(t).replace(/^\d+\|/,""),F={tooltip:{trigger:"item",formatter:t=>t.dataType==="edge"?`${d(t.data.source)} → ${d(t.data.target)}<br/>${a("colPv")}: ${o(t.data.value)}`:d(t.name)},series:[{type:"sankey",left:10,right:140,top:10,bottom:10,nodeWidth:14,nodeGap:12,nodeAlign:"justify",data:p.nodes.map(t=>({name:t})),links:p.links,label:{color:"#1f2329",fontSize:11,formatter:t=>{const l=d(t.name);return l.length>36?`${l.slice(0,36)}…`:l}},lineStyle:{color:"gradient",curveness:.5,opacity:.3},itemStyle:{color:"#2a5cff"},emphasis:{focus:"adjacency"}}]},R={display:"grid",gridTemplateColumns:"1fr 1fr",gap:16,marginBottom:16};return s.jsxs("div",{className:"page",children:[s.jsxs("div",{className:"toolbar",children:[s.jsx(h.Title,{heading:5,style:{margin:0},children:a("journey")}),s.jsx("div",{style:{display:"flex",gap:6},children:M.map(t=>s.jsx(H,{size:"small",theme:r===t?"solid":"borderless",onClick:()=>c(t),children:a(t===1?"today":t===7?"last7":"last30")},t))})]}),g&&s.jsx(E,{type:"danger",style:{marginBottom:12},description:g}),s.jsxs("div",{className:"stat-grid",style:{marginBottom:16},children:[s.jsxs("div",{className:"stat-card",children:[s.jsx("div",{className:"stat-label",children:a("auVisits")}),s.jsx("div",{className:"stat-value",children:o(f.sessions)}),s.jsxs("div",{className:"stat-sub",children:[(v=e==null?void 0:e.range)==null?void 0:v.start," ~ ",(S=e==null?void 0:e.range)==null?void 0:S.end]})]}),s.jsxs("div",{className:"stat-card",children:[s.jsx("div",{className:"stat-label",children:a("colPv")}),s.jsx("div",{className:"stat-value",children:o(f.pv)}),s.jsxs("div",{className:"stat-sub",children:[a("range"),": ",(N=e==null?void 0:e.range)==null?void 0:N.start," ~ ",(b=e==null?void 0:e.range)==null?void 0:b.end]})]})]}),((T=e==null?void 0:e.totals)==null?void 0:T.capped)&&s.jsx(E,{type:"warning",style:{marginBottom:12},description:a("jCapped")}),I&&!e?s.jsx(B,{active:!0,placeholder:s.jsx(B.Paragraph,{rows:6}),loading:!0}):s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"card",style:{marginBottom:16},children:[s.jsx("div",{className:"card-title",style:{padding:"14px 16px 6px"},children:a("jFlowTitle")}),p.links.length>0?s.jsx(L,{option:F,height:380}):s.jsx(x,{description:a("analysisEmpty"),style:{padding:40}})]}),s.jsxs("div",{style:R,children:[s.jsx(z,{title:a("jPathRank"),columns:P,items:e==null?void 0:e.paths}),s.jsx(z,{title:a("jTransTop"),columns:$,items:e==null?void 0:e.transitions})]})]}),s.jsxs(h.Text,{type:"tertiary",style:{fontSize:12,display:"block",marginTop:16},children:[i.name," · ",i.domain," · ",a("range"),": ",(w=e==null?void 0:e.range)==null?void 0:w.start," ~ ",(k=e==null?void 0:e.range)==null?void 0:k.end,"(",J(),")"]})]})}export{ns as default};