summaryrefslogtreecommitdiff
path: root/src/text/parse/elements/inline-code.ts
blob: 1dd5affa51d4e9987fe12ffd18bda77904a3a6ae (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
/**
 * 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;
	const code = match[0];
	return {
		type: 'inline-code',
		content: code,
		code: code.substr(1, code.length - 2).trim(),
		html: genHtml(code.substr(1, code.length - 2).trim())
	} as TextElementInlineCode;
}