From cb49569a0228a16db13aa82df22192566a845672 Mon Sep 17 00:00:00 2001 From: Sandra Guerreiro Date: Thu, 29 Jan 2026 11:56:47 +0100 Subject: [PATCH 1/3] feat(layout): fixes ui issues on smaller screens --- src/App.vue | 2 +- src/components/AppHeader.vue | 41 +-- src/components/AppLayout.vue | 23 +- src/components/NavComponent.vue | 324 ------------------ .../__snapshots__/AppHeader.test.ts.snap | 24 +- src/components/nav/BaseNavItem.vue | 102 ++++++ src/components/{ => nav}/HelpComponent.vue | 34 +- src/components/nav/LanguageSelector.vue | 74 ++++ src/components/nav/NavComponent.vue | 145 ++++++++ src/stores/featureFlip.ts | 4 + 10 files changed, 358 insertions(+), 415 deletions(-) delete mode 100644 src/components/NavComponent.vue create mode 100644 src/components/nav/BaseNavItem.vue rename src/components/{ => nav}/HelpComponent.vue (65%) create mode 100644 src/components/nav/LanguageSelector.vue create mode 100644 src/components/nav/NavComponent.vue diff --git a/src/App.vue b/src/App.vue index 92b0cd5..75f6594 100644 --- a/src/App.vue +++ b/src/App.vue @@ -2,7 +2,7 @@ import { computed, onMounted, ref } from 'vue'; import { RouterView } from 'vue-router'; import AppHeader from '@/components/AppHeader.vue'; -import NavComponent from '@/components/NavComponent.vue'; +import NavComponent from '@/components/nav/NavComponent.vue'; import FooterComponent from '@/components/FooterComponent.vue'; import AppLayout from '@/components/AppLayout.vue'; import SmallScreenPage from '@/views/SmallScreenPage.vue'; diff --git a/src/components/AppHeader.vue b/src/components/AppHeader.vue index 453c0a8..5ae67a7 100644 --- a/src/components/AppHeader.vue +++ b/src/components/AppHeader.vue @@ -1,38 +1,31 @@ diff --git a/src/components/AppLayout.vue b/src/components/AppLayout.vue index d1f3b6b..72eb282 100644 --- a/src/components/AppLayout.vue +++ b/src/components/AppLayout.vue @@ -46,38 +46,21 @@ const manageNavBarAnimations = () => { overflow: hidden; margin: 0; - display: grid; - grid-template-rows: 6.5rem auto; - grid-template-areas: - 'header ' - 'main '; - transition: grid-template-rows 0.5s; + display: flex; + flex-direction: column; + gap: 0.05rem; } .header { - grid-area: header; display: flex; } .main { - grid-area: main; width: 100%; height: 100%; overflow: auto; scroll-behavior: smooth; } -@media screen and (min-width: 576px) { - .appLayout { - grid-template-rows: 7rem auto; - grid-gap: 0.05rem; - } -} - -@media screen and (min-width: 768px) { - .appLayout { - grid-template-rows: auto 1fr; - } -} .wl-footer { background-color: var(--neutral-10); diff --git a/src/components/NavComponent.vue b/src/components/NavComponent.vue deleted file mode 100644 index 0591a1c..0000000 --- a/src/components/NavComponent.vue +++ /dev/null @@ -1,324 +0,0 @@ - - - diff --git a/src/components/__tests__/__snapshots__/AppHeader.test.ts.snap b/src/components/__tests__/__snapshots__/AppHeader.test.ts.snap index 701658d..e7aa804 100644 --- a/src/components/__tests__/__snapshots__/AppHeader.test.ts.snap +++ b/src/components/__tests__/__snapshots__/AppHeader.test.ts.snap @@ -1,22 +1,12 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html exports[`AppHeader > renders properly 1`] = ` -
- - - Beta - -
+ replace="false" + to="/" +/> `; diff --git a/src/components/nav/BaseNavItem.vue b/src/components/nav/BaseNavItem.vue new file mode 100644 index 0000000..4e6f94f --- /dev/null +++ b/src/components/nav/BaseNavItem.vue @@ -0,0 +1,102 @@ + + + + + diff --git a/src/components/HelpComponent.vue b/src/components/nav/HelpComponent.vue similarity index 65% rename from src/components/HelpComponent.vue rename to src/components/nav/HelpComponent.vue index 762cdc4..62499fa 100644 --- a/src/components/HelpComponent.vue +++ b/src/components/nav/HelpComponent.vue @@ -5,6 +5,7 @@ import ModalWrapper from '@/components/ModalWrapper.vue'; import HelpComponentContent from '@/components/HelpComponentContent.vue'; import { HELP_USER } from '@/utils/constants'; import { useRoute } from 'vue-router'; +import BaseNavItem from './BaseNavItem.vue'; const route = useRoute(); const openModal = ref(false); @@ -23,11 +24,8 @@ watch(