feat(front) : add shared useModules/useSidebar composables and sidebar types

This commit is contained in:
Matthieu
2026-06-19 15:05:35 +02:00
parent 0ee82c8b62
commit 51de96c797
3 changed files with 64 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
const activeModuleIds = ref<string[]>([])
const loaded = ref(false)
export function useModules() {
async function loadModules(): Promise<void> {
const api = useApi()
const data = await api.get<{ modules: string[] }>('/modules', {}, { toast: false })
activeModuleIds.value = data.modules ?? []
loaded.value = true
}
function isModuleActive(id: string): boolean {
return activeModuleIds.value.includes(id)
}
function resetModules(): void {
activeModuleIds.value = []
loaded.value = false
}
return { activeModuleIds, loaded, loadModules, isModuleActive, resetModules }
}