- 前端页面标题、登录/注册页、左侧栏、聊天头部、教程欢迎语全部改为 Astrion - CLI 欢迎面板与状态栏改为 Astrion CLI - 后端启动日志与 setup 向导改为 Astrion - package.json 与 README 标题同步更新 - 主 system prompt 增加 Astrion 自我介绍,视觉模型 prompt 文件名从 qwenvl 改为 vl - 项目记忆与 AGENTS.md/CLAUDE.md 新增产品名说明
55 lines
2.4 KiB
HTML
55 lines
2.4 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Astrion</title>
|
|
<link rel="stylesheet" href="/static/style.css">
|
|
<link rel="stylesheet" href="/static/easter-eggs/flood.css">
|
|
<link rel="stylesheet" href="/static/easter-eggs/snake.css">
|
|
</head>
|
|
<body>
|
|
<div id="app"></div>
|
|
<script>
|
|
// 全局复制代码块函数
|
|
function decodeHtmlEntities(text) {
|
|
const textarea = document.createElement('textarea');
|
|
textarea.innerHTML = text || '';
|
|
return textarea.value;
|
|
}
|
|
function copyCodeBlock(blockId) {
|
|
const codeElement = document.querySelector(`[data-code-id="${blockId}"]`);
|
|
if (!codeElement) return;
|
|
const button = document.querySelector(`[data-code="${blockId}"]`);
|
|
if (button && button.classList.contains('copied')) return;
|
|
const raw = codeElement?.dataset?.originalCode || codeElement?.textContent || '';
|
|
const codeContent = decodeHtmlEntities(raw);
|
|
if (!button) {
|
|
navigator.clipboard.writeText(codeContent).catch((err) => console.error('复制失败:', err));
|
|
return;
|
|
}
|
|
if (!button.dataset.originalLabel) {
|
|
button.dataset.originalLabel = button.getAttribute('aria-label') || '复制代码';
|
|
}
|
|
navigator.clipboard.writeText(codeContent).then(() => {
|
|
button.classList.add('copied');
|
|
button.setAttribute('aria-label', '已复制');
|
|
setTimeout(() => {
|
|
button.classList.remove('copied');
|
|
button.setAttribute('aria-label', button.dataset.originalLabel);
|
|
}, 2000);
|
|
}).catch((err) => {
|
|
console.error('复制失败:', err);
|
|
button.classList.remove('copied');
|
|
button.setAttribute('aria-label', button.dataset.originalLabel || '复制代码');
|
|
});
|
|
}
|
|
</script>
|
|
<script src="/static/easter-eggs/registry.js"></script>
|
|
<script src="/static/easter-eggs/flood.js"></script>
|
|
<script src="/static/easter-eggs/snake.js"></script>
|
|
<script src="/static/security.js"></script>
|
|
<script type="module" src="/static/dist/assets/main.js"></script>
|
|
</body>
|
|
</html>
|