ngx-editor
Version:
Rich Text Editor for angular using ProseMirror
16 lines • 2.09 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0U2VsZWN0aW9uTWFya3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWRpdG9yL2hlbHBlcnMvZ2V0U2VsZWN0aW9uTWFya3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxLQUFrQixFQUFVLEVBQUU7SUFDOUQsSUFBSSxLQUFLLEdBQVcsRUFBRSxDQUFDO0lBRXZCLE1BQU0sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEdBQUcsS0FBSyxDQUFDO0lBQ3pDLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsR0FBRyxTQUFTLENBQUM7SUFFN0MsSUFBSSxLQUFLLEVBQUU7UUFDVCxLQUFLLEdBQUcsV0FBVyxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztLQUN0QztTQUFNO1FBQ0wsS0FBSyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3hDLEtBQUssR0FBRyxDQUFDLEdBQUcsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0tBQ0o7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLGVBQWUsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFZGl0b3JTdGF0ZSB9IGZyb20gJ3Byb3NlbWlycm9yLXN0YXRlJztcbmltcG9ydCB7IE1hcmsgfSBmcm9tICdwcm9zZW1pcnJvci1tb2RlbCc7XG5cbmV4cG9ydCBjb25zdCBnZXRTZWxlY3Rpb25NYXJrcyA9IChzdGF0ZTogRWRpdG9yU3RhdGUpOiBNYXJrW10gPT4ge1xuICBsZXQgbWFya3M6IE1hcmtbXSA9IFtdO1xuXG4gIGNvbnN0IHsgc2VsZWN0aW9uLCBzdG9yZWRNYXJrcyB9ID0gc3RhdGU7XG4gIGNvbnN0IHsgZnJvbSwgdG8sIGVtcHR5LCAkZnJvbSB9ID0gc2VsZWN0aW9uO1xuXG4gIGlmIChlbXB0eSkge1xuICAgIG1hcmtzID0gc3RvcmVkTWFya3MgfHwgJGZyb20ubWFya3MoKTtcbiAgfSBlbHNlIHtcbiAgICBzdGF0ZS5kb2Mubm9kZXNCZXR3ZWVuKGZyb20sIHRvLCAobm9kZSkgPT4ge1xuICAgICAgbWFya3MgPSBbLi4ubWFya3MsIC4uLm5vZGUubWFya3NdO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIG1hcmtzO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZ2V0U2VsZWN0aW9uTWFya3M7XG4iXX0=