231 Commits

Author SHA1 Message Date
roymondchen
fcb69b7743 chore: release v1.2.5 2023-02-17 15:58:59 +08:00
roymondchen
8102aaeb12 chore: release v1.2.4 2023-02-17 14:24:14 +08:00
roymondchen
6637fdc92b chore: release v1.2.3 2023-02-15 19:46:59 +08:00
roymondchen
ae5c627902 chore: release v1.2.2 2023-02-09 17:00:12 +08:00
roymondchen
89fa321088 chore: release v1.2.1 2023-02-09 16:32:02 +08:00
oceanzhu
23708e4644 chore: 更新版权年份 2023-01-04 16:11:51 +08:00
roymondchen
b13aaeb0e9 chore: release v1.2.0 2022-12-22 11:14:59 +08:00
roymondchen
9b324d17cc chore: release v1.2.0-beta.27 2022-12-13 19:02:00 +08:00
roymondchen
ac11fc5926 chore: release v1.2.0-beta.26 2022-12-12 16:59:39 +08:00
roymondchen
9dec40805c chore: release v1.2.0-beta.25 2022-12-07 20:08:02 +08:00
roymondchen
328b3135e5 chore: release v1.2.0-beta.24 2022-12-07 17:04:41 +08:00
roymondchen
14550ddc0f chore: release v1.2.0-beta.23 2022-12-07 16:32:00 +08:00
roymondchen
8ab6cdb03c chore: release v1.2.0-beta.22 2022-12-06 21:02:59 +08:00
roymondchen
f3574a5029 chore: release v1.2.0-beta.21 2022-12-06 20:35:10 +08:00
roymondchen
180252f3f5 chore: 添加type=module 2022-12-06 19:12:32 +08:00
roymondchen
51f7963197 chore: release v1.2.0-beta.20 2022-12-05 20:41:50 +08:00
roymondchen
f050ec1273 chore: release v1.2.0-beta.19 2022-12-01 20:38:37 +08:00
oceanzhu
3fb880d09b refactor(stage):重构魔方编辑器stage代码
Squash merge branch 'feature/oc_actionbox_879360293' into 'master'
    对魔方编辑器核心代码stage进行重构,这部分代码主要是负责编辑器中间画布区域的处理,包括渲染一个所见即所得的画布,支持组件的增删改查和拖拽、高亮操作。
    旧代码存在的问题以及解决方案:
    1、过多暴露属性和循环引用,导致stageCore、stageDragResize、StageMultiDragResize、StageRender、StageMask、StageHighlight之间形成复杂的网状依赖,非常不可控。StageCore负责创建后面5个类的实例,并把这些实例作为自己的公共属性,同时core把自己的this传给这些实例,这些实例就会通过core传进来的this,通过core间接的访问其它实例的方法和属性,比如在stageDragResize中可能存在这样的一个访问:this.core.stageRender.contentWindow.document
    解决方案:
    1)、属性尽量设置为私有,对外暴露方法,不暴露属性;
    2)、core避免向其它类传递this,改为传递接口,需要什么就传什么

    2、事件传递较多,跳来跳去,定位问题较为困难
    解决方案:
    重新梳理各个类的职责,尽量在类中闭环,减少事件传递。
    新增了actionManager类,core负责管理render、mask、actionManager三个类;
    actionManager负责管理单选、多选、高亮三个类,同时将mask中的事件监听,转移到actionManager监听,actionManager形成单选、多选、高亮行为后,直接调动单选、多选、高亮完成功能。

    3、存在一些重复代码
    主要是拖拽框的代码在单选、多选、高亮中各自维护,改为统一维护

    4、多选不支持辅助线对齐
    将单选中的moveableOption管理逻辑抽取出来成为单选和多选的父类,使多选支持辅助线对齐

    本次改动取消了一些对外暴露的属性,moveableOption回调函数签名也有变化,详细情况如下:
    删除stageCore公共属性:
    public selectedDom: HTMLElement | undefined;
    public selectedDomList: HTMLElement[] = [];
    public highlightedDom: Element | undefined;
    public dr: StageDragResize;
    public multiDr: StageMultiDragResize;
    public highlightLayer: StageHighlight;
    public config: StageCoreConfig;
    public zoom = DEFAULT_ZOOM;
    public containerHighlightClassName: string;
    public containerHighlightDuration: number;
    public containerHighlightType?: ContainerHighlightType;
    public isContainer: IsContainer;

    stageCore入参改动:
    这两个参数原本定义:
    moveableOptions?: ((core?: StageCore) => MoveableOptions) | MoveableOptions;
    multiMoveableOptions?: ((core?: StageCore) => MoveableOptions) | MoveableOptions;
    修改后定义:
    moveableOptions?: CustomizeMoveableOptions;
    multiMoveableOptions?: CustomizeMoveableOptions;
    CustomizeMoveableOptions =
      | ((config?: CustomizeMoveableOptionsCallbackConfig) => MoveableOptions)
      | MoveableOptions
      | undefined;
    export interface CustomizeMoveableOptionsCallbackConfig {
      targetElId?: string;
    }
2022-11-24 21:19:56 +08:00
roymondchen
deeb55cd0b chore: release v1.2.0-beta.18 2022-11-24 21:04:33 +08:00
roymondchen
76a8eee6c5 chore: release v1.2.0-beta.17 2022-11-24 15:27:37 +08:00
roymondchen
f44500d21b chore: release v1.2.0-beta.16 2022-11-23 18:52:24 +08:00
roymondchen
a4f9467d53 chore: release v1.2.0-beta.15 2022-11-22 16:41:50 +08:00
parisma
8195a600f5 feat(editor): 修改代码块参数结构,以对象形式暴露app,params 2022-11-22 04:28:54 +00:00
roymondchen
f0d6624fc4 chore: release v1.2.0-beta.14 2022-11-18 18:12:58 +08:00
roymondchen
a575073387 chore: release v1.2.0-beta.13 2022-11-15 18:19:57 +08:00
roymondchen
52fc452823 chore: release v1.2.0-beta.12 2022-11-15 16:58:27 +08:00
parisma
a03ac7c78b feat: core代码执行兼容老的数据格式 2022-11-10 20:10:21 +08:00
parisma
c7a8552d9b fix: 代码块结构改造完成 2022-11-10 19:53:35 +08:00
parisma
c4293f17a6 feat: 修改code_block结构,组件代码关系绑定改为table,绑定关系更新未完成 2022-11-10 19:53:35 +08:00
roymondchen
2bbca87e51 chore: release v1.2.0-beta.11 2022-11-08 16:23:29 +08:00
roymondchen
d8d6342505 chore: release v1.2.0-beta.10 2022-11-07 16:31:40 +08:00
roymondchen
bb01427a42 chore: release v1.2.0-beta.9 2022-10-28 19:20:04 +08:00
roymondchen
73ecdfff70 chore: release v1.2.0-beta.8 2022-10-25 17:41:35 +08:00
roymondchen
f9682a7b70 chore: release v1.2.0-beta.7 2022-10-17 16:03:29 +08:00
roymondchen
f6af025355 chore: release v1.2.0-beta.6 2022-10-14 18:52:37 +08:00
roymondchen
8c5518170d chore: release v1.2.0-beta.5 2022-10-12 19:21:24 +08:00
roymondchen
d5e8a77821 chore: release v1.2.0-beta.4 2022-10-12 16:31:14 +08:00
roymondchen
3baf6ffffc chore: release v1.2.0-beta.3 2022-10-12 15:42:02 +08:00
roymondchen
7da3509bd0 chore: release v1.2.0-beta.2 2022-09-28 16:45:58 +08:00
parisma
040d679b7f chore(core): ts报错修改 2022-09-28 16:17:25 +08:00
parisma
3bb8ecc975 fix(editor): 修复初始dsl无codeBlocks字段时无法新增的问题 2022-09-28 15:52:41 +08:00
i33
b3bae36d94 fix(runtime): 切换设计窗体大小时,同时修改app 2022-09-27 14:38:30 +08:00
roymondchen
b50f6a9fbf chore: release v1.2.0-beta.1 2022-09-22 17:13:21 +08:00
parisma
765c0a227d refactor(core): 升级schema版本 2022-09-22 16:46:11 +08:00
parisma
415ecad24c refactor(editor): 修改代码块描述内容在dsl中的键名为codeBlock字段 2022-09-22 16:46:11 +08:00
parisma
5de3eeda71 refactor(editor): cr修改 2022-09-22 16:46:11 +08:00
parisma
c3b502254b fix(core): 修复执行代码块的顺序问题 2022-09-22 16:46:11 +08:00
parisma
896f92b5a8 fix(editor): 代码块删除支持传参处理失败逻辑,ts类型修复 2022-09-22 16:46:11 +08:00
parisma
310ee32d75 feat(core): 修改core生命周期钩子处理逻辑,执行对应的代码块 2022-09-22 16:46:11 +08:00
roymondchen
66c5daca49 chore: release v1.1.6 2022-09-22 16:00:43 +08:00