mirror of
https://github.com/golutra/golutra.git
synced 2026-09-24 16:07:01 +08:00
- 终端层: 将终端渲染/解析能力由 vt100 重构为 wezterm_term,优化终端交互稳定性与显示效果(含圆角与基础体验优化)。 - 会话状态链路: 引入 Shell prompt hook(PowerShell/Bash)并打通前后端 active 状态同步; 新增 terminal_set_active 能力与前端桥接调用,支持前台活跃态上报、卸载态回传与流控策略联动。 - 聊天能力: 修复聊天历史相关问题,改善聊天与终端之间的联通行为; 补充并推进 claude code 相关问题排查,减少异常场景下的不一致状态。 - UI 与状态: 更新状态管理与 UI 显示逻辑,提升页面状态反馈一致性与可读性。 - 工程治理: 补充 .gitignore 规则,忽略 cargo vendor 与构建产物,减少无关文件进入版本控制。
74 lines
2.3 KiB
HTML
74 lines
2.3 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en" class="dark" data-theme="dark">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>golutra</title>
|
|
<script>
|
|
(() => {
|
|
const storageKey = 'nexus-theme';
|
|
const stored = window.localStorage.getItem(storageKey);
|
|
const theme = stored === 'light' || stored === 'dark' || stored === 'system' ? stored : 'dark';
|
|
const root = document.documentElement;
|
|
root.dataset.theme = theme;
|
|
const resolvedTheme = theme === 'system'
|
|
? (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light')
|
|
: theme;
|
|
root.dataset.resolvedTheme = resolvedTheme;
|
|
root.classList.toggle('dark', resolvedTheme === 'dark');
|
|
})();
|
|
</script>
|
|
<style>
|
|
/* Custom Scrollbar */
|
|
::-webkit-scrollbar {
|
|
width: 6px;
|
|
height: 6px;
|
|
}
|
|
::-webkit-scrollbar-track {
|
|
background: transparent;
|
|
}
|
|
::-webkit-scrollbar-thumb {
|
|
background: rgb(var(--scrollbar-thumb));
|
|
border-radius: 3px;
|
|
}
|
|
::-webkit-scrollbar-thumb:hover {
|
|
background: rgb(var(--scrollbar-thumb-hover));
|
|
}
|
|
|
|
.glass-panel {
|
|
background: rgb(var(--color-panel) / 0.7);
|
|
backdrop-filter: blur(12px);
|
|
-webkit-backdrop-filter: blur(12px);
|
|
border: 1px solid rgb(var(--color-border) / 0.08);
|
|
}
|
|
|
|
.glass-modal {
|
|
background: rgb(var(--color-panel-strong) / 0.95);
|
|
backdrop-filter: blur(24px);
|
|
-webkit-backdrop-filter: blur(24px);
|
|
border: 1px solid rgb(var(--color-border) / 0.1);
|
|
box-shadow: var(--shadow-modal);
|
|
}
|
|
|
|
.bg-glass-header {
|
|
background: rgb(var(--color-panel) / 0.6);
|
|
}
|
|
|
|
.bg-glass-sidebar {
|
|
background: transparent;
|
|
border-color: transparent;
|
|
border-right-color: rgb(var(--color-border) / 0.12);
|
|
}
|
|
|
|
.text-shadow {
|
|
text-shadow: 0 1px 2px rgba(0,0,0,0.5);
|
|
}
|
|
</style>
|
|
</head>
|
|
<body class="text-white h-screen overflow-hidden selection:bg-primary/30 selection:text-white">
|
|
<div id="app"></div>
|
|
<script type="module" src="/src/main.ts"></script>
|
|
</body>
|
|
</html>
|