Commit Graph

30 Commits

Author SHA1 Message Date
6b0042cb66 refactor(annotation): 简化任务选择逻辑并移除未使用的状态管理
- 移除了 resolveSegmentSummary 函数调用以简化完成状态判断
- 删除了未使用的 segmentStats 相关引用和缓存清理代码
- 简化了重置模式下的状态更新逻辑
2026-02-04 18:23:49 +08:00
fa9e9d9f68 refactor(annotation): 简化文本标注编辑器的段落管理功能
- 移除段落统计相关的数据结构和缓存逻辑
- 删除段落切换确认对话框和自动保存选项
- 简化段落加载和状态管理流程
- 将段落列表视图替换为简单的进度显示
- 更新API接口以支持单段内容获取
- 重构后端服务实现单段内容查询功能
2026-02-04 18:08:14 +08:00
cda22a720c feat(annotation): 优化文本标注分段功能实现
- 新增 getEditorTaskSegmentsUsingGet 接口用于获取任务分段信息
- 移除 SegmentInfo 中的 text、start、end 字段,精简数据结构
- 添加 EditorTaskSegmentsResponse 类型定义用于分段摘要响应
- 实现服务端 get_task_segments 方法,支持分段信息查询
- 重构前端组件缓存机制,使用 segmentSummaryFileRef 管理分段状态
- 优化分段构建逻辑,提取 _build_segment_contexts 公共方法
- 调整后端 _build_text_task 方法中的分段处理流程
- 更新 API 类型定义,统一 RequestParams 和 RequestPayload 类型
2026-02-04 16:59:04 +08:00
906bb39b83 feat(annotation): 添加保存并跳转到下一段功能
- 新增 SAVE_AND_NEXT_LABEL 常量用于保存并跳转按钮文本
- 添加 saveDisabled 状态控制保存按钮禁用逻辑
- 修改顶部工具栏布局为三列网格结构
- 在工具栏中间位置添加保存并跳转到下一段/下一条按钮
- 调整保存按钮样式移除主色调设置
- 优化保存按钮禁用状态逻辑统一管理
- 修改保存功能区分普通保存和跳转保存操作
2026-02-01 13:09:55 +08:00
aeec19b99f feat(annotation): 添加保存快捷键功能
- 实现了 Ctrl+S 保存快捷键检测逻辑
- 添加了 handleSaveShortcut 事件处理函数
- 在窗口上注册键盘事件监听器
- 修改 requestExport 函数支持 autoAdvance 参数
- 更新保存按钮点击事件传递 autoAdvance 参数
2026-01-31 20:47:33 +08:00
5d8d25ca8c fix(annotation): 解决空标注结果的状态处理问题
- 在构建标注快照时增加空标注检查,避免空对象被处理
- 修改状态判断逻辑,当标注为空且当前状态为 NO_ANNOTATION 或 NOT_APPLICABLE 时保持原状态
- 移除冗余的 hasExistingAnnotation 变量检查
- 确保空标注情况下状态流转的正确性,防止误标为已标注状态
2026-01-31 16:57:38 +08:00
33cf65c9f8 feat(annotation): 添加分段标注统计和进度跟踪功能
- 新增 SegmentStats 类型定义用于分段统计
- 实现分段标注进度计算和缓存机制
- 添加标注任务状态判断逻辑支持分段模式
- 集成分段统计数据显示到任务列表界面
- 实现分段总数自动计算和验证功能
- 扩展标注状态枚举支持进行中标注状态
- 优化任务选择逻辑基于分段完成状态
- 添加分段统计数据预加载和同步机制
2026-01-31 15:42:04 +08:00
f2403f00ce feat(annotation): 添加不适用标注状态支持
- 在 AnnotationResultStatus 枚举中新增 NOT_APPLICABLE 状态
- 将无标注/不适用合并为两个独立的状态选项
- 更新前端标签显示逻辑以支持新的状态类型
- 修改确认对话框允许选择不适用状态
- 在后端数据库模型中添加 NOT_APPLICABLE 状态值
- 更新 API schema 描述以反映新的状态选项
- 调整标注状态判断和保存逻辑以处理三种状态
- 更新数据库表结构注释包含新状态类型
2026-01-31 13:28:08 +08:00
f4fc574687 feat(annotation): 添加标注状态管理功能
- 引入 AnnotationResultStatus 枚举类型区分已标注和无标注状态
- 在前端组件中实现空标注检测和确认对话框逻辑
- 添加数据库表字段 annotation_status 存储标注状态
- 扩展后端服务验证和处理标注状态逻辑
- 更新 API 接口支持标注状态参数传递
- 改进任务列表显示逻辑以反映不同标注状态
- 实现分段模式下的标注结果检查机制
2026-01-31 13:23:38 +08:00
52a2a73a8e feat(annotation): 添加保存并跳转快捷键功能
- 实现了 Ctrl+Enter 保存并跳转到下一个标注的快捷键逻辑
- 添加了键盘事件监听器来捕获快捷键组合
- 集成了导出选中标注并发送到父窗口的功能
- 处理了快捷键事件的防重复和传播阻止
- 在消息处理器中添加了 LS_SAVE_AND_NEXT 类型的支持
- 实现了自动跳转到下一项标注的功能
2026-01-31 11:47:33 +08:00
0b69845a29 feat(annotation): 添加文本项目源文档过滤功能
- 在 EditorProjectInfo 中增加 datasetType 字段
- 移除前端硬编码的源文档扩展名列表
- 添加 isTextProject 判断逻辑
- 实现 prefetch 和 loadTasks 中的源文档排除参数
- 在后端接口中添加 excludeSourceDocuments 参数
- 实现源文档类型的数据库查询过滤逻辑
- 优化任务列表加载性能,避免不必要的源文档加载
2026-01-29 16:29:40 +08:00
f5f0add529 refactor(editor): 重构标签工作室文本编辑器组件
- 优化了文本编辑器的渲染性能
- 改进了组件的状态管理逻辑
- 更新了编辑器的事件处理机制
- 简化了组件的属性传递方式
- 修复了文本选择相关的边界情况
- 提升了代码的可维护性和可读性
2026-01-29 16:14:10 +08:00
a28b427e21 feat(data-annotation): 添加任务预加载功能以提升用户体验
- 引入 UpsertAnnotationResponse 类型定义用于处理标注更新响应
- 移除废弃的 mergeTaskPages 函数并优化任务列表合并逻辑
- 新增 prefetchSeqRef 和 prefetching 状态管理预加载过程
- 实现 startPrefetchTasks 函数用于后台预加载剩余页的任务数据
- 更新 loadTasks 函数移除 refresh 模式并集成预加载机制
- 修改标注保存逻辑直接更新本地任务状态而非重新加载全部数据
- 在加载按钮中显示预加载状态提示用户当前操作进度
- 项目切换时重置预加载序列号确保状态一致性
2026-01-27 19:45:25 +08:00
1158647217 feat(annotation): 实现任务列表分页加载和优化排序功能
- 添加分页相关字段到EditorTaskListResponse类型定义
- 定义TASK_PAGE_START和TASK_PAGE_SIZE常量及NormalizedTaskList类型
- 实现mergeTaskItems、mergeTaskPages和normalizeTaskListResponse工具函数
- 添加taskPage、taskTotal、taskTotalPages和loadingMore状态管理
- 优化后端查询逻辑,使用case语句实现标注状态排序
- 集成外连接查询同时获取文件信息和标注结果
- 改进前端任务列表的数据合并和分页加载机制
2026-01-27 19:08:37 +08:00
e56211107e feat(annotation): 添加Label Studio文本编辑器的焦点管理功能
- 实现focusIframe函数用于聚焦iframe元素
- 在iframeReady和lsReady状态变化时自动聚焦编辑器
- 添加窗口聚焦事件监听器以保持编辑器焦点
- 在编辑器容器上添加鼠标点击事件以获取焦点
- 确保标签工作室准备就绪后正确设置焦点
- 优化用户体验通过自动焦点切换机制
2026-01-27 14:37:14 +08:00
371df12a96 feat(annotation): 添加文本数据集段落切片功能
- 在前端组件中新增 segmentationEnabled 字段控制切片开关
- 为文本数据集添加段落切片配置选项,默认启用切片功能
- 在后端接口中新增 segmentation_enabled 参数传递给标注项目
- 实现切片逻辑控制,支持文本数据的自动段落分割
- 添加数据集类型判断,仅文本数据集支持切片配置
- 更新标注任务创建和编辑表单中的切片相关字段处理
2026-01-26 12:14:27 +08:00
fa160164d2 feat(annotation): 添加文本标注编辑器中的段落树导航和自动跳转功能
- 引入 Tree 和 Empty 组件用于段落导航展示
- 实现分段树形结构数据生成和展示功能
- 添加自动跳转到下一个待标注文件或段落的功能
- 优化文件选择逻辑,优先选择未标注的文件
- 实现段落切换时的状态管理和依赖更新
- 添加段落树节点选中和展开状态控制
- 优化界面布局和滚动区域的高度计算
2026-01-26 11:44:33 +08:00
250a13ff70 feat(annotation): 支持图像标注项目并添加内置标注模板
- 扩展标注编辑器支持 TEXT/IMAGE 数据类型
- 添加三个内置图像标注模板:目标检测、语义分割(掩码)、语义分割(多边形)
- 实现内置标注模板的数据库初始化功能
- 集成标注配置验证和模板管理服务
- 更新项目不支持提示信息以反映新的数据类型支持
2026-01-25 18:35:07 +08:00
03402e4559 fix(annotation): 修复段落导航栏布局问题
- 修改段落导航容器为 flex-nowrap 防止换行
- 为段落标签添加 shrink-0 类避免压缩
- 使用 flex-1 min-w-0 优化段落列表容器
- 添加 overflow-x-auto 和 whitespace-nowrap 实现横向滚动
- 为右侧控制区域添加 shrink-0 和 whitespace-nowrap 类
2026-01-24 16:28:07 +08:00
0e30e658e9 feat(annotation): 添加 JSONL 文件支持和文本键解析功能
- 添加 JSONL 文件扩展名常量定义
- 实现主文本键解析方法 _resolve_primary_text_key
- 添加 JSONL 记录解析方法 _parse_jsonl_records
- 修改任务数据构建方法以支持主文本键参数
- 实现主文本值解析方法 _resolve_primary_text_value
- 更新项目信息获取逻辑以支持 JSONL 多行记录处理
- 修改分段逻辑以支持 JSONL 多行或超长文本分段
- 调整标注处理逻辑以正确处理分段标注场景
2026-01-23 22:09:06 +08:00
389c04b46a feat(annotation): 添加切换段落时自动保存功能
- 在 LabelStudioTextEditor 组件中新增 Switch 组件用于控制自动保存
- 添加 autoSaveOnSwitch 状态管理自动保存开关
- 修改 confirmSaveBeforeSwitch 函数支持保存、放弃、取消三种决策
- 实现自动保存逻辑,当开关开启时直接保存而不弹出确认对话框
- 在段落导航栏添加自动保存开关和标签显示
- 更新切换段落时的未保存更改处理逻辑
2026-01-22 17:38:25 +08:00
9c9d5ecbe2 feat(annotation): 添加标注检查和段落切换保护功能
- 在LSF中实现LS_EXPORT_CHECK消息处理以获取当前标注状态
- 添加requestId支持用于标注导出请求的追踪
- 实现稳定字符串化算法用于标注快照比较
- 添加段落切换前的未保存更改检测和确认对话框
- 集成标注快
2026-01-22 17:29:21 +08:00
1eee1e248e feat(annotation): 添加分段索引支持和优化标注编辑器
- 在前端 lsf.html 中添加 segmentIndex 字段解析逻辑
- 在 LabelStudioTextEditor 中添加分段索引相关类型定义和处理函数
- 使用 useCallback 优化组件中的异步函数性能
- 添加对驼峰命名和下划线命名的数据字段兼容处理
- 实现分段模式下的标注状态更新功能
- 添加任务 ID 验证防止过期保存请求
- 在后端 editor.py 中添加分段索引字段支持
- 统一前后端数据传输格式确保字段一致性
2026-01-22 17:14:37 +08:00
71c4a8d8a6 feat(annotation): 添加文本分段标注功能
- 引入文本分割器实现长文本按200字符自动分段
- 增加分段状态管理和段落导航界面
- 支持按段落保存和加载标注数据
- 实现分段模式下的标注状态跟踪
- 扩展API接口支持段落索引参数
- 添加分段相关的数据模型定义
2026-01-19 18:18:19 +08:00
4df48e08c8 feat(annotation): 移除标注历史功能
- 移除了 annotations:history 权限配置项
- 简化了权限控制列表结构
2026-01-19 16:11:58 +08:00
ed7a5c6873 feat(annotation): 添加标注编辑器侧边栏折叠功能
- 引入 MenuFoldOutlined 和 MenuUnfoldOutlined 图标用于侧边栏控制
- 添加 sidebarCollapsed 状态管理侧边栏展开/收起状态
- 扩展 Label Studio 界面配置,启用完整的标注界面组件
- 实现可折叠的左侧文件列表,支持展开/收起操作
- 优化顶部工具栏布局,调整标题层级和按钮标签
- 改进文件列表样式,添加悬停效果和更清晰的状态标识
- 调整整体布局结构,提升编辑器区域的空间利用率
2026-01-19 16:10:26 +08:00
70b2ddd4a2 feat(label-studio): 添加编辑器就绪状态检查和任务ID验证
- 添加 expectedTaskIdRef 用于跟踪预期任务ID
- 添加 lsReady 状态管理编辑器就绪状态
- 在任务加载时重置编辑器就绪状态和预期任务ID
- 实现 LS_READY 消息处理和任务ID验证逻辑
- 添加错误处理时设置编辑器为未就绪状态
- 更新加载提示显示不同状态信息
- 改进条件渲染确保编辑器完全准备就绪后显示
2026-01-12 22:44:13 +08:00
0f68146283 feat(annotation): 更新标签工作室文本编辑器界面配置
- 修改标注接口配置,启用当前标注和历史记录功能
- 替换提交按钮为标注标签页和菜单功能
- 优化文件卡片布局样式,调整高度和溢出处理
- 更新编辑器卡片样式,改进响应式布局结构
2026-01-09 18:38:55 +08:00
a82f4f1bc3 refactor(annotation): 移除对 Label Studio Server 的依赖并切换到内嵌编辑器模式
- 移除 LabelStudioClient 和 SyncService 的导入及使用
- 删除与 Label Studio 项目的创建、删除和同步相关代码
- 修改创建数据集映射功能,改为创建 DataMate 标注项目
- 更新删除映射接口,仅进行软删除不再删除 Label Studio 项目
- 修改同步接口为兼容性保留,实际操作为空操作
- 移除 Label Studio 连接诊断功能
- 更新文档说明以反映内嵌编辑器模式的变化
2026-01-09 12:31:03 +08:00
d5b75fee0d LSF 2026-01-07 00:00:16 +08:00