UNPKG

ngx-editor

Version:

Rich Text Editor for angular using ProseMirror

20 lines 2.9 kB
// Ref: https://github.com/ProseMirror/prosemirror-commands/blob/master/src/commands.js export const markApplies = (doc, ranges, type) => { for (const range of ranges) { const { $from, $to } = range; let canApply = $from.depth === 0 ? doc.type.allowsMarkType(type) : false; doc.nodesBetween($from.pos, $to.pos, (node) => { if (canApply) { return false; } canApply = node.inlineContent && node.type.allowsMarkType(type); return true; }); if (canApply) { return true; } } return false; }; export default markApplies; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya0FwcGxpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWRpdG9yL2hlbHBlcnMvbWFya0FwcGxpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsdUZBQXVGO0FBRXZGLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQW9CLEVBQUUsTUFBd0IsRUFBRSxJQUFjLEVBQVcsRUFBRTtJQUNyRyxLQUFLLE1BQU0sS0FBSyxJQUFJLE1BQU0sRUFBRTtRQUMxQixNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQztRQUU3QixJQUFJLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUV6RSxHQUFHLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQXFCLEVBQVcsRUFBRTtZQUN0RSxJQUFJLFFBQVEsRUFBRTtnQkFDWixPQUFPLEtBQUssQ0FBQzthQUNkO1lBRUQsUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEUsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksUUFBUSxFQUFFO1lBQ1osT0FBTyxJQUFJLENBQUM7U0FDYjtLQUNGO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUM7QUFFRixlQUFlLFdBQVcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hcmtUeXBlLCBOb2RlIGFzIFBybW9zZW1pcnJvTm9kZSB9IGZyb20gJ3Byb3NlbWlycm9yLW1vZGVsJztcbmltcG9ydCB7IFNlbGVjdGlvblJhbmdlIH0gZnJvbSAncHJvc2VtaXJyb3Itc3RhdGUnO1xuXG4vLyBSZWY6IGh0dHBzOi8vZ2l0aHViLmNvbS9Qcm9zZU1pcnJvci9wcm9zZW1pcnJvci1jb21tYW5kcy9ibG9iL21hc3Rlci9zcmMvY29tbWFuZHMuanNcblxuZXhwb3J0IGNvbnN0IG1hcmtBcHBsaWVzID0gKGRvYzogUHJtb3NlbWlycm9Ob2RlLCByYW5nZXM6IFNlbGVjdGlvblJhbmdlW10sIHR5cGU6IE1hcmtUeXBlKTogYm9vbGVhbiA9PiB7XG4gIGZvciAoY29uc3QgcmFuZ2Ugb2YgcmFuZ2VzKSB7XG4gICAgY29uc3QgeyAkZnJvbSwgJHRvIH0gPSByYW5nZTtcblxuICAgIGxldCBjYW5BcHBseSA9ICRmcm9tLmRlcHRoID09PSAwID8gZG9jLnR5cGUuYWxsb3dzTWFya1R5cGUodHlwZSkgOiBmYWxzZTtcblxuICAgIGRvYy5ub2Rlc0JldHdlZW4oJGZyb20ucG9zLCAkdG8ucG9zLCAobm9kZTogUHJtb3NlbWlycm9Ob2RlKTogYm9vbGVhbiA9PiB7XG4gICAgICBpZiAoY2FuQXBwbHkpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBjYW5BcHBseSA9IG5vZGUuaW5saW5lQ29udGVudCAmJiBub2RlLnR5cGUuYWxsb3dzTWFya1R5cGUodHlwZSk7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9KTtcblxuICAgIGlmIChjYW5BcHBseSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG4gIHJldHVybiBmYWxzZTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IG1hcmtBcHBsaWVzO1xuIl19