UNPKG

substance

Version:

Substance is a JavaScript library for web-based content editing. It provides building blocks for realizing custom text editors and web-based publishing system. It is developed to power our online editing platform [Substance](http://substance.io).

24 lines (21 loc) 717 B
import { $$ } from '../dom' import { Command } from '../editor' import AuthorModal from './AuthorModal' export default class AddAuthorCommand extends Command { getCommandState () { return { disabled: false } } execute (params, context) { const editorSession = context.editorSession const document = editorSession.getDocument() context.editorSession.getRootComponent().send('requestModal', () => { return $$(AuthorModal, { mode: 'create', document }) }).then(modal => { if (!modal) return const data = modal.state.data // ATTENTION: we have to map to ids here data.affiliations = data.affiliations.map(a => a.id) context.api.addAuthor(data) }) } }