1172 Commits

Author SHA1 Message Date
roymondchen
ad2f4e15cc docs: 修正类型定义引用路径并为 editor 类型添加 region 标记 2026-09-01 20:01:04 +08:00
roymondchen
260582f141 chore: release v1.8.0-beta.26 2026-09-01 19:35:44 +08:00
roymondchen
08b610a4f2 fix(editor): 避免 defaultSelected 早于 root 就绪时 select 抛出未处理错误 2026-09-01 15:30:25 +08:00
roymondchen
58f2a943b8 fix(editor): inject eventBus 时提供 null 默认值
避免未处于 Editor 子树时 Vue 报 injection "eventBus" not found。
2026-09-01 15:11:59 +08:00
roymondchen
a7999f50d5 feat(form): 用 FormContext 与 provide/inject 替代 extendState 钩子
统一表单业务上下文的注入方式,通过读穿 Proxy 保持 mForm 回调签名不变,并移除 extendFormState/extendState 等分散的扩展钩子。
2026-09-01 14:48:42 +08:00
roymondchen
f2ee7ae7b5 feat(form): 统一字段值 effect 机制并将 nested 重命名为 innerConfig
将字段挂载时的 model 写入迁移至 registerField effect,
渲染与无渲染校验共用 applyMountValueEffects;
nested 重命名为 innerConfig 以区分配置派生与值写入。
2026-09-01 12:05:28 +08:00
roymondchen
02eeb2e87f feat(editor): 统一列表字段添加按钮样式并支持新增后自动滚动
CodeSelect、EventSelect、DisplayConds 使用吸底全宽添加按钮;
group-list 新增后滚到最后一项,避开吸顶标题与吸底按钮。
2026-09-01 12:02:09 +08:00
roymondchen
c34ed6aafc feat(form): 容器透传 labelPosition
容器未单独配置时回落到父级/表单级,子项自身配置优先。
2026-09-01 11:59:41 +08:00
roymondchen
93dc0d2187 feat(form): 新增无渲染校验入口,支持 Node/CI 环境执行表单校验
将 submitForm/validateForm 改为无 DOM 的 headless 实现,并抽取字段登记与编辑器复合字段配置,便于脚本与 CI 批量校验。
2026-08-28 15:33:54 +08:00
roymondchen
8ca03b59a0 chore: release v1.8.0-beta.25 2026-08-13 15:09:11 +08:00
roymondchen
05fbdb17b5 fix(editor): 统一数据源字段路径解析并优化 typeMatch 校验
修复 ds-field:: 前缀解析、checkStrictly 数据源取值及字段类型不匹配时的校验提示。
2026-08-13 15:03:49 +08:00
roymondchen
a7ccbe73af chore: release v1.8.0-beta.24 2026-08-10 20:49:19 +08:00
roymondchen
496df1f5e2 refactor(editor): 提取 UpdateOptions 并统一 DSL 操作 options 传递 2026-08-10 20:44:10 +08:00
roymondchen
d877bd8593 test(editor): 使用 vi.waitFor 稳定 CompareForm 与 ViewForm 单测 2026-08-10 20:18:57 +08:00
roymondchen
8550e6f854 fix(editor): 移除 removeStyleDisplayConfig 并取消属性 tab 懒加载
对比/只读表单直接返回 getPropsConfig 结果,样式/事件/高级 tab 不再使用 lazy 懒加载。
2026-08-10 20:18:57 +08:00
roymondchen
44cd3d480f feat(form,editor): 静默校验模式下跳过叶子字段渲染以提升性能
引入 silentLeafFieldTypes 白名单与 FORM_SILENT_MODE_KEY 注入。
Container 与编辑器重型字段在静默校验时跳过 UI 渲染,仅保留 FormItem 校验。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 20:18:55 +08:00
roymondchen
53c4763a59 fix(editor): 节点未注册时回退使用 formValue 加载事件与动作选项
当 editorService.getNodeById 找不到节点时,使用 formValue 作为 fallback,避免事件名和动作选项为空。
2026-08-07 17:01:52 +08:00
roymondchen
a7198e2731 fix(editor): 修复连续 add 与批量插入时节点顺序错乱
通过 lastAdded 记忆插入锚点、批量 add 改为串行,并向 runtime 传递 index 以保证编辑器与画布 DSL 顺序一致。
2026-08-07 11:59:06 +08:00
roymondchen
65db14cb98 chore: release v1.8.0-beta.23 2026-08-06 13:54:43 +08:00
roymondchen
0d1a17dce3 fix(form): 优化可选项校验建议文案并导出供 editor 复用
超过 20 个可选项时仅举例 5 个并标明总数,避免 AI 误以为仅有举例值合法;editor 侧复用 form 的统一实现。
2026-08-06 13:13:24 +08:00
roymondchen
efb637e72e fix(editor): abort 时保留常驻依赖收集 worker,避免反复重建
clearIdleTasks/reset 频繁触发时,销毁 worker 会导致加载中被反复打断、依赖收集无法完成;改为排队投递并丢弃未投递/在途请求,复用常驻 worker。
2026-08-06 11:40:33 +08:00
roymondchen
192c16a7be chore: upgrade dependencies and build tooling 2026-08-05 18:13:43 +08:00
roymondchen
1bf0bb9cce chore: release v1.8.0-beta.22 2026-08-04 20:02:33 +08:00
roymondchen
7777c205b9 fix(editor): 优化组件列表与图层面板搜索过滤
支持大小写不敏感匹配,组件列表扩展 desc、type 字段搜索。
2026-08-04 19:13:33 +08:00
roymondchen
6f0a41f2db feat(editor): 支持 update replace 整节点替换,源码编辑走 replace 模式
新增 replace 选项跳过 mergeWith 等变换,PropsPanel 源码保存时使用整节点覆盖,避免已删除字段被 merge 保留。
2026-08-04 19:13:33 +08:00
roymondchen
af157fcda9 fix(editor): 修复 StyleSetter Box/Position 输入框无法正确显示 model 值
原生 input 应使用 :value 而非 :model-value,并补充值显示与同步更新的单元测试。
2026-08-04 19:01:51 +08:00
roymondchen
d5a2e25e18 feat(editor): 完善样式设置器字段 typeMatch 校验
为 Background/Font/Position 补充类型校验提示。
字重字段支持字符串与数字,并复用 validateDataSourceFieldSelectValue。
getRules 过滤无 validator 的 typeMatch:false 规则,避免 number 被误校验。
2026-08-04 17:40:52 +08:00
roymondchen
a6e542d668 chore: release v1.8.0-beta.21 2026-08-04 13:08:49 +08:00
roymondchen
b544f05917 fix(editor): 修复 IdleTask 在 requestIdleCallback timeout 时队列空转的问题
主线程持续繁忙时回调因 timeout 触发,timeRemaining() 恒为 0 导致任务无法执行且依赖收集卡住;改用时间预算分批推进并补充单测。
2026-08-04 12:19:39 +08:00
roymondchen
d2a02e16d2 feat(editor): getEvent/getMethod 支持节点上下文参数
便于插件通过 beforeGetEvent/afterGetEvent 等钩子按节点定制事件与方法列表;getMethod 第二参数调整为 { node?, targetId? }。
2026-08-03 20:41:27 +08:00
roymondchen
0ea5568fec chore: release v1.8.0-beta.20 2026-07-30 17:10:43 +08:00
roymondchen
4bbda354a9 feat(editor,dep): collectIdle 使用常驻 Web Worker 做依赖收集
将节点树遍历与 target 匹配下沉到与 collectByWorker 共用的常驻 worker,
避免大页面时主线程卡死;通过可序列化 descriptor 重建内置 target,
失败时回退主线程空闲队列。
2026-07-30 17:03:48 +08:00
roymondchen
aa42144738 fix(editor): 修复删除页面/页面片时画布被误清空的问题
删除当前页时先切换画布再通知 runtime 销毁;runtime 侧仅在删除当前渲染页时才调用 deletePage。
2026-07-30 15:38:27 +08:00
roymondchen
c4b98e3257 refactor(test): 移除 editor 单元测试中冗余的 vi.mock 覆盖
依赖 importActual 保留真实实现即可,无需再 mock SideItemKey、NodeType 等常量。
2026-07-30 14:58:36 +08:00
roymondchen
b85eaa9452 refactor(utils): 新增 isPageOrFragment 统一页面与页面片判断 2026-07-30 14:56:05 +08:00
roymondchen
4923a34835 chore: release v1.8.0-beta.19 2026-07-28 16:52:20 +08:00
roymondchen
b7c04edcd5 feat(form): 新增 validateOnInit,默认关闭初始化时自动校验
属性面板仍开启初始化校验,避免打开普通表单时立即展示错误态。
2026-07-28 16:45:42 +08:00
roymondchen
a342a78313 chore: release v1.8.0-beta.18 2026-07-28 16:16:20 +08:00
roymondchen
3fe9cf9b66 fix(editor): 修复 IdleTask 任务异常或 clearTasks 时队列卡住的问题
单个任务失败不再中断整批依赖收集,并在 runTaskQueue 中正确重置 taskHandle、始终通过实例队列消费任务。
2026-07-28 15:32:58 +08:00
roymondchen
e4d4a11240 style(design,editor): 调整卡片间距 2026-07-28 15:32:09 +08:00
roymondchen
a0b5702330 chore: release v1.8.0-beta.17 2026-07-27 17:39:05 +08:00
roymondchen
e6cf694a03 feat(editor,stage): 新增 containerHighlightAddOnly 配置
开启后仅新增组件(从组件列表拖入)时才识别容器,画布中拖动已有组件不再被加入其他容器,避免误操作
2026-07-27 17:33:29 +08:00
manmanyu
be7b38f97e style(design,editor,form): 事件模块处理 & 卡片样式调整 2026-07-27 08:55:36 +00:00
roymondchen
b564c9e4aa fix(editor): 切换动作类型时清空关联配置字段 2026-07-24 17:17:55 +08:00
roymondchen
b5abf31066 fix(editor): 修复 collectIdle 批次结算与中断时 Promise 挂起问题
引入批次级 Promise 结算,避免快速连续触发或 clearIdleTasks 后 collecting 卡死。
collectIdle 返回 boolean 表示是否完整完成,initService 据此跳过被中断的 stage 更新。
2026-07-24 17:17:55 +08:00
roymondchen
329cd947e1 chore: release v1.8.0-beta.16 2026-07-23 22:11:18 +08:00
roymondchen
0e1986c819 feat: 参考建议可选值最多展示个数由 5 调整为 20 2026-07-23 22:07:51 +08:00
roymondchen
d0a22315c0 refactor(form): 抽离表单校验逻辑至 validateForm 并复用于 props 面板
- 将 editor 的 validatePropsForm 逻辑迁移到 @tmagic/form 的 validateForm
- FormPanel 源码保存改为复用 validateForm 静默校验
- 补充 form 校验与 applyExtendState 相关单元测试
2026-07-23 22:02:43 +08:00
roymondchen
bf9078a458 chore: release v1.8.0-beta.15 2026-07-23 20:24:47 +08:00
roymondchen
3b9d5da0bc feat(form,editor): submitForm/validateForm 静默挂载时注入静默标记,vs-code 字段跳过 monaco 渲染 2026-07-23 20:22:47 +08:00