Files
framit/app/app.vue

40 lines
1.1 KiB
Vue
Raw Permalink Normal View History

<template>
2025-11-06 09:24:44 +01:00
<UApp :locale="locales[locale]">
<AppNavbar />
<UMain>
2025-11-11 19:12:21 +01:00
<NuxtPage />
2025-11-06 09:24:44 +01:00
</UMain>
<AppFooter />
</UApp>
</template>
2025-11-06 09:24:44 +01:00
<script setup lang="ts">
import * as locales from '@nuxt/ui/locale';
const { locale } = useI18n();
const lang = computed(() => locales[locale.value].code);
const dir = computed(() => locales[locale.value].dir);
const { urlBase, fediverseCreator } = useRuntimeConfig().public;
const route = useRoute();
const url = computed(() => urlBase.replace(/\/+$/, '') + route.fullPath);
2025-11-06 09:24:44 +01:00
useHead({
htmlAttrs: {
dir,
lang,
},
link: [
{ rel: 'icon', type: 'image/png', sizes: '32x32', href: '/favicon-32x32.png' },
{ rel: 'icon', type: 'image/png', sizes: '16x16', href: '/favicon-16x16.png' },
{ rel: 'apple-touch-icon', sizes: '180x180', href: '/apple-touch-icon.png' },
{ rel: 'manifest', href: '/site.webmanifest' },
],
meta: fediverseCreator !== '' ? [{ name: 'fediverse:creator', content: fediverseCreator + '' }] : [],
});
useSeoMeta({
ogImage: '/leon.png',
twitterImage: '/leon.png',
ogUrl: url,
2025-11-06 09:24:44 +01:00
});
</script>