@@ -8,23 +8,20 @@ export type Format = "yaml" | "toml" | "json";
88
99const BOM = "\\ufeff?" ;
1010
11- const YAML_DELIMITER = "= yaml =|---" ;
12- const YAML_HEADER = `(?:---yaml|${ YAML_DELIMITER } )` ;
13- const YAML_FOOTER = `(?:---|${ YAML_DELIMITER } )` ;
11+ const YAML_HEADER = `(?:---yaml|= yaml =|---)` ;
12+ const YAML_FOOTER = `(?:= yaml =|---)` ;
1413
15- const TOML_DELIMITER = "\\+\\+\\+|= toml =" ;
16- const TOML_HEADER = `(?:---toml|${ TOML_DELIMITER } )` ;
17- const TOML_FOOTER = `(?:---|${ TOML_DELIMITER } )` ;
14+ const TOML_HEADER = `(?:---toml|\\+\\+\\+|= toml =)` ;
15+ const TOML_FOOTER = `(?:---|\\+\\+\\+|= toml =)` ;
1816
19- const JSON_DELIMITER = `= json =` ;
20- const JSON_HEADER = `(?:---json|${ JSON_DELIMITER } )` ;
21- const JSON_FOOTER = `(?:---|${ JSON_DELIMITER } )` ;
17+ const JSON_HEADER = `(?:---json|= json =)` ;
18+ const JSON_FOOTER = `(?:---|= json =)` ;
2219
2320const WHITESPACES = "\\s*" ;
2421const NEWLINE = "\\r?\\n" ;
2522
2623const FRONT_MATTER = "(?<frontMatter>.+?)" ;
27- const BODY = "(?<body>.*) " ;
24+ const BODY = "(?:\\r?\\n(? <body>.+))? " ;
2825
2926export const RECOGNIZE_YAML_REGEXP = new RegExp (
3027 `^${ YAML_HEADER } ${ WHITESPACES } ${ NEWLINE } ` ,
@@ -40,15 +37,15 @@ export const RECOGNIZE_JSON_REGEXP = new RegExp(
4037) ;
4138
4239export const EXTRACT_YAML_REGEXP = new RegExp (
43- `^${ BOM } ${ YAML_HEADER } ${ WHITESPACES } ${ NEWLINE } ${ WHITESPACES } ${ FRONT_MATTER } ${ WHITESPACES } ${ NEWLINE } ${ YAML_FOOTER } ${ WHITESPACES } ${ NEWLINE } ? ${ BODY } $` ,
40+ `^${ BOM } ${ YAML_HEADER } ${ WHITESPACES } ${ NEWLINE } ${ WHITESPACES } (?: ${ FRONT_MATTER } ${ WHITESPACES } ${ NEWLINE } )? ${ YAML_FOOTER } ${ WHITESPACES } ${ BODY } $` ,
4441 "is" ,
4542) ;
4643export const EXTRACT_TOML_REGEXP = new RegExp (
47- `^${ BOM } ${ TOML_HEADER } ${ WHITESPACES } ${ NEWLINE } ${ WHITESPACES } ${ FRONT_MATTER } ${ WHITESPACES } ${ NEWLINE } ${ TOML_FOOTER } ${ WHITESPACES } ${ NEWLINE } ? ${ BODY } $` ,
44+ `^${ BOM } ${ TOML_HEADER } ${ WHITESPACES } ${ NEWLINE } ${ WHITESPACES } (?: ${ FRONT_MATTER } ${ WHITESPACES } ${ NEWLINE } )? ${ TOML_FOOTER } ${ WHITESPACES } ${ BODY } $` ,
4845 "is" ,
4946) ;
5047export const EXTRACT_JSON_REGEXP = new RegExp (
51- `^${ BOM } ${ JSON_HEADER } ${ WHITESPACES } ${ NEWLINE } ${ WHITESPACES } ${ FRONT_MATTER } ${ WHITESPACES } ${ NEWLINE } ${ JSON_FOOTER } ${ WHITESPACES } ${ NEWLINE } ? ${ BODY } $` ,
48+ `^${ BOM } ${ JSON_HEADER } ${ WHITESPACES } ${ NEWLINE } ${ WHITESPACES } (?: ${ FRONT_MATTER } ${ WHITESPACES } ${ NEWLINE } )? ${ JSON_FOOTER } ${ WHITESPACES } ${ BODY } $` ,
5249 "is" ,
5350) ;
5451
0 commit comments