From 2ef8f2f93c51c2174bd77589fdab6b3a1d36c3e5 Mon Sep 17 00:00:00 2001 From: Aden Lindsay <140392385+AdenMGB@users.noreply.github.com> Date: Sun, 2 Feb 2025 10:20:26 +1030 Subject: [PATCH] feat(api): Added API for fetching news articles --- server/api/v1/news/index.get.ts | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 server/api/v1/news/index.get.ts diff --git a/server/api/v1/news/index.get.ts b/server/api/v1/news/index.get.ts new file mode 100644 index 0000000..3bc4108 --- /dev/null +++ b/server/api/v1/news/index.get.ts @@ -0,0 +1,17 @@ +import { defineEventHandler, getQuery } from "h3"; +import newsManager from "~/server/internal/news"; + +export default defineEventHandler(async (event) => { + const query = getQuery(event); + + const options = { + take: query.limit ? parseInt(query.limit as string) : undefined, + skip: query.skip ? parseInt(query.skip as string) : undefined, + orderBy: query.order as 'asc' | 'desc', + tags: query.tags ? (query.tags as string).split(',') : undefined, + search: query.search as string, + }; + + const news = await newsManager.getAll(options); + return news; +});