2019-01-30 07:12:48 +01:00
|
|
|
import parser from './parser';
|
2019-01-30 06:51:30 +01:00
|
|
|
import { MfmForest } from './types';
|
2019-01-30 05:47:58 +01:00
|
|
|
import { normalize } from './normalize';
|
2018-11-20 21:11:00 +01:00
|
|
|
|
2018-12-20 11:41:04 +01:00
|
|
|
export default (source: string, plainText = false): MfmForest => {
|
|
|
|
if (source == null || source == '') {
|
|
|
|
return null;
|
|
|
|
}
|
2018-11-20 21:11:00 +01:00
|
|
|
|
2019-01-30 07:12:48 +01:00
|
|
|
const raw = plainText ? parser.plain.tryParse(source) : parser.root.tryParse(source) as MfmForest;
|
2019-01-30 05:47:58 +01:00
|
|
|
return normalize(raw);
|
2018-11-20 21:11:00 +01:00
|
|
|
};
|