refactor: 重构项目结构

- 优化 `车站-设备-告警`  轮询机制
- 改进设备卡片的布局
- 支持修改设备
- 告警轮询中获取完整告警数据
- 车站告警详情支持导出完整的 `今日告警列表`
- 支持将状态持久化到 `IndexedDB`
- 新增轮询控制 (调试模式)
- 新增离线开发模式 (调试模式)
- 新增 `IndexedDB` 数据控制 (调试模式)
This commit is contained in:
yangsy
2025-12-11 13:42:22 +08:00
commit 37781216b2
278 changed files with 17988 additions and 0 deletions

16
build/post-build.ts Normal file
View File

@@ -0,0 +1,16 @@
import { tgz, zip } from 'compressing';
import dayjs from 'dayjs';
import packageJson from '../package.json';
const now = dayjs();
const fileName = `${packageJson.name}_v${packageJson.version}_${now.format('YYMMDD-HHmmss')}`;
try {
await zip.compressDir('./dist', `${fileName}.zip`);
await tgz.compressDir('./dist', `${fileName}.tar`);
await tgz.compressDir('./dist', `${fileName}.tar.gz`);
} catch (error) {
console.error('压缩失败:', error);
}

17
build/pre-build.ts Normal file
View File

@@ -0,0 +1,17 @@
import { writeFile } from 'fs/promises';
import dayjs from 'dayjs';
import packageJson from '../package.json';
const now = dayjs();
const versionInfo = {
version: packageJson.version,
buildTime: now.format('YYYY-MM-DD HH:mm:ss'),
};
try {
await writeFile('./public/manifest.json', JSON.stringify(versionInfo, null, 2));
} catch (error) {
console.error('写入manifest失败:', error);
}