diff --git a/client/src/App.vue b/client/src/App.vue index 07e24960..916e8ce3 100644 --- a/client/src/App.vue +++ b/client/src/App.vue @@ -14,7 +14,7 @@ import log from "loglevel"; import AppFooter from "@/components/AppFooter.vue"; -import MainNavigationBar from "@/components/MainNavigationBar.vue"; +import MainNavigationBar from "@/components/header/MainNavigationBar.vue"; import { onMounted } from "vue"; log.debug("App created"); diff --git a/client/src/components/MainNavigationBar.vue b/client/src/components/MainNavigationBar.vue deleted file mode 100644 index ec04b020..00000000 --- a/client/src/components/MainNavigationBar.vue +++ /dev/null @@ -1,324 +0,0 @@ - - - - - - - - - - - - - - - - - - {{ $t("general.title") }} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{ $t("cockpit.title") }} - - - - {{ $t("general.learningPath") }} - - - - {{ $t("competences.title") }} - - - - - {{ $t("general.shop") }} - - - {{ $t("mediaLibrary.title") }} - - - - - - - - - - - - - - - - - - - - {{ selectedCourseSessionTitle }} - - - - - - - {{ userStore.getFullName }} - - - - Login - - - - - - - - diff --git a/client/src/components/header/AccountMenuContent.stories.ts b/client/src/components/header/AccountMenuContent.stories.ts new file mode 100644 index 00000000..3cf56686 --- /dev/null +++ b/client/src/components/header/AccountMenuContent.stories.ts @@ -0,0 +1,45 @@ +// @ts-nocheck +import avatar from "../../../.storybook/uk1.patrizia.huggel.jpg"; + +import AccountMenuContent from "@/components/header/AccountMenuContent.vue"; +import type { Meta, StoryObj } from "@storybook/vue3"; + +// More on how to set up stories at: https://storybook.js.org/docs/7.0/vue/writing-stories/introduction +const meta: Meta = { + title: "VBV/Header/AccountMenuContent", + component: AccountMenuContent, + tags: ["autodocs"], + argTypes: { onClosemodal: { action: "closeModal" } }, + parameters: { + viewport: { + defaultViewport: "mobile1", + }, + }, + decorators: [() => ({ template: '' })], +}; + +export default meta; +type Story = StoryObj; + +export const DefaultStory: Story = { + args: { + show: true, + courseSessions: [ + { + id: 1, + title: "Bern 2023 a", + }, + { + id: 2, + title: "Zürich 2023 a", + }, + ], + user: { + first_name: "Vreni", + last_name: "Schmid", + email: "vreni.schmid@example.com", + avatar_url: avatar, + loggedIn: true, + }, + }, +}; diff --git a/client/src/components/header/AccountMenuContent.vue b/client/src/components/header/AccountMenuContent.vue new file mode 100644 index 00000000..0b5f097f --- /dev/null +++ b/client/src/components/header/AccountMenuContent.vue @@ -0,0 +1,61 @@ + + + + + + + + + + + {{ user?.first_name }} {{ user?.last_name }} + {{ user?.email }} + + Profil anzeigen + + + + + + + + {{ cs.title }} + + + + + + {{ $t("mainNavigation.logout") }} + + + diff --git a/client/src/components/header/MainNavigationBar.vue b/client/src/components/header/MainNavigationBar.vue new file mode 100644 index 00000000..be6ab20c --- /dev/null +++ b/client/src/components/header/MainNavigationBar.vue @@ -0,0 +1,253 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ $t("general.title") }} + + + + + + + + {{ $t("cockpit.title") }} + + + + {{ $t("general.learningPath") }} + + + + {{ $t("competences.title") }} + + + + + + + + + + + + + + + + + + + + + + {{ selectedCourseSessionTitle }} + + + + + + + + + + + + {{ userStore.getFullName }} + + + + + + + + + + + Login + + + + + + + + + + diff --git a/client/src/components/MobileMenu.stories.ts b/client/src/components/header/MobileMenu.stories.ts similarity index 93% rename from client/src/components/MobileMenu.stories.ts rename to client/src/components/header/MobileMenu.stories.ts index 0497ebbb..5db34ecc 100644 --- a/client/src/components/MobileMenu.stories.ts +++ b/client/src/components/header/MobileMenu.stories.ts @@ -1,12 +1,12 @@ // @ts-nocheck -import avatar from "../../.storybook/uk1.patrizia.huggel.jpg"; +import avatar from "../../../.storybook/uk1.patrizia.huggel.jpg"; import type { Meta, StoryObj } from "@storybook/vue3"; import MobileMenu from "./MobileMenu.vue"; // More on how to set up stories at: https://storybook.js.org/docs/7.0/vue/writing-stories/introduction const meta: Meta = { - title: "VBV/MobileMenu", + title: "VBV/Header/MobileMenu", component: MobileMenu, tags: ["autodocs"], argTypes: { onClosemodal: { action: "closeModal" } }, diff --git a/client/src/components/MobileMenu.vue b/client/src/components/header/MobileMenu.vue similarity index 96% rename from client/src/components/MobileMenu.vue rename to client/src/components/header/MobileMenu.vue index 8420eb53..fa712aa4 100644 --- a/client/src/components/MobileMenu.vue +++ b/client/src/components/header/MobileMenu.vue @@ -1,6 +1,5 @@