Files
home/Projects/kompose/docs/app/app.vue

53 lines
910 B
Vue
Raw Normal View History

2025-10-09 00:30:31 +02:00
<script setup lang="ts">
2025-10-10 16:43:21 +02:00
const { seo } = useAppConfig();
const { data: navigation } = await useAsyncData("navigation", () =>
queryCollectionNavigation("docs"),
);
const { data: files } = useLazyAsyncData(
"search",
() => queryCollectionSearchSections("docs"),
{
server: false,
},
);
2025-10-09 00:30:31 +02:00
useHead({
2025-10-10 16:43:21 +02:00
meta: [{ name: "viewport", content: "width=device-width, initial-scale=1" }],
htmlAttrs: {
lang: "en",
},
});
2025-10-09 00:30:31 +02:00
useSeoMeta({
2025-10-10 16:43:21 +02:00
titleTemplate: `%s - ${seo?.siteName}`,
ogSiteName: seo?.siteName,
twitterCard: "summary_large_image",
});
2025-10-09 00:30:31 +02:00
2025-10-10 16:43:21 +02:00
provide("navigation", navigation);
2025-10-09 00:30:31 +02:00
</script>
2025-10-08 17:56:29 +02:00
<template>
2025-10-09 00:30:31 +02:00
<UApp>
<NuxtLoadingIndicator />
<AppHeader />
<UMain>
<NuxtLayout>
<NuxtPage />
</NuxtLayout>
</UMain>
<AppFooter />
<ClientOnly>
<LazyUContentSearch
:files="files"
:navigation="navigation"
/>
</ClientOnly>
</UApp>
2025-10-08 17:56:29 +02:00
</template>