Add task routes, bug fixes
This commit is contained in:
82
src/task/task.route.ts
Normal file
82
src/task/task.route.ts
Normal file
@@ -0,0 +1,82 @@
|
||||
import { FastifyInstance } from "fastify";
|
||||
import { $task } from "./task.schema";
|
||||
import {
|
||||
createTaskHandler,
|
||||
deleteTaskHandler,
|
||||
getTaskHandler,
|
||||
listTaskHandler,
|
||||
updateTaskHandler,
|
||||
} from "./task.controller";
|
||||
|
||||
export async function taskRoutes(fastify: FastifyInstance) {
|
||||
fastify.post(
|
||||
"/",
|
||||
{
|
||||
schema: {
|
||||
body: $task("createTaskInput"),
|
||||
},
|
||||
config: { requiredClaims: ["task:write"] },
|
||||
preHandler: [fastify.authorize],
|
||||
},
|
||||
createTaskHandler
|
||||
);
|
||||
|
||||
fastify.get(
|
||||
"/:taskId",
|
||||
{
|
||||
schema: {
|
||||
params: {
|
||||
type: "object",
|
||||
properties: {
|
||||
taskId: { type: "string" },
|
||||
},
|
||||
},
|
||||
},
|
||||
config: { requiredClaims: ["task:read"] },
|
||||
preHandler: [fastify.authorize],
|
||||
},
|
||||
getTaskHandler
|
||||
);
|
||||
|
||||
fastify.get(
|
||||
"/",
|
||||
{
|
||||
schema: {
|
||||
querystring: $task("pageQueryParams"),
|
||||
},
|
||||
|
||||
config: { requiredClaims: ["task:read"] },
|
||||
preHandler: [fastify.authorize],
|
||||
},
|
||||
listTaskHandler
|
||||
);
|
||||
|
||||
fastify.patch(
|
||||
"/:taskId",
|
||||
{
|
||||
schema: {
|
||||
params: {
|
||||
type: "object",
|
||||
properties: { taskId: { type: "string" } },
|
||||
},
|
||||
body: $task("updateTaskInput"),
|
||||
},
|
||||
},
|
||||
updateTaskHandler
|
||||
);
|
||||
|
||||
fastify.delete(
|
||||
"/:taskId",
|
||||
{
|
||||
schema: {
|
||||
params: {
|
||||
type: "object",
|
||||
properties: { taskId: { type: "string" } },
|
||||
},
|
||||
},
|
||||
config: { requiredClaims: ["task:delete"] },
|
||||
preHandler: [fastify.authorize],
|
||||
},
|
||||
deleteTaskHandler
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user