summaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/src/meshbay_hub/static/style.css
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-08-29 18:42:43 +0200
committerChristophe Besson <cbesson@gmail.com>2026-08-29 18:52:53 +0200
commit1f8a52484412b48205e5ff6aac506428e2fb77ed (patch)
tree5598419ee4caef21f607876de6af2d30d6452191 /packages/meshbay-hub/src/meshbay_hub/static/style.css
parent8de80b7e19738b716d9973c0b4ba3b42085f7359 (diff)
downloadmeshbay-1f8a52484412b48205e5ff6aac506428e2fb77ed.tar.gz
feat(node): editable node settings in the Node page (D5)
Expose invite_ttl_hours, pair_ttl_hours, device_request_ttl_minutes, max_concurrent_streams and transcode_incompatible_video in the Node management panel. Changes are applied immediately via roster.db and written back to node.toml so they survive a DB wipe. On startup, roster overrides take precedence over node.toml defaults. Draft v6 §2.11 documents the design; MNP gains node_settings_set / node_settings_set_ack for the browser path. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'packages/meshbay-hub/src/meshbay_hub/static/style.css')
-rw-r--r--packages/meshbay-hub/src/meshbay_hub/static/style.css50
1 files changed, 50 insertions, 0 deletions
diff --git a/packages/meshbay-hub/src/meshbay_hub/static/style.css b/packages/meshbay-hub/src/meshbay_hub/static/style.css
index 8e714f3..1ead2d0 100644
--- a/packages/meshbay-hub/src/meshbay_hub/static/style.css
+++ b/packages/meshbay-hub/src/meshbay_hub/static/style.css
@@ -2651,6 +2651,56 @@ h2 .gn-owner, h3 .gn-owner { font-size: 0.55em; }
}
.node-attach-dir-row input { flex: 1; }
+.node-settings-grid {
+ display: flex;
+ flex-direction: column;
+ gap: 0;
+ margin-top: 8px;
+}
+.node-setting {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding: 8px 0;
+ border-bottom: 1px solid var(--border);
+ cursor: default;
+}
+.node-setting-label {
+ font-size: 0.85em;
+ color: var(--text-secondary);
+}
+.node-setting-value {
+ font-size: 0.85em;
+ font-weight: 500;
+}
+.node-setting-input {
+ display: flex;
+ align-items: center;
+ gap: 6px;
+}
+.node-setting-input input[type="number"] {
+ width: 80px;
+ padding: 4px 8px;
+ border: 1px solid var(--border);
+ border-radius: 5px;
+ background: var(--bg-base);
+ color: var(--text);
+ font-size: 0.85em;
+ text-align: right;
+}
+.node-setting-input input[type="checkbox"] {
+ width: 16px;
+ height: 16px;
+ accent-color: var(--accent);
+}
+.node-setting-unit {
+ font-size: 0.8em;
+ color: var(--text-secondary);
+}
+.node-settings-actions {
+ margin-top: 12px;
+}
+
/* ── Create Group Wizard ──────────────────────────────────────────────────── */
.wizard-root {