forked from mirror/misskey
25 lines
432 B
TypeScript
25 lines
432 B
TypeScript
/**
|
|
* Code (block)
|
|
*/
|
|
|
|
import genHtml from '../core/syntax-highlighter';
|
|
|
|
export type TextElementCode = {
|
|
type: 'code';
|
|
content: string;
|
|
code: string;
|
|
html: string;
|
|
};
|
|
|
|
export default function(text: string) {
|
|
const match = text.match(/^```([\s\S]+?)```/);
|
|
if (!match) return null;
|
|
const code = match[0];
|
|
return {
|
|
type: 'code',
|
|
content: code,
|
|
code: match[1],
|
|
html: genHtml(match[1].trim())
|
|
} as TextElementCode;
|
|
}
|