fix: auto-start test mode on boot if config says on; Miuix toggle switch style
This commit is contained in:
@@ -34,6 +34,9 @@ async def lifespan(app: FastAPI):
|
|||||||
logger.info("Server config: %s:%d", cfg.get("server_host", "0.0.0.0"), cfg.get("server_port", 9527))
|
logger.info("Server config: %s:%d", cfg.get("server_host", "0.0.0.0"), cfg.get("server_port", 9527))
|
||||||
await telemetry_listener.start()
|
await telemetry_listener.start()
|
||||||
logger.info("Telemetry listener auto-started")
|
logger.info("Telemetry listener auto-started")
|
||||||
|
if cfg.get("ui_test_mode"):
|
||||||
|
telemetry_listener.start_test_mode()
|
||||||
|
logger.info("Test mode auto-started (config)")
|
||||||
yield
|
yield
|
||||||
telemetry_listener.stop()
|
telemetry_listener.stop()
|
||||||
logger.info("TurboSu shutdown complete")
|
logger.info("TurboSu shutdown complete")
|
||||||
|
|||||||
@@ -519,6 +519,14 @@
|
|||||||
|
|
||||||
.forward-toggle input { margin-right: 4px; }
|
.forward-toggle input { margin-right: 4px; }
|
||||||
|
|
||||||
|
/* HyperOS Toggle Switch */
|
||||||
|
.switch-label { display: flex; align-items: center; gap: 8px; cursor: pointer; user-select: none; }
|
||||||
|
.switch-label input { display: none; }
|
||||||
|
.switch-track { position: relative; width: 44px; height: 26px; background: var(--bg-tertiary); border-radius: 13px; border: 1px solid var(--border-normal); transition: background .2s, border-color .2s; flex-shrink: 0; }
|
||||||
|
.switch-track::after { content: ''; position: absolute; top: 2px; left: 2px; width: 20px; height: 20px; background: #fff; border-radius: 50%; transition: transform .2s; box-shadow: 0 1px 3px rgba(0,0,0,.15); }
|
||||||
|
.switch-label input:checked + .switch-track { background: var(--accent); border-color: var(--accent); }
|
||||||
|
.switch-label input:checked + .switch-track::after { transform: translateX(18px); }
|
||||||
|
|
||||||
/* ===== Debug Page ===== */
|
/* ===== Debug Page ===== */
|
||||||
.debug-container {
|
.debug-container {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
@@ -175,7 +175,7 @@ const PageSettings = {
|
|||||||
|
|
||||||
'<div class="settings-section"><h3>数据备份</h3><div class="settings-row"><div><div class="settings-label">导出全量备份</div><div class="settings-desc">打包仪表盘+场景+配置为 .tsb 文件</div></div><div class="settings-control"><button id="btn-export-backup" class="btn btn-secondary btn-sm">下载 .tsb</button></div></div></div>' +
|
'<div class="settings-section"><h3>数据备份</h3><div class="settings-row"><div><div class="settings-label">导出全量备份</div><div class="settings-desc">打包仪表盘+场景+配置为 .tsb 文件</div></div><div class="settings-control"><button id="btn-export-backup" class="btn btn-secondary btn-sm">下载 .tsb</button></div></div></div>' +
|
||||||
|
|
||||||
'<div class="settings-section"><h3>开发工具</h3><div class="settings-row"><div><div class="settings-label">UI 测试模式</div><div class="settings-desc">本地随机模拟遥测数据</div></div><div class="settings-control"><label style="display:flex;align-items:center;gap:6px"><input type="checkbox" id="settings-test-mode" ' + (cfg.ui_test_mode?'checked':'') + '> 开启模拟</label></div></div></div>' +
|
'<div class="settings-section"><h3>开发工具</h3><div class="settings-row"><div><div class="settings-label">UI 测试模式</div><div class="settings-desc">本地随机模拟遥测数据</div></div><div class="settings-control"><label class="switch-label"><input type="checkbox" id="settings-test-mode" ' + (cfg.ui_test_mode?'checked':'') + '><span class="switch-track"></span></label></div></div></div>' +
|
||||||
|
|
||||||
'<div class="settings-section"><h3>关于</h3><div class="settings-row"><div><div class="settings-label">TurboSu</div><div class="settings-desc">赛车遥测仪表盘 · Yei.J. (AskaEth)</div></div></div></div>' +
|
'<div class="settings-section"><h3>关于</h3><div class="settings-row"><div><div class="settings-label">TurboSu</div><div class="settings-desc">赛车遥测仪表盘 · Yei.J. (AskaEth)</div></div></div></div>' +
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user