From d2cc2bd091394008fd30cbe3606ff4a35ee829a4 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Mon, 13 Jan 2025 19:48:05 +0900 Subject: refactor(blog/nuldoc): remove unnecessary validation --- vhosts/blog/nuldoc-src/slide/parse.ts | 31 +++++++------------------------ 1 file changed, 7 insertions(+), 24 deletions(-) (limited to 'vhosts/blog/nuldoc-src/slide/parse.ts') diff --git a/vhosts/blog/nuldoc-src/slide/parse.ts b/vhosts/blog/nuldoc-src/slide/parse.ts index 7ba17cb0..170b7484 100644 --- a/vhosts/blog/nuldoc-src/slide/parse.ts +++ b/vhosts/blog/nuldoc-src/slide/parse.ts @@ -1,33 +1,16 @@ import { parse as parseToml } from "std/toml/mod.ts"; -import { Config } from "../config.ts"; -import { createNewSlideFromTomlRootObject, Slide } from "./slide.ts"; -import { z } from "zod/mod.ts"; +import { + createNewSlideFromMetadata, + Slide, + SlideMetadataSchema, +} from "./slide.ts"; -const SlideMetadataSchema = z.object({ - slide: z.object({ - uuid: z.string(), - title: z.string(), - event: z.string(), - talkType: z.string(), - link: z.string(), - tags: z.array(z.string()), - revisions: z.array(z.object({ - date: z.string(), - remark: z.string(), - isInternal: z.boolean().optional(), - })), - }), -}); - -export async function parseSlideFile( - filePath: string, - config: Config, -): Promise { +export async function parseSlideFile(filePath: string): Promise { try { const root = SlideMetadataSchema.parse( parseToml(await Deno.readTextFile(filePath)), ); - return createNewSlideFromTomlRootObject(root, filePath, config); + return createNewSlideFromMetadata(root, filePath); } catch (e) { if (e instanceof Error) { e.message = `${e.message} in ${filePath}`; -- cgit v1.2.3-70-g09d2