From 87ff5c52a07aade4bfd02ea0326d6e7e35c97c18 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Sun, 8 Jan 2023 12:14:45 +0400 Subject: [PATCH] TS PasteComponent --- .../view/{PasteComponent.js => PasteComponent.ts} | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) rename src/commands/view/{PasteComponent.js => PasteComponent.ts} (78%) diff --git a/src/commands/view/PasteComponent.js b/src/commands/view/PasteComponent.ts similarity index 78% rename from src/commands/view/PasteComponent.js rename to src/commands/view/PasteComponent.ts index 8f4cbca6a..153ed1a66 100644 --- a/src/commands/view/PasteComponent.js +++ b/src/commands/view/PasteComponent.ts @@ -1,9 +1,11 @@ import { isArray, contains } from 'underscore'; +import Component from '../../dom_components/model/Component'; +import { CustomCommand } from './CommandAbstract'; export default { run(ed, s, opts = {}) { const em = ed.getModel(); - const clp = em.get('clipboard'); + const clp: Component[] = em.get('clipboard'); const lastSelected = ed.getSelected(); if (clp && lastSelected) { @@ -16,11 +18,13 @@ export default { const addOpts = { at, action: opts.action || 'paste-component' }; if (contains(clp, selected) && selected.get('copyable')) { + // @ts-ignore added = collection.add(selected.clone(), addOpts); } else { const copyable = clp.filter(cop => cop.get('copyable')); - const pasteable = copyable.filter(cop => ed.Components.canMove(selected.parent(), cop).result); + const pasteable = copyable.filter(cop => ed.Components.canMove(selected.parent()!, cop).result); added = collection.add( + // @ts-ignore pasteable.map(cop => cop.clone()), addOpts ); @@ -33,4 +37,4 @@ export default { lastSelected.emitUpdate(); } }, -}; +} as CustomCommand;