mirror of
https://github.com/dmduran12/pymc_console-dist.git
synced 2026-07-07 02:11:01 +02:00
Sync build v0.9.169
Automated sync from private repository. Commit: af34a4007730703b7bd2ac344afbf883c190af34
This commit is contained in:
Vendored
+1
-1
@@ -1 +1 @@
|
||||
0.9.168
|
||||
0.9.169
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+2
-2
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
@@ -1 +1 @@
|
||||
import{r as e,j as s,F as a,aZ as t,a_ as r}from"./vendor-react-DtVWNgeu.js";import{c as l}from"./recharts-C9LxPobD.js";import{ab as i,ac as c,b as n,ad as o,r as m,aa as x,ae as d}from"./index-BIsccma_.js";import{u as h}from"./usePolling-DXhhvgB-.js";import{P as p,b as j,a as g,c as u,L as v}from"./PageLayout-CG02PCA-.js";import"./vendor-core-WoOfkQwm.js";import"./deckgl-DTsmDcfs.js";const f=e.memo(function({log:e}){return s.jsx("div",{className:"p-3 rounded-2xl bg-white/[0.02] hover:bg-white/[0.04] transition-colors",children:s.jsxs("div",{className:"flex items-baseline gap-3",children:[s.jsx("span",{className:l("type-data-sm w-14 shrink-0",d(e.level)),children:e.level}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("p",{className:"type-data-sm text-text-primary break-words whitespace-pre-wrap",children:e.message}),s.jsx("p",{className:"type-data-xs text-text-muted mt-1",children:new Date(e.timestamp).toLocaleString()})]})]})})});function w({showDebug:e,onToggle:a}){return s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{className:l("type-data-sm",e?"text-accent-tertiary":"text-accent-primary"),children:e?"DEBUG":"INFO"}),s.jsx("button",{onClick:a,className:l("relative w-10 h-5 rounded-full transition-colors duration-200",e?"bg-accent-tertiary":"bg-accent-primary"),role:"switch","aria-checked":e,children:s.jsx("span",{className:l("absolute top-[2px] left-[2px] w-4 h-4 bg-white rounded-full shadow-sm transition-transform duration-200",e?"translate-x-5":"translate-x-0")})})]})}function N(){const d=i(),N=c(),b=n(),y=o(),k=m(),[D,L]=e.useState(!1),P=e.useCallback(()=>{L(e=>!e)},[]),C=D?d:d.filter(e=>"DEBUG"!==e.level);return h(y,x.logs,b),s.jsxs(p,{children:[s.jsx(j,{title:"System Logs",icon:s.jsx(a,{}),controls:s.jsx(w,{showDebug:D,onToggle:P})}),s.jsxs(g,{noPadding:!0,children:[s.jsx(u,{listHeader:!0,icon:s.jsx(a,{className:"icon-sm"}),title:"Log Entries",actions:s.jsx("button",{onClick:()=>k(!b),className:l("transition-colors",b?"text-signal-critical hover:text-signal-critical/80":"text-accent-primary hover:text-accent-primary/80 animate-pulse-slow"),title:b?"Pause":"Resume",children:b?s.jsx(t,{className:"w-5 h-5"}):s.jsx(r,{className:"w-5 h-5"})})}),s.jsx("div",{className:"space-y-2 max-h-[calc(100vh-300px)] sm:max-h-[calc(100vh-250px)] overflow-y-auto p-4",children:N&&0===d.length?s.jsx(v,{count:10}):0===C.length?s.jsx("div",{className:"text-center py-12 text-text-muted",children:0===d.length?"No logs available":"No logs match selected filters"}):C.map((e,a)=>s.jsx(f,{log:e},`${e.timestamp}-${a}`))})]})]})}export{N as default};
|
||||
import{r as e,j as s,F as a,aZ as t,a_ as r}from"./vendor-react-DtVWNgeu.js";import{c as l}from"./recharts-C9LxPobD.js";import{ab as i,ac as c,b as n,ad as o,r as m,aa as x,ae as d}from"./index-Bmit1I8S.js";import{u as h}from"./usePolling-DXhhvgB-.js";import{P as p,b as j,a as g,c as u,L as v}from"./PageLayout-CG02PCA-.js";import"./vendor-core-WoOfkQwm.js";import"./deckgl-DTsmDcfs.js";const f=e.memo(function({log:e}){return s.jsx("div",{className:"p-3 rounded-2xl bg-white/[0.02] hover:bg-white/[0.04] transition-colors",children:s.jsxs("div",{className:"flex items-baseline gap-3",children:[s.jsx("span",{className:l("type-data-sm w-14 shrink-0",d(e.level)),children:e.level}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("p",{className:"type-data-sm text-text-primary break-words whitespace-pre-wrap",children:e.message}),s.jsx("p",{className:"type-data-xs text-text-muted mt-1",children:new Date(e.timestamp).toLocaleString()})]})]})})});function w({showDebug:e,onToggle:a}){return s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{className:l("type-data-sm",e?"text-accent-tertiary":"text-accent-primary"),children:e?"DEBUG":"INFO"}),s.jsx("button",{onClick:a,className:l("relative w-10 h-5 rounded-full transition-colors duration-200",e?"bg-accent-tertiary":"bg-accent-primary"),role:"switch","aria-checked":e,children:s.jsx("span",{className:l("absolute top-[2px] left-[2px] w-4 h-4 bg-white rounded-full shadow-sm transition-transform duration-200",e?"translate-x-5":"translate-x-0")})})]})}function N(){const d=i(),N=c(),b=n(),y=o(),k=m(),[D,L]=e.useState(!1),P=e.useCallback(()=>{L(e=>!e)},[]),C=D?d:d.filter(e=>"DEBUG"!==e.level);return h(y,x.logs,b),s.jsxs(p,{children:[s.jsx(j,{title:"System Logs",icon:s.jsx(a,{}),controls:s.jsx(w,{showDebug:D,onToggle:P})}),s.jsxs(g,{noPadding:!0,children:[s.jsx(u,{listHeader:!0,icon:s.jsx(a,{className:"icon-sm"}),title:"Log Entries",actions:s.jsx("button",{onClick:()=>k(!b),className:l("transition-colors",b?"text-signal-critical hover:text-signal-critical/80":"text-accent-primary hover:text-accent-primary/80 animate-pulse-slow"),title:b?"Pause":"Resume",children:b?s.jsx(t,{className:"w-5 h-5"}):s.jsx(r,{className:"w-5 h-5"})})}),s.jsx("div",{className:"space-y-2 max-h-[calc(100vh-300px)] sm:max-h-[calc(100vh-250px)] overflow-y-auto p-4",children:N&&0===d.length?s.jsx(v,{count:10}):0===C.length?s.jsx("div",{className:"text-center py-12 text-text-muted",children:0===d.length?"No logs available":"No logs match selected filters"}):C.map((e,a)=>s.jsx(f,{log:e},`${e.timestamp}-${a}`))})]})]})}export{N as default};
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+2
-2
File diff suppressed because one or more lines are too long
Vendored
+1
-1
@@ -1 +1 @@
|
||||
import{d as t,as as e}from"./index-BIsccma_.js";function o(t){if(Array.isArray(t))return t;if("string"==typeof t&&t.startsWith("["))try{const e=JSON.parse(t);return Array.isArray(e)?e:[]}catch{return[]}return[]}function n(n,r,s){const a=new Map;for(const e of r){const o=t(e);a.has(o)||a.set(o,e)}const c=new Map,i=new Map;for(const t of n){const n=t.route??t.route_type;if(!e(n))continue;const r=o(t.original_path);if(0===r.length)continue;const f=r.map(t=>t.toUpperCase());if(!t.transmitted&&f.length>=2){const t=f[f.length-2];if(t){const e=a.get(t);e&&i.set(e,(i.get(e)??0)+1)}}if(f.includes(s))for(const t of f){if(t===s)continue;const e=a.get(t);e&&c.set(e,(c.get(e)??0)+1)}}let f=0,u=0;for(const t of r)f=Math.max(f,c.get(t)??0),u=Math.max(u,i.get(t)??0);const h=new Map;let d=0,g=0,l=0;for(const t of r){const e=c.get(t)??0,o=i.get(t)??0,n=f>0?Math.round(e/f*100):0,r=u>0?Math.round(o/u*100):0,s=n+r;h.set(t,{hash:t,listenerCount:e,loudCount:o,listenerScore:n,loudScore:r,blendedScore:s}),d=Math.max(d,n),g=Math.max(g,r),l=Math.max(l,s)}return{scores:h,maxListenerScore:d,maxLoudScore:g,maxBlendedScore:l}}const r={YELLOW:"#FBBF24",GREEN:"#719872",RED:"#E12672",GRAY:"#505050"};export{r as L,n as c};
|
||||
import{d as t,as as e}from"./index-Bmit1I8S.js";function o(t){if(Array.isArray(t))return t;if("string"==typeof t&&t.startsWith("["))try{const e=JSON.parse(t);return Array.isArray(e)?e:[]}catch{return[]}return[]}function n(n,r,s){const a=new Map;for(const e of r){const o=t(e);a.has(o)||a.set(o,e)}const c=new Map,i=new Map;for(const t of n){const n=t.route??t.route_type;if(!e(n))continue;const r=o(t.original_path);if(0===r.length)continue;const f=r.map(t=>t.toUpperCase());if(!t.transmitted&&f.length>=2){const t=f[f.length-2];if(t){const e=a.get(t);e&&i.set(e,(i.get(e)??0)+1)}}if(f.includes(s))for(const t of f){if(t===s)continue;const e=a.get(t);e&&c.set(e,(c.get(e)??0)+1)}}let f=0,u=0;for(const t of r)f=Math.max(f,c.get(t)??0),u=Math.max(u,i.get(t)??0);const h=new Map;let d=0,g=0,l=0;for(const t of r){const e=c.get(t)??0,o=i.get(t)??0,n=f>0?Math.round(e/f*100):0,r=u>0?Math.round(o/u*100):0,s=n+r;h.set(t,{hash:t,listenerCount:e,loudCount:o,listenerScore:n,loudScore:r,blendedScore:s}),d=Math.max(d,n),g=Math.max(g,r),l=Math.max(l,s)}return{scores:h,maxListenerScore:d,maxLoudScore:g,maxBlendedScore:l}}const r={YELLOW:"#FBBF24",GREEN:"#719872",RED:"#E12672",GRAY:"#505050"};export{r as L,n as c};
|
||||
+1
-1
@@ -1 +1 @@
|
||||
import{al as t}from"./index-BIsccma_.js";async function e(e,r=10){return t("/api/ping_neighbor",{method:"POST",body:JSON.stringify({target_id:e,timeout:r})})}const r=["Chat Node","Repeater","Room Server","Hybrid Node","Unknown"];async function s(s,o=10){if(o<1||o>60)return{success:!1,error:"Timeout must be 1-60 seconds"};let n;const a=s.match(/^(0x)?([0-9a-fA-F]{1,2})$/);if(a)n=`0x${a[2].padStart(2,"0")}`;else{const e=await async function(e){const s=e.toLowerCase();for(const o of r)try{const e=await t(`/api/adverts_by_contact_type?contact_type=${encodeURIComponent(o)}&hours=168`),r=e.success&&e.data?e.data:e,n=(Array.isArray(r)?r:[]).find(t=>t.node_name&&t.node_name.toLowerCase()===s);if(n&&n.pubkey)return`0x${n.pubkey.substring(0,2)}`}catch{continue}return null}(s);if(!e)return{success:!1,error:`Node '${s}' not found`};n=e}const c=await e(n,o);if(!c.success||!c.data)return{success:!1,error:c.error||"Ping failed"};const i=(u=c.data).rtt_ms>500||u.rssi<-120?"Poor":u.rtt_ms>250||u.rssi<-100?"Fair":u.rtt_ms>100||u.rssi<-80?"Good":"Excellent";var u;return{success:!0,data:{...c.data,quality:i}}}export{s as a,e as p};
|
||||
import{al as t}from"./index-Bmit1I8S.js";async function e(e,r=10){return t("/api/ping_neighbor",{method:"POST",body:JSON.stringify({target_id:e,timeout:r})})}const r=["Chat Node","Repeater","Room Server","Hybrid Node","Unknown"];async function s(s,o=10){if(o<1||o>60)return{success:!1,error:"Timeout must be 1-60 seconds"};let n;const a=s.match(/^(0x)?([0-9a-fA-F]{1,2})$/);if(a)n=`0x${a[2].padStart(2,"0")}`;else{const e=await async function(e){const s=e.toLowerCase();for(const o of r)try{const e=await t(`/api/adverts_by_contact_type?contact_type=${encodeURIComponent(o)}&hours=168`),r=e.success&&e.data?e.data:e,n=(Array.isArray(r)?r:[]).find(t=>t.node_name&&t.node_name.toLowerCase()===s);if(n&&n.pubkey)return`0x${n.pubkey.substring(0,2)}`}catch{continue}return null}(s);if(!e)return{success:!1,error:`Node '${s}' not found`};n=e}const c=await e(n,o);if(!c.success||!c.data)return{success:!1,error:c.error||"Ping failed"};const i=(u=c.data).rtt_ms>500||u.rssi<-120?"Poor":u.rtt_ms>250||u.rssi<-100?"Fair":u.rtt_ms>100||u.rssi<-80?"Good":"Excellent";var u;return{success:!0,data:{...c.data,quality:i}}}export{s as a,e as p};
|
||||
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
@@ -39,7 +39,7 @@
|
||||
--font-data: 'JetBrains Mono', 'SF Mono', Monaco, monospace;
|
||||
}
|
||||
</style>
|
||||
<script type="module" crossorigin src="/assets/index-BIsccma_.js"></script>
|
||||
<script type="module" crossorigin src="/assets/index-Bmit1I8S.js"></script>
|
||||
<link rel="modulepreload" crossorigin href="/assets/vendor-core-WoOfkQwm.js">
|
||||
<link rel="modulepreload" crossorigin href="/assets/vendor-react-DtVWNgeu.js">
|
||||
<link rel="stylesheet" crossorigin href="/assets/index-BvCAJWnK.css">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "pymc_console",
|
||||
"version": "0.9.168",
|
||||
"version": "0.9.169",
|
||||
"description": "Vite + React Dashboard for pyMC_Repeater",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
|
||||
Reference in New Issue
Block a user