UNPKG

@edtr-io/plugin-text

Version:
65 lines (53 loc) 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isValueEmpty = isValueEmpty; exports.createTextPlugin = exports.textState = exports.defaultNode = void 0; var _editor = require("./editor"); var _core = require("@edtr-io/core"); var _slate = require("slate"); var _editorUi = require("@edtr-io/editor-ui"); var defaultNode = 'paragraph'; exports.defaultNode = defaultNode; var textState = _core.StateType.scalar({ document: { nodes: [{ object: 'block', type: defaultNode, nodes: [{ object: 'text', leaves: [{ object: 'leaf', text: '' }] }] }] } }); exports.textState = textState; var createTextPlugin = function createTextPlugin(options) { return { Component: (0, _editor.createTextEditor)(options), state: textState, icon: (0, _editorUi.createIcon)(_editorUi.faParagraph), title: 'Text', description: 'Schreibe Text und Matheformeln und formatiere sie.', onKeyDown: function onKeyDown(e) { if (e.key === 'Backspace' || e.key === 'Delete') { // let editor handle backspace and delete // this will remove the plugin if its empty return true; } return false; }, isEmpty: function isEmpty(state) { return isValueEmpty(_slate.Value.fromJSON(state)); } }; }; exports.createTextPlugin = createTextPlugin; function isValueEmpty(value) { return value.document.text === '' && value.document.nodes.size === 1 && value.document.getTexts().size === 1; } //# sourceMappingURL=index.js.map