UNPKG

@silexlabs/grapesjs-symbols

Version:
32 lines 1.3 kB
import SymbolsView from './view/SymbolsView'; import initCommands from './SymbolsCommands'; import { registerCapabilities } from './capabilities'; import initTraits from './view/traits'; import { makeInstanceIdsUnique } from './id-utils'; export default (editor, opts = {}) => { const options = { ...{ appendTo: '#symbols', emptyText: 'No symbol yet.', primaryColor: '#b9a5a6', secondaryColor: '#463a3c', highlightColor: '#d97aa6', }, ...opts }; editor.on('load', () => { // Display symbols new SymbolsView({ ...options, editor }); // Commands to create/delete symbols initCommands(editor); // Add traits like a plugin initTraits(editor, options); // When a symbol instance is created (by any method: drop, duplicate, API, etc.), // update ID references to match the new unique IDs generated by GrapesJS editor.on('symbol:instance:add', ({ component }) => { makeInstanceIdsUnique(editor, component); }); }); // Register AI capabilities if grapesjs-ai-capabilities is loaded editor.on('ai-capabilities:ready', (addCapability) => { registerCapabilities(addCapability); }); }; //# sourceMappingURL=index.js.map