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