UNPKG

usfm-editor

Version:
39 lines (30 loc) 1.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _NodeTypes = _interopRequireDefault(require("./NodeTypes")); var _UsfmMarkers = require("./UsfmMarkers"); var _slate = require("slate"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function isFormattableBlockType(nodeOrTypeString) { const type = typeString(nodeOrTypeString); return type === _NodeTypes.default.INLINE_CONTAINER || type !== undefined && _UsfmMarkers.UsfmMarkers.isParagraphType(type); } function typeString(nodeOrTypeString) { if (typeof nodeOrTypeString === "string") return nodeOrTypeString; if (_slate.Element.isElement(nodeOrTypeString)) return nodeOrTypeString.type; return undefined; } function canMergeAIntoB(a, b) { const typeA = typeString(a); const typeB = typeString(b); return typeA === _NodeTypes.default.INLINE_CONTAINER && (typeB === _NodeTypes.default.INLINE_CONTAINER || // Inline containers should not be merged into just any paragraph-type marker // (such as section headers) typeB === _UsfmMarkers.UsfmMarkers.PARAGRAPHS.p); } var _default = { isFormattableBlockType, canMergeAIntoB }; exports.default = _default;