add version to debug page

This commit is contained in:
soruh 2024-05-31 20:40:57 +02:00
parent 19c334a974
commit dd7b0ca839
5 changed files with 47 additions and 36 deletions

2
Cargo.lock generated
View File

@ -213,7 +213,7 @@ dependencies = [
[[package]]
name = "centralex"
version = "0.1.0"
version = "1.0.1"
dependencies = [
"async-stream",
"bytemuck",

View File

@ -1,6 +1,6 @@
[package]
name = "centralex"
version = "0.1.0"
version = "1.0.1"
edition = "2021"
[profile.release]

View File

@ -42,8 +42,15 @@ fn pack_debug_page() -> Result<(), Box<dyn std::error::Error>> {
.split_once("<!--INSERT HEAD CONTENT HERE-->")
.expect("did not find head split point in html");
let (body_a, body_b) = body
.split_once("#INSERT VERSION HERE#")
.expect("did not find version split point in html");
let version = env!("CARGO_PKG_VERSION");
let html = minify_html::minify(
format!("{head}<style>{css}</style><script>{js}</script>{body}").as_bytes(),
format!("{head}<style>{css}</style><script>{js}</script>{body_a}{version}{body_b}")
.as_bytes(),
&minify_html::Cfg::spec_compliant(),
);

View File

@ -15,7 +15,7 @@
<div id="header">
<p id="free_ports" />
<div id="connected" class="hidden"><!--INSERT SVG HERE--></div>
<p id="last_ping" />
<p id="last_ping" title="v#INSERT VERSION HERE#" />
</div>
<table id="table">

View File

@ -149,40 +149,44 @@ window.onload = () => {
table = [];
for (let number in data.allocated_ports) {
let port = data.allocated_ports[number];
number = +number;
try {
let port = data.allocated_ports[number];
number = +number;
// allocated port has no state. This means that it is unknown and should not be displayed
if (data.port_state[port] == undefined) {
continue;
// allocated port has no state. This means that it is unknown and should not be displayed
if (data.port_state[port] == undefined) {
continue;
}
let { status, last_change } = data.port_state[port];
let rejector = data.rejectors[port] || null;
if (rejector && rejector instanceof Array) {
rejector = rejector.map((x) => "0x" + x.toString(16).padStart(2, 0))
.join(" ");
}
last_change = new Date(last_change * 1000);
let name = data.names[number] || null;
switch (status) {
case "disconnected":
status = rejector ? `getrennt: ${rejector}` : "getrennt";
break;
case "idle":
status = "bereit";
break;
case "in_call":
status = "anruf";
break;
}
table.push({ port, number, status, last_change, rejector, name });
} catch (error) {
console.error(error);
}
let { status, last_change } = data.port_state[port];
let rejector = data.rejectors[port] || null;
if (rejector && rejector instanceof Array) {
rejector = rejector.map((x) => "0x" + x.toString(16).padStart(2, 0))
.join(" ");
}
last_change = new Date(last_change * 1000);
let name = data.names[number] || null;
switch (status) {
case "disconnected":
status = rejector ? `getrennt: ${rejector}` : "getrennt";
break;
case "idle":
status = "bereit";
break;
case "in_call":
status = "anruf";
break;
}
table.push({ port, number, status, last_change, rejector, name });
}
for (let [timestamp, port] of data.errored_ports) {