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 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								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 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								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 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							ac065504f6
							
						
					 | 
					
						
						
							
							test: vue组件测试用例
						
						
						
						
						
						
					 | 
					
						2022-09-26 21:29:54 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							b50f6a9fbf
							
						
					 | 
					
						
						
							
							chore: release v1.2.0-beta.1
						
						
						
						
						
						
					 | 
					
						2022-09-22 17:13:21 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							66c5daca49
							
						
					 | 
					
						
						
							
							chore: release v1.1.6
						
						
						
						
						
						
					 | 
					
						2022-09-22 16:00:43 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							cebb152416
							
						
					 | 
					
						
						
							
							chore: release v1.1.5
						
						
						
						
						
						
					 | 
					
						2022-09-20 15:31:04 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							6d91cacc84
							
						
					 | 
					
						
						
							
							build: vite依赖升级
						
						
						
						
						
						
					 | 
					
						2022-09-20 13:18:32 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							d748090b5c
							
						
					 | 
					
						
						
							
							chore: release v1.1.4
						
						
						
						
						
						
					 | 
					
						2022-09-15 14:47:56 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							66579793c2
							
						
					 | 
					
						
						
							
							chore: release v1.1.3
						
						
						
						
						
						
					 | 
					
						2022-09-13 14:32:48 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							601528d752
							
						
					 | 
					
						
						
							
							chore: release v1.1.2
						
						
						
						
						
						
					 | 
					
						2022-09-08 12:48:44 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							d84c6d08c3
							
						
					 | 
					
						
						
							
							chore: release v1.1.1
						
						
						
						
						
						
					 | 
					
						2022-08-31 15:14:05 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							53f36bcebb
							
						
					 | 
					
						
						
							
							chore: release v1.1.0
						
						
						
						
						
						
					 | 
					
						2022-08-30 20:18:50 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							7dfb0ea7b6
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.13
						
						
						
						
						
						
					 | 
					
						2022-08-29 12:18:18 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							091bf37b6d
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.12
						
						
						
						
						
						
					 | 
					
						2022-08-24 11:04:08 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							6cc1d8e3c0
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.11
						
						
						
						
						
						
					 | 
					
						2022-08-19 11:25:10 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							6573e8606f
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.10
						
						
						
						
						
						
					 | 
					
						2022-08-17 15:29:57 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							cacf228511
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.9
						
						
						
						
						
						
					 | 
					
						2022-08-12 15:47:14 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							ea83830f17
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.8
						
						
						
						
						
						
					 | 
					
						2022-08-11 14:44:46 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							100cb940cb
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.7
						
						
						
						
						
						
					 | 
					
						2022-08-08 21:14:11 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							a7057d2568
							
						
					 | 
					
						
						
							
							fix(form): daterange不会自动更新
						
						
						
						
						
						
					 | 
					
						2022-08-08 21:09:58 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							9ac3e12487
							
						
					 | 
					
						
						
							
							feat(utils): moment换成dayjs
						
						
						
						
						
						
					 | 
					
						2022-08-08 18:57:38 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							3bcc0c408a
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.6
						
						
						
						
						
						
					 | 
					
						2022-08-05 20:21:45 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							5e36ca8e47
							
						
					 | 
					
						
						
							
							build: 构建时某些文件的.d文件丢失
						
						
						
						
						
						
					 | 
					
						2022-08-05 20:12:35 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							14e9b6ec59
							
						
					 | 
					
						
						
							
							chore: 将vite/client配置到tsconfig中
						
						
						
						
						
						
					 | 
					
						2022-08-04 15:39:19 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							55661ee2e7
							
						
					 | 
					
						
						
							
							chore: 更新vite到3.0
						
						
						
						
						
						
					 | 
					
						2022-08-04 15:39:19 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							3c0f19347d
							
						
					 | 
					
						
						
							
							chore: 更新ts版本
						
						
						
						
						
						
					 | 
					
						2022-08-04 15:39:19 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								khuntoriia
							
						 
					 | 
					
						
						
							
							
						
						
						
							
						
						
							b702857aad
							
						
					 | 
					
						
						
							
							feat(editor): 多选菜单支持复制粘贴删除 (#217)
						
						
						
						
						
						
						
						* feat(editor): 多选菜单支持复制粘贴删除
* fix(editor): 编辑器选中节点统一为nodes数组,保留原node对象为nodes数组的第一个元素,将复制粘贴删除行为封装到editorservice中,支持键盘快捷键
* test(editor): 修改editor相关测试用例
* fix(editor): cr问题修改
* feat(editor): 将复制粘贴操作进行拆分封装
* fix(editor): cr修改
Co-authored-by: parisma <parisma@tencent.com> 
						
						
					 | 
					
						2022-08-03 14:03:36 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							699e6fe953
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.5
						
						
						
						
						
						
					 | 
					
						2022-07-29 14:46:16 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							11d790d245
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.4
						
						
						
						
						
						
					 | 
					
						2022-07-26 16:34:42 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							818b5ea02a
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.3
						
						
						
						
						
						
					 | 
					
						2022-07-25 22:06:01 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							d8d0096350
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.2
						
						
						
						
						
						
					 | 
					
						2022-07-15 18:53:56 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							48294ea21b
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.1
						
						
						
						
						
						
					 | 
					
						2022-07-14 21:31:51 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							cec111beed
							
						
					 | 
					
						
						
							
							chore: release v1.1.0-beta.0
						
						
						
						
						
						
					 | 
					
						2022-07-14 20:39:11 +08:00 | 
					
					
						
						
							
							
							
						
					 | 
				
			
				
					
						
							
							
								 
								roymondchen
							
						 
					 | 
					
						
						
						
						
							
						
						
							de0c6952c7
							
						
					 | 
					
						
						
							
							feat: 支持将组件拖动到指定容器
						
						
						
						
						
						
					 | 
					
						2022-07-14 19:02:29 +08:00 | 
					
					
						
						
							
							
							
						
					 |