2019-01-30 00:04:49 -08:00
|
|
|
import { mfmLanguage } from './language';
|
2019-03-14 05:23:15 -07:00
|
|
|
import { MfmForest } from './prelude';
|
2019-01-29 20:47:58 -08:00
|
|
|
import { normalize } from './normalize';
|
2018-11-20 12:11:00 -08:00
|
|
|
|
2019-04-12 09:43:22 -07:00
|
|
|
export function parse(source: string | null): MfmForest | null {
|
2020-04-03 16:46:54 -07:00
|
|
|
if (source == null || source === '') {
|
2018-12-20 02:41:04 -08:00
|
|
|
return null;
|
|
|
|
}
|
2018-11-20 12:11:00 -08:00
|
|
|
|
2019-01-29 23:56:27 -08:00
|
|
|
return normalize(mfmLanguage.root.tryParse(source));
|
|
|
|
}
|
2019-01-29 22:27:54 -08:00
|
|
|
|
2019-04-12 09:43:22 -07:00
|
|
|
export function parsePlain(source: string | null): MfmForest | null {
|
2020-04-03 16:46:54 -07:00
|
|
|
if (source == null || source === '') {
|
2019-01-29 22:27:54 -08:00
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
2019-01-29 23:56:27 -08:00
|
|
|
return normalize(mfmLanguage.plain.tryParse(source));
|
2019-01-29 22:27:54 -08:00
|
|
|
}
|