summaryrefslogtreecommitdiff
path: root/src/mfm/parse/elements/inline-code.ts
blob: efacd734cb7bc868f062f58cf734c2167c57129b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/**
 * Code (inline)
 */

import genHtml from '../core/syntax-highlighter';

export type TextElementInlineCode = {
	type: 'inline-code';
	content: string;
	code: string;
	html: string;
};

export default function(text: string) {
	const match = text.match(/^`(.+?)`/);
	if (!match) return null;
	if (match[1].includes('´')) return null;
	const code = match[0];
	return {
		type: 'inline-code',
		content: code,
		code: match[1],
		html: genHtml(match[1])
	} as TextElementInlineCode;
}