From aa4b14181c2612054ac6c97d1278ba95085a32b6 Mon Sep 17 00:00:00 2001 From: root <13910913995@163.com> Date: Mon, 19 Jan 2026 14:27:41 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E5=88=9D=E5=A7=8B=E5=8C=96=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E5=B9=B6=E6=B7=BB=E5=8A=A0=20.gitignore?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 62 + .trae/skills/code-reviewer/SKILL.md | 61 + .trae/skills/pr-reviewer/SKILL.md | 86 + DB_PERFORMANCE_ANALYSIS.md | 38 + INSTALL_DB.md | 64 + README.md | 66 + backend/__init__.py | 1 + backend/api/__init__.py | 1 + backend/api/routes.py | 54 + backend/api/schemas.py | 29 + backend/api/ws.py | 19 + backend/build_backend.ps1 | 50 + backend/config/__init__.py | 1 + backend/config/config.ini | 12 + backend/config/settings.py | 101 + backend/database/__init__.py | 1 + backend/database/check_db.py | 66 + backend/database/engine.py | 18 + backend/database/schema.py | 224 + backend/database/test_db.py | 153 + backend/device/__init__.py | 1 + backend/device/base.py | 25 + backend/device/mock_vehicle.py | 89 + backend/main.py | 149 + backend/requirements.txt | 8 + backend/requirements_build.txt | 2 + backend/services/__init__.py | 1 + backend/services/broadcaster.py | 30 + backend/services/server_monitor.py | 127 + backend/services/simulation_manager.py | 144 + backend/smartedt_backend.spec | 95 + backend/utils.py | 54 + frontend/build_frontend.ps1 | 65 + frontend/index.html | 13 + frontend/main/main.cjs | 308 ++ frontend/package-lock.json | 5699 ++++++++++++++++++++++++ frontend/package.json | 60 + frontend/query | 1 + frontend/src/App.vue | 81 + frontend/src/lib/api.js | 26 + frontend/src/lib/ws.js | 15 + frontend/src/main.js | 36 + frontend/src/pages/BigDashboard.vue | 54 + frontend/src/pages/BigSimMonitor.vue | 53 + frontend/src/pages/BigSystemIntro.vue | 16 + frontend/src/pages/CarSim.vue | 36 + frontend/src/pages/ControlAdmin.vue | 16 + frontend/src/pages/ControlAnalysis.vue | 16 + frontend/src/pages/ControlConfig.vue | 76 + frontend/src/pages/ControlOperate.vue | 51 + frontend/src/pages/ControlQuery.vue | 16 + frontend/src/pages/ServerMonitor.vue | 191 + frontend/src/stores/simulation.js | 76 + frontend/vite.config.js | 16 + unity3D/unity开发的代码 | 2 + 智能电动车数字孪生系统功能规划2026.pdf | Bin 0 -> 681208 bytes 系统开发技术方案.md | 416 ++ 系统框架结构评估.md | 66 + 58 files changed, 9237 insertions(+) create mode 100644 .gitignore create mode 100644 .trae/skills/code-reviewer/SKILL.md create mode 100644 .trae/skills/pr-reviewer/SKILL.md create mode 100644 DB_PERFORMANCE_ANALYSIS.md create mode 100644 INSTALL_DB.md create mode 100644 README.md create mode 100644 backend/__init__.py create mode 100644 backend/api/__init__.py create mode 100644 backend/api/routes.py create mode 100644 backend/api/schemas.py create mode 100644 backend/api/ws.py create mode 100644 backend/build_backend.ps1 create mode 100644 backend/config/__init__.py create mode 100644 backend/config/config.ini create mode 100644 backend/config/settings.py create mode 100644 backend/database/__init__.py create mode 100644 backend/database/check_db.py create mode 100644 backend/database/engine.py create mode 100644 backend/database/schema.py create mode 100644 backend/database/test_db.py create mode 100644 backend/device/__init__.py create mode 100644 backend/device/base.py create mode 100644 backend/device/mock_vehicle.py create mode 100644 backend/main.py create mode 100644 backend/requirements.txt create mode 100644 backend/requirements_build.txt create mode 100644 backend/services/__init__.py create mode 100644 backend/services/broadcaster.py create mode 100644 backend/services/server_monitor.py create mode 100644 backend/services/simulation_manager.py create mode 100644 backend/smartedt_backend.spec create mode 100644 backend/utils.py create mode 100644 frontend/build_frontend.ps1 create mode 100644 frontend/index.html create mode 100644 frontend/main/main.cjs create mode 100644 frontend/package-lock.json create mode 100644 frontend/package.json create mode 100644 frontend/query create mode 100644 frontend/src/App.vue create mode 100644 frontend/src/lib/api.js create mode 100644 frontend/src/lib/ws.js create mode 100644 frontend/src/main.js create mode 100644 frontend/src/pages/BigDashboard.vue create mode 100644 frontend/src/pages/BigSimMonitor.vue create mode 100644 frontend/src/pages/BigSystemIntro.vue create mode 100644 frontend/src/pages/CarSim.vue create mode 100644 frontend/src/pages/ControlAdmin.vue create mode 100644 frontend/src/pages/ControlAnalysis.vue create mode 100644 frontend/src/pages/ControlConfig.vue create mode 100644 frontend/src/pages/ControlOperate.vue create mode 100644 frontend/src/pages/ControlQuery.vue create mode 100644 frontend/src/pages/ServerMonitor.vue create mode 100644 frontend/src/stores/simulation.js create mode 100644 frontend/vite.config.js create mode 100644 unity3D/unity开发的代码 create mode 100644 智能电动车数字孪生系统功能规划2026.pdf create mode 100644 系统开发技术方案.md create mode 100644 系统框架结构评估.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..980232a --- /dev/null +++ b/.gitignore @@ -0,0 +1,62 @@ +# ===== OS / Editor ===== +.DS_Store +Thumbs.db +Desktop.ini +*.swp +*.swo +*.tmp +*.bak + +.idea/ +.vscode/ + +# ===== Logs ===== +*.log + +# ===== Python ===== +__pycache__/ +*.py[cod] +*.pyo +*.pyd +.Python +.pytest_cache/ +.mypy_cache/ +.ruff_cache/ +.coverage +coverage.xml +htmlcov/ +*.egg-info/ +dist/ +build/ + +.venv/ +venv/ +env/ +ENV/ + +.env +.env.* +!.env.example + +# ===== Backend (PyInstaller outputs) ===== +/backend/build/ +/backend/dist/ +/backend/venv/ + +# ===== Node / Frontend ===== +node_modules/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* + +/.turbo/ +/.cache/ + +/frontend/node_modules/ +/frontend/dist/ +/frontend/release/ + +# ===== Electron ===== +*.asar + diff --git a/.trae/skills/code-reviewer/SKILL.md b/.trae/skills/code-reviewer/SKILL.md new file mode 100644 index 0000000..3d76b23 --- /dev/null +++ b/.trae/skills/code-reviewer/SKILL.md @@ -0,0 +1,61 @@ +--- +name: "code-reviewer" +description: "审查代码的正确性、安全性、可维护性与一致性。用户要求“代码审查/Review”、准备合并、或你完成较大改动后调用。" +--- + +# Code Reviewer(代码审查) + +## 何时使用 + +- 用户明确提出“代码审查/Review/帮我看看这段代码/有没有坑” +- 你完成了较大改动(多文件、涉及业务逻辑/安全/性能/并发/数据库/鉴权),准备交付前自检 +- 修复 bug 后,需要确认没有引入回归 + +## 输入要求(你需要我提供什么) + +优先按可获得的信息审查,不强制全部具备: + +- 需要审查的范围:文件路径/目录/提交 diff/粘贴代码片段 +- 目标与约束:功能期望、性能目标、兼容性、上线环境、风格偏好 +- 相关上下文:调用链入口、接口契约(请求/响应)、数据库表/索引、配置项 + +## 审查维度(检查清单) + +### 正确性 +- 边界条件、空值、异常路径、重试/幂等、并发与竞态 +- 输入校验与错误信息一致性 +- 资源释放(文件句柄、连接、锁)、超时设置 + +### 安全性 +- 注入风险(SQL/命令/模板/路径穿越)、反序列化风险 +- 鉴权/鉴别:敏感操作是否校验权限,是否存在越权路径 +- 机密信息:日志/错误信息/返回值中是否泄露 token、密码、密钥、PII + +### 可维护性 +- 代码结构是否清晰,职责是否单一,命名是否表达意图 +- 重复逻辑是否可抽取,是否遵循既有项目模式 +- 配置/常量是否集中管理,错误码/异常是否统一 + +### 性能与稳定性 +- 热路径复杂度、N+1、无界循环/递归、潜在阻塞 I/O +- 缓存策略、批处理、分页、索引友好性 +- 观测性:日志粒度、指标点、错误上下文是否足够定位 + +### 风格与一致性 +- 与仓库既有格式、依赖、工具链一致(类型、lint、格式化、文件组织) +- 公共工具与约定(例如 logger、配置、错误处理)是否复用而非自造 + +## 输出格式(你应如何给出审查结果) + +按“可执行、可落地”的方式输出,默认用中文: + +1. 结论摘要(风险等级:高/中/低) +2. 必须修复(Blockers):每条包含 位置、问题、影响、建议修复 +3. 建议改进(Suggestions):同上,但不阻塞 +4. 可选优化(Nice-to-have) +5. 若适用:给出最小改动的补丁方案(优先)或替代实现思路 + +## 约束 + +- 不凭空假设依赖已存在;若引入新依赖,先确认仓库已有或给出替代方案 +- 不输出或建议写入任何密钥/token diff --git a/.trae/skills/pr-reviewer/SKILL.md b/.trae/skills/pr-reviewer/SKILL.md new file mode 100644 index 0000000..e295f13 --- /dev/null +++ b/.trae/skills/pr-reviewer/SKILL.md @@ -0,0 +1,86 @@ +--- +name: "pr-reviewer" +description: "对变更/PR 做代码审查并给出可执行修改建议。用户要求代码评审、准备合并、或完成较大改动后自检时调用。" +--- + +# PR Reviewer(变更/PR 代码审查) + +## 目标 + +- 快速识别高风险缺陷(正确性/安全/稳定性/兼容性) +- 以“可落地修改”为导向给出建议(位置、原因、影响、最小修复) +- 在不引入不必要依赖的前提下,尽量复用仓库现有模式与工具 + +## 何时使用 + +- 用户要求“评审这个 PR/diff/改动” +- 你完成了多文件或关键路径改动,准备合并前自检 +- 修复 bug 或安全问题后,需要确认无回归 + +## 你需要获取的信息(尽量自己补齐) + +优先使用现有上下文完成评审,不强制用户补全: + +- 变更范围:diff/文件列表/目录 +- 预期行为:功能目标、边界条件、失败语义 +- 运行环境:语言版本、部署方式、配置来源、数据库/外部依赖 +- 质量门槛:性能目标、SLA、兼容性、测试要求 + +## 审查方法(按优先级) + +1. 先看变更入口与数据流:输入→处理→持久化/外部调用→输出 +2. 先找会导致事故的点:鉴权、注入、并发、资源泄露、回滚困难 +3. 再看可维护性:重复、耦合、命名、可读性、错误处理一致性 +4. 最后看体验与一致性:日志、可观测性、风格、文档与配置 + +## 检查清单 + +### 正确性 + +- 边界条件:空值/缺省、极端长度、时区与编码、浮点与精度 +- 错误路径:异常是否被吞、错误码与消息是否一致、重试/幂等性 +- 并发:竞态、锁粒度、事务边界、重复提交 +- 资源:连接/句柄/任务是否可控,是否有超时与取消 + +### 安全性 + +- 注入:SQL/命令/模板/路径穿越/正则 DoS +- 鉴权:敏感操作是否校验权限与主体一致性,是否存在越权路径 +- 会话:token 处理是否安全(存储/传输/日志/错误信息) +- 密钥:不得输出或建议写入任何密钥/token/密码/私钥/PII + +### 稳定性与性能 + +- 热路径复杂度、N+1、无界队列/循环、阻塞 I/O +- 缓存/分页/批处理是否合理,索引友好性 +- 外部依赖:熔断/退避/限流/超时/重试策略是否一致 + +### 可维护性与一致性 + +- 是否复用项目既有抽象(配置、logger、错误处理、领域模型) +- 是否引入了不必要的新依赖;若必须引入,说明理由与替代方案 +- API/DTO/Schema 是否向后兼容;破坏性变更是否标注与迁移路径 + +### 测试与验证 + +- 是否覆盖关键分支与失败路径 +- 是否新增或更新了与变更一致的测试(单测/集成/端到端) +- 是否需要补充回归用例(最小复现) + +## 输出格式(必须可执行) + +按以下结构输出,中文为默认: + +1. 结论摘要(风险:高/中/低,是否建议合并:是/否/有条件) +2. Blockers(必须修复):每条包含 + - 位置:文件 + 行号范围(若可获得) + - 问题:一句话描述 + - 影响:会导致什么 + - 修复:最小改动建议(必要时给补丁) +3. Suggestions(建议改进):同上,但不阻塞 +4. Tests(建议验证):列出要跑/要补的测试与覆盖点 + +## 约束 + +- 不凭空假设依赖或环境已存在;不确定时先在仓库中确认 +- 不输出或建议写入任何密钥/token diff --git a/DB_PERFORMANCE_ANALYSIS.md b/DB_PERFORMANCE_ANALYSIS.md new file mode 100644 index 0000000..d321a9d --- /dev/null +++ b/DB_PERFORMANCE_ANALYSIS.md @@ -0,0 +1,38 @@ +# TimescaleDB 性能测试分析报告 + +基于 `test_db.py` 对 30 万条车辆仿真数据的写入与查询测试,本次性能评估结论如下: + +## 1. 核心结论 + +**TimescaleDB 完全满足智能电动车数字孪生系统(SmartEDT)的实时采集与回放需求。** + +- **写入能力**:单线程下 **3,500+ TPS** 的写入速度远超单车采集需求(通常单车高频信号仅需 50-100Hz,即 50-100 TPS)。即使并发接入 10-20 台车,当前配置也绰绰有余。 +- **查询响应**:**毫秒级(30ms)** 的时间切片查询能力,保证了“前端实时回放”与“大屏曲线刷新”的流畅度,不会出现卡顿。 +- **存储架构**:JSONB 混合存储方案在保持了极高灵活性的同时(0.2s 过滤查询),依然维持了优秀的查询性能,验证了“结构化字段(索引)+ 半结构化 Payload(JSONB)”建模方案的正确性。 + +## 2. 详细指标分析 + +### 2.1 写入性能 (Insertion) +* **指标**:3,547.78 条/秒 (TPS) +* **场景**:单连接、Batch=1000、Python `asyncpg` 驱动。 +* **分析**: + * **满足度**:假设单车采集频率为 50Hz(即每秒 50 个数据包),当前性能理论上可支持 **70 台车同时在线采集**。 + * **瓶颈推测**:当前瓶颈主要在 Python 端的序列化与网络 IO 往返(RTT)。 + * **优化空间**:如果未来需要支持上千台车,改用 `COPY` 协议或增加并发写入 worker,吞吐量可轻松提升至 5-10 万 TPS 以上。 + +### 2.2 查询性能 (Query) + +| 查询类型 | 耗时 | 业务场景 | 评价 | +| :--- | :--- | :--- | :--- | +| **最新数据 (Latest 1000)** | **0.0301s** | 实时大屏监控、轨迹回放 | **极优**。利用 TimescaleDB 的时间分区索引,无论历史数据多大,提取“最新 N 条”永远是毫秒级。 | +| **全量计数 (Count)** | 0.0845s | 报表统计、数据完整性校验 | **优秀**。30万数据秒出,说明元数据管理高效。 | +| **JSONB 内容过滤** | 0.2137s | 复杂故障诊断、特定工况筛选 | **良好**。在没有对 JSON 内部字段建索引的情况下,0.2s 扫描 30 万条 JSON 数据属于高性能表现。 | + +## 3. 架构建议 + +基于测试结果,对后续开发提出以下建议: + +1. **保持 JSONB 方案**:当前的表结构(`ts`, `simulation_id`, `signals(JSONB)`)在性能与灵活性之间取得了完美平衡,无需拆分更多列。 +2. **索引优化**:目前 `ts` 和 `simulation_id` 已有索引。如果未来经常需要按“车速”或“故障码”过滤,建议对 JSONB 内部高频查询字段建立 **GIN 索引**。 + * *示例 SQL*:`CREATE INDEX idx_speed ON vehicle_signals USING gin ((signals->'vehicle_speed_kmh'));` +3. **保留策略**:建议配置 TimescaleDB 的 `retention_policy`,例如自动删除 30 天前的原始高频数据,只保留降采样后的聚合数据,以节省磁盘空间。 diff --git a/INSTALL_DB.md b/INSTALL_DB.md new file mode 100644 index 0000000..e28b044 --- /dev/null +++ b/INSTALL_DB.md @@ -0,0 +1,64 @@ +# 数据库安装指南 (Windows) + +由于本项目依赖 **TimescaleDB** 时序数据库插件,而该插件目前在 Windows 上**仅官方支持到 PostgreSQL 17**(暂未提供适配 PostgreSQL 18 的 Windows 安装包),因此我们需要安装 **PostgreSQL 17**。 + +## 方案一:使用 Docker(强烈推荐) + +如果您已安装 Docker Desktop,这是最简单的方法,无需配置环境。 + +1. 确保 Docker Desktop 已启动。 +2. 在项目根目录打开终端,运行: + ```powershell + docker-compose up -d + ``` +3. 完成!数据库已在端口 `5432` 启动,且已包含 TimescaleDB。 + +--- + +## 方案二:本机手动安装 + +如果您必须在 Windows 本机安装,请严格按照以下步骤操作。 + +### 第一步:安装 PostgreSQL 17 + +1. **下载**:[PostgreSQL 17.2 Windows x64 安装程序](https://get.enterprisedb.com/postgresql/postgresql-17.2-1-windows-x64.exe) + - 或者访问官网:https://www.postgresql.org/download/windows/ +2. **安装**: + - 运行安装程序。 + - **记住您设置的密码**(后续配置需要用到,建议设为 `postgres` 或修改项目配置)。 + - 端口保持默认 `5432`。 + - 安装目录建议保持默认(如 `C:\Program Files\PostgreSQL\17`)。 + - **Stack Builder**:安装结束后会询问是否运行 Stack Builder,**取消勾选**,我们不需要它。 + +### 第二步:安装 TimescaleDB 插件 + +1. **下载**:[TimescaleDB v2.23.0 for PostgreSQL 17 (Windows zip)](https://github.com/timescale/timescaledb/releases/download/2.23.0/timescaledb-postgresql-17-windows-amd64.zip) + - 备用链接:访问 [GitHub Releases](https://github.com/timescale/timescaledb/releases),找到 `timescaledb-postgresql-17-windows-amd64.zip`。 +2. **解压**: + - 将压缩包解压到一个临时文件夹。 +3. **安装**: + - 在解压后的文件夹中找到 `setup.exe`。 + - **右键 -> 以管理员身份运行**。 + - 按照提示操作: + - 输入 PostgreSQL 的安装路径(通常会自动检测)。 + - 输入 `postgres` 用户的密码。 + - 允许它修改 `postgresql.conf` 配置(输入 `y`)。 +4. **重启服务**: + - 打开 Windows 服务管理器(Win+R -> `services.msc`)。 + - 找到 `postgresql-x64-17` 服务。 + - 右键 -> **重新启动**。 + +### 第三步:验证安装 + +打开项目目录下的 `tools/check_db.py`(如果不存在可手动创建测试),或者使用 `psql`: + +```powershell +psql -U postgres +``` + +在 SQL 命令行中输入: +```sql +CREATE EXTENSION IF NOT EXISTS timescaledb; +SELECT * FROM timescaledb_information.hypertables; +``` +如果不报错,说明安装成功。 diff --git a/README.md b/README.md new file mode 100644 index 0000000..ca09175 --- /dev/null +++ b/README.md @@ -0,0 +1,66 @@ +# SmartEDT(智能电动车数字孪生系统)代码框架 + +本仓库提供一套可扩展的系统骨架代码,用于支撑《系统开发技术方案.md》中定义的后端采集处理与桌面端多屏显示能力。 + +## 目录结构 + +``` +SmartEDT/ + backend/ + frontend/ + 系统开发技术方案.md +``` + +## 后端(Python 3.13.1 + FastAPI + WebSocket + PostgreSQL/TimescaleDB) + +### 1) 环境准备 + +- 建议使用 venv: + - `python -m venv venv` + - `venv\Scripts\activate` + - `pip install -r backend/requirements.txt` + +### 2) 配置 + +- 复制示例配置: + - `copy backend\\config.ini.example backend\\config.ini` +- 按需修改 `[DATABASE].url`(示例密码为占位符 `CHANGE_ME`)。 + +也可以通过环境变量覆盖: +- `SMARTEDT_DATABASE_URL` +- `SMARTEDT_FILE_ROOT` +- `SMARTEDT_HOST` +- `SMARTEDT_PORT` + +### 3) 数据库 + +需要 PostgreSQL 并安装 TimescaleDB 扩展(数据库侧操作)。后端启动时会尝试: +- `CREATE EXTENSION IF NOT EXISTS timescaledb` +- `create_hypertable('vehicle_signals', 'ts', if_not_exists => TRUE)` + +### 4) 启动 + +- 开发启动: + - `python backend/main.py --host 127.0.0.1 --port 5000 --debug` + +接口: +- `GET /health` +- `POST /api/simulation/start` +- `POST /api/simulation/{simulation_id}/stop` +- `WS /ws` + +## 前端(Electron + Vue) + +### 1) 安装依赖 + +在 `frontend/` 目录下执行: +- `npm install` + +### 2) 开发启动(Vite + Electron) + +- `npm run dev` + +Electron 主进程会尝试启动后端: +- 默认使用 `python backend/main.py` +- 可通过 `SMARTEDT_PYTHON` 指定 Python 可执行文件路径 + diff --git a/backend/__init__.py b/backend/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/backend/__init__.py @@ -0,0 +1 @@ + diff --git a/backend/api/__init__.py b/backend/api/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/backend/api/__init__.py @@ -0,0 +1 @@ + diff --git a/backend/api/routes.py b/backend/api/routes.py new file mode 100644 index 0000000..20976d8 --- /dev/null +++ b/backend/api/routes.py @@ -0,0 +1,54 @@ +from __future__ import annotations + +from pathlib import Path + +from fastapi import APIRouter, Depends, HTTPException +from fastapi.responses import FileResponse + +from backend.api.schemas import HealthResponse, SimulationStartRequest, SimulationStartResponse, SimulationStopResponse +from backend.services.simulation_manager import SimulationManager +from backend.utils import safe_join + + +def get_router(simulation_manager: SimulationManager, file_root: Path) -> APIRouter: + router = APIRouter() + + @router.get("/health", response_model=HealthResponse) + async def health() -> HealthResponse: + return HealthResponse() + + @router.get("/api/devices") + async def devices(): + runtime = simulation_manager.current() + return { + "data": [ + { + "device_id": "controlbox_01", + "device_type": "mock_vehicle", + "connected": bool(runtime and runtime.status == "running"), + } + ] + } + + @router.post("/api/simulation/start", response_model=SimulationStartResponse) + async def start_simulation(body: SimulationStartRequest) -> SimulationStartResponse: + simulation_id = await simulation_manager.start(body.model_dump()) + return SimulationStartResponse(simulation_id=simulation_id) + + @router.post("/api/simulation/{simulation_id}/stop", response_model=SimulationStopResponse) + async def stop_simulation(simulation_id: str) -> SimulationStopResponse: + await simulation_manager.stop(simulation_id) + return SimulationStopResponse(simulation_id=simulation_id, status="stopped") + + @router.get("/files/{file_path:path}") + async def files(file_path: str): + try: + resolved = safe_join(file_root, file_path) + except ValueError: + raise HTTPException(status_code=400, detail="invalid path") + if not resolved.exists() or not resolved.is_file(): + raise HTTPException(status_code=404, detail="not found") + return FileResponse(str(resolved)) + + return router + diff --git a/backend/api/schemas.py b/backend/api/schemas.py new file mode 100644 index 0000000..19791c4 --- /dev/null +++ b/backend/api/schemas.py @@ -0,0 +1,29 @@ +from __future__ import annotations + +from typing import Any + +from pydantic import BaseModel, Field + + +class HealthResponse(BaseModel): + status: str = "ok" + + +class SimulationStartRequest(BaseModel): + scenario: str | None = None + weather: str | None = None + time_period: str | None = None + max_speed_kmh: int | None = Field(default=None, ge=0, le=300) + duration_minutes: int | None = Field(default=None, ge=1, le=360) + driver: str | None = None + extra: dict[str, Any] = Field(default_factory=dict) + + +class SimulationStartResponse(BaseModel): + simulation_id: str + + +class SimulationStopResponse(BaseModel): + simulation_id: str + status: str + diff --git a/backend/api/ws.py b/backend/api/ws.py new file mode 100644 index 0000000..4f81703 --- /dev/null +++ b/backend/api/ws.py @@ -0,0 +1,19 @@ +from __future__ import annotations + +from fastapi import WebSocket, WebSocketDisconnect + +from backend.services.broadcaster import Broadcaster + + +async def websocket_handler(ws: WebSocket, broadcaster: Broadcaster) -> None: + await ws.accept() + await broadcaster.add(ws) + try: + while True: + await ws.receive_text() + except WebSocketDisconnect: + # 客户端正常断开连接,无需打印堆栈信息 + pass + finally: + await broadcaster.remove(ws) + diff --git a/backend/build_backend.ps1 b/backend/build_backend.ps1 new file mode 100644 index 0000000..9c09616 --- /dev/null +++ b/backend/build_backend.ps1 @@ -0,0 +1,50 @@ +# Ensure we are in the backend directory +$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path +Set-Location $ScriptDir + +Write-Host "Starting Backend Build Process..." -ForegroundColor Cyan + +# Define paths +$VenvPath = Join-Path $ScriptDir "venv" +$PythonExe = Join-Path $VenvPath "Scripts\python.exe" +$PipExe = Join-Path $VenvPath "Scripts\pip.exe" +$PyInstallerExe = Join-Path $VenvPath "Scripts\pyinstaller.exe" +$SpecFile = "smartedt_backend.spec" + +# 1. Check/Create Virtual Environment +if (-not (Test-Path $VenvPath)) { + Write-Host "Virtual environment not found. Creating..." -ForegroundColor Yellow + python -m venv venv + if ($LASTEXITCODE -ne 0) { + Write-Error "Failed to create virtual environment." + exit 1 + } +} else { + Write-Host "Using existing virtual environment." -ForegroundColor Green +} + +# 2. Install Dependencies +Write-Host "Installing/Updating build dependencies..." -ForegroundColor Yellow +& $PipExe install -r requirements.txt +& $PipExe install -r requirements_build.txt +if ($LASTEXITCODE -ne 0) { + Write-Error "Failed to install dependencies." + exit 1 +} + +# 3. Clean previous builds +Write-Host "Cleaning up previous builds..." -ForegroundColor Yellow +if (Test-Path "dist") { Remove-Item -Recurse -Force "dist" } +if (Test-Path "build") { Remove-Item -Recurse -Force "build" } + +# 4. Run PyInstaller +Write-Host "Running PyInstaller..." -ForegroundColor Cyan +& $PyInstallerExe --clean --noconfirm $SpecFile + +if ($LASTEXITCODE -eq 0) { + Write-Host "`nBackend build successful!" -ForegroundColor Green + Write-Host "Executable located at: $(Join-Path $ScriptDir 'dist\smartedt_backend\smartedt_backend.exe')" -ForegroundColor Green +} else { + Write-Error "`nBackend build failed!" + exit 1 +} diff --git a/backend/config/__init__.py b/backend/config/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/backend/config/__init__.py @@ -0,0 +1 @@ + diff --git a/backend/config/config.ini b/backend/config/config.ini new file mode 100644 index 0000000..e6635c6 --- /dev/null +++ b/backend/config/config.ini @@ -0,0 +1,12 @@ +[SERVER] +host = 0.0.0.0 +port = 5000 +debug = True + +[FILEPATH] +path = data + +[DATABASE] +url = postgresql+psycopg://smartedt:postgres@127.0.0.1:5432/smartedt +timescaledb = True + diff --git a/backend/config/settings.py b/backend/config/settings.py new file mode 100644 index 0000000..1d6f473 --- /dev/null +++ b/backend/config/settings.py @@ -0,0 +1,101 @@ +from __future__ import annotations + +import configparser +import os +from dataclasses import dataclass +from pathlib import Path + + +@dataclass(frozen=True) +class ServerSettings: + host: str = "0.0.0.0" + port: int = 5000 + debug: bool = False + + +@dataclass(frozen=True) +class FileSettings: + root_path: Path + + +@dataclass(frozen=True) +class DatabaseSettings: + url: str + timescaledb: bool = True + + +@dataclass(frozen=True) +class AppSettings: + server: ServerSettings + files: FileSettings + database: DatabaseSettings + + +import sys + +def _find_config_file() -> Path | None: + # Handle PyInstaller frozen state + if getattr(sys, 'frozen', False): + # If onefile, _MEIPASS. If onedir, executable dir or _internal + # With onedir, the exe is in root, internal files in _internal. + # But our spec put config in backend/config + + # Check relative to executable + exe_dir = Path(sys.executable).parent + candidates = [ + exe_dir / "backend" / "config" / "config.ini", + exe_dir / "_internal" / "backend" / "config" / "config.ini", + exe_dir / "config.ini", + ] + for path in candidates: + if path.exists(): + return path + + candidates = [ + Path(__file__).resolve().parent / "config.ini", + Path(__file__).resolve().parents[1] / "config.ini", + Path(__file__).resolve().parents[2] / "config.ini", + ] + for path in candidates: + if path.exists(): + return path + return None + + +def load_settings() -> AppSettings: + config = configparser.ConfigParser() + config_path = os.getenv("SMARTEDT_CONFIG") + if config_path: + config.read(config_path, encoding="utf-8") + else: + found = _find_config_file() + if found: + config.read(found, encoding="utf-8") + + server = ServerSettings( + host=config.get("SERVER", "host", fallback=os.getenv("SMARTEDT_HOST", "0.0.0.0")), + port=config.getint("SERVER", "port", fallback=int(os.getenv("SMARTEDT_PORT", "5000"))), + debug=config.getboolean("SERVER", "debug", fallback=os.getenv("SMARTEDT_DEBUG", "False").lower() == "true"), + ) + + default_root = Path(os.getenv("SMARTEDT_FILE_ROOT", "data")) + root_value = config.get("FILEPATH", "path", fallback=str(default_root)) + root_path = Path(root_value) + if not root_path.is_absolute(): + root_path = (Path(__file__).resolve().parents[1] / root_path).resolve() + + database_url = config.get("DATABASE", "url", fallback=os.getenv("SMARTEDT_DATABASE_URL", "")).strip() + if not database_url: + database_url = "postgresql+psycopg://smartedt:CHANGE_ME@127.0.0.1:5432/smartedt" + timescaledb = config.getboolean( + "DATABASE", + "timescaledb", + fallback=os.getenv("SMARTEDT_TIMESCALEDB", "True").lower() == "true", + ) + + return AppSettings( + server=server, + files=FileSettings(root_path=root_path), + database=DatabaseSettings(url=database_url, timescaledb=timescaledb), + ) + diff --git a/backend/database/__init__.py b/backend/database/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/backend/database/__init__.py @@ -0,0 +1 @@ + diff --git a/backend/database/check_db.py b/backend/database/check_db.py new file mode 100644 index 0000000..0ca5625 --- /dev/null +++ b/backend/database/check_db.py @@ -0,0 +1,66 @@ +import os +import sys + +def check_database(): + print("正在检查数据库连接...") + + # 连接参数:通过环境变量覆盖(不在输出中打印密码) + user = os.getenv("PG_USER", "smartedt") + password = os.getenv("PG_PASSWORD", "postgres") + host = os.getenv("PG_HOST", "127.0.0.1") + port = os.getenv("PG_PORT", "5432") + dbname = "smartedt" + + try: + import psycopg + conn = psycopg.connect( + dbname=dbname, + user=user, + password=password, + host=host, + port=port, + autocommit=True, + ) + server_version = getattr(conn.info, "server_version", None) + print(f"✅ 成功连接到 PostgreSQL 数据库 '{dbname}' (用户: {user}, v{server_version})") + + cur = conn.cursor() + + # 检查 TimescaleDB 扩展是否已安装 + print("正在检查 TimescaleDB 扩展...") + try: + # 尝试创建扩展(如果不存在) + cur.execute("CREATE EXTENSION IF NOT EXISTS timescaledb;") + print("✅ TimescaleDB 扩展加载成功") + + # 检查版本 + cur.execute("SELECT extversion FROM pg_extension WHERE extname = 'timescaledb';") + version = cur.fetchone() + if version: + print(f"✅ TimescaleDB 版本: {version[0]}") + else: + print("❌ 未找到 TimescaleDB 版本信息") + + except Exception as e: + print(f"❌ TimescaleDB 检查失败: {e}") + + cur.close() + conn.close() + return True + + except Exception as e: + print(f"❌ 连接失败: {e}") + print("\n可能有以下原因:") + print("1. 数据库服务未启动 (请运行 'net start postgresql-x64-17')") + print("2. 密码错误 (请设置环境变量 PG_PASSWORD)") + print("3. 端口被占用或配置不同") + return False + +if __name__ == "__main__": + try: + import psycopg # noqa: F401 + except ImportError: + print("缺少依赖 psycopg,请先安装后再运行该脚本。") + raise + + check_database() diff --git a/backend/database/engine.py b/backend/database/engine.py new file mode 100644 index 0000000..145ec5b --- /dev/null +++ b/backend/database/engine.py @@ -0,0 +1,18 @@ +from __future__ import annotations + +from sqlalchemy.ext.asyncio import AsyncEngine, AsyncSession, async_sessionmaker, create_async_engine + +from backend.config.settings import DatabaseSettings + + +def create_engine(settings: DatabaseSettings) -> AsyncEngine: + return create_async_engine( + settings.url, + pool_pre_ping=True, + future=True, + ) + + +def create_session_factory(engine: AsyncEngine) -> async_sessionmaker[AsyncSession]: + return async_sessionmaker(engine, expire_on_commit=False) + diff --git a/backend/database/schema.py b/backend/database/schema.py new file mode 100644 index 0000000..b9b7ffa --- /dev/null +++ b/backend/database/schema.py @@ -0,0 +1,224 @@ +from __future__ import annotations + +from datetime import datetime + +from sqlalchemy import JSON, BigInteger, Boolean, Column, DateTime, Float, ForeignKey, Index, String, Table, text +from sqlalchemy.dialects.postgresql import JSONB +from sqlalchemy.orm import DeclarativeBase, Mapped, mapped_column + + +class Base(DeclarativeBase): + pass + + +class Simulation(Base): + __tablename__ = "simulations" + + simulation_id: Mapped[str] = mapped_column(String(64), primary_key=True, comment="仿真 ID") + status: Mapped[str] = mapped_column(String(32), index=True, comment="仿真状态(running/stopped 等)") + started_at: Mapped[datetime] = mapped_column(DateTime(timezone=True), index=True, comment="开始时间(UTC)") + ended_at: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True, index=True, comment="结束时间(UTC)") + scenario_name: Mapped[str | None] = mapped_column(String(255), nullable=True, index=True, comment="仿真场景名称") + scenario_config: Mapped[dict] = mapped_column(JSON, default=dict, comment="仿真场景配置(JSON)") + config_created_at: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True, index=True, comment="配置创建时间(UTC)") + operator: Mapped[str | None] = mapped_column(String(64), nullable=True, index=True, comment="仿真操作员") + archived: Mapped[bool] = mapped_column(Boolean, default=False, comment="是否归档") + + +vehicle_signals = Table( + "sim_vehicle_signals", + Base.metadata, + Column("ts", DateTime(timezone=True), nullable=False, index=True, comment="信号采样时间(UTC)"), + Column("simulation_id", String(64), nullable=False, index=True, comment="仿真 ID"), + Column("device_id", String(64), nullable=False, index=True, comment="设备 ID"), + Column("seq", BigInteger, nullable=False, comment="信号序列号(单仿真内递增)"), + Column("signals", JSONB, nullable=False, comment="车辆信号载荷(JSONB)"), + Index("idx_vehicle_signals_sim_ts", "simulation_id", "ts"), + comment="车辆信号时序数据(TimescaleDB hypertable)", +) + +unity_vehicle_frames = Table( + "sim_unity_vehicle_frames", + Base.metadata, + Column("ts", DateTime(timezone=True), nullable=False, index=True, comment="帧时间(UTC)"), + Column("simulation_id", String(64), nullable=False, index=True, comment="仿真 ID"), + Column("vehicle_id", String(64), nullable=False, index=True, comment="虚拟车辆 ID"), + Column("seq", BigInteger, nullable=False, comment="帧序号(单仿真单车内递增)"), + Column("pos_x", Float, nullable=False, comment="位置 X(世界坐标)"), + Column("pos_y", Float, nullable=False, comment="位置 Y(世界坐标)"), + Column("pos_z", Float, nullable=False, comment="位置 Z(世界坐标)"), + Column("rot_x", Float, nullable=False, comment="旋转四元数 X"), + Column("rot_y", Float, nullable=False, comment="旋转四元数 Y"), + Column("rot_z", Float, nullable=False, comment="旋转四元数 Z"), + Column("rot_w", Float, nullable=False, comment="旋转四元数 W"), + Column("lin_vel_x", Float, nullable=True, comment="线速度 X(可选)"), + Column("lin_vel_y", Float, nullable=True, comment="线速度 Y(可选)"), + Column("lin_vel_z", Float, nullable=True, comment="线速度 Z(可选)"), + Column("ang_vel_x", Float, nullable=True, comment="角速度 X(可选)"), + Column("ang_vel_y", Float, nullable=True, comment="角速度 Y(可选)"), + Column("ang_vel_z", Float, nullable=True, comment="角速度 Z(可选)"), + Column("controls", JSONB, nullable=True, comment="控制量(油门/刹车/方向/档位等,JSONB)"), + Column("extra", JSONB, nullable=True, comment="扩展字段(仿真引擎自定义,JSONB)"), + Index("idx_unity_frames_sim_vehicle_ts", "simulation_id", "vehicle_id", "ts"), + comment="虚拟车辆驱动仿真帧数据(用于 Unity 车辆模型运动与回放,TimescaleDB hypertable)", +) + +screen_recordings = Table( + "sim_screen_videos", + Base.metadata, + Column("video_id", String(64), primary_key=True, comment="录制文件记录 ID"), + Column("simulation_id", String(64), nullable=False, index=True, comment="仿真 ID"), + Column("screen_type", String(32), nullable=False, index=True, comment="屏幕类型(big_screen/vehicle_screen 等)"), + Column("source_name", String(64), nullable=True, index=True, comment="录制源名称(可选,如设备号/通道号)"), + Column("status", String(32), nullable=False, index=True, comment="状态(recording/ready/failed 等)"), + Column("relative_path", String(1024), nullable=False, comment="相对文件根目录的路径(用于下载/归档)"), + Column("file_name", String(255), nullable=True, comment="文件名(可选)"), + Column("format", String(32), nullable=True, comment="容器格式(mp4/mkv 等)"), + Column("codec", String(64), nullable=True, comment="编码信息(H264/H265 等)"), + Column("width", BigInteger, nullable=True, comment="视频宽度(像素)"), + Column("height", BigInteger, nullable=True, comment="视频高度(像素)"), + Column("fps", Float, nullable=True, comment="帧率(可选)"), + Column("duration_ms", BigInteger, nullable=True, comment="时长(毫秒,可选)"), + Column("size_bytes", BigInteger, nullable=True, comment="文件大小(字节,可选)"), + Column("recorded_started_at", DateTime(timezone=True), nullable=True, index=True, comment="录制开始时间(UTC,可选)"), + Column("recorded_ended_at", DateTime(timezone=True), nullable=True, index=True, comment="录制结束时间(UTC,可选)"), + Column("created_at", DateTime(timezone=True), nullable=False, server_default=text("now()"), index=True, comment="记录创建时间(UTC)"), + Column("extra", JSONB, nullable=True, comment="扩展信息(JSONB)"), + Index("idx_screen_recordings_sim_screen_created", "simulation_id", "screen_type", "created_at"), + Index("idx_screen_recordings_sim_screen_time", "simulation_id", "screen_type", "recorded_started_at"), + comment="仿真过程屏幕录制文件元数据(显示大屏/车载屏等)", +) + +sys_role = Table( + "sys_role", + Base.metadata, + Column("role_id", String(64), primary_key=True, comment="角色 ID"), + Column("role_name", String(64), nullable=False, unique=True, index=True, comment="角色名称(唯一)"), + Column("role_desc", String(255), nullable=True, comment="角色描述"), + Column("is_active", Boolean, nullable=False, server_default=text("TRUE"), index=True, comment="是否启用"), + Column("created_at", DateTime(timezone=True), nullable=False, server_default=text("now()"), index=True, comment="创建时间(UTC)"), + Column("updated_at", DateTime(timezone=True), nullable=True, comment="更新时间(UTC)"), + Column("extra", JSONB, nullable=True, comment="扩展信息(JSONB)"), + comment="系统角色", +) + +sys_permission = Table( + "sys_permission", + Base.metadata, + Column("perm_code", String(128), primary_key=True, comment="权限编码(唯一)"), + Column("perm_name", String(128), nullable=False, index=True, comment="权限名称"), + Column("perm_group", String(64), nullable=True, index=True, comment="权限分组(可选)"), + Column("perm_desc", String(255), nullable=True, comment="权限描述"), + Column("created_at", DateTime(timezone=True), nullable=False, server_default=text("now()"), index=True, comment="创建时间(UTC)"), + comment="系统功能权限", +) + +sys_role_permission = Table( + "sys_role_permission", + Base.metadata, + Column("role_id", String(64), ForeignKey("sys_role.role_id", ondelete="CASCADE"), primary_key=True, comment="角色 ID"), + Column("perm_code", String(128), ForeignKey("sys_permission.perm_code", ondelete="CASCADE"), primary_key=True, comment="权限编码"), + Column("created_at", DateTime(timezone=True), nullable=False, server_default=text("now()"), index=True, comment="创建时间(UTC)"), + Index("idx_sys_role_permission_role", "role_id"), + Index("idx_sys_role_permission_perm", "perm_code"), + comment="角色功能权限关联表", +) + +sys_user = Table( + "sys_user", + Base.metadata, + Column("user_id", String(64), primary_key=True, comment="用户 ID"), + Column("username", String(64), nullable=False, unique=True, index=True, comment="登录名(唯一)"), + Column("display_name", String(64), nullable=True, index=True, comment="显示名称"), + Column("password_hash", String(255), nullable=False, comment="密码哈希"), + Column("role_id", String(64), ForeignKey("sys_role.role_id"), nullable=False, index=True, comment="所属角色 ID"), + Column("is_active", Boolean, nullable=False, server_default=text("TRUE"), index=True, comment="是否启用"), + Column("last_login_at", DateTime(timezone=True), nullable=True, index=True, comment="最近登录时间(UTC)"), + Column("created_at", DateTime(timezone=True), nullable=False, server_default=text("now()"), index=True, comment="创建时间(UTC)"), + Column("updated_at", DateTime(timezone=True), nullable=True, comment="更新时间(UTC)"), + Column("extra", JSONB, nullable=True, comment="扩展信息(JSONB)"), + comment="系统用户(含所属角色)", +) + +sys_logs = Table( + "sys_logs", + Base.metadata, + Column("log_id", BigInteger, primary_key=True, comment="日志 ID"), + Column("ts", DateTime(timezone=True), nullable=False, server_default=text("now()"), index=True, comment="操作时间(UTC)"), + Column("user_id", String(64), nullable=True, index=True, comment="用户 ID(可为空,如匿名)"), + Column("username", String(64), nullable=True, index=True, comment="登录名快照(可选)"), + Column("role_id", String(64), nullable=True, index=True, comment="角色 ID 快照(可选)"), + Column("action", String(128), nullable=False, index=True, comment="操作动作(如 login/start_simulation)"), + Column("resource", String(255), nullable=True, index=True, comment="资源标识(如 URL/对象 ID)"), + Column("success", Boolean, nullable=False, server_default=text("TRUE"), index=True, comment="是否成功"), + Column("ip", String(64), nullable=True, comment="客户端 IP(可选)"), + Column("user_agent", String(512), nullable=True, comment="User-Agent(可选)"), + Column("detail", JSONB, nullable=True, comment="操作明细(JSONB,可选)"), + Index("idx_sys_logs_user_ts", "user_id", "ts"), + Index("idx_sys_logs_action_ts", "action", "ts"), + comment="系统操作日志", +) + + +server_metrics = Table( + "server_metrics", + Base.metadata, + Column("ts", DateTime(timezone=True), nullable=False, index=True, comment="采样时间(UTC)"), + Column("host_name", String(64), nullable=False, index=True, comment="主机名"), + Column("cpu_usage_percent", JSONB, nullable=False, comment="CPU 使用率(百分比,JSONB)"), + Column("memory_usage_bytes", JSONB, nullable=False, comment="内存使用情况(字节,JSONB)"), + Column("disk_usage_bytes", JSONB, nullable=True, comment="磁盘使用情况(字节,JSONB)"), + Index("idx_server_metrics_host_ts", "host_name", "ts"), + comment="服务器监控指标时序数据(TimescaleDB hypertable)", +) + + +async def init_schema(engine) -> None: + from sqlalchemy.ext.asyncio import AsyncEngine + + if not isinstance(engine, AsyncEngine): + raise TypeError("engine must be AsyncEngine") + + async with engine.begin() as conn: + await conn.run_sync(Base.metadata.create_all) + await conn.execute(text("ALTER TABLE simulations ADD COLUMN IF NOT EXISTS scenario_name VARCHAR(255)")) + await conn.execute(text("ALTER TABLE simulations ADD COLUMN IF NOT EXISTS config_created_at TIMESTAMPTZ")) + await conn.execute(text("ALTER TABLE simulations ADD COLUMN IF NOT EXISTS operator VARCHAR(64)")) + await conn.execute(text("CREATE INDEX IF NOT EXISTS idx_simulations_scenario_name ON simulations (scenario_name)")) + await conn.execute(text("CREATE INDEX IF NOT EXISTS idx_simulations_config_created_at ON simulations (config_created_at)")) + await conn.execute(text("CREATE INDEX IF NOT EXISTS idx_simulations_operator ON simulations (operator)")) + + +async def init_timescaledb(engine) -> None: + async with engine.begin() as conn: + await conn.execute(text("CREATE EXTENSION IF NOT EXISTS timescaledb")) + await conn.execute( + text( + "SELECT create_hypertable('sim_vehicle_signals', 'ts', if_not_exists => TRUE)" + ) + ) + await conn.execute( + text( + "CREATE INDEX IF NOT EXISTS idx_vehicle_signals_sim_ts_desc ON sim_vehicle_signals (simulation_id, ts DESC)" + ) + ) + await conn.execute( + text( + "SELECT create_hypertable('server_metrics', 'ts', if_not_exists => TRUE)" + ) + ) + await conn.execute( + text( + "CREATE INDEX IF NOT EXISTS idx_server_metrics_host_ts_desc ON server_metrics (host_name, ts DESC)" + ) + ) + await conn.execute( + text( + "SELECT create_hypertable('sim_unity_vehicle_frames', 'ts', if_not_exists => TRUE)" + ) + ) + await conn.execute( + text( + "CREATE INDEX IF NOT EXISTS idx_unity_frames_sim_vehicle_ts_desc ON sim_unity_vehicle_frames (simulation_id, vehicle_id, ts DESC)" + ) + ) diff --git a/backend/database/test_db.py b/backend/database/test_db.py new file mode 100644 index 0000000..c8674ae --- /dev/null +++ b/backend/database/test_db.py @@ -0,0 +1,153 @@ +import asyncio +import os +import time +import json +import random +from datetime import datetime, timezone +from sqlalchemy import insert, select, text +from sqlalchemy.ext.asyncio import create_async_engine +from sqlalchemy.engine.url import make_url +from backend.database.schema import vehicle_signals, Simulation, init_schema, init_timescaledb +from backend.config.settings import load_settings + +# 模拟数据生成 +def generate_payload(): + return { + "steering_wheel_angle_deg": round(random.uniform(-450, 450), 1), + "brake_pedal_travel_mm": round(random.uniform(0, 100), 1), + "throttle_pedal_travel_mm": round(random.uniform(0, 100), 1), + "gear": random.choice(["P", "N", "D", "R"]), + "handbrake": random.choice([0, 1]), + "vehicle_speed_kmh": round(random.uniform(0, 180), 1), + "wheel_speed_rpm": { + "FL": random.randint(0, 2000), + "FR": random.randint(0, 2000), + "RL": random.randint(0, 2000), + "RR": random.randint(0, 2000) + }, + "lights": { + "left_turn": random.choice([0, 1]), + "right_turn": random.choice([0, 1]), + "hazard": random.choice([0, 1]), + "brake": random.choice([0, 1]) + }, + "soc_percent": round(random.uniform(0, 100), 1), + "voltage_v": round(random.uniform(300, 400), 1), + "current_a": round(random.uniform(-50, 200), 1), + "temperature_c": round(random.uniform(20, 80), 1) + } + +def _redact_url(url: str) -> str: + try: + parsed = make_url(url) + if parsed.password: + parsed = parsed.set(password="***") + return str(parsed) + except Exception: + return url + +async def run_test(): + settings = load_settings() + + db_url = os.getenv("SMARTEDT_TEST_DATABASE_URL", settings.database.url).strip() + print(f"Connecting to DB: {_redact_url(db_url)}") + engine = create_async_engine(db_url, echo=False) + + # 0. 初始化表结构 (如果不存在) + print("Initializing schema...") + await init_schema(engine) + try: + await init_timescaledb(engine) + print("Schema and TimescaleDB initialized.") + except Exception as e: + print(f"TimescaleDB init warning (might already exist): {e}") + + # 1. 准备测试数据 + total_records = int(os.getenv("SMARTEDT_TEST_RECORDS", "300000")) + batch_size = int(os.getenv("SMARTEDT_TEST_BATCH_SIZE", "1000")) + simulation_id = f"TEST_SIM_{int(time.time())}" + device_id = "test_device_01" + + print(f"Generating {total_records} records for simulation {simulation_id}...") + + print("Starting insertion test...") + + # 2. 插入性能测试 + insert_start_time = time.time() + + async with engine.begin() as conn: + # 分批插入 + for base_seq in range(0, total_records, batch_size): + batch = [] + end_seq = min(base_seq + batch_size, total_records) + for seq in range(base_seq, end_seq): + batch.append( + { + "ts": datetime.now(timezone.utc), + "simulation_id": simulation_id, + "device_id": device_id, + "seq": seq, + "signals": generate_payload(), + } + ) + await conn.execute(insert(vehicle_signals), batch) + if end_seq % 50000 == 0: + print(f"Inserted {end_seq} records...") + + insert_end_time = time.time() + insert_duration = insert_end_time - insert_start_time + print(f"\n✅ Insertion Test Complete:") + print(f"Total Records: {total_records}") + print(f"Time Taken: {insert_duration:.4f} seconds") + print(f"Throughput: {total_records / insert_duration:.2f} records/sec") + + # 3. 查询性能测试 + print("\nStarting query performance test...") + + # 3.1 简单计数查询 + query_start = time.time() + async with engine.connect() as conn: + result = await conn.execute( + select(text("count(*)")).select_from(vehicle_signals).where(vehicle_signals.c.simulation_id == simulation_id) + ) + count = result.scalar() + query_end = time.time() + print(f"Query 1 (Count): Found {count} records in {query_end - query_start:.4f} seconds") + + # 3.2 复杂 JSONB 查询 (查询车速 > 100 的记录数) + # 注意:JSONB 查询语法取决于数据库和 SQLAlchemy 版本,这里使用 text() 以确保兼容性 + query_start = time.time() + async with engine.connect() as conn: + # 查询 signals->>'vehicle_speed_kmh' > 100 + stmt = text( + "SELECT count(*) FROM vehicle_signals " + "WHERE simulation_id = :sim_id " + "AND (signals->>'vehicle_speed_kmh')::float > 100" + ) + result = await conn.execute(stmt, {"sim_id": simulation_id}) + high_speed_count = result.scalar() + query_end = time.time() + print(f"Query 2 (JSONB Filter): Found {high_speed_count} records with speed > 100 in {query_end - query_start:.4f} seconds") + + # 3.3 时间范围查询 (查询最近 1000 条) + query_start = time.time() + async with engine.connect() as conn: + stmt = ( + select(vehicle_signals) + .where(vehicle_signals.c.simulation_id == simulation_id) + .order_by(vehicle_signals.c.ts.desc()) + .limit(1000) + ) + result = await conn.execute(stmt) + rows = result.fetchall() + query_end = time.time() + print(f"Query 3 (Time Range Limit): Retrieved {len(rows)} records in {query_end - query_start:.4f} seconds") + + await engine.dispose() + +if __name__ == "__main__": + # 确保在 Windows 上正确运行 asyncio + if hasattr(asyncio, 'WindowsSelectorEventLoopPolicy'): + asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy()) + + asyncio.run(run_test()) diff --git a/backend/device/__init__.py b/backend/device/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/backend/device/__init__.py @@ -0,0 +1 @@ + diff --git a/backend/device/base.py b/backend/device/base.py new file mode 100644 index 0000000..244b1e0 --- /dev/null +++ b/backend/device/base.py @@ -0,0 +1,25 @@ +from __future__ import annotations + +from dataclasses import dataclass + + +@dataclass(frozen=True) +class DeviceInfo: + device_id: str + device_type: str + connected: bool + + +class DeviceAdapter: + device_id: str + device_type: str + + async def connect(self) -> None: + raise NotImplementedError + + async def disconnect(self) -> None: + raise NotImplementedError + + async def is_connected(self) -> bool: + raise NotImplementedError + diff --git a/backend/device/mock_vehicle.py b/backend/device/mock_vehicle.py new file mode 100644 index 0000000..f5242b3 --- /dev/null +++ b/backend/device/mock_vehicle.py @@ -0,0 +1,89 @@ +from __future__ import annotations + +import random +from dataclasses import dataclass + +from backend.device.base import DeviceAdapter + + +@dataclass(frozen=True) +class VehicleSignalPayload: + steering_wheel_angle_deg: float + brake_pedal_travel_mm: float + throttle_pedal_travel_mm: float + gear: str + handbrake: int + vehicle_speed_kmh: float + wheel_speed_rpm: dict + lights: dict + soc_percent: float + voltage_v: float + current_a: float + temperature_c: float + + def to_dict(self) -> dict: + return { + "steering_wheel_angle_deg": self.steering_wheel_angle_deg, + "brake_pedal_travel_mm": self.brake_pedal_travel_mm, + "throttle_pedal_travel_mm": self.throttle_pedal_travel_mm, + "gear": self.gear, + "handbrake": self.handbrake, + "vehicle_speed_kmh": self.vehicle_speed_kmh, + "wheel_speed_rpm": self.wheel_speed_rpm, + "lights": self.lights, + "soc_percent": self.soc_percent, + "voltage_v": self.voltage_v, + "current_a": self.current_a, + "temperature_c": self.temperature_c, + } + + +class MockVehicleDevice(DeviceAdapter): + def __init__(self, device_id: str = "controlbox_01") -> None: + self.device_id = device_id + self.device_type = "mock_vehicle" + self._connected = False + + async def connect(self) -> None: + self._connected = True + + async def disconnect(self) -> None: + self._connected = False + + async def is_connected(self) -> bool: + return self._connected + + def sample(self) -> VehicleSignalPayload: + steering = random.uniform(-180.0, 180.0) + brake = max(0.0, random.gauss(2.0, 1.0)) + throttle = max(0.0, random.gauss(15.0, 5.0)) + gear = random.choice(["P", "N", "D", "S"]) + handbrake = 1 if gear == "P" else 0 + speed = max(0.0, random.gauss(40.0, 10.0)) if gear in {"D", "S"} else 0.0 + rpm = int(speed * 9 + random.uniform(-5, 5)) + wheel = {"FL": rpm, "FR": rpm, "RL": rpm, "RR": rpm} + lights = { + "left_turn": int(random.random() < 0.05), + "right_turn": int(random.random() < 0.05), + "hazard": int(random.random() < 0.02), + "brake": int(brake > 5.0), + } + soc = max(0.0, min(100.0, 80.0 - random.random() * 0.1)) + voltage = 360.0 + random.uniform(-0.5, 0.5) + current = max(0.0, random.gauss(15.0, 2.0)) + temp = 28.0 + random.uniform(-0.2, 0.2) + return VehicleSignalPayload( + steering_wheel_angle_deg=steering, + brake_pedal_travel_mm=brake, + throttle_pedal_travel_mm=throttle, + gear=gear, + handbrake=handbrake, + vehicle_speed_kmh=speed, + wheel_speed_rpm=wheel, + lights=lights, + soc_percent=soc, + voltage_v=voltage, + current_a=current, + temperature_c=temp, + ) + diff --git a/backend/main.py b/backend/main.py new file mode 100644 index 0000000..c49f64d --- /dev/null +++ b/backend/main.py @@ -0,0 +1,149 @@ +from __future__ import annotations + +import argparse +import asyncio +import logging +import multiprocessing +import platform +import sys +from pathlib import Path + +# 修复 Windows 下 psycopg 异步连接的 Event Loop 问题 +if platform.system() == "Windows": + # 1. 强制设置 SelectorEventLoopPolicy + asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy()) + + # 2. Monkeypatch 阻止 uvicorn 覆盖策略 (uvicorn 默认在 Windows 上强制使用 Proactor) + # 这对 psycopg 3 (SQLAlchemy async) 是必须的,因为 Proactor 不支持 add_reader/add_writer + original_set_policy = asyncio.set_event_loop_policy + def patched_set_policy(policy): + # 如果尝试设置 Proactor,则忽略并保持 Selector + if isinstance(policy, asyncio.WindowsProactorEventLoopPolicy): + return + original_set_policy(policy) + asyncio.set_event_loop_policy = patched_set_policy + +import uvicorn +from dotenv import load_dotenv +from fastapi import FastAPI, WebSocket + +from contextlib import asynccontextmanager + +from backend.config.settings import load_settings +from backend.database.engine import create_engine, create_session_factory +from backend.database.schema import init_schema, init_timescaledb +from backend.services.broadcaster import Broadcaster +from backend.services.simulation_manager import SimulationManager +from backend.services.server_monitor import ServerMonitorService +from backend.device.mock_vehicle import MockVehicleDevice +from backend.api import routes, ws +from backend.utils import configure_logging + +logger = logging.getLogger("backend") + +def _default_backend_log_file() -> Path | None: + if getattr(sys, "frozen", False): + exe_dir = Path(sys.executable).resolve().parent + return exe_dir / "logs" / "backend.log" + return None + +def _force_windows_selector_event_loop_for_uvicorn() -> None: + if platform.system() != "Windows": + return + try: + import uvicorn.loops.asyncio as uvicorn_asyncio_loop + except Exception: + return + + def _selector_loop_factory(use_subprocess: bool = False): + return asyncio.SelectorEventLoop + + uvicorn_asyncio_loop.asyncio_loop_factory = _selector_loop_factory + +# 全局单例容器(简单实现) +class Container: + def __init__(self): + load_dotenv() + self.settings = load_settings() + configure_logging( + "INFO" if not self.settings.server.debug else "DEBUG", + log_file=_default_backend_log_file(), + ) + + self.file_root = self.settings.files.root_path + self.file_root.mkdir(parents=True, exist_ok=True) + + self.engine = create_engine(self.settings.database) + self.session_factory = create_session_factory(self.engine) + self.broadcaster = Broadcaster() + + # 实例化服务 + self.simulation_manager = SimulationManager( + self.session_factory, + self.broadcaster + ) + + # 实例化监控服务 + self.server_monitor = ServerMonitorService( + self.session_factory, + self.broadcaster + ) + +container = Container() + +@asynccontextmanager +async def lifespan(app: FastAPI): + # 启动前初始化 + await init_schema(container.engine) + if container.settings.database.timescaledb: + try: + await init_timescaledb(container.engine) + except Exception as e: + # 可能是已存在或权限问题,仅打印日志 + logger.warning("TimescaleDB init warning: %s", e) + + # 注册默认设备 + mock_dev = MockVehicleDevice(device_id="mock_01") + await container.simulation_manager.register_device(mock_dev) + + # 启动监控服务 + await container.server_monitor.start() + + yield + + # 停机清理 + await container.server_monitor.stop() + await container.simulation_manager.stop() + await container.engine.dispose() + +app = FastAPI(title="SmartEDT Backend", version="0.1.0", lifespan=lifespan) +app.include_router(routes.get_router(simulation_manager=container.simulation_manager, file_root=container.file_root)) + +@app.websocket("/ws") +async def ws_endpoint(websocket: WebSocket): + await ws.websocket_handler(websocket, broadcaster=container.broadcaster) + + +def main() -> None: + parser = argparse.ArgumentParser() + parser.add_argument("--host", default=None) + parser.add_argument("--port", type=int, default=None) + parser.add_argument("--debug", action="store_true") + args = parser.parse_args() + + settings = load_settings() + host = args.host or settings.server.host + port = args.port or settings.server.port + debug = args.debug or settings.server.debug + + _force_windows_selector_event_loop_for_uvicorn() + + if getattr(sys, 'frozen', False): + uvicorn.run(app, host=host, port=port, log_level="debug" if debug else "info") + else: + uvicorn.run("backend.main:app", host=host, port=port, reload=debug, log_level="debug" if debug else "info") + + +if __name__ == "__main__": + multiprocessing.freeze_support() + main() diff --git a/backend/requirements.txt b/backend/requirements.txt new file mode 100644 index 0000000..c0fe056 --- /dev/null +++ b/backend/requirements.txt @@ -0,0 +1,8 @@ +fastapi>=0.115.0 +uvicorn[standard]>=0.30.0 +sqlalchemy[asyncio]>=2.0.30 +psycopg[binary]>=3.2.0 +python-dotenv>=1.0.1 +pydantic>=2.8.0 +psutil>=5.9.0 + diff --git a/backend/requirements_build.txt b/backend/requirements_build.txt new file mode 100644 index 0000000..07bf186 --- /dev/null +++ b/backend/requirements_build.txt @@ -0,0 +1,2 @@ +pyinstaller>=6.9.0 + diff --git a/backend/services/__init__.py b/backend/services/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/backend/services/__init__.py @@ -0,0 +1 @@ + diff --git a/backend/services/broadcaster.py b/backend/services/broadcaster.py new file mode 100644 index 0000000..c1a0a7f --- /dev/null +++ b/backend/services/broadcaster.py @@ -0,0 +1,30 @@ +from __future__ import annotations + +import asyncio +from typing import Any + +from starlette.websockets import WebSocket + + +class Broadcaster: + def __init__(self) -> None: + self._clients: set[WebSocket] = set() + self._lock = asyncio.Lock() + + async def add(self, ws: WebSocket) -> None: + async with self._lock: + self._clients.add(ws) + + async def remove(self, ws: WebSocket) -> None: + async with self._lock: + self._clients.discard(ws) + + async def broadcast_json(self, message: dict[str, Any]) -> None: + async with self._lock: + clients = list(self._clients) + for ws in clients: + try: + await ws.send_json(message) + except Exception: + await self.remove(ws) + diff --git a/backend/services/server_monitor.py b/backend/services/server_monitor.py new file mode 100644 index 0000000..46e175f --- /dev/null +++ b/backend/services/server_monitor.py @@ -0,0 +1,127 @@ +import asyncio +import time +import logging +import psutil +import socket +import platform +from datetime import datetime, timezone +from sqlalchemy import insert +from sqlalchemy.ext.asyncio import async_sessionmaker + +from backend.database.schema import server_metrics +from backend.services.broadcaster import Broadcaster + +logger = logging.getLogger("backend.monitor") + +class ServerMonitorService: + def __init__(self, session_factory: async_sessionmaker, broadcaster: Broadcaster): + self._session_factory = session_factory + self._broadcaster = broadcaster + self._host_name = socket.gethostname() + self._running = False + self._task = None + self._sample_interval = 1.0 / 50.0 # 50Hz (20ms) + self._report_interval = 1.0 / 10.0 # 10Hz (100ms) + self._last_report_time = 0.0 + + # Buffer for downsampling + self._buffer_cpu = [] + self._buffer_mem = [] + + async def start(self): + if self._running: + return + self._running = True + self._task = asyncio.create_task(self._run_loop()) + logger.info("ServerMonitorService started") + + async def stop(self): + self._running = False + if self._task: + try: + await self._task + except asyncio.CancelledError: + pass + logger.info("ServerMonitorService stopped") + + async def _run_loop(self): + loop = asyncio.get_running_loop() + next_time = loop.time() + + while self._running: + # High frequency sampling (50Hz) + # psutil.cpu_percent(interval=None) is non-blocking + cpu_percent = psutil.cpu_percent(interval=None) + mem = psutil.virtual_memory() + + self._buffer_cpu.append(cpu_percent) + self._buffer_mem.append(mem) + + current_time = loop.time() + + # Check if it's time to report (10Hz) + if current_time - self._last_report_time >= self._report_interval: + await self._process_and_report() + self._last_report_time = current_time + self._buffer_cpu.clear() + self._buffer_mem.clear() + + # Precise timing control + next_time += self._sample_interval + sleep_time = next_time - loop.time() + if sleep_time > 0: + await asyncio.sleep(sleep_time) + else: + # If we are lagging, yield execution but don't sleep + await asyncio.sleep(0) + + async def _process_and_report(self): + if not self._buffer_cpu: + return + + # Downsampling: Calculate average of buffered samples + avg_cpu = sum(self._buffer_cpu) / len(self._buffer_cpu) + + # Take the latest memory reading (memory doesn't fluctuate as fast as CPU) + last_mem = self._buffer_mem[-1] + + payload = { + "ts": datetime.now(timezone.utc).isoformat(), + "host_name": self._host_name, + "cpu_usage_percent": { + "total": round(avg_cpu, 2), + # Note: per-core usage is expensive to query at 50Hz, so we only track total here + # or we could sample per-core at lower frequency + }, + "memory_usage_bytes": { + "total": last_mem.total, + "available": last_mem.available, + "used": last_mem.used, + "percent": last_mem.percent + }, + "disk_usage_bytes": {} # Optional: disk usage changes slowly, maybe check every 1s + } + + # 1. Broadcast via WebSocket (10Hz) + await self._broadcaster.broadcast_json({ + "type": "server.metrics", + "payload": payload + }) + + # 2. Persist to Database (10Hz) + # Note: In production, consider batching inserts further (e.g., every 1s) + # to reduce DB load, but 10Hz single insert is manageable for TimescaleDB. + async with self._session_factory() as session: + try: + stmt = insert(server_metrics).values( + ts=datetime.fromisoformat(payload["ts"]), + host_name=payload["host_name"], + cpu_usage_percent=payload["cpu_usage_percent"], + memory_usage_bytes=payload["memory_usage_bytes"], + disk_usage_bytes=payload["disk_usage_bytes"] + ) + await session.execute(stmt) + await session.commit() + except Exception as e: + logger.warning("Failed to persist server metrics: %s", e) + # Don't raise, keep monitoring running diff --git a/backend/services/simulation_manager.py b/backend/services/simulation_manager.py new file mode 100644 index 0000000..6508054 --- /dev/null +++ b/backend/services/simulation_manager.py @@ -0,0 +1,144 @@ +from __future__ import annotations + +import asyncio +import logging +import secrets +from dataclasses import dataclass +from typing import Any + +from sqlalchemy import insert +from sqlalchemy.ext.asyncio import AsyncSession, async_sessionmaker + +from backend.database.schema import Simulation, vehicle_signals +from backend.device.mock_vehicle import MockVehicleDevice +from backend.services.broadcaster import Broadcaster +from backend.utils import utc_now + + +logger = logging.getLogger("backend.simulation") + + +@dataclass +class SimulationRuntime: + simulation_id: str + status: str + task: asyncio.Task | None = None + + +class SimulationManager: + def __init__( + self, + session_factory: async_sessionmaker[AsyncSession], + broadcaster: Broadcaster, + ) -> None: + self._session_factory = session_factory + self._broadcaster = broadcaster + self._runtime: SimulationRuntime | None = None + self._device = MockVehicleDevice() + self._seq = 0 + + def current(self) -> SimulationRuntime | None: + return self._runtime + + async def register_device(self, device: MockVehicleDevice) -> None: + self._device = device + + async def start(self, scenario_config: dict[str, Any]) -> str: + if self._runtime and self._runtime.status == "running": + return self._runtime.simulation_id + + simulation_id = "SIM" + utc_now().strftime("%Y%m%d%H%M%S") + secrets.token_hex(2).upper() + started_at = utc_now() + scenario_name = scenario_config.get("scenario") + operator = scenario_config.get("driver") or scenario_config.get("operator") + config_created_at = started_at + + async with self._session_factory() as session: + session.add( + Simulation( + simulation_id=simulation_id, + status="running", + started_at=started_at, + ended_at=None, + scenario_name=scenario_name, + scenario_config=scenario_config, + config_created_at=config_created_at, + operator=operator, + archived=False, + ) + ) + await session.commit() + + await self._device.connect() + self._runtime = SimulationRuntime(simulation_id=simulation_id, status="running") + self._runtime.task = asyncio.create_task(self._run_loop(simulation_id)) + await self._broadcaster.broadcast_json( + {"type": "simulation.status", "ts": started_at.timestamp(), "simulation_id": simulation_id, "payload": {"status": "running"}} + ) + return simulation_id + + async def stop(self, simulation_id: str) -> None: + runtime = self._runtime + if not runtime or runtime.simulation_id != simulation_id: + return + + runtime.status = "stopping" + if runtime.task: + runtime.task.cancel() + try: + await runtime.task + except asyncio.CancelledError: + pass + + await self._device.disconnect() + ended_at = utc_now() + + async with self._session_factory() as session: + sim = await session.get(Simulation, simulation_id) + if sim: + sim.status = "stopped" + sim.ended_at = ended_at + await session.commit() + + await self._broadcaster.broadcast_json( + {"type": "simulation.status", "ts": ended_at.timestamp(), "simulation_id": simulation_id, "payload": {"status": "stopped"}} + ) + self._runtime = None + + async def _run_loop(self, simulation_id: str) -> None: + try: + while True: + await asyncio.sleep(0.05) + if not await self._device.is_connected(): + continue + + self._seq += 1 + ts = utc_now() + payload = self._device.sample().to_dict() + message = { + "type": "vehicle.signal", + "ts": ts.timestamp(), + "simulation_id": simulation_id, + "device_id": self._device.device_id, + "seq": self._seq, + "payload": payload, + } + await self._broadcaster.broadcast_json(message) + await self._persist_signal(ts, simulation_id, self._device.device_id, self._seq, payload) + except asyncio.CancelledError: + raise + except Exception: + logger.exception("simulation loop crashed") + + async def _persist_signal(self, ts, simulation_id: str, device_id: str, seq: int, signals: dict[str, Any]) -> None: + async with self._session_factory() as session: + await session.execute( + insert(vehicle_signals).values( + ts=ts, + simulation_id=simulation_id, + device_id=device_id, + seq=seq, + signals=signals, + ) + ) + await session.commit() diff --git a/backend/smartedt_backend.spec b/backend/smartedt_backend.spec new file mode 100644 index 0000000..ea48d07 --- /dev/null +++ b/backend/smartedt_backend.spec @@ -0,0 +1,95 @@ +# -*- mode: python ; coding: utf-8 -*- + +from PyInstaller.utils.hooks import collect_all + +datas = [ + ('config/config.ini', 'backend/config') +] +binaries = [] +hiddenimports = [ + 'uvicorn.logging', + 'uvicorn.loops', + 'uvicorn.loops.auto', + 'uvicorn.protocols', + 'uvicorn.protocols.http', + 'uvicorn.protocols.http.auto', + 'uvicorn.protocols.websockets', + 'uvicorn.protocols.websockets.auto', + 'uvicorn.lifespan', + 'uvicorn.lifespan.on', + 'backend.api', + 'backend.api.routes', + 'backend.api.schemas', + 'backend.api.ws', + 'backend.config', + 'backend.config.settings', + 'backend.database', + 'backend.database.engine', + 'backend.database.schema', + 'backend.device', + 'backend.device.base', + 'backend.device.mock_vehicle', + 'backend.services', + 'backend.services.broadcaster', + 'backend.services.server_monitor', + 'backend.services.simulation_manager', + 'backend.utils', + 'psycopg', + 'psycopg_binary', + 'sqlalchemy.ext.asyncio', + 'sqlalchemy.dialects.postgresql', + 'asyncpg', # Just in case, though we use psycopg +] + +tmp_ret = collect_all('uvicorn') +datas += tmp_ret[0]; binaries += tmp_ret[1]; hiddenimports += tmp_ret[2] + +tmp_ret = collect_all('psycopg') +datas += tmp_ret[0]; binaries += tmp_ret[1]; hiddenimports += tmp_ret[2] + +block_cipher = None + +a = Analysis( + ['main.py'], + pathex=[], + binaries=binaries, + datas=datas, + hiddenimports=hiddenimports, + hookspath=[], + hooksconfig={}, + runtime_hooks=[], + excludes=[], + win_no_prefer_redirects=False, + win_private_assemblies=False, + cipher=block_cipher, + noarchive=False, +) +pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) + +exe = EXE( + pyz, + a.scripts, + [], + exclude_binaries=True, + name='smartedt_backend', + debug=False, + bootloader_ignore_signals=False, + strip=False, + upx=True, + console=True, + disable_windowed_traceback=False, + argv_emulation=False, + target_arch=None, + codesign_identity=None, + entitlements_file=None, +) +coll = COLLECT( + exe, + a.binaries, + a.zipfiles, + a.datas, + strip=False, + upx=True, + upx_exclude=[], + name='smartedt_backend', +) diff --git a/backend/utils.py b/backend/utils.py new file mode 100644 index 0000000..382163a --- /dev/null +++ b/backend/utils.py @@ -0,0 +1,54 @@ +from __future__ import annotations + +import logging +import os +from datetime import datetime, timezone +from logging.handlers import TimedRotatingFileHandler +from pathlib import Path + + +def utc_now() -> datetime: + return datetime.now(timezone.utc) + + +def configure_logging(level: str, log_file: Path | None = None) -> None: + level_value = getattr(logging, level.upper(), logging.INFO) + logging_handlers: list[logging.Handler] = [logging.StreamHandler()] + if log_file is not None: + log_file.parent.mkdir(parents=True, exist_ok=True) + rotating_handler = TimedRotatingFileHandler( + log_file, + when="midnight", + interval=1, + backupCount=90, + encoding="utf-8", + delay=True, + ) + rotating_handler.suffix = "%Y-%m-%d" + logging_handlers.append(rotating_handler) + logging.basicConfig( + level=level_value, + format="%(asctime)s %(levelname)s %(name)s %(message)s", + handlers=logging_handlers, + force=True, + ) + for logger_name in ("uvicorn", "uvicorn.error", "uvicorn.access", "uvicorn.asgi"): + logger = logging.getLogger(logger_name) + logger.handlers = [] + logger.propagate = True + + +def project_root() -> Path: + return Path(__file__).resolve().parents[1] + + +def safe_join(root: Path, untrusted_path: str) -> Path: + if untrusted_path.startswith(("\\\\", "//")): + raise ValueError("UNC path is not allowed") + if os.path.isabs(untrusted_path): + raise ValueError("Absolute path is not allowed") + candidate = (root / untrusted_path).resolve() + root_resolved = root.resolve() + if root_resolved not in candidate.parents and candidate != root_resolved: + raise ValueError("Path traversal detected") + return candidate diff --git a/frontend/build_frontend.ps1 b/frontend/build_frontend.ps1 new file mode 100644 index 0000000..8805e52 --- /dev/null +++ b/frontend/build_frontend.ps1 @@ -0,0 +1,65 @@ +# Ensure we are in the frontend directory +$ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path +Set-Location $ScriptDir + +# $ProjectRoot = Split-Path -Parent $ScriptDir +# $BackendBuildScript = Join-Path $ProjectRoot "backend\build_backend.ps1" + +# Write-Host "Starting Full Build Process..." -ForegroundColor Cyan + +# # 1. Build Backend +# Write-Host "Invoking Backend Build..." -ForegroundColor Yellow +# & $BackendBuildScript +# if ($LASTEXITCODE -ne 0) { +# Write-Error "Backend build failed. Aborting." +# exit 1 +# } + +# 2. Build Frontend (Electron) +Write-Host "`nBuilding Frontend (Electron)..." -ForegroundColor Yellow + +# Ensure we are back in frontend directory (Backend script changes location) +Set-Location $ScriptDir + +try { + Get-Process -Name "SmartEDT" -ErrorAction SilentlyContinue | Stop-Process -Force -ErrorAction SilentlyContinue +} catch {} + +# Clean release directory to prevent file lock issues +if (Test-Path "release") { + Write-Host "Cleaning release directory..." -ForegroundColor Yellow + + # Try multiple times to remove the directory + $maxRetries = 3 + $retryCount = 0 + while ($retryCount -lt $maxRetries) { + try { + Remove-Item -Recurse -Force "release" -ErrorAction Stop + break + } catch { + Write-Host "Failed to clean release directory. Retrying in 2 seconds... ($($retryCount + 1)/$maxRetries)" -ForegroundColor Yellow + Start-Sleep -Seconds 2 + try { + Get-Process -Name "SmartEDT" -ErrorAction SilentlyContinue | Stop-Process -Force -ErrorAction SilentlyContinue + } catch {} + $retryCount++ + } + } + + if (Test-Path "release") { + Write-Warning "Could not fully clean release directory. Attempting to proceed..." + } else { + # Wait a bit to ensure filesystem is ready + Start-Sleep -Seconds 1 + } +} + +npm run dist + +if ($LASTEXITCODE -eq 0) { + Write-Host "`nFull build successful!" -ForegroundColor Green + Write-Host "Installer located at: $(Join-Path $ScriptDir 'release\SmartEDT Setup 0.1.0.exe')" -ForegroundColor Green +} else { + Write-Error "`nFrontend build failed!" + exit 1 +} diff --git a/frontend/index.html b/frontend/index.html new file mode 100644 index 0000000..a15fbfb --- /dev/null +++ b/frontend/index.html @@ -0,0 +1,13 @@ + + + + + + SmartEDT + + +
+ + + + diff --git a/frontend/main/main.cjs b/frontend/main/main.cjs new file mode 100644 index 0000000..40901d4 --- /dev/null +++ b/frontend/main/main.cjs @@ -0,0 +1,308 @@ +const { app, BrowserWindow, screen, Menu } = require("electron"); +const { spawn } = require("child_process"); +const path = require("path"); +const fs = require("fs"); +const os = require("os"); +const http = require("http"); + +// 简单的日志记录函数 +function log(message) { + const logPath = path.join(app.getPath("userData"), "smartedt.log"); + const timestamp = new Date().toISOString(); + const logMessage = `[${timestamp}] ${message}\n`; + try { + fs.appendFileSync(logPath, logMessage); + } catch (e) { + console.error("Failed to write log:", e); + } +} + +let backendProcess = null; +let staticServer = null; +let backendLogStream = null; + +function resolveRepoRoot() { + return path.resolve(__dirname, "..", ".."); +} + +function getPythonPath(repoRoot) { + if (process.env.SMARTEDT_PYTHON) { + return process.env.SMARTEDT_PYTHON; + } + // Check for venv in backend (Windows) + const venvPythonWin = path.join(repoRoot, "backend", "venv", "Scripts", "python.exe"); + if (fs.existsSync(venvPythonWin)) { + return venvPythonWin; + } + // Check for venv in backend (Linux/Mac) + const venvPythonUnix = path.join(repoRoot, "backend", "venv", "bin", "python"); + if (fs.existsSync(venvPythonUnix)) { + return venvPythonUnix; + } + // Fallback to system python + return "python"; +} + +function startBackend() { + log("Starting backend process..."); + if (backendLogStream) { + try { + backendLogStream.end(); + } catch (_) {} + backendLogStream = null; + } + + const repoRoot = resolveRepoRoot(); + let backendCmd; + let args; + let cwd; + + const safeTimestamp = new Date().toISOString().replace(/[:.]/g, "-"); + const backendLogPath = path.join(app.getPath("userData"), `backend-${safeTimestamp}.log`); + try { + backendLogStream = fs.createWriteStream(backendLogPath, { flags: "a" }); + backendLogStream.write(`[${new Date().toISOString()}] Backend log start\n`); + log(`Backend log file: ${backendLogPath}`); + } catch (e) { + backendLogStream = null; + log(`Failed to open backend log file: ${e.message}`); + } + + if (app.isPackaged) { + // In production, the backend is in resources/backend + const backendDir = path.join(process.resourcesPath, "backend"); + backendCmd = path.join(backendDir, "smartedt_backend.exe"); + args = ["--host", "127.0.0.1", "--port", "5000"]; + cwd = backendDir; + log(`Production mode. Backend cmd: ${backendCmd}`); + log(`Backend cwd: ${cwd}`); + } else { + // In development + const backendMain = path.join(repoRoot, "backend", "main.py"); + backendCmd = getPythonPath(repoRoot); + args = [backendMain, "--host", "127.0.0.1", "--port", "5000"]; + cwd = repoRoot; + log(`Development mode. Backend cmd: ${backendCmd}`); + } + + // 设置 PYTHONPATH 环境变量,确保能找到 backend 模块 (only for dev) + const env = { ...process.env }; + if (!app.isPackaged) { + env.PYTHONPATH = repoRoot; + } + + try { + if (!fs.existsSync(backendCmd) && app.isPackaged) { + log(`ERROR: Backend executable not found at ${backendCmd}`); + } + + backendProcess = spawn(backendCmd, args, { + cwd: cwd, + env: env, + stdio: "pipe", // Capture stdio + windowsHide: true + }); + + backendProcess.stdout.on("data", (data) => { + const text = data.toString(); + log(`[Backend stdout] ${text.trim()}`); + if (backendLogStream) { + backendLogStream.write(text.endsWith("\n") ? text : `${text}\n`); + } + }); + + backendProcess.stderr.on("data", (data) => { + const text = data.toString(); + log(`[Backend stderr] ${text.trim()}`); + if (backendLogStream) { + backendLogStream.write(text.endsWith("\n") ? text : `${text}\n`); + } + }); + + backendProcess.on("error", (err) => { + log(`Backend failed to start: ${err.message}`); + if (backendLogStream) { + backendLogStream.write(`[${new Date().toISOString()}] Backend failed to start: ${err.message}\n`); + } + }); + + backendProcess.on("exit", (code) => { + log(`Backend exited with code ${code}`); + backendProcess = null; + if (backendLogStream) { + backendLogStream.write(`[${new Date().toISOString()}] Backend exited with code ${code}\n`); + try { + backendLogStream.end(); + } catch (_) {} + backendLogStream = null; + } + }); + } catch (e) { + log(`Exception starting backend: ${e.message}`); + if (backendLogStream) { + backendLogStream.write(`[${new Date().toISOString()}] Exception starting backend: ${e.message}\n`); + try { + backendLogStream.end(); + } catch (_) {} + backendLogStream = null; + } + } +} + +function getMimeType(filePath) { + const ext = path.extname(filePath).toLowerCase(); + const mimeTypes = { + '.html': 'text/html', + '.js': 'text/javascript', + '.css': 'text/css', + '.json': 'application/json', + '.png': 'image/png', + '.jpg': 'image/jpg', + '.gif': 'image/gif', + '.svg': 'image/svg+xml', + '.ico': 'image/x-icon', + '.woff': 'application/font-woff', + '.woff2': 'font/woff2', + '.ttf': 'application/font-ttf' + }; + return mimeTypes[ext] || 'application/octet-stream'; +} + +function startLocalServer(callback) { + const distPath = path.join(__dirname, "..", "dist"); + log(`Starting local static server serving: ${distPath}`); + + staticServer = http.createServer((req, res) => { + try { + const url = new URL(req.url, `http://localhost`); + let filePath = path.join(distPath, url.pathname); + + // Security check + if (!filePath.startsWith(distPath)) { + res.statusCode = 403; + res.end('Forbidden'); + return; + } + + // Default to index.html for directories + if (fs.existsSync(filePath) && fs.statSync(filePath).isDirectory()) { + filePath = path.join(filePath, 'index.html'); + } + + // SPA Fallback: if file not found and no extension, serve index.html + if (!fs.existsSync(filePath)) { + if (path.extname(filePath) === '') { + filePath = path.join(distPath, 'index.html'); + } else { + res.statusCode = 404; + res.end('Not Found'); + return; + } + } + + const data = fs.readFileSync(filePath); + const mimeType = getMimeType(filePath); + res.setHeader('Content-Type', mimeType); + res.end(data); + } catch (err) { + log(`Server error: ${err.message}`); + res.statusCode = 500; + res.end(`Internal Server Error`); + } + }); + + // Listen on a random available port + staticServer.listen(0, '127.0.0.1', () => { + const port = staticServer.address().port; + const url = `http://127.0.0.1:${port}`; + log(`Local static server running at ${url}`); + callback(url); + }); + + staticServer.on('error', (err) => { + log(`Static server error: ${err.message}`); + }); +} + +function createWindowForDisplay(display, routePath, baseUrl) { + const bounds = display.bounds; + const win = new BrowserWindow({ + x: bounds.x, + y: bounds.y, + width: bounds.width, + height: bounds.height, + autoHideMenuBar: true, + webPreferences: { + contextIsolation: true + } + }); + + win.setMenuBarVisibility(false); + if (process.platform !== "darwin") { + win.removeMenu(); + } + + // Combine baseUrl with route hash + // e.g. http://127.0.0.1:5173/#/control/config + // or http://127.0.0.1:xxxxx/#/control/config + const fullUrl = `${baseUrl}/#${routePath}`; + + log(`Loading window URL: ${fullUrl}`); + win.loadURL(fullUrl).catch(e => { + log(`Failed to load URL ${fullUrl}: ${e.message}`); + }); + + return win; +} + +function createWindows(baseUrl) { + log(`Creating windows with base URL: ${baseUrl}`); + const displays = screen.getAllDisplays(); + const primary = screen.getPrimaryDisplay(); + const others = displays.filter((d) => d.id !== primary.id); + + createWindowForDisplay(primary, "/control/config", baseUrl); + + if (others[0]) { + createWindowForDisplay(others[0], "/big/dashboard", baseUrl); + } + if (others[1]) { + createWindowForDisplay(others[1], "/car/sim", baseUrl); + } +} + +app.whenReady().then(() => { + log("App ready"); + if (process.platform !== "darwin") { + Menu.setApplicationMenu(null); + } + startBackend(); + + if (app.isPackaged) { + // Production: Start local static server + startLocalServer((serverUrl) => { + createWindows(serverUrl); + }); + } else { + // Development: Use Vite dev server + const devServerUrl = process.env.VITE_DEV_SERVER_URL || "http://127.0.0.1:5173"; + createWindows(devServerUrl); + } +}); + +app.on("before-quit", () => { + if (backendProcess) { + backendProcess.kill(); + backendProcess = null; + } + if (backendLogStream) { + try { + backendLogStream.end(); + } catch (_) {} + backendLogStream = null; + } + if (staticServer) { + staticServer.close(); + staticServer = null; + } +}); diff --git a/frontend/package-lock.json b/frontend/package-lock.json new file mode 100644 index 0000000..4f808dc --- /dev/null +++ b/frontend/package-lock.json @@ -0,0 +1,5699 @@ +{ + "name": "smartedt-frontend", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "smartedt-frontend", + "version": "0.1.0", + "dependencies": { + "pinia": "^3.0.4", + "uplot": "^1.6.32", + "vue": "^3.5.0", + "vue-router": "^4.4.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^5.1.0", + "concurrently": "^9.0.0", + "cross-env": "^10.1.0", + "electron": "^27.3.11", + "electron-builder": "^24.13.3", + "electron-packager": "^17.1.2", + "vite": "^5.4.0", + "wait-on": "^7.2.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.27.1", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.28.5", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.28.6", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.6" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.28.6", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.27.1", + "@babel/helper-validator-identifier": "^7.28.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@develar/schema-utils": { + "version": "2.6.5", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.0", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/@electron/asar": { + "version": "3.4.1", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^5.0.0", + "glob": "^7.1.6", + "minimatch": "^3.0.4" + }, + "bin": { + "asar": "bin/asar.js" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/@electron/asar/node_modules/brace-expansion": { + "version": "1.1.12", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@electron/asar/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@electron/get": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "env-paths": "^2.2.0", + "fs-extra": "^8.1.0", + "got": "^11.8.5", + "progress": "^2.0.3", + "semver": "^6.2.0", + "sumchecker": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "global-agent": "^3.0.0" + } + }, + "node_modules/@electron/notarize": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.1", + "promise-retry": "^2.0.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/notarize/node_modules/fs-extra": { + "version": "9.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/notarize/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/notarize/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/osx-sign": { + "version": "1.0.5", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "compare-version": "^0.1.2", + "debug": "^4.3.4", + "fs-extra": "^10.0.0", + "isbinaryfile": "^4.0.8", + "minimist": "^1.2.6", + "plist": "^3.0.5" + }, + "bin": { + "electron-osx-flat": "bin/electron-osx-flat.js", + "electron-osx-sign": "bin/electron-osx-sign.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@electron/osx-sign/node_modules/fs-extra": { + "version": "10.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@electron/osx-sign/node_modules/isbinaryfile": { + "version": "4.0.10", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/@electron/osx-sign/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/osx-sign/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@electron/universal": { + "version": "1.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@electron/asar": "^3.2.1", + "@malept/cross-spawn-promise": "^1.1.0", + "debug": "^4.3.1", + "dir-compare": "^3.0.0", + "fs-extra": "^9.0.1", + "minimatch": "^3.0.4", + "plist": "^3.0.4" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@electron/universal/node_modules/brace-expansion": { + "version": "1.1.12", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@electron/universal/node_modules/fs-extra": { + "version": "9.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@electron/universal/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@electron/universal/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@electron/universal/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@epic-web/invariant": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@epic-web/invariant/-/invariant-1.0.0.tgz", + "integrity": "sha512-lrTPqgvfFQtR/eY/qkIzp98OGdNJu0m5ji3q/nJI8v3SXkRKEnWiOxMmbvcSoAIzv/cGiuvRy57k4suKQSAdwA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.2.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "license": "MIT" + }, + "node_modules/@malept/cross-spawn-promise": { + "version": "1.1.1", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/malept" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/subscription/pkg/npm-.malept-cross-spawn-promise?utm_medium=referral&utm_source=npm_fund" + } + ], + "license": "Apache-2.0", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@malept/flatpak-bundler": { + "version": "0.4.0", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.0", + "lodash": "^4.17.15", + "tmp-promise": "^3.0.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/fs-extra": { + "version": "9.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@malept/flatpak-bundler/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.55.1", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.55.1", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@sideway/address": { + "version": "4.1.5", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@sideway/formula": { + "version": "3.0.1", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@sindresorhus/is": { + "version": "4.6.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/cacheable-request": { + "version": "6.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/http-cache-semantics": "*", + "@types/keyv": "^3.1.4", + "@types/node": "*", + "@types/responselike": "^1.0.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.8", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/fs-extra": { + "version": "9.0.13", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/http-cache-semantics": { + "version": "4.0.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/keyv": { + "version": "3.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ms": { + "version": "2.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.19.30", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/plist": { + "version": "3.0.5", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*", + "xmlbuilder": ">=11.0.1" + } + }, + "node_modules/@types/responselike": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/verror": { + "version": "1.10.11", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "5.2.4", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.5", + "@vue/shared": "3.5.26", + "entities": "^7.0.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.5.26", + "@vue/shared": "3.5.26" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.28.5", + "@vue/compiler-core": "3.5.26", + "@vue/compiler-dom": "3.5.26", + "@vue/compiler-ssr": "3.5.26", + "@vue/shared": "3.5.26", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.6", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.26", + "@vue/shared": "3.5.26" + } + }, + "node_modules/@vue/devtools-api": { + "version": "7.7.9", + "license": "MIT", + "dependencies": { + "@vue/devtools-kit": "^7.7.9" + } + }, + "node_modules/@vue/devtools-kit": { + "version": "7.7.9", + "license": "MIT", + "dependencies": { + "@vue/devtools-shared": "^7.7.9", + "birpc": "^2.3.0", + "hookable": "^5.5.3", + "mitt": "^3.0.1", + "perfect-debounce": "^1.0.0", + "speakingurl": "^14.0.1", + "superjson": "^2.2.2" + } + }, + "node_modules/@vue/devtools-shared": { + "version": "7.7.9", + "license": "MIT", + "dependencies": { + "rfdc": "^1.4.1" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.26" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.26", + "@vue/shared": "3.5.26" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.26", + "@vue/runtime-core": "3.5.26", + "@vue/shared": "3.5.26", + "csstype": "^3.2.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.5.26", + "@vue/shared": "3.5.26" + }, + "peerDependencies": { + "vue": "3.5.26" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.26", + "license": "MIT" + }, + "node_modules/@xmldom/xmldom": { + "version": "0.8.11", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/7zip-bin": { + "version": "5.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/agent-base": { + "version": "6.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/app-builder-bin": { + "version": "4.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/app-builder-lib": { + "version": "24.13.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@develar/schema-utils": "~2.6.5", + "@electron/notarize": "2.2.1", + "@electron/osx-sign": "1.0.5", + "@electron/universal": "1.5.1", + "@malept/flatpak-bundler": "^0.4.0", + "@types/fs-extra": "9.0.13", + "async-exit-hook": "^2.0.1", + "bluebird-lst": "^1.0.9", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chromium-pickle-js": "^0.2.0", + "debug": "^4.3.4", + "ejs": "^3.1.8", + "electron-publish": "24.13.1", + "form-data": "^4.0.0", + "fs-extra": "^10.1.0", + "hosted-git-info": "^4.1.0", + "is-ci": "^3.0.0", + "isbinaryfile": "^5.0.0", + "js-yaml": "^4.1.0", + "lazy-val": "^1.0.5", + "minimatch": "^5.1.1", + "read-config-file": "6.3.2", + "sanitize-filename": "^1.6.3", + "semver": "^7.3.8", + "tar": "^6.1.12", + "temp-file": "^3.4.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "dmg-builder": "24.13.3", + "electron-builder-squirrel-windows": "24.13.3" + } + }, + "node_modules/app-builder-lib/node_modules/fs-extra": { + "version": "10.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/app-builder-lib/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/app-builder-lib/node_modules/semver": { + "version": "7.7.3", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/app-builder-lib/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/archiver": { + "version": "5.3.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "archiver-utils": "^2.1.0", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/archiver-utils": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "glob": "^7.1.4", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/archiver-utils/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/archiver-utils/node_modules/string_decoder": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "3.2.6", + "dev": true, + "license": "MIT" + }, + "node_modules/async-exit-hook": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/author-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/author-regex/-/author-regex-1.0.0.tgz", + "integrity": "sha512-KbWgR8wOYRAPekEmMXrYYdc7BRyhn2Ftk7KWfMUnQ43hFdojWEFRxhhRUm3/OFEdPa1r0KAvTTg9YQK57xTe0g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/axios": { + "version": "1.13.2", + "dev": true, + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.4", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/birpc": { + "version": "2.9.0", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "dev": true, + "license": "MIT" + }, + "node_modules/bluebird-lst": { + "version": "1.0.9", + "dev": true, + "license": "MIT", + "dependencies": { + "bluebird": "^3.5.5" + } + }, + "node_modules/boolean": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/brace-expansion": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-equal": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/builder-util": { + "version": "24.13.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/debug": "^4.1.6", + "7zip-bin": "~5.2.0", + "app-builder-bin": "4.0.0", + "bluebird-lst": "^1.0.9", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "debug": "^4.3.4", + "fs-extra": "^10.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.1", + "is-ci": "^3.0.0", + "js-yaml": "^4.1.0", + "source-map-support": "^0.5.19", + "stat-mode": "^1.0.0", + "temp-file": "^3.4.0" + } + }, + "node_modules/builder-util-runtime": { + "version": "9.2.4", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "sax": "^1.2.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/builder-util/node_modules/fs-extra": { + "version": "10.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/builder-util/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/builder-util/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/chromium-pickle-js": { + "version": "0.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/ci-info": { + "version": "3.9.0", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/compare-version": { + "version": "0.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/compress-commons": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/concurrently": { + "version": "9.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "4.1.2", + "rxjs": "7.8.2", + "shell-quote": "1.8.3", + "supports-color": "8.1.1", + "tree-kill": "1.2.2", + "yargs": "17.7.2" + }, + "bin": { + "conc": "dist/bin/concurrently.js", + "concurrently": "dist/bin/concurrently.js" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/open-cli-tools/concurrently?sponsor=1" + } + }, + "node_modules/config-file-ts": { + "version": "0.2.6", + "dev": true, + "license": "MIT", + "dependencies": { + "glob": "^10.3.10", + "typescript": "^5.3.3" + } + }, + "node_modules/config-file-ts/node_modules/glob": { + "version": "10.5.0", + "dev": true, + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/config-file-ts/node_modules/minimatch": { + "version": "9.0.5", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/config-file-ts/node_modules/minipass": { + "version": "7.1.2", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/copy-anything": { + "version": "4.0.5", + "license": "MIT", + "dependencies": { + "is-what": "^5.2.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/crc": { + "version": "3.8.0", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "buffer": "^5.1.0" + } + }, + "node_modules/crc-32": { + "version": "1.2.2", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc32-stream": { + "version": "4.0.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cross-env": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-10.1.0.tgz", + "integrity": "sha512-GsYosgnACZTADcmEyJctkJIoqAhHjttw7RsFrVoJNXbsWWqaq6Ym+7kZjq6mS45O0jij6vtiReppKQEtqWy6Dw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@epic-web/invariant": "^1.0.0", + "cross-spawn": "^7.0.6" + }, + "bin": { + "cross-env": "dist/bin/cross-env.js", + "cross-env-shell": "dist/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn-windows-exe": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/cross-spawn-windows-exe/-/cross-spawn-windows-exe-1.2.0.tgz", + "integrity": "sha512-mkLtJJcYbDCxEG7Js6eUnUNndWjyUZwJ3H7bErmmtOYU/Zb99DyUkpamuIZE0b3bhmJyZ7D90uS6f+CGxRRjOw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/malept" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/subscription/pkg/npm-cross-spawn-windows-exe?utm_medium=referral&utm_source=npm_fund" + } + ], + "license": "Apache-2.0", + "dependencies": { + "@malept/cross-spawn-promise": "^1.1.0", + "is-wsl": "^2.2.0", + "which": "^2.0.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/dir-compare": { + "version": "3.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-equal": "^1.0.0", + "minimatch": "^3.0.4" + } + }, + "node_modules/dir-compare/node_modules/brace-expansion": { + "version": "1.1.12", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/dir-compare/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/dmg-builder": { + "version": "24.13.3", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "24.13.3", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "fs-extra": "^10.1.0", + "iconv-lite": "^0.6.2", + "js-yaml": "^4.1.0" + }, + "optionalDependencies": { + "dmg-license": "^1.0.11" + } + }, + "node_modules/dmg-builder/node_modules/dmg-license": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/dmg-license/-/dmg-license-1.0.11.tgz", + "integrity": "sha512-ZdzmqwKmECOWJpqefloC5OJy1+WZBBse5+MR88z9g9Zn4VY+WYUkAyojmhzJckH5YbbZGcYIuGAkY5/Ys5OM2Q==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "@types/plist": "^3.0.1", + "@types/verror": "^1.10.3", + "ajv": "^6.10.0", + "crc": "^3.8.0", + "iconv-corefoundation": "^1.1.7", + "plist": "^3.0.4", + "smart-buffer": "^4.0.2", + "verror": "^1.10.0" + }, + "bin": { + "dmg-license": "bin/dmg-license.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dmg-builder/node_modules/fs-extra": { + "version": "10.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/dmg-builder/node_modules/iconv-corefoundation": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/iconv-corefoundation/-/iconv-corefoundation-1.1.7.tgz", + "integrity": "sha512-T10qvkw0zz4wnm560lOEg0PovVqUXuOFhhHAkixw8/sycy7TJt7v/RrkEKEQnAw2viPSJu6iAkErxnzR0g8PpQ==", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "dependencies": { + "cli-truncate": "^2.1.0", + "node-addon-api": "^1.6.3" + }, + "engines": { + "node": "^8.11.2 || >=10" + } + }, + "node_modules/dmg-builder/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/dmg-builder/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/dotenv": { + "version": "9.0.2", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=10" + } + }, + "node_modules/dotenv-expand": { + "version": "5.1.0", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/ejs": { + "version": "3.1.10", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/electron": { + "version": "27.3.11", + "resolved": "https://registry.npmjs.org/electron/-/electron-27.3.11.tgz", + "integrity": "sha512-E1SiyEoI8iW5LW/MigCr7tJuQe7+0105UjqY7FkmCD12e2O6vtUbQ0j05HaBh2YgvkcEVgvQ2A8suIq5b5m6Gw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@electron/get": "^2.0.0", + "@types/node": "^18.11.18", + "extract-zip": "^2.0.1" + }, + "bin": { + "electron": "cli.js" + }, + "engines": { + "node": ">= 12.20.55" + } + }, + "node_modules/electron-builder": { + "version": "24.13.3", + "dev": true, + "license": "MIT", + "dependencies": { + "app-builder-lib": "24.13.3", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "dmg-builder": "24.13.3", + "fs-extra": "^10.1.0", + "is-ci": "^3.0.0", + "lazy-val": "^1.0.5", + "read-config-file": "6.3.2", + "simple-update-notifier": "2.0.0", + "yargs": "^17.6.2" + }, + "bin": { + "electron-builder": "cli.js", + "install-app-deps": "install-app-deps.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/electron-builder-squirrel-windows": { + "version": "24.13.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "app-builder-lib": "24.13.3", + "archiver": "^5.3.1", + "builder-util": "24.13.1", + "fs-extra": "^10.1.0" + } + }, + "node_modules/electron-builder-squirrel-windows/node_modules/fs-extra": { + "version": "10.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-builder-squirrel-windows/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-builder-squirrel-windows/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-builder/node_modules/fs-extra": { + "version": "10.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-builder/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-builder/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-packager": { + "version": "17.1.2", + "resolved": "https://registry.npmjs.org/electron-packager/-/electron-packager-17.1.2.tgz", + "integrity": "sha512-XofXdikjYI7MVBcnXeoOvRR+yFFFHOLs3J7PF5KYQweigtgLshcH4W660PsvHr4lYZ03JBpLyEcUB8DzHZ+BNw==", + "deprecated": "Please use @electron/packager moving forward. There is no API change, just a package name change", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@electron/asar": "^3.2.1", + "@electron/get": "^2.0.0", + "@electron/notarize": "^1.2.3", + "@electron/osx-sign": "^1.0.5", + "@electron/universal": "^1.3.2", + "cross-spawn-windows-exe": "^1.2.0", + "debug": "^4.0.1", + "extract-zip": "^2.0.0", + "filenamify": "^4.1.0", + "fs-extra": "^11.1.0", + "galactus": "^1.0.0", + "get-package-info": "^1.0.0", + "junk": "^3.1.0", + "parse-author": "^2.0.0", + "plist": "^3.0.0", + "rcedit": "^3.0.1", + "resolve": "^1.1.6", + "semver": "^7.1.3", + "yargs-parser": "^21.1.1" + }, + "bin": { + "electron-packager": "bin/electron-packager.js" + }, + "engines": { + "node": ">= 14.17.5" + }, + "funding": { + "url": "https://github.com/electron/electron-packager?sponsor=1" + } + }, + "node_modules/electron-packager/node_modules/@electron/notarize": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@electron/notarize/-/notarize-1.2.4.tgz", + "integrity": "sha512-W5GQhJEosFNafewnS28d3bpQ37/s91CDWqxVchHfmv2dQSTWpOzNlUVQwYzC1ay5bChRV/A9BTL68yj0Pa+TSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.1", + "fs-extra": "^9.0.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-packager/node_modules/@electron/notarize/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/electron-packager/node_modules/fs-extra": { + "version": "11.3.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.3.tgz", + "integrity": "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/electron-packager/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-packager/node_modules/semver": { + "version": "7.7.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/electron-packager/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron-publish": { + "version": "24.13.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/fs-extra": "^9.0.11", + "builder-util": "24.13.1", + "builder-util-runtime": "9.2.4", + "chalk": "^4.1.2", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "mime": "^2.5.2" + } + }, + "node_modules/electron-publish/node_modules/fs-extra": { + "version": "10.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/electron-publish/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/electron-publish/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/electron/node_modules/@types/node": { + "version": "18.19.130", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.130.tgz", + "integrity": "sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/electron/node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true, + "license": "MIT" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/end-of-stream": { + "version": "1.4.5", + "dev": true, + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/entities": { + "version": "7.0.0", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", + "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es6-error": { + "version": "4.1.1", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/esbuild": { + "version": "0.21.5", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/esbuild/node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild/node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "license": "MIT" + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extsprintf": { + "version": "1.4.1", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "optional": true + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/filelist": { + "version": "1.0.4", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.0.1" + } + }, + "node_modules/filename-reserved-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/filename-reserved-regex/-/filename-reserved-regex-2.0.0.tgz", + "integrity": "sha512-lc1bnsSr4L4Bdif8Xb/qrtokGbq5zlsms/CYH8PP+WtCkGNF65DPiQY8vG3SakEdRn8Dlnm+gW/qWKKjS5sZzQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/filenamify": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/filenamify/-/filenamify-4.3.0.tgz", + "integrity": "sha512-hcFKyUG57yWGAzu1CMt/dPzYZuv+jAJUT85bL8mrXvNe6hWj6yEHEc4EdcgiA6Z3oi1/9wXJdZPXF2dZNgwgOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "filename-reserved-regex": "^2.0.0", + "strip-outer": "^1.0.1", + "trim-repeated": "^1.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/flora-colossus": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flora-colossus/-/flora-colossus-2.0.0.tgz", + "integrity": "sha512-dz4HxH6pOvbUzZpZ/yXhafjbR2I8cenK5xL0KtBFb7U2ADsR+OwXifnxZjij/pZWF775uSCMzWVd+jDik2H2IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "fs-extra": "^10.1.0" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/flora-colossus/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/flora-colossus/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/flora-colossus/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.11", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/foreground-child": { + "version": "3.3.1", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/function-bind": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/galactus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/galactus/-/galactus-1.0.0.tgz", + "integrity": "sha512-R1fam6D4CyKQGNlvJne4dkNF+PvUUl7TAJInvTGa9fti9qAv95quQz29GXapA4d8Ec266mJJxFVh82M4GIIGDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4", + "flora-colossus": "^2.0.0", + "fs-extra": "^10.1.0" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/galactus/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/galactus/node_modules/jsonfile": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", + "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/galactus/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-info": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-package-info/-/get-package-info-1.0.0.tgz", + "integrity": "sha512-SCbprXGAPdIhKAXiG+Mk6yeoFH61JlYunqdFQFHDtLjJlDjFf6x07dsS8acO+xWt52jpdVo49AlVDnUVK1sDNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "bluebird": "^3.1.1", + "debug": "^2.2.0", + "lodash.get": "^4.0.0", + "read-pkg-up": "^2.0.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/get-package-info/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/get-package-info/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true, + "license": "MIT" + }, + "node_modules/get-proto": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.12", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/global-agent": { + "version": "3.0.0", + "dev": true, + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/global-agent/node_modules/semver": { + "version": "7.7.3", + "dev": true, + "license": "ISC", + "optional": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/got": { + "version": "11.8.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.2", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "dev": true, + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hookable": { + "version": "5.5.3", + "license": "MIT" + }, + "node_modules/hosted-git-info": { + "version": "4.1.0", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.2.0", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "dev": true, + "license": "ISC" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-ci": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ci-info": "^3.2.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-what": { + "version": "5.5.0", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/isbinaryfile": { + "version": "5.0.7", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 18.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jake": { + "version": "10.9.4", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async": "^3.2.6", + "filelist": "^1.0.4", + "picocolors": "^1.1.1" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/joi": { + "version": "17.13.3", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@hapi/hoek": "^9.3.0", + "@hapi/topo": "^5.1.0", + "@sideway/address": "^4.1.5", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/js-yaml": { + "version": "4.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "dev": true, + "license": "ISC", + "optional": true + }, + "node_modules/json5": { + "version": "2.2.3", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/junk": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", + "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/lazy-val": { + "version": "1.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/lazystream": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/lazystream/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/lazystream/node_modules/string_decoder": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha512-3p6ZOGNbiX4CdvEd1VcE6yi78UrGNpjHO33noGwHCnT/o2fyllJDepsm8+mFFv/DvtwFHht5HIHSyOy5a+ChVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/lodash.difference": { + "version": "4.5.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "deprecated": "This package is deprecated. Use the optional chaining (?.) operator instead.", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/lodash.union": { + "version": "4.6.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/lowercase-keys": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/matcher": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "escape-string-regexp": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "5.1.6", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "5.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mitt": { + "version": "3.0.1", + "license": "MIT" + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.11", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-addon-api": { + "version": "1.7.2", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true, + "license": "ISC" + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/once": { + "version": "1.4.0", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-cancelable": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "dev": true, + "license": "BlueOak-1.0.0" + }, + "node_modules/parse-author": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-author/-/parse-author-2.0.0.tgz", + "integrity": "sha512-yx5DfvkN8JsHL2xk2Os9oTia467qnvRgey4ahSm2X8epehBLx/gWLcy5KI+Y36ful5DzGbCS6RazqZGgy1gHNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "author-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "dev": true, + "license": "ISC" + }, + "node_modules/path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha512-dUnb5dXUf+kzhC/W/F4e5/SkluXIFf5VUHolW1Eg1irn1hGWjPGdsRcvYJ1nD6lhk8Ir7VM0bHJKsYTx8Jx9OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/perfect-debounce": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "license": "ISC" + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinia": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-3.0.4.tgz", + "integrity": "sha512-l7pqLUFTI/+ESXn6k3nu30ZIzW5E2WZF/LaHJEpoq6ElcLD+wduZoB2kBN19du6K/4FDpPMazY2wJr+IndBtQw==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^7.7.7" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "typescript": ">=4.5.0", + "vue": "^3.5.11" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/plist": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@xmldom/xmldom": "^0.8.8", + "base64-js": "^1.5.1", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">=10.4.0" + } + }, + "node_modules/postcss": { + "version": "8.5.6", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.11", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/progress": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/pump": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/quick-lru": { + "version": "5.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rcedit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/rcedit/-/rcedit-3.1.0.tgz", + "integrity": "sha512-WRlRdY1qZbu1L11DklT07KuHfRk42l0NFFJdaExELEu4fEQ982bP5Z6OWGPj/wLLIuKRQDCxZJGAwoFsxhZhNA==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn-windows-exe": "^1.1.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/read-config-file": { + "version": "6.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "config-file-ts": "^0.2.4", + "dotenv": "^9.0.2", + "dotenv-expand": "^5.1.0", + "js-yaml": "^4.1.0", + "json5": "^2.2.0", + "lazy-val": "^1.0.4" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha512-eFIBOPW7FGjzBuk3hdXEuNSiTZS/xEMlH49HxMyzb0hyPfu4EhVjT2DH32K1hSSmVq4sebAWnZuuY5auISUTGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha512-1orxQfbWGUiTn9XsPlChs6rLie/AV9jwZTGmu2NZw/CUDJQchXJFYE0Fq5j7+n558T1JhDWLdhyd1Zj+wLY//w==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdir-glob": { + "version": "1.1.3", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.11", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", + "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.1", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-alpn": { + "version": "1.2.1", + "dev": true, + "license": "MIT" + }, + "node_modules/responselike": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "lowercase-keys": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/rfdc": { + "version": "1.4.1", + "license": "MIT" + }, + "node_modules/roarr": { + "version": "2.15.4", + "dev": true, + "license": "BSD-3-Clause", + "optional": true, + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/rollup": { + "version": "4.55.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.8" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.55.1", + "@rollup/rollup-android-arm64": "4.55.1", + "@rollup/rollup-darwin-arm64": "4.55.1", + "@rollup/rollup-darwin-x64": "4.55.1", + "@rollup/rollup-freebsd-arm64": "4.55.1", + "@rollup/rollup-freebsd-x64": "4.55.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.55.1", + "@rollup/rollup-linux-arm-musleabihf": "4.55.1", + "@rollup/rollup-linux-arm64-gnu": "4.55.1", + "@rollup/rollup-linux-arm64-musl": "4.55.1", + "@rollup/rollup-linux-loong64-gnu": "4.55.1", + "@rollup/rollup-linux-loong64-musl": "4.55.1", + "@rollup/rollup-linux-ppc64-gnu": "4.55.1", + "@rollup/rollup-linux-ppc64-musl": "4.55.1", + "@rollup/rollup-linux-riscv64-gnu": "4.55.1", + "@rollup/rollup-linux-riscv64-musl": "4.55.1", + "@rollup/rollup-linux-s390x-gnu": "4.55.1", + "@rollup/rollup-linux-x64-gnu": "4.55.1", + "@rollup/rollup-linux-x64-musl": "4.55.1", + "@rollup/rollup-openbsd-x64": "4.55.1", + "@rollup/rollup-openharmony-arm64": "4.55.1", + "@rollup/rollup-win32-arm64-msvc": "4.55.1", + "@rollup/rollup-win32-ia32-msvc": "4.55.1", + "@rollup/rollup-win32-x64-gnu": "4.55.1", + "@rollup/rollup-win32-x64-msvc": "4.55.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup/node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.55.1.tgz", + "integrity": "sha512-9R0DM/ykwfGIlNu6+2U09ga0WXeZ9MRC2Ter8jnz8415VbuIykVuc6bhdrbORFZANDmTDvq26mJrEVTl8TdnDg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-android-arm64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.55.1.tgz", + "integrity": "sha512-eFZCb1YUqhTysgW3sj/55du5cG57S7UTNtdMjCW7LwVcj3dTTcowCsC8p7uBdzKsZYa8J7IDE8lhMI+HX1vQvg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.55.1.tgz", + "integrity": "sha512-p3grE2PHcQm2e8PSGZdzIhCKbMCw/xi9XvMPErPhwO17vxtvCN5FEA2mSLgmKlCjHGMQTP6phuQTYWUnKewwGg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-darwin-x64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.55.1.tgz", + "integrity": "sha512-rDUjG25C9qoTm+e02Esi+aqTKSBYwVTaoS1wxcN47/Luqef57Vgp96xNANwt5npq9GDxsH7kXxNkJVEsWEOEaQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.55.1.tgz", + "integrity": "sha512-+JiU7Jbp5cdxekIgdte0jfcu5oqw4GCKr6i3PJTlXTCU5H5Fvtkpbs4XJHRmWNXF+hKmn4v7ogI5OQPaupJgOg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.55.1.tgz", + "integrity": "sha512-V5xC1tOVWtLLmr3YUk2f6EJK4qksksOYiz/TCsFHu/R+woubcLWdC9nZQmwjOAbmExBIVKsm1/wKmEy4z4u4Bw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.55.1.tgz", + "integrity": "sha512-Rn3n+FUk2J5VWx+ywrG/HGPTD9jXNbicRtTM11e/uorplArnXZYsVifnPPqNNP5BsO3roI4n8332ukpY/zN7rQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.55.1.tgz", + "integrity": "sha512-grPNWydeKtc1aEdrJDWk4opD7nFtQbMmV7769hiAaYyUKCT1faPRm2av8CX1YJsZ4TLAZcg9gTR1KvEzoLjXkg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.55.1.tgz", + "integrity": "sha512-a59mwd1k6x8tXKcUxSyISiquLwB5pX+fJW9TkWU46lCqD/GRDe9uDN31jrMmVP3feI3mhAdvcCClhV8V5MhJFQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.55.1.tgz", + "integrity": "sha512-puS1MEgWX5GsHSoiAsF0TYrpomdvkaXm0CofIMG5uVkP6IBV+ZO9xhC5YEN49nsgYo1DuuMquF9+7EDBVYu4uA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.55.1.tgz", + "integrity": "sha512-r3Wv40in+lTsULSb6nnoudVbARdOwb2u5fpeoOAZjFLznp6tDU8kd+GTHmJoqZ9lt6/Sys33KdIHUaQihFcu7g==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.55.1.tgz", + "integrity": "sha512-MR8c0+UxAlB22Fq4R+aQSPBayvYa3+9DrwG/i1TKQXFYEaoW3B5b/rkSRIypcZDdWjWnpcvxbNaAJDcSbJU3Lw==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.55.1.tgz", + "integrity": "sha512-3KhoECe1BRlSYpMTeVrD4sh2Pw2xgt4jzNSZIIPLFEsnQn9gAnZagW9+VqDqAHgm1Xc77LzJOo2LdigS5qZ+gw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.55.1.tgz", + "integrity": "sha512-ziR1OuZx0vdYZZ30vueNZTg73alF59DicYrPViG0NEgDVN8/Jl87zkAPu4u6VjZST2llgEUjaiNl9JM6HH1Vdw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.55.1.tgz", + "integrity": "sha512-uW0Y12ih2XJRERZ4jAfKamTyIHVMPQnTZcQjme2HMVDAHY4amf5u414OqNYC+x+LzRdRcnIG1YodLrrtA8xsxw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.55.1.tgz", + "integrity": "sha512-u9yZ0jUkOED1BFrqu3BwMQoixvGHGZ+JhJNkNKY/hyoEgOwlqKb62qu+7UjbPSHYjiVy8kKJHvXKv5coH4wDeg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.55.1.tgz", + "integrity": "sha512-/0PenBCmqM4ZUd0190j7J0UsQ/1nsi735iPRakO8iPciE7BQ495Y6msPzaOmvx0/pn+eJVVlZrNrSh4WSYLxNg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.55.1.tgz", + "integrity": "sha512-a8G4wiQxQG2BAvo+gU6XrReRRqj+pLS2NGXKm8io19goR+K8lw269eTrPkSdDTALwMmJp4th2Uh0D8J9bEV1vg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.55.1.tgz", + "integrity": "sha512-bD+zjpFrMpP/hqkfEcnjXWHMw5BIghGisOKPj+2NaNDuVT+8Ds4mPf3XcPHuat1tz89WRL+1wbcxKY3WSbiT7w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.55.1.tgz", + "integrity": "sha512-eLXw0dOiqE4QmvikfQ6yjgkg/xDM+MdU9YJuP4ySTibXU0oAvnEWXt7UDJmD4UkYialMfOGFPJnIHSe/kdzPxg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.55.1.tgz", + "integrity": "sha512-xzm44KgEP11te3S2HCSyYf5zIzWmx3n8HDCc7EE59+lTcswEWNpvMLfd9uJvVX8LCg9QWG67Xt75AuHn4vgsXw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.55.1.tgz", + "integrity": "sha512-yR6Bl3tMC/gBok5cz/Qi0xYnVbIxGx5Fcf/ca0eB6/6JwOY+SRUcJfI0OpeTpPls7f194as62thCt/2BjxYN8g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/rollup/node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.55.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.55.1.tgz", + "integrity": "sha512-3fZBidchE0eY0oFZBnekYCfg+5wAB0mbpCBuofh5mZuzIU/4jIVkbESmd2dOsFNS78b53CYv3OAtwqkZZmU5nA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/rollup/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/rxjs": { + "version": "7.8.2", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "peer": true + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/sanitize-filename": { + "version": "1.6.3", + "dev": true, + "license": "WTFPL OR ISC", + "dependencies": { + "truncate-utf8-bytes": "^1.0.0" + } + }, + "node_modules/sax": { + "version": "1.4.4", + "dev": true, + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=11.0.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver-compare": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/serialize-error": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/simple-update-notifier": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/simple-update-notifier/node_modules/semver": { + "version": "7.7.3", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true, + "license": "CC-BY-3.0" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.22", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.22.tgz", + "integrity": "sha512-4PRT4nh1EImPbt2jASOKHX7PB7I+e4IWNLvkKFDxNhJlfjbYlleYQh285Z/3mPTHSAK/AvdMmw5BNNuYH8ShgQ==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/speakingurl": { + "version": "14.0.1", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "dev": true, + "license": "BSD-3-Clause", + "optional": true + }, + "node_modules/stat-mode": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-outer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-outer/-/strip-outer-1.0.1.tgz", + "integrity": "sha512-k55yxKHwaXnpYGsOzg4Vl8+tDrWylxDEpknGjhTiZB8dFRU5rTo9CAzeycivxV3s+zlTKwrs6WxMxR95n26kwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-outer/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/sumchecker": { + "version": "3.0.1", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "debug": "^4.1.0" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/superjson": { + "version": "2.2.6", + "license": "MIT", + "dependencies": { + "copy-anything": "^4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/supports-color": { + "version": "8.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "dev": true, + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/temp-file": { + "version": "3.4.0", + "dev": true, + "license": "MIT", + "dependencies": { + "async-exit-hook": "^2.0.1", + "fs-extra": "^10.0.0" + } + }, + "node_modules/temp-file/node_modules/fs-extra": { + "version": "10.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/temp-file/node_modules/jsonfile": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/temp-file/node_modules/universalify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/tmp": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.14" + } + }, + "node_modules/tmp-promise": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "tmp": "^0.2.0" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/trim-repeated": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-repeated/-/trim-repeated-1.0.0.tgz", + "integrity": "sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/trim-repeated/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/truncate-utf8-bytes": { + "version": "1.0.2", + "dev": true, + "license": "WTFPL", + "dependencies": { + "utf8-byte-length": "^1.0.1" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "dev": true, + "license": "0BSD" + }, + "node_modules/type-fest": { + "version": "0.13.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "dev": true, + "license": "MIT" + }, + "node_modules/universalify": { + "version": "0.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/uplot": { + "version": "1.6.32", + "resolved": "https://registry.npmjs.org/uplot/-/uplot-1.6.32.tgz", + "integrity": "sha512-KIMVnG68zvu5XXUbC4LQEPnhwOxBuLyW1AHtpm6IKTXImkbLgkMy+jabjLgSLMasNuGGzQm/ep3tOkyTxpiQIw==", + "license": "MIT" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/utf8-byte-length": { + "version": "1.0.5", + "dev": true, + "license": "(WTFPL OR MIT)" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/verror": { + "version": "1.10.1", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/vite": { + "version": "5.4.21", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/vue": { + "version": "3.5.26", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.26", + "@vue/compiler-sfc": "3.5.26", + "@vue/runtime-dom": "3.5.26", + "@vue/server-renderer": "3.5.26", + "@vue/shared": "3.5.26" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-router": { + "version": "4.6.4", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/vue-router/node_modules/@vue/devtools-api": { + "version": "6.6.4", + "license": "MIT" + }, + "node_modules/wait-on": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "axios": "^1.6.1", + "joi": "^17.11.0", + "lodash": "^4.17.21", + "minimist": "^1.2.8", + "rxjs": "^7.8.1" + }, + "bin": { + "wait-on": "bin/wait-on" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "dev": true, + "license": "ISC" + }, + "node_modules/xmlbuilder": { + "version": "15.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yauzl": { + "version": "2.10.0", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + }, + "node_modules/zip-stream": { + "version": "4.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "archiver-utils": "^3.0.4", + "compress-commons": "^4.1.2", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/zip-stream/node_modules/archiver-utils": { + "version": "3.0.4", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "glob": "^7.2.3", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + } + } +} diff --git a/frontend/package.json b/frontend/package.json new file mode 100644 index 0000000..d2803fe --- /dev/null +++ b/frontend/package.json @@ -0,0 +1,60 @@ +{ + "name": "smartedt-frontend", + "private": true, + "version": "0.1.0", + "type": "module", + "main": "main/main.cjs", + "scripts": { + "dev": "concurrently -k \"vite\" \"wait-on http://127.0.0.1:5173 && cross-env ELECTRON_OVERRIDE_DIST_PATH=d:\\electron-v39.2.7-win32-x64 electron .\"", + "build": "vite build", + "preview": "vite preview", + "pack": "npm run build && electron-builder --dir", + "dist": "npm run build && electron-builder" + }, + "dependencies": { + "pinia": "^3.0.4", + "uplot": "^1.6.32", + "vue": "^3.5.0", + "vue-router": "^4.4.0" + }, + "devDependencies": { + "@vitejs/plugin-vue": "^5.1.0", + "concurrently": "^9.0.0", + "cross-env": "^10.1.0", + "electron": "^27.3.11", + "electron-builder": "^24.13.3", + "electron-packager": "^17.1.2", + "vite": "^5.4.0", + "wait-on": "^7.2.0" + }, + "build": { + "appId": "com.smartedt.app", + "productName": "SmartEDT", + "directories": { + "output": "release" + }, + "win": { + "target": [ + "nsis" + ] + }, + "nsis": { + "oneClick": false, + "allowToChangeInstallationDirectory": true + }, + "files": [ + "dist/**", + "main/**", + "package.json" + ], + "extraResources": [ + { + "from": "../backend/dist/smartedt_backend", + "to": "backend", + "filter": [ + "**/*" + ] + } + ] + } +} diff --git a/frontend/query b/frontend/query new file mode 100644 index 0000000..1a0aea4 --- /dev/null +++ b/frontend/query @@ -0,0 +1 @@ +postgresql-x64-17 diff --git a/frontend/src/App.vue b/frontend/src/App.vue new file mode 100644 index 0000000..d93135f --- /dev/null +++ b/frontend/src/App.vue @@ -0,0 +1,81 @@ + + + + + + diff --git a/frontend/src/lib/api.js b/frontend/src/lib/api.js new file mode 100644 index 0000000..9b85e1b --- /dev/null +++ b/frontend/src/lib/api.js @@ -0,0 +1,26 @@ +export const API_BASE = "http://127.0.0.1:5000"; + +export async function getHealth() { + const res = await fetch(`${API_BASE}/health`); + if (!res.ok) throw new Error(`health failed: ${res.status}`); + return res.json(); +} + +export async function startSimulation(payload) { + const res = await fetch(`${API_BASE}/api/simulation/start`, { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify(payload || {}) + }); + if (!res.ok) throw new Error(`start failed: ${res.status}`); + return res.json(); +} + +export async function stopSimulation(simulationId) { + const res = await fetch(`${API_BASE}/api/simulation/${encodeURIComponent(simulationId)}/stop`, { + method: "POST" + }); + if (!res.ok) throw new Error(`stop failed: ${res.status}`); + return res.json(); +} + diff --git a/frontend/src/lib/ws.js b/frontend/src/lib/ws.js new file mode 100644 index 0000000..4fc60f7 --- /dev/null +++ b/frontend/src/lib/ws.js @@ -0,0 +1,15 @@ +export function connectWs(onMessage) { + const ws = new WebSocket("ws://127.0.0.1:5000/ws"); + ws.onmessage = (evt) => { + try { + onMessage(JSON.parse(evt.data)); + } catch { + onMessage({ type: "raw", payload: evt.data }); + } + }; + ws.onopen = () => { + ws.send("hello"); + }; + return ws; +} + diff --git a/frontend/src/main.js b/frontend/src/main.js new file mode 100644 index 0000000..4e9ac0a --- /dev/null +++ b/frontend/src/main.js @@ -0,0 +1,36 @@ +import { createApp } from "vue"; +import { createPinia } from "pinia"; +import { createRouter, createWebHashHistory } from "vue-router"; +import App from "./App.vue"; +import BigDashboard from "./pages/BigDashboard.vue"; +import BigSystemIntro from "./pages/BigSystemIntro.vue"; +import BigSimMonitor from "./pages/BigSimMonitor.vue"; +import CarSim from "./pages/CarSim.vue"; +import ControlConfig from "./pages/ControlConfig.vue"; +import ControlOperate from "./pages/ControlOperate.vue"; +import ControlQuery from "./pages/ControlQuery.vue"; +import ControlAnalysis from "./pages/ControlAnalysis.vue"; +import ControlAdmin from "./pages/ControlAdmin.vue"; +import ServerMonitor from "./pages/ServerMonitor.vue"; + +const router = createRouter({ + history: createWebHashHistory(), + routes: [ + { path: "/", redirect: "/control/config" }, + { path: "/big/system-intro", component: BigSystemIntro }, + { path: "/big/dashboard", component: BigDashboard }, + { path: "/big/sim-monitor", component: BigSimMonitor }, + { path: "/car/sim", component: CarSim }, + { path: "/control/config", component: ControlConfig }, + { path: "/control/operate", component: ControlOperate }, + { path: "/control/query", component: ControlQuery }, + { path: "/control/analysis", component: ControlAnalysis }, + { path: "/control/admin", component: ControlAdmin }, + { path: "/control/server-monitor", component: ServerMonitor } + ] +}); + +const pinia = createPinia(); +createApp(App).use(router).use(pinia).mount("#app"); + + diff --git a/frontend/src/pages/BigDashboard.vue b/frontend/src/pages/BigDashboard.vue new file mode 100644 index 0000000..4f6e792 --- /dev/null +++ b/frontend/src/pages/BigDashboard.vue @@ -0,0 +1,54 @@ + + + + + + diff --git a/frontend/src/pages/BigSimMonitor.vue b/frontend/src/pages/BigSimMonitor.vue new file mode 100644 index 0000000..c7c7ece --- /dev/null +++ b/frontend/src/pages/BigSimMonitor.vue @@ -0,0 +1,53 @@ + + + + + + diff --git a/frontend/src/pages/BigSystemIntro.vue b/frontend/src/pages/BigSystemIntro.vue new file mode 100644 index 0000000..0228610 --- /dev/null +++ b/frontend/src/pages/BigSystemIntro.vue @@ -0,0 +1,16 @@ + + + + + + diff --git a/frontend/src/pages/CarSim.vue b/frontend/src/pages/CarSim.vue new file mode 100644 index 0000000..9d6819b --- /dev/null +++ b/frontend/src/pages/CarSim.vue @@ -0,0 +1,36 @@ + + + + + + diff --git a/frontend/src/pages/ControlAdmin.vue b/frontend/src/pages/ControlAdmin.vue new file mode 100644 index 0000000..73347a8 --- /dev/null +++ b/frontend/src/pages/ControlAdmin.vue @@ -0,0 +1,16 @@ + + + + + + diff --git a/frontend/src/pages/ControlAnalysis.vue b/frontend/src/pages/ControlAnalysis.vue new file mode 100644 index 0000000..0e6ecb1 --- /dev/null +++ b/frontend/src/pages/ControlAnalysis.vue @@ -0,0 +1,16 @@ + + + + + + diff --git a/frontend/src/pages/ControlConfig.vue b/frontend/src/pages/ControlConfig.vue new file mode 100644 index 0000000..e41cc81 --- /dev/null +++ b/frontend/src/pages/ControlConfig.vue @@ -0,0 +1,76 @@ + + + + + + diff --git a/frontend/src/pages/ControlOperate.vue b/frontend/src/pages/ControlOperate.vue new file mode 100644 index 0000000..b101f61 --- /dev/null +++ b/frontend/src/pages/ControlOperate.vue @@ -0,0 +1,51 @@ + + + + + + diff --git a/frontend/src/pages/ControlQuery.vue b/frontend/src/pages/ControlQuery.vue new file mode 100644 index 0000000..a9bae63 --- /dev/null +++ b/frontend/src/pages/ControlQuery.vue @@ -0,0 +1,16 @@ + + + + + + diff --git a/frontend/src/pages/ServerMonitor.vue b/frontend/src/pages/ServerMonitor.vue new file mode 100644 index 0000000..756b2f6 --- /dev/null +++ b/frontend/src/pages/ServerMonitor.vue @@ -0,0 +1,191 @@ + + + + + diff --git a/frontend/src/stores/simulation.js b/frontend/src/stores/simulation.js new file mode 100644 index 0000000..f797a5f --- /dev/null +++ b/frontend/src/stores/simulation.js @@ -0,0 +1,76 @@ +import { defineStore } from "pinia"; +import { ref, reactive } from "vue"; + +export const useSimulationStore = defineStore("simulation", () => { + const ws = ref(null); + const connected = ref(false); + const simulationId = ref(""); + const simulationStatus = ref("stopped"); + const latestSignal = reactive({}); + const serverMetrics = ref(null); // 新增服务器监控状态 + + function connect() { + if (ws.value) return; + + ws.value = new WebSocket("ws://127.0.0.1:5000/ws"); + + ws.value.onopen = () => { + connected.value = true; + console.log("WS connected"); + }; + + ws.value.onclose = () => { + connected.value = false; + ws.value = null; + console.log("WS disconnected"); + // Simple reconnect logic could be added here + setTimeout(connect, 3000); + }; + + ws.value.onmessage = (evt) => { + try { + const msg = JSON.parse(evt.data); + handleMessage(msg); + } catch (e) { + console.error("WS parse error", e); + } + }; + } + + function handleMessage(msg) { + if (msg.type === "vehicle.signal") { + if (msg.simulation_id) { + simulationId.value = msg.simulation_id; + } + if (msg.payload) { + Object.assign(latestSignal, msg.payload); + } + } else if (msg.type === "simulation.status") { + if (msg.simulation_id) { + simulationId.value = msg.simulation_id; + } + if (msg.payload && msg.payload.status) { + simulationStatus.value = msg.payload.status; + } + } else if (msg.type === "server.metrics") { + serverMetrics.value = msg.payload; + } + } + + function disconnect() { + if (ws.value) { + ws.value.close(); + ws.value = null; + } + } + + return { + connected, + simulationId, + simulationStatus, + latestSignal, + serverMetrics, + connect, + disconnect + }; +}); diff --git a/frontend/vite.config.js b/frontend/vite.config.js new file mode 100644 index 0000000..06dbc0a --- /dev/null +++ b/frontend/vite.config.js @@ -0,0 +1,16 @@ +import { defineConfig } from "vite"; +import vue from "@vitejs/plugin-vue"; + +export default defineConfig({ + base: "./", + plugins: [vue()], + server: { + host: "127.0.0.1", + port: 5173 + }, + build: { + outDir: "dist", + emptyOutDir: true + } +}); + diff --git a/unity3D/unity开发的代码 b/unity3D/unity开发的代码 new file mode 100644 index 0000000..7a23fe8 --- /dev/null +++ b/unity3D/unity开发的代码 @@ -0,0 +1,2 @@ +此目录放置unity开发的代码 +增了电池电量显示 \ No newline at end of file diff --git a/智能电动车数字孪生系统功能规划2026.pdf b/智能电动车数字孪生系统功能规划2026.pdf new file mode 100644 index 0000000000000000000000000000000000000000..fa47fbe5c097dd5322db0b5ab16e9e1250324e74 GIT binary patch literal 681208 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

@+eqLrTbgoI6u#^M^@6#8|i4F)Va4PR9u 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%0AtA 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

s=Y0xd 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≪rgxdLw9JF#jxxG^2G) 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 z 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

PX9N3cO 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 z zO8;;wr+s4#2!(nzLA(()kfCz%43s_`0E&Vd&jIh$qIuQbGu+SG2&4dDoVqu6tfMsY z$kgvK>$_6B5>oW^rn#WzfpcW|A{0d%swc&+PzZVBf7=JZ}Xq?_P@ zKJT2vZmPRe_MffrI55j*!xh4YB$MV#OFGktJ&Z@Mi)j;nB2d7$FS_fzeo6#zEH93T zl8T(Ap(N_juGDw$zM~mB%PstrjtCnhYZ9eUN40WD^au_5DXO~L_LkH5A=njDBIDvF z3!O>Eo-|ZM9jfITA+wCpiS+aq3@|Nki~QjiNfGgUQa5$Ush(k@?nAdQZSpg_t8YIS z6u>ekgCTZtdD6U(hrF{)Xu(IO<*R+o3X-qTM-5e_&9o(-5^9YgT5f;^CsU`1g70$y zPOcT{Y^SYF>m~1e#t-R+pZQHclg=1}++w4C+>uleCD7k({>KbnwFVOTvJ`2~j`s^Zf5T95_c zQXbUOFJ3+dmT+~$}M*oPF~J$eDIaQi9-X266ljJ zXuXpwsaEZwF}Z750Ox6k#{aM|9&a~Yy=-3Xe9UpH5FdgAUE}@cPj_H+ioRiVeEbzJ zkr??ZE-|=25zQ&6@4a?2c{D$?`F6G0!=v(2;ti&%McB$1DwWlW5kfr+psoD}{|~HW zQwC7&x=2vvpbzPp${H>NOB@#hHZ@wFb5&J}r!{Kngsf+QD491Xp$NC9?8j+L(^*`K zAF83Y`Z$I4_+7P%H50bYFU_S`~i=ju8)jkSsG#gPSUsT zKpydB9v9b<$Q=)y`-n7Wq7gcJ92{9>UA=LhniWv5T_-xXyu!m1(5bFkP_T)Rimd(4 z8nX6!rRUc&n5bHxR3H~>zYYEHK{(QqucPp{o{uG(&4p;pAU>w0S&+MB*ZCG{otIcS zP*5R3#aOUc!8PU{mY&7{t_nEFj4-nR%wb#Mm0KUoEP6~$E?oz!Z=1T6BEZiI7d}EY ztIMuU#vcU>tHmiqLysjE33*6-!JcX;>3o0Qq~g!+084;T(YNOxFWh3b5C@r4yzUS_ z+@(i)W6Fu4VTsab7}nUHW&BdS`Fz5;j>&Uv{f4<-a2-VO z>4tD$3QF84I_1~IQHwV`g}4ZgK(=6e&>Y%2jLiB3D8}GtwAP&Ouy%u~c>T|5tKVeT za&F)jI=OXR7Yu8W#m(R-?-D!rl=6`Dea-|r>wW?Ci$E9A`CcLe41zA3=l+Qp%&1( zoh_K^>nST$R7~Tw=i%A0Z<=4z46qsRa|xaak!|CdRG)u`QQx&|#1Q^uBI6W-Z`^G9 z?4KS30?f14cK3XCZY~k!XqpLm-`B+Vd0=fLz~L*qc^HYze6j4AhovJ^z*~sH$LE9} zWMp&OUAfZbr5U9QyeeMUEoNf0k>jvtRZ4@L@C-oKgB^_?G8l=tziTWRE<|Yiy!NW* zWYMo_b4NMzcfAyR^EV+T)dV~Y{?|&GoIJfv6r=(wqCYD;`_#ixi zT=voyIUBabK@Rzn78cFkmzTbpS2@GW4kXu+J-3+C6REjK!{T#t>`Go8ickPL%tm*e zT-Fd99oTKGS{q-lDS?=wi_y7S-Q4GUt#`L!c;hm`_~ zf2~dBhhYR!L-tZh)UoVQJzRLW4m_Q(lp&n#T<1-_0L%yv%t2mZu|5uHti24jWNw+K z&H8wP7v}z-_O3LlsVrODW!oqq*rgyo8DbR?P#_6`kT6+-pb-=c92i6lNe~nvkO*Ot zrkkNuR3ui*Bxs3Hr6M8}C{TccAcCM$Duc{m8U-0;P?Yyw$|pUn^?ttfR#G1}KF@YN zXHfu=!vWQo0-F@z@k?VN&K1pHH{)vHeAUeE`@3563Qo$K23wLfWlM*KB3>UI7hDWA zG>1b5hxzoe>aq`mezav^DiJv~DTK6=kV8L_)0KKrpg?S2u)s(&9?n}9V;D1Bq4%9D za9%jD8ZIzL_n+r#79?kI=r$w(gzXMY8H?=V|b+sfEgDJ8QB-!<5dPSuTOe4Y*EmeUcj z?e;%(=Hz6vM(>1nxPO>cE^@pFL0-sEYr`+i^V|job)cB3S7Wa4R+KNuZbNMz%=!tYD?|(iXS;?mAf17 zm1_l{xAC}-N%>x;jCx+FwF#2K(8jQ-D@Jw|CXq8!T~+nuK-lkuo$P0mU>q(AJmEi* z(7i8u3N%!Y!Et~ffe&4-t+X7r}~5Hb6{gR3{G9l9Sjv&m%aTnxAGa*>tBTBBEtD7Gn75%Q2(a z5fL;bO@IGh`0IN&0W_C`q5H_?%aENY5l}5;i(#0f1MikutKTHXGN}oR3p+{dvuD|^&oSXYu6w_G zt?QF>JD4(Qj@WVSo_+*=*WBS*St3dKIdHHAF16>-aQBv~tbziDyF(Dv&uqfZ={g61 z5af}(^z^P3ybco)xM5sLyY9 zy3ozk;7MoR>`=9fq}@f2pn*FvgHhGI4vzL?$7Ph z3N_~z+8>W!DOou58~woGC)91x2OlS$K`J%26y3Ez!C*-h2o_YMX~)8Z!y=L4Uhlev zFb^ZGH|C&NVjN1uLZ(#9LFcu1Tl5WAmH0&UoGVud;88N2+ICcY?e0e;i|=6B2B@nm zOQxR7!aGK#ou?r3^JFQv>@NwGR*qasIq2@H3%0t?lTFu$1u>`xue#s^np=Hl!f-Ew z!V|~5N*A++JrZhajv!`NTKwh@pbWr&*;{(H|7=o|V87Rzj;>>(UA>)(5mOZicDJq_ zn_l&_Oyb&%8vI?mlptZ4&)XXc&fjk)379+Xu9f4eSSTfXW>w}1J8K>$Kl5r}Pn3!= zhW;u+gDpze*Y~tiUjq0%;f6IeF5l8nAGxx?DWG$VA%!7Hi7G!)7m2l%Ur*-x zsvE7iq~SU5h6;LE_D82OMu*oxgs$Zrt;-+u|;btnI2H zLv3xXg{8Si2MNxBUD85IeC8>X@3@D*ecEmNw(2*B;&wKZ)1XqYHy-ZHYs9QSUcD+; zj9Bm&WR$)!CA@0zJEsDXiAM4kazAKPFA&@)@5{LQRrN)tpz|BMqN>E8iEO(EX<5Q- zP$MK?HQ@qRYiJ;sp=fTW&_6T;%zkN*W~%mHw^CKHL)45l*dXj7!7oS`)lN+y$ihA7 zYBf6a4C01$7e0sxzkD2Rf8{1eun6r(n~(=hU59O>xudGWuf6UUi#k_@u%j=-ng+p1 zg-+Adn5e_QeMAW>I?B*jI)^F8i^ z0|RxJ2#%HIQH2efN-i`a+?>3}OCF*#7H zyH=(h)UivCu^PtR8-`UaRHa4!WR|d}KWgkIzm{ke4#j- zW^!a*fpY9u`?%iT{X|&ezh0tIQHYzpe$REpQ2Ut~@EH3thSx~@qE;ie=C&_)W(_BP zsrWE$Lxe>rRdODCyYq|}Wxs-1oWQ}^T+O94aL`5fcqx7uN%kZo3)G}EuU~8NVXt%s zAfM?_$?_mMp+(*7Be98$dS)MzK)@bKQM(CfkiTiWNL^?rgscGV9<= z9h0)8+#cknm%fj^b6RM6eqn=G#2*6I=3^oel&G@zZ9|zpTj%+r3le3b;V)c3%k>Y_ zF5l^NboX4MHLObh1tZ#J=Mxy&v62B4#d-HTDClBI!eK-C6sHy`*22TB6R1|H6hO5B zH6Xzz8(okj2QrD~i%MP$L#6++yYiLRw@-Q69yMQ&LRtrvQ`Bk>--I}#$cue`He z>LT$ZXb^>{II&ao418spw1yI(TL6Qv?B)(^4?dL2Sd$ddb5${m-mfaAy|2#t`bCc5 zQda2o-kRj*Yo{7)N8HYfeT5d@Gcd2K_7oDeNz@p%XV;v^&?KzVbhSmVYtFvjCG%T_ zZXhlh{3IHq8D&X1(U=6Fj9}u42845dMM`~S^{WTX;oHH^B0?furJY&2s(8R5H1s`y zRLn7uj=|*v$c2)cKUQ4sB6?KbyWxK$c=T`t~^1LVd5MG%TveNa=FI0TZcG{I0b{K??ucs$!rY9<~EevySJppIx z24>RjyvA)Q^BzUrF;JL+{OP$C@OUA4pbF6I9m?e_y5`XX>+Ek7WZY&O1G@`uMEB2?8eq6$ z%S1P^qyS=S4YU?g*cDLeMZ4)(&K8NlTYfSo6N}zMmmwmJYbw9fcc8I`KcRm-gSfWm z&yD{A1WeRxG+qKmbDI<)kP(A{^7}Ffhr`nt`IV!c5DtWG&vsdj(evn~Is53M)yXmw zWI^kSOjdW<7#kW^x-Li5q-GwHpXlmdUV9#r8!Qbyu|f&vx7iN1OhO(nCv;Ki7oRtz z#PtA_+1vU%F)tRmFfk3{f-(4s2>FykabVFxq4N0Uv18pg`l8OG>J-)S9RD zEzrG&9TqHB9nY*i*PI@Mn0X<3RhB(^U;v1OO!GPVH|kM?DC|MhOi=pe9~dA4*$}gx z8*>}e2KUA@4R^Z(5U&}!bDYPrteL>}2QCdrfF?EHd1i1f4cPgVOgxI!ba#R1V9W?G zK1Z9Ia&vU{yW%Pa9K4E$kf>?r@Zc#*I)f62{oh>nJ9Mj!?lnWMjilU9wRdluk(Q%b z1T>Vfc%X~5`b1Lg-)RZUtv{e(rlw^9pR3ON<%-f4h|o73#)$wk)gI00`Vlx2mQ9r- zgaD7CZN{ntxPi8TTO2OI2I)OY%7+1ikCmYa(zj254XW-z^xVe?6P`R*(FF_$Z|!1emvZj_=zwCTX8*2R;cU5@HGoxYhcvF6 z$E1T^4WY`^$1SkL#vNf2-o=Uqgb(1(GnV&JX?L;;#S}u(g#2ovPGey&CzN1TXwHK2 zU7;$c2K0HWZ?}v_SiHQoShYQTvQ1R;8YSNLlix?7fhIJJ{J`Gwe@9d&U{_j{I@W(R zMXD-px(RQfslm8i{PhPLyMVu z+AL_#6MdEY7XZyVmvP)vD#B#s})7>z@XE-_v0na zt>^XJVXccbi_-nY0r#<2AX4kD!b)+Xn18Lm+D7L^V_b4Wmk?{L^!G;-Er&|RwqN^w zDT36DcR{!E2|D5Jd;(we|Fcr*_2B!Fa2|;Q0{EfqD%1Mefug=#UighDkIyKPu`jzEFEH(4zs$!>Tu+P37ZJh~BRO0N8jn?jQJJ$OTEWiZ~_D~2q z_7G`I?B>;Wep8b$^3Abe^l`CvVd??!Z@HTqJ(fgsn*nc!;##1)gdM{rz;~Uo>u>~6 z)^()lR!|MkU>ez#>91b&hrH~HL&|iOspjPy6-Gb_h`O4?wS7pkv2*{1oNgS+%c~b~ zc`>ll`ag}MNuozmUq+fBQs9TokV8lj5)H)_$50nUG!27w8PUZJM%3SLg&ar`BJ;3s zpHdUp7bf9=)i=@O8nB?p`U>f{6?Ue8QtEFuEpM#TL>=zE;P+oVTX4C#K}at|;mAcl~MLJ;(xZ2On2tl&*4t;lwKkKg5cve1 zQ(?5E-ndx*kUdj}9NwWwU>bQ&qc-ke9#x2~8&BG6r8TCWmff>e(HI)KXgLapS|_h> zRf1O#H0aKnYDGAbLivfiO+Sy~0=h)a9MRlfL}*2Jq5{NST5Fo%5J0<-gH&$0vtH$c6koFK#rd;Ct%5EY1=TIjwHkf`3m++Pu#p-Eg$6fr z&%m*KdG(69Uh~^>a00l0ghuE)RK%rjj;`-04x$uy1~(;!yAcIpK##Cz$+?e$Y=vkb zaRK0^uD})B9jj#ryQ=urze+co$ZPmk`mA*yV*Z}JUJLQ#PBTihqtP0xrL*2j> zy?lC)=5!bV8luP$1o{&imv!F47xSDQIUS+d!@}wMR;#96-qNKXrw=Q8N^j+i#g3jaZaYyM*X^Xxw(@NYW;<+B~?s`13-Eq*s!q!uar zZ+oTxXBQT>=mE)QQkL(_6N&=(oWsO3KaYd5bP|iO==p z@hNtE-vc5qk`dFw;?u{(sq1^!?W7hM-rPZ5V9B+W6H>os?b*12Zrrxx4%vN8{QCH- z@wGZpa_ck_zToxWO}xJ58}9{*OB8Kggc_W$;5zaz@XA-3>t%OOl7U7GPS5wEggy#?x)BvK${pIzEEiI ztIzd2{OPc_pYQ+vVSI>pgv$@m_9lk&I%)2#Nk17-sZ>1!D$RgI+evrYNwVB+xlxDW zcw}x&waL~DGK)pF+(@=&l9_a}mEUGcn!@!fqGvx3& xd=C!Z&tzD*Q5^jIL?mJbI8YqDL--_YD6&EkdbrJv5U!3zrOJ}Y*7i2C{|zRGrZ)fp literal 0 HcmV?d00001 diff --git a/系统开发技术方案.md b/系统开发技术方案.md new file mode 100644 index 0000000..beefe9b --- /dev/null +++ b/系统开发技术方案.md @@ -0,0 +1,416 @@ +# 智能电动汽车数字孪生系统开发技术方案(V1) +智能电动车数字孪生系统软件通过集成高精度数据采集、实时同步控制、三维虚拟仿真、智能算法验证与系统运维管理等功能,构建了一个覆盖教学、科研与产业应用的智能电动汽车虚实融合实验平台。它不仅能实现真实驾驶环境的沉浸式再现与数据级同步,还能为科研人员提供精准可追溯的数据支持、灵活的算法验证接口和可扩展的数据分析工具,充分满足智能电动汽车领域对实验真实性、可靠性与创新性的高标准要求,推动智能驾驶与数字孪生技术的深度融合与发展。 +本文基于《智能电动车数字孪生系统功能规划(2026)》的目标,给出一套可落地的软件开发技术方案。Unity 三维驾驶仿真作为独立工程(独立代码库与发布包),通过标准接口与本系统对接。 + + +## 1. 建设目标与原则 + +### 1.1 建设目标 +- 实现多源设备数据采集、统一管理与实时可视化展示 +- 构建“实体车—数字孪生体”数据交互:状态同步、数据采集、事件回放 +- 支撑多场景驾驶仿真联动(Unity 独立运行),实现同屏/多屏展示与协同操作 +- 实现实验管理与记录:仿真记录创建、过程记录、视频录制、数据持久化、历史回放 +- 本地化部署与数据安全:本地存储、最小暴露接口、路径越界防护 + +### 1.2 设计原则 +- 分层解耦:设备接入、业务编排、数据服务、可视化展示相互独立 +- 实时优先:以事件/流式数据驱动为核心(WebSocket + HTTP) +- 可扩展:设备类型、消息类型、算法模块、Unity 场景可插拔扩展 +- 可运维:统一配置、日志、诊断接口、打包发布与自动启动链路 + +## 2. 总体架构 + +### 2.1 架构分解 +系统由三类可独立发布、独立升级的可执行程序组成: + +1) **后端数据与控制服务(Python EXE)** +- 负责设备采集、数据处理、仿真记录管理、持久化、文件存储、对外 API +- 对前端提供 HTTP REST + WebSocket(实时推送) +- 对 Unity 提供联动接口(可选双向:状态推送/指令下发) + +2) **桌面端可视化应用(Electron + Vue EXE)** +- 负责 UI 展示、实验流程操作、多屏组织、外部程序(后端/Unity)启动与守护 +- 作为“应用入口”,统一呈现与统一运维 + +3) **车辆驾驶仿真(Unity EXE,外部项目)** +- 负责 3D 场景、动力学/视觉化仿真、互动控制 +- 与后端通过约定协议交换数据(HTTP/WebSocket/本地端口均可) + +### 2.2 数据流与控制流 +- **采集流**:设备/传感器 → 设备接入层 → 统一事件总线 → 处理/校准 → 入库/落盘 → WebSocket 推送 +- **控制流**:前端操作 → REST 指令 → 业务编排 → 下发到设备/控制柜,或同步给 Unity +- **回放流**:历史仿真记录 → 查询元数据(数据库)→ 拉取文件(静态映射)→ 前端播放/曲线回放,或驱动 Unity 回放 + +### 2.3 系统两大部分划分 +系统整体可分为两大部分(对应团队分工与发布包边界): + +1) **数据采集与处理(后端)** +- 采集:方向盘/踏板/档位/手刹/车速轮速/灯光/电参/温度等 +- 处理:滤波、校准、融合、异常检测、指标计算 +- 管理:仿真记录、文件、数据库、权限(可选) +- 服务:REST + WebSocket + 静态文件映射 + +2) **界面显示与交互(Electron + Vue)** +- 显示大屏:系统介绍、仿真监控、数据看板 +- 车载屏(驾驶员):驾驶视角信息与仪表盘 +- 控制屏:场景配置、系统配置、用户/权限、数据查询、数据分析 + +### 2.4 推荐工程目录结构(本仓库) +建议把“后端服务”和“前端桌面端”放在同一仓库便于协同开发;Unity 工程保持外部独立仓库,仅提交接口文档与发布包获取方式。 + +``` +SmartEDT/ + backend/ # Python:采集/处理/管理/API + device/ # 传感器设备接入与驱动(方向盘/踏板/灯光/电参等) + database/ # 数据存储(PostgreSQL/TimescaleDB)与数据访问层 + config/ # 配置(ini/环境变量)与配置加载 + main.py # 后端入口(启动 API/WS、初始化各模块) + utils.py # 通用工具(时间/路径/校验/日志等) + frontend/ # Electron + Vue:桌面端与多屏展示 + src/ # Vue 渲染进程(页面/组件/路由) + main/ # Electron 主进程(多窗口、多屏、拉起后端/Unity) + (配置文件) # package.json / vite.config.* / electron-builder 配置等 + docs/ # 方案、接口协议、运维文档 + data/ # 默认数据目录(开发态可用) + release/ # 可选:打包产物临时输出目录(不提交版本库) +``` + +## 3. 技术选型与理由 + +### 3.1 后端(Python) +- **语言**:Python 3.13.1(配合硬件 SDK、算法生态与快速迭代) +- **Web 框架**:FastAPI(异步友好、类型约束清晰、OpenAPI 自动生成) +- **实时通讯**:WebSocket(FastAPI 原生或 Starlette WebSocket),用于状态/传感数据/事件推送 +- **进程内并发**:asyncio + 线程池/进程池(适配阻塞型硬件 SDK) +- **持久化**:PostgreSQL18 + TimescaleDB(用于实时采集数据的时序存储)+ SQLAlchemy(ORM/迁移支持) +- **文件存储**:本地文件系统(与数据库元数据关联) +- **打包**:PyInstaller 打包为独立 EXE;开发环境使用 venv 隔离依赖 + + +### 3.2 前端(Electron + Vue) +- **UI 框架**:Vue 3 + Vite(开发体验与生态成熟) +- **桌面封装**:Electron(多窗口、多屏支持、可管理外部进程) +- **本地通信**:HTTP + WebSocket 访问后端;可选 IPC(主进程与渲染进程) +- **打包**:electron-builder 产出 Windows EXE 安装包/绿色包 + +### 3.3 Unity(外部) +- **三维仿真**:Unity(高效构建交互式驾驶场景与渲染) +- **对接方式**:建议 WebSocket(低延迟实时同步)+ HTTP(配置、仿真记录、资源拉取) +- **进程管理**:由 Electron 主进程统一拉起与关闭(可在指定显示器全屏) + +## 4. 后端模块设计(Python) + +### 4.1 模块划分 +- **配置中心(Config)** + - 统一读取 `config.ini`(就近优先原则:后端目录优先,其次项目根目录) + - 管理文件根目录、数据库路径、端口、日志等级等 +- **设备接入层(Adapters/Drivers)** + - 每类设备一个管理器:相机、IMU、压力/力传感、控制柜等 + - 统一生命周期:init/connect/start/stop/disconnect + - 统一数据模型:采集原始数据 + 时间戳 + 设备元信息 +- **设备协调器(Coordinator)** + - 负责多设备协同启动/停止、状态聚合、异常重连策略 + - 对上提供“仿真记录级操作”,对下调度各设备管理器 +- **数据处理层(Pipeline)** + - 校准/滤波/坐标变换/融合(按需求插拔) + - 统一输出“标准事件”,写入事件总线与持久化队列 +- **仿真实验管理(Simulation Experiment)** + - 流程:场景配置 → 仿真启动 → 仿真执行 → 仿真结束 +- **数据存储(Storage)** + - 元数据:PostgreSQL(仿真记录、设备、事件索引、文件索引) + - 实时采集数据:TimescaleDB Hypertable(高频写入、按时间范围查询与聚合) + - 典型能力:按时间分区、压缩、保留策略、连续聚合(按需要启用) + - 大文件:视频、原始采样、导出报告等存本地文件系统 +- **录制与归档(Recording/Archiving)** + - 仿真过程视频录制:显示大屏/车载屏/Unity 画面按需求录制(目标帧率 30fps) + - 录制任务与仿真记录绑定:开始/停止随仿真流程联动,支持异常中止与补偿关闭 + - 文件索引入库:形成可回放、可导出的统一入口 +- **对外服务(API)** + - REST:健康检查、设备管理、仿真记录控制、数据查询、导出 + - WebSocket:实时推送(状态、传感数据、告警、进度) +- **静态文件映射(File Gateway)** + - 按配置的根目录对外只读映射 + - 路径规范化、拒绝越界(拦截 `..`、绝对路径、UNC 路径) + +### 4.2 采集数据范围与精度(本期基线) +本系统“采集与处理”侧的基线采集字段如下(用于实时显示、联动仿真与历史回放);后续可按车型/传感器扩展。 + +- **转向与踏板** + - 方向盘转角:左/右(单位建议:deg) + - 刹车踏板行程:mm + - 电门踏板行程:mm +- **车辆状态** + - 挡位:P / N / D / S + - 手刹状态(手状态):0 / 1 + - 车速:单位建议 km/h + - 车轮转速:单位建议 rpm(按轮位可扩展为 FL/FR/RL/RR) +- **灯光状态** + - 左转向灯 / 右转向灯 + - 双闪 + - 刹车灯 +- **电池与电参** + - 电池剩余电量:% + - 电压:测量误差 0.1V + - 电流:测量误差 0.1A + - 温度:测量误差 0.5℃ + +采集来源建议按两类接入: +- **传感器/控制柜直采**:方向盘、踏板、档位、手刹、车速/轮速、电参等(串口/CAN/以太网,取决于硬件) +- **视觉识别采集(可选)**:当部分状态仅存在于仪表或屏幕显示时,用相机 + 识别推断(需标注数据与容错策略) + + +### 4.3 API 设计建议(摘要) +- `GET /health`:健康检查(版本、时间、依赖状态) +- `GET /api/devices`:设备列表与状态 +- `POST /api/simulation/start`:创建并启动一次三维仿真记录(返回 simulation_id) +- `POST /api/simulation/{simulation_id}/stop`:结束一次三维仿真并落盘 +- `GET /api/simulation/{simulation_id}`:三维仿真记录元数据 +- `GET /api/simulation/{simulation_id}/events`:事件/曲线数据查询(分页/时间窗) +- `GET /files/`:静态文件访问映射(对标 README 的安全校验策略) +- `WS /ws`:统一实时通道(按 topic/room 订阅) + +### 4.4 实时消息模型(建议) +采用统一 JSON Envelope,便于前端与 Unity 复用: + +```json +{ + "type": "vehicle.signal", + "ts": 1737000000.123, + "simulation_id": "SIM202601160001", + "device_id": "controlbox_01", + "seq": 1024, + "payload": { + "steering_wheel_angle_deg": 12.3, + "brake_pedal_travel_mm": 5.2, + "throttle_pedal_travel_mm": 18.0, + "gear": "D", + "handbrake": 0, + "vehicle_speed_kmh": 36.5, + "wheel_speed_rpm": { "FL": 320, "FR": 319, "RL": 318, "RR": 318 }, + "lights": { "left_turn": 0, "right_turn": 1, "hazard": 0, "brake": 0 }, + "soc_percent": 78.2, + "voltage_v": 356.4, + "current_a": 12.7, + "temperature_c": 28.5 + } +} +``` + +建议补充字段: +- `source`:device/backend/unity +- `quality`:丢包/校准状态/信噪比等 +- `schema_version`:前后端与 Unity 协同升级 + +### 4.5 目录与文件存储规范(建议) +与 README 的建议一致,采用“根目录 + 仿真记录分层”的稳定结构: + +``` +/ + / + / + meta.json + video/ + signals/ + exports/ +``` + +文件根目录通过 `[FILEPATH].path` 配置;当配置为相对路径时,开发环境相对后端工作目录,打包环境相对后端 EXE 同级目录(对标 README 的路径策略)。 + +存储类型建议(与规划大纲一致): +- 传感器原始数据:生成数据文件(如 `signals/raw_*.dat`),按时间段或按设备分文件落盘 +- 传感器/识别后的结构化数据:实时写入 PostgreSQL/TimescaleDB(用于查询、统计、回放曲线) +- 仿真记录视频:按窗口/视角分别落入 `video/`,并在数据库中建立索引与标签(视角、分辨率、帧率等) + +### 4.6 TimescaleDB 时序数据建模建议 +为支持“高频写入 + 按时间范围回放/聚合”,建议将采集数据按时序表落库,并在 TimescaleDB 中转换为 Hypertable。 + +推荐思路: +- 一张时序主表:按 `ts` 做 Hypertable 分区 +- 以 `simulation_id` 作为业务主维度,支持一次三维仿真记录的时间窗查询与回放 + +字段建议(可按性能需要做列化/半结构化折中): +- `ts`:时间戳(TimescaleDB 分区键) +- `simulation_id`:三维仿真记录 ID(用于回放与归档) +- `device_id`:数据来源设备 +- `signals`:结构化信号(可选 JSONB,或将高频字段拆为列以提升聚合效率) + +典型策略(按需启用): +- 保留策略:只保留近 N 天原始点,长期保留用压缩或降采样结果 +- 连续聚合:生成 1s/100ms 粒度的统计序列用于大屏曲线与回放加速 + +## 5. 前端模块设计(Electron + Vue) + +### 5.1 界面体系(显示大屏 / 车载屏 / 控制屏) +界面显示功能分为三类屏幕(与规划大纲一致),由 Electron 统一创建窗口并在指定显示器呈现,Vue 负责页面实现。 + +1) **显示大屏(面向展示/观摩)** +- **系统介绍** + - 系统功能介绍:图文并茂;可扩展语音播报与 AI 问答导览 + - 车辆三维展示:外观/内饰动态展示;关键部件结构展示(转向机构、驱动机构等) + - 系统原理展示:动力/转向/制动/灯光等子系统工作原理可视化 +- **数据看板** + - 数据主屏:中间为车辆三维动态模型;周边展示车辆概况、车辆参数(示例:秦 Plus)、历次仿真记录、设备监控(CPU/内存)、模拟报警信息 + - 仿真回放屏:对单次仿真结果回放;三维仿真回放 + 采集数据动态图表回放;进度显示(总时长/当前进度) +- **仿真监控** + - 视角切换:主视角 / 驾驶员视角 + - 主视角:路线图(动态)+ 车辆尾随视角 + - 驾驶员视角:三维场景动态 + 仪表盘(车速、转速、档位、手刹、车灯、电量等) + - 仿真视频录制:动态录制仿真视频过程屏幕(目标 30fps),并与仿真记录绑定 + +2) **车载屏(驾驶员视角)** +- 仿真界面:三维仿真场景;天气与时段显示;车速显示;仿真状态标识(等待/仿真中/结束) +- 数据记录:后台记录仿真过程记录,并动态录制车载屏仿真屏幕(目标 30fps) + +3) **控制屏(操作与管理)** +- 场景配置 + - 仿真场景:城市道路/高速公路/山区道路/乡村道路/校园道路 + - 气象:晴/雨/雪/雾等;时段:黎明/正午/黄昏/夜间 + - 车辆颜色:红/白/黑;最高限速:100–180 km/h + - 仿真时长:5–60 分钟;驾驶员选择:人员/账号绑定 + - 车辆传感器校正:自检/校正 + - 场景推送:下发到车载屏与显示大屏 +- 仿真控制:开始仿真 / 结束仿真 +- 系统配置:功能介绍(文字)、端口与路径等基础配置入口 +- 用户配置:角色与权限配置;用户与角色选择 +- 数据查询:系统日志查询;仿真记录查询 +- 数据分析:车辆数据分析、故障模拟诊断、CAN 总线数据模拟解析 + +### 5.2 与后端的通信 +- REST:用于仿真记录控制、配置读写、历史查询、导出触发 +- WebSocket:订阅实时 topic(设备状态、采样数据、告警、录制进度) +- 静态文件:通过后端安全映射路径访问视频与大文件(支持 Range) + +### 5.3 前端路由与窗口映射(建议) +为便于多屏稳定运行,建议把“窗口类型”与“路由入口”固化: +- 显示大屏 + - `/big/system-intro` + - `/big/dashboard` + - `/big/sim-monitor` +- 车载屏 + - `/car/sim` +- 控制屏 + - `/control/config` + - `/control/operate` + - `/control/query` + - `/control/analysis` + - `/control/admin` + +### 5.4 外部进程启动与守护(Electron 主进程) +主进程负责统一拉起与管理: +- 后端 EXE:启动时分配端口(固定端口或自动探测),轮询 `/health` 确认就绪 +- Unity EXE:按用户选择显示器启动(命令行传参:端口、simulation_id、模式等) +- 异常策略:崩溃检测、重启次数限制、日志采集、用户提示 + +推荐机制: +- 端口管理:优先读配置,冲突时自动寻找可用端口并回写运行态配置 +- 生命周期:Electron 退出时优雅关闭后端与 Unity(超时后强制) + +## 6. Unity 联动方案(外部项目对接约定) + +### 6.1 对接目标 +- 实时同步实体车/传感器状态到 Unity(姿态、速度、踏板、方向、报警等) +- Unity 交互事件回传(场景切换、碰撞事件、驾驶行为、训练步骤等) +- 支持“实时模式”和“回放模式” + +### 6.2 建议协议 +建议使用同一套消息 Envelope: +- **WebSocket(实时)**:订阅 `vehicle.signal`、`control.command` 等;Unity 回传 `unity.event.*` +- **HTTP(控制/查询)**:加载仿真记录、读取配置、拉取资源、触发导出 + +### 6.3 同步与时钟策略 +- 后端为权威时间源(服务端时间戳),Unity 按 `ts` 对齐插值 +- 允许 Unity 维护环形缓冲(例如 100–300ms)平衡抖动与延迟 + +## 7. 配置与环境管理 + +### 7.1 venv 管理与依赖 +- 开发环境:`python -m venv venv`,使用 `requirements.txt` 固定依赖版本 +- 构建环境:单独 `requirements_build.txt`(包含 PyInstaller 等打包依赖) + +### 7.2 配置文件(INI) +建议统一使用以下段落(可按需扩展): + +```ini +[SERVER] +host = 0.0.0.0 +port = 5000 + +[FILEPATH] +path = data + +[DATABASE] +url = postgresql+psycopg://smartedt:CHANGE_ME@127.0.0.1:5432/smartedt +timescaledb = True +``` + +## 8. 打包发布与部署 + +### 8.1 后端打包(PyInstaller) +产物目标: +- `Backend.exe`(单文件或目录模式) +- `config.ini`(可外置,便于现场修改) +- `data/`(默认数据目录,可按配置指向其他盘符) + +建议输出: +- 内置 OpenAPI 文档(仅本机或受限网络可访问) +- 日志写入到 `logs/`(按日期切分) + +### 8.2 前端打包(Electron) +产物目标: +- `SmartEDT.exe`(安装包/绿色包) +- `resources/backend/Backend.exe`(随包携带或首次运行下载) +- 统一版本号与升级策略(可选增量更新) + +### 8.3 一键启动链路 +1. 启动 `SmartEDT.exe` +2. Electron 主进程读取配置并拉起 `Backend.exe` +3. 后端健康检查通过后,渲染进程连接 REST/WS +4. 用户选择“仿真模式”时,拉起 Unity EXE 并注入运行参数 + +## 9. 多屏显示方案 + +### 9.1 目标 +- 控制屏在主屏(操作与管理入口) +- 显示大屏在副屏/大屏(系统介绍 / 数据看板 / 仿真监控) +- 车载屏在驾驶员屏(或指定小屏) +- Unity 全屏运行在指定显示器(可与显示大屏分离) + +### 9.2 Electron 实现要点 +- 启动时枚举显示器,建立“显示器—窗口类型”映射 +- 针对不同显示器创建多个 BrowserWindow(固定 URL/路由) +- 提供“显示器管理”设置页:拖拽绑定、保存配置、开机恢复 +- Unity 启动参数附带目标显示器索引(或由 Unity 自行选择) + +建议的窗口类型: +- BigScreenWindow:显示大屏(可切换 system-intro/dashboard/sim-monitor) +- CarScreenWindow:车载屏(驾驶员视角) +- ControlWindow:控制屏(配置、控制、查询、分析、管理) + +## 10. 安全、可靠性与合规 + +### 10.1 本地数据安全 +- 默认仅本机访问(可通过配置开放局域网) +- 静态文件映射做路径规范化与越界拦截(对标 README 的安全策略) +- 敏感字段脱敏显示(subject_id 映射/匿名化) + +### 10.2 稳定性策略 +- 设备断连:自动重连、指数退避、状态广播 +- 写盘保护:异步队列 + 批量提交;异常时保证仿真记录可关闭并可恢复 +- 资源管理:视频录制与采样队列限速,避免磁盘/CPU 被打满 + +## 11. 日志、诊断与监控 +- 分级日志:设备/仿真记录/API/存储 +- 诊断接口:`/health` 返回依赖与核心子系统状态(设备数量、队列长度等) +- 现场排障:一键导出日志与仿真记录元数据(不含隐私或做脱敏) + +## 12. 测试与质量保证 +- 单元测试:消息模型、路径安全、数据库 CRUD、仿真流程状态机 +- 集成测试:模拟设备数据源(Mock Adapter),验证 WS 推送与落盘 +- 性能测试:高频 IMU、视频录制并发、长时仿真稳定性(内存/磁盘增长) + +## 13. 交付物清单(建议) +- 后端:可执行程序、配置模板、API 文档、设备接入开发规范 +- 前端:桌面 EXE、显示器管理、实验流程 UI、日志导出 +- 对接:Unity 通讯协议文档(topic/消息体/端口/参数)、联调用例 +- 运维:安装说明、目录与数据管理说明、故障排查手册 + diff --git a/系统框架结构评估.md b/系统框架结构评估.md new file mode 100644 index 0000000..5a36f31 --- /dev/null +++ b/系统框架结构评估.md @@ -0,0 +1,66 @@ +# 系统框架结构评估与优化建议 + +本文档基于 `d:\Trae_space\SmartEDT\README.md` 与实际代码结构,对已生成的 SmartEDT 系统框架(后端 Python 3.13.1 + FastAPI + TimescaleDB,前端 Electron + Vue)进行评估与分析,并提出优化改进点。 + +## 1. 总体评估 + +**结论**:系统框架整体架构合理,层次清晰,符合《系统开发技术方案.md》的要求,能够支撑后续功能开发。 + +**亮点**: +- **架构分层清晰**:后端按 `api`(接口)、`services`(业务逻辑)、`database`(存储)、`device`(硬件抽象)分层,职责单一。 +- **技术选型落地准确**:Python 3.13.1 + FastAPI + WebSocket + PostgreSQL/TimescaleDB 组合落地,前端 Electron + Vue 多窗口方案已具雏形。 +- **工程化细节完备**:包含 `config.ini` 配置加载、Mock 设备实现、Docker 友好的环境变量覆盖、静态文件安全映射、以及自动化的数据库 Schema 初始化。 +- **扩展性良好**:`SimulationManager` 封装了仿真生命周期,`MockVehicleDevice` 提供了设备接入的模板,便于后续替换为真实硬件驱动。 + +## 2. 不足与改进建议 + +尽管骨架已跑通,但在高频采集、健壮性与可维护性方面仍有优化空间: + +### 2.1 后端(Backend) + +1. **数据库连接池与异步写入优化** + - **现状**:`SimulationManager._run_loop` 中每次采集都调用 `_persist_signal`,内部使用 `async with self._session_factory()` 创建新 Session 并提交。 + - **问题**:高频采集(如 50ms/20Hz)下,频繁创建/销毁 Session 会带来性能开销;且单条 Insert 效率较低。 + - **改进**: + - 引入 **批量写入队列**(Batch Buffer),每 N 条或每 M 秒批量 `COPY` 或 `INSERT` 到 TimescaleDB。 + - 确保 `engine` 配置了合理的连接池大小(`pool_size`, `max_overflow`)。 + +2. **异常处理与优雅退出** + - **现状**:`main.py` 的 `shutdown` 钩子中只处理了 `simulation_manager.stop`。 + - **问题**:如果 WebSocket 广播队列积压或数据库连接卡死,服务可能无法优雅退出。 + - **改进**: + - 增加全局异常捕获(Global Exception Handler)。 + - 在 `Broadcaster` 中增加队列满或断连的防御性逻辑。 + +3. **配置热加载与验证** + - **现状**:`settings.py` 仅在启动时加载一次。 + - **问题**:运行时无法动态调整日志级别或采集频率。 + - **改进**:虽然不需要完全热加载,但建议增加配置项的 Pydantic 校验(当前已用 `pydantic-settings`,符合预期,但可增强校验规则)。 + +4. **设备抽象层增强** + - **现状**:`MockVehicleDevice` 直接返回字典。 + - **改进**:引入 Pydantic 模型或 TypedDict 定义设备数据协议,确保 `payload` 结构在代码层面有强类型约束。 + +### 2.2 前端(Frontend) + +1. **状态管理缺失** + - **现状**:各 `.vue` 页面独立通过 `useWebSocket` 订阅数据。 + - **问题**:多窗口间(如控制屏与大屏)可能需要共享某些全局状态(如当前仿真 ID、连接状态),各自维护连接可能造成资源浪费或状态不一致。 + - **改进**:引入 Pinia 进行全局状态管理(如 `useSimulationStore`),统一管理 WS 连接与消息分发。 + +2. **Electron 进程通信 (IPC) 封装** + - **现状**:`main.cjs` 启动了后端,但未建立健壮的 IPC 通道来透传后端日志或状态给渲染进程。 + - **改进**:增加 `preload.js`,通过 `contextBridge` 暴露后端进程状态(PID、启动日志)给控制屏前端,便于运维排查。 + +3. **多屏窗口管理增强** + - **现状**:`createWindows` 硬编码了 `others[0]`、`others[1]`。 + - **改进**:增加配置文件(`window-layout.json`)记录屏幕 ID 与窗口路由的绑定关系,实现“开机自动恢复上次布局”。 + +## 3. 优化计划 + +基于以上分析,将对代码进行以下针对性优化: + +1. **后端**:优化 `SimulationManager` 的入库逻辑,改为 `Buffer` 批量写入模式。 +2. **后端**:增强 `device` 数据模型的类型定义。 +3. **前端**:引入 Pinia 并重构 WS 逻辑为 Store 模式。 +4. **工程**:补充 `docker-compose.yml` 以便快速拉起 PostgreSQL + TimescaleDB 环境。