ngx-editor
Version:
The Rich Text Editor for Angular, Built on ProseMirror
16 lines • 2.12 kB
JavaScript
export const getSelectionMarks = (state) => {
let marks = [];
const { selection, storedMarks } = state;
const { from, to, empty, $from } = selection;
if (empty) {
marks = storedMarks || $from.marks();
}
else {
state.doc.nodesBetween(from, to, (node) => {
marks = [...marks, ...node.marks];
});
}
return marks;
};
export default getSelectionMarks;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0U2VsZWN0aW9uTWFya3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWRpdG9yL2hlbHBlcnMvZ2V0U2VsZWN0aW9uTWFya3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxLQUFrQixFQUFtQixFQUFFO0lBQ3ZFLElBQUksS0FBSyxHQUFvQixFQUFFLENBQUM7SUFFaEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFDekMsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxHQUFHLFNBQVMsQ0FBQztJQUU3QyxJQUFJLEtBQUssRUFBRTtRQUNULEtBQUssR0FBRyxXQUFXLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO0tBQ3RDO1NBQU07UUFDTCxLQUFLLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDeEMsS0FBSyxHQUFHLENBQUMsR0FBRyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEMsQ0FBQyxDQUFDLENBQUM7S0FDSjtJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQyxDQUFDO0FBRUYsZUFBZSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVkaXRvclN0YXRlIH0gZnJvbSAncHJvc2VtaXJyb3Itc3RhdGUnO1xuaW1wb3J0IHsgTWFyayB9IGZyb20gJ3Byb3NlbWlycm9yLW1vZGVsJztcblxuZXhwb3J0IGNvbnN0IGdldFNlbGVjdGlvbk1hcmtzID0gKHN0YXRlOiBFZGl0b3JTdGF0ZSk6IHJlYWRvbmx5IE1hcmtbXSA9PiB7XG4gIGxldCBtYXJrczogcmVhZG9ubHkgTWFya1tdID0gW107XG5cbiAgY29uc3QgeyBzZWxlY3Rpb24sIHN0b3JlZE1hcmtzIH0gPSBzdGF0ZTtcbiAgY29uc3QgeyBmcm9tLCB0bywgZW1wdHksICRmcm9tIH0gPSBzZWxlY3Rpb247XG5cbiAgaWYgKGVtcHR5KSB7XG4gICAgbWFya3MgPSBzdG9yZWRNYXJrcyB8fCAkZnJvbS5tYXJrcygpO1xuICB9IGVsc2Uge1xuICAgIHN0YXRlLmRvYy5ub2Rlc0JldHdlZW4oZnJvbSwgdG8sIChub2RlKSA9PiB7XG4gICAgICBtYXJrcyA9IFsuLi5tYXJrcywgLi4ubm9kZS5tYXJrc107XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gbWFya3M7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBnZXRTZWxlY3Rpb25NYXJrcztcbiJdfQ==