diff --git a/vue/src/App.vue b/vue/src/App.vue index a273721..536574d 100644 --- a/vue/src/App.vue +++ b/vue/src/App.vue @@ -1,32 +1,7 @@ - - diff --git a/vue/src/layouts/CVLayout.vue b/vue/src/layouts/CVLayout.vue new file mode 100644 index 0000000..67e3894 --- /dev/null +++ b/vue/src/layouts/CVLayout.vue @@ -0,0 +1,17 @@ + + + + + diff --git a/vue/src/layouts/DefaultLayout.vue b/vue/src/layouts/DefaultLayout.vue new file mode 100644 index 0000000..491db42 --- /dev/null +++ b/vue/src/layouts/DefaultLayout.vue @@ -0,0 +1,32 @@ + + + + + diff --git a/vue/src/router/index.js b/vue/src/router/index.js index 0c0e832..74c5ff3 100644 --- a/vue/src/router/index.js +++ b/vue/src/router/index.js @@ -1,4 +1,6 @@ import { createRouter, createWebHistory } from "vue-router"; +import DefaultLayout from "@/layouts/DefaultLayout.vue"; +import CVLayout from "@/layouts/CVLayout.vue"; import Landing from "@/views/Landing.vue"; const router = createRouter({ @@ -6,63 +8,80 @@ const router = createRouter({ routes: [ { path: "/", - name: "landing", - component: Landing, - }, - { - path: "/stp", - name: "home", - component: () => import("@/views/home/Home.vue"), + component: DefaultLayout, + children: [ + { + path: "", + name: "landing", + component: Landing, + }, + { + path: "stp", + name: "home", + component: () => import("@/views/home/Home.vue"), + }, + { + path: "admin", + name: "admin", + component: () => import("@/views/admin/Admin.vue"), + }, + { + path: "bookmarks", + name: "bookmarks", + component: () => import("@/views/Bookmarks.vue"), + }, + { + path: "notes/:path(.*)*", + name: "notes", + component: () => import("@/views/Notes.vue"), + }, + { + path: "shrines", + name: "shrine links", + component: () => import("@/views/Shrines.vue"), + }, + { + path: "shrines/gto", + name: "gto shrine", + component: () => import("@/views/shrines/GTO.vue"), + }, + { + path: "shrines/skipskipbenben", + name: "skipskipbenben shrine", + component: () => import("@/views/shrines/Skipskipbenben.vue"), + }, + { + path: "shrines/evangelion", + name: "evangelion shrine", + component: () => import("@/views/shrines/Evangelion.vue"), + }, + { + path: "shrines/demoman", + name: "demoman shrine", + component: () => import("@/views/shrines/Demoman.vue"), + }, + { + path: ":pathMatch(.*)*", + name: "404", + component: () => import("@/views/404.vue"), + }, + ], }, { path: "/cv", - name: "cv", - component: () => import("../views/CV/CV.vue"), - }, - { - path: "/admin", - name: "admin", - component: () => import("../views/admin/Admin.vue"), - }, - { - path: "/bookmarks", - name: "bookmarks", - component: () => import("../views/Bookmarks.vue"), - }, - { - path: "/notes/:path(.*)*", - name: "notes", - component: () => import("../views/Notes.vue"), - }, - { - path: "/shrines", - name: "shrine links", - component: () => import("../views/Shrines.vue"), - }, - { - path: "/shrines/gto", - name: "gto shrine", - component: () => import("../views/shrines/GTO.vue"), - }, - { - path: "/shrines/skipskipbenben", - name: "skipskipbenben shrine", - component: () => import("../views/shrines/Skipskipbenben.vue"), - }, - { - path: "/shrines/evangelion", - name: "evangelion shrine", - component: () => import("../views/shrines/Evangelion.vue"), - }, - { - path: "/shrines/demoman", - name: "demoman shrine", - component: () => import("../views/shrines/Demoman.vue"), - }, - { - path: "/:pathMatch(.*)*", - name: "404", - component: () => import("../views/404.vue"), + component: CVLayout, + children: [ + { + path: "", + name: "cv", + component: () => import("@/views/CV/CV.vue"), + }, + { + path: "jobs", + name: "job-applications", + component: () => import("@/views/CV/JobApplications.vue"), + }, + ], }, ], }); diff --git a/vue/src/views/CV/CV.vue b/vue/src/views/CV/CV.vue index e37f12b..2d90bb4 100644 --- a/vue/src/views/CV/CV.vue +++ b/vue/src/views/CV/CV.vue @@ -4,7 +4,6 @@ import CVGeneral from "./CVGeneral.vue"; import CVBackend from "./CVBackend.vue"; import CVFrontend from "./CVFrontend.vue"; import CVTemp from "./CVTemp.vue"; -import JobApplications from "./JobApplications.vue"; const CVHospitality = defineAsyncComponent(() => import("./CVHospitality.vue")); @@ -39,7 +38,6 @@ function print() { - diff --git a/vue/src/views/CV/JobApplications.vue b/vue/src/views/CV/JobApplications.vue index 59b270c..7f6a26e 100644 --- a/vue/src/views/CV/JobApplications.vue +++ b/vue/src/views/CV/JobApplications.vue @@ -1,6 +1,6 @@