diff options
Diffstat (limited to 'vhosts/blog/nuldoc-src/ndoc/parse.ts')
| -rw-r--r-- | vhosts/blog/nuldoc-src/ndoc/parse.ts | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/vhosts/blog/nuldoc-src/ndoc/parse.ts b/vhosts/blog/nuldoc-src/ndoc/parse.ts deleted file mode 100644 index 4bb96f4d..00000000 --- a/vhosts/blog/nuldoc-src/ndoc/parse.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { parse as parseToml } from "@std/toml"; -import { Config } from "../config.ts"; -import { parseXmlString } from "../xml.ts"; -import { - createNewDocumentFromRootElement, - Document, - PostMetadata, - PostMetadataSchema, -} from "./document.ts"; -import toHtml from "./to_html.ts"; - -export async function parseNulDocFile( - filePath: string, - config: Config, -): Promise<Document> { - try { - const fileContent = await Deno.readTextFile(filePath); - const parts = fileContent.split(/^---$/m); - const meta = parseMetadata(parts[1]); - const root = parseXmlString("<?xml ?>" + parts[2]); - const doc = createNewDocumentFromRootElement(root, meta, filePath, config); - return await toHtml(doc); - } catch (e) { - if (e instanceof Error) { - e.message = `${e.message} in ${filePath}`; - } - throw e; - } -} - -function parseMetadata(s: string): PostMetadata { - return PostMetadataSchema.parse(parseToml(s)); -} |
