ngx-editor
Version:
Rich Text Editor for angular using ProseMirror
19 lines • 2.58 kB
JavaScript
import { canInsert } from 'ngx-editor/helpers';
class HorizontalRule {
insert() {
return (state, dispatch) => {
const { schema, tr } = state;
const type = schema.nodes.horizontal_rule;
if (!type) {
return false;
}
dispatch(tr.replaceSelectionWith(type.create()).scrollIntoView());
return true;
};
}
canExecute(state) {
return canInsert(state, state.schema.nodes.horizontal_rule);
}
}
export default HorizontalRule;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSG9yaXpvbnRhbFJ1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZWRpdG9yL3NyYy9saWIvY29tbWFuZHMvSG9yaXpvbnRhbFJ1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRS9DLE1BQU0sY0FBYztJQUNsQixNQUFNO1FBQ0osT0FBTyxDQUFDLEtBQWtCLEVBQUUsUUFBb0MsRUFBVyxFQUFFO1lBQzNFLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsS0FBSyxDQUFDO1lBRTdCLE1BQU0sSUFBSSxHQUFhLE1BQU0sQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDO1lBRXBELElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ1QsT0FBTyxLQUFLLENBQUM7YUFDZDtZQUVELFFBQVEsQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztZQUNsRSxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFRCxVQUFVLENBQUMsS0FBa0I7UUFDM0IsT0FBTyxTQUFTLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzlELENBQUM7Q0FDRjtBQUVELGVBQWUsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBOb2RlVHlwZSB9IGZyb20gJ3Byb3NlbWlycm9yLW1vZGVsJztcbmltcG9ydCB0eXBlIHsgRWRpdG9yU3RhdGUsIFRyYW5zYWN0aW9uIH0gZnJvbSAncHJvc2VtaXJyb3Itc3RhdGUnO1xuaW1wb3J0IHR5cGUgeyBDb21tYW5kIH0gZnJvbSAncHJvc2VtaXJyb3ItY29tbWFuZHMnO1xuXG5pbXBvcnQgeyBjYW5JbnNlcnQgfSBmcm9tICduZ3gtZWRpdG9yL2hlbHBlcnMnO1xuXG5jbGFzcyBIb3Jpem9udGFsUnVsZSB7XG4gIGluc2VydCgpOiBDb21tYW5kIHtcbiAgICByZXR1cm4gKHN0YXRlOiBFZGl0b3JTdGF0ZSwgZGlzcGF0Y2g/OiAodHI6IFRyYW5zYWN0aW9uKSA9PiB2b2lkKTogYm9vbGVhbiA9PiB7XG4gICAgICBjb25zdCB7IHNjaGVtYSwgdHIgfSA9IHN0YXRlO1xuXG4gICAgICBjb25zdCB0eXBlOiBOb2RlVHlwZSA9IHNjaGVtYS5ub2Rlcy5ob3Jpem9udGFsX3J1bGU7XG5cbiAgICAgIGlmICghdHlwZSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGRpc3BhdGNoKHRyLnJlcGxhY2VTZWxlY3Rpb25XaXRoKHR5cGUuY3JlYXRlKCkpLnNjcm9sbEludG9WaWV3KCkpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfTtcbiAgfVxuXG4gIGNhbkV4ZWN1dGUoc3RhdGU6IEVkaXRvclN0YXRlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGNhbkluc2VydChzdGF0ZSwgc3RhdGUuc2NoZW1hLm5vZGVzLmhvcml6b250YWxfcnVsZSk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgSG9yaXpvbnRhbFJ1bGU7XG4iXX0=