From 39c38c737114dc7f946b1895b2a4ba27a5546c60 Mon Sep 17 00:00:00 2001
From: HampusM <hampus@hampusmat.com>
Date: Tue, 6 Jul 2021 13:07:07 +0200
Subject: Migrated frontend to typescript

---
 packages/client/src/views/RepositoryLog.vue | 41 ++++++++++++++++++++---------
 1 file changed, 28 insertions(+), 13 deletions(-)

(limited to 'packages/client/src/views/RepositoryLog.vue')

diff --git a/packages/client/src/views/RepositoryLog.vue b/packages/client/src/views/RepositoryLog.vue
index cda2889..e210dd2 100644
--- a/packages/client/src/views/RepositoryLog.vue
+++ b/packages/client/src/views/RepositoryLog.vue
@@ -48,14 +48,29 @@
 	</div>
 </template>
 
-<script>
-import Loading from "vue-loading-overlay";
-import BaseErrorMessage from "@/components/BaseErrorMessage";
-import { ref } from "vue";
+<script lang="ts">
+import { defineComponent, Ref, ref } from "vue";
 import { format } from "date-fns";
-import fetchData from "@/util/fetch";
+import fetchData from "../util/fetch";
+import { getParam } from "../util/util";
+
+import Loading from "vue-loading-overlay";
+import BaseErrorMessage from "../components/BaseErrorMessage.vue";
+
+type Commit = {
+	id: string,
+	author: {
+		name: string,
+		email: string
+	},
+	message: string,
+	date: number,
+	insertions: number,
+	deletions: number,
+	files_changed: number
+}
 
-export default {
+export default defineComponent({
 	name: "RepositoryLog",
 	components: {
 		Loading,
@@ -67,12 +82,12 @@ export default {
 		};
 	},
 	setup() {
-		const commits = ref(null);
-		const is_loading = ref(true);
-		const fetch_failed = ref(null);
+		const commits: Ref<Commit[] | null> = ref(null);
+		const is_loading: Ref<boolean> = ref(true);
+		const fetch_failed: Ref<string> = ref("");
 
-		const fetchLog = async(repository) => {
-			const log_data = await fetchData(`repos/${repository}/log`, fetch_failed, is_loading, "log");
+		const fetchLog = async(repository: string) => {
+			const log_data: Commit[] = await fetchData(`repos/${repository}/log`, fetch_failed, is_loading, "log");
 			if(log_data) {
 				commits.value = log_data;
 			}
@@ -81,9 +96,9 @@ export default {
 		return { commits, is_loading, fetch_failed, fetchLog };
 	},
 	created() {
-		this.fetchLog(this.$router.currentRoute._rawValue.params.repo);
+		this.fetchLog(getParam(this.$route.params, "repo"));
 	}
-};
+});
 </script>
 
 <style lang="scss" scoped>
-- 
cgit v1.2.3-18-g5258

