summaryrefslogtreecommitdiffhomepage
path: root/vhosts/blog/nuldoc-src/ndoc/parse.ts
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2024-08-15 00:54:18 +0900
committernsfisis <nsfisis@gmail.com>2024-08-15 00:54:18 +0900
commitc75572765f5d2952a2c4f84160502a10497e9ead (patch)
treeb0f52f443f88ad7ddcfb0e99ea9dd3fd691754bf /vhosts/blog/nuldoc-src/ndoc/parse.ts
parentcd7b5dabb73cbb6751bd081e550fd648b0fce9c1 (diff)
downloadnsfisis.dev-c75572765f5d2952a2c4f84160502a10497e9ead.tar.gz
nsfisis.dev-c75572765f5d2952a2c4f84160502a10497e9ead.tar.zst
nsfisis.dev-c75572765f5d2952a2c4f84160502a10497e9ead.zip
refactor(blog/nuldoc): use zod schema
Diffstat (limited to 'vhosts/blog/nuldoc-src/ndoc/parse.ts')
-rw-r--r--vhosts/blog/nuldoc-src/ndoc/parse.ts24
1 files changed, 6 insertions, 18 deletions
diff --git a/vhosts/blog/nuldoc-src/ndoc/parse.ts b/vhosts/blog/nuldoc-src/ndoc/parse.ts
index 857c086c..d1557750 100644
--- a/vhosts/blog/nuldoc-src/ndoc/parse.ts
+++ b/vhosts/blog/nuldoc-src/ndoc/parse.ts
@@ -1,25 +1,13 @@
import { parse as parseToml } from "std/toml/mod.ts";
import { Config } from "../config.ts";
import { parseXmlString } from "../xml.ts";
-import { createNewDocumentFromRootElement, Document } from "./document.ts";
+import {
+ createNewDocumentFromRootElement,
+ Document,
+ PostMetadata,
+ PostMetadataSchema,
+} from "./document.ts";
import toHtml from "./to_html.ts";
-import { z } from "zod/mod.ts";
-
-const PostMetadataSchema = z.object({
- article: z.object({
- uuid: z.string(),
- title: z.string(),
- description: z.string(),
- tags: z.array(z.string()),
- revisions: z.array(z.object({
- date: z.string(),
- remark: z.string(),
- isInternal: z.boolean().optional(),
- })),
- }),
-});
-
-type PostMetadata = z.infer<typeof PostMetadataSchema>;
export async function parseNulDocFile(
filePath: string,