@uiw/react-md-editor
Version:
A markdown editor with preview, implemented with React.js and TypeScript.
40 lines • 1.63 kB
JavaScript
import React from 'react';
import { selectWord, executeCommand } from "../utils/markdownUtils.js";
import { jsx as _jsx } from "react/jsx-runtime";
export var issue = {
name: 'issue',
keyCommand: 'issue',
prefix: '#',
suffix: '',
buttonProps: {
'aria-label': 'Add issue',
title: 'Add issue'
},
icon: /*#__PURE__*/_jsx("svg", {
role: "img",
width: "12",
height: "12",
viewBox: "0 0 448 512",
children: /*#__PURE__*/_jsx("path", {
fill: "currentColor",
d: "M181.3 32.4c17.4 2.9 29.2 19.4 26.3 36.8L197.8 128l95.1 0 11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3s29.2 19.4 26.3 36.8L357.8 128l58.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-68.9 0L325.8 320l58.2 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-68.9 0-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8l9.8-58.7-95.1 0-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8L90.2 384 32 384c-17.7 0-32-14.3-32-32s14.3-32 32-32l68.9 0 21.3-128L64 192c-17.7 0-32-14.3-32-32s14.3-32 32-32l68.9 0 11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3zM187.1 192L165.8 320l95.1 0 21.3-128-95.1 0z"
//Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
})
}),
execute: (state, api) => {
var newSelectionRange = selectWord({
text: state.text,
selection: state.selection,
prefix: state.command.prefix,
suffix: state.command.suffix
});
var state1 = api.setSelectionRange(newSelectionRange);
executeCommand({
api,
selectedText: state1.selectedText,
selection: state.selection,
prefix: state.command.prefix,
suffix: state.command.suffix
});
}
};