Home Reference Source

js/controllers/MarkdownControls/MarkdownStrikethroughControl.js

import { MarkdownControlBuilder } from '~/template/MarkdownControl';

const BoldMarker = '~~';

export default MarkdownControlBuilder(
    'Strikethrough',
    's',
    'strikethrough',
    (controller) => {
        if (controller.isLeading(BoldMarker) && controller.isTrailing(BoldMarker)) {
            controller.cutStart(BoldMarker.length);
            controller.cutEnd(BoldMarker.length);
        } else {
            controller.insertAtSelectionStart(BoldMarker);
            controller.insertAtSelectionEnd(BoldMarker);
        }
    }
);