feat(frontend) : add Archives sidebar link for projects

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Matthieu
2026-03-12 18:05:39 +01:00
parent 81d0433653
commit 0c4363d32b

View File

@@ -49,6 +49,13 @@
:collapsed="ui.sidebarCollapsed" :collapsed="ui.sidebarCollapsed"
sub sub
/> />
<SidebarLink
:to="`/projects/${currentProjectId}/archives`"
icon="mdi:archive-outline"
label="Archives"
:collapsed="ui.sidebarCollapsed"
sub
/>
</template> </template>
<SidebarLink <SidebarLink
@@ -84,14 +91,12 @@
</div> </div>
</aside> </aside>
<div class="h-full flex-1 overflow-hidden flex flex-col"> <div class="h-full flex-1 flex flex-col min-h-0">
<AppTopNav :user="auth.user" /> <AppTopNav :user="auth.user" />
<div class="relative flex-1 overflow-hidden bg-white"> <main class="flex-1 overflow-y-auto bg-white px-16 pb-24">
<div aria-hidden="true" class="pointer-events-none absolute inset-x-0 top-0 z-30 h-12 bg-white" /> <div aria-hidden="true" class="pointer-events-none sticky top-0 z-30 h-12 bg-white" />
<main class="h-full overflow-y-auto px-16 pt-12 pb-24"> <slot/>
<slot/> </main>
</main>
</div>
</div> </div>
</div> </div>
@@ -100,7 +105,7 @@
:entry="timerStore.pendingCompleteEntry" :entry="timerStore.pendingCompleteEntry"
:users="refData.users" :users="refData.users"
:projects="refData.projects" :projects="refData.projects"
:types="refData.types" :tags="refData.tags"
@saved="onCompleteSaved" @saved="onCompleteSaved"
/> />
</div> </div>
@@ -109,7 +114,7 @@
<script setup lang="ts"> <script setup lang="ts">
import type { UserData } from '~/services/dto/user-data' import type { UserData } from '~/services/dto/user-data'
import type { Project } from '~/services/dto/project' import type { Project } from '~/services/dto/project'
import type { TaskType } from '~/services/dto/task-type' import type { TaskTag } from '~/services/dto/task-tag'
import { useAppVersion } from '~/composables/useAppVersion' import { useAppVersion } from '~/composables/useAppVersion'
import { extractHydraMembers } from '~/utils/api' import { extractHydraMembers } from '~/utils/api'
@@ -155,7 +160,7 @@ const completeDrawerOpen = ref(false)
const refData = reactive({ const refData = reactive({
users: [] as UserData[], users: [] as UserData[],
projects: [] as Project[], projects: [] as Project[],
types: [] as TaskType[], tags: [] as TaskTag[],
loaded: false, loaded: false,
}) })
@@ -165,11 +170,11 @@ async function loadRefData() {
const [usersData, projectsData, typesData] = await Promise.all([ const [usersData, projectsData, typesData] = await Promise.all([
api.get<any>('/users'), api.get<any>('/users'),
api.get<any>('/projects'), api.get<any>('/projects'),
api.get<any>('/task_types'), api.get<any>('/task_tags'),
]) ])
refData.users = extractHydraMembers(usersData) refData.users = extractHydraMembers(usersData)
refData.projects = extractHydraMembers(projectsData) refData.projects = extractHydraMembers(projectsData)
refData.types = extractHydraMembers(typesData) refData.tags = extractHydraMembers(typesData)
refData.loaded = true refData.loaded = true
} }