[pdm-devel] [PATCH proxmox-yew-comp 2/3] xtermjs: merge ConsoleType to parameters conversion

Fabian Grünbichler f.gruenbichler at proxmox.com
Tue Nov 11 09:29:22 CET 2025


Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
---

Notes:
    new in v1

 src/xtermjs.rs | 16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

diff --git a/src/xtermjs.rs b/src/xtermjs.rs
index 9656516..4d83a73 100644
--- a/src/xtermjs.rs
+++ b/src/xtermjs.rs
@@ -76,15 +76,7 @@ pub enum ConsoleType {
 }
 
 fn xtermjs_url(console_type: &ConsoleType, node_name: &str, vnc: bool) -> String {
-    let console = match console_type {
-        ConsoleType::KVM(_vmid) => "kvm",
-        ConsoleType::LXC(_vmid) => "lxc",
-        ConsoleType::UpgradeShell => "upgrade",
-        ConsoleType::LoginShell | ConsoleType::RemotePveLoginShell(_) => "shell",
-    };
-
     let mut param = json!({
-        "console": console,
         "node": node_name,
     });
 
@@ -97,16 +89,22 @@ fn xtermjs_url(console_type: &ConsoleType, node_name: &str, vnc: bool) -> String
 
     match console_type {
         ConsoleType::KVM(vmid) => {
+            param["console"] = "kvm".into();
             param["vmid"] = (*vmid).into();
         }
         ConsoleType::LXC(vmid) => {
+            param["console"] = "lxc".into();
             param["vmid"] = (*vmid).into();
         }
-        ConsoleType::UpgradeShell => { /* no additional parameters required */ }
+        ConsoleType::UpgradeShell => {
+            param["console"] = "upgrade".into();
+        }
         ConsoleType::LoginShell => {
+            param["console"] = "shell".into();
             param["cmd"] = "login".into();
         }
         ConsoleType::RemotePveLoginShell(remote_name) => {
+            param["console"] = "shell".into();
             param["cmd"] = "login".into();
             param["remote-type"] = "pve".into();
             param["remote"] = remote_name.as_str().into();
-- 
2.47.3





More information about the pdm-devel mailing list