UNPKG

@atlaskit/editor-core

Version:

A package contains Atlassian editor core functionality

27 lines 1.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var prosemirror_1 = require("../../prosemirror"); var utils_1 = require("../../utils"); function transformToCodeAction(state, from, to) { var replaceSteps = []; var tr = state.tr; // Traverse through all the nodes within the range and replace them with their plaintext counterpart state.doc.nodesBetween(from, to, function (node, nodePos) { var cur = nodePos; var end = cur + node.nodeSize; if (node.type === state.schema.nodes.mention) { var content = node.attrs.text; replaceSteps.push(new prosemirror_1.ReplaceStep(cur, end, utils_1.createSliceWithContent(content, state), false)); } }); // Step from the end so that we don't have to recalculate the positions for (var i = replaceSteps.length - 1; i >= 0; i--) { tr.step(replaceSteps[i]); } var updatedTo = state.apply(tr).selection.to; var codeMark = state.schema.marks.code.create(); tr.addMark(from, updatedTo, codeMark).setStoredMarks([codeMark]); return tr; } exports.transformToCodeAction = transformToCodeAction; //# sourceMappingURL=transform-to-code.js.map