feat: 更新后端平台模块、前端组件及构建产物,新增工作计划文档

- 更新 backend 平台 API endpoints 及 platform_store
- 更新前端 ComputeNodesView、DataProcessCreateView、FineTuneCreateView 等组件
- 更新前端 API 模块(compute、fineTune)
- 重构 frontend/dist 构建产物(新 hash)
- 新增 docs/2026-07-24-work-plan.md 工作计划文档

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
wuyongtao
2026-07-24 10:27:52 +08:00
parent b28cfbc6fa
commit 2b10c013ce
151 changed files with 925 additions and 181 deletions

View File

@@ -5,7 +5,7 @@ import json
from pathlib import Path from pathlib import Path
from typing import Any from typing import Any
from fastapi import APIRouter, Body, File, HTTPException, Query, UploadFile from fastapi import APIRouter, BackgroundTasks, Body, File, HTTPException, Query, UploadFile
from fastapi.responses import PlainTextResponse from fastapi.responses import PlainTextResponse
from app.core.config import get_settings from app.core.config import get_settings
@@ -41,6 +41,63 @@ def _node_for_compute_job_record(job_id: str) -> dict[str, Any] | None:
return next((node for node in store.compute_nodes() if node["id"] == record.get("node_id")), None) return next((node for node in store.compute_nodes() if node["id"] == record.get("node_id")), None)
def _training_diagnostics(errors: list[str], warnings: list[str] | None = None, log_text: str = "") -> list[dict[str, str]]:
source_items = [*errors, *(warnings or [])]
if log_text:
source_items.append(log_text)
text = "\n".join(source_items).lower()
diagnostics: list[dict[str, str]] = []
rules = [
(
["dataset columns missing", "keyerror", "history", "instruction", "input", "output", "messages"],
"训练数据字段不匹配",
"请检查所选数据集格式是否与训练模板一致。Alpaca 格式通常需要 instruction/input/outputShareGPT 格式通常需要 messages。",
),
(
["dataset file not found", "dataset_dir", "no uploaded file"],
"训练数据文件不可用",
"请确认数据集已上传文件,并且应用服务可以将数据同步到目标算力节点的数据目录。",
),
(
["model_name_or_path path not available", "base_model", "model path", "no such file"],
"基座模型路径不可用",
"请在模型管理中检查本地模型路径,确保该路径在算力服务器或 Compute 容器挂载目录内真实存在。",
),
(
["cuda out of memory", "outofmemoryerror", "显存", "memory"],
"GPU 显存不足",
"请降低 batch_size、cutoff_len、LoRA rank启用 4bit 量化,或选择更高显存的算力节点。",
),
(
["training command not found", "llamafactory-cli"],
"训练框架命令不可用",
"请检查 Compute 镜像是否包含 LLaMA-Factory或确认 llamafactory-cli 已在容器 PATH 中。",
),
(
["llama_factory_home not found"],
"LLaMA-Factory 目录不可用",
"请检查 Compute 服务的 LLAMA_FACTORY_HOME 配置和宿主机挂载路径。",
),
(
["no available compute node", "not schedulable", "disabled", "capacity full"],
"暂无可调度算力节点",
"请检查算力节点是否启用、状态是否在线、并行任务数是否已满,或手动调整节点权重/标签。",
),
]
for keywords, title, suggestion in rules:
if any(keyword in text for keyword in keywords):
diagnostics.append({"level": "error", "title": title, "suggestion": suggestion})
if not diagnostics and (errors or log_text):
diagnostics.append(
{
"level": "error",
"title": "训练任务异常",
"suggestion": "请查看预检错误和训练日志原文优先确认模型路径、数据集格式、GPU 显存和 LLaMA-Factory 参数。",
}
)
return diagnostics
async def _submit_fine_tune_task(store: Any, payload: dict[str, Any]) -> dict[str, Any]: async def _submit_fine_tune_task(store: Any, payload: dict[str, Any]) -> dict[str, Any]:
task_id = str(payload.get("task_id") or payload.get("id") or "") task_id = str(payload.get("task_id") or payload.get("id") or "")
if task_id and get_settings().compute_mode != "simulator": if task_id and get_settings().compute_mode != "simulator":
@@ -68,6 +125,25 @@ async def _fine_tune_preflight(
sync_resources: bool = False, sync_resources: bool = False,
) -> dict[str, Any]: ) -> dict[str, Any]:
node, job_payload = store.prepare_compute_job_payload(task_id, payload or {}) node, job_payload = store.prepare_compute_job_payload(task_id, payload or {})
return await _fine_tune_preflight_with_job_payload(node, job_payload, validate=validate, sync_resources=sync_resources, store=store)
async def _fine_tune_preflight_payload(
store: Any,
payload: dict[str, Any],
validate: bool = True,
) -> dict[str, Any]:
node, job_payload = store.prepare_compute_job_payload_from_payload(payload)
return await _fine_tune_preflight_with_job_payload(node, job_payload, validate=validate, sync_resources=False, store=store)
async def _fine_tune_preflight_with_job_payload(
node: dict[str, Any],
job_payload: dict[str, Any],
validate: bool,
sync_resources: bool,
store: Any,
) -> dict[str, Any]:
sync_results: list[dict[str, Any]] = [] sync_results: list[dict[str, Any]] = []
sync_errors: list[str] = [] sync_errors: list[str] = []
if sync_resources and get_settings().compute_mode != "simulator": if sync_resources and get_settings().compute_mode != "simulator":
@@ -105,6 +181,7 @@ async def _fine_tune_preflight(
"valid": bool(preview.get("valid", not errors)) and not errors, "valid": bool(preview.get("valid", not errors)) and not errors,
"errors": errors, "errors": errors,
"warnings": warnings, "warnings": warnings,
"diagnostics": _training_diagnostics(errors, warnings),
"node": { "node": {
"id": node.get("id"), "id": node.get("id"),
"code": node.get("code"), "code": node.get("code"),
@@ -618,6 +695,26 @@ async def start_fine_tune(payload: dict[str, Any] = Body(...)) -> dict[str, Any]
raise fail(502, f"submit compute job failed: {exc}") raise fail(502, f"submit compute job failed: {exc}")
@router.post("/fine-tune/preflight")
async def fine_tune_create_preflight(payload: dict[str, Any] = Body(...)) -> dict[str, Any]:
try:
return ok(await _fine_tune_preflight_payload(get_platform_store(), payload, validate=True))
except RuntimeError as exc:
return ok({"valid": False, "errors": [str(exc)], "warnings": [], "diagnostics": _training_diagnostics([str(exc)])})
except Exception as exc: # noqa: BLE001 - expose compute validation errors to training create page
raise fail(502, f"compute preflight failed: {exc}")
@router.post("/fine-tune/command-preview")
async def fine_tune_create_command_preview(payload: dict[str, Any] = Body(...)) -> dict[str, Any]:
try:
return ok(await _fine_tune_preflight_payload(get_platform_store(), payload, validate=False))
except RuntimeError as exc:
return ok({"valid": False, "errors": [str(exc)], "warnings": [], "diagnostics": _training_diagnostics([str(exc)])})
except Exception as exc: # noqa: BLE001
raise fail(502, f"compute command preview failed: {exc}")
@router.post("/fine-tune/{task_id}/preflight") @router.post("/fine-tune/{task_id}/preflight")
async def fine_tune_preflight(task_id: str, payload: dict[str, Any] | None = Body(default=None)) -> dict[str, Any]: async def fine_tune_preflight(task_id: str, payload: dict[str, Any] | None = Body(default=None)) -> dict[str, Any]:
try: try:
@@ -685,6 +782,32 @@ async def fine_tune_logs(
return ok({"job_id": task.get("compute_job_id") or "", "source": "task", "file": task.get("log_file") or "", "content": content, "size": f"{len(content.encode('utf-8'))} B"}) return ok({"job_id": task.get("compute_job_id") or "", "source": "task", "file": task.get("log_file") or "", "content": content, "size": f"{len(content.encode('utf-8'))} B"})
@router.get("/fine-tune/{task_id}/diagnostics")
async def fine_tune_diagnostics(task_id: str) -> dict[str, Any]:
store = get_platform_store()
try:
task = store.task(task_id)
except KeyError:
raise fail(404, "fine tune task not found")
log_text = ""
node = _node_for_task(task)
if node and task.get("compute_job_id"):
try:
logs = await ComputeNodeClient(node["api_base_url"]).job_logs(task["compute_job_id"], 1000, None, None)
log_text = str(logs.get("content") or "")
except Exception:
log_text = ""
errors = [str(task.get("failure_reason") or "")] if task.get("failure_reason") else []
return ok(
{
"task_id": task_id,
"status": task.get("status"),
"failure_reason": task.get("failure_reason") or "",
"diagnostics": _training_diagnostics(errors, [], log_text),
}
)
@router.put("/fine-tune/{task_id}") @router.put("/fine-tune/{task_id}")
async def update_fine_tune(task_id: str, payload: dict[str, Any] = Body(...)) -> dict[str, Any]: async def update_fine_tune(task_id: str, payload: dict[str, Any] = Body(...)) -> dict[str, Any]:
try: try:
@@ -1055,6 +1178,14 @@ async def compute_node_replicas(node_id: str) -> dict[str, Any]:
return ok(get_platform_store().replicas(node_id)) return ok(get_platform_store().replicas(node_id))
@router.get("/compute/sync-jobs/{sync_id}")
async def compute_sync_job_detail(sync_id: str) -> dict[str, Any]:
try:
return ok(get_platform_store().sync_job(sync_id))
except KeyError:
raise fail(404, "sync job not found")
@router.get("/compute/nodes/{node_id}/replicas/drift") @router.get("/compute/nodes/{node_id}/replicas/drift")
async def compute_node_replica_drift(node_id: str) -> dict[str, Any]: async def compute_node_replica_drift(node_id: str) -> dict[str, Any]:
store = get_platform_store() store = get_platform_store()
@@ -1091,35 +1222,18 @@ async def compute_node_replica_drift(node_id: str) -> dict[str, Any]:
return ok({"node_id": node_id, "items": items, "drifted": len([item for item in items if item.get("sync_status") == "drifted"])}) return ok({"node_id": node_id, "items": items, "drifted": len([item for item in items if item.get("sync_status") == "drifted"])})
@router.post("/compute/nodes/{node_id}/replicas/repair") async def _run_resource_replica_repair(sync_id: str, node_id: str, payload: dict[str, Any], replicas_to_repair: list[dict[str, Any]]) -> None:
async def compute_node_replica_repair(node_id: str, payload: dict[str, Any] | None = Body(default=None)) -> dict[str, Any]:
store = get_platform_store() store = get_platform_store()
store.update_sync_job(sync_id, "running", 5)
node = next((item for item in store.compute_nodes() if item["id"] == node_id), None) node = next((item for item in store.compute_nodes() if item["id"] == node_id), None)
if not node: if not node:
raise fail(404, "compute node not found") store.update_sync_job(sync_id, "failed", 100, completed=True)
payload = payload or {} return
replica_ids = payload.get("replica_ids") or [
item["id"] for item in store.replicas(node_id) if item.get("sync_status") in {"drifted", "failed", "repair_pending"}
]
updated = store.mark_resource_replica_repair_pending([str(item) for item in replica_ids])
sync_id = store.create_sync_job(
node_id,
{
"resources": [
{
"resource_type": item.get("resource_type"),
"resource_id": item.get("resource_id"),
"replica_id": item.get("id"),
"target_path": item.get("local_path"),
}
for item in updated
]
},
)
client = ComputeNodeClient(node["api_base_url"]) client = ComputeNodeClient(node["api_base_url"])
repaired = [] repaired = []
failures = [] failures = []
for replica in updated: total = max(len(replicas_to_repair), 1)
for index, replica in enumerate(replicas_to_repair, start=1):
replica_id = str(replica["id"]) replica_id = str(replica["id"])
resource_type = str(replica.get("resource_type") or "") resource_type = str(replica.get("resource_type") or "")
resource_id = str(replica.get("resource_id") or "") resource_id = str(replica.get("resource_id") or "")
@@ -1187,8 +1301,46 @@ async def compute_node_replica_repair(node_id: str, payload: dict[str, Any] | No
error = str(exc) error = str(exc)
failures.append({"replica_id": replica_id, "resource_type": resource_type, "resource_id": resource_id, "error": error}) failures.append({"replica_id": replica_id, "resource_type": resource_type, "resource_id": resource_id, "error": error})
repaired.append(store.update_resource_replica_sync_result(replica_id, False, None, int(replica.get("byte_size") or 0), "", error)) repaired.append(store.update_resource_replica_sync_result(replica_id, False, None, int(replica.get("byte_size") or 0), "", error))
progress = min(95, 5 + int(index / total * 90))
store.update_sync_job(sync_id, "running", progress)
store.update_sync_job(sync_id, "failed" if failures else "completed", 100 if not failures else 99, completed=True) store.update_sync_job(sync_id, "failed" if failures else "completed", 100 if not failures else 99, completed=True)
return ok({"sync": store.sync_job(sync_id), "replicas": repaired, "failed": failures})
@router.post("/compute/nodes/{node_id}/replicas/repair")
async def compute_node_replica_repair(
node_id: str,
background_tasks: BackgroundTasks,
payload: dict[str, Any] | None = Body(default=None),
) -> dict[str, Any]:
store = get_platform_store()
node = next((item for item in store.compute_nodes() if item["id"] == node_id), None)
if not node:
raise fail(404, "compute node not found")
payload = payload or {}
replica_ids = payload.get("replica_ids") or [
item["id"] for item in store.replicas(node_id) if item.get("sync_status") in {"drifted", "failed", "repair_pending"}
]
updated = store.mark_resource_replica_repair_pending([str(item) for item in replica_ids])
sync_id = store.create_sync_job(
node_id,
{
"operation": "repair",
"resources": [
{
"resource_type": item.get("resource_type"),
"resource_id": item.get("resource_id"),
"replica_id": item.get("id"),
"target_path": item.get("local_path"),
}
for item in updated
],
},
)
if not updated:
store.update_sync_job(sync_id, "completed", 100, completed=True)
return ok({"sync": store.sync_job(sync_id), "replicas": [], "failed": [], "async": False})
background_tasks.add_task(_run_resource_replica_repair, sync_id, node_id, payload, updated)
return ok({"sync": store.sync_job(sync_id), "replicas": updated, "failed": [], "async": True})
@router.get("/compute/nodes/{node_id}/engines") @router.get("/compute/nodes/{node_id}/engines")

View File

@@ -1474,25 +1474,40 @@ class PlatformStore:
def prepare_compute_job_payload(self, task_id: str, payload: dict[str, Any] | None = None) -> tuple[dict[str, Any], dict[str, Any]]: def prepare_compute_job_payload(self, task_id: str, payload: dict[str, Any] | None = None) -> tuple[dict[str, Any], dict[str, Any]]:
task = self.task(task_id) task = self.task(task_id)
merged = {**task, **(payload or {}), "id": task_id} merged = {**task, **(payload or {}), "id": task_id}
node = self.schedule_node(merged) node = self.select_compute_node(merged)
selected_gpus = merged.get("gpus") or [0] selected_gpus = merged.get("gpus") or [0]
return node, self._compute_job_payload_from_task_node(merged, node, selected_gpus) return node, self._compute_job_payload_from_task_node(merged, node, selected_gpus)
def prepare_compute_job_payload_from_payload(self, payload: dict[str, Any]) -> tuple[dict[str, Any], dict[str, Any]]:
task_id = str(payload.get("task_id") or payload.get("id") or new_id("ft_preview"))
name = str(payload.get("name") or task_id)
transient_task = {
**payload,
"id": task_id,
"name": name,
"status": str(payload.get("status") or "pending"),
"progress": int(payload.get("progress") or 0),
}
node = self.select_compute_node(transient_task)
selected_gpus = transient_task.get("gpus") or [0]
return node, self._compute_job_payload_from_task_node(transient_task, node, selected_gpus)
def _compute_job_payload_from_task_node( def _compute_job_payload_from_task_node(
self, self,
task: dict[str, Any], task: dict[str, Any],
node: dict[str, Any], node: dict[str, Any],
selected_gpus: list[int] | list[Any] | None = None, selected_gpus: list[int] | list[Any] | None = None,
) -> dict[str, Any]: ) -> dict[str, Any]:
base_model_id = task.get("base_model") or task.get("model_id")
dataset_id = str(task.get("train_dataset_id") or task.get("dataset_id") or "")
with self.connect() as conn: with self.connect() as conn:
model = conn.execute("SELECT * FROM models WHERE id=?", (task.get("base_model"),)).fetchone() model = conn.execute("SELECT * FROM models WHERE id=?", (base_model_id,)).fetchone()
dataset = conn.execute("SELECT * FROM datasets WHERE id=?", (task.get("train_dataset_id"),)).fetchone() dataset = conn.execute("SELECT * FROM datasets WHERE id=?", (dataset_id,)).fetchone()
files = conn.execute( files = conn.execute(
"SELECT id, name, size, active_version_id, create_time FROM dataset_files WHERE dataset_id=? ORDER BY create_time", "SELECT id, name, size, active_version_id, create_time FROM dataset_files WHERE dataset_id=? ORDER BY create_time",
(task.get("train_dataset_id"),), (dataset_id,),
).fetchall() ).fetchall()
model_path = (model and model.get("path")) or task.get("base_model") model_path = (model and model.get("path")) or task.get("model_name_or_path") or base_model_id
dataset_id = str(task.get("train_dataset_id") or "")
if not files: if not files:
raise RuntimeError(f"dataset has no uploaded file: {dataset_id}") raise RuntimeError(f"dataset has no uploaded file: {dataset_id}")
dataset_key = str(task.get("dataset_key") or llama_dataset_key(dataset_id)) dataset_key = str(task.get("dataset_key") or llama_dataset_key(dataset_id))
@@ -1897,6 +1912,10 @@ class PlatformStore:
raise RuntimeError("compute scheduler is busy, please retry") raise RuntimeError("compute scheduler is busy, please retry")
return self._schedule_node_locked(conn, payload) return self._schedule_node_locked(conn, payload)
def select_compute_node(self, payload: dict[str, Any]) -> dict[str, Any]:
with self.connect() as conn:
return self._schedule_node_locked(conn, payload)
def _reserve_gpu_allocations( def _reserve_gpu_allocations(
self, self,
conn: PgConnection, conn: PgConnection,

View File

@@ -0,0 +1,281 @@
# 2026-07-24 工作计划
本文基于 `docs/2026-07-23-development-summary.md`、当前 B+D 开发进度,以及 2026-07-24 已完成的训练预检、失败诊断、资源修复异步化能力整理。后续开发仍按正式系统演进推进,不以临时演示能力作为交付标准。
## 1. 当前完成基线
### 1.1 训练创建与预检
- 对应页面:`模型微调 / 创建训练任务`
- 已完成能力:
- 创建训练前调用训练预检接口。
- 展示真实 LLaMA-Factory 命令预览。
- 展示预检节点、错误、警告和中文诊断建议。
- 后端预检不创建任务、不落库、不占用调度锁。
- 后端兼容 `base_model/train_dataset_id``model_id/dataset_id` 两套字段。
- 对应接口:
- `POST /modelTF/fine-tune/preflight`
- `POST /modelTF/fine-tune/command-preview`
### 1.2 训练日志与失败诊断
- 对应页面:`系统日志 / 训练日志`
- 已完成能力:
- 训练失败或停止后可查询诊断建议。
- 根据训练日志和失败原因识别模型路径、数据集字段、CUDA/GPU、LLaMA-Factory 命令等常见问题。
- 页面以中文展示失败诊断。
- 对应接口:
- `GET /modelTF/fine-tune/{task_id}/diagnostics`
### 1.3 算力节点与资源修复
- 对应页面:`算力平台 / 算力节点`
- 已完成能力:
- 算力节点可配置、可测试连接、可查看 GPU 与健康状态。
- 资源副本 repair 改为异步提交。
- 页面展示资源同步任务进度,避免长请求阻塞页面。
- 对应接口:
- `POST /modelTF/compute/nodes/{node_id}/replicas/repair`
- `GET /modelTF/compute/sync-jobs/{sync_id}`
## 2. 未完成任务清单
### P0真实训练成功闭环
- 对应页面:
- `模型管理 / 新增模型`
- `数据集管理 / 上传数据集`
- `模型微调 / 创建训练任务`
- `系统日志 / 训练日志`
- 未完成内容:
- 基座模型必须支持算力服务器本地路径校验,避免选择 API 模型或应用侧路径后进入训练。
- 数据集必须支持上传后格式校验,提前发现 Alpaca、ShareGPT、DPO、CPT 字段不匹配问题。
- 训练成功后需要完成模型产物扫描、产物入库、训练任务状态回填。
- 训练失败时需要强制拉取最后日志片段,保证失败原因可见。
- 后端开发:
- 增强模型路径校验,明确区分 `本地训练模型``API 模型``已训练模型`
- 增加数据集格式校验服务,支持字段级错误返回。
- 完善训练任务完成后的 artifact 回填逻辑。
- Compute 开发:
- 训练结束后扫描输出目录。
- 返回产物列表、文件大小、目录结构、训练日志路径。
- 验收标准:
- 使用算力节点可访问的本地模型路径和合法数据集,可以完成一次真实 LLaMA-Factory 训练。
- 训练成功后页面能看到完成状态、输出目录、模型产物。
- 训练失败时页面能看到中文诊断和最后错误日志。
### P0LLaMA-Factory 参数映射完善
- 对应页面:`模型微调 / 创建训练任务`
- 未完成内容:
- SFT、DPO、CPT 参数映射仍需细化。
- LoRA、Full、QLoRA、量化导出参数需要按训练方式校验。
- 不同模板与数据集格式之间的兼容关系需要预检。
- 后端开发:
- 建立训练参数标准化层。
- 建立训练方式到 LLaMA-Factory 参数的映射表。
- 对无效组合返回中文错误,例如 DPO 缺少 rejected 字段、CPT 不应使用 instruction/output 格式等。
- 验收标准:
- 页面选择不同训练方式时,预检能返回准确命令。
- 无效参数组合不能启动训练。
### P1资源副本 repair 自动重同步
- 对应页面:`算力平台 / 算力节点`
- 未完成内容:
- repair 当前已异步化,但还需要基于权威源路径自动重同步。
- 修复完成后需要重新校验副本状态。
- 后端开发:
- 为模型、数据集、训练产物定义权威源路径。
- repair job 根据权威源自动发起重传或重新扫描。
- 修复完成后更新 replica 状态、checksum、错误原因。
- Compute 开发:
- 支持接收重同步请求。
- 支持按资源类型写入目标路径并返回校验信息。
- 验收标准:
- 将副本标记为异常后,点击修复可自动完成重同步并恢复为正常。
### P1artifact checksum 与 manifest
- 对应页面:
- `模型管理 / 已训练模型`
- `模型管理 / 模型详情`
- `算力平台 / 资源副本`
- 未完成内容:
- artifact checksum 目前仍是预留字段。
- 大目录需要 manifest 文件,避免每次递归扫描成本过高。
- 后端开发:
- 增加 artifact checksum 回填逻辑。
- 增加 manifest 解析和存储字段。
- Compute 开发:
- export 或训练完成后扫描文件并生成 checksum。
- 对大模型目录生成 manifest。
- 验收标准:
- 模型产物列表能展示 checksum、大小、文件数、生成时间。
- 副本校验可以基于 checksum 判断一致性。
### P1模型导出闭环
- 对应页面:
- `模型管理 / 已训练模型`
- `模型管理 / 导出任务`
- `模型管理 / 合并权重`
- 未完成内容:
- 导出任务、量化导出、导出日志、失败重试、产物下载仍需完善。
- 后端开发:
- 完善 export job 创建、查询、取消、重试接口。
- 导出完成后登记 artifact 和 lineage。
- Compute 开发:
- 支持 LoRA 合并、GGUF/量化导出、导出日志回传。
- 验收标准:
- 已训练模型可发起导出。
- 导出状态、日志、产物可在页面查看。
### P1多算力节点调度增强
- 对应页面:`算力平台 / 算力节点`
- 未完成内容:
- 当前已有节点配置和基础调度,但生产级调度策略仍需增强。
- 需要支持节点标签、权重、启用状态、容量、手动指定节点。
- 后端开发:
- 增强调度策略标签匹配、权重、当前任务数、GPU 占用、显存约束。
- 增加任务排队和等待原因。
- 增加 GPU 分配释放的异常恢复。
- 前端开发:
- 创建训练时支持可选手动指定节点。
- 算力节点页展示容量、排队数、当前任务。
- 验收标准:
- 多节点时可以自动选择合适节点。
- 节点不可用时页面能明确展示不可调度原因。
### P2训练日志实时性优化
- 对应页面:`系统日志 / 训练日志`
- 未完成内容:
- 当前依赖应用侧轮询,日志实时性和失败最后日志仍需增强。
- 后端开发:
- 支持日志 offset/tail 增量读取。
- 任务失败时强制同步最后日志片段。
- 日志接口返回来源、偏移量、是否截断。
- 前端开发:
- 日志页按 offset 增量刷新。
- 失败时自动跳到底部并展示最后错误。
- 验收标准:
- 训练过程中日志持续刷新。
- 失败后无需手动刷新即可看到最后错误。
### P2权限、审计和治理落点补齐
- 对应页面:
- `用户中心`
- `项目管理`
- `模型管理`
- `数据集管理`
- `模型微调`
- `算力平台`
- 未完成内容:
- 训练链路中的租户、项目、用户权限校验还需要细粒度补齐。
- 审计事件需要覆盖训练创建、启动、停止、删除、导出、资源修复。
- 后端开发:
- 接口增加项目/租户上下文校验。
- 增加审计事件写入。
- 删除和高风险操作进入审批流。
- 验收标准:
- 用户只能访问授权项目内的模型、数据集和训练任务。
- 关键操作可以在审计日志中查询。
### P2模型评测页面真实闭环
- 对应页面:`模型评测`
- 未完成内容:
- 评测任务创建、运行、日志、指标、结果对比仍需接入真实后端。
- 后端开发:
- 评测任务表、评测指标表、评测日志接口。
- 支持指定模型、数据集、评测模板和指标。
- Compute 开发:
- 支持评测任务执行器。
- 返回指标结果和日志。
- 验收标准:
- 可创建评测任务并看到运行状态、指标结果和失败原因。
### P2模型推理页面真实闭环
- 对应页面:
- `模型推理 / 推理服务`
- `模型推理 / 对话测试`
- `模型对比`
- 未完成内容:
- 推理服务启动、停止、健康检查、会话请求、资源释放仍需完善。
- 后端开发:
- 推理服务实例管理接口。
- 对话请求代理接口。
- 推理日志和资源占用查询。
- Compute 开发:
- 支持启动本地模型推理服务。
- 支持停止服务和释放 GPU。
- 验收标准:
- 可从页面启动一个已训练模型的推理服务。
- 可进行对话测试并查看服务状态。
## 3. 推荐开发顺序
1. 完成真实训练成功闭环。
2. 完成数据集格式校验和 LLaMA-Factory 参数映射。
3. 完成 artifact、checksum、manifest 和模型导出闭环。
4. 完成资源副本 repair 自动重同步。
5. 完成多算力节点调度增强。
6. 完成训练日志实时性优化。
7. 补齐权限、审批、审计治理落点。
8. 启动模型评测真实闭环开发。
9. 启动模型推理真实闭环开发。
## 4. 下一轮优先执行任务
### 任务 1训练模型路径治理
- 页面:`模型管理 / 新增模型``模型微调 / 创建训练任务`
- 内容:
- 新增模型时区分是否可用于训练。
- API 模型不能作为 LLaMA-Factory 本地训练基座。
- 本地模型路径必须是算力节点可访问路径。
- 验收:
- 选择不可训练模型时,训练创建页预检直接给出中文错误。
### 任务 2数据集格式校验
- 页面:`数据集管理 / 上传数据集``模型微调 / 创建训练任务`
- 内容:
- 上传后扫描样本字段。
- 支持 Alpaca、ShareGPT、DPO、CPT 校验。
- 返回字段缺失、类型错误、空样本等问题。
- 验收:
- `111.json` 这类数据可以明确判断是否满足当前训练模板。
### 任务 3训练完成产物入库
- 页面:`模型微调 / 任务列表``模型管理 / 已训练模型`
- 内容:
- Compute 训练成功后返回输出目录。
- 应用侧轮询后创建 trained model 记录。
- 写入 artifact、lineage、export job 初始状态。
- 验收:
- 训练完成后无需手动登记,模型管理中自动出现新模型。
### 任务 4失败日志最后片段拉取
- 页面:`系统日志 / 训练日志`
- 内容:
- 任务失败时立即拉取最后 N 行日志。
- 页面展示最后错误、诊断建议和原始日志。
- 验收:
- 训练失败后页面不再只看到“失败”,可以直接看到失败原因。
## 5. 当前测试注意事项
- 当前环境中已有算力节点可访问,但 GPU 为 2GB 显存,预检会提示显存不足,这是符合预期的生产校验结果。
- 若要验证真实训练成功,需要提前准备:
- 算力节点可访问的本地基座模型目录。
- 合法训练数据集文件。
- 足够显存的 GPU。
- Compute 容器内可用的 LLaMA-Factory 和 `llamafactory-cli`
- 当前前端 `dist` 已按要求参与构建更新,后续修改前端页面后需要重新执行 `npm run build`

View File

@@ -1 +1 @@
import{d as C,bf as g,D as E,H as O,o as _,e as B,s as D,Z as $,w as A,c as I,aL as K,q as a,n as v,aa as r,g as q,bg as M,y as u,z as N,P as k}from"./index-D5veDkuG.js";import{_ as R}from"./_plugin-vue_export-helper-DlAUqK2U.js";const V={class:"app-confirm-header"},z={class:"app-confirm-heading"},H={class:"app-confirm-icon","aria-hidden":"true"},L={class:"app-confirm-body"},P={class:"app-confirm-actions"},S=C({__name:"AppConfirmDialog",setup(j,{expose:x}){const c=u(!1),m=u(),p=u(),d=`app-confirm-title-${g()}`,y=`app-confirm-message-${g()}`,n=N({title:"请确认操作",message:"",confirmText:"确定",cancelText:"取消",tone:"warning",closeOnOverlay:!1});let o=null,i=null;function s(t){c.value=!1;const e=o;o=null,e==null||e(t)}function h(t){return o&&s(!1),Object.assign(n,{confirmText:"确定",cancelText:"取消",tone:"warning",closeOnOverlay:!1,...t}),c.value=!0,new Promise(e=>{o=e})}function w(){n.closeOnOverlay&&s(!1)}function T(t){var b;if(t.key==="Escape"){t.preventDefault(),s(!1);return}if(t.key!=="Tab")return;const e=Array.from(((b=m.value)==null?void 0:b.querySelectorAll("button:not([disabled])"))??[]),l=e[0],f=e[e.length-1];!l||!f||(t.shiftKey&&document.activeElement===l?(t.preventDefault(),f.focus()):!t.shiftKey&&document.activeElement===f&&(t.preventDefault(),l.focus()))}return E(c,async t=>{var e;if(t){i=document.activeElement instanceof HTMLElement?document.activeElement:null,await k(),(e=p.value)==null||e.focus();return}await k(),i==null||i.focus(),i=null}),O(()=>{o==null||o(!1),o=null}),x({open:h}),(t,e)=>(_(),B(M,{to:"body"},[D($,{name:"app-confirm"},{default:A(()=>[c.value?(_(),I("div",{key:0,class:"app-confirm-overlay",onMousedown:K(w,["self"])},[a("section",{ref_key:"dialogRef",ref:m,class:v(["app-confirm-dialog",`is-${n.tone}`]),role:"alertdialog","aria-modal":!0,"aria-labelledby":d,"aria-describedby":y,onKeydown:T},[a("header",V,[a("div",z,[a("span",H,[a("i",{class:v(n.tone==="primary"?"fa fa-question-circle":"fa fa-exclamation-triangle")},null,2)]),a("h2",{id:d},r(n.title),1)]),a("button",{class:"app-confirm-close",type:"button","aria-label":"关闭确认弹窗",onClick:e[0]||(e[0]=l=>s(!1))},[...e[3]||(e[3]=[a("i",{class:"fa fa-times","aria-hidden":"true"},null,-1)])])]),a("div",L,[a("p",{id:y},r(n.message),1)]),a("footer",P,[a("button",{ref_key:"cancelButtonRef",ref:p,class:"app-confirm-button is-cancel",type:"button",onClick:e[1]||(e[1]=l=>s(!1))},r(n.cancelText),513),a("button",{class:"app-confirm-button is-confirm",type:"button",onClick:e[2]||(e[2]=l=>s(!0))},r(n.confirmText),1)])],34)],32)):q("",!0)]),_:1})]))}}),G=R(S,[["__scopeId","data-v-398df98e"]]);export{G as A}; import{d as C,bf as g,D as E,H as O,o as _,e as B,s as D,Z as $,w as A,c as I,aL as K,q as a,n as v,aa as r,g as q,bg as M,y as u,z as N,P as k}from"./index-CD29OCdJ.js";import{_ as R}from"./_plugin-vue_export-helper-DlAUqK2U.js";const V={class:"app-confirm-header"},z={class:"app-confirm-heading"},H={class:"app-confirm-icon","aria-hidden":"true"},L={class:"app-confirm-body"},P={class:"app-confirm-actions"},S=C({__name:"AppConfirmDialog",setup(j,{expose:x}){const c=u(!1),m=u(),p=u(),d=`app-confirm-title-${g()}`,y=`app-confirm-message-${g()}`,n=N({title:"请确认操作",message:"",confirmText:"确定",cancelText:"取消",tone:"warning",closeOnOverlay:!1});let o=null,i=null;function s(t){c.value=!1;const e=o;o=null,e==null||e(t)}function h(t){return o&&s(!1),Object.assign(n,{confirmText:"确定",cancelText:"取消",tone:"warning",closeOnOverlay:!1,...t}),c.value=!0,new Promise(e=>{o=e})}function w(){n.closeOnOverlay&&s(!1)}function T(t){var b;if(t.key==="Escape"){t.preventDefault(),s(!1);return}if(t.key!=="Tab")return;const e=Array.from(((b=m.value)==null?void 0:b.querySelectorAll("button:not([disabled])"))??[]),l=e[0],f=e[e.length-1];!l||!f||(t.shiftKey&&document.activeElement===l?(t.preventDefault(),f.focus()):!t.shiftKey&&document.activeElement===f&&(t.preventDefault(),l.focus()))}return E(c,async t=>{var e;if(t){i=document.activeElement instanceof HTMLElement?document.activeElement:null,await k(),(e=p.value)==null||e.focus();return}await k(),i==null||i.focus(),i=null}),O(()=>{o==null||o(!1),o=null}),x({open:h}),(t,e)=>(_(),B(M,{to:"body"},[D($,{name:"app-confirm"},{default:A(()=>[c.value?(_(),I("div",{key:0,class:"app-confirm-overlay",onMousedown:K(w,["self"])},[a("section",{ref_key:"dialogRef",ref:m,class:v(["app-confirm-dialog",`is-${n.tone}`]),role:"alertdialog","aria-modal":!0,"aria-labelledby":d,"aria-describedby":y,onKeydown:T},[a("header",V,[a("div",z,[a("span",H,[a("i",{class:v(n.tone==="primary"?"fa fa-question-circle":"fa fa-exclamation-triangle")},null,2)]),a("h2",{id:d},r(n.title),1)]),a("button",{class:"app-confirm-close",type:"button","aria-label":"关闭确认弹窗",onClick:e[0]||(e[0]=l=>s(!1))},[...e[3]||(e[3]=[a("i",{class:"fa fa-times","aria-hidden":"true"},null,-1)])])]),a("div",L,[a("p",{id:y},r(n.message),1)]),a("footer",P,[a("button",{ref_key:"cancelButtonRef",ref:p,class:"app-confirm-button is-cancel",type:"button",onClick:e[1]||(e[1]=l=>s(!1))},r(n.cancelText),513),a("button",{class:"app-confirm-button is-confirm",type:"button",onClick:e[2]||(e[2]=l=>s(!0))},r(n.confirmText),1)])],34)],32)):q("",!0)]),_:1})]))}}),G=R(S,[["__scopeId","data-v-398df98e"]]);export{G as A};

View File

@@ -1 +1 @@
import{a as B,E as K}from"./el-form-item-rya6onmd.js";import{E as M}from"./index-DbBHj60R.js";import{E as h}from"./index-DxH5-_w6.js";import{E as I}from"./el-tag-C2d1Zfbn.js";import{E as R}from"./el-divider-CsS5KGIs.js";import{E as F}from"./el-slider-pAA0AhdE.js";import{d as L,G as z,e as V,w as s,ac as D,y as $,o as f,s as a,x as p,q as j,c as k,ad as A,aa as E,f as P,M as G,g as J,v as O,z as H,j as _,A as b}from"./index-D5veDkuG.js";import"./el-popper-DDJTxf27.js";import"./el-tooltip-l0sNRNKZ.js";import"./el-input-number-Cs1MXSA_.js";import{P as Q}from"./PageCard-DFGMy1ik.js";import{u as W}from"./usePolling-BV3KjihG.js";import{a as X}from"./compare-DQvbhHeE.js";import{a as Y}from"./status-Dl1fykxa.js";import{_ as Z}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BDIbf8ih.js";import"./_baseClone-BuqHm105.js";import"./raf-Dsox5IbR.js";import"./index-DDY6aSpq.js";import"./index-BT1A2I5c.js";import"./debounce-D3zKL4rk.js";import"./toNumber-a8w_gs0u.js";import"./clamp-Ddg8_Yc2.js";import"./index-DmAaj_YO.js";import"./index-APLq0PKf.js";import"./el-card-DzhpMhms.js";const tt={class:"model-list"},et={key:0,class:"empty-hint"},ot=L({__name:"CompareChatView",setup(at){const T=D(),y=O(),x=T.params.id,n=$(null),e=H({systemPrompt:"",question:"",temperature:.7,topP:.9,topK:40,maxTokens:2048}),m=_(()=>{var l;if(!((l=n.value)!=null&&l.load_status))return[];try{return(typeof n.value.load_status=="string"?JSON.parse(n.value.load_status):n.value.load_status).loaded_models||[]}catch{return[]}}),C=_(()=>m.value.length>0&&m.value.every(l=>l.status==="ready"||l.status==="running")),g=_(()=>m.value.some(l=>l.status==="starting"));async function c(){try{n.value=await X(x)}catch{}}function S(){var u,i;if(!e.question.trim()){b.warning("请输入问题");return}if(g.value){b.warning("模型仍在启动中,请稍候");return}const l=new URLSearchParams({taskId:x,taskName:((u=n.value)==null?void 0:u.model_name)||((i=n.value)==null?void 0:i.name)||"",question:e.question,systemPrompt:e.systemPrompt,temperature:String(e.temperature),topP:String(e.topP),topK:String(e.topK),maxTokens:String(e.maxTokens)}),t=y.resolve(`/model-compare/result?${l.toString()}`).href;window.open(t,"_blank")}const{start:q}=W(c,5e3,{immediate:!1});return z(async()=>{await c(),q()}),(l,t)=>{const u=R,i=I,v=M,r=B,d=F,w=h,U=K;return f(),V(Q,{title:"模型对比配置"},{default:s(()=>[a(u,{"content-position":"left"},{default:s(()=>[...t[7]||(t[7]=[p("已启动模型",-1)])]),_:1}),j("div",tt,[(f(!0),k(G,null,A(m.value,(o,N)=>(f(),V(i,{key:N,type:o.status==="ready"||o.status==="running"?"success":o.status==="starting"?"warning":"danger",size:"large"},{default:s(()=>[p(E(o.model_name)+" ("+E(P(Y)(o.status))+") ",1)]),_:2},1032,["type"]))),128)),m.value.length?J("",!0):(f(),k("span",et,"暂无已启动模型"))]),a(u,{"content-position":"left"},{default:s(()=>[...t[8]||(t[8]=[p("对话配置",-1)])]),_:1}),a(U,{"label-width":"120px",style:{"max-width":"700px"}},{default:s(()=>[a(r,{label:"系统提示词"},{default:s(()=>[a(v,{modelValue:e.systemPrompt,"onUpdate:modelValue":t[0]||(t[0]=o=>e.systemPrompt=o),type:"textarea",rows:3,placeholder:"可选"},null,8,["modelValue"])]),_:1}),a(r,{label:"问题"},{default:s(()=>[a(v,{modelValue:e.question,"onUpdate:modelValue":t[1]||(t[1]=o=>e.question=o),type:"textarea",rows:4,placeholder:"请输入要对比的问题"},null,8,["modelValue"])]),_:1}),a(r,{label:"Temperature"},{default:s(()=>[a(d,{modelValue:e.temperature,"onUpdate:modelValue":t[2]||(t[2]=o=>e.temperature=o),min:0,max:2,step:.1,"show-input":"",style:{"max-width":"500px"}},null,8,["modelValue"])]),_:1}),a(r,{label:"Top-p"},{default:s(()=>[a(d,{modelValue:e.topP,"onUpdate:modelValue":t[3]||(t[3]=o=>e.topP=o),min:0,max:1,step:.05,"show-input":"",style:{"max-width":"500px"}},null,8,["modelValue"])]),_:1}),a(r,{label:"Top-k"},{default:s(()=>[a(d,{modelValue:e.topK,"onUpdate:modelValue":t[4]||(t[4]=o=>e.topK=o),min:1,max:100,step:1,"show-input":"",style:{"max-width":"500px"}},null,8,["modelValue"])]),_:1}),a(r,{label:"Max Tokens"},{default:s(()=>[a(d,{modelValue:e.maxTokens,"onUpdate:modelValue":t[5]||(t[5]=o=>e.maxTokens=o),min:256,max:4096,step:128,"show-input":"",style:{"max-width":"500px"}},null,8,["modelValue"])]),_:1}),a(r,null,{default:s(()=>[a(w,{type:"primary",disabled:!C.value||g.value,onClick:S},{default:s(()=>[...t[9]||(t[9]=[p(" 开始对比 ",-1)])]),_:1},8,["disabled"]),a(w,{onClick:t[6]||(t[6]=o=>P(y).back())},{default:s(()=>[...t[10]||(t[10]=[p("返回",-1)])]),_:1})]),_:1})]),_:1})]),_:1})}}}),Ut=Z(ot,[["__scopeId","data-v-9d25ca9d"]]);export{Ut as default}; import{a as B,E as K}from"./el-form-item--AdlsBF7.js";import{E as M}from"./index-D0wqu88j.js";import{E as h}from"./index-6OTFNiIi.js";import{E as I}from"./el-tag-C4SnL2z_.js";import{E as R}from"./el-divider-Bk8dYjWT.js";import{E as F}from"./el-slider-D0ESR8FK.js";import{d as L,G as z,e as V,w as s,ac as D,y as $,o as f,s as a,x as p,q as j,c as k,ad as A,aa as E,f as P,M as G,g as J,v as O,z as H,j as _,A as b}from"./index-CD29OCdJ.js";import"./el-popper-DIiB8Y-M.js";import"./el-tooltip-l0sNRNKZ.js";import"./el-input-number-CUR6qfYr.js";import{P as Q}from"./PageCard-Byh3epid.js";import{u as W}from"./usePolling-C71_cNpk.js";import{a as X}from"./compare-BAX_umRe.js";import{a as Y}from"./status-Dl1fykxa.js";import{_ as Z}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BEiueV6y.js";import"./_baseClone-Blem5BWg.js";import"./raf-DGtHIxe2.js";import"./index-C8FAS7l2.js";import"./index-DpY84JwG.js";import"./debounce-BCyqG5kC.js";import"./toNumber-B6P5MqPp.js";import"./clamp-BfrLWns4.js";import"./index-BpugJXyE.js";import"./index-sBiRi5wE.js";import"./el-card-BvbOkvag.js";const tt={class:"model-list"},et={key:0,class:"empty-hint"},ot=L({__name:"CompareChatView",setup(at){const T=D(),y=O(),x=T.params.id,n=$(null),e=H({systemPrompt:"",question:"",temperature:.7,topP:.9,topK:40,maxTokens:2048}),m=_(()=>{var l;if(!((l=n.value)!=null&&l.load_status))return[];try{return(typeof n.value.load_status=="string"?JSON.parse(n.value.load_status):n.value.load_status).loaded_models||[]}catch{return[]}}),C=_(()=>m.value.length>0&&m.value.every(l=>l.status==="ready"||l.status==="running")),g=_(()=>m.value.some(l=>l.status==="starting"));async function c(){try{n.value=await X(x)}catch{}}function S(){var u,i;if(!e.question.trim()){b.warning("请输入问题");return}if(g.value){b.warning("模型仍在启动中,请稍候");return}const l=new URLSearchParams({taskId:x,taskName:((u=n.value)==null?void 0:u.model_name)||((i=n.value)==null?void 0:i.name)||"",question:e.question,systemPrompt:e.systemPrompt,temperature:String(e.temperature),topP:String(e.topP),topK:String(e.topK),maxTokens:String(e.maxTokens)}),t=y.resolve(`/model-compare/result?${l.toString()}`).href;window.open(t,"_blank")}const{start:q}=W(c,5e3,{immediate:!1});return z(async()=>{await c(),q()}),(l,t)=>{const u=R,i=I,v=M,r=B,d=F,w=h,U=K;return f(),V(Q,{title:"模型对比配置"},{default:s(()=>[a(u,{"content-position":"left"},{default:s(()=>[...t[7]||(t[7]=[p("已启动模型",-1)])]),_:1}),j("div",tt,[(f(!0),k(G,null,A(m.value,(o,N)=>(f(),V(i,{key:N,type:o.status==="ready"||o.status==="running"?"success":o.status==="starting"?"warning":"danger",size:"large"},{default:s(()=>[p(E(o.model_name)+" ("+E(P(Y)(o.status))+") ",1)]),_:2},1032,["type"]))),128)),m.value.length?J("",!0):(f(),k("span",et,"暂无已启动模型"))]),a(u,{"content-position":"left"},{default:s(()=>[...t[8]||(t[8]=[p("对话配置",-1)])]),_:1}),a(U,{"label-width":"120px",style:{"max-width":"700px"}},{default:s(()=>[a(r,{label:"系统提示词"},{default:s(()=>[a(v,{modelValue:e.systemPrompt,"onUpdate:modelValue":t[0]||(t[0]=o=>e.systemPrompt=o),type:"textarea",rows:3,placeholder:"可选"},null,8,["modelValue"])]),_:1}),a(r,{label:"问题"},{default:s(()=>[a(v,{modelValue:e.question,"onUpdate:modelValue":t[1]||(t[1]=o=>e.question=o),type:"textarea",rows:4,placeholder:"请输入要对比的问题"},null,8,["modelValue"])]),_:1}),a(r,{label:"Temperature"},{default:s(()=>[a(d,{modelValue:e.temperature,"onUpdate:modelValue":t[2]||(t[2]=o=>e.temperature=o),min:0,max:2,step:.1,"show-input":"",style:{"max-width":"500px"}},null,8,["modelValue"])]),_:1}),a(r,{label:"Top-p"},{default:s(()=>[a(d,{modelValue:e.topP,"onUpdate:modelValue":t[3]||(t[3]=o=>e.topP=o),min:0,max:1,step:.05,"show-input":"",style:{"max-width":"500px"}},null,8,["modelValue"])]),_:1}),a(r,{label:"Top-k"},{default:s(()=>[a(d,{modelValue:e.topK,"onUpdate:modelValue":t[4]||(t[4]=o=>e.topK=o),min:1,max:100,step:1,"show-input":"",style:{"max-width":"500px"}},null,8,["modelValue"])]),_:1}),a(r,{label:"Max Tokens"},{default:s(()=>[a(d,{modelValue:e.maxTokens,"onUpdate:modelValue":t[5]||(t[5]=o=>e.maxTokens=o),min:256,max:4096,step:128,"show-input":"",style:{"max-width":"500px"}},null,8,["modelValue"])]),_:1}),a(r,null,{default:s(()=>[a(w,{type:"primary",disabled:!C.value||g.value,onClick:S},{default:s(()=>[...t[9]||(t[9]=[p(" 开始对比 ",-1)])]),_:1},8,["disabled"]),a(w,{onClick:t[6]||(t[6]=o=>P(y).back())},{default:s(()=>[...t[10]||(t[10]=[p("返回",-1)])]),_:1})]),_:1})]),_:1})]),_:1})}}}),Ut=Z(ot,[["__scopeId","data-v-9d25ca9d"]]);export{Ut as default};

View File

@@ -1 +1 @@
import{E as D}from"./el-alert-DhjRMRnp.js";import{E as $}from"./index-DxH5-_w6.js";import{E as z}from"./el-tag-C2d1Zfbn.js";import{E as F}from"./el-card-DzhpMhms.js";import{d as O,G as U,H as J,c as d,q as i,aa as c,f as v,s as N,w as m,M as K,ad as A,ac as G,y as g,o as r,x as p,e as y,g as H}from"./index-D5veDkuG.js";import{_ as L}from"./MarkdownView.vue_vue_type_style_index_0_lang-DFYCH-49.js";import{a as W,c as j}from"./compare-DQvbhHeE.js";import{_ as Q}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vnode-CYZHqsIy.js";const X={class:"compare-result"},Y={class:"result-header"},Z={class:"header-actions"},tt={class:"result-grid"},et={class:"card-header"},st={class:"model-name"},ot={key:0,class:"error-text"},at={key:1,class:"streaming-text"},nt={key:3,class:"loading-text"},lt={key:4,class:"result-stats"},rt=O({__name:"CompareResultView",setup(it){const u=G(),q=u.query.taskId,k=decodeURIComponent(u.query.question||""),h=decodeURIComponent(u.query.systemPrompt||""),E=Number(u.query.temperature||.7),P=Number(u.query.topP||.9),I=Number(u.query.topK||40),b=Number(u.query.maxTokens||2048),w=u.query.taskName,l=g([]),C=g(!1),x=g([]),f=new Set;async function B(){if(!C.value){C.value=!0;try{const s=await W(q);let t=[];s.load_status&&(t=(typeof s.load_status=="string"?JSON.parse(s.load_status):s.load_status).loaded_models||[]),x.value=t,l.value=t.map(o=>({name:o.model_name||"模型",content:"",displayContent:"",isTyping:!1,status:"loading"})),await Promise.all(t.map((o,e)=>S(o,e)))}catch{}}}async function S(s,t){const o=Date.now();try{const e=await V(j({port:s.port,model_name:s.model_name,messages:[...h?[{role:"system",content:h}]:[],{role:"user",content:k}],temperature:E,top_p:P,top_k:I,max_tokens:b}),3e5),a=(e==null?void 0:e.response)||(e==null?void 0:e.content)||(e==null?void 0:e.data)||JSON.stringify(e),_=(Date.now()-o)/1e3;l.value[t].content=a,l.value[t].status="done",l.value[t].stats={totalTime:_,charsPerSec:_>0?Number((a.length/_).toFixed(1)):0},M(t,a)}catch(e){l.value[t].content="推理失败: "+(e.message||""),l.value[t].status="error"}}async function V(s,t){let o=null;try{return await Promise.race([s,new Promise((e,a)=>{o=setTimeout(()=>a(new Error("推理超时")),t)})])}finally{o&&clearTimeout(o)}}function M(s,t){let o=0;l.value[s].isTyping=!0;const e=Math.max(2,Math.ceil(t.length/30)),a=setInterval(()=>{o+=e,l.value[s].displayContent=t.slice(0,o),o>=t.length&&(clearInterval(a),f.delete(a),l.value[s].displayContent=t,l.value[s].isTyping=!1)},50);f.add(a)}return U(B),J(()=>{f.forEach(clearInterval),f.clear()}),(s,t)=>{const o=$,e=D,a=z,_=F;return r(),d("div",X,[i("div",Y,[i("h2",null,"对比结果"+c(v(w)?` - ${v(w)}`:""),1),i("div",Z,[N(o,{onClick:t[0]||(t[0]=n=>s.$router.push("/model-inference"))},{default:m(()=>[...t[1]||(t[1]=[p("返回列表",-1)])]),_:1})])]),N(e,{type:"info",closable:!1,"show-icon":"",class:"question-box"},{title:m(()=>[t[2]||(t[2]=i("strong",null,"问题:",-1)),p(c(v(k)),1)]),_:1}),i("div",tt,[(r(!0),d(K,null,A(l.value,(n,R)=>(r(),y(_,{key:R,shadow:"hover",class:"result-card"},{header:m(()=>[i("div",et,[i("span",st,c(n.name),1),n.status==="loading"?(r(),y(a,{key:0,type:"warning",size:"small"},{default:m(()=>[...t[3]||(t[3]=[p("生成中...",-1)])]),_:1})):n.status==="done"?(r(),y(a,{key:1,type:"success",size:"small"},{default:m(()=>[...t[4]||(t[4]=[p("完成",-1)])]),_:1})):(r(),y(a,{key:2,type:"danger",size:"small"},{default:m(()=>[...t[5]||(t[5]=[p("失败",-1)])]),_:1}))])]),default:m(()=>{var T;return[n.status==="error"?(r(),d("div",ot,c(n.content),1)):n.isTyping?(r(),d("div",at,c(n.displayContent),1)):n.displayContent?(r(),y(L,{key:2,content:n.displayContent},null,8,["content"])):(r(),d("div",nt,[...t[6]||(t[6]=[i("i",{class:"fa fa-spinner fa-spin"},null,-1),p(" 正在生成回答... ",-1)])])),n.stats?(r(),d("div",lt,[i("span",null,"耗时 "+c((T=n.stats.totalTime)==null?void 0:T.toFixed(1))+"s",1),i("span",null,"速度 "+c(n.stats.charsPerSec)+" 字/秒",1)])):H("",!0)]}),_:2},1024))),128))])])}}}),gt=Q(rt,[["__scopeId","data-v-4c4e03d7"]]);export{gt as default}; import{E as D}from"./el-alert-DiB50G4H.js";import{E as $}from"./index-6OTFNiIi.js";import{E as z}from"./el-tag-C4SnL2z_.js";import{E as F}from"./el-card-BvbOkvag.js";import{d as O,G as U,H as J,c as d,q as i,aa as c,f as v,s as N,w as m,M as K,ad as A,ac as G,y as g,o as r,x as p,e as y,g as H}from"./index-CD29OCdJ.js";import{_ as L}from"./MarkdownView.vue_vue_type_style_index_0_lang-Cz6hZilm.js";import{a as W,c as j}from"./compare-BAX_umRe.js";import{_ as Q}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vnode-_QM9LlTR.js";const X={class:"compare-result"},Y={class:"result-header"},Z={class:"header-actions"},tt={class:"result-grid"},et={class:"card-header"},st={class:"model-name"},ot={key:0,class:"error-text"},at={key:1,class:"streaming-text"},nt={key:3,class:"loading-text"},lt={key:4,class:"result-stats"},rt=O({__name:"CompareResultView",setup(it){const u=G(),q=u.query.taskId,k=decodeURIComponent(u.query.question||""),h=decodeURIComponent(u.query.systemPrompt||""),E=Number(u.query.temperature||.7),P=Number(u.query.topP||.9),I=Number(u.query.topK||40),b=Number(u.query.maxTokens||2048),w=u.query.taskName,l=g([]),C=g(!1),x=g([]),f=new Set;async function B(){if(!C.value){C.value=!0;try{const s=await W(q);let t=[];s.load_status&&(t=(typeof s.load_status=="string"?JSON.parse(s.load_status):s.load_status).loaded_models||[]),x.value=t,l.value=t.map(o=>({name:o.model_name||"模型",content:"",displayContent:"",isTyping:!1,status:"loading"})),await Promise.all(t.map((o,e)=>S(o,e)))}catch{}}}async function S(s,t){const o=Date.now();try{const e=await V(j({port:s.port,model_name:s.model_name,messages:[...h?[{role:"system",content:h}]:[],{role:"user",content:k}],temperature:E,top_p:P,top_k:I,max_tokens:b}),3e5),a=(e==null?void 0:e.response)||(e==null?void 0:e.content)||(e==null?void 0:e.data)||JSON.stringify(e),_=(Date.now()-o)/1e3;l.value[t].content=a,l.value[t].status="done",l.value[t].stats={totalTime:_,charsPerSec:_>0?Number((a.length/_).toFixed(1)):0},M(t,a)}catch(e){l.value[t].content="推理失败: "+(e.message||""),l.value[t].status="error"}}async function V(s,t){let o=null;try{return await Promise.race([s,new Promise((e,a)=>{o=setTimeout(()=>a(new Error("推理超时")),t)})])}finally{o&&clearTimeout(o)}}function M(s,t){let o=0;l.value[s].isTyping=!0;const e=Math.max(2,Math.ceil(t.length/30)),a=setInterval(()=>{o+=e,l.value[s].displayContent=t.slice(0,o),o>=t.length&&(clearInterval(a),f.delete(a),l.value[s].displayContent=t,l.value[s].isTyping=!1)},50);f.add(a)}return U(B),J(()=>{f.forEach(clearInterval),f.clear()}),(s,t)=>{const o=$,e=D,a=z,_=F;return r(),d("div",X,[i("div",Y,[i("h2",null,"对比结果"+c(v(w)?` - ${v(w)}`:""),1),i("div",Z,[N(o,{onClick:t[0]||(t[0]=n=>s.$router.push("/model-inference"))},{default:m(()=>[...t[1]||(t[1]=[p("返回列表",-1)])]),_:1})])]),N(e,{type:"info",closable:!1,"show-icon":"",class:"question-box"},{title:m(()=>[t[2]||(t[2]=i("strong",null,"问题:",-1)),p(c(v(k)),1)]),_:1}),i("div",tt,[(r(!0),d(K,null,A(l.value,(n,R)=>(r(),y(_,{key:R,shadow:"hover",class:"result-card"},{header:m(()=>[i("div",et,[i("span",st,c(n.name),1),n.status==="loading"?(r(),y(a,{key:0,type:"warning",size:"small"},{default:m(()=>[...t[3]||(t[3]=[p("生成中...",-1)])]),_:1})):n.status==="done"?(r(),y(a,{key:1,type:"success",size:"small"},{default:m(()=>[...t[4]||(t[4]=[p("完成",-1)])]),_:1})):(r(),y(a,{key:2,type:"danger",size:"small"},{default:m(()=>[...t[5]||(t[5]=[p("失败",-1)])]),_:1}))])]),default:m(()=>{var T;return[n.status==="error"?(r(),d("div",ot,c(n.content),1)):n.isTyping?(r(),d("div",at,c(n.displayContent),1)):n.displayContent?(r(),y(L,{key:2,content:n.displayContent},null,8,["content"])):(r(),d("div",nt,[...t[6]||(t[6]=[i("i",{class:"fa fa-spinner fa-spin"},null,-1),p(" 正在生成回答... ",-1)])])),n.stats?(r(),d("div",lt,[i("span",null,"耗时 "+c((T=n.stats.totalTime)==null?void 0:T.toFixed(1))+"s",1),i("span",null,"速度 "+c(n.stats.charsPerSec)+" 字/秒",1)])):H("",!0)]}),_:2},1024))),128))])])}}}),gt=Q(rt,[["__scopeId","data-v-4c4e03d7"]]);export{gt as default};

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
.compute-page[data-v-569994b3]{display:flex;flex-direction:column;gap:16px;min-height:0;height:100%;padding:24px;background:#fff}.compute-header[data-v-569994b3]{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.compute-header h1[data-v-569994b3]{margin:0;font-size:24px;font-weight:650;color:#111827}.compute-header p[data-v-569994b3]{margin:8px 0 0;color:#64748b}.header-actions[data-v-569994b3],.replica-toolbar[data-v-569994b3]{display:flex;align-items:center;gap:12px}.last-updated[data-v-569994b3],.muted[data-v-569994b3]{color:#64748b;font-size:12px}.last-updated[data-v-569994b3]{min-width:92px;text-align:right}.summary-grid[data-v-569994b3]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.summary-tile[data-v-569994b3]{border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;background:#f8fafc}.summary-tile span[data-v-569994b3]{display:block;color:#64748b;font-size:12px}.summary-tile strong[data-v-569994b3]{display:block;margin-top:8px;color:#111827;font-size:24px}.compute-tabs[data-v-569994b3]{flex:1;min-height:0}.compute-tabs[data-v-569994b3] .el-tabs__content{height:calc(100% - 56px)}.compute-tabs[data-v-569994b3] .el-tab-pane{height:100%}.mono[data-v-569994b3]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.replica-toolbar[data-v-569994b3]{margin-bottom:12px}.replica-toolbar .el-select[data-v-569994b3]{width:280px}.sync-progress[data-v-569994b3]{display:grid;gap:8px;margin-bottom:12px;border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px;background:#f8fafc}.sync-progress>div[data-v-569994b3]{display:flex;align-items:center;gap:10px}.node-form-grid[data-v-569994b3]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}.node-form-grid[data-v-569994b3] .el-input-number,.node-form-grid[data-v-569994b3] .el-select{width:100%}@media(max-width:960px){.compute-header[data-v-569994b3],.header-actions[data-v-569994b3],.replica-toolbar[data-v-569994b3]{flex-direction:column;align-items:stretch}.summary-grid[data-v-569994b3]{grid-template-columns:repeat(2,minmax(0,1fr))}.node-form-grid[data-v-569994b3]{grid-template-columns:1fr}}

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
.compute-page[data-v-6f93f55a]{display:flex;flex-direction:column;gap:16px;min-height:0;height:100%;padding:24px;background:#fff}.compute-header[data-v-6f93f55a]{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.compute-header h1[data-v-6f93f55a]{margin:0;font-size:24px;font-weight:650;color:#111827}.compute-header p[data-v-6f93f55a]{margin:8px 0 0;color:#64748b}.header-actions[data-v-6f93f55a],.replica-toolbar[data-v-6f93f55a]{display:flex;align-items:center;gap:12px}.last-updated[data-v-6f93f55a],.muted[data-v-6f93f55a]{color:#64748b;font-size:12px}.last-updated[data-v-6f93f55a]{min-width:92px;text-align:right}.summary-grid[data-v-6f93f55a]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.summary-tile[data-v-6f93f55a]{border:1px solid #e5e7eb;border-radius:8px;padding:14px 16px;background:#f8fafc}.summary-tile span[data-v-6f93f55a]{display:block;color:#64748b;font-size:12px}.summary-tile strong[data-v-6f93f55a]{display:block;margin-top:8px;color:#111827;font-size:24px}.compute-tabs[data-v-6f93f55a]{flex:1;min-height:0}.compute-tabs[data-v-6f93f55a] .el-tabs__content{height:calc(100% - 56px)}.compute-tabs[data-v-6f93f55a] .el-tab-pane{height:100%}.mono[data-v-6f93f55a]{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.replica-toolbar[data-v-6f93f55a]{margin-bottom:12px}.replica-toolbar .el-select[data-v-6f93f55a]{width:280px}.node-form-grid[data-v-6f93f55a]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px}.node-form-grid[data-v-6f93f55a] .el-input-number,.node-form-grid[data-v-6f93f55a] .el-select{width:100%}@media(max-width:960px){.compute-header[data-v-6f93f55a],.header-actions[data-v-6f93f55a],.replica-toolbar[data-v-6f93f55a]{flex-direction:column;align-items:stretch}.summary-grid[data-v-6f93f55a]{grid-template-columns:repeat(2,minmax(0,1fr))}.node-form-grid[data-v-6f93f55a]{grid-template-columns:1fr}}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{a as N,E as v}from"./el-form-item-rya6onmd.js";import{E as b}from"./el-popper-DDJTxf27.js";import{E as O}from"./index-DbBHj60R.js";import{E as S}from"./index-DxH5-_w6.js";import{E as g,a as E}from"./el-select-BQaRHu3V.js";import{d as J,e as V,w as e,o as w,q as t,s as l,x as i,z as x,A as C}from"./index-D5veDkuG.js";import"./el-tooltip-l0sNRNKZ.js";import"./el-scrollbar-GFOwBTUz.js";import"./el-tag-C2d1Zfbn.js";import{P as U}from"./PageCard-DFGMy1ik.js";import{_ as y}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BDIbf8ih.js";import"./_baseClone-BuqHm105.js";import"./index-BT1A2I5c.js";import"./index-DmAaj_YO.js";import"./raf-Dsox5IbR.js";import"./index-DDY6aSpq.js";import"./vnode-CYZHqsIy.js";import"./index-DbuKXJ7V.js";import"./scroll-DswMXu1y.js";import"./clamp-Ddg8_Yc2.js";import"./toNumber-a8w_gs0u.js";import"./_baseIteratee-N-G7GeYE.js";import"./el-card-DzhpMhms.js";const F={class:"converter-panel"},L={class:"form-row"},T={class:"panel-footer"},B={class:"actions"},k=J({__name:"DataConvertView",setup(I){const a=x({outputName:"converted-data",encoding:"UTF-8"});function p(){C.info("当前仅完成界面设计,转换功能将在后续接入")}function d(){Object.assign(a,{outputName:"converted-data",encoding:"UTF-8"})}return(j,o)=>{const n=N,m=O,u=E,f=g,c=v,r=S,_=b;return w(),V(U,{class:"data-convert-page",title:"数据类型转换",subtitle:"将 JSON 文件转换为便于训练和评测使用的 JSONL 格式"},{default:e(()=>[t("div",F,[o[9]||(o[9]=t("div",{class:"panel-header"},[t("div",{class:"tool-icon","aria-hidden":"true"},[t("i",{class:"fa fa-exchange"})]),t("div",null,[t("h3",null,"JSON 转 JSONL"),t("p",null,"每条 JSON 数据将输出为 JSONL 文件中的一行记录")])],-1)),l(c,{class:"converter-form","label-position":"top"},{default:e(()=>[l(n,{label:"转换类型"},{default:e(()=>[...o[2]||(o[2]=[t("div",{class:"format-field","aria-label":"JSON 转 JSONL"},[t("span",null,"JSON"),t("i",{class:"fa fa-long-arrow-right","aria-hidden":"true"}),t("span",null,"JSONL")],-1)])]),_:1}),l(n,{label:"源文件",required:""},{default:e(()=>[t("button",{class:"upload-zone",type:"button",onClick:p},[...o[3]||(o[3]=[t("i",{class:"fa fa-cloud-upload","aria-hidden":"true"},null,-1),t("span",{class:"upload-content"},[t("strong",null,"点击选择或拖拽 JSON 文件到此处"),t("small",null,"仅支持 .json 格式,单文件不超过 200 MB")],-1),t("span",{class:"select-button"},"选择文件",-1)])])]),_:1}),t("div",L,[l(n,{label:"输出文件名"},{default:e(()=>[l(m,{modelValue:a.outputName,"onUpdate:modelValue":o[0]||(o[0]=s=>a.outputName=s)},{append:e(()=>[...o[4]||(o[4]=[i(".jsonl",-1)])]),_:1},8,["modelValue"])]),_:1}),l(n,{label:"字符编码"},{default:e(()=>[l(f,{modelValue:a.encoding,"onUpdate:modelValue":o[1]||(o[1]=s=>a.encoding=s),style:{width:"100%"}},{default:e(()=>[l(u,{label:"UTF-8",value:"UTF-8"})]),_:1},8,["modelValue"])]),_:1})]),o[5]||(o[5]=t("div",{class:"format-tip"},[t("i",{class:"fa fa-info-circle","aria-hidden":"true"}),t("span",null,"支持由 JSON 数组转换为 JSONL每个数组元素输出为一行。")],-1))]),_:1}),t("div",T,[o[8]||(o[8]=t("span",{class:"prototype-label"},"当前为 UI 原型,暂不执行实际转换",-1)),t("div",B,[l(r,{onClick:d},{default:e(()=>[...o[6]||(o[6]=[i("重置",-1)])]),_:1}),l(_,{content:"转换功能将在后续开发中接入",placement:"top"},{default:e(()=>[t("span",null,[l(r,{type:"primary",disabled:""},{default:e(()=>[...o[7]||(o[7]=[i("开始转换",-1)])]),_:1})])]),_:1})])])])]),_:1})}}}),it=y(k,[["__scopeId","data-v-fcb69543"]]);export{it as default}; import{a as N,E as v}from"./el-form-item--AdlsBF7.js";import{E as b}from"./el-popper-DIiB8Y-M.js";import{E as O}from"./index-D0wqu88j.js";import{E as S}from"./index-6OTFNiIi.js";import{E as g,a as E}from"./el-select-dn4MhMwo.js";import{d as J,e as V,w as e,o as w,q as t,s as l,x as i,z as x,A as C}from"./index-CD29OCdJ.js";import"./el-tooltip-l0sNRNKZ.js";import"./el-scrollbar-YCRG1835.js";import"./el-tag-C4SnL2z_.js";import{P as U}from"./PageCard-Byh3epid.js";import{_ as y}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BEiueV6y.js";import"./_baseClone-Blem5BWg.js";import"./index-DpY84JwG.js";import"./index-BpugJXyE.js";import"./raf-DGtHIxe2.js";import"./index-C8FAS7l2.js";import"./vnode-_QM9LlTR.js";import"./index-D1b786GX.js";import"./scroll-D-TPweuo.js";import"./clamp-BfrLWns4.js";import"./toNumber-B6P5MqPp.js";import"./_baseIteratee-CuPmYyG4.js";import"./el-card-BvbOkvag.js";const F={class:"converter-panel"},L={class:"form-row"},T={class:"panel-footer"},B={class:"actions"},k=J({__name:"DataConvertView",setup(I){const a=x({outputName:"converted-data",encoding:"UTF-8"});function p(){C.info("当前仅完成界面设计,转换功能将在后续接入")}function d(){Object.assign(a,{outputName:"converted-data",encoding:"UTF-8"})}return(j,o)=>{const n=N,m=O,u=E,f=g,c=v,r=S,_=b;return w(),V(U,{class:"data-convert-page",title:"数据类型转换",subtitle:"将 JSON 文件转换为便于训练和评测使用的 JSONL 格式"},{default:e(()=>[t("div",F,[o[9]||(o[9]=t("div",{class:"panel-header"},[t("div",{class:"tool-icon","aria-hidden":"true"},[t("i",{class:"fa fa-exchange"})]),t("div",null,[t("h3",null,"JSON 转 JSONL"),t("p",null,"每条 JSON 数据将输出为 JSONL 文件中的一行记录")])],-1)),l(c,{class:"converter-form","label-position":"top"},{default:e(()=>[l(n,{label:"转换类型"},{default:e(()=>[...o[2]||(o[2]=[t("div",{class:"format-field","aria-label":"JSON 转 JSONL"},[t("span",null,"JSON"),t("i",{class:"fa fa-long-arrow-right","aria-hidden":"true"}),t("span",null,"JSONL")],-1)])]),_:1}),l(n,{label:"源文件",required:""},{default:e(()=>[t("button",{class:"upload-zone",type:"button",onClick:p},[...o[3]||(o[3]=[t("i",{class:"fa fa-cloud-upload","aria-hidden":"true"},null,-1),t("span",{class:"upload-content"},[t("strong",null,"点击选择或拖拽 JSON 文件到此处"),t("small",null,"仅支持 .json 格式,单文件不超过 200 MB")],-1),t("span",{class:"select-button"},"选择文件",-1)])])]),_:1}),t("div",L,[l(n,{label:"输出文件名"},{default:e(()=>[l(m,{modelValue:a.outputName,"onUpdate:modelValue":o[0]||(o[0]=s=>a.outputName=s)},{append:e(()=>[...o[4]||(o[4]=[i(".jsonl",-1)])]),_:1},8,["modelValue"])]),_:1}),l(n,{label:"字符编码"},{default:e(()=>[l(f,{modelValue:a.encoding,"onUpdate:modelValue":o[1]||(o[1]=s=>a.encoding=s),style:{width:"100%"}},{default:e(()=>[l(u,{label:"UTF-8",value:"UTF-8"})]),_:1},8,["modelValue"])]),_:1})]),o[5]||(o[5]=t("div",{class:"format-tip"},[t("i",{class:"fa fa-info-circle","aria-hidden":"true"}),t("span",null,"支持由 JSON 数组转换为 JSONL每个数组元素输出为一行。")],-1))]),_:1}),t("div",T,[o[8]||(o[8]=t("span",{class:"prototype-label"},"当前为 UI 原型,暂不执行实际转换",-1)),t("div",B,[l(r,{onClick:d},{default:e(()=>[...o[6]||(o[6]=[i("重置",-1)])]),_:1}),l(_,{content:"转换功能将在后续开发中接入",placement:"top"},{default:e(()=>[t("span",null,[l(r,{type:"primary",disabled:""},{default:e(()=>[...o[7]||(o[7]=[i("开始转换",-1)])]),_:1})])]),_:1})])])])]),_:1})}}}),it=y(k,[["__scopeId","data-v-fcb69543"]]);export{it as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
import{E as b}from"./index-DxH5-_w6.js";import{E as k}from"./el-tag-C2d1Zfbn.js";import{E as x}from"./el-table-B6qMxzT4.js";import{d as v,c as m,s as e,w as a,y as D,o as l,q as p,x as i,e as C,aa as n,A as E,v as T}from"./index-D5veDkuG.js";import"./el-checkbox-D6iLoXkw.js";import{D as z}from"./DataTablePage-C2qtw8vm.js";import{_ as B}from"./ModelStatusTag.vue_vue_type_script_setup_true_lang-CDqn2Ul4.js";import{_ as V}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-scrollbar-GFOwBTUz.js";import"./index-BT1A2I5c.js";import"./el-popper-DDJTxf27.js";import"./index-DmAaj_YO.js";import"./_baseClone-BuqHm105.js";import"./_baseIteratee-N-G7GeYE.js";import"./castArray-BDIbf8ih.js";import"./debounce-D3zKL4rk.js";import"./toNumber-a8w_gs0u.js";import"./raf-Dsox5IbR.js";import"./omit-DxQEBv1Z.js";import"./index-DbBHj60R.js";import"./index-DDY6aSpq.js";import"./el-card-DzhpMhms.js";import"./el-pagination-DeOi3r5c.js";import"./el-select-BQaRHu3V.js";import"./vnode-CYZHqsIy.js";import"./index-DbuKXJ7V.js";import"./scroll-DswMXu1y.js";import"./clamp-Ddg8_Yc2.js";import"./directive-BBfPDwlQ.js";import"./index-BMWxqs3c.js";import"./validator-CddYkkyy.js";import"./index-fqcbYM03.js";import"./index-BNyn2v9n.js";import"./el-tooltip-l0sNRNKZ.js";import"./status-Dl1fykxa.js";const L={class:"data-process-page",style:{height:"100%"}},N={key:1},I={class:"action-buttons"},P=v({__name:"DataProcessListView",setup(S){const u={structured:"结构化数据",unstructured:"非结构化数据",external:"外来数据源拉取"},d=T(),_=D([{id:183921,name:"客服问答数据清洗",status:"completed",process_type:"structured",source_dataset:"客服对话原始集",output_dataset:"客服对话清洗集",create_time:"2026-07-08 14:23:00"},{id:492015,name:"指令微调数据构造",status:"running",process_type:"unstructured",source_dataset:"通用语料库",output_dataset:"SFT 指令集",create_time:"2026-07-09 09:10:00"},{id:731948,name:"敏感信息脱敏处理",status:"pending",process_type:"structured",source_dataset:"用户反馈数据",create_time:"2026-07-09 16:45:00"},{id:582012,name:"多轮对话拼接",status:"failed",process_type:"structured",source_dataset:"单轮问答集",create_time:"2026-07-10 08:30:00"}]);function f(s){const r=s.id;d.push({name:"data-process-detail",params:{id:r}})}function g(s){E.info("删除功能开发中...")}function y(s){return s?new Date(s).toLocaleString("zh-CN",{hour12:!1}):"-"}return(s,r)=>{const o=x,h=k,c=b;return l(),m("div",L,[e(z,{title:"",data:_.value,searchable:"","search-fields":["name"],"create-text":"新建数据处理","create-to":"/data-process/create","row-key":"id","page-size":10},{columns:a(()=>[e(o,{label:"任务ID",prop:"id",align:"center",width:"100"}),e(o,{label:"任务名称",prop:"name",align:"center","show-overflow-tooltip":""}),e(o,{label:"任务状态",align:"center",width:"110"},{default:a(({row:t})=>[e(B,{status:t.status},null,8,["status"])]),_:1}),e(o,{label:"处理类型",align:"center",width:"140"},{default:a(({row:t})=>[t.process_type?(l(),C(h,{key:0,size:"small",type:"info",effect:"plain"},{default:a(()=>[i(n(u[t.process_type]||t.process_type),1)]),_:2},1024)):(l(),m("span",N,"-"))]),_:1}),e(o,{label:"源数据集",align:"center","show-overflow-tooltip":""},{default:a(({row:t})=>[i(n(t.source_dataset||"-"),1)]),_:1}),e(o,{label:"输出数据集",align:"center","show-overflow-tooltip":""},{default:a(({row:t})=>[i(n(t.output_dataset||"-"),1)]),_:1}),e(o,{label:"创建时间",align:"center",width:"190"},{default:a(({row:t})=>[i(n(y(t.create_time)),1)]),_:1})]),actions:a(({row:t})=>[p("div",I,[e(c,{type:"primary",link:"",size:"small",onClick:w=>f(t)},{default:a(()=>[...r[0]||(r[0]=[p("i",{class:"fa fa-file-text-o",style:{"margin-right":"4px"}},null,-1),i("详情 ",-1)])]),_:1},8,["onClick"]),e(c,{type:"danger",link:"",size:"small",onClick:w=>g(t)},{default:a(()=>[...r[1]||(r[1]=[p("i",{class:"fa fa-trash-o",style:{"margin-right":"4px"}},null,-1),i("删除 ",-1)])]),_:1},8,["onClick"])])]),_:1},8,["data"])])}}}),yt=V(P,[["__scopeId","data-v-c0da9336"]]);export{yt as default};

View File

@@ -0,0 +1 @@
import{E as B}from"./index-6OTFNiIi.js";import{E as C}from"./el-tag-C4SnL2z_.js";import{E as N}from"./el-table-CzpPw-qp.js";import{d as z,G as P,c as g,s as o,w as s,y as n,o as d,q as f,x as r,e as V,aa as c,A as I,v as L}from"./index-CD29OCdJ.js";import{E as M}from"./index-BpXxrg-6.js";import"./el-checkbox-Pnt9POcY.js";import{D as $}from"./DataTablePage-DQMBzHmK.js";import{_ as S}from"./ModelStatusTag.vue_vue_type_script_setup_true_lang-CBSAQmYm.js";import{g as q,d as A}from"./dataProcess-CvvVdP7v.js";import{_ as G}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-scrollbar-YCRG1835.js";import"./index-DpY84JwG.js";import"./el-popper-DIiB8Y-M.js";import"./index-BpugJXyE.js";import"./_baseClone-Blem5BWg.js";import"./_baseIteratee-CuPmYyG4.js";import"./castArray-BEiueV6y.js";import"./debounce-BCyqG5kC.js";import"./toNumber-B6P5MqPp.js";import"./raf-DGtHIxe2.js";import"./validator-BQ0LVwAS.js";import"./index-D9N-GMuA.js";import"./clamp-BfrLWns4.js";import"./index-roSlfP_P.js";import"./scroll-D-TPweuo.js";import"./index-D0wqu88j.js";import"./index-C8FAS7l2.js";import"./omit-9H73Nvwk.js";import"./el-card-BvbOkvag.js";import"./el-pagination-B1UdckVp.js";import"./el-select-dn4MhMwo.js";import"./vnode-_QM9LlTR.js";import"./index-D1b786GX.js";import"./directive-DsbMrhCX.js";import"./el-tooltip-l0sNRNKZ.js";import"./status-Dl1fykxa.js";const R={class:"data-process-page",style:{height:"100%"}},j={key:1},F={class:"action-buttons"},H=z({__name:"DataProcessListView",setup(J){const y={structured:"结构化数据",unstructured:"非结构化数据",external:"外来数据源拉取"},h=L(),l=n([]),p=n(!1),m=n(null),u=n("");async function v(t=!1){t||(p.value=!0),u.value="";try{const a=await q({page:1,page_size:200});l.value=a.items}catch{u.value="数据处理任务加载失败,请稍后重试。"}finally{t||(p.value=!1)}}function x(t){const a=t.id;h.push({name:"data-process-detail",params:{id:a}})}async function b(t){try{await M.confirm(`确定删除数据处理任务“${t.name}”吗?删除后无法恢复。`,"确认删除",{type:"warning",confirmButtonText:"删除",cancelButtonText:"取消",confirmButtonClass:"el-button--danger"})}catch{return}m.value=t.id;try{await A(t.id),l.value=l.value.filter(a=>a.id!==t.id),I.success("数据处理任务已删除")}catch{}finally{m.value=null}}function D(t){if(!t)return"-";const a=new Date(t);return Number.isNaN(a.getTime())?t:a.toLocaleString("zh-CN",{hour12:!1})}function k(t){return t.source_dataset_name||t.source_dataset||"-"}function w(t){return t.output_dataset_name||t.output_dataset||"-"}return P(v),(t,a)=>{const i=N,E=C,_=B;return d(),g("div",R,[o($,{title:"",data:l.value,loading:p.value,searchable:"","search-fields":["name"],"create-text":"新建数据处理","create-to":"/data-process/create","row-key":"id","page-size":10,"empty-text":u.value||"暂无数据处理任务"},{columns:s(()=>[o(i,{label:"任务ID",prop:"id",align:"center",width:"100"}),o(i,{label:"任务名称",prop:"name",align:"center","show-overflow-tooltip":""}),o(i,{label:"任务状态",align:"center",width:"110"},{default:s(({row:e})=>[o(S,{status:e.status},null,8,["status"])]),_:1}),o(i,{label:"处理类型",align:"center",width:"140"},{default:s(({row:e})=>[e.process_type?(d(),V(E,{key:0,size:"small",type:"info",effect:"plain"},{default:s(()=>[r(c(y[e.process_type]||e.process_type),1)]),_:2},1024)):(d(),g("span",j,"-"))]),_:1}),o(i,{label:"源数据集",align:"center","show-overflow-tooltip":""},{default:s(({row:e})=>[r(c(k(e)),1)]),_:1}),o(i,{label:"输出数据集",align:"center","show-overflow-tooltip":""},{default:s(({row:e})=>[r(c(w(e)),1)]),_:1}),o(i,{label:"创建时间",align:"center",width:"190"},{default:s(({row:e})=>[r(c(D(e.create_time||e.created_at)),1)]),_:1})]),actions:s(({row:e})=>[f("div",F,[o(_,{type:"primary",link:"",size:"small",onClick:T=>x(e)},{default:s(()=>[...a[0]||(a[0]=[f("i",{class:"fa fa-file-text-o",style:{"margin-right":"4px"}},null,-1),r("详情 ",-1)])]),_:1},8,["onClick"]),o(_,{type:"danger",link:"",size:"small",loading:m.value===e.id,onClick:T=>b(e)},{default:s(()=>[...a[1]||(a[1]=[f("i",{class:"fa fa-trash-o",style:{"margin-right":"4px"}},null,-1),r("删除 ",-1)])]),_:1},8,["loading","onClick"])])]),_:1},8,["data","loading","empty-text"])])}}}),Ct=G(H,[["__scopeId","data-v-8a132c68"]]);export{Ct as default};

View File

@@ -0,0 +1 @@
.action-buttons[data-v-8a132c68]{display:flex;justify-content:center;gap:8px}

View File

@@ -1 +0,0 @@
.action-buttons[data-v-c0da9336]{display:flex;justify-content:center;gap:8px}

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{E as z}from"./index-DxH5-_w6.js";import{E}from"./el-tag-C2d1Zfbn.js";import{E as T}from"./el-table-B6qMxzT4.js";import{d as L,G as A,e as k,w as e,y as f,j as V,o as y,q as r,s as l,x as s,g as $,aa as p,f as b,aY as B,aZ as N,n as w,v as P,A as S}from"./index-D5veDkuG.js";import"./el-checkbox-D6iLoXkw.js";import{D as M}from"./DataTablePage-C2qtw8vm.js";import{g as R,d as G,a as I}from"./dataset-BvcQX9QF.js";import{_ as Y}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-scrollbar-GFOwBTUz.js";import"./index-BT1A2I5c.js";import"./el-popper-DDJTxf27.js";import"./index-DmAaj_YO.js";import"./_baseClone-BuqHm105.js";import"./_baseIteratee-N-G7GeYE.js";import"./castArray-BDIbf8ih.js";import"./debounce-D3zKL4rk.js";import"./toNumber-a8w_gs0u.js";import"./raf-Dsox5IbR.js";import"./omit-DxQEBv1Z.js";import"./index-DbBHj60R.js";import"./index-DDY6aSpq.js";import"./el-card-DzhpMhms.js";import"./el-pagination-DeOi3r5c.js";import"./el-select-BQaRHu3V.js";import"./vnode-CYZHqsIy.js";import"./index-DbuKXJ7V.js";import"./scroll-DswMXu1y.js";import"./clamp-Ddg8_Yc2.js";import"./directive-BBfPDwlQ.js";import"./index-BMWxqs3c.js";import"./validator-CddYkkyy.js";import"./index-fqcbYM03.js";import"./index-BNyn2v9n.js";import"./el-tooltip-l0sNRNKZ.js";const j={class:"capsule-tabs"},q={class:"action-buttons"},O=L({__name:"DatasetListView",setup(U){const C=P(),d=f(!1),c=f([]),n=f("upload"),D=V(()=>n.value==="task"?c.value.filter(i=>i.source==="task"):c.value.filter(i=>i.source!=="task"));async function m(){d.value=!0;try{c.value=await R()||[]}catch{}finally{d.value=!1}}async function _(i){await G(i.id),c.value=c.value.filter(a=>a.id!==i.id),await m(),S.success("删除成功")}function h(i){C.push(`/dataset/${i.id}/preview`)}function x(i){window.open(I(i.id),"_blank")}return A(m),(i,a)=>{const o=T,v=E,u=z;return y(),k(M,{title:"数据集管理",data:D.value,loading:d.value,searchable:"","search-fields":["name","description"],"create-text":n.value==="upload"?"上传数据集":"","create-to":"/dataset/create","delete-fn":_,"row-key":"id",onRefresh:m},{title:e(()=>[r("div",j,[r("button",{class:w(["capsule-tab-item",{active:n.value==="upload"}]),onClick:a[0]||(a[0]=t=>n.value="upload")}," 上传任务 ",2),r("button",{class:w(["capsule-tab-item",{active:n.value==="task"}]),onClick:a[1]||(a[1]=t=>n.value="task")}," 数据任务 ",2)])]),columns:e(()=>[n.value==="task"?(y(),k(o,{key:0,label:"任务ID",prop:"task_id",align:"center",width:"100"})):$("",!0),l(o,{label:"数据集名称",prop:"name",align:"center"}),l(o,{label:"数据类型",align:"center",width:"110"},{default:e(({row:t})=>[l(v,{type:"primary",size:"small"},{default:e(()=>[s(p(b(B)[String(t.type).toLowerCase()]||t.type||"-"),1)]),_:2},1024)]),_:1}),l(o,{label:"存储位置",align:"center",width:"110"},{default:e(({row:t})=>[l(v,{type:"success",size:"small"},{default:e(()=>[s(p(b(N)[t.storage_type]||t.storage_type||"-"),1)]),_:2},1024)]),_:1}),l(o,{label:"大小",align:"center",width:"100"},{default:e(({row:t})=>[s(p(t.size&&t.size!=="0 B"&&t.size!=="0"?t.size:"-"),1)]),_:1}),l(o,{label:"数据条数",align:"center",width:"100"},{default:e(({row:t})=>[s(p(t.count||0),1)]),_:1}),l(o,{label:"描述",align:"center","show-overflow-tooltip":""},{default:e(({row:t})=>[s(p(t.description||"-"),1)]),_:1}),l(o,{label:"创建时间",align:"center",width:"180"},{default:e(({row:t})=>[s(p(t.create_time?new Date(t.create_time).toLocaleString("zh-CN"):"-"),1)]),_:1})]),actions:e(({row:t})=>[r("div",q,[l(u,{type:"primary",link:"",size:"small",onClick:g=>h(t)},{default:e(()=>[...a[2]||(a[2]=[r("i",{class:"fa fa-eye",style:{"margin-right":"4px"}},null,-1),s("详情 ",-1)])]),_:1},8,["onClick"]),l(u,{type:"success",link:"",size:"small",onClick:g=>x(t)},{default:e(()=>[...a[3]||(a[3]=[r("i",{class:"fa fa-download",style:{"margin-right":"4px"}},null,-1),s("下载 ",-1)])]),_:1},8,["onClick"]),l(u,{type:"danger",link:"",size:"small",onClick:g=>_(t)},{default:e(()=>[...a[4]||(a[4]=[r("i",{class:"fa fa-trash-o",style:{"margin-right":"4px"}},null,-1),s("删除 ",-1)])]),_:1},8,["onClick"])])]),_:1},8,["data","loading","create-text"])}}}),zt=Y(O,[["__scopeId","data-v-e406ac6d"]]);export{zt as default}; import{E as z}from"./index-6OTFNiIi.js";import{E}from"./el-tag-C4SnL2z_.js";import{E as T}from"./el-table-CzpPw-qp.js";import{d as L,G as A,e as k,w as e,y as f,j as V,o as y,q as r,s as l,x as s,g as $,aa as p,f as b,aY as B,aZ as N,n as w,v as P,A as S}from"./index-CD29OCdJ.js";import"./el-checkbox-Pnt9POcY.js";import{D as M}from"./DataTablePage-DQMBzHmK.js";import{g as R,d as G,a as I}from"./dataset-C17jngxQ.js";import{_ as Y}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-scrollbar-YCRG1835.js";import"./index-DpY84JwG.js";import"./el-popper-DIiB8Y-M.js";import"./index-BpugJXyE.js";import"./_baseClone-Blem5BWg.js";import"./_baseIteratee-CuPmYyG4.js";import"./castArray-BEiueV6y.js";import"./debounce-BCyqG5kC.js";import"./toNumber-B6P5MqPp.js";import"./raf-DGtHIxe2.js";import"./omit-9H73Nvwk.js";import"./index-D0wqu88j.js";import"./index-C8FAS7l2.js";import"./el-card-BvbOkvag.js";import"./el-pagination-B1UdckVp.js";import"./el-select-dn4MhMwo.js";import"./vnode-_QM9LlTR.js";import"./index-D1b786GX.js";import"./scroll-D-TPweuo.js";import"./clamp-BfrLWns4.js";import"./directive-DsbMrhCX.js";import"./index-BpXxrg-6.js";import"./validator-BQ0LVwAS.js";import"./index-D9N-GMuA.js";import"./index-roSlfP_P.js";import"./el-tooltip-l0sNRNKZ.js";const j={class:"capsule-tabs"},q={class:"action-buttons"},O=L({__name:"DatasetListView",setup(U){const C=P(),d=f(!1),c=f([]),n=f("upload"),D=V(()=>n.value==="task"?c.value.filter(i=>i.source==="task"):c.value.filter(i=>i.source!=="task"));async function m(){d.value=!0;try{c.value=await R()||[]}catch{}finally{d.value=!1}}async function _(i){await G(i.id),c.value=c.value.filter(a=>a.id!==i.id),await m(),S.success("删除成功")}function h(i){C.push(`/dataset/${i.id}/preview`)}function x(i){window.open(I(i.id),"_blank")}return A(m),(i,a)=>{const o=T,v=E,u=z;return y(),k(M,{title:"数据集管理",data:D.value,loading:d.value,searchable:"","search-fields":["name","description"],"create-text":n.value==="upload"?"上传数据集":"","create-to":"/dataset/create","delete-fn":_,"row-key":"id",onRefresh:m},{title:e(()=>[r("div",j,[r("button",{class:w(["capsule-tab-item",{active:n.value==="upload"}]),onClick:a[0]||(a[0]=t=>n.value="upload")}," 上传任务 ",2),r("button",{class:w(["capsule-tab-item",{active:n.value==="task"}]),onClick:a[1]||(a[1]=t=>n.value="task")}," 数据任务 ",2)])]),columns:e(()=>[n.value==="task"?(y(),k(o,{key:0,label:"任务ID",prop:"task_id",align:"center",width:"100"})):$("",!0),l(o,{label:"数据集名称",prop:"name",align:"center"}),l(o,{label:"数据类型",align:"center",width:"110"},{default:e(({row:t})=>[l(v,{type:"primary",size:"small"},{default:e(()=>[s(p(b(B)[String(t.type).toLowerCase()]||t.type||"-"),1)]),_:2},1024)]),_:1}),l(o,{label:"存储位置",align:"center",width:"110"},{default:e(({row:t})=>[l(v,{type:"success",size:"small"},{default:e(()=>[s(p(b(N)[t.storage_type]||t.storage_type||"-"),1)]),_:2},1024)]),_:1}),l(o,{label:"大小",align:"center",width:"100"},{default:e(({row:t})=>[s(p(t.size&&t.size!=="0 B"&&t.size!=="0"?t.size:"-"),1)]),_:1}),l(o,{label:"数据条数",align:"center",width:"100"},{default:e(({row:t})=>[s(p(t.count||0),1)]),_:1}),l(o,{label:"描述",align:"center","show-overflow-tooltip":""},{default:e(({row:t})=>[s(p(t.description||"-"),1)]),_:1}),l(o,{label:"创建时间",align:"center",width:"180"},{default:e(({row:t})=>[s(p(t.create_time?new Date(t.create_time).toLocaleString("zh-CN"):"-"),1)]),_:1})]),actions:e(({row:t})=>[r("div",q,[l(u,{type:"primary",link:"",size:"small",onClick:g=>h(t)},{default:e(()=>[...a[2]||(a[2]=[r("i",{class:"fa fa-eye",style:{"margin-right":"4px"}},null,-1),s("详情 ",-1)])]),_:1},8,["onClick"]),l(u,{type:"success",link:"",size:"small",onClick:g=>x(t)},{default:e(()=>[...a[3]||(a[3]=[r("i",{class:"fa fa-download",style:{"margin-right":"4px"}},null,-1),s("下载 ",-1)])]),_:1},8,["onClick"]),l(u,{type:"danger",link:"",size:"small",onClick:g=>_(t)},{default:e(()=>[...a[4]||(a[4]=[r("i",{class:"fa fa-trash-o",style:{"margin-right":"4px"}},null,-1),s("删除 ",-1)])]),_:1},8,["onClick"])])]),_:1},8,["data","loading","create-text"])}}}),zt=Y(O,[["__scopeId","data-v-e406ac6d"]]);export{zt as default};

View File

@@ -1 +1 @@
import{a as k,E as M}from"./el-form-item-rya6onmd.js";import{E as q}from"./index-DbBHj60R.js";import{E as R}from"./index-DxH5-_w6.js";import{d as S,G as B,e as F,w as i,j as y,y as _,z as I,o as O,s as r,f as m,aB as P,x as h,aa as j,A as x,v as A,ac as L}from"./index-D5veDkuG.js";import{P as N}from"./PageCard-DFGMy1ik.js";import{E as T,D as U}from"./DimensionFormFields-CNtVeJ2J.js";import{b as z,u as G,c as H}from"./eval-DOmZ1wrg.js";import{g as J}from"./model-Do_d1nlo.js";import"./castArray-BDIbf8ih.js";import"./_baseClone-BuqHm105.js";import"./raf-Dsox5IbR.js";import"./index-DDY6aSpq.js";import"./index-BT1A2I5c.js";import"./el-card-DzhpMhms.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-select-BQaRHu3V.js";import"./index-DmAaj_YO.js";import"./vnode-CYZHqsIy.js";import"./el-popper-DDJTxf27.js";import"./el-scrollbar-GFOwBTUz.js";import"./index-DbuKXJ7V.js";import"./el-tag-C2d1Zfbn.js";import"./scroll-DswMXu1y.js";import"./clamp-Ddg8_Yc2.js";import"./toNumber-a8w_gs0u.js";import"./_baseIteratee-N-G7GeYE.js";import"./el-checkbox-D6iLoXkw.js";import"./omit-DxQEBv1Z.js";import"./el-radio-group-HDdMmxmO.js";import"./el-input-number-Cs1MXSA_.js";import"./index-APLq0PKf.js";import"./el-slider-pAA0AhdE.js";import"./debounce-D3zKL4rk.js";import"./el-switch-DCvDahA2.js";import"./validator-CddYkkyy.js";import"./el-tooltip-l0sNRNKZ.js";/* empty css */const Se=S({__name:"DimensionCreateView",setup(K){const c=L(),f=A(),n=_(),p=_(!1),u=y(()=>!!c.params.id),s=y(()=>c.params.id),d=_([]);let e=I({name:"",type:"",description:"",eval_model:"",eval_method:"",eval_prompt:"",is_active:!0,is_default:!1,bleu_n:1,output_precision:3,score_min:0,score_max:5,pass_threshold:3});const b={name:[{required:!0,message:"请输入维度名称",trigger:"blur"},{max:50,message:"不超过 50 字符",trigger:"blur"}],type:[{required:!0,message:"请选择指标类型",trigger:"change"}],eval_model:[{required:!0,message:"请选择大模型",trigger:"change"}],eval_method:[{required:!0,message:"请选择评估方式",trigger:"change"}],eval_prompt:[{required:!0,message:"请填写评估 Prompt",trigger:"blur"}]};async function w(){var o,t;if(s.value)try{const a=await z(s.value);Object.assign(e,{name:a.name||"",type:a.type||"",description:a.description||"",eval_model:a.eval_model||"",eval_method:a.eval_method||(a.type?(t=(o=T[a.type])==null?void 0:o[0])==null?void 0:t.value:""),eval_prompt:a.eval_prompt||"",is_active:a.is_active!==!1,is_default:!!a.is_default,bleu_n:a.bleu_n??1,output_precision:a.output_precision??3,score_min:a.score_min??0,score_max:a.score_max??5,pass_threshold:a.pass_threshold??3})}catch{}}async function E(){try{const o=await J()||[];d.value=o.filter(t=>t.purpose==="evaluation")}catch{d.value=[]}}async function D(){n.value&&await n.value.validate(async o=>{if(o){p.value=!0;try{const t={name:e.name,type:e.type,description:e.description,eval_model:e.type==="text_similarity"?null:e.eval_model,eval_method:e.eval_method,eval_prompt:e.type==="text_similarity"?null:e.eval_prompt,is_active:e.is_active,is_default:e.is_default,create_time:new Date().toISOString()};e.type==="text_similarity"&&(t.bleu_n=e.bleu_n,t.output_precision=e.output_precision),e.type==="metric"&&(t.score_min=e.score_min,t.score_max=e.score_max,t.pass_threshold=e.pass_threshold),u.value&&s.value?(await G(s.value,t),x.success("更新成功")):(await H(t),x.success("创建成功")),f.push("/model-eval")}catch{}finally{p.value=!1}}})}function V(){f.back()}return B(()=>{E(),w()}),(o,t)=>{const a=q,v=k,g=R,C=M;return O(),F(N,{title:u.value?"编辑评测维度":"添加评测维度"},{default:i(()=>[r(C,{ref_key:"formRef",ref:n,model:m(e),rules:b,"label-width":"130px",style:{"max-width":"760px"}},{default:i(()=>[r(v,{label:"维度名称",prop:"name"},{default:i(()=>[r(a,{modelValue:m(e).name,"onUpdate:modelValue":t[0]||(t[0]=l=>m(e).name=l),placeholder:"请输入维度名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),r(U,{modelValue:m(e),"onUpdate:modelValue":t[1]||(t[1]=l=>P(e)?e.value=l:e=l),"eval-models":d.value},null,8,["modelValue","eval-models"]),r(v,null,{default:i(()=>[r(g,{type:"primary",loading:p.value,onClick:D},{default:i(()=>[h(j(u.value?"保存":"创建"),1)]),_:1},8,["loading"]),r(g,{onClick:V},{default:i(()=>[...t[2]||(t[2]=[h("取消",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])}}});export{Se as default}; import{a as k,E as M}from"./el-form-item--AdlsBF7.js";import{E as q}from"./index-D0wqu88j.js";import{E as R}from"./index-6OTFNiIi.js";import{d as S,G as B,e as F,w as i,j as y,y as _,z as I,o as O,s as r,f as m,aB as P,x as h,aa as j,A as x,v as A,ac as L}from"./index-CD29OCdJ.js";import{P as N}from"./PageCard-Byh3epid.js";import{E as T,D as U}from"./DimensionFormFields-BI47UlOW.js";import{b as z,u as G,c as H}from"./eval-DOgh3EN6.js";import{g as J}from"./model-e1J4FzWC.js";import"./castArray-BEiueV6y.js";import"./_baseClone-Blem5BWg.js";import"./raf-DGtHIxe2.js";import"./index-C8FAS7l2.js";import"./index-DpY84JwG.js";import"./el-card-BvbOkvag.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-select-dn4MhMwo.js";import"./index-BpugJXyE.js";import"./vnode-_QM9LlTR.js";import"./el-popper-DIiB8Y-M.js";import"./el-scrollbar-YCRG1835.js";import"./index-D1b786GX.js";import"./el-tag-C4SnL2z_.js";import"./scroll-D-TPweuo.js";import"./clamp-BfrLWns4.js";import"./toNumber-B6P5MqPp.js";import"./_baseIteratee-CuPmYyG4.js";import"./el-checkbox-Pnt9POcY.js";import"./omit-9H73Nvwk.js";import"./el-radio-group-11DJtD5j.js";import"./el-input-number-CUR6qfYr.js";import"./index-sBiRi5wE.js";import"./el-slider-D0ESR8FK.js";import"./debounce-BCyqG5kC.js";import"./el-switch-4ONH-tca.js";import"./validator-BQ0LVwAS.js";import"./el-tooltip-l0sNRNKZ.js";/* empty css */const Se=S({__name:"DimensionCreateView",setup(K){const c=L(),f=A(),n=_(),p=_(!1),u=y(()=>!!c.params.id),s=y(()=>c.params.id),d=_([]);let e=I({name:"",type:"",description:"",eval_model:"",eval_method:"",eval_prompt:"",is_active:!0,is_default:!1,bleu_n:1,output_precision:3,score_min:0,score_max:5,pass_threshold:3});const b={name:[{required:!0,message:"请输入维度名称",trigger:"blur"},{max:50,message:"不超过 50 字符",trigger:"blur"}],type:[{required:!0,message:"请选择指标类型",trigger:"change"}],eval_model:[{required:!0,message:"请选择大模型",trigger:"change"}],eval_method:[{required:!0,message:"请选择评估方式",trigger:"change"}],eval_prompt:[{required:!0,message:"请填写评估 Prompt",trigger:"blur"}]};async function w(){var o,t;if(s.value)try{const a=await z(s.value);Object.assign(e,{name:a.name||"",type:a.type||"",description:a.description||"",eval_model:a.eval_model||"",eval_method:a.eval_method||(a.type?(t=(o=T[a.type])==null?void 0:o[0])==null?void 0:t.value:""),eval_prompt:a.eval_prompt||"",is_active:a.is_active!==!1,is_default:!!a.is_default,bleu_n:a.bleu_n??1,output_precision:a.output_precision??3,score_min:a.score_min??0,score_max:a.score_max??5,pass_threshold:a.pass_threshold??3})}catch{}}async function E(){try{const o=await J()||[];d.value=o.filter(t=>t.purpose==="evaluation")}catch{d.value=[]}}async function D(){n.value&&await n.value.validate(async o=>{if(o){p.value=!0;try{const t={name:e.name,type:e.type,description:e.description,eval_model:e.type==="text_similarity"?null:e.eval_model,eval_method:e.eval_method,eval_prompt:e.type==="text_similarity"?null:e.eval_prompt,is_active:e.is_active,is_default:e.is_default,create_time:new Date().toISOString()};e.type==="text_similarity"&&(t.bleu_n=e.bleu_n,t.output_precision=e.output_precision),e.type==="metric"&&(t.score_min=e.score_min,t.score_max=e.score_max,t.pass_threshold=e.pass_threshold),u.value&&s.value?(await G(s.value,t),x.success("更新成功")):(await H(t),x.success("创建成功")),f.push("/model-eval")}catch{}finally{p.value=!1}}})}function V(){f.back()}return B(()=>{E(),w()}),(o,t)=>{const a=q,v=k,g=R,C=M;return O(),F(N,{title:u.value?"编辑评测维度":"添加评测维度"},{default:i(()=>[r(C,{ref_key:"formRef",ref:n,model:m(e),rules:b,"label-width":"130px",style:{"max-width":"760px"}},{default:i(()=>[r(v,{label:"维度名称",prop:"name"},{default:i(()=>[r(a,{modelValue:m(e).name,"onUpdate:modelValue":t[0]||(t[0]=l=>m(e).name=l),placeholder:"请输入维度名称",maxlength:"50","show-word-limit":""},null,8,["modelValue"])]),_:1}),r(U,{modelValue:m(e),"onUpdate:modelValue":t[1]||(t[1]=l=>P(e)?e.value=l:e=l),"eval-models":d.value},null,8,["modelValue","eval-models"]),r(v,null,{default:i(()=>[r(g,{type:"primary",loading:p.value,onClick:D},{default:i(()=>[h(j(u.value?"保存":"创建"),1)]),_:1},8,["loading"]),r(g,{onClick:V},{default:i(()=>[...t[2]||(t[2]=[h("取消",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])}}});export{Se as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{E as V}from"./index-DxH5-_w6.js";import{E as $}from"./el-table-B6qMxzT4.js";import{d as B,G as D,c as T,e as _,w as o,g as C,y as p,o as v,s as a,q as i,x as f,aa as L,n as c,v as N,A as z}from"./index-D5veDkuG.js";import{E as M}from"./index-BMWxqs3c.js";import"./el-tag-C2d1Zfbn.js";import"./el-checkbox-D6iLoXkw.js";import{D as y}from"./DataTablePage-C2qtw8vm.js";import{_ as A}from"./ModelStatusTag.vue_vue_type_script_setup_true_lang-CDqn2Ul4.js";import{g as G,d as P}from"./eval-DOmZ1wrg.js";import{_ as R}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-scrollbar-GFOwBTUz.js";import"./index-BT1A2I5c.js";import"./el-popper-DDJTxf27.js";import"./index-DmAaj_YO.js";import"./_baseClone-BuqHm105.js";import"./_baseIteratee-N-G7GeYE.js";import"./castArray-BDIbf8ih.js";import"./debounce-D3zKL4rk.js";import"./toNumber-a8w_gs0u.js";import"./raf-Dsox5IbR.js";import"./validator-CddYkkyy.js";import"./index-fqcbYM03.js";import"./clamp-Ddg8_Yc2.js";import"./index-BNyn2v9n.js";import"./scroll-DswMXu1y.js";import"./index-DbBHj60R.js";import"./index-DDY6aSpq.js";import"./omit-DxQEBv1Z.js";import"./el-card-DzhpMhms.js";import"./el-pagination-DeOi3r5c.js";import"./el-select-BQaRHu3V.js";import"./vnode-CYZHqsIy.js";import"./index-DbuKXJ7V.js";import"./directive-BBfPDwlQ.js";import"./el-tooltip-l0sNRNKZ.js";import"./status-Dl1fykxa.js";const S={class:"eval-page"},q={class:"capsule-tabs"},I={class:"capsule-tabs"},Q=B({__name:"EvalView",setup(j){const b=N(),s=p("tasks"),d=p(!1),n=p([]),w=p([{rank:1,name:"GPT-4",score:92.5},{rank:2,name:"Claude-3",score:90.1},{rank:3,name:"Qwen-Max",score:85.3}]);async function u(){d.value=!0;try{n.value=await G()||[]}catch{n.value=[]}finally{d.value=!1}}async function k(r){await M.confirm("确定要删除这个评测任务吗?","确认删除",{type:"warning"}),await P(r.id),n.value=n.value.filter(e=>e.id!==r.id),z.success("删除成功"),await u()}function E(){b.push("/model-eval/create")}function m(r){return s.value===r}function x(r){b.push({name:"model-eval-detail",params:{id:r.id}})}return D(()=>{u()}),(r,e)=>{const l=$,g=V;return v(),T("div",S,[s.value==="tasks"?(v(),_(y,{key:0,title:"",data:n.value,loading:d.value,"delete-fn":k,"create-text":"创建评测任务",onCreate:E,"row-key":"id",onRefresh:u},{title:o(()=>[i("div",q,[i("button",{class:c(["capsule-tab-item",{active:m("tasks")}]),onClick:e[0]||(e[0]=t=>s.value="tasks")},"评测任务",2),i("button",{class:c(["capsule-tab-item",{active:m("leaderboard")}]),onClick:e[1]||(e[1]=t=>s.value="leaderboard")},"排行榜",2)])]),columns:o(()=>[a(l,{label:"任务名称",prop:"eval_task_name",align:"center"}),a(l,{label:"评测模型",prop:"model_name",align:"center"}),a(l,{label:"数据集",prop:"dataset",align:"center"}),a(l,{label:"指标",prop:"metric",align:"center"}),a(l,{label:"评分",prop:"score",width:"100",align:"center"}),a(l,{label:"状态",width:"100",align:"center"},{default:o(({row:t})=>[a(A,{status:t.status},null,8,["status"])]),_:1}),a(l,{label:"创建时间",align:"center",width:"180"},{default:o(({row:t})=>[f(L(t.create_time?new Date(t.create_time).toLocaleString("zh-CN"):"-"),1)]),_:1})]),actions:o(({row:t})=>[a(g,{link:"",type:"primary",size:"small",onClick:h=>x(t)},{default:o(()=>[...e[4]||(e[4]=[i("i",{class:"fa fa-file-text-o",style:{"margin-right":"4px"}},null,-1),f("详情 ",-1)])]),_:1},8,["onClick"]),a(g,{link:"",type:"danger",size:"small",onClick:h=>k(t)},{default:o(()=>[...e[5]||(e[5]=[i("i",{class:"fa fa-trash-o",style:{"margin-right":"4px"}},null,-1),f("删除 ",-1)])]),_:1},8,["onClick"])]),_:1},8,["data","loading"])):C("",!0),s.value==="leaderboard"?(v(),_(y,{key:1,title:"",data:w.value,"row-key":"rank"},{title:o(()=>[i("div",I,[i("button",{class:c(["capsule-tab-item",{active:m("tasks")}]),onClick:e[2]||(e[2]=t=>s.value="tasks")},"评测任务",2),i("button",{class:c(["capsule-tab-item",{active:m("leaderboard")}]),onClick:e[3]||(e[3]=t=>s.value="leaderboard")},"排行榜",2)])]),columns:o(()=>[a(l,{label:"排名",prop:"rank",width:"80",align:"center"}),a(l,{label:"模型名称",prop:"name",align:"center"}),a(l,{label:"综合评分",prop:"score",align:"center"})]),_:1},8,["data"])):C("",!0)])}}}),Ve=R(Q,[["__scopeId","data-v-a44eaeff"]]);export{Ve as default}; import{E as V}from"./index-6OTFNiIi.js";import{E as $}from"./el-table-CzpPw-qp.js";import{d as B,G as D,c as T,e as _,w as o,g as C,y as p,o as v,s as a,q as i,x as f,aa as L,n as c,v as N,A as z}from"./index-CD29OCdJ.js";import{E as M}from"./index-BpXxrg-6.js";import"./el-tag-C4SnL2z_.js";import"./el-checkbox-Pnt9POcY.js";import{D as y}from"./DataTablePage-DQMBzHmK.js";import{_ as A}from"./ModelStatusTag.vue_vue_type_script_setup_true_lang-CBSAQmYm.js";import{g as G,d as P}from"./eval-DOgh3EN6.js";import{_ as R}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./el-scrollbar-YCRG1835.js";import"./index-DpY84JwG.js";import"./el-popper-DIiB8Y-M.js";import"./index-BpugJXyE.js";import"./_baseClone-Blem5BWg.js";import"./_baseIteratee-CuPmYyG4.js";import"./castArray-BEiueV6y.js";import"./debounce-BCyqG5kC.js";import"./toNumber-B6P5MqPp.js";import"./raf-DGtHIxe2.js";import"./validator-BQ0LVwAS.js";import"./index-D9N-GMuA.js";import"./clamp-BfrLWns4.js";import"./index-roSlfP_P.js";import"./scroll-D-TPweuo.js";import"./index-D0wqu88j.js";import"./index-C8FAS7l2.js";import"./omit-9H73Nvwk.js";import"./el-card-BvbOkvag.js";import"./el-pagination-B1UdckVp.js";import"./el-select-dn4MhMwo.js";import"./vnode-_QM9LlTR.js";import"./index-D1b786GX.js";import"./directive-DsbMrhCX.js";import"./el-tooltip-l0sNRNKZ.js";import"./status-Dl1fykxa.js";const S={class:"eval-page"},q={class:"capsule-tabs"},I={class:"capsule-tabs"},Q=B({__name:"EvalView",setup(j){const b=N(),s=p("tasks"),d=p(!1),n=p([]),w=p([{rank:1,name:"GPT-4",score:92.5},{rank:2,name:"Claude-3",score:90.1},{rank:3,name:"Qwen-Max",score:85.3}]);async function u(){d.value=!0;try{n.value=await G()||[]}catch{n.value=[]}finally{d.value=!1}}async function k(r){await M.confirm("确定要删除这个评测任务吗?","确认删除",{type:"warning"}),await P(r.id),n.value=n.value.filter(e=>e.id!==r.id),z.success("删除成功"),await u()}function E(){b.push("/model-eval/create")}function m(r){return s.value===r}function x(r){b.push({name:"model-eval-detail",params:{id:r.id}})}return D(()=>{u()}),(r,e)=>{const l=$,g=V;return v(),T("div",S,[s.value==="tasks"?(v(),_(y,{key:0,title:"",data:n.value,loading:d.value,"delete-fn":k,"create-text":"创建评测任务",onCreate:E,"row-key":"id",onRefresh:u},{title:o(()=>[i("div",q,[i("button",{class:c(["capsule-tab-item",{active:m("tasks")}]),onClick:e[0]||(e[0]=t=>s.value="tasks")},"评测任务",2),i("button",{class:c(["capsule-tab-item",{active:m("leaderboard")}]),onClick:e[1]||(e[1]=t=>s.value="leaderboard")},"排行榜",2)])]),columns:o(()=>[a(l,{label:"任务名称",prop:"eval_task_name",align:"center"}),a(l,{label:"评测模型",prop:"model_name",align:"center"}),a(l,{label:"数据集",prop:"dataset",align:"center"}),a(l,{label:"指标",prop:"metric",align:"center"}),a(l,{label:"评分",prop:"score",width:"100",align:"center"}),a(l,{label:"状态",width:"100",align:"center"},{default:o(({row:t})=>[a(A,{status:t.status},null,8,["status"])]),_:1}),a(l,{label:"创建时间",align:"center",width:"180"},{default:o(({row:t})=>[f(L(t.create_time?new Date(t.create_time).toLocaleString("zh-CN"):"-"),1)]),_:1})]),actions:o(({row:t})=>[a(g,{link:"",type:"primary",size:"small",onClick:h=>x(t)},{default:o(()=>[...e[4]||(e[4]=[i("i",{class:"fa fa-file-text-o",style:{"margin-right":"4px"}},null,-1),f("详情 ",-1)])]),_:1},8,["onClick"]),a(g,{link:"",type:"danger",size:"small",onClick:h=>k(t)},{default:o(()=>[...e[5]||(e[5]=[i("i",{class:"fa fa-trash-o",style:{"margin-right":"4px"}},null,-1),f("删除 ",-1)])]),_:1},8,["onClick"])]),_:1},8,["data","loading"])):C("",!0),s.value==="leaderboard"?(v(),_(y,{key:1,title:"",data:w.value,"row-key":"rank"},{title:o(()=>[i("div",I,[i("button",{class:c(["capsule-tab-item",{active:m("tasks")}]),onClick:e[2]||(e[2]=t=>s.value="tasks")},"评测任务",2),i("button",{class:c(["capsule-tab-item",{active:m("leaderboard")}]),onClick:e[3]||(e[3]=t=>s.value="leaderboard")},"排行榜",2)])]),columns:o(()=>[a(l,{label:"排名",prop:"rank",width:"80",align:"center"}),a(l,{label:"模型名称",prop:"name",align:"center"}),a(l,{label:"综合评分",prop:"score",align:"center"})]),_:1},8,["data"])):C("",!0)])}}}),Ve=R(Q,[["__scopeId","data-v-a44eaeff"]]);export{Ve as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{_ as s}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as t,c,q as o}from"./index-D5veDkuG.js";const n={},r={class:"simple-page"};function a(_,e){return t(),c("section",r,[...e[0]||(e[0]=[o("h1",null,"使用文档",-1),o("p",null,"第一版系统已接入后端、数据集、模型、微调任务、算力节点和训练日志主链路。",-1)])])}const p=s(n,[["render",a],["__scopeId","data-v-87551c13"]]);export{p as default}; import{_ as s}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as t,c,q as o}from"./index-CD29OCdJ.js";const n={},r={class:"simple-page"};function a(_,e){return t(),c("section",r,[...e[0]||(e[0]=[o("h1",null,"使用文档",-1),o("p",null,"第一版系统已接入后端、数据集、模型、微调任务、算力节点和训练日志主链路。",-1)])])}const p=s(n,[["render",a],["__scopeId","data-v-87551c13"]]);export{p as default};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{E as T}from"./el-alert-DhjRMRnp.js";import{a as A,E as D}from"./el-form-item-rya6onmd.js";import{E as L}from"./index-DbBHj60R.js";import{E as j}from"./index-DxH5-_w6.js";import{E as z,b as H,a as J}from"./el-select-BQaRHu3V.js";import{E as K}from"./el-divider-CsS5KGIs.js";import{d as Q,G as W,e as i,w as o,at as X,y as u,z as Y,o as s,s as a,x as b,c as v,ad as k,M as w,g as Z,j as p,A as B,v as ee}from"./index-D5veDkuG.js";import"./el-scrollbar-GFOwBTUz.js";import"./el-popper-DDJTxf27.js";import"./el-tag-C2d1Zfbn.js";import{P as te}from"./PageCard-DFGMy1ik.js";import{g as le,a as ae}from"./model-Do_d1nlo.js";import"./vnode-CYZHqsIy.js";import"./castArray-BDIbf8ih.js";import"./_baseClone-BuqHm105.js";import"./raf-Dsox5IbR.js";import"./index-DDY6aSpq.js";import"./index-BT1A2I5c.js";import"./index-DmAaj_YO.js";import"./index-DbuKXJ7V.js";import"./scroll-DswMXu1y.js";import"./clamp-Ddg8_Yc2.js";import"./toNumber-a8w_gs0u.js";import"./_baseIteratee-N-G7GeYE.js";import"./el-card-DzhpMhms.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const Ge=Q({__name:"InferenceCreateView",setup(oe){const E=ee(),f=u(),c=u(!1),m=u(""),V=u([]),h=u([]),_=u([]),x=p(()=>V.value.map(t=>({key:`db-${t.id}`,id:t.id,name:t.name,source:"database",model_path:t.path||""}))),M=p(()=>h.value.map(t=>({key:`trained-${t.id}`,id:t.id,name:t.name,source:"trained",model_path:t.merged_path||t.base_model_path||"",merged:t.merged,merging:t.merging,disabled:t.merged===!1}))),G=p(()=>{const t={};for(const e of[...x.value,...M.value])t[e.key]=e;return t}),n=Y({name:"",description:"",model_key:"",gpu_id:0}),I={name:[{required:!0,message:"请输入推理名称",trigger:"blur"}],model_key:[{required:!0,message:"请选择模型",trigger:"change"}]},O=p(()=>G.value[n.model_key]);async function S(){f.value&&await f.value.validate(async t=>{if(!t)return;const e=O.value;if(!e){B.warning("请选择模型");return}c.value=!0,m.value="正在启动模型服务...";try{await new Promise(r=>setTimeout(r,1200)),B.success("模型已启动"),E.push({path:"/model-inference/chat/mock",query:{model:e.name}})}finally{c.value=!1,m.value=""}})}function $(){E.back()}async function q(){try{const[t,e,r]=await Promise.all([le(),ae(),X()]);V.value=t||[],h.value=(e==null?void 0:e.models)||[],_.value=(r==null?void 0:r.gpu)||[],_.value.length>0&&(n.gpu_id=0)}catch{}}return W(q),(t,e)=>{const r=L,d=A,F=K,g=J,C=H,P=z,N=T,U=j,R=D;return s(),i(te,{title:"新建推理"},{default:o(()=>[a(R,{ref_key:"formRef",ref:f,model:n,rules:I,"label-width":"100px"},{default:o(()=>[a(d,{label:"推理名称",prop:"name"},{default:o(()=>[a(r,{modelValue:n.name,"onUpdate:modelValue":e[0]||(e[0]=l=>n.name=l),placeholder:"请输入推理名称",maxlength:"50","show-word-limit":"",style:{"max-width":"400px"}},null,8,["modelValue"])]),_:1}),a(d,{label:"描述"},{default:o(()=>[a(r,{modelValue:n.description,"onUpdate:modelValue":e[1]||(e[1]=l=>n.description=l),type:"textarea",rows:2,maxlength:"200","show-word-limit":"",style:{"max-width":"400px"}},null,8,["modelValue"])]),_:1}),a(F,{"content-position":"left"},{default:o(()=>[...e[4]||(e[4]=[b("选择模型",-1)])]),_:1}),a(d,{label:"选择模型",prop:"model_key"},{default:o(()=>[a(P,{modelValue:n.model_key,"onUpdate:modelValue":e[2]||(e[2]=l=>n.model_key=l),placeholder:"请选择模型",filterable:"",style:{width:"400px"}},{default:o(()=>[a(C,{label:"本地模型"},{default:o(()=>[(s(!0),v(w,null,k(x.value,l=>(s(),i(g,{key:l.key,label:l.name,value:l.key},null,8,["label","value"]))),128))]),_:1}),a(C,{label:"已训练模型"},{default:o(()=>[(s(!0),v(w,null,k(M.value,l=>(s(),i(g,{key:l.key,label:l.name+(l.disabled?"(未合并)":""),value:l.key,disabled:l.disabled},null,8,["label","value","disabled"]))),128))]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(d,{label:"GPU"},{default:o(()=>[a(P,{modelValue:n.gpu_id,"onUpdate:modelValue":e[3]||(e[3]=l=>n.gpu_id=l),style:{width:"400px"}},{default:o(()=>[(s(!0),v(w,null,k(_.value,(l,y)=>(s(),i(g,{key:y,label:`${l.name} (GPU${y})`,value:y},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),m.value?(s(),i(d,{key:0,label:"启动状态"},{default:o(()=>[a(N,{title:m.value,type:"info",closable:!1,"show-icon":""},null,8,["title"])]),_:1})):Z("",!0),a(d,null,{default:o(()=>[a(U,{type:"primary",loading:c.value,onClick:S},{default:o(()=>[...e[5]||(e[5]=[b("开始推理",-1)])]),_:1},8,["loading"]),a(U,{onClick:$},{default:o(()=>[...e[6]||(e[6]=[b("取消",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1})}}});export{Ge as default}; import{E as T}from"./el-alert-DiB50G4H.js";import{a as A,E as D}from"./el-form-item--AdlsBF7.js";import{E as L}from"./index-D0wqu88j.js";import{E as j}from"./index-6OTFNiIi.js";import{E as z,b as H,a as J}from"./el-select-dn4MhMwo.js";import{E as K}from"./el-divider-Bk8dYjWT.js";import{d as Q,G as W,e as i,w as o,at as X,y as u,z as Y,o as s,s as a,x as b,c as v,ad as k,M as w,g as Z,j as p,A as B,v as ee}from"./index-CD29OCdJ.js";import"./el-scrollbar-YCRG1835.js";import"./el-popper-DIiB8Y-M.js";import"./el-tag-C4SnL2z_.js";import{P as te}from"./PageCard-Byh3epid.js";import{g as le,a as ae}from"./model-e1J4FzWC.js";import"./vnode-_QM9LlTR.js";import"./castArray-BEiueV6y.js";import"./_baseClone-Blem5BWg.js";import"./raf-DGtHIxe2.js";import"./index-C8FAS7l2.js";import"./index-DpY84JwG.js";import"./index-BpugJXyE.js";import"./index-D1b786GX.js";import"./scroll-D-TPweuo.js";import"./clamp-BfrLWns4.js";import"./toNumber-B6P5MqPp.js";import"./_baseIteratee-CuPmYyG4.js";import"./el-card-BvbOkvag.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";const Ge=Q({__name:"InferenceCreateView",setup(oe){const E=ee(),f=u(),c=u(!1),m=u(""),V=u([]),h=u([]),_=u([]),x=p(()=>V.value.map(t=>({key:`db-${t.id}`,id:t.id,name:t.name,source:"database",model_path:t.path||""}))),M=p(()=>h.value.map(t=>({key:`trained-${t.id}`,id:t.id,name:t.name,source:"trained",model_path:t.merged_path||t.base_model_path||"",merged:t.merged,merging:t.merging,disabled:t.merged===!1}))),G=p(()=>{const t={};for(const e of[...x.value,...M.value])t[e.key]=e;return t}),n=Y({name:"",description:"",model_key:"",gpu_id:0}),I={name:[{required:!0,message:"请输入推理名称",trigger:"blur"}],model_key:[{required:!0,message:"请选择模型",trigger:"change"}]},O=p(()=>G.value[n.model_key]);async function S(){f.value&&await f.value.validate(async t=>{if(!t)return;const e=O.value;if(!e){B.warning("请选择模型");return}c.value=!0,m.value="正在启动模型服务...";try{await new Promise(r=>setTimeout(r,1200)),B.success("模型已启动"),E.push({path:"/model-inference/chat/mock",query:{model:e.name}})}finally{c.value=!1,m.value=""}})}function $(){E.back()}async function q(){try{const[t,e,r]=await Promise.all([le(),ae(),X()]);V.value=t||[],h.value=(e==null?void 0:e.models)||[],_.value=(r==null?void 0:r.gpu)||[],_.value.length>0&&(n.gpu_id=0)}catch{}}return W(q),(t,e)=>{const r=L,d=A,F=K,g=J,C=H,P=z,N=T,U=j,R=D;return s(),i(te,{title:"新建推理"},{default:o(()=>[a(R,{ref_key:"formRef",ref:f,model:n,rules:I,"label-width":"100px"},{default:o(()=>[a(d,{label:"推理名称",prop:"name"},{default:o(()=>[a(r,{modelValue:n.name,"onUpdate:modelValue":e[0]||(e[0]=l=>n.name=l),placeholder:"请输入推理名称",maxlength:"50","show-word-limit":"",style:{"max-width":"400px"}},null,8,["modelValue"])]),_:1}),a(d,{label:"描述"},{default:o(()=>[a(r,{modelValue:n.description,"onUpdate:modelValue":e[1]||(e[1]=l=>n.description=l),type:"textarea",rows:2,maxlength:"200","show-word-limit":"",style:{"max-width":"400px"}},null,8,["modelValue"])]),_:1}),a(F,{"content-position":"left"},{default:o(()=>[...e[4]||(e[4]=[b("选择模型",-1)])]),_:1}),a(d,{label:"选择模型",prop:"model_key"},{default:o(()=>[a(P,{modelValue:n.model_key,"onUpdate:modelValue":e[2]||(e[2]=l=>n.model_key=l),placeholder:"请选择模型",filterable:"",style:{width:"400px"}},{default:o(()=>[a(C,{label:"本地模型"},{default:o(()=>[(s(!0),v(w,null,k(x.value,l=>(s(),i(g,{key:l.key,label:l.name,value:l.key},null,8,["label","value"]))),128))]),_:1}),a(C,{label:"已训练模型"},{default:o(()=>[(s(!0),v(w,null,k(M.value,l=>(s(),i(g,{key:l.key,label:l.name+(l.disabled?"(未合并)":""),value:l.key,disabled:l.disabled},null,8,["label","value","disabled"]))),128))]),_:1})]),_:1},8,["modelValue"])]),_:1}),a(d,{label:"GPU"},{default:o(()=>[a(P,{modelValue:n.gpu_id,"onUpdate:modelValue":e[3]||(e[3]=l=>n.gpu_id=l),style:{width:"400px"}},{default:o(()=>[(s(!0),v(w,null,k(_.value,(l,y)=>(s(),i(g,{key:y,label:`${l.name} (GPU${y})`,value:y},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),m.value?(s(),i(d,{key:0,label:"启动状态"},{default:o(()=>[a(N,{title:m.value,type:"info",closable:!1,"show-icon":""},null,8,["title"])]),_:1})):Z("",!0),a(d,null,{default:o(()=>[a(U,{type:"primary",loading:c.value,onClick:S},{default:o(()=>[...e[5]||(e[5]=[b("开始推理",-1)])]),_:1},8,["loading"]),a(U,{onClick:$},{default:o(()=>[...e[6]||(e[6]=[b("取消",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1})}}});export{Ge as default};

View File

@@ -1 +1 @@
import{E as $,a as q}from"./el-form-item-rya6onmd.js";import{E as z}from"./index-DbBHj60R.js";import{u as K,E as P}from"./index-DxH5-_w6.js";import{E as R}from"./el-checkbox-D6iLoXkw.js";import{b as T,i as U,d as N,u as A,a as D,o as u,c as k,e as h,w as t,r as M,f as w,E as j,g,n as E,h as V,j as b,k as C,l as G,m as H,p as J,q as n,s,t as O,v as Q,x as y,y as B,z as W,A as X}from"./index-D5veDkuG.js";import{_ as S}from"./logo-CxXS7KxG.js";import{_ as Y}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BDIbf8ih.js";import"./_baseClone-BuqHm105.js";import"./raf-Dsox5IbR.js";import"./index-DDY6aSpq.js";import"./index-BT1A2I5c.js";import"./omit-DxQEBv1Z.js";const Z=T({type:{type:String,values:["primary","success","warning","info","danger","default"],default:void 0},underline:{type:[Boolean,String],values:[!0,!1,"always","never","hover"],default:void 0},disabled:Boolean,href:{type:String,default:""},target:{type:String,default:"_self"},icon:{type:U}}),ee={click:l=>l instanceof MouseEvent},ae=["href","target"];var ne=N({name:"ElLink",__name:"link",props:Z,emits:ee,setup(l,{emit:m}){const o=l,i=m,r=A("link");K({scope:"el-link",from:"The underline option (boolean)",replacement:"'always' | 'hover' | 'never'",version:"3.0.0",ref:"https://element-plus.org/en-US/component/link.html#underline"},b(()=>C(o.underline)));const a=D("link"),c=b(()=>{var e;return[a.b(),a.m(o.type??((e=r.value)==null?void 0:e.type)??"default"),a.is("disabled",o.disabled),a.is("underline",d.value==="always"),a.is("hover-underline",d.value==="hover"&&!o.disabled)]}),d=b(()=>{var e;return C(o.underline)?o.underline?"hover":"never":o.underline??((e=r.value)==null?void 0:e.underline)??"hover"});function p(e){o.disabled||i("click",e)}return(e,f)=>(u(),k("a",{class:E(c.value),href:l.disabled||!l.href?void 0:l.href,target:l.disabled||!l.href?void 0:l.target,onClick:p},[l.icon?(u(),h(w(j),{key:0},{default:t(()=>[(u(),h(M(l.icon)))]),_:1})):g("v-if",!0),e.$slots.default?(u(),k("span",{key:1,class:E(w(a).e("inner"))},[V(e.$slots,"default")],2)):g("v-if",!0),e.$slots.icon?V(e.$slots,"icon",{key:2}):g("v-if",!0)],10,ae))}}),le=ne;const oe=G(le),se={class:"login-page"},te={class:"login-panel"},re={class:"login-form-wrap"},ie={class:"login-options"},de=N({__name:"LoginView",setup(l){const m=Q(),o=H(),i=B(),r=B(!1),a=W({username:"",password:""}),c={username:[{required:!0,message:"请输入账号",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"}]};async function d(){i.value&&await i.value.validate(async p=>{if(p){r.value=!0;try{await o.login(a.username,a.password),X.success("登录成功"),m.push("/dashboard")}catch{}finally{r.value=!1}}})}return(p,e)=>{const f=z,_=q,x=R,F=oe,I=P,L=$;return u(),k("div",se,[e[8]||(e[8]=J('<section class="login-visual" aria-labelledby="platform-title" data-v-713185bd><div class="login-visual-content" data-v-713185bd><div class="login-visual-copy" data-v-713185bd><h1 id="platform-title" data-v-713185bd>远光软件微调平台</h1><p data-v-713185bd>大模型微调、评测与推理的一体化工作台</p></div><div class="login-visual-footer" aria-label="平台核心能力" data-v-713185bd><span data-v-713185bd>数据准备</span><span aria-hidden="true" data-v-713185bd>·</span><span data-v-713185bd>模型训练</span><span aria-hidden="true" data-v-713185bd>·</span><span data-v-713185bd>效果评测</span></div></div></section>',1)),n("main",te,[e[6]||(e[6]=n("div",{class:"brand-lockup",role:"img","aria-label":"远光软件"},[n("span",{class:"brand-logo-crop brand-logo-crop-mark","aria-hidden":"true"},[n("img",{src:S,alt:""})]),n("span",{class:"brand-logo-crop brand-logo-crop-wordmark","aria-hidden":"true"},[n("img",{src:S,alt:""})])],-1)),n("div",re,[e[5]||(e[5]=n("div",{class:"login-heading"},[n("span",null,"账号登录"),n("h2",null,"欢迎回来"),n("p",null,"登录后继续使用微调平台")],-1)),s(L,{ref_key:"loginFormRef",ref:i,model:a,rules:c,"label-position":"top",size:"large",onKeyup:O(d,["enter"])},{default:t(()=>[s(_,{label:"账号",prop:"username"},{default:t(()=>[s(f,{modelValue:a.username,"onUpdate:modelValue":e[0]||(e[0]=v=>a.username=v),placeholder:"请输入账号",clearable:""},null,8,["modelValue"])]),_:1}),s(_,{label:"密码",prop:"password"},{default:t(()=>[s(f,{modelValue:a.password,"onUpdate:modelValue":e[1]||(e[1]=v=>a.password=v),type:"password",placeholder:"请输入密码","show-password":""},null,8,["modelValue"])]),_:1}),n("div",ie,[s(x,null,{default:t(()=>[...e[2]||(e[2]=[y("记住密码",-1)])]),_:1}),s(F,{type:"primary",underline:!1},{default:t(()=>[...e[3]||(e[3]=[y("忘记密码?",-1)])]),_:1})]),s(I,{type:"primary",class:"login-btn",loading:r.value,onClick:d},{default:t(()=>[...e[4]||(e[4]=[y(" 登录 ",-1)])]),_:1},8,["loading"])]),_:1},8,["model"])]),e[7]||(e[7]=n("footer",null,"© 2026 远光软件",-1))])])}}}),Ee=Y(de,[["__scopeId","data-v-713185bd"]]);export{Ee as default}; import{E as $,a as q}from"./el-form-item--AdlsBF7.js";import{E as z}from"./index-D0wqu88j.js";import{u as K,E as P}from"./index-6OTFNiIi.js";import{E as R}from"./el-checkbox-Pnt9POcY.js";import{b as T,i as U,d as N,u as A,a as D,o as u,c as k,e as h,w as t,r as M,f as w,E as j,g,n as E,h as V,j as b,k as C,l as G,m as H,p as J,q as n,s,t as O,v as Q,x as y,y as B,z as W,A as X}from"./index-CD29OCdJ.js";import{_ as S}from"./logo-CxXS7KxG.js";import{_ as Y}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BEiueV6y.js";import"./_baseClone-Blem5BWg.js";import"./raf-DGtHIxe2.js";import"./index-C8FAS7l2.js";import"./index-DpY84JwG.js";import"./omit-9H73Nvwk.js";const Z=T({type:{type:String,values:["primary","success","warning","info","danger","default"],default:void 0},underline:{type:[Boolean,String],values:[!0,!1,"always","never","hover"],default:void 0},disabled:Boolean,href:{type:String,default:""},target:{type:String,default:"_self"},icon:{type:U}}),ee={click:l=>l instanceof MouseEvent},ae=["href","target"];var ne=N({name:"ElLink",__name:"link",props:Z,emits:ee,setup(l,{emit:m}){const o=l,i=m,r=A("link");K({scope:"el-link",from:"The underline option (boolean)",replacement:"'always' | 'hover' | 'never'",version:"3.0.0",ref:"https://element-plus.org/en-US/component/link.html#underline"},b(()=>C(o.underline)));const a=D("link"),c=b(()=>{var e;return[a.b(),a.m(o.type??((e=r.value)==null?void 0:e.type)??"default"),a.is("disabled",o.disabled),a.is("underline",d.value==="always"),a.is("hover-underline",d.value==="hover"&&!o.disabled)]}),d=b(()=>{var e;return C(o.underline)?o.underline?"hover":"never":o.underline??((e=r.value)==null?void 0:e.underline)??"hover"});function p(e){o.disabled||i("click",e)}return(e,f)=>(u(),k("a",{class:E(c.value),href:l.disabled||!l.href?void 0:l.href,target:l.disabled||!l.href?void 0:l.target,onClick:p},[l.icon?(u(),h(w(j),{key:0},{default:t(()=>[(u(),h(M(l.icon)))]),_:1})):g("v-if",!0),e.$slots.default?(u(),k("span",{key:1,class:E(w(a).e("inner"))},[V(e.$slots,"default")],2)):g("v-if",!0),e.$slots.icon?V(e.$slots,"icon",{key:2}):g("v-if",!0)],10,ae))}}),le=ne;const oe=G(le),se={class:"login-page"},te={class:"login-panel"},re={class:"login-form-wrap"},ie={class:"login-options"},de=N({__name:"LoginView",setup(l){const m=Q(),o=H(),i=B(),r=B(!1),a=W({username:"",password:""}),c={username:[{required:!0,message:"请输入账号",trigger:"blur"}],password:[{required:!0,message:"请输入密码",trigger:"blur"}]};async function d(){i.value&&await i.value.validate(async p=>{if(p){r.value=!0;try{await o.login(a.username,a.password),X.success("登录成功"),m.push("/dashboard")}catch{}finally{r.value=!1}}})}return(p,e)=>{const f=z,_=q,x=R,F=oe,I=P,L=$;return u(),k("div",se,[e[8]||(e[8]=J('<section class="login-visual" aria-labelledby="platform-title" data-v-713185bd><div class="login-visual-content" data-v-713185bd><div class="login-visual-copy" data-v-713185bd><h1 id="platform-title" data-v-713185bd>远光软件微调平台</h1><p data-v-713185bd>大模型微调、评测与推理的一体化工作台</p></div><div class="login-visual-footer" aria-label="平台核心能力" data-v-713185bd><span data-v-713185bd>数据准备</span><span aria-hidden="true" data-v-713185bd>·</span><span data-v-713185bd>模型训练</span><span aria-hidden="true" data-v-713185bd>·</span><span data-v-713185bd>效果评测</span></div></div></section>',1)),n("main",te,[e[6]||(e[6]=n("div",{class:"brand-lockup",role:"img","aria-label":"远光软件"},[n("span",{class:"brand-logo-crop brand-logo-crop-mark","aria-hidden":"true"},[n("img",{src:S,alt:""})]),n("span",{class:"brand-logo-crop brand-logo-crop-wordmark","aria-hidden":"true"},[n("img",{src:S,alt:""})])],-1)),n("div",re,[e[5]||(e[5]=n("div",{class:"login-heading"},[n("span",null,"账号登录"),n("h2",null,"欢迎回来"),n("p",null,"登录后继续使用微调平台")],-1)),s(L,{ref_key:"loginFormRef",ref:i,model:a,rules:c,"label-position":"top",size:"large",onKeyup:O(d,["enter"])},{default:t(()=>[s(_,{label:"账号",prop:"username"},{default:t(()=>[s(f,{modelValue:a.username,"onUpdate:modelValue":e[0]||(e[0]=v=>a.username=v),placeholder:"请输入账号",clearable:""},null,8,["modelValue"])]),_:1}),s(_,{label:"密码",prop:"password"},{default:t(()=>[s(f,{modelValue:a.password,"onUpdate:modelValue":e[1]||(e[1]=v=>a.password=v),type:"password",placeholder:"请输入密码","show-password":""},null,8,["modelValue"])]),_:1}),n("div",ie,[s(x,null,{default:t(()=>[...e[2]||(e[2]=[y("记住密码",-1)])]),_:1}),s(F,{type:"primary",underline:!1},{default:t(()=>[...e[3]||(e[3]=[y("忘记密码?",-1)])]),_:1})]),s(I,{type:"primary",class:"login-btn",loading:r.value,onClick:d},{default:t(()=>[...e[4]||(e[4]=[y(" 登录 ",-1)])]),_:1},8,["loading"])]),_:1},8,["model"])]),e[7]||(e[7]=n("footer",null,"© 2026 远光软件",-1))])])}}}),Ee=Y(de,[["__scopeId","data-v-713185bd"]]);export{Ee as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{E as A}from"./el-alert-DhjRMRnp.js";import{a as N,E as T}from"./el-form-item-rya6onmd.js";import{E as B}from"./index-DbBHj60R.js";import{E as I}from"./index-DxH5-_w6.js";import{E as R}from"./el-tag-C2d1Zfbn.js";import{d as P,z as q,G as D,e as d,w as o,j as y,y as E,o as n,s as t,f as F,ar as U,x as m,aa as W,c as j,g as z,A as M,v as G,ac as H}from"./index-D5veDkuG.js";import{P as L}from"./PageCard-DFGMy1ik.js";import{a as O,m as S}from"./model-Do_d1nlo.js";import{_ as J}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vnode-CYZHqsIy.js";import"./castArray-BDIbf8ih.js";import"./_baseClone-BuqHm105.js";import"./raf-Dsox5IbR.js";import"./index-DDY6aSpq.js";import"./index-BT1A2I5c.js";import"./el-card-DzhpMhms.js";const K={key:0,class:"model-status"},Q=P({__name:"MergeWeightsView",setup(X){const v=H(),b=G(),s=E(!1),u=y(()=>v.query.model||""),w=y(()=>v.query.method||"lora"),i=E([]),_=y(()=>i.value.find(l=>l.name===u.value)),a=q({model_name:u.value,train_method:w.value,base_model_path:""});async function V(){try{const l=await O();i.value=(l==null?void 0:l.models)||[];const e=i.value.find(p=>p.name===u.value);a.base_model_path=(e==null?void 0:e.base_model_path)||""}catch{}}async function k(){if(!a.model_name||!a.base_model_path){M.warning("缺少模型信息");return}s.value=!0;try{await S({model_name:a.model_name,train_method:a.train_method,base_model_path:a.base_model_path}),M.success("合并成功"),b.push("/model-manage")}catch{}finally{s.value=!1}}function x(){b.back()}return D(V),(l,e)=>{const p=A,f=B,r=N,h=I,C=T,c=R;return n(),d(L,{title:"合并权重"},{default:o(()=>[t(p,{type:"info",closable:!1,"show-icon":"",title:"将 LoRA 适配器权重合并到基座模型,合并后可直接用于推理部署。",style:{"margin-bottom":"20px"}}),t(C,{"label-width":"120px",style:{"max-width":"600px"}},{default:o(()=>[t(r,{label:"模型名称"},{default:o(()=>[t(f,{modelValue:a.model_name,"onUpdate:modelValue":e[0]||(e[0]=g=>a.model_name=g),disabled:""},null,8,["modelValue"])]),_:1}),t(r,{label:"训练方法"},{default:o(()=>[t(f,{"model-value":F(U)[a.train_method]||a.train_method,disabled:""},null,8,["model-value"])]),_:1}),t(r,{label:"基座模型路径"},{default:o(()=>[t(f,{modelValue:a.base_model_path,"onUpdate:modelValue":e[1]||(e[1]=g=>a.base_model_path=g),placeholder:"基座模型路径"},null,8,["modelValue"])]),_:1}),t(r,null,{default:o(()=>[t(h,{type:"primary",loading:s.value,onClick:k},{default:o(()=>[m(W(s.value?"合并中...":"开始合并"),1)]),_:1},8,["loading"]),t(h,{onClick:x},{default:o(()=>[...e[2]||(e[2]=[m("取消",-1)])]),_:1})]),_:1})]),_:1}),_.value?(n(),j("div",K,[_.value.merging?(n(),d(c,{key:0,type:"warning"},{default:o(()=>[...e[3]||(e[3]=[m("合并中",-1)])]),_:1})):_.value.merged?(n(),d(c,{key:1,type:"success"},{default:o(()=>[...e[4]||(e[4]=[m("已合并",-1)])]),_:1})):(n(),d(c,{key:2,type:"info"},{default:o(()=>[...e[5]||(e[5]=[m("未合并",-1)])]),_:1}))])):z("",!0)]),_:1})}}}),pe=J(Q,[["__scopeId","data-v-2e30aa99"]]);export{pe as default}; import{E as A}from"./el-alert-DiB50G4H.js";import{a as N,E as T}from"./el-form-item--AdlsBF7.js";import{E as B}from"./index-D0wqu88j.js";import{E as I}from"./index-6OTFNiIi.js";import{E as R}from"./el-tag-C4SnL2z_.js";import{d as P,z as q,G as D,e as d,w as o,j as y,y as E,o as n,s as t,f as F,ar as U,x as m,aa as W,c as j,g as z,A as M,v as G,ac as H}from"./index-CD29OCdJ.js";import{P as L}from"./PageCard-Byh3epid.js";import{a as O,m as S}from"./model-e1J4FzWC.js";import{_ as J}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./vnode-_QM9LlTR.js";import"./castArray-BEiueV6y.js";import"./_baseClone-Blem5BWg.js";import"./raf-DGtHIxe2.js";import"./index-C8FAS7l2.js";import"./index-DpY84JwG.js";import"./el-card-BvbOkvag.js";const K={key:0,class:"model-status"},Q=P({__name:"MergeWeightsView",setup(X){const v=H(),b=G(),s=E(!1),u=y(()=>v.query.model||""),w=y(()=>v.query.method||"lora"),i=E([]),_=y(()=>i.value.find(l=>l.name===u.value)),a=q({model_name:u.value,train_method:w.value,base_model_path:""});async function V(){try{const l=await O();i.value=(l==null?void 0:l.models)||[];const e=i.value.find(p=>p.name===u.value);a.base_model_path=(e==null?void 0:e.base_model_path)||""}catch{}}async function k(){if(!a.model_name||!a.base_model_path){M.warning("缺少模型信息");return}s.value=!0;try{await S({model_name:a.model_name,train_method:a.train_method,base_model_path:a.base_model_path}),M.success("合并成功"),b.push("/model-manage")}catch{}finally{s.value=!1}}function x(){b.back()}return D(V),(l,e)=>{const p=A,f=B,r=N,h=I,C=T,c=R;return n(),d(L,{title:"合并权重"},{default:o(()=>[t(p,{type:"info",closable:!1,"show-icon":"",title:"将 LoRA 适配器权重合并到基座模型,合并后可直接用于推理部署。",style:{"margin-bottom":"20px"}}),t(C,{"label-width":"120px",style:{"max-width":"600px"}},{default:o(()=>[t(r,{label:"模型名称"},{default:o(()=>[t(f,{modelValue:a.model_name,"onUpdate:modelValue":e[0]||(e[0]=g=>a.model_name=g),disabled:""},null,8,["modelValue"])]),_:1}),t(r,{label:"训练方法"},{default:o(()=>[t(f,{"model-value":F(U)[a.train_method]||a.train_method,disabled:""},null,8,["model-value"])]),_:1}),t(r,{label:"基座模型路径"},{default:o(()=>[t(f,{modelValue:a.base_model_path,"onUpdate:modelValue":e[1]||(e[1]=g=>a.base_model_path=g),placeholder:"基座模型路径"},null,8,["modelValue"])]),_:1}),t(r,null,{default:o(()=>[t(h,{type:"primary",loading:s.value,onClick:k},{default:o(()=>[m(W(s.value?"合并中...":"开始合并"),1)]),_:1},8,["loading"]),t(h,{onClick:x},{default:o(()=>[...e[2]||(e[2]=[m("取消",-1)])]),_:1})]),_:1})]),_:1}),_.value?(n(),j("div",K,[_.value.merging?(n(),d(c,{key:0,type:"warning"},{default:o(()=>[...e[3]||(e[3]=[m("合并中",-1)])]),_:1})):_.value.merged?(n(),d(c,{key:1,type:"success"},{default:o(()=>[...e[4]||(e[4]=[m("已合并",-1)])]),_:1})):(n(),d(c,{key:2,type:"info"},{default:o(()=>[...e[5]||(e[5]=[m("未合并",-1)])]),_:1}))])):z("",!0)]),_:1})}}}),pe=J(Q,[["__scopeId","data-v-2e30aa99"]]);export{pe as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{E as o}from"./el-tag-C2d1Zfbn.js";import{d as p,e as n,w as r,j as c,o as l,x as u,aa as m}from"./index-D5veDkuG.js";import{s as _,a as i}from"./status-Dl1fykxa.js";const T=p({__name:"ModelStatusTag",props:{status:{}},setup(e){const t=e,a=c(()=>({text:i(t.status),type:_(t.status)}));return(f,g)=>{const s=o;return l(),n(s,{type:a.value.type,size:"small",effect:"light"},{default:r(()=>[u(m(a.value.text),1)]),_:1},8,["type"])}}});export{T as _}; import{E as o}from"./el-tag-C4SnL2z_.js";import{d as p,e as n,w as r,j as c,o as l,x as u,aa as m}from"./index-CD29OCdJ.js";import{s as _,a as i}from"./status-Dl1fykxa.js";const T=p({__name:"ModelStatusTag",props:{status:{}},setup(e){const t=e,a=c(()=>({text:i(t.status),type:_(t.status)}));return(f,g)=>{const s=o;return l(),n(s,{type:a.value.type,size:"small",effect:"light"},{default:r(()=>[u(m(a.value.text),1)]),_:1},8,["type"])}}});export{T as _};

View File

@@ -1 +1 @@
import{E as i}from"./el-card-DzhpMhms.js";import{d as n,e as u,w as p,o as a,c as s,h as o,g as r,q as d,aa as l}from"./index-D5veDkuG.js";import{_}from"./_plugin-vue_export-helper-DlAUqK2U.js";const h={key:0,class:"page-card-header"},m={class:"page-card-title"},f={key:0,class:"page-card-subtitle"},g={key:0,class:"page-card-extra"},v={class:"page-card-body"},b=n({__name:"PageCard",props:{title:{},subtitle:{},bordered:{type:Boolean,default:!1}},setup(t){return(e,k)=>{const c=i;return a(),u(c,{shadow:"never",class:"page-card"},{default:p(()=>[t.title||e.$slots.header?(a(),s("div",h,[o(e.$slots,"header",{},()=>[d("div",null,[d("h2",m,l(t.title),1),t.subtitle?(a(),s("p",f,l(t.subtitle),1)):r("",!0)])],!0),e.$slots.extra?(a(),s("div",g,[o(e.$slots,"extra",{},void 0,!0)])):r("",!0)])):r("",!0),d("div",v,[o(e.$slots,"default",{},void 0,!0)])]),_:3})}}}),$=_(b,[["__scopeId","data-v-05c37e8a"]]);export{$ as P}; import{E as i}from"./el-card-BvbOkvag.js";import{d as n,e as u,w as p,o as a,c as s,h as o,g as r,q as d,aa as l}from"./index-CD29OCdJ.js";import{_}from"./_plugin-vue_export-helper-DlAUqK2U.js";const h={key:0,class:"page-card-header"},m={class:"page-card-title"},f={key:0,class:"page-card-subtitle"},g={key:0,class:"page-card-extra"},v={class:"page-card-body"},b=n({__name:"PageCard",props:{title:{},subtitle:{},bordered:{type:Boolean,default:!1}},setup(t){return(e,k)=>{const c=i;return a(),u(c,{shadow:"never",class:"page-card"},{default:p(()=>[t.title||e.$slots.header?(a(),s("div",h,[o(e.$slots,"header",{},()=>[d("div",null,[d("h2",m,l(t.title),1),t.subtitle?(a(),s("p",f,l(t.subtitle),1)):r("",!0)])],!0),e.$slots.extra?(a(),s("div",g,[o(e.$slots,"extra",{},void 0,!0)])):r("",!0)])):r("",!0),d("div",v,[o(e.$slots,"default",{},void 0,!0)])]),_:3})}}}),$=_(b,[["__scopeId","data-v-05c37e8a"]]);export{$ as P};

View File

@@ -1 +1 @@
import{_ as o}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as c,c as t,q as s}from"./index-D5veDkuG.js";const n={},r={class:"simple-page"};function a(i,e){return c(),t("section",r,[...e[0]||(e[0]=[s("h1",null,"无权访问",-1),s("p",null,"当前账号没有访问该页面的权限,请联系管理员调整角色或页面权限。",-1)])])}const p=o(n,[["render",a],["__scopeId","data-v-cc370c43"]]);export{p as default}; import{_ as o}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as c,c as t,q as s}from"./index-CD29OCdJ.js";const n={},r={class:"simple-page"};function a(i,e){return c(),t("section",r,[...e[0]||(e[0]=[s("h1",null,"无权访问",-1),s("p",null,"当前账号没有访问该页面的权限,请联系管理员调整角色或页面权限。",-1)])])}const p=o(n,[["render",a],["__scopeId","data-v-cc370c43"]]);export{p as default};

View File

@@ -1 +1 @@
import{a as y,E as h}from"./el-form-item-rya6onmd.js";import{E as B}from"./index-DbBHj60R.js";import{E as R}from"./index-DxH5-_w6.js";import{d as S,G as I,e as N,w as l,j as g,z as O,o as m,s as o,q as v,c as x,ad as U,n as V,f as q,bx as F,M as L,x as b,aa as M,A as w,y as j,v as z,ac as D}from"./index-D5veDkuG.js";import{P}from"./PageCard-DFGMy1ik.js";import{u as A}from"./tools-niY0Ru_Q.js";import{_ as G}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BDIbf8ih.js";import"./_baseClone-BuqHm105.js";import"./raf-Dsox5IbR.js";import"./index-DDY6aSpq.js";import"./index-BT1A2I5c.js";import"./el-card-DzhpMhms.js";const $={class:"icon-grid"},H=["onClick"],J=S({__name:"ToolCreateView",setup(K){const d=D(),p=z(),n=A(),i=j(),s=g(()=>d.params.id!=null),c=g(()=>s.value?n.getTool(d.params.id):void 0),e=O({id:"",name:"",description:"",url:"",icon:"fa-cog"}),C={name:[{required:!0,message:"请输入工具名称",trigger:"blur"},{max:30,message:"不超过 30 字符",trigger:"blur"}],url:[{required:!0,message:"请输入跳转地址",trigger:"blur"}]};function k(){i.value&&i.value.validate(f=>{f&&(s.value?(n.updateTool(e.id,{...e}),w.success("更新成功")):(n.addTool({...e,id:"custom_"+Date.now()}),w.success("添加成功")),p.push("/tools"))})}function E(){p.back()}return I(()=>{c.value&&Object.assign(e,c.value)}),(f,a)=>{const u=B,r=y,_=R,T=h;return m(),N(P,{title:s.value?"编辑自定义工具":"添加自定义工具"},{default:l(()=>[o(T,{ref_key:"formRef",ref:i,model:e,rules:C,"label-width":"100px",style:{"max-width":"600px"}},{default:l(()=>[o(r,{label:"工具名称",prop:"name"},{default:l(()=>[o(u,{modelValue:e.name,"onUpdate:modelValue":a[0]||(a[0]=t=>e.name=t),placeholder:"请输入工具名称",maxlength:"30","show-word-limit":""},null,8,["modelValue"])]),_:1}),o(r,{label:"工具描述"},{default:l(()=>[o(u,{modelValue:e.description,"onUpdate:modelValue":a[1]||(a[1]=t=>e.description=t),type:"textarea",rows:2,maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),o(r,{label:"跳转地址",prop:"url"},{default:l(()=>[o(u,{modelValue:e.url,"onUpdate:modelValue":a[2]||(a[2]=t=>e.url=t),placeholder:"相对路径或完整 URL"},null,8,["modelValue"])]),_:1}),o(r,{label:"图标"},{default:l(()=>[v("div",$,[(m(!0),x(L,null,U(q(F),t=>(m(),x("div",{key:t,class:V(["icon-option",{selected:e.icon===t}]),onClick:Q=>e.icon=t},[v("i",{class:V(["fa",t])},null,2)],10,H))),128))])]),_:1}),o(r,null,{default:l(()=>[o(_,{type:"primary",onClick:k},{default:l(()=>[b(M(s.value?"保存":"添加"),1)]),_:1}),o(_,{onClick:E},{default:l(()=>[...a[3]||(a[3]=[b("取消",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])}}}),ue=G(J,[["__scopeId","data-v-9116c5de"]]);export{ue as default}; import{a as y,E as h}from"./el-form-item--AdlsBF7.js";import{E as B}from"./index-D0wqu88j.js";import{E as R}from"./index-6OTFNiIi.js";import{d as S,G as I,e as N,w as l,j as g,z as O,o as m,s as o,q as v,c as x,ad as U,n as V,f as q,bx as F,M as L,x as b,aa as M,A as w,y as j,v as z,ac as D}from"./index-CD29OCdJ.js";import{P}from"./PageCard-Byh3epid.js";import{u as A}from"./tools-BtFo8ZQX.js";import{_ as G}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BEiueV6y.js";import"./_baseClone-Blem5BWg.js";import"./raf-DGtHIxe2.js";import"./index-C8FAS7l2.js";import"./index-DpY84JwG.js";import"./el-card-BvbOkvag.js";const $={class:"icon-grid"},H=["onClick"],J=S({__name:"ToolCreateView",setup(K){const d=D(),p=z(),n=A(),i=j(),s=g(()=>d.params.id!=null),c=g(()=>s.value?n.getTool(d.params.id):void 0),e=O({id:"",name:"",description:"",url:"",icon:"fa-cog"}),C={name:[{required:!0,message:"请输入工具名称",trigger:"blur"},{max:30,message:"不超过 30 字符",trigger:"blur"}],url:[{required:!0,message:"请输入跳转地址",trigger:"blur"}]};function k(){i.value&&i.value.validate(f=>{f&&(s.value?(n.updateTool(e.id,{...e}),w.success("更新成功")):(n.addTool({...e,id:"custom_"+Date.now()}),w.success("添加成功")),p.push("/tools"))})}function E(){p.back()}return I(()=>{c.value&&Object.assign(e,c.value)}),(f,a)=>{const u=B,r=y,_=R,T=h;return m(),N(P,{title:s.value?"编辑自定义工具":"添加自定义工具"},{default:l(()=>[o(T,{ref_key:"formRef",ref:i,model:e,rules:C,"label-width":"100px",style:{"max-width":"600px"}},{default:l(()=>[o(r,{label:"工具名称",prop:"name"},{default:l(()=>[o(u,{modelValue:e.name,"onUpdate:modelValue":a[0]||(a[0]=t=>e.name=t),placeholder:"请输入工具名称",maxlength:"30","show-word-limit":""},null,8,["modelValue"])]),_:1}),o(r,{label:"工具描述"},{default:l(()=>[o(u,{modelValue:e.description,"onUpdate:modelValue":a[1]||(a[1]=t=>e.description=t),type:"textarea",rows:2,maxlength:"100","show-word-limit":""},null,8,["modelValue"])]),_:1}),o(r,{label:"跳转地址",prop:"url"},{default:l(()=>[o(u,{modelValue:e.url,"onUpdate:modelValue":a[2]||(a[2]=t=>e.url=t),placeholder:"相对路径或完整 URL"},null,8,["modelValue"])]),_:1}),o(r,{label:"图标"},{default:l(()=>[v("div",$,[(m(!0),x(L,null,U(q(F),t=>(m(),x("div",{key:t,class:V(["icon-option",{selected:e.icon===t}]),onClick:Q=>e.icon=t},[v("i",{class:V(["fa",t])},null,2)],10,H))),128))])]),_:1}),o(r,null,{default:l(()=>[o(_,{type:"primary",onClick:k},{default:l(()=>[b(M(s.value?"保存":"添加"),1)]),_:1}),o(_,{onClick:E},{default:l(()=>[...a[3]||(a[3]=[b("取消",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},8,["title"])}}}),ue=G(J,[["__scopeId","data-v-9116c5de"]]);export{ue as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{E as y,a as x}from"./el-form-item-rya6onmd.js";import{E as k}from"./index-DbBHj60R.js";import{E as U}from"./index-DxH5-_w6.js";import{E as C,a as B}from"./el-select-BQaRHu3V.js";import{a as F,E as I}from"./el-checkbox-D6iLoXkw.js";import{E as N,b as R}from"./el-radio-group-HDdMmxmO.js";import{d as G,c as _,q as M,s as o,w as l,o as f,x as r,M as O,ad as S,aa as q,f as z,v as A,y as D,z as L,db as T,A as $}from"./index-D5veDkuG.js";/* empty css */import"./el-scrollbar-GFOwBTUz.js";import"./el-popper-DDJTxf27.js";import"./el-tag-C2d1Zfbn.js";import{_ as j}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BDIbf8ih.js";import"./_baseClone-BuqHm105.js";import"./raf-Dsox5IbR.js";import"./index-DDY6aSpq.js";import"./index-BT1A2I5c.js";import"./index-DmAaj_YO.js";import"./vnode-CYZHqsIy.js";import"./index-DbuKXJ7V.js";import"./scroll-DswMXu1y.js";import"./clamp-Ddg8_Yc2.js";import"./toNumber-a8w_gs0u.js";import"./_baseIteratee-N-G7GeYE.js";import"./omit-DxQEBv1Z.js";const H={class:"user-create"},J=G({__name:"UserCreateView",setup(K){const d=A(),n=D(!1),a=L({username:"",display_name:"",password:"platform123",role:"viewer",status:"active",permissions:["dashboard"]}),b=["dashboard","fine-tune","model-eval","model-inference","model-manage","dataset","data-process","data-convert","compute","hardware","logs","user-settings"];async function V(){n.value=!0;try{await T(a),$.success("用户已创建"),d.push("/user-settings")}finally{n.value=!1}}return(P,e)=>{const m=k,s=x,u=B,v=C,p=R,c=N,E=I,w=F,i=U,g=y;return f(),_("section",H,[e[11]||(e[11]=M("h1",null,"创建用户",-1)),o(g,{model:a,"label-width":"110px",class:"user-form"},{default:l(()=>[o(s,{label:"账号"},{default:l(()=>[o(m,{modelValue:a.username,"onUpdate:modelValue":e[0]||(e[0]=t=>a.username=t)},null,8,["modelValue"])]),_:1}),o(s,{label:"显示名称"},{default:l(()=>[o(m,{modelValue:a.display_name,"onUpdate:modelValue":e[1]||(e[1]=t=>a.display_name=t)},null,8,["modelValue"])]),_:1}),o(s,{label:"初始密码"},{default:l(()=>[o(m,{modelValue:a.password,"onUpdate:modelValue":e[2]||(e[2]=t=>a.password=t),type:"password","show-password":""},null,8,["modelValue"])]),_:1}),o(s,{label:"角色"},{default:l(()=>[o(v,{modelValue:a.role,"onUpdate:modelValue":e[3]||(e[3]=t=>a.role=t)},{default:l(()=>[o(u,{label:"管理员",value:"admin"}),o(u,{label:"操作员",value:"operator"}),o(u,{label:"观察员",value:"viewer"})]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"状态"},{default:l(()=>[o(c,{modelValue:a.status,"onUpdate:modelValue":e[4]||(e[4]=t=>a.status=t)},{default:l(()=>[o(p,{value:"active"},{default:l(()=>[...e[7]||(e[7]=[r("启用",-1)])]),_:1}),o(p,{value:"disabled"},{default:l(()=>[...e[8]||(e[8]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"页面权限"},{default:l(()=>[o(w,{modelValue:a.permissions,"onUpdate:modelValue":e[5]||(e[5]=t=>a.permissions=t)},{default:l(()=>[(f(),_(O,null,S(b,t=>o(E,{key:t,value:t},{default:l(()=>[r(q(t),1)]),_:2},1032,["value"])),64))]),_:1},8,["modelValue"])]),_:1}),o(s,null,{default:l(()=>[o(i,{onClick:e[6]||(e[6]=t=>z(d).back())},{default:l(()=>[...e[9]||(e[9]=[r("返回",-1)])]),_:1}),o(i,{type:"primary",loading:n.value,onClick:V},{default:l(()=>[...e[10]||(e[10]=[r("保存",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])}}}),Ee=j(J,[["__scopeId","data-v-57777381"]]);export{Ee as default}; import{E as y,a as x}from"./el-form-item--AdlsBF7.js";import{E as k}from"./index-D0wqu88j.js";import{E as U}from"./index-6OTFNiIi.js";import{E as C,a as B}from"./el-select-dn4MhMwo.js";import{a as F,E as I}from"./el-checkbox-Pnt9POcY.js";import{E as N,b as R}from"./el-radio-group-11DJtD5j.js";import{d as G,c as _,q as M,s as o,w as l,o as f,x as r,M as O,ad as S,aa as q,f as z,v as A,y as D,z as L,db as T,A as $}from"./index-CD29OCdJ.js";/* empty css */import"./el-scrollbar-YCRG1835.js";import"./el-popper-DIiB8Y-M.js";import"./el-tag-C4SnL2z_.js";import{_ as j}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./castArray-BEiueV6y.js";import"./_baseClone-Blem5BWg.js";import"./raf-DGtHIxe2.js";import"./index-C8FAS7l2.js";import"./index-DpY84JwG.js";import"./index-BpugJXyE.js";import"./vnode-_QM9LlTR.js";import"./index-D1b786GX.js";import"./scroll-D-TPweuo.js";import"./clamp-BfrLWns4.js";import"./toNumber-B6P5MqPp.js";import"./_baseIteratee-CuPmYyG4.js";import"./omit-9H73Nvwk.js";const H={class:"user-create"},J=G({__name:"UserCreateView",setup(K){const d=A(),n=D(!1),a=L({username:"",display_name:"",password:"platform123",role:"viewer",status:"active",permissions:["dashboard"]}),b=["dashboard","fine-tune","model-eval","model-inference","model-manage","dataset","data-process","data-convert","compute","hardware","logs","user-settings"];async function V(){n.value=!0;try{await T(a),$.success("用户已创建"),d.push("/user-settings")}finally{n.value=!1}}return(P,e)=>{const m=k,s=x,u=B,v=C,p=R,c=N,E=I,w=F,i=U,g=y;return f(),_("section",H,[e[11]||(e[11]=M("h1",null,"创建用户",-1)),o(g,{model:a,"label-width":"110px",class:"user-form"},{default:l(()=>[o(s,{label:"账号"},{default:l(()=>[o(m,{modelValue:a.username,"onUpdate:modelValue":e[0]||(e[0]=t=>a.username=t)},null,8,["modelValue"])]),_:1}),o(s,{label:"显示名称"},{default:l(()=>[o(m,{modelValue:a.display_name,"onUpdate:modelValue":e[1]||(e[1]=t=>a.display_name=t)},null,8,["modelValue"])]),_:1}),o(s,{label:"初始密码"},{default:l(()=>[o(m,{modelValue:a.password,"onUpdate:modelValue":e[2]||(e[2]=t=>a.password=t),type:"password","show-password":""},null,8,["modelValue"])]),_:1}),o(s,{label:"角色"},{default:l(()=>[o(v,{modelValue:a.role,"onUpdate:modelValue":e[3]||(e[3]=t=>a.role=t)},{default:l(()=>[o(u,{label:"管理员",value:"admin"}),o(u,{label:"操作员",value:"operator"}),o(u,{label:"观察员",value:"viewer"})]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"状态"},{default:l(()=>[o(c,{modelValue:a.status,"onUpdate:modelValue":e[4]||(e[4]=t=>a.status=t)},{default:l(()=>[o(p,{value:"active"},{default:l(()=>[...e[7]||(e[7]=[r("启用",-1)])]),_:1}),o(p,{value:"disabled"},{default:l(()=>[...e[8]||(e[8]=[r("禁用",-1)])]),_:1})]),_:1},8,["modelValue"])]),_:1}),o(s,{label:"页面权限"},{default:l(()=>[o(w,{modelValue:a.permissions,"onUpdate:modelValue":e[5]||(e[5]=t=>a.permissions=t)},{default:l(()=>[(f(),_(O,null,S(b,t=>o(E,{key:t,value:t},{default:l(()=>[r(q(t),1)]),_:2},1032,["value"])),64))]),_:1},8,["modelValue"])]),_:1}),o(s,null,{default:l(()=>[o(i,{onClick:e[6]||(e[6]=t=>z(d).back())},{default:l(()=>[...e[9]||(e[9]=[r("返回",-1)])]),_:1}),o(i,{type:"primary",loading:n.value,onClick:V},{default:l(()=>[...e[10]||(e[10]=[r("保存",-1)])]),_:1},8,["loading"])]),_:1})]),_:1},8,["model"])])}}}),Ee=j(J,[["__scopeId","data-v-57777381"]]);export{Ee as default};

View File

@@ -1 +1 @@
import{_ as o}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as t,c as r,q as s}from"./index-D5veDkuG.js";const c={},n={class:"simple-page"};function a(_,e){return t(),r("section",n,[...e[0]||(e[0]=[s("h1",null,"权限设置",-1),s("p",null,"第一版已支持账号页面权限读取与保存,精细化项目/模型/数据集权限将在后续版本补齐。",-1)])])}const p=o(c,[["render",a],["__scopeId","data-v-608c6e7e"]]);export{p as default}; import{_ as o}from"./_plugin-vue_export-helper-DlAUqK2U.js";import{o as t,c as r,q as s}from"./index-CD29OCdJ.js";const c={},n={class:"simple-page"};function a(_,e){return t(),r("section",n,[...e[0]||(e[0]=[s("h1",null,"权限设置",-1),s("p",null,"第一版已支持账号页面权限读取与保存,精细化项目/模型/数据集权限将在后续版本补齐。",-1)])])}const p=o(c,[["render",a],["__scopeId","data-v-608c6e7e"]]);export{p as default};

View File

@@ -1 +1 @@
import{E as w}from"./index-DxH5-_w6.js";import{E as y}from"./el-tag-C2d1Zfbn.js";import{a as h,E}from"./el-table-B6qMxzT4.js";import{v as T}from"./directive-BBfPDwlQ.js";import{d as x,G as V,K as B,c as C,q as r,s as t,w as o,y as m,da as U,o as k,x as i,f as u,aa as d}from"./index-D5veDkuG.js";import"./el-scrollbar-GFOwBTUz.js";import"./el-popper-DDJTxf27.js";import"./el-tooltip-l0sNRNKZ.js";import"./el-checkbox-D6iLoXkw.js";import{s as N,a as S}from"./status-Dl1fykxa.js";import{_ as D}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./_baseClone-BuqHm105.js";import"./index-BT1A2I5c.js";import"./_baseIteratee-N-G7GeYE.js";import"./castArray-BDIbf8ih.js";import"./debounce-D3zKL4rk.js";import"./toNumber-a8w_gs0u.js";import"./index-DmAaj_YO.js";import"./raf-Dsox5IbR.js";import"./omit-DxQEBv1Z.js";const L={class:"user-settings"},$={class:"page-header"},q=x({__name:"UserSettingsView",setup(z){const l=m(!1),n=m([]);async function _(){l.value=!0;try{n.value=await U()}finally{l.value=!1}}return V(_),(c,e)=>{const f=w,a=E,g=y,b=h,v=T;return B((k(),C("section",L,[r("header",$,[e[2]||(e[2]=r("div",null,[r("h1",null,"用户设置"),r("p",null,"管理平台账号、角色状态和页面权限。")],-1)),t(f,{type:"primary",onClick:e[0]||(e[0]=s=>c.$router.push("/user-settings/create"))},{default:o(()=>[...e[1]||(e[1]=[i("创建用户",-1)])]),_:1})]),t(b,{data:n.value},{default:o(()=>[t(a,{prop:"username",label:"账号","min-width":"140"}),t(a,{prop:"display_name",label:"显示名称","min-width":"160"}),t(a,{prop:"role",label:"角色",width:"120"}),t(a,{label:"状态",width:"120"},{default:o(({row:s})=>[t(g,{type:u(N)(s.status),size:"small"},{default:o(()=>[i(d(u(S)(s.status)),1)]),_:2},1032,["type"])]),_:1}),t(a,{label:"权限数",width:"120"},{default:o(({row:s})=>{var p;return[i(d(((p=s.permissions)==null?void 0:p.length)||0),1)]}),_:1}),t(a,{prop:"create_time",label:"创建时间","min-width":"180"})]),_:1},8,["data"])])),[[v,l.value]])}}}),st=D(q,[["__scopeId","data-v-3c7eb527"]]);export{st as default}; import{E as w}from"./index-6OTFNiIi.js";import{E as y}from"./el-tag-C4SnL2z_.js";import{a as h,E}from"./el-table-CzpPw-qp.js";import{v as T}from"./directive-DsbMrhCX.js";import{d as x,G as V,K as B,c as C,q as r,s as t,w as o,y as m,da as U,o as k,x as i,f as u,aa as d}from"./index-CD29OCdJ.js";import"./el-scrollbar-YCRG1835.js";import"./el-popper-DIiB8Y-M.js";import"./el-tooltip-l0sNRNKZ.js";import"./el-checkbox-Pnt9POcY.js";import{s as N,a as S}from"./status-Dl1fykxa.js";import{_ as D}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./_baseClone-Blem5BWg.js";import"./index-DpY84JwG.js";import"./_baseIteratee-CuPmYyG4.js";import"./castArray-BEiueV6y.js";import"./debounce-BCyqG5kC.js";import"./toNumber-B6P5MqPp.js";import"./index-BpugJXyE.js";import"./raf-DGtHIxe2.js";import"./omit-9H73Nvwk.js";const L={class:"user-settings"},$={class:"page-header"},q=x({__name:"UserSettingsView",setup(z){const l=m(!1),n=m([]);async function _(){l.value=!0;try{n.value=await U()}finally{l.value=!1}}return V(_),(c,e)=>{const f=w,a=E,g=y,b=h,v=T;return B((k(),C("section",L,[r("header",$,[e[2]||(e[2]=r("div",null,[r("h1",null,"用户设置"),r("p",null,"管理平台账号、角色状态和页面权限。")],-1)),t(f,{type:"primary",onClick:e[0]||(e[0]=s=>c.$router.push("/user-settings/create"))},{default:o(()=>[...e[1]||(e[1]=[i("创建用户",-1)])]),_:1})]),t(b,{data:n.value},{default:o(()=>[t(a,{prop:"username",label:"账号","min-width":"140"}),t(a,{prop:"display_name",label:"显示名称","min-width":"160"}),t(a,{prop:"role",label:"角色",width:"120"}),t(a,{label:"状态",width:"120"},{default:o(({row:s})=>[t(g,{type:u(N)(s.status),size:"small"},{default:o(()=>[i(d(u(S)(s.status)),1)]),_:2},1032,["type"])]),_:1}),t(a,{label:"权限数",width:"120"},{default:o(({row:s})=>{var p;return[i(d(((p=s.permissions)==null?void 0:p.length)||0),1)]}),_:1}),t(a,{prop:"create_time",label:"创建时间","min-width":"180"})]),_:1},8,["data"])])),[[v,l.value]])}}}),st=D(q,[["__scopeId","data-v-3c7eb527"]]);export{st as default};

View File

@@ -1 +1 @@
import{cs as T,ct as Q,cu as U,cv as B,cw as X,cx as Z,cy as M,cz as V,cA as D,cB as z,cj as k,cC as G,cD as ee,cE as m,ch as O,cF as K,cG as d,cH as N,cI as b,cJ as re,cK as te,ce as ne,cL as ae}from"./index-D5veDkuG.js";var S=Object.create,oe=(function(){function e(){}return function(r){if(!T(r))return{};if(S)return S(r);e.prototype=r;var t=new e;return e.prototype=void 0,t}})();function se(e,r){var t=-1,a=e.length;for(r||(r=Array(a));++t<a;)r[t]=e[t];return r}function ce(e,r){for(var t=-1,a=e==null?0:e.length;++t<a&&r(e[t],t,e)!==!1;);return e}function y(e,r,t,a){var g=!t;t||(t={});for(var s=-1,o=r.length;++s<o;){var i=r[s],c=void 0;c===void 0&&(c=e[i]),g?Q(t,i,c):U(t,i,c)}return t}function ie(e){var r=[];if(e!=null)for(var t in Object(e))r.push(t);return r}var fe=Object.prototype,ue=fe.hasOwnProperty;function ge(e){if(!T(e))return ie(e);var r=B(e),t=[];for(var a in e)a=="constructor"&&(r||!ue.call(e,a))||t.push(a);return t}function A(e){return X(e)?Z(e,!0):ge(e)}function le(e,r){return e&&y(r,M(r),e)}function be(e,r){return e&&y(r,A(r),e)}var _=typeof exports=="object"&&exports&&!exports.nodeType&&exports,x=_&&typeof module=="object"&&module&&!module.nodeType&&module,ye=x&&x.exports===_,I=ye?V.Buffer:void 0,C=I?I.allocUnsafe:void 0;function pe(e,r){if(r)return e.slice();var t=e.length,a=C?C(t):new e.constructor(t);return e.copy(a),a}function Te(e,r){return y(e,D(e),r)}var de=Object.getOwnPropertySymbols,R=de?function(e){for(var r=[];e;)k(r,D(e)),e=G(e);return r}:z;function Ae(e,r){return y(e,R(e),r)}function je(e){return ee(e,A,R)}var he=Object.prototype,we=he.hasOwnProperty;function ve(e){var r=e.length,t=new e.constructor(r);return r&&typeof e[0]=="string"&&we.call(e,"index")&&(t.index=e.index,t.input=e.input),t}function j(e){var r=new e.constructor(e.byteLength);return new m(r).set(new m(e)),r}function $e(e,r){var t=r?j(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.byteLength)}var me=/\w*$/;function Oe(e){var r=new e.constructor(e.source,me.exec(e));return r.lastIndex=e.lastIndex,r}var E=O?O.prototype:void 0,F=E?E.valueOf:void 0;function Se(e){return F?Object(F.call(e)):{}}function xe(e,r){var t=r?j(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.length)}var Ie="[object Boolean]",Ce="[object Date]",Ee="[object Map]",Fe="[object Number]",Le="[object RegExp]",Pe="[object Set]",Ue="[object String]",Be="[object Symbol]",Me="[object ArrayBuffer]",De="[object DataView]",Ge="[object Float32Array]",Ke="[object Float64Array]",Ne="[object Int8Array]",_e="[object Int16Array]",Re="[object Int32Array]",He="[object Uint8Array]",Je="[object Uint8ClampedArray]",We="[object Uint16Array]",Ye="[object Uint32Array]";function qe(e,r,t){var a=e.constructor;switch(r){case Me:return j(e);case Ie:case Ce:return new a(+e);case De:return $e(e,t);case Ge:case Ke:case Ne:case _e:case Re:case He:case Je:case We:case Ye:return xe(e,t);case Ee:return new a;case Fe:case Ue:return new a(e);case Le:return Oe(e);case Pe:return new a;case Be:return Se(e)}}function Qe(e){return typeof e.constructor=="function"&&!B(e)?oe(G(e)):{}}var Xe="[object Map]";function Ze(e){return K(e)&&d(e)==Xe}var L=b&&b.isMap,Ve=L?N(L):Ze,ze="[object Set]";function ke(e){return K(e)&&d(e)==ze}var P=b&&b.isSet,er=P?N(P):ke,rr=1,tr=2,nr=4,H="[object Arguments]",ar="[object Array]",or="[object Boolean]",sr="[object Date]",cr="[object Error]",J="[object Function]",ir="[object GeneratorFunction]",fr="[object Map]",ur="[object Number]",W="[object Object]",gr="[object RegExp]",lr="[object Set]",br="[object String]",yr="[object Symbol]",pr="[object WeakMap]",Tr="[object ArrayBuffer]",dr="[object DataView]",Ar="[object Float32Array]",jr="[object Float64Array]",hr="[object Int8Array]",wr="[object Int16Array]",vr="[object Int32Array]",$r="[object Uint8Array]",mr="[object Uint8ClampedArray]",Or="[object Uint16Array]",Sr="[object Uint32Array]",n={};n[H]=n[ar]=n[Tr]=n[dr]=n[or]=n[sr]=n[Ar]=n[jr]=n[hr]=n[wr]=n[vr]=n[fr]=n[ur]=n[W]=n[gr]=n[lr]=n[br]=n[yr]=n[$r]=n[mr]=n[Or]=n[Sr]=!0;n[cr]=n[J]=n[pr]=!1;function p(e,r,t,a,g,s){var o,i=r&rr,c=r&tr,Y=r&nr;if(t&&(o=g?t(e,a,g,s):t(e)),o!==void 0)return o;if(!T(e))return e;var h=ne(e);if(h){if(o=ve(e),!i)return se(e,o)}else{var l=d(e),w=l==J||l==ir;if(re(e))return pe(e,i);if(l==W||l==H||w&&!g){if(o=c||w?{}:Qe(e),!i)return c?Ae(e,be(o,e)):Te(e,le(o,e))}else{if(!n[l])return g?e:{};o=qe(e,l,i)}}s||(s=new te);var v=s.get(e);if(v)return v;s.set(e,o),er(e)?e.forEach(function(f){o.add(p(f,r,t,f,e,s))}):Ve(e)&&e.forEach(function(f,u){o.set(u,p(f,r,t,u,e,s))});var q=Y?c?je:ae:c?A:M,$=h?void 0:q(e);return ce($||e,function(f,u){$&&(u=f,f=e[u]),U(o,u,p(f,r,t,u,e,s))}),o}export{se as a,p as b,y as c,pe as d,xe as e,je as g,Qe as i,A as k}; import{cs as T,ct as Q,cu as U,cv as B,cw as X,cx as Z,cy as M,cz as V,cA as D,cB as z,cj as k,cC as G,cD as ee,cE as m,ch as O,cF as K,cG as d,cH as N,cI as b,cJ as re,cK as te,ce as ne,cL as ae}from"./index-CD29OCdJ.js";var S=Object.create,oe=(function(){function e(){}return function(r){if(!T(r))return{};if(S)return S(r);e.prototype=r;var t=new e;return e.prototype=void 0,t}})();function se(e,r){var t=-1,a=e.length;for(r||(r=Array(a));++t<a;)r[t]=e[t];return r}function ce(e,r){for(var t=-1,a=e==null?0:e.length;++t<a&&r(e[t],t,e)!==!1;);return e}function y(e,r,t,a){var g=!t;t||(t={});for(var s=-1,o=r.length;++s<o;){var i=r[s],c=void 0;c===void 0&&(c=e[i]),g?Q(t,i,c):U(t,i,c)}return t}function ie(e){var r=[];if(e!=null)for(var t in Object(e))r.push(t);return r}var fe=Object.prototype,ue=fe.hasOwnProperty;function ge(e){if(!T(e))return ie(e);var r=B(e),t=[];for(var a in e)a=="constructor"&&(r||!ue.call(e,a))||t.push(a);return t}function A(e){return X(e)?Z(e,!0):ge(e)}function le(e,r){return e&&y(r,M(r),e)}function be(e,r){return e&&y(r,A(r),e)}var _=typeof exports=="object"&&exports&&!exports.nodeType&&exports,x=_&&typeof module=="object"&&module&&!module.nodeType&&module,ye=x&&x.exports===_,I=ye?V.Buffer:void 0,C=I?I.allocUnsafe:void 0;function pe(e,r){if(r)return e.slice();var t=e.length,a=C?C(t):new e.constructor(t);return e.copy(a),a}function Te(e,r){return y(e,D(e),r)}var de=Object.getOwnPropertySymbols,R=de?function(e){for(var r=[];e;)k(r,D(e)),e=G(e);return r}:z;function Ae(e,r){return y(e,R(e),r)}function je(e){return ee(e,A,R)}var he=Object.prototype,we=he.hasOwnProperty;function ve(e){var r=e.length,t=new e.constructor(r);return r&&typeof e[0]=="string"&&we.call(e,"index")&&(t.index=e.index,t.input=e.input),t}function j(e){var r=new e.constructor(e.byteLength);return new m(r).set(new m(e)),r}function $e(e,r){var t=r?j(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.byteLength)}var me=/\w*$/;function Oe(e){var r=new e.constructor(e.source,me.exec(e));return r.lastIndex=e.lastIndex,r}var E=O?O.prototype:void 0,F=E?E.valueOf:void 0;function Se(e){return F?Object(F.call(e)):{}}function xe(e,r){var t=r?j(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.length)}var Ie="[object Boolean]",Ce="[object Date]",Ee="[object Map]",Fe="[object Number]",Le="[object RegExp]",Pe="[object Set]",Ue="[object String]",Be="[object Symbol]",Me="[object ArrayBuffer]",De="[object DataView]",Ge="[object Float32Array]",Ke="[object Float64Array]",Ne="[object Int8Array]",_e="[object Int16Array]",Re="[object Int32Array]",He="[object Uint8Array]",Je="[object Uint8ClampedArray]",We="[object Uint16Array]",Ye="[object Uint32Array]";function qe(e,r,t){var a=e.constructor;switch(r){case Me:return j(e);case Ie:case Ce:return new a(+e);case De:return $e(e,t);case Ge:case Ke:case Ne:case _e:case Re:case He:case Je:case We:case Ye:return xe(e,t);case Ee:return new a;case Fe:case Ue:return new a(e);case Le:return Oe(e);case Pe:return new a;case Be:return Se(e)}}function Qe(e){return typeof e.constructor=="function"&&!B(e)?oe(G(e)):{}}var Xe="[object Map]";function Ze(e){return K(e)&&d(e)==Xe}var L=b&&b.isMap,Ve=L?N(L):Ze,ze="[object Set]";function ke(e){return K(e)&&d(e)==ze}var P=b&&b.isSet,er=P?N(P):ke,rr=1,tr=2,nr=4,H="[object Arguments]",ar="[object Array]",or="[object Boolean]",sr="[object Date]",cr="[object Error]",J="[object Function]",ir="[object GeneratorFunction]",fr="[object Map]",ur="[object Number]",W="[object Object]",gr="[object RegExp]",lr="[object Set]",br="[object String]",yr="[object Symbol]",pr="[object WeakMap]",Tr="[object ArrayBuffer]",dr="[object DataView]",Ar="[object Float32Array]",jr="[object Float64Array]",hr="[object Int8Array]",wr="[object Int16Array]",vr="[object Int32Array]",$r="[object Uint8Array]",mr="[object Uint8ClampedArray]",Or="[object Uint16Array]",Sr="[object Uint32Array]",n={};n[H]=n[ar]=n[Tr]=n[dr]=n[or]=n[sr]=n[Ar]=n[jr]=n[hr]=n[wr]=n[vr]=n[fr]=n[ur]=n[W]=n[gr]=n[lr]=n[br]=n[yr]=n[$r]=n[mr]=n[Or]=n[Sr]=!0;n[cr]=n[J]=n[pr]=!1;function p(e,r,t,a,g,s){var o,i=r&rr,c=r&tr,Y=r&nr;if(t&&(o=g?t(e,a,g,s):t(e)),o!==void 0)return o;if(!T(e))return e;var h=ne(e);if(h){if(o=ve(e),!i)return se(e,o)}else{var l=d(e),w=l==J||l==ir;if(re(e))return pe(e,i);if(l==W||l==H||w&&!g){if(o=c||w?{}:Qe(e),!i)return c?Ae(e,be(o,e)):Te(e,le(o,e))}else{if(!n[l])return g?e:{};o=qe(e,l,i)}}s||(s=new te);var v=s.get(e);if(v)return v;s.set(e,o),er(e)?e.forEach(function(f){o.add(p(f,r,t,f,e,s))}):Ve(e)&&e.forEach(function(f,u){o.set(u,p(f,r,t,u,e,s))});var q=Y?c?je:ae:c?A:M,$=h?void 0:q(e);return ce($||e,function(f,u){$&&(u=f,f=e[u]),U(o,u,p(f,r,t,u,e,s))}),o}export{se as a,p as b,y as c,pe as d,xe as e,je as g,Qe as i,A as k};

View File

@@ -1 +1 @@
import{cK as O,d2 as a,cs as P,cy as p,d3 as A,cl as l,cU as M,co as _,ce as d}from"./index-D5veDkuG.js";import{h as g,i as m}from"./index-BT1A2I5c.js";var C=1,I=2;function L(n,r,e,t){var i=e.length,u=i;if(n==null)return!u;for(n=Object(n);i--;){var f=e[i];if(f[2]?f[1]!==n[f[0]]:!(f[0]in n))return!1}for(;++i<u;){f=e[i];var s=f[0],o=n[s],y=f[1];if(f[2]){if(o===void 0&&!(s in n))return!1}else{var E=new O,c;if(!(c===void 0?a(y,o,C|I,t,E):c))return!1}}return!0}function R(n){return n===n&&!P(n)}function D(n){for(var r=p(n),e=r.length;e--;){var t=r[e],i=n[t];r[e]=[t,i,R(i)]}return r}function h(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function G(n){var r=D(n);return r.length==1&&r[0][2]?h(r[0][0],r[0][1]):function(e){return e===n||L(e,n,r)}}var w=1,F=2;function b(n,r){return A(n)&&R(r)?h(l(n),r):function(e){var t=M(e,n);return t===void 0&&t===r?g(e,n):a(r,t,w|F)}}function K(n){return function(r){return r==null?void 0:r[n]}}function S(n){return function(r){return _(r,n)}}function U(n){return A(n)?K(l(n)):S(n)}function T(n){return typeof n=="function"?n:n==null?m:typeof n=="object"?d(n)?b(n[0],n[1]):G(n):U(n)}export{T as b}; import{cK as O,d2 as a,cs as P,cy as p,d3 as A,cl as l,cU as M,co as _,ce as d}from"./index-CD29OCdJ.js";import{h as g,i as m}from"./index-DpY84JwG.js";var C=1,I=2;function L(n,r,e,t){var i=e.length,u=i;if(n==null)return!u;for(n=Object(n);i--;){var f=e[i];if(f[2]?f[1]!==n[f[0]]:!(f[0]in n))return!1}for(;++i<u;){f=e[i];var s=f[0],o=n[s],y=f[1];if(f[2]){if(o===void 0&&!(s in n))return!1}else{var E=new O,c;if(!(c===void 0?a(y,o,C|I,t,E):c))return!1}}return!0}function R(n){return n===n&&!P(n)}function D(n){for(var r=p(n),e=r.length;e--;){var t=r[e],i=n[t];r[e]=[t,i,R(i)]}return r}function h(n,r){return function(e){return e==null?!1:e[n]===r&&(r!==void 0||n in Object(e))}}function G(n){var r=D(n);return r.length==1&&r[0][2]?h(r[0][0],r[0][1]):function(e){return e===n||L(e,n,r)}}var w=1,F=2;function b(n,r){return A(n)&&R(r)?h(l(n),r):function(e){var t=M(e,n);return t===void 0&&t===r?g(e,n):a(r,t,w|F)}}function K(n){return function(r){return r==null?void 0:r[n]}}function S(n){return function(r){return _(r,n)}}function U(n){return A(n)?K(l(n)):S(n)}function T(n){return typeof n=="function"?n:n==null?m:typeof n=="object"?d(n)?b(n[0],n[1]):G(n):U(n)}export{T as b};

View File

@@ -1 +1 @@
import{ce as a}from"./index-D5veDkuG.js";function e(){if(!arguments.length)return[];var r=arguments[0];return a(r)?r:[r]}export{e as c}; import{ce as a}from"./index-CD29OCdJ.js";function e(){if(!arguments.length)return[];var r=arguments[0];return a(r)?r:[r]}export{e as c};

View File

@@ -1 +1 @@
import{t as n}from"./toNumber-a8w_gs0u.js";function t(d,f,i){return d===d&&(i!==void 0&&(d=d<=i?d:i),f!==void 0&&(d=d>=f?d:f)),d}function c(d,f,i){return i===void 0&&(i=f,f=void 0),i!==void 0&&(i=n(i),i=i===i?i:0),f!==void 0&&(f=n(f),f=f===f?f:0),t(n(d),f,i)}export{c}; import{t as n}from"./toNumber-B6P5MqPp.js";function t(d,f,i){return d===d&&(i!==void 0&&(d=d<=i?d:i),f!==void 0&&(d=d>=f?d:f)),d}function c(d,f,i){return i===void 0&&(i=f,f=void 0),i!==void 0&&(i=n(i),i=i===i?i:0),f!==void 0&&(f=n(f),f=f===f?f:0),t(n(d),f,i)}export{c};

View File

@@ -1 +1 @@
import{aF as n,aG as t,aI as l}from"./index-D5veDkuG.js";const p=()=>n("/model-compare"),i=e=>n(`/model-compare/${e}`),u=e=>l(`/model-compare/${e}`),h=e=>t("/model-compare/stop-by-pid",{pid:e}),g=e=>t(`/model-compare/${e}/load`),C=e=>t(`/model-compare/${e}/unload`),y=async e=>{const a=await t("/model-compare/stream-chat",e);return{ok:!0,body:{getReader:()=>{const o=(a==null?void 0:a.response)||"",r=new TextEncoder,s=[o.slice(0,o.length/3),o.slice(o.length/3,2*o.length/3),o.slice(2*o.length/3)];let c=0;return{read:async()=>c>=s.length?{done:!0,value:void 0}:{done:!1,value:r.encode(s[c++])}}}}}},v=e=>t("/model-compare/chat-with-port",e);export{i as a,y as b,v as c,u as d,p as g,g as l,h as s,C as u}; import{aF as n,aG as t,aI as l}from"./index-CD29OCdJ.js";const p=()=>n("/model-compare"),i=e=>n(`/model-compare/${e}`),u=e=>l(`/model-compare/${e}`),h=e=>t("/model-compare/stop-by-pid",{pid:e}),g=e=>t(`/model-compare/${e}/load`),C=e=>t(`/model-compare/${e}/unload`),y=async e=>{const a=await t("/model-compare/stream-chat",e);return{ok:!0,body:{getReader:()=>{const o=(a==null?void 0:a.response)||"",r=new TextEncoder,s=[o.slice(0,o.length/3),o.slice(o.length/3,2*o.length/3),o.slice(2*o.length/3)];let c=0;return{read:async()=>c>=s.length?{done:!0,value:void 0}:{done:!1,value:r.encode(s[c++])}}}}}},v=e=>t("/model-compare/chat-with-port",e);export{i as a,y as b,v as c,u as d,p as g,g as l,h as s,C as u};

View File

@@ -1 +1 @@
import{_ as M,ah as y,T as A,a7 as D,aS as I,aT as w}from"./install-xW84yjr9.js";var T=(function(){function s(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return s})(),x=(function(s){M(r,s);function r(t){var a=s.call(this,t)||this;return a.type="sausage",a}return r.prototype.getDefaultShape=function(){return new T},r.prototype.buildPath=function(t,a){var c=a.cx,e=a.cy,o=Math.max(a.r0||0,0),u=Math.max(a.r,0),l=(u-o)*.5,v=o+l,n=a.startAngle,i=a.endAngle,h=a.clockwise,S=Math.PI*2,d=h?i-n<S:n-i<S;d||(n=i-(h?S:-S));var g=Math.cos(n),f=Math.sin(n),m=Math.cos(i),P=Math.sin(i);d?(t.moveTo(g*o+c,f*o+e),t.arc(g*v+c,f*v+e,l,-Math.PI+n,n,!h)):t.moveTo(g*u+c,f*u+e),t.arc(c,e,u,n,i,!h),t.arc(m*v+c,P*v+e,l,i-Math.PI*2,i-Math.PI,!h),o!==0&&t.arc(c,e,o,i,n,h)},r})(y);function E(s,r,t){r=A(r)&&{coordDimensions:r}||D({encodeDefine:s.getEncode()},r);var a=s.getSource(),c=I(a,r).dimensions,e=new w(c,s);return e.initData(a,t),e}export{x as S,E as c}; import{_ as M,ah as y,T as A,a7 as D,aS as I,aT as w}from"./install-qcIyCJ5C.js";var T=(function(){function s(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=Math.PI*2,this.clockwise=!0}return s})(),x=(function(s){M(r,s);function r(t){var a=s.call(this,t)||this;return a.type="sausage",a}return r.prototype.getDefaultShape=function(){return new T},r.prototype.buildPath=function(t,a){var c=a.cx,e=a.cy,o=Math.max(a.r0||0,0),u=Math.max(a.r,0),l=(u-o)*.5,v=o+l,n=a.startAngle,i=a.endAngle,h=a.clockwise,S=Math.PI*2,d=h?i-n<S:n-i<S;d||(n=i-(h?S:-S));var g=Math.cos(n),f=Math.sin(n),m=Math.cos(i),P=Math.sin(i);d?(t.moveTo(g*o+c,f*o+e),t.arc(g*v+c,f*v+e,l,-Math.PI+n,n,!h)):t.moveTo(g*u+c,f*u+e),t.arc(c,e,u,n,i,!h),t.arc(m*v+c,P*v+e,l,i-Math.PI*2,i-Math.PI,!h),o!==0&&t.arc(c,e,o,i,n,h)},r})(y);function E(s,r,t){r=A(r)&&{coordDimensions:r}||D({encodeDefine:s.getEncode()},r);var a=s.getSource(),c=I(a,r).dimensions,e=new w(c,s);return e.initData(a,t),e}export{x as S,E as c};

View File

@@ -0,0 +1 @@
import{aF as a,aI as n,aH as c,aG as s}from"./index-CD29OCdJ.js";function u(e={}){return a("/data-process",e)}const m=e=>a(`/data-process/${encodeURIComponent(e)}`),l=e=>s("/data-process",e),i=(e,o)=>c(`/data-process/${encodeURIComponent(e)}`,o),R=e=>n(`/data-process/${encodeURIComponent(e)}`);function C(e,o){const t=new FormData;return o.forEach(r=>t.append("files",r)),s(`/data-process/${encodeURIComponent(e)}/source-files`,t,{headers:{"Content-Type":"multipart/form-data"}})}const P=(e,o)=>n(`/data-process/${encodeURIComponent(e)}/source-files/${encodeURIComponent(o)}`),I=(e,o,t={})=>a(`/data-process/${encodeURIComponent(e)}/source-files/${encodeURIComponent(o)}/content`,t),U=(e,o)=>{const{query:t,file_name:r,...p}=o;return s(`/data-process/${encodeURIComponent(e)}/external/test`,p)},$=(e,o)=>s(`/data-process/${encodeURIComponent(e)}/external/pull`,o),D=(e,o={})=>s(`/data-process/${encodeURIComponent(e)}/preview/build`,o);function f(e,o={}){return a(`/data-process/${encodeURIComponent(e)}/preview`,o)}const g=(e,o,t)=>c(`/data-process/${encodeURIComponent(e)}/preview/${encodeURIComponent(o)}`,t),v=(e,o)=>s(`/data-process/${encodeURIComponent(e)}/preview`,o),w=(e,o)=>n(`/data-process/${encodeURIComponent(e)}/preview/${encodeURIComponent(o)}`),k=e=>s(`/data-process/${encodeURIComponent(e)}/generate`),T=e=>s(`/data-process/${encodeURIComponent(e)}/stop`),b=e=>a(`/data-process/${encodeURIComponent(e)}/progress`);function h(e,o={}){return a(`/data-process/${encodeURIComponent(e)}/results`,o)}const x=(e,o,t)=>c(`/data-process/${encodeURIComponent(e)}/results/${encodeURIComponent(o)}`,t),S=(e,o)=>s(`/data-process/${encodeURIComponent(e)}/results/${encodeURIComponent(o)}/restore`),F=(e,o)=>s(`/data-process/${encodeURIComponent(e)}/publish`,o);export{k as a,b,h as c,R as d,m as e,I as f,u as g,g as h,i,l as j,D as k,f as l,C as m,P as n,v as o,$ as p,w as q,S as r,T as s,U as t,x as u,F as v};

View File

@@ -1 +1 @@
import{aF as n,aH as d,aG as o,aI as r}from"./index-D5veDkuG.js";const c=()=>n("/dataset-manage"),m=e=>n(`/dataset-manage/${e}`),l=e=>o("/dataset-manage",e),p=(e,a)=>d(`/dataset-manage/${e}`,a),g=e=>r(`/dataset-manage/${e}`),$=(e,a)=>{const t=new FormData;return a.forEach(s=>t.append("files",s)),o(`/dataset-manage/upload/${e}`,t,{headers:{"Content-Type":"multipart/form-data"}})},D=e=>n(`/dataset-manage/versions/${encodeURIComponent(e)}`),_=(e,a)=>n(`/dataset-manage/versions/${encodeURIComponent(e)}/${encodeURIComponent(a)}`),u=(e,a,t)=>o(`/dataset-manage/versions/${encodeURIComponent(e)}`,{content:a,description:t.description||"在线编辑",base_version_id:t.baseVersionId,expected_current_version_id:t.expectedCurrentVersionId}),v=(e,a,t)=>d(`/dataset-manage/versions/${encodeURIComponent(e)}/active`,{version_id:a,expected_current_version_id:t}),C=(e,a,t)=>r(`/dataset-manage/versions/${encodeURIComponent(e)}/${encodeURIComponent(a)}`,{expected_current_version_id:t}),F=(e,a,t)=>{const s=`/modelTF/dataset-manage/download/${e}/${a}`;return t?`${s}?version_id=${encodeURIComponent(t)}`:s},U=e=>`/modelTF/dataset-manage/download/${e}`;export{U as a,m as b,$ as c,g as d,l as e,D as f,c as g,_ as h,u as i,F as j,v as k,C as l,p as u}; import{aF as n,aH as d,aG as o,aI as r}from"./index-CD29OCdJ.js";const c=()=>n("/dataset-manage"),m=e=>n(`/dataset-manage/${e}`),l=e=>o("/dataset-manage",e),p=(e,a)=>d(`/dataset-manage/${e}`,a),g=e=>r(`/dataset-manage/${e}`),$=(e,a)=>{const t=new FormData;return a.forEach(s=>t.append("files",s)),o(`/dataset-manage/upload/${e}`,t,{headers:{"Content-Type":"multipart/form-data"}})},D=e=>n(`/dataset-manage/versions/${encodeURIComponent(e)}`),_=(e,a)=>n(`/dataset-manage/versions/${encodeURIComponent(e)}/${encodeURIComponent(a)}`),u=(e,a,t)=>o(`/dataset-manage/versions/${encodeURIComponent(e)}`,{content:a,description:t.description||"在线编辑",base_version_id:t.baseVersionId,expected_current_version_id:t.expectedCurrentVersionId}),v=(e,a,t)=>d(`/dataset-manage/versions/${encodeURIComponent(e)}/active`,{version_id:a,expected_current_version_id:t}),C=(e,a,t)=>r(`/dataset-manage/versions/${encodeURIComponent(e)}/${encodeURIComponent(a)}`,{expected_current_version_id:t}),F=(e,a,t)=>{const s=`/modelTF/dataset-manage/download/${e}/${a}`;return t?`${s}?version_id=${encodeURIComponent(t)}`:s},U=e=>`/modelTF/dataset-manage/download/${e}`;export{U as a,m as b,$ as c,g as d,l as e,D as f,c as g,_ as h,u as i,F as j,v as k,C as l,p as u};

View File

@@ -1 +1 @@
import{cz as S,cs as y}from"./index-D5veDkuG.js";import{t as b}from"./toNumber-a8w_gs0u.js";var h=function(){return S.Date.now()},R="Expected a function",A=Math.max,F=Math.min;function _(x,i,a){var u,d,m,f,n,r,o=0,E=!1,c=!1,g=!0;if(typeof x!="function")throw new TypeError(R);i=b(i)||0,y(a)&&(E=!!a.leading,c="maxWait"in a,m=c?A(b(a.maxWait)||0,i):m,g="trailing"in a?!!a.trailing:g);function v(e){var t=u,l=d;return u=d=void 0,o=e,f=x.apply(l,t),f}function p(e){return o=e,n=setTimeout(s,i),E?v(e):f}function C(e){var t=e-r,l=e-o,W=i-t;return c?F(W,m-l):W}function k(e){var t=e-r,l=e-o;return r===void 0||t>=i||t<0||c&&l>=m}function s(){var e=h();if(k(e))return I(e);n=setTimeout(s,C(e))}function I(e){return n=void 0,g&&u?v(e):(u=d=void 0,f)}function L(){n!==void 0&&clearTimeout(n),o=0,u=r=d=n=void 0}function M(){return n===void 0?f:I(h())}function T(){var e=h(),t=k(e);if(u=arguments,d=this,r=e,t){if(n===void 0)return p(r);if(c)return clearTimeout(n),n=setTimeout(s,i),v(r)}return n===void 0&&(n=setTimeout(s,i)),f}return T.cancel=L,T.flush=M,T}export{_ as d}; import{cz as S,cs as y}from"./index-CD29OCdJ.js";import{t as b}from"./toNumber-B6P5MqPp.js";var h=function(){return S.Date.now()},R="Expected a function",A=Math.max,F=Math.min;function _(x,i,a){var u,d,m,f,n,r,o=0,E=!1,c=!1,g=!0;if(typeof x!="function")throw new TypeError(R);i=b(i)||0,y(a)&&(E=!!a.leading,c="maxWait"in a,m=c?A(b(a.maxWait)||0,i):m,g="trailing"in a?!!a.trailing:g);function v(e){var t=u,l=d;return u=d=void 0,o=e,f=x.apply(l,t),f}function p(e){return o=e,n=setTimeout(s,i),E?v(e):f}function C(e){var t=e-r,l=e-o,W=i-t;return c?F(W,m-l):W}function k(e){var t=e-r,l=e-o;return r===void 0||t>=i||t<0||c&&l>=m}function s(){var e=h();if(k(e))return I(e);n=setTimeout(s,C(e))}function I(e){return n=void 0,g&&u?v(e):(u=d=void 0,f)}function L(){n!==void 0&&clearTimeout(n),o=0,u=r=d=n=void 0}function M(){return n===void 0?f:I(h())}function T(){var e=h(),t=k(e);if(u=arguments,d=this,r=e,t){if(n===void 0)return p(r);if(c)return clearTimeout(n),n=setTimeout(s,i),v(r)}return n===void 0&&(n=setTimeout(s,i)),f}return T.cancel=L,T.flush=M,T}export{_ as d};

View File

@@ -1 +1 @@
import{z as E,d7 as P,d as O,bp as z,I as g,w as j,K as R,s as K,L as Z,Z as q,aV as D,y as B,a0 as y,bt as F,P as I,J as S,bL as m,_ as k,a3 as _,aB as G,d8 as H}from"./index-D5veDkuG.js";function J(e,s){let t;const o=B(!1),n=E({...e,originalPosition:"",originalOverflow:"",visible:!1});function r(l){n.text=l}function c(){const l=n.parent,u=f.ns;if(!l.vLoadingAddClassList){let i=l.getAttribute("loading-number");i=Number.parseInt(i)-1,i?l.setAttribute("loading-number",i.toString()):(y(l,u.bm("parent","relative")),l.removeAttribute("loading-number")),y(l,u.bm("parent","hidden"))}v(),C.unmount()}function v(){var l,u;(u=(l=f.$el)==null?void 0:l.parentNode)==null||u.removeChild(f.$el)}function x(){var l;e.beforeClose&&!e.beforeClose()||(o.value=!0,clearTimeout(t),t=setTimeout(a,400),n.visible=!1,(l=e.closed)==null||l.call(e))}function a(){if(!o.value)return;const l=n.parent;o.value=!1,l.vLoadingAddClassList=void 0,c()}const C=P(O({name:"ElLoading",setup(l,{expose:u}){const{ns:i,zIndex:N}=z("loading");return u({ns:i,zIndex:N}),()=>{const A=n.spinner||n.svg,T=g("svg",{class:"circular",viewBox:n.svgViewBox?n.svgViewBox:"0 0 50 50",...A?{innerHTML:A}:{}},[g("circle",{class:"path",cx:"25",cy:"25",r:"20",fill:"none"})]),V=n.text?g("p",{class:i.b("text")},[n.text]):void 0;return g(q,{name:i.b("fade"),onAfterLeave:a},{default:j(()=>[R(K("div",{style:{backgroundColor:n.background||""},class:[i.b("mask"),n.customClass,i.is("fullscreen",n.fullscreen)]},[g("div",{class:i.b("spinner")},[T,V])]),[[Z,n.visible]])])})}}}));Object.assign(C._context,s??{});const f=C.mount(document.createElement("div"));return{...D(n),setText:r,removeElLoadingChild:v,close:x,handleAfterLeave:a,vm:f,get $el(){return f.$el}}}let p;const L=function(e={},s){if(!F)return;const t=M(e);if(t.fullscreen&&p)return p;const o=J({...t,closed:()=>{var r;(r=t.closed)==null||r.call(t),t.fullscreen&&(p=void 0)}},s??L._context);Y(t,t.parent,o),w(t,t.parent,o),t.parent.vLoadingAddClassList=()=>w(t,t.parent,o);let n=t.parent.getAttribute("loading-number");return n?n=`${Number.parseInt(n)+1}`:n="1",t.parent.setAttribute("loading-number",n),t.parent.appendChild(o.$el),I(()=>o.visible.value=t.visible),t.fullscreen&&(p=o),o},M=e=>{let s;return S(e.target)?s=document.querySelector(e.target)??document.body:s=e.target||document.body,{parent:s===document.body||e.body?document.body:s,background:e.background||"",svg:e.svg||"",svgViewBox:e.svgViewBox||"",spinner:e.spinner||!1,text:e.text||"",fullscreen:s===document.body&&(e.fullscreen??!0),lock:e.lock??!1,customClass:e.customClass||"",visible:e.visible??!0,beforeClose:e.beforeClose,closed:e.closed,target:s}},Y=async(e,s,t)=>{const{nextZIndex:o}=t.vm.zIndex||t.vm._.exposed.zIndex,n={};if(e.fullscreen)t.originalPosition.value=m(document.body,"position"),t.originalOverflow.value=m(document.body,"overflow"),n.zIndex=o();else if(e.parent===document.body){t.originalPosition.value=m(document.body,"position"),await I();for(const r of["top","left"]){const c=r==="top"?"scrollTop":"scrollLeft";n[r]=`${e.target.getBoundingClientRect()[r]+document.body[c]+document.documentElement[c]-Number.parseInt(m(document.body,`margin-${r}`),10)}px`}for(const r of["height","width"])n[r]=`${e.target.getBoundingClientRect()[r]}px`}else t.originalPosition.value=m(s,"position");for(const[r,c]of Object.entries(n))t.$el.style[r]=c},w=(e,s,t)=>{const o=t.vm.ns||t.vm._.exposed.ns;["absolute","fixed","sticky"].includes(t.originalPosition.value)?y(s,o.bm("parent","relative")):k(s,o.bm("parent","relative")),e.fullscreen&&e.lock?k(s,o.bm("parent","hidden")):y(s,o.bm("parent","hidden"))};L._context=null;const b=Symbol("ElLoading"),d=e=>`element-loading-${H(e)}`,h=(e,s)=>{const t=s.instance,o=a=>_(s.value)?s.value[a]:void 0,n=a=>B(S(a)&&(t==null?void 0:t[a])||a),r=a=>n(o(a)||e.getAttribute(d(a))),c=o("fullscreen")??s.modifiers.fullscreen,v={text:r("text"),svg:r("svg"),svgViewBox:r("svgViewBox"),spinner:r("spinner"),background:r("background"),customClass:r("customClass"),fullscreen:c,target:o("target")??(c?void 0:e),body:o("body")??s.modifiers.body,lock:o("lock")??s.modifiers.lock},x=L(v);x._context=$._context,e[b]={options:v,instance:x}},Q=(e,s)=>{for(const t of Object.keys(e))G(e[t])&&(e[t].value=s[t])},$={mounted(e,s){s.value&&h(e,s)},updated(e,s){const t=e[b];if(!s.value){t==null||t.instance.close(),e[b]=null;return}t?Q(t.options,_(s.value)?s.value:{text:e.getAttribute(d("text")),svg:e.getAttribute(d("svg")),svgViewBox:e.getAttribute(d("svgViewBox")),spinner:e.getAttribute(d("spinner")),background:e.getAttribute(d("background")),customClass:e.getAttribute(d("customClass"))}):h(e,s)},unmounted(e){var s;(s=e[b])==null||s.instance.close(),e[b]=null}};$._context=null;export{$ as v}; import{z as E,d7 as P,d as O,bp as z,I as g,w as j,K as R,s as K,L as Z,Z as q,aV as D,y as B,a0 as y,bt as F,P as I,J as S,bL as m,_ as k,a3 as _,aB as G,d8 as H}from"./index-CD29OCdJ.js";function J(e,s){let t;const o=B(!1),n=E({...e,originalPosition:"",originalOverflow:"",visible:!1});function r(l){n.text=l}function c(){const l=n.parent,u=f.ns;if(!l.vLoadingAddClassList){let i=l.getAttribute("loading-number");i=Number.parseInt(i)-1,i?l.setAttribute("loading-number",i.toString()):(y(l,u.bm("parent","relative")),l.removeAttribute("loading-number")),y(l,u.bm("parent","hidden"))}v(),C.unmount()}function v(){var l,u;(u=(l=f.$el)==null?void 0:l.parentNode)==null||u.removeChild(f.$el)}function x(){var l;e.beforeClose&&!e.beforeClose()||(o.value=!0,clearTimeout(t),t=setTimeout(a,400),n.visible=!1,(l=e.closed)==null||l.call(e))}function a(){if(!o.value)return;const l=n.parent;o.value=!1,l.vLoadingAddClassList=void 0,c()}const C=P(O({name:"ElLoading",setup(l,{expose:u}){const{ns:i,zIndex:N}=z("loading");return u({ns:i,zIndex:N}),()=>{const A=n.spinner||n.svg,T=g("svg",{class:"circular",viewBox:n.svgViewBox?n.svgViewBox:"0 0 50 50",...A?{innerHTML:A}:{}},[g("circle",{class:"path",cx:"25",cy:"25",r:"20",fill:"none"})]),V=n.text?g("p",{class:i.b("text")},[n.text]):void 0;return g(q,{name:i.b("fade"),onAfterLeave:a},{default:j(()=>[R(K("div",{style:{backgroundColor:n.background||""},class:[i.b("mask"),n.customClass,i.is("fullscreen",n.fullscreen)]},[g("div",{class:i.b("spinner")},[T,V])]),[[Z,n.visible]])])})}}}));Object.assign(C._context,s??{});const f=C.mount(document.createElement("div"));return{...D(n),setText:r,removeElLoadingChild:v,close:x,handleAfterLeave:a,vm:f,get $el(){return f.$el}}}let p;const L=function(e={},s){if(!F)return;const t=M(e);if(t.fullscreen&&p)return p;const o=J({...t,closed:()=>{var r;(r=t.closed)==null||r.call(t),t.fullscreen&&(p=void 0)}},s??L._context);Y(t,t.parent,o),w(t,t.parent,o),t.parent.vLoadingAddClassList=()=>w(t,t.parent,o);let n=t.parent.getAttribute("loading-number");return n?n=`${Number.parseInt(n)+1}`:n="1",t.parent.setAttribute("loading-number",n),t.parent.appendChild(o.$el),I(()=>o.visible.value=t.visible),t.fullscreen&&(p=o),o},M=e=>{let s;return S(e.target)?s=document.querySelector(e.target)??document.body:s=e.target||document.body,{parent:s===document.body||e.body?document.body:s,background:e.background||"",svg:e.svg||"",svgViewBox:e.svgViewBox||"",spinner:e.spinner||!1,text:e.text||"",fullscreen:s===document.body&&(e.fullscreen??!0),lock:e.lock??!1,customClass:e.customClass||"",visible:e.visible??!0,beforeClose:e.beforeClose,closed:e.closed,target:s}},Y=async(e,s,t)=>{const{nextZIndex:o}=t.vm.zIndex||t.vm._.exposed.zIndex,n={};if(e.fullscreen)t.originalPosition.value=m(document.body,"position"),t.originalOverflow.value=m(document.body,"overflow"),n.zIndex=o();else if(e.parent===document.body){t.originalPosition.value=m(document.body,"position"),await I();for(const r of["top","left"]){const c=r==="top"?"scrollTop":"scrollLeft";n[r]=`${e.target.getBoundingClientRect()[r]+document.body[c]+document.documentElement[c]-Number.parseInt(m(document.body,`margin-${r}`),10)}px`}for(const r of["height","width"])n[r]=`${e.target.getBoundingClientRect()[r]}px`}else t.originalPosition.value=m(s,"position");for(const[r,c]of Object.entries(n))t.$el.style[r]=c},w=(e,s,t)=>{const o=t.vm.ns||t.vm._.exposed.ns;["absolute","fixed","sticky"].includes(t.originalPosition.value)?y(s,o.bm("parent","relative")):k(s,o.bm("parent","relative")),e.fullscreen&&e.lock?k(s,o.bm("parent","hidden")):y(s,o.bm("parent","hidden"))};L._context=null;const b=Symbol("ElLoading"),d=e=>`element-loading-${H(e)}`,h=(e,s)=>{const t=s.instance,o=a=>_(s.value)?s.value[a]:void 0,n=a=>B(S(a)&&(t==null?void 0:t[a])||a),r=a=>n(o(a)||e.getAttribute(d(a))),c=o("fullscreen")??s.modifiers.fullscreen,v={text:r("text"),svg:r("svg"),svgViewBox:r("svgViewBox"),spinner:r("spinner"),background:r("background"),customClass:r("customClass"),fullscreen:c,target:o("target")??(c?void 0:e),body:o("body")??s.modifiers.body,lock:o("lock")??s.modifiers.lock},x=L(v);x._context=$._context,e[b]={options:v,instance:x}},Q=(e,s)=>{for(const t of Object.keys(e))G(e[t])&&(e[t].value=s[t])},$={mounted(e,s){s.value&&h(e,s)},updated(e,s){const t=e[b];if(!s.value){t==null||t.instance.close(),e[b]=null;return}t?Q(t.options,_(s.value)?s.value:{text:e.getAttribute(d("text")),svg:e.getAttribute(d("svg")),svgViewBox:e.getAttribute(d("svgViewBox")),spinner:e.getAttribute(d("spinner")),background:e.getAttribute(d("background")),customClass:e.getAttribute(d("customClass"))}):h(e,s)},unmounted(e){var s;(s=e[b])==null||s.instance.close(),e[b]=null}};$._context=null;export{$ as v};

View File

@@ -1 +1 @@
import{b as p,W as o,R as e,i as a}from"./index-D5veDkuG.js";import{u as t,r as n,b as r}from"./el-popper-DDJTxf27.js";const d=p({trigger:{...r.trigger,type:e([String,Array])},triggerKeys:{type:e(Array),default:()=>[o.enter,o.numpadEnter,o.space,o.down]},virtualTriggering:r.virtualTriggering,virtualRef:r.virtualRef,effect:{...t.effect,default:"light"},type:{type:e(String)},placement:{type:e(String),default:"bottom"},popperOptions:{type:e(Object),default:()=>({})},id:String,size:{type:String,default:""},splitButton:Boolean,hideOnClick:{type:Boolean,default:!0},loop:{type:Boolean,default:!0},showArrow:{type:Boolean,default:!0},showTimeout:{type:Number,default:150},hideTimeout:{type:Number,default:150},tabindex:{type:e([Number,String]),default:0},maxHeight:{type:e([Number,String]),default:""},popperClass:t.popperClass,popperStyle:t.popperStyle,disabled:Boolean,role:{type:String,values:n,default:"menu"},buttonProps:{type:e(Object)},teleported:t.teleported,appendTo:t.appendTo,persistent:{type:Boolean,default:!0}}),u=p({command:{type:[Object,String,Number],default:()=>({})},disabled:Boolean,divided:Boolean,textValue:String,icon:{type:a}}),s=p({onKeydown:{type:e(Function)}});export{u as a,s as b,d}; import{b as p,W as o,R as e,i as a}from"./index-CD29OCdJ.js";import{u as t,r as n,b as r}from"./el-popper-DIiB8Y-M.js";const d=p({trigger:{...r.trigger,type:e([String,Array])},triggerKeys:{type:e(Array),default:()=>[o.enter,o.numpadEnter,o.space,o.down]},virtualTriggering:r.virtualTriggering,virtualRef:r.virtualRef,effect:{...t.effect,default:"light"},type:{type:e(String)},placement:{type:e(String),default:"bottom"},popperOptions:{type:e(Object),default:()=>({})},id:String,size:{type:String,default:""},splitButton:Boolean,hideOnClick:{type:Boolean,default:!0},loop:{type:Boolean,default:!0},showArrow:{type:Boolean,default:!0},showTimeout:{type:Number,default:150},hideTimeout:{type:Number,default:150},tabindex:{type:e([Number,String]),default:0},maxHeight:{type:e([Number,String]),default:""},popperClass:t.popperClass,popperStyle:t.popperStyle,disabled:Boolean,role:{type:String,values:n,default:"menu"},buttonProps:{type:e(Object)},teleported:t.teleported,appendTo:t.appendTo,persistent:{type:Boolean,default:!0}}),u=p({command:{type:[Object,String,Number],default:()=>({})},disabled:Boolean,divided:Boolean,textValue:String,icon:{type:a}}),s=p({onKeydown:{type:e(Function)}});export{u as a,s as b,d};

View File

@@ -1 +1 @@
import{b as N,bI as $,bs as S,d as D,bF as V,a as x,o as l,e as n,w as d,K as M,q as h,n as o,f as e,E as k,h as m,r as A,g as i,c,x as g,aa as v,M as F,s as P,bo as j,L as q,Z as z,y as K,j as E,l as L}from"./index-D5veDkuG.js";import{f as O,b as Z}from"./vnode-CYZHqsIy.js";const G=["light","dark"],H=N({title:{type:String,default:""},description:{type:String,default:""},type:{type:String,values:$(S),default:"info"},closable:{type:Boolean,default:!0},closeText:{type:String,default:""},showIcon:Boolean,center:Boolean,effect:{type:String,values:G,default:"light"}}),J={close:t=>t instanceof MouseEvent};var Q=D({name:"ElAlert",__name:"alert",props:H,emits:J,setup(t,{emit:w}){const{Close:B}=j,p=t,T=w,r=V(),s=x("alert"),y=K(!0),b=E(()=>S[p.type]),u=E(()=>{var f;if(p.description)return!0;const a=(f=r.default)==null?void 0:f.call(r);return a?O(a).some(I=>!Z(I)):!1}),C=a=>{y.value=!1,T("close",a)};return(a,f)=>(l(),n(z,{name:e(s).b("fade"),persisted:""},{default:d(()=>[M(h("div",{class:o([e(s).b(),e(s).m(t.type),e(s).is("center",t.center),e(s).is(t.effect)]),role:"alert"},[t.showIcon&&(a.$slots.icon||b.value)?(l(),n(e(k),{key:0,class:o([e(s).e("icon"),e(s).is("big",u.value)])},{default:d(()=>[m(a.$slots,"icon",{},()=>[(l(),n(A(b.value)))])]),_:3},8,["class"])):i("v-if",!0),h("div",{class:o(e(s).e("content"))},[t.title||a.$slots.title?(l(),c("span",{key:0,class:o([e(s).e("title"),{"with-description":u.value}])},[m(a.$slots,"title",{},()=>[g(v(t.title),1)])],2)):i("v-if",!0),u.value?(l(),c("p",{key:1,class:o(e(s).e("description"))},[m(a.$slots,"default",{},()=>[g(v(t.description),1)])],2)):i("v-if",!0),t.closable?(l(),c(F,{key:2},[t.closeText?(l(),c("div",{key:0,class:o([e(s).e("close-btn"),e(s).is("customed")]),onClick:C},v(t.closeText),3)):(l(),n(e(k),{key:1,class:o(e(s).e("close-btn")),onClick:C},{default:d(()=>[P(e(B))]),_:1},8,["class"]))],64)):i("v-if",!0)],2)],2),[[q,y.value]])]),_:3},8,["name"]))}}),R=Q;const X=L(R);export{X as E}; import{b as N,bI as $,bs as S,d as D,bF as V,a as x,o as l,e as n,w as d,K as M,q as h,n as o,f as e,E as k,h as m,r as A,g as i,c,x as g,aa as v,M as F,s as P,bo as j,L as q,Z as z,y as K,j as E,l as L}from"./index-CD29OCdJ.js";import{f as O,b as Z}from"./vnode-_QM9LlTR.js";const G=["light","dark"],H=N({title:{type:String,default:""},description:{type:String,default:""},type:{type:String,values:$(S),default:"info"},closable:{type:Boolean,default:!0},closeText:{type:String,default:""},showIcon:Boolean,center:Boolean,effect:{type:String,values:G,default:"light"}}),J={close:t=>t instanceof MouseEvent};var Q=D({name:"ElAlert",__name:"alert",props:H,emits:J,setup(t,{emit:w}){const{Close:B}=j,p=t,T=w,r=V(),s=x("alert"),y=K(!0),b=E(()=>S[p.type]),u=E(()=>{var f;if(p.description)return!0;const a=(f=r.default)==null?void 0:f.call(r);return a?O(a).some(I=>!Z(I)):!1}),C=a=>{y.value=!1,T("close",a)};return(a,f)=>(l(),n(z,{name:e(s).b("fade"),persisted:""},{default:d(()=>[M(h("div",{class:o([e(s).b(),e(s).m(t.type),e(s).is("center",t.center),e(s).is(t.effect)]),role:"alert"},[t.showIcon&&(a.$slots.icon||b.value)?(l(),n(e(k),{key:0,class:o([e(s).e("icon"),e(s).is("big",u.value)])},{default:d(()=>[m(a.$slots,"icon",{},()=>[(l(),n(A(b.value)))])]),_:3},8,["class"])):i("v-if",!0),h("div",{class:o(e(s).e("content"))},[t.title||a.$slots.title?(l(),c("span",{key:0,class:o([e(s).e("title"),{"with-description":u.value}])},[m(a.$slots,"title",{},()=>[g(v(t.title),1)])],2)):i("v-if",!0),u.value?(l(),c("p",{key:1,class:o(e(s).e("description"))},[m(a.$slots,"default",{},()=>[g(v(t.description),1)])],2)):i("v-if",!0),t.closable?(l(),c(F,{key:2},[t.closeText?(l(),c("div",{key:0,class:o([e(s).e("close-btn"),e(s).is("customed")]),onClick:C},v(t.closeText),3)):(l(),n(e(k),{key:1,class:o(e(s).e("close-btn")),onClick:C},{default:d(()=>[P(e(B))]),_:1},8,["class"]))],64)):i("v-if",!0)],2)],2),[[q,y.value]])]),_:3},8,["name"]))}}),R=Q;const X=L(R);export{X as E};

View File

@@ -1 +1 @@
import{b as j,i as w,aj as z,R as c,ak as m,d as A,B as V,a as E,D as I,o as f,c as y,al as S,e as h,w as _,r as q,f as D,E as F,h as G,n as K,y as L,j as p,J as R,am as J,s as d,an as O,ao as U,x as $,F as H,z as M,a9 as g,l as Q,ab as W}from"./index-D5veDkuG.js";import{f as X}from"./vnode-CYZHqsIy.js";import{u as C,a as Y,E as Z}from"./el-popper-DDJTxf27.js";const aa=j({size:{type:[Number,String],values:z,validator:a=>m(a)},shape:{type:String,values:["circle","square"]},icon:{type:w},src:{type:String,default:""},alt:String,srcSet:String,fit:{type:c(String),default:"cover"}}),ea={error:a=>a instanceof Event},b=Symbol("avatarGroupContextKey"),ta={size:{type:c([Number,String]),values:z,validator:a=>m(a)},shape:{type:c(String),values:["circle","square"]},collapseAvatars:Boolean,collapseAvatarsTooltip:Boolean,maxCollapseAvatars:{type:Number,default:1},effect:{type:c(String),default:"light"},placement:{type:c(String),values:Y,default:"top"},popperClass:C.popperClass,popperStyle:C.popperStyle,collapseClass:String,collapseStyle:{type:c([String,Array,Object,Boolean]),default:void 0}},sa=["src","alt","srcset"];var la=A({name:"ElAvatar",__name:"avatar",props:aa,emits:ea,setup(a,{emit:n}){const t=a,r=n,e=V(b,void 0),l=E("avatar"),o=L(!1),s=p(()=>t.size??(e==null?void 0:e.size)),v=p(()=>t.shape??(e==null?void 0:e.shape)??"circle"),B=p(()=>{const{icon:i}=t,u=[l.b()];return R(s.value)&&u.push(l.m(s.value)),i&&u.push(l.m("icon")),v.value&&u.push(l.m(v.value)),u}),x=p(()=>m(s.value)?l.cssVarBlock({size:J(s.value)}):void 0),T=p(()=>({objectFit:t.fit}));I(()=>[t.src,t.srcSet],()=>o.value=!1);function P(i){o.value=!0,r("error",i)}return(i,u)=>(f(),y("span",{class:K(B.value),style:S(x.value)},[(a.src||a.srcSet)&&!o.value?(f(),y("img",{key:0,src:a.src,alt:a.alt,srcset:a.srcSet,style:S(T.value),onError:P},null,44,sa)):a.icon?(f(),h(D(F),{key:1},{default:_(()=>[(f(),h(q(a.icon)))]),_:1})):G(i.$slots,"default",{key:2})],6))}}),k=la,N=A({name:"ElAvatarGroup",props:ta,setup(a,{slots:n}){const t=E("avatar-group");return H(b,M({size:g(a,"size"),shape:g(a,"shape")})),()=>{var l;const r=X(((l=n.default)==null?void 0:l.call(n))??[]);let e=r;if(a.collapseAvatars&&r.length>a.maxCollapseAvatars){e=r.slice(0,a.maxCollapseAvatars);const o=r.slice(a.maxCollapseAvatars);e.push(d(Z,{popperClass:a.popperClass,popperStyle:a.popperStyle,placement:a.placement,effect:a.effect,disabled:!a.collapseAvatarsTooltip},{default:()=>d(k,{size:a.size,shape:a.shape,class:a.collapseClass,style:a.collapseStyle},{default:()=>[$("+ "),o.length]}),content:()=>d("div",{class:t.e("collapse-avatars")},[o.map((s,v)=>O(s)?U(s,{key:s.key??v}):s)])}))}return d("div",{class:t.b()},[e])}}});const na=Q(k,{AvatarGroup:N});W(N);export{na as E}; import{b as j,i as w,aj as z,R as c,ak as m,d as A,B as V,a as E,D as I,o as f,c as y,al as S,e as h,w as _,r as q,f as D,E as F,h as G,n as K,y as L,j as p,J as R,am as J,s as d,an as O,ao as U,x as $,F as H,z as M,a9 as g,l as Q,ab as W}from"./index-CD29OCdJ.js";import{f as X}from"./vnode-_QM9LlTR.js";import{u as C,a as Y,E as Z}from"./el-popper-DIiB8Y-M.js";const aa=j({size:{type:[Number,String],values:z,validator:a=>m(a)},shape:{type:String,values:["circle","square"]},icon:{type:w},src:{type:String,default:""},alt:String,srcSet:String,fit:{type:c(String),default:"cover"}}),ea={error:a=>a instanceof Event},b=Symbol("avatarGroupContextKey"),ta={size:{type:c([Number,String]),values:z,validator:a=>m(a)},shape:{type:c(String),values:["circle","square"]},collapseAvatars:Boolean,collapseAvatarsTooltip:Boolean,maxCollapseAvatars:{type:Number,default:1},effect:{type:c(String),default:"light"},placement:{type:c(String),values:Y,default:"top"},popperClass:C.popperClass,popperStyle:C.popperStyle,collapseClass:String,collapseStyle:{type:c([String,Array,Object,Boolean]),default:void 0}},sa=["src","alt","srcset"];var la=A({name:"ElAvatar",__name:"avatar",props:aa,emits:ea,setup(a,{emit:n}){const t=a,r=n,e=V(b,void 0),l=E("avatar"),o=L(!1),s=p(()=>t.size??(e==null?void 0:e.size)),v=p(()=>t.shape??(e==null?void 0:e.shape)??"circle"),B=p(()=>{const{icon:i}=t,u=[l.b()];return R(s.value)&&u.push(l.m(s.value)),i&&u.push(l.m("icon")),v.value&&u.push(l.m(v.value)),u}),x=p(()=>m(s.value)?l.cssVarBlock({size:J(s.value)}):void 0),T=p(()=>({objectFit:t.fit}));I(()=>[t.src,t.srcSet],()=>o.value=!1);function P(i){o.value=!0,r("error",i)}return(i,u)=>(f(),y("span",{class:K(B.value),style:S(x.value)},[(a.src||a.srcSet)&&!o.value?(f(),y("img",{key:0,src:a.src,alt:a.alt,srcset:a.srcSet,style:S(T.value),onError:P},null,44,sa)):a.icon?(f(),h(D(F),{key:1},{default:_(()=>[(f(),h(q(a.icon)))]),_:1})):G(i.$slots,"default",{key:2})],6))}}),k=la,N=A({name:"ElAvatarGroup",props:ta,setup(a,{slots:n}){const t=E("avatar-group");return H(b,M({size:g(a,"size"),shape:g(a,"shape")})),()=>{var l;const r=X(((l=n.default)==null?void 0:l.call(n))??[]);let e=r;if(a.collapseAvatars&&r.length>a.maxCollapseAvatars){e=r.slice(0,a.maxCollapseAvatars);const o=r.slice(a.maxCollapseAvatars);e.push(d(Z,{popperClass:a.popperClass,popperStyle:a.popperStyle,placement:a.placement,effect:a.effect,disabled:!a.collapseAvatarsTooltip},{default:()=>d(k,{size:a.size,shape:a.shape,class:a.collapseClass,style:a.collapseStyle},{default:()=>[$("+ "),o.length]}),content:()=>d("div",{class:t.e("collapse-avatars")},[o.map((s,v)=>O(s)?U(s,{key:s.key??v}):s)])}))}return d("div",{class:t.b()},[e])}}});const na=Q(k,{AvatarGroup:N});W(N);export{na as E};

View File

@@ -1 +1 @@
import{b as y,R as h,d as v,u as g,a as C,o as r,c as l,n as o,f as a,h as d,x as i,aa as f,g as c,q as S,al as b,l as m}from"./index-D5veDkuG.js";const w=y({header:{type:String,default:""},footer:{type:String,default:""},bodyStyle:{type:h([String,Object,Array,Boolean]),default:""},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:["always","hover","never"],default:void 0}});var $=v({name:"ElCard",__name:"card",props:w,setup(e){const u=g("card"),s=C("card");return(t,p)=>{var n;return r(),l("div",{class:o([a(s).b(),a(s).is(`${e.shadow||((n=a(u))==null?void 0:n.shadow)||"always"}-shadow`)])},[t.$slots.header||e.header?(r(),l("div",{key:0,class:o([a(s).e("header"),e.headerClass])},[d(t.$slots,"header",{},()=>[i(f(e.header),1)])],2)):c("v-if",!0),S("div",{class:o([a(s).e("body"),e.bodyClass]),style:b(e.bodyStyle)},[d(t.$slots,"default")],6),t.$slots.footer||e.footer?(r(),l("div",{key:1,class:o([a(s).e("footer"),e.footerClass])},[d(t.$slots,"footer",{},()=>[i(f(e.footer),1)])],2)):c("v-if",!0)],2)}}}),k=$;const E=m(k);export{E}; import{b as y,R as h,d as v,u as g,a as C,o as r,c as l,n as o,f as a,h as d,x as i,aa as f,g as c,q as S,al as b,l as m}from"./index-CD29OCdJ.js";const w=y({header:{type:String,default:""},footer:{type:String,default:""},bodyStyle:{type:h([String,Object,Array,Boolean]),default:""},headerClass:String,bodyClass:String,footerClass:String,shadow:{type:String,values:["always","hover","never"],default:void 0}});var $=v({name:"ElCard",__name:"card",props:w,setup(e){const u=g("card"),s=C("card");return(t,p)=>{var n;return r(),l("div",{class:o([a(s).b(),a(s).is(`${e.shadow||((n=a(u))==null?void 0:n.shadow)||"always"}-shadow`)])},[t.$slots.header||e.header?(r(),l("div",{key:0,class:o([a(s).e("header"),e.headerClass])},[d(t.$slots,"header",{},()=>[i(f(e.header),1)])],2)):c("v-if",!0),S("div",{class:o([a(s).e("body"),e.bodyClass]),style:b(e.bodyStyle)},[d(t.$slots,"default")],6),t.$slots.footer||e.footer?(r(),l("div",{key:1,class:o([a(s).e("footer"),e.footerClass])},[d(t.$slots,"footer",{},()=>[i(f(e.footer),1)])],2)):c("v-if",!0)],2)}}}),k=$;const E=m(k);export{E};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{b as B,aR as H,d as P,R as J,am as A,a as L,K as x,I as D,a8 as Q,B as q,f as d,o as c,c as f,q as v,M as g,ad as z,e as I,s as F,bF as T,n as _,h as j,x as K,aa as M,g as X,j as Y,F as Z,ab as ee,l as te}from"./index-D5veDkuG.js";import{g as se,f as le}from"./vnode-CYZHqsIy.js";import{e as ae}from"./index-DxH5-_w6.js";const O=["left","center","right"],re=B({border:Boolean,column:{type:Number,default:3},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},size:H,title:{type:String,default:""},extra:{type:String,default:""},labelWidth:{type:[String,Number]}}),U="ElDescriptionsItem",ne=B({label:{type:String,default:""},span:{type:Number,default:1},rowspan:{type:Number,default:1},width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},labelWidth:{type:[String,Number]},align:{type:String,values:O,default:"left"},labelAlign:{type:String,values:O},className:{type:String,default:""},labelClassName:{type:String,default:""}}),G=P({name:U,props:ne}),R=Symbol("elDescriptions"),ie=B({row:{type:J(Array),default:()=>[]}});var E=P({name:"ElDescriptionsCell",props:{cell:{type:Object},tag:{type:String,default:"td"},type:{type:String}},setup(){return{descriptions:q(R,{})}},render(){var y;const e=se(this.cell),u=(((y=this.cell)==null?void 0:y.dirs)||[]).map(n=>{const{dir:a,arg:l,modifiers:W,value:$}=n;return[a,$,l,W]}),{border:m,direction:C}=this.descriptions,r=C==="vertical",h=()=>{var n,a,l;return((l=(a=(n=this.cell)==null?void 0:n.children)==null?void 0:a.label)==null?void 0:l.call(a))||e.label},k=()=>{var n,a,l;return(l=(a=(n=this.cell)==null?void 0:n.children)==null?void 0:a.default)==null?void 0:l.call(a)},S=e.span,s=e.rowspan,b=e.align?`is-${e.align}`:"",p=e.labelAlign?`is-${e.labelAlign}`:b,i=e.className,w=e.labelClassName,o={width:A(this.type==="label"?e.labelWidth??this.descriptions.labelWidth??e.width:e.width),minWidth:A(e.minWidth)},t=L("descriptions");switch(this.type){case"label":return x(D(this.tag,{style:o,class:[t.e("cell"),t.e("label"),t.is("bordered-label",m),t.is("vertical-label",r),p,w],colSpan:r?S:1,rowspan:r?1:s},h()),u);case"content":return x(D(this.tag,{style:o,class:[t.e("cell"),t.e("content"),t.is("bordered-content",m),t.is("vertical-content",r),b,i],colSpan:r?S:S*2-1,rowspan:r?s*2-1:s},k()),u);default:{const n=h(),a={},l=A(e.labelWidth??this.descriptions.labelWidth);return l&&(a.width=l,a.display="inline-block"),x(D("td",{style:o,class:[t.e("cell"),b],colSpan:S,rowspan:s},[Q(n)?void 0:D("span",{style:a,class:[t.e("label"),w]},n),D("span",{class:[t.e("content"),i]},k())]),u)}}}});const oe={key:1};var ce=P({name:"ElDescriptionsRow",__name:"descriptions-row",props:ie,setup(e){const u=q(R,{});return(m,C)=>d(u).direction==="vertical"?(c(),f(g,{key:0},[v("tr",null,[(c(!0),f(g,null,z(e.row,(r,h)=>(c(),I(d(E),{key:`tr1-${h}`,cell:r,tag:"th",type:"label"},null,8,["cell"]))),128))]),v("tr",null,[(c(!0),f(g,null,z(e.row,(r,h)=>(c(),I(d(E),{key:`tr2-${h}`,cell:r,tag:"td",type:"content"},null,8,["cell"]))),128))])],64)):(c(),f("tr",oe,[(c(!0),f(g,null,z(e.row,(r,h)=>(c(),f(g,{key:`tr3-${h}`},[d(u).border?(c(),f(g,{key:0},[F(d(E),{cell:r,tag:"td",type:"label"},null,8,["cell"]),F(d(E),{cell:r,tag:"td",type:"content"},null,8,["cell"])],64)):(c(),I(d(E),{key:1,cell:r,tag:"td",type:"both"},null,8,["cell"]))],64))),128))]))}}),pe=ce,de=P({name:"ElDescriptions",__name:"description",props:re,setup(e){const u=e,m=L("descriptions"),C=ae(),r=T();Z(R,u);const h=Y(()=>[m.b(),m.m(C.value)]),k=(s,b,p,i=!1)=>(s.props||(s.props={}),b>p&&(s.props.span=p),i&&(s.props.span=b),s),S=()=>{if(!r.default)return[];const s=le(r.default()).filter(t=>{var y;return((y=t==null?void 0:t.type)==null?void 0:y.name)===U}),b=[];let p=[],i=u.column,w=0;const o=[];return s.forEach((t,y)=>{var W,$,V;const n=((W=t.props)==null?void 0:W.span)||1,a=(($=t.props)==null?void 0:$.rowspan)||1,l=b.length;if(o[l]||(o[l]=0),a>1)for(let N=1;N<a;N++)o[V=l+N]||(o[V]=0),o[l+N]++,w++;if(o[l]>0&&(i-=o[l],o[l]=0),y<s.length-1&&(w+=n>i?i:n),y===s.length-1){const N=u.column-w%u.column;p.push(k(t,N,i,!0)),b.push(p);return}n<i?(i-=n,p.push(t)):(p.push(k(t,n,i)),b.push(p),i=u.column,p=[])}),b};return(s,b)=>(c(),f("div",{class:_(h.value)},[e.title||e.extra||s.$slots.title||s.$slots.extra?(c(),f("div",{key:0,class:_(d(m).e("header"))},[v("div",{class:_(d(m).e("title"))},[j(s.$slots,"title",{},()=>[K(M(e.title),1)])],2),v("div",{class:_(d(m).e("extra"))},[j(s.$slots,"extra",{},()=>[K(M(e.extra),1)])],2)],2)):X("v-if",!0),v("div",{class:_(d(m).e("body"))},[v("table",{class:_([d(m).e("table"),d(m).is("bordered",e.border)])},[v("tbody",null,[(c(!0),f(g,null,z(S(),(p,i)=>(c(),I(pe,{key:i,row:p},null,8,["row"]))),128))])],2)],2)],2))}}),ue=de;const fe=te(ue,{DescriptionsItem:G}),ye=ee(G);export{ye as E,fe as a}; import{b as B,aR as H,d as P,R as J,am as A,a as L,K as x,I as D,a8 as Q,B as q,f as d,o as c,c as f,q as v,M as g,ad as z,e as I,s as F,bF as T,n as _,h as j,x as K,aa as M,g as X,j as Y,F as Z,ab as ee,l as te}from"./index-CD29OCdJ.js";import{g as se,f as le}from"./vnode-_QM9LlTR.js";import{e as ae}from"./index-6OTFNiIi.js";const O=["left","center","right"],re=B({border:Boolean,column:{type:Number,default:3},direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},size:H,title:{type:String,default:""},extra:{type:String,default:""},labelWidth:{type:[String,Number]}}),U="ElDescriptionsItem",ne=B({label:{type:String,default:""},span:{type:Number,default:1},rowspan:{type:Number,default:1},width:{type:[String,Number],default:""},minWidth:{type:[String,Number],default:""},labelWidth:{type:[String,Number]},align:{type:String,values:O,default:"left"},labelAlign:{type:String,values:O},className:{type:String,default:""},labelClassName:{type:String,default:""}}),G=P({name:U,props:ne}),R=Symbol("elDescriptions"),ie=B({row:{type:J(Array),default:()=>[]}});var E=P({name:"ElDescriptionsCell",props:{cell:{type:Object},tag:{type:String,default:"td"},type:{type:String}},setup(){return{descriptions:q(R,{})}},render(){var y;const e=se(this.cell),u=(((y=this.cell)==null?void 0:y.dirs)||[]).map(n=>{const{dir:a,arg:l,modifiers:W,value:$}=n;return[a,$,l,W]}),{border:m,direction:C}=this.descriptions,r=C==="vertical",h=()=>{var n,a,l;return((l=(a=(n=this.cell)==null?void 0:n.children)==null?void 0:a.label)==null?void 0:l.call(a))||e.label},k=()=>{var n,a,l;return(l=(a=(n=this.cell)==null?void 0:n.children)==null?void 0:a.default)==null?void 0:l.call(a)},S=e.span,s=e.rowspan,b=e.align?`is-${e.align}`:"",p=e.labelAlign?`is-${e.labelAlign}`:b,i=e.className,w=e.labelClassName,o={width:A(this.type==="label"?e.labelWidth??this.descriptions.labelWidth??e.width:e.width),minWidth:A(e.minWidth)},t=L("descriptions");switch(this.type){case"label":return x(D(this.tag,{style:o,class:[t.e("cell"),t.e("label"),t.is("bordered-label",m),t.is("vertical-label",r),p,w],colSpan:r?S:1,rowspan:r?1:s},h()),u);case"content":return x(D(this.tag,{style:o,class:[t.e("cell"),t.e("content"),t.is("bordered-content",m),t.is("vertical-content",r),b,i],colSpan:r?S:S*2-1,rowspan:r?s*2-1:s},k()),u);default:{const n=h(),a={},l=A(e.labelWidth??this.descriptions.labelWidth);return l&&(a.width=l,a.display="inline-block"),x(D("td",{style:o,class:[t.e("cell"),b],colSpan:S,rowspan:s},[Q(n)?void 0:D("span",{style:a,class:[t.e("label"),w]},n),D("span",{class:[t.e("content"),i]},k())]),u)}}}});const oe={key:1};var ce=P({name:"ElDescriptionsRow",__name:"descriptions-row",props:ie,setup(e){const u=q(R,{});return(m,C)=>d(u).direction==="vertical"?(c(),f(g,{key:0},[v("tr",null,[(c(!0),f(g,null,z(e.row,(r,h)=>(c(),I(d(E),{key:`tr1-${h}`,cell:r,tag:"th",type:"label"},null,8,["cell"]))),128))]),v("tr",null,[(c(!0),f(g,null,z(e.row,(r,h)=>(c(),I(d(E),{key:`tr2-${h}`,cell:r,tag:"td",type:"content"},null,8,["cell"]))),128))])],64)):(c(),f("tr",oe,[(c(!0),f(g,null,z(e.row,(r,h)=>(c(),f(g,{key:`tr3-${h}`},[d(u).border?(c(),f(g,{key:0},[F(d(E),{cell:r,tag:"td",type:"label"},null,8,["cell"]),F(d(E),{cell:r,tag:"td",type:"content"},null,8,["cell"])],64)):(c(),I(d(E),{key:1,cell:r,tag:"td",type:"both"},null,8,["cell"]))],64))),128))]))}}),pe=ce,de=P({name:"ElDescriptions",__name:"description",props:re,setup(e){const u=e,m=L("descriptions"),C=ae(),r=T();Z(R,u);const h=Y(()=>[m.b(),m.m(C.value)]),k=(s,b,p,i=!1)=>(s.props||(s.props={}),b>p&&(s.props.span=p),i&&(s.props.span=b),s),S=()=>{if(!r.default)return[];const s=le(r.default()).filter(t=>{var y;return((y=t==null?void 0:t.type)==null?void 0:y.name)===U}),b=[];let p=[],i=u.column,w=0;const o=[];return s.forEach((t,y)=>{var W,$,V;const n=((W=t.props)==null?void 0:W.span)||1,a=(($=t.props)==null?void 0:$.rowspan)||1,l=b.length;if(o[l]||(o[l]=0),a>1)for(let N=1;N<a;N++)o[V=l+N]||(o[V]=0),o[l+N]++,w++;if(o[l]>0&&(i-=o[l],o[l]=0),y<s.length-1&&(w+=n>i?i:n),y===s.length-1){const N=u.column-w%u.column;p.push(k(t,N,i,!0)),b.push(p);return}n<i?(i-=n,p.push(t)):(p.push(k(t,n,i)),b.push(p),i=u.column,p=[])}),b};return(s,b)=>(c(),f("div",{class:_(h.value)},[e.title||e.extra||s.$slots.title||s.$slots.extra?(c(),f("div",{key:0,class:_(d(m).e("header"))},[v("div",{class:_(d(m).e("title"))},[j(s.$slots,"title",{},()=>[K(M(e.title),1)])],2),v("div",{class:_(d(m).e("extra"))},[j(s.$slots,"extra",{},()=>[K(M(e.extra),1)])],2)],2)):X("v-if",!0),v("div",{class:_(d(m).e("body"))},[v("table",{class:_([d(m).e("table"),d(m).is("bordered",e.border)])},[v("tbody",null,[(c(!0),f(g,null,z(S(),(p,i)=>(c(),I(pe,{key:i,row:p},null,8,["row"]))),128))])],2)],2)],2))}}),ue=de;const fe=te(ue,{DescriptionsItem:G}),ye=ee(G);export{ye as E,fe as a};

View File

@@ -1 +1 @@
import{d as L,aW as G,B as q,o as u,c as A,q as R,h as i,n as t,f as e,aa as H,s as $,w as r,e as B,r as Q,bE as x,E as _,g as N,al as O,j as E,bF as ee,a as oe,K as se,Y as K,aX as ae,L as le,Z as te,bg as ne,y as M,F as re,l as ie}from"./index-D5veDkuG.js";import{u as de}from"./index-DxH5-_w6.js";import{E as ce,a as ue}from"./index-BNyn2v9n.js";import{F as fe,f as ge}from"./index-DmAaj_YO.js";import{d as me,a as ve,b as j,c as be,e as ye,u as Ce}from"./use-dialog-BGZ6Fb7L.js";import{u as he}from"./index-fqcbYM03.js";const pe=(...o)=>f=>{o.forEach(g=>{g.value=f})},we=["aria-level"],ke=["aria-label"],Re=["id"];var $e=L({name:"ElDialogContent",__name:"dialog-content",props:ve,emits:me,setup(o,{expose:f}){const{t:g}=G(),{Close:F}=x,a=o,{dialogRef:m,headerRef:y,bodyId:v,ns:s,style:C}=q(j),{focusTrapRef:h}=q(fe),D=pe(h,m),p=E(()=>!!a.draggable),{resetPosition:w,updatePosition:I,isDragging:P}=he(m,y,p,E(()=>!!a.overflow)),T=E(()=>[s.b(),s.is("fullscreen",a.fullscreen),s.is("draggable",p.value),s.is("dragging",P.value),s.is("align-center",!!a.alignCenter),{[s.m("center")]:a.center}]);return f({resetPosition:w,updatePosition:I}),(n,k)=>(u(),A("div",{ref:e(D),class:t(T.value),style:O(e(C)),tabindex:"-1"},[R("header",{ref_key:"headerRef",ref:y,class:t([e(s).e("header"),o.headerClass,{"show-close":o.showClose}])},[i(n.$slots,"header",{},()=>[R("span",{role:"heading","aria-level":o.ariaLevel,class:t(e(s).e("title"))},H(o.title),11,we)]),o.showClose?(u(),A("button",{key:0,"aria-label":e(g)("el.dialog.close"),class:t(e(s).e("headerbtn")),type:"button",onClick:k[0]||(k[0]=z=>n.$emit("close"))},[$(e(_),{class:t(e(s).e("close"))},{default:r(()=>[(u(),B(Q(o.closeIcon||e(F))))]),_:1},8,["class"])],10,ke)):N("v-if",!0)],2),R("div",{id:e(v),class:t([e(s).e("body"),o.bodyClass])},[i(n.$slots,"default")],10,Re),n.$slots.footer?(u(),A("footer",{key:0,class:t([e(s).e("footer"),o.footerClass])},[i(n.$slots,"footer")],2)):N("v-if",!0)],6))}}),Ee=$e;const Fe=["aria-label","aria-labelledby","aria-describedby"];var De=L({name:"ElDialog",inheritAttrs:!1,__name:"dialog",props:ye,emits:be,setup(o,{expose:f}){const g=o,F=ee();de({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},E(()=>!!F.title));const a=oe("dialog"),m=M(),y=M(),v=M(),{visible:s,titleId:C,bodyId:h,style:D,overlayDialogStyle:p,rendered:w,transitionConfig:I,zIndex:P,_draggable:T,_alignCenter:n,_overflow:k,penetrable:z,handleClose:S,onModalClick:V,onOpenAutoFocus:U,onCloseAutoFocus:Y,onCloseRequested:J,onFocusoutPrevented:W,bringToFront:X,closing:Z}=Ce(g,m);re(j,{dialogRef:m,headerRef:y,bodyId:h,ns:a,rendered:w,style:D});const d=ue(V);return f({visible:s,dialogContentRef:v,resetPosition:()=>{var l;(l=v.value)==null||l.resetPosition()},handleClose:S}),(l,c)=>(u(),B(ne,{to:o.appendTo,disabled:o.appendTo!=="body"?!1:!o.appendToBody},[$(te,K(e(I),{persisted:""}),{default:r(()=>[se($(e(ce),{"custom-mask-event":"",mask:o.modal,"overlay-class":[o.modalClass??"",`${e(a).namespace.value}-modal-dialog`,e(a).is("penetrable",e(z))],"z-index":e(P)},{default:r(()=>[R("div",{role:"dialog","aria-modal":"true","aria-label":o.title||void 0,"aria-labelledby":o.title?void 0:e(C),"aria-describedby":e(h),class:t([`${e(a).namespace.value}-overlay-dialog`,e(a).is("closing",e(Z))]),style:O(e(p)),onClick:c[0]||(c[0]=(...b)=>e(d).onClick&&e(d).onClick(...b)),onMousedown:c[1]||(c[1]=(...b)=>e(d).onMousedown&&e(d).onMousedown(...b)),onMouseup:c[2]||(c[2]=(...b)=>e(d).onMouseup&&e(d).onMouseup(...b))},[$(e(ge),{loop:"",trapped:e(s),"focus-start-el":"container",onFocusAfterTrapped:e(U),onFocusAfterReleased:e(Y),onFocusoutPrevented:e(W),onReleaseRequested:e(J)},{default:r(()=>[e(w)?(u(),B(Ee,K({key:0,ref_key:"dialogContentRef",ref:v},l.$attrs,{center:o.center,"align-center":e(n),"close-icon":o.closeIcon,draggable:e(T),overflow:e(k),fullscreen:o.fullscreen,"header-class":o.headerClass,"body-class":o.bodyClass,"footer-class":o.footerClass,"show-close":o.showClose,title:o.title,"aria-level":o.headerAriaLevel,onClose:e(S),onMousedown:e(X)}),ae({header:r(()=>[l.$slots.title?i(l.$slots,"title",{key:1}):i(l.$slots,"header",{key:0,close:e(S),titleId:e(C),titleClass:e(a).e("title")})]),default:r(()=>[i(l.$slots,"default")]),_:2},[l.$slots.footer?{name:"footer",fn:r(()=>[i(l.$slots,"footer")]),key:"0"}:void 0]),1040,["center","align-center","close-icon","draggable","overflow","fullscreen","header-class","body-class","footer-class","show-close","title","aria-level","onClose","onMousedown"])):N("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,Fe)]),_:3},8,["mask","overlay-class","z-index"]),[[le,e(s)]])]),_:3},16)],8,["to","disabled"]))}}),Ie=De;const ze=ie(Ie);export{ze as E,pe as c}; import{d as L,aW as G,B as q,o as u,c as A,q as R,h as i,n as t,f as e,aa as H,s as $,w as r,e as B,r as Q,bE as x,E as _,g as N,al as O,j as E,bF as ee,a as oe,K as se,Y as K,aX as ae,L as le,Z as te,bg as ne,y as M,F as re,l as ie}from"./index-CD29OCdJ.js";import{u as de}from"./index-6OTFNiIi.js";import{E as ce,a as ue}from"./index-roSlfP_P.js";import{F as fe,f as ge}from"./index-BpugJXyE.js";import{d as me,a as ve,b as j,c as be,e as ye,u as Ce}from"./use-dialog-DvXGfCuS.js";import{u as he}from"./index-D9N-GMuA.js";const pe=(...o)=>f=>{o.forEach(g=>{g.value=f})},we=["aria-level"],ke=["aria-label"],Re=["id"];var $e=L({name:"ElDialogContent",__name:"dialog-content",props:ve,emits:me,setup(o,{expose:f}){const{t:g}=G(),{Close:F}=x,a=o,{dialogRef:m,headerRef:y,bodyId:v,ns:s,style:C}=q(j),{focusTrapRef:h}=q(fe),D=pe(h,m),p=E(()=>!!a.draggable),{resetPosition:w,updatePosition:I,isDragging:P}=he(m,y,p,E(()=>!!a.overflow)),T=E(()=>[s.b(),s.is("fullscreen",a.fullscreen),s.is("draggable",p.value),s.is("dragging",P.value),s.is("align-center",!!a.alignCenter),{[s.m("center")]:a.center}]);return f({resetPosition:w,updatePosition:I}),(n,k)=>(u(),A("div",{ref:e(D),class:t(T.value),style:O(e(C)),tabindex:"-1"},[R("header",{ref_key:"headerRef",ref:y,class:t([e(s).e("header"),o.headerClass,{"show-close":o.showClose}])},[i(n.$slots,"header",{},()=>[R("span",{role:"heading","aria-level":o.ariaLevel,class:t(e(s).e("title"))},H(o.title),11,we)]),o.showClose?(u(),A("button",{key:0,"aria-label":e(g)("el.dialog.close"),class:t(e(s).e("headerbtn")),type:"button",onClick:k[0]||(k[0]=z=>n.$emit("close"))},[$(e(_),{class:t(e(s).e("close"))},{default:r(()=>[(u(),B(Q(o.closeIcon||e(F))))]),_:1},8,["class"])],10,ke)):N("v-if",!0)],2),R("div",{id:e(v),class:t([e(s).e("body"),o.bodyClass])},[i(n.$slots,"default")],10,Re),n.$slots.footer?(u(),A("footer",{key:0,class:t([e(s).e("footer"),o.footerClass])},[i(n.$slots,"footer")],2)):N("v-if",!0)],6))}}),Ee=$e;const Fe=["aria-label","aria-labelledby","aria-describedby"];var De=L({name:"ElDialog",inheritAttrs:!1,__name:"dialog",props:ye,emits:be,setup(o,{expose:f}){const g=o,F=ee();de({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},E(()=>!!F.title));const a=oe("dialog"),m=M(),y=M(),v=M(),{visible:s,titleId:C,bodyId:h,style:D,overlayDialogStyle:p,rendered:w,transitionConfig:I,zIndex:P,_draggable:T,_alignCenter:n,_overflow:k,penetrable:z,handleClose:S,onModalClick:V,onOpenAutoFocus:U,onCloseAutoFocus:Y,onCloseRequested:J,onFocusoutPrevented:W,bringToFront:X,closing:Z}=Ce(g,m);re(j,{dialogRef:m,headerRef:y,bodyId:h,ns:a,rendered:w,style:D});const d=ue(V);return f({visible:s,dialogContentRef:v,resetPosition:()=>{var l;(l=v.value)==null||l.resetPosition()},handleClose:S}),(l,c)=>(u(),B(ne,{to:o.appendTo,disabled:o.appendTo!=="body"?!1:!o.appendToBody},[$(te,K(e(I),{persisted:""}),{default:r(()=>[se($(e(ce),{"custom-mask-event":"",mask:o.modal,"overlay-class":[o.modalClass??"",`${e(a).namespace.value}-modal-dialog`,e(a).is("penetrable",e(z))],"z-index":e(P)},{default:r(()=>[R("div",{role:"dialog","aria-modal":"true","aria-label":o.title||void 0,"aria-labelledby":o.title?void 0:e(C),"aria-describedby":e(h),class:t([`${e(a).namespace.value}-overlay-dialog`,e(a).is("closing",e(Z))]),style:O(e(p)),onClick:c[0]||(c[0]=(...b)=>e(d).onClick&&e(d).onClick(...b)),onMousedown:c[1]||(c[1]=(...b)=>e(d).onMousedown&&e(d).onMousedown(...b)),onMouseup:c[2]||(c[2]=(...b)=>e(d).onMouseup&&e(d).onMouseup(...b))},[$(e(ge),{loop:"",trapped:e(s),"focus-start-el":"container",onFocusAfterTrapped:e(U),onFocusAfterReleased:e(Y),onFocusoutPrevented:e(W),onReleaseRequested:e(J)},{default:r(()=>[e(w)?(u(),B(Ee,K({key:0,ref_key:"dialogContentRef",ref:v},l.$attrs,{center:o.center,"align-center":e(n),"close-icon":o.closeIcon,draggable:e(T),overflow:e(k),fullscreen:o.fullscreen,"header-class":o.headerClass,"body-class":o.bodyClass,"footer-class":o.footerClass,"show-close":o.showClose,title:o.title,"aria-level":o.headerAriaLevel,onClose:e(S),onMousedown:e(X)}),ae({header:r(()=>[l.$slots.title?i(l.$slots,"title",{key:1}):i(l.$slots,"header",{key:0,close:e(S),titleId:e(C),titleClass:e(a).e("title")})]),default:r(()=>[i(l.$slots,"default")]),_:2},[l.$slots.footer?{name:"footer",fn:r(()=>[i(l.$slots,"footer")]),key:"0"}:void 0]),1040,["center","align-center","close-icon","draggable","overflow","fullscreen","header-class","body-class","footer-class","show-close","title","aria-level","onClose","onMousedown"])):N("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,Fe)]),_:3},8,["mask","overlay-class","z-index"]),[[le,e(s)]])]),_:3},16)],8,["to","disabled"]))}}),Ie=De;const ze=ie(Ie);export{ze as E,pe as c};

View File

@@ -1 +1 @@
import{b as d,R as c,d as u,a as v,o as s,c as i,n as o,f as r,h as p,g as f,al as m,j as y,l as S}from"./index-D5veDkuG.js";const b=d({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},contentPosition:{type:String,values:["left","center","right"],default:"center"},borderStyle:{type:c(String),default:"solid"}});var g=u({name:"ElDivider",__name:"divider",props:b,setup(t){const l=t,e=v("divider"),n=y(()=>e.cssVar({"border-style":l.borderStyle}));return(a,P)=>(s(),i("div",{class:o([r(e).b(),r(e).m(t.direction)]),style:m(n.value),role:"separator"},[a.$slots.default&&t.direction!=="vertical"?(s(),i("div",{key:0,class:o([r(e).e("text"),r(e).is(t.contentPosition)])},[p(a.$slots,"default")],2)):f("v-if",!0)],6))}}),h=g;const z=S(h);export{z as E}; import{b as d,R as c,d as u,a as v,o as s,c as i,n as o,f as r,h as p,g as f,al as m,j as y,l as S}from"./index-CD29OCdJ.js";const b=d({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},contentPosition:{type:String,values:["left","center","right"],default:"center"},borderStyle:{type:c(String),default:"solid"}});var g=u({name:"ElDivider",__name:"divider",props:b,setup(t){const l=t,e=v("divider"),n=y(()=>e.cssVar({"border-style":l.borderStyle}));return(a,P)=>(s(),i("div",{class:o([r(e).b(),r(e).m(t.direction)]),style:m(n.value),role:"separator"},[a.$slots.default&&t.direction!=="vertical"?(s(),i("div",{key:0,class:o([r(e).e("text"),r(e).is(t.contentPosition)])},[p(a.$slots,"default")],2)):f("v-if",!0)],6))}}),h=g;const z=S(h);export{z as E};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{b as h,d as p,a as _,o as r,c as n,q as t,f as l,aW as y,h as d,s as g,al as v,n as c,aa as k,g as $,j as f,am as N,l as B}from"./index-D5veDkuG.js";import{f as w}from"./index-DxH5-_w6.js";const V=h({image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}}),x={viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},S=["id"],C=["stop-color"],E=["stop-color"],b=["id"],G=["stop-color"],z=["stop-color"],I=["id"],D={stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},P={transform:"translate(-1268.000000, -535.000000)"},j={transform:"translate(1268.000000, 535.000000)"},q=["fill"],L=["fill"],M={transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},T=["fill"],U=["fill"],W=["fill"],Z=["fill"],A=["fill"],F={transform:"translate(53.000000, 45.000000)"},H=["fill","xlink:href"],J=["fill","mask"],K=["fill"];var O=p({name:"ImgEmpty",__name:"img-empty",setup(i){const s=_("empty"),e=w();return(o,m)=>(r(),n("svg",x,[t("defs",null,[t("linearGradient",{id:`linearGradient-1-${l(e)}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[t("stop",{"stop-color":`var(${l(s).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,C),t("stop",{"stop-color":`var(${l(s).cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,E)],8,S),t("linearGradient",{id:`linearGradient-2-${l(e)}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[t("stop",{"stop-color":`var(${l(s).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,G),t("stop",{"stop-color":`var(${l(s).cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,z)],8,b),t("rect",{id:`path-3-${l(e)}`,x:"0",y:"0",width:"17",height:"36"},null,8,I)]),t("g",D,[t("g",P,[t("g",j,[t("path",{d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${l(s).cssVarBlockName("fill-color-3")})`},null,8,q),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,L),t("g",M,[t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,T),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,U),t("rect",{fill:`url(#linearGradient-1-${l(e)})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,W),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,Z)]),t("rect",{fill:`url(#linearGradient-2-${l(e)})`,x:"13",y:"45",width:"40",height:"36"},null,8,A),t("g",F,[t("use",{fill:`var(${l(s).cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${l(e)}`},null,8,H),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${l(e)})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,J)]),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,K)])])])]))}}),Q=O;const R=["src"],X={key:1};var Y=p({name:"ElEmpty",__name:"empty",props:V,setup(i){const s=i,{t:e}=y(),o=_("empty"),m=f(()=>s.description||e("el.table.emptyText")),u=f(()=>({width:N(s.imageSize)}));return(a,l0)=>(r(),n("div",{class:c(l(o).b())},[t("div",{class:c(l(o).e("image")),style:v(u.value)},[i.image?(r(),n("img",{key:0,src:i.image,ondragstart:"return false"},null,8,R)):d(a.$slots,"image",{key:1},()=>[g(Q)])],6),t("div",{class:c(l(o).e("description"))},[a.$slots.description?d(a.$slots,"description",{key:0}):(r(),n("p",X,k(m.value),1))],2),a.$slots.default?(r(),n("div",{key:0,class:c(l(o).e("bottom"))},[d(a.$slots,"default")],2)):$("v-if",!0)],2))}}),t0=Y;const o0=B(t0);export{o0 as E}; import{b as h,d as p,a as _,o as r,c as n,q as t,f as l,aW as y,h as d,s as g,al as v,n as c,aa as k,g as $,j as f,am as N,l as B}from"./index-CD29OCdJ.js";import{f as w}from"./index-6OTFNiIi.js";const V=h({image:{type:String,default:""},imageSize:Number,description:{type:String,default:""}}),x={viewBox:"0 0 79 86",version:"1.1",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"},S=["id"],C=["stop-color"],E=["stop-color"],b=["id"],G=["stop-color"],z=["stop-color"],I=["id"],D={stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},P={transform:"translate(-1268.000000, -535.000000)"},j={transform:"translate(1268.000000, 535.000000)"},q=["fill"],L=["fill"],M={transform:"translate(34.500000, 31.500000) scale(-1, 1) rotate(-25.000000) translate(-34.500000, -31.500000) translate(7.000000, 10.000000)"},T=["fill"],U=["fill"],W=["fill"],Z=["fill"],A=["fill"],F={transform:"translate(53.000000, 45.000000)"},H=["fill","xlink:href"],J=["fill","mask"],K=["fill"];var O=p({name:"ImgEmpty",__name:"img-empty",setup(i){const s=_("empty"),e=w();return(o,m)=>(r(),n("svg",x,[t("defs",null,[t("linearGradient",{id:`linearGradient-1-${l(e)}`,x1:"38.8503086%",y1:"0%",x2:"61.1496914%",y2:"100%"},[t("stop",{"stop-color":`var(${l(s).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,C),t("stop",{"stop-color":`var(${l(s).cssVarBlockName("fill-color-4")})`,offset:"100%"},null,8,E)],8,S),t("linearGradient",{id:`linearGradient-2-${l(e)}`,x1:"0%",y1:"9.5%",x2:"100%",y2:"90.5%"},[t("stop",{"stop-color":`var(${l(s).cssVarBlockName("fill-color-1")})`,offset:"0%"},null,8,G),t("stop",{"stop-color":`var(${l(s).cssVarBlockName("fill-color-6")})`,offset:"100%"},null,8,z)],8,b),t("rect",{id:`path-3-${l(e)}`,x:"0",y:"0",width:"17",height:"36"},null,8,I)]),t("g",D,[t("g",P,[t("g",j,[t("path",{d:"M39.5,86 C61.3152476,86 79,83.9106622 79,81.3333333 C79,78.7560045 57.3152476,78 35.5,78 C13.6847524,78 0,78.7560045 0,81.3333333 C0,83.9106622 17.6847524,86 39.5,86 Z",fill:`var(${l(s).cssVarBlockName("fill-color-3")})`},null,8,q),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-7")})`,transform:"translate(27.500000, 51.500000) scale(1, -1) translate(-27.500000, -51.500000) ",points:"13 58 53 58 42 45 2 45"},null,8,L),t("g",M,[t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-7")})`,transform:"translate(11.500000, 5.000000) scale(1, -1) translate(-11.500000, -5.000000) ",points:"2.84078316e-14 3 18 3 23 7 5 7"},null,8,T),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-5")})`,points:"-3.69149156e-15 7 38 7 38 43 -3.69149156e-15 43"},null,8,U),t("rect",{fill:`url(#linearGradient-1-${l(e)})`,transform:"translate(46.500000, 25.000000) scale(-1, 1) translate(-46.500000, -25.000000) ",x:"38",y:"7",width:"17",height:"36"},null,8,W),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-2")})`,transform:"translate(39.500000, 3.500000) scale(-1, 1) translate(-39.500000, -3.500000) ",points:"24 7 41 7 55 -3.63806207e-12 38 -3.63806207e-12"},null,8,Z)]),t("rect",{fill:`url(#linearGradient-2-${l(e)})`,x:"13",y:"45",width:"40",height:"36"},null,8,A),t("g",F,[t("use",{fill:`var(${l(s).cssVarBlockName("fill-color-8")})`,transform:"translate(8.500000, 18.000000) scale(-1, 1) translate(-8.500000, -18.000000) ","xlink:href":`#path-3-${l(e)}`},null,8,H),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-9")})`,mask:`url(#mask-4-${l(e)})`,transform:"translate(12.000000, 9.000000) scale(-1, 1) translate(-12.000000, -9.000000) ",points:"7 0 24 0 20 18 7 16.5"},null,8,J)]),t("polygon",{fill:`var(${l(s).cssVarBlockName("fill-color-2")})`,transform:"translate(66.000000, 51.500000) scale(-1, 1) translate(-66.000000, -51.500000) ",points:"62 45 79 45 70 58 53 58"},null,8,K)])])])]))}}),Q=O;const R=["src"],X={key:1};var Y=p({name:"ElEmpty",__name:"empty",props:V,setup(i){const s=i,{t:e}=y(),o=_("empty"),m=f(()=>s.description||e("el.table.emptyText")),u=f(()=>({width:N(s.imageSize)}));return(a,l0)=>(r(),n("div",{class:c(l(o).b())},[t("div",{class:c(l(o).e("image")),style:v(u.value)},[i.image?(r(),n("img",{key:0,src:i.image,ondragstart:"return false"},null,8,R)):d(a.$slots,"image",{key:1},()=>[g(Q)])],6),t("div",{class:c(l(o).e("description"))},[a.$slots.description?d(a.$slots,"description",{key:0}):(r(),n("p",X,k(m.value),1))],2),a.$slots.default?(r(),n("div",{key:0,class:c(l(o).e("bottom"))},[d(a.$slots,"default")],2)):$("v-if",!0)],2))}}),t0=Y;const o0=B(t0);export{o0 as E};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
import{b as A,R as y,d as M,a as V,o as l,c as d,n as i,f as s,q as p,al as f,h as B,aa as N,g as P,e as D,w as O,r as R,E as j,j as o,cZ as q,a$ as J,bQ as Q,b0 as U,b1 as Z,b8 as G,J as I,l as H}from"./index-D5veDkuG.js";const K=A({type:{type:String,default:"line",values:["line","circle","dashboard"]},percentage:{type:Number,default:0,validator:e=>e>=0&&e<=100},status:{type:String,default:"",values:["","success","exception","warning"]},indeterminate:Boolean,duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:y(String),default:"round"},textInside:Boolean,width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:y([String,Array,Function]),default:""},striped:Boolean,stripedFlow:Boolean,format:{type:y(Function),default:e=>`${e}%`}}),X=["aria-valuenow"],Y={viewBox:"0 0 100 100"},_=["d","stroke","stroke-linecap","stroke-width"],ee=["d","stroke","opacity","stroke-linecap","stroke-width"],te={key:0};var ae=M({name:"ElProgress",__name:"progress",props:K,setup(e){const k={success:"#13ce66",exception:"#ff4949",warning:"#e6a23c",default:"#20a0ff"},a=e,r=V("progress"),T=o(()=>{const t={width:`${a.percentage}%`,animationDuration:`${a.duration}s`},n=x(a.percentage);return n.includes("gradient")?t.background=n:t.backgroundColor=n,t}),v=o(()=>(a.strokeWidth/a.width*100).toFixed(1)),b=o(()=>["circle","dashboard"].includes(a.type)?Number.parseInt(`${50-Number.parseFloat(v.value)/2}`,10):0),m=o(()=>{const t=b.value,n=a.type==="dashboard";return` import{b as A,R as y,d as M,a as V,o as l,c as d,n as i,f as s,q as p,al as f,h as B,aa as N,g as P,e as D,w as O,r as R,E as j,j as o,cZ as q,a$ as J,bQ as Q,b0 as U,b1 as Z,b8 as G,J as I,l as H}from"./index-CD29OCdJ.js";const K=A({type:{type:String,default:"line",values:["line","circle","dashboard"]},percentage:{type:Number,default:0,validator:e=>e>=0&&e<=100},status:{type:String,default:"",values:["","success","exception","warning"]},indeterminate:Boolean,duration:{type:Number,default:3},strokeWidth:{type:Number,default:6},strokeLinecap:{type:y(String),default:"round"},textInside:Boolean,width:{type:Number,default:126},showText:{type:Boolean,default:!0},color:{type:y([String,Array,Function]),default:""},striped:Boolean,stripedFlow:Boolean,format:{type:y(Function),default:e=>`${e}%`}}),X=["aria-valuenow"],Y={viewBox:"0 0 100 100"},_=["d","stroke","stroke-linecap","stroke-width"],ee=["d","stroke","opacity","stroke-linecap","stroke-width"],te={key:0};var ae=M({name:"ElProgress",__name:"progress",props:K,setup(e){const k={success:"#13ce66",exception:"#ff4949",warning:"#e6a23c",default:"#20a0ff"},a=e,r=V("progress"),T=o(()=>{const t={width:`${a.percentage}%`,animationDuration:`${a.duration}s`},n=x(a.percentage);return n.includes("gradient")?t.background=n:t.backgroundColor=n,t}),v=o(()=>(a.strokeWidth/a.width*100).toFixed(1)),b=o(()=>["circle","dashboard"].includes(a.type)?Number.parseInt(`${50-Number.parseFloat(v.value)/2}`,10):0),m=o(()=>{const t=b.value,n=a.type==="dashboard";return`
M 50 50 M 50 50
m 0 ${n?"":"-"}${t} m 0 ${n?"":"-"}${t}
a ${t} ${t} 0 1 1 0 ${n?"-":""}${t*2} a ${t} ${t} 0 1 1 0 ${n?"-":""}${t*2}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{d as N,a as I,I as C,h as $,j as S,b as A,a1 as j,a6 as m,ak as v,y as x,s as d,an as g,x as P,by as k,aj as V,J as B,R as h,l as G}from"./index-D5veDkuG.js";import{i as z,a as O}from"./vnode-CYZHqsIy.js";const R=A({prefixCls:{type:String}}),w=N({name:"ElSpaceItem",props:R,setup(e,{slots:u}){const f=I("space"),i=S(()=>`${e.prefixCls||f.b()}__item`);return()=>C("div",{class:i.value},$(u,"default"))}}),E={small:8,default:12,large:16};function _(e){const u=I("space"),f=S(()=>[u.b(),u.m(e.direction),e.class]),i=x(0),n=x(0),y=S(()=>[e.wrap||e.fill?{flexWrap:"wrap"}:{},{alignItems:e.alignment},{rowGap:`${n.value}px`,columnGap:`${i.value}px`},e.style]),o=S(()=>e.fill?{flexGrow:1,minWidth:`${e.fillRatio}%`}:{});return j(()=>{const{size:t="small",wrap:a,direction:r,fill:c}=e;if(m(t)){const[s=0,l=0]=t;i.value=s,n.value=l}else{let s;v(t)?s=t:s=E[t||"small"]||E.small,(a||c)&&r==="horizontal"?i.value=n.value=s:r==="horizontal"?(i.value=s,n.value=0):(n.value=s,i.value=0)}}),{classes:f,containerStyle:y,itemStyle:o}}const T=A({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},class:{type:h([String,Object,Array]),default:""},style:{type:h([String,Array,Object,Boolean]),default:""},alignment:{type:h(String),default:"center"},prefixCls:{type:String},spacer:{type:h([Object,String,Number,Array]),default:null,validator:e=>g(e)||v(e)||B(e)},wrap:Boolean,fill:Boolean,fillRatio:{type:Number,default:100},size:{type:[String,Array,Number],values:V,validator:e=>v(e)||m(e)&&e.length===2&&e.every(v)}}),W=N({name:"ElSpace",props:T,setup(e,{slots:u}){const{classes:f,containerStyle:i,itemStyle:n}=_(e);function y(o,t="",a=[]){const{prefixCls:r}=e;return o.forEach((c,s)=>{z(c)?m(c.children)&&c.children.forEach((l,p)=>{z(l)&&m(l.children)?y(l.children,`${t+p}-`,a):g(l)&&(l==null?void 0:l.type)===k?a.push(l):a.push(d(w,{style:n.value,prefixCls:r,key:`nested-${t+p}`},{default:()=>[l]},12,["style","prefixCls"]))}):O(c)&&a.push(d(w,{style:n.value,prefixCls:r,key:`LoopKey${t+s}`},{default:()=>[c]},12,["style","prefixCls"]))}),a}return()=>{const{spacer:o,direction:t}=e,a=$(u,"default",{key:0},()=>[]);if((a.children??[]).length===0)return null;if(m(a.children)){let r=y(a.children);if(o){const c=r.length-1;r=r.reduce((s,l,p)=>{const b=[...s,l];return p!==c&&b.push(d("span",{style:[n.value,t==="vertical"?"width: 100%":null],key:p},[g(o)?o:P(o,1)],4)),b},[])}return d("div",{class:f.value,style:i.value},r,6)}return a.children}}}),L=G(W);export{L as E}; import{d as N,a as I,I as C,h as $,j as S,b as A,a1 as j,a6 as m,ak as v,y as x,s as d,an as g,x as P,by as k,aj as V,J as B,R as h,l as G}from"./index-CD29OCdJ.js";import{i as z,a as O}from"./vnode-_QM9LlTR.js";const R=A({prefixCls:{type:String}}),w=N({name:"ElSpaceItem",props:R,setup(e,{slots:u}){const f=I("space"),i=S(()=>`${e.prefixCls||f.b()}__item`);return()=>C("div",{class:i.value},$(u,"default"))}}),E={small:8,default:12,large:16};function _(e){const u=I("space"),f=S(()=>[u.b(),u.m(e.direction),e.class]),i=x(0),n=x(0),y=S(()=>[e.wrap||e.fill?{flexWrap:"wrap"}:{},{alignItems:e.alignment},{rowGap:`${n.value}px`,columnGap:`${i.value}px`},e.style]),o=S(()=>e.fill?{flexGrow:1,minWidth:`${e.fillRatio}%`}:{});return j(()=>{const{size:t="small",wrap:a,direction:r,fill:c}=e;if(m(t)){const[s=0,l=0]=t;i.value=s,n.value=l}else{let s;v(t)?s=t:s=E[t||"small"]||E.small,(a||c)&&r==="horizontal"?i.value=n.value=s:r==="horizontal"?(i.value=s,n.value=0):(n.value=s,i.value=0)}}),{classes:f,containerStyle:y,itemStyle:o}}const T=A({direction:{type:String,values:["horizontal","vertical"],default:"horizontal"},class:{type:h([String,Object,Array]),default:""},style:{type:h([String,Array,Object,Boolean]),default:""},alignment:{type:h(String),default:"center"},prefixCls:{type:String},spacer:{type:h([Object,String,Number,Array]),default:null,validator:e=>g(e)||v(e)||B(e)},wrap:Boolean,fill:Boolean,fillRatio:{type:Number,default:100},size:{type:[String,Array,Number],values:V,validator:e=>v(e)||m(e)&&e.length===2&&e.every(v)}}),W=N({name:"ElSpace",props:T,setup(e,{slots:u}){const{classes:f,containerStyle:i,itemStyle:n}=_(e);function y(o,t="",a=[]){const{prefixCls:r}=e;return o.forEach((c,s)=>{z(c)?m(c.children)&&c.children.forEach((l,p)=>{z(l)&&m(l.children)?y(l.children,`${t+p}-`,a):g(l)&&(l==null?void 0:l.type)===k?a.push(l):a.push(d(w,{style:n.value,prefixCls:r,key:`nested-${t+p}`},{default:()=>[l]},12,["style","prefixCls"]))}):O(c)&&a.push(d(w,{style:n.value,prefixCls:r,key:`LoopKey${t+s}`},{default:()=>[c]},12,["style","prefixCls"]))}),a}return()=>{const{spacer:o,direction:t}=e,a=$(u,"default",{key:0},()=>[]);if((a.children??[]).length===0)return null;if(m(a.children)){let r=y(a.children);if(o){const c=r.length-1;r=r.reduce((s,l,p)=>{const b=[...s,l];return p!==c&&b.push(d("span",{style:[n.value,t==="vertical"?"width: 100%":null],key:p},[g(o)?o:P(o,1)],4)),b},[])}return d("div",{class:f.value,style:i.value},r,6)}return a.children}}}),L=G(W);export{L as E};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{b as M,aj as N,d as V,aW as $,a as j,o as i,c as u,q as m,h as k,n as o,f as t,aL as h,s as r,w as d,b1 as C,E as v,g as E,al as S,e as I,Z as L,j as P,l as q}from"./index-D5veDkuG.js";import{e as x}from"./index-DxH5-_w6.js";const F=M({type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:String,size:{type:String,values:N},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),K={close:s=>s instanceof MouseEvent,click:s=>s instanceof MouseEvent},W=["aria-label"],Z=["aria-label"];var A=V({name:"ElTag",__name:"tag",props:F,emits:K,setup(s,{emit:_}){const B=s,p=_,z=x(),{t:f}=$(),a=j("tag"),b=P(()=>{const{type:e,hit:l,effect:n,closable:c,round:w}=B;return[a.b(),a.is("closable",c),a.m(e||"primary"),a.m(z.value),a.m(n),a.is("hit",l),a.is("round",w)]}),g=e=>{p("close",e)},y=e=>{p("click",e)},T=e=>{var l,n,c;(c=(n=(l=e==null?void 0:e.component)==null?void 0:l.subTree)==null?void 0:n.component)!=null&&c.bum&&(e.component.subTree.component.bum=null)};return(e,l)=>s.disableTransitions?(i(),u("span",{key:0,class:o(b.value),style:S({backgroundColor:s.color}),onClick:y},[m("span",{class:o(t(a).e("content"))},[k(e.$slots,"default")],2),s.closable?(i(),u("button",{key:0,"aria-label":t(f)("el.tag.close"),class:o(t(a).e("close")),type:"button",onClick:h(g,["stop"])},[r(t(v),null,{default:d(()=>[r(t(C))]),_:1})],10,W)):E("v-if",!0)],6)):(i(),I(L,{key:1,name:`${t(a).namespace.value}-zoom-in-center`,appear:"",onVnodeMounted:T},{default:d(()=>[m("span",{class:o(b.value),style:S({backgroundColor:s.color}),onClick:y},[m("span",{class:o(t(a).e("content"))},[k(e.$slots,"default")],2),s.closable?(i(),u("button",{key:0,"aria-label":t(f)("el.tag.close"),class:o(t(a).e("close")),type:"button",onClick:h(g,["stop"])},[r(t(v),null,{default:d(()=>[r(t(C))]),_:1})],10,Z)):E("v-if",!0)],6)]),_:3},8,["name"]))}}),D=A;const J=q(D);export{J as E,F as t}; import{b as M,aj as N,d as V,aW as $,a as j,o as i,c as u,q as m,h as k,n as o,f as t,aL as h,s as r,w as d,b1 as C,E as v,g as E,al as S,e as I,Z as L,j as P,l as q}from"./index-CD29OCdJ.js";import{e as x}from"./index-6OTFNiIi.js";const F=M({type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:String,size:{type:String,values:N},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),K={close:s=>s instanceof MouseEvent,click:s=>s instanceof MouseEvent},W=["aria-label"],Z=["aria-label"];var A=V({name:"ElTag",__name:"tag",props:F,emits:K,setup(s,{emit:_}){const B=s,p=_,z=x(),{t:f}=$(),a=j("tag"),b=P(()=>{const{type:e,hit:l,effect:n,closable:c,round:w}=B;return[a.b(),a.is("closable",c),a.m(e||"primary"),a.m(z.value),a.m(n),a.is("hit",l),a.is("round",w)]}),g=e=>{p("close",e)},y=e=>{p("click",e)},T=e=>{var l,n,c;(c=(n=(l=e==null?void 0:e.component)==null?void 0:l.subTree)==null?void 0:n.component)!=null&&c.bum&&(e.component.subTree.component.bum=null)};return(e,l)=>s.disableTransitions?(i(),u("span",{key:0,class:o(b.value),style:S({backgroundColor:s.color}),onClick:y},[m("span",{class:o(t(a).e("content"))},[k(e.$slots,"default")],2),s.closable?(i(),u("button",{key:0,"aria-label":t(f)("el.tag.close"),class:o(t(a).e("close")),type:"button",onClick:h(g,["stop"])},[r(t(v),null,{default:d(()=>[r(t(C))]),_:1})],10,W)):E("v-if",!0)],6)):(i(),I(L,{key:1,name:`${t(a).namespace.value}-zoom-in-center`,appear:"",onVnodeMounted:T},{default:d(()=>[m("span",{class:o(b.value),style:S({backgroundColor:s.color}),onClick:y},[m("span",{class:o(t(a).e("content"))},[k(e.$slots,"default")],2),s.closable?(i(),u("button",{key:0,"aria-label":t(f)("el.tag.close"),class:o(t(a).e("close")),type:"button",onClick:h(g,["stop"])},[r(t(v),null,{default:d(()=>[r(t(C))]),_:1})],10,Z)):E("v-if",!0)],6)]),_:3},8,["name"]))}}),D=A;const J=q(D);export{J as E,F as t};

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
import{aF as s,aG as e,aH as o,aI as n}from"./index-D5veDkuG.js";const l=()=>s("/model-eval"),m=a=>s(`/model-eval/${a}`),d=a=>n(`/model-eval/${a}`),c=a=>e("/model-eval/start",a),v=a=>s(`/dimension/${a}`),r=a=>e("/dimension",a),g=(a,t)=>o(`/dimension/${a}`,t);export{m as a,v as b,r as c,d,l as g,c as s,g as u}; import{aF as s,aG as e,aH as o,aI as n}from"./index-CD29OCdJ.js";const l=()=>s("/model-eval"),m=a=>s(`/model-eval/${a}`),d=a=>n(`/model-eval/${a}`),c=a=>e("/model-eval/start",a),v=a=>s(`/dimension/${a}`),r=a=>e("/dimension",a),g=(a,t)=>o(`/dimension/${a}`,t);export{m as a,v as b,r as c,d,l as g,c as s,g as u};

View File

@@ -0,0 +1 @@
import{aF as n,aG as t,aH as i,aI as a}from"./index-CD29OCdJ.js";const o=()=>n("/fine-tune"),c=e=>n(`/fine-tune/${e}`),f=e=>n("/fine-tune/check-name",{name:e}),g=e=>t("/fine-tune",e),F=e=>t("/fine-tune/start",e),r=e=>t("/fine-tune/preflight",e),T=e=>n(`/fine-tune/${e}/diagnostics`),p=(e,s)=>i(`/fine-tune/${e}`,s),$=e=>t(`/fine-tune/stop/${e}`),d=e=>a(`/fine-tune/${e}`),h=e=>n(`/fine-tune/progress/${e}`),l=(e,s={})=>n(`/fine-tune/${e}/logs`,s);export{h as a,c as b,f as c,d,g as e,F as f,o as g,l as h,T as i,r as p,$ as s,p as u};

View File

@@ -1 +0,0 @@
import{aF as n,aG as s,aH as a,aI as u}from"./index-D5veDkuG.js";const o=()=>n("/fine-tune"),c=e=>n(`/fine-tune/${e}`),f=e=>n("/fine-tune/check-name",{name:e}),F=e=>s("/fine-tune",e),g=e=>s("/fine-tune/start",e),r=(e,t)=>a(`/fine-tune/${e}`,t),T=e=>s(`/fine-tune/stop/${e}`),p=e=>u(`/fine-tune/${e}`),$=e=>n(`/fine-tune/progress/${e}`),d=(e,t={})=>n(`/fine-tune/${e}/logs`,t);export{$ as a,c as b,f as c,p as d,F as e,g as f,o as g,d as h,T as s,r as u};

View File

@@ -1,4 +1,4 @@
import{D as it,aK as ot,f as b,j as d,N as L,bt as pt,c8 as vt,c9 as kt,B as $,bk as yt,y as I,G as St,ah as xt,a9 as G,b as wt,br as Mt,i as Q,aR as $t,R as ut,u as Bt,bF as At,ca as It,a as Y,d as lt,o as x,e as A,w as j,c as O,M as Nt,h as E,E as X,n as q,r as T,g as tt,Y as Rt,F as Ht,z as Ft,l as Et,ab as _t}from"./index-D5veDkuG.js";const Vt=({from:s,replacement:e,scope:t,version:n,ref:r,type:i="API"},a)=>{it(()=>b(a),o=>{o&&ot(t,`[${i}] ${s} is about to be deprecated in version ${n}, please use ${e} instead. import{D as it,aK as ot,f as b,j as d,N as L,bt as pt,c8 as vt,c9 as kt,B as $,bk as yt,y as I,G as St,ah as xt,a9 as G,b as wt,br as Mt,i as Q,aR as $t,R as ut,u as Bt,bF as At,ca as It,a as Y,d as lt,o as x,e as A,w as j,c as O,M as Nt,h as E,E as X,n as q,r as T,g as tt,Y as Rt,F as Ht,z as Ft,l as Et,ab as _t}from"./index-CD29OCdJ.js";const Vt=({from:s,replacement:e,scope:t,version:n,ref:r,type:i="API"},a)=>{it(()=>b(a),o=>{o&&ot(t,`[${i}] ${s} is about to be deprecated in version ${n}, please use ${e} instead.
For more detail, please visit: ${r} For more detail, please visit: ${r}
`)},{immediate:!0})},ct=s=>{const e=L();return d(()=>{var t,n;return(n=(t=e==null?void 0:e.proxy)==null?void 0:t.$props)==null?void 0:n[s]})},K={prefix:Math.floor(Math.random()*1e4),current:0},zt=Symbol("elIdInjection"),Pt=()=>L()?$(zt,K):K,jt=s=>{const e=Pt();!pt&&e===K&&ot("IdInjection",`Looks like you are using server rendering, you must provide a id provider to ensure the hydration process to be succeed `)},{immediate:!0})},ct=s=>{const e=L();return d(()=>{var t,n;return(n=(t=e==null?void 0:e.proxy)==null?void 0:t.$props)==null?void 0:n[s]})},K={prefix:Math.floor(Math.random()*1e4),current:0},zt=Symbol("elIdInjection"),Pt=()=>L()?$(zt,K):K,jt=s=>{const e=Pt();!pt&&e===K&&ot("IdInjection",`Looks like you are using server rendering, you must provide a id provider to ensure the hydration process to be succeed
usage: app.provide(ID_INJECTION_KEY, { usage: app.provide(ID_INJECTION_KEY, {

Some files were not shown because too many files have changed in this diff Show More