feat: add in-memory RPC runtime stats SSE endpoint

This commit is contained in:
line-6000
2026-06-10 00:18:24 +08:00
parent 54b83f8b16
commit 08d409d5eb
161 changed files with 1268 additions and 235 deletions
+1
View File
@@ -0,0 +1 @@
import{r as e}from"./chunk-DECur_0Z.js";import{a as t}from"./auth-store-GibZbQPL.js";import{t as n}from"./react-CO2uhaBc.js";import{Mn as r,Nn as i,Pp as a,cf as o,df as s,ff as c,jn as l,lf as u,of as d,sf as f,uf as p}from"./messages-d1hRBHLP.js";import{t as m}from"./button-CbdgUDvS.js";import{a as h,i as g,n as _,r as v,t as y}from"./select-Cv_sRi68.js";import{c as b,s as x}from"./zod-CQemhjci.js";import{a as S,c as C,i as w,l as T,n as E,o as D,s as O,t as k}from"./form-Db7d571a.js";import{t as A}from"./input-CusCjhBW.js";import{t as j}from"./page-header-DkeFH2Rh.js";import{n as M,t as N}from"./labels-CfnKbsNx.js";import{a as P,i as F,n as I,t as L}from"./lib-paj-DJMX.js";var R=e(n(),1),z=a(),B=x({defaultToken:b().trim().min(1,o()),defaultCurrency:b().trim().min(1,f()),defaultNetwork:b().trim().min(1,d())});function V(){let e=F(`epay`),n=t.useQuery(`get`,`/admin/api/v1/config`),i=P(),a=(0,R.useRef)(``),o=T({resolver:C(B),defaultValues:{defaultToken:`usdt`,defaultCurrency:`CNY`,defaultNetwork:`TRON`}}),c=(0,R.useMemo)(()=>n.data?.data?.supported_assets??[],[n.data?.data?.supported_assets]),d=(0,R.useMemo)(()=>H(c),[c]),f=o.watch(`defaultNetwork`),b=(0,R.useMemo)(()=>U(c,f),[c,f]);(0,R.useEffect)(()=>{let t=e.data?.data;if(!(t&&!n.isLoading))return;let r=`${e.dataUpdatedAt}:${n.dataUpdatedAt}`;if(a.current===r)return;a.current=r;let i=L(t,`epay.default_network`).trim(),s=d.find(e=>q(e.network,i))?.network||d[0]?.network||i||`TRON`,l=U(c,s),u=L(t,`epay.default_token`).trim(),f=l.find(e=>q(e.value,u))?.value||(u&&l.length===0?u.toLowerCase():l[0]?.value||`usdt`);o.reset({defaultToken:f,defaultCurrency:L(t,`epay.default_currency`,`CNY`).trim().toUpperCase(),defaultNetwork:s})},[n.dataUpdatedAt,n.isLoading,o,d,e.dataUpdatedAt,e.data,c]);async function x(t){await I(i.mutateAsync,[{group:`epay`,key:`epay.default_token`,type:`string`,value:t.defaultToken.toLowerCase()},{group:`epay`,key:`epay.default_currency`,type:`string`,value:t.defaultCurrency.toLowerCase()},{group:`epay`,key:`epay.default_network`,type:`string`,value:t.defaultNetwork.toLowerCase()}],r()),await e.refetch()}return(0,z.jsx)(k,{...o,children:(0,z.jsxs)(`form`,{className:`space-y-6`,onSubmit:o.handleSubmit(x),children:[(0,z.jsxs)(`div`,{className:`grid gap-6 md:grid-cols-2`,children:[(0,z.jsx)(w,{control:o.control,name:`defaultNetwork`,render:({field:e})=>{let t=G(d,e.value),r=t?.network||e.value;return(0,z.jsxs)(S,{children:[(0,z.jsx)(D,{children:u()}),(0,z.jsxs)(y,{disabled:n.isLoading||d.length===0,onValueChange:t=>{e.onChange(t);let n=U(c,t)[0]?.value;o.setValue(`defaultToken`,n??``,{shouldDirty:!0,shouldValidate:!0})},value:e.value,children:[(0,z.jsx)(E,{children:(0,z.jsxs)(g,{className:`w-full`,children:[(0,z.jsx)(`span`,{className:`sr-only`,children:(0,z.jsx)(h,{})}),(0,z.jsx)(`span`,{className:`pointer-events-none`,children:(0,z.jsx)(N,{displayName:t?.displayName,network:r||`TRON`})})]})}),(0,z.jsx)(_,{children:d.map(e=>(0,z.jsx)(v,{textValue:W(e),value:e.network,children:(0,z.jsx)(`span`,{className:`pointer-events-none`,children:(0,z.jsx)(N,{displayName:e.displayName,network:e.network})})},e.network))})]}),(0,z.jsx)(O,{})]})}}),(0,z.jsx)(w,{control:o.control,name:`defaultToken`,render:({field:e})=>{let t=K(b,e.value);return(0,z.jsxs)(S,{children:[(0,z.jsx)(D,{children:s()}),(0,z.jsxs)(y,{disabled:n.isLoading||b.length===0,onValueChange:e.onChange,value:e.value,children:[(0,z.jsx)(E,{children:(0,z.jsxs)(g,{className:`w-full`,children:[(0,z.jsx)(`span`,{className:`sr-only`,children:(0,z.jsx)(h,{})}),(0,z.jsx)(`span`,{className:`pointer-events-none`,children:(0,z.jsx)(M,{token:t||`USDT`})})]})}),(0,z.jsx)(_,{children:b.map(e=>(0,z.jsx)(v,{textValue:e.displayName,value:e.value,children:(0,z.jsx)(`span`,{className:`pointer-events-none`,children:(0,z.jsx)(M,{token:e.displayName})})},e.value))})]}),(0,z.jsx)(O,{})]})}})]}),(0,z.jsx)(w,{control:o.control,name:`defaultCurrency`,render:({field:e})=>(0,z.jsxs)(S,{children:[(0,z.jsx)(D,{children:p()}),(0,z.jsx)(E,{children:(0,z.jsx)(A,{placeholder:`CNY`,...e})}),(0,z.jsx)(O,{})]})}),(0,z.jsx)(m,{disabled:i.isPending||e.isLoading,type:`submit`,children:l()})]})})}function H(e){let t=new Map;for(let n of e){if(!n.network)continue;let e=n.network.toLowerCase();t.has(e)||t.set(e,{displayName:n.display_name,network:n.network})}return Array.from(t.values())}function U(e,t){let n=new Map;for(let r of e)if(q(r.network,t))for(let e of r.tokens??[]){if(!e)continue;let t=e.toLowerCase();n.has(t)||n.set(t,{displayName:e.toUpperCase(),value:t})}return Array.from(n.values())}function W(e){return e.displayName?.trim()||e.network}function G(e,t){return e.find(e=>q(e.network,t))}function K(e,t){return t?e.find(e=>q(e.value,t))?.displayName||t.toUpperCase():``}function q(e,t){return String(e??``).toLowerCase()===String(t??``).toLowerCase()}function J(){return(0,z.jsx)(j,{description:i(),title:c(),variant:`section`,children:(0,z.jsx)(V,{})})}var Y=J;export{Y as component};