Browse Source

Move ComponentDelete to TS

ts-style-manager
Artur Arseniev 4 years ago
parent
commit
556e59a646
  1. 17
      src/commands/view/CommandAbstract.ts
  2. 8
      src/commands/view/ComponentDelete.ts

17
src/commands/view/CommandAbstract.ts

@ -3,7 +3,18 @@ import { Model } from '../../common';
import Editor from '../../editor';
import EditorModel from '../../editor/model/Editor';
export default class CommandAbstract extends Model {
interface ICommand<O extends AnyObject = any> {
run?: CommandAbstract<O>['run'];
stop?: CommandAbstract<O>['stop'];
}
type AnyObject = Record<string, any>;
export type CustomCommand<O extends AnyObject = any, T extends AnyObject = {}> = ICommand<O> &
T &
ThisType<T & CommandAbstract<O>>;
export default class CommandAbstract<O extends AnyObject = any> extends Model {
config: any;
em: EditorModel;
pfx: string;
@ -131,7 +142,7 @@ export default class CommandAbstract extends Model {
* @param {Object} sender Button sender
* @private
* */
run(em: Editor, sender: any, options: any) {}
run(em: Editor, sender: any, options: O) {}
/**
* Method that stop command
@ -139,5 +150,5 @@ export default class CommandAbstract extends Model {
* @param {Object} sender Button sender
* @private
* */
stop(em: Editor, sender: any, options: any) {}
stop(em: Editor, sender: any, options: O) {}
}

8
src/commands/view/ComponentDelete.js → src/commands/view/ComponentDelete.ts

@ -1,8 +1,10 @@
import { isArray } from 'underscore';
import Component from '../../dom_components/model/Component';
import { CustomCommand } from './CommandAbstract';
export default {
const command: CustomCommand<{ component?: Component }> = {
run(ed, s, opts = {}) {
const toSelect = [];
const toSelect: Component[] = [];
let components = opts.component || ed.getSelectedAll();
components = isArray(components) ? [...components] : [components];
@ -21,3 +23,5 @@ export default {
return components;
},
};
export default command;
Loading…
Cancel
Save