# Commands

You can customize the initial state of the module from the editor initialization, by passing the following Configuration Object

const editor = grapesjs.init({
 commands: {
   // options
 }
})

Once the editor is instantiated you can use its API. Before using these methods you should get the module from the instance

const commands = editor.Commands;

# add

Add new command to the collection

# Parameters

  • id string Command's ID
  • command (Object | Function) Object representing your command, By passing just a function it's intended as a stateless command (just like passing an object with only run method).

# Examples

commands.add('myCommand', {
	run(editor, sender) {
		alert('Hello world!');
	},
	stop(editor, sender) {
	},
});
// As a function
commands.add('myCommand2', editor => { ... });

Returns this

# get

Get command by ID

# Parameters

# Examples

var myCommand = commands.get('myCommand');
myCommand.run();

Returns Object Object representing the command

# extend

Extend the command. The command to extend should be defined as an object

# Parameters

  • id string Command's ID
  • cmd (optional, default {})
  • Object Object with the new command functions

# Examples

commands.extend('old-command', {
 someInnerFunction() {
 // ...
 }
});

Returns this

# has

Check if command exists

# Parameters

Returns Boolean

# getAll

Get an object containing all the commands

Returns Object

# run

Execute the command

# Parameters

# Examples

commands.run('myCommand', { someOption: 1 });

Returns any The return is defined by the command

# stop

Stop the command

# Parameters

# Examples

commands.stop('myCommand', { someOption: 1 });

Returns any The return is defined by the command

# isActive

Check if the command is active. You activate commands with run and disable them with stop. If the command was created without stop method it can't be registered as active

# Parameters

# Examples

const cId = 'some-command';
commands.run(cId);
commands.isActive(cId);
// -> true
commands.stop(cId);
commands.isActive(cId);
// -> false

Returns Boolean

# getActive

Get all active commands

# Examples

console.log(commands.getActive());
// -> { someCommand: itsLastReturn, anotherOne: ... };

Returns Object