diff --git a/packages/designer/src/component-meta.ts b/packages/designer/src/component-meta.ts index 08ee11af1..396ddbf55 100644 --- a/packages/designer/src/component-meta.ts +++ b/packages/designer/src/component-meta.ts @@ -277,13 +277,14 @@ export class ComponentMeta { return true; } - checkNestingDown(my: Node, target: Node | NodeSchema) { + checkNestingDown(my: Node, target: Node | NodeSchema | NodeSchema[]) { // 检查父子关系,直接约束型,在画布中拖拽直接掠过目标容器 if (this.childWhitelist) { - if (!isNode(target)) { - target = new Node(my.document, target); - } - return this.childWhitelist(target, my); + const _target: any = !Array.isArray(target) ? [target] : target; + return _target.every((item: Node | NodeSchema) => { + const _item = !isNode(item) ? new Node(my.document, item) : item; + return this.childWhitelist && this.childWhitelist(_item, my); + }); } return true; } diff --git a/packages/designer/src/designer/builtin-hotkey.ts b/packages/designer/src/designer/builtin-hotkey.ts index 07fa4ad56..27b33013d 100644 --- a/packages/designer/src/designer/builtin-hotkey.ts +++ b/packages/designer/src/designer/builtin-hotkey.ts @@ -151,7 +151,7 @@ hotkey.bind(['command+v', 'ctrl+v'], (e) => { } clipboard.waitPasteData(e, ({ componentsTree }) => { if (componentsTree) { - const { target, index } = designer.getSuitableInsertion() || {}; + const { target, index } = designer.getSuitableInsertion(componentsTree) || {}; if (!target) { return; } diff --git a/packages/designer/src/designer/designer.ts b/packages/designer/src/designer/designer.ts index 197bcfe67..d6fc63462 100644 --- a/packages/designer/src/designer/designer.ts +++ b/packages/designer/src/designer/designer.ts @@ -295,7 +295,7 @@ export class Designer { /** * 获得合适的插入位置 */ - getSuitableInsertion(insertNode?: Node | NodeSchema): { target: ParentalNode; index?: number } | null { + getSuitableInsertion(insertNode?: Node | NodeSchema | NodeSchema[]): { target: ParentalNode; index?: number } | null { const activedDoc = this.project.currentDocument; if (!activedDoc) { return null; diff --git a/packages/utils/src/svg-icon.tsx b/packages/utils/src/svg-icon.tsx index f75724b06..a0bde9eab 100644 --- a/packages/utils/src/svg-icon.tsx +++ b/packages/utils/src/svg-icon.tsx @@ -18,7 +18,7 @@ export interface IconProps { export function SVGIcon({ fill, - size = 'medium', + size = 'large', viewBox, style, children,