UNPKG

@atlaskit/editor-core

Version:

A package contains Atlassian editor core functionality

37 lines 1.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var prosemirror_1 = require("../../../prosemirror"); var utils_1 = require("../../utils"); exports.pluginKey = new prosemirror_1.PluginKey('placeholderPlugin'); function createPlaceholderDecoration(doc, placeholderText) { var placeholderNode = document.createElement('span'); placeholderNode.className = 'placeholder-decoration'; placeholderNode.setAttribute('data-text', placeholderText); return prosemirror_1.DecorationSet.create(doc, [prosemirror_1.Decoration.widget(1, placeholderNode)]); } exports.createPlaceholderDecoration = createPlaceholderDecoration; function createPlugin(placeholderText) { if (!placeholderText) { return; } return new prosemirror_1.Plugin({ key: exports.pluginKey, props: { decorations: function (editorState) { if (utils_1.isEmpty(editorState.doc) && utils_1.isEmptyParagraph(editorState.doc.firstChild)) { return createPlaceholderDecoration(editorState.doc, placeholderText); } } } }); } exports.createPlugin = createPlugin; var placeholderPlugin = { pmPlugins: function () { return [ { rank: 10000, plugin: function (schema, props) { return createPlugin(props.placeholder); } } ]; } }; exports.default = placeholderPlugin; //# sourceMappingURL=index.js.map