From c63e558f402cfad914031a58fdcf3d8e0f3d125d Mon Sep 17 00:00:00 2001 From: HampusM Date: Sun, 25 Jul 2021 12:32:59 +0200 Subject: Moved backend routes to a dedicated directory --- packages/server/src/api/v1/repo/log.ts | 81 ---------------------------------- 1 file changed, 81 deletions(-) delete mode 100644 packages/server/src/api/v1/repo/log.ts (limited to 'packages/server/src/api/v1/repo/log.ts') diff --git a/packages/server/src/api/v1/repo/log.ts b/packages/server/src/api/v1/repo/log.ts deleted file mode 100644 index 24937ad..0000000 --- a/packages/server/src/api/v1/repo/log.ts +++ /dev/null @@ -1,81 +0,0 @@ -import { FastifyInstance, FastifyPluginOptions } from "fastify"; -import { Commit } from "../../../git/commit"; -import { Patch } from "../../../git/patch"; -import { Route } from "../../../types/fastify"; -import { verifySHA } from "../../util"; -import { LogCommit as APILogCommit, Patch as APIPatch, Commit as APICommit } from "shared_types"; - -async function commitMap(commit: Commit) { - const stats = await commit.stats(); - return { - id: commit.id, - author: { - name: commit.author.name, - email: commit.author.email - }, - message: commit.message, - date: commit.date, - insertions: stats.insertions, - deletions: stats.deletions, - files_changed: stats.files_changed - }; -} - -async function patchMap(patch: Patch, index: number) { - return { - additions: patch.additions, - deletions: patch.deletions, - from: patch.from, - to: patch.to, - too_large: await patch.isTooLarge(index), - hunks: await patch.getHunks(index) - }; -} - -export default function(fastify: FastifyInstance, opts: FastifyPluginOptions, done: (err?: Error) => void): void { - fastify.route({ - method: "GET", - url: "/log", - handler: async(req, reply) => { - const commits = await req.repository.commits(); - - reply.send({ - data: await Promise.all(commits.map(commitMap)) - }); - } - }); - - fastify.route({ - method: "GET", - url: "/log/:commit", - handler: async(req, reply) => { - const commit_verification = await verifySHA(req.repository, req.params.commit); - if(commit_verification.success === false && commit_verification.code) { - reply.code(commit_verification.code).send({ error: commit_verification.message }); - } - - const commit = await Commit.lookup(req.repository, req.params.commit); - - const stats = await commit.stats(); - - const data: APICommit = { - message: commit.message, - author: { - name: commit.author.name, - email: commit.author.email - }, - date: commit.date, - insertions: stats.insertions, - deletions: stats.deletions, - files_changed: stats.files_changed, - diff: await Promise.all((await (await commit.diff()).patches()).map(patchMap)) - }; - - reply.send({ - data: data - }); - } - }); - - done(); -} \ No newline at end of file -- cgit v1.2.3-18-g5258