refactor: using api routes for crud ops

This commit is contained in:
2026-02-17 04:35:23 +05:30
parent 74c47a7ff6
commit d39f0cc89d
3 changed files with 10 additions and 17 deletions

View File

@@ -6,25 +6,25 @@ interface Todo {
export const useTodoActions = () => {
const fetchTodos = () =>
$fetch<{ limit: number; todos: Array<Todo>; total: number }>("/api/todo", {
$fetch<{ limit: number; todos: Array<Todo>; total: number }>("/todos", {
method: "POST",
body: { action: "get" },
});
const createTodo = (title: string) =>
$fetch("/api/todo", {
$fetch("/todos", {
method: "POST",
body: { action: "create", data: { title } },
});
const deleteTodo = (id: number) =>
$fetch("/api/todo", {
$fetch("/todos", {
method: "POST",
body: { action: "delete", data: { id } },
});
const toggleTodo = (todo: any) =>
$fetch("/api/todo", {
$fetch("/todos", {
method: "POST",
body: { action: "toggle", data: todo },
});

View File

@@ -1,7 +0,0 @@
import { getApi } from "../utils/bknd";
export default defineEventHandler(async (event) => {
const api = await getApi({ verify: true, headers: event.headers });
const user = api.getUser();
return { user };
});

View File

@@ -1,10 +1,9 @@
import { getApi } from "../utils/bknd";
export default defineEventHandler(async (event) => {
const body = await readBody(event);
const { action, data } = body;
const api = await getApi({});
const { data, action } = body;
const api = await getApi({});
switch (action) {
case 'get':
const limit = 5;
@@ -21,6 +20,7 @@ export default defineEventHandler(async (event) => {
return await api.data.updateOne("todos", data.id, { done: !data.done });
default:
throw createError({ statusCode: 400, statusMessage: "Invalid Action" });
return { path: action };
}
});
});