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).

25 lines (22 loc) 756 B
import { $$ } from '../dom' import AuthorModal from './AuthorModal' import ItemCommand from './ItemCommand' export default class InsertAuthorCommand extends ItemCommand { getType () { return 'author' } execute (params, context) { const { commandState } = params 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 // turn affiliations into ids data.affiliations = data.affiliations.map(a => a.id) context.api.insertAuthor(data, commandState.node) }) } }