43 lines
1.5 KiB
Vue
43 lines
1.5 KiB
Vue
<script setup lang="ts">
|
|
import { Head } from '@inertiajs/vue3';
|
|
import AppearanceTabs from '@/components/AppearanceTabs.vue';
|
|
import { Card, CardContent, CardHeader } from '@/components/ui/card';
|
|
import { useLocalization } from '@/composables/useLocalization';
|
|
import AppLayout from '@/layouts/AppLayout.vue';
|
|
import SettingsLayout from '@/layouts/settings/Layout.vue';
|
|
import { edit } from '@/routes/appearance/index';
|
|
import type { BreadcrumbItem } from '@/types';
|
|
import { computed } from 'vue';
|
|
|
|
const { t } = useLocalization();
|
|
const breadcrumbItems = computed<BreadcrumbItem[]>(() => [
|
|
{
|
|
title: t('navigation.appearance'),
|
|
href: edit(),
|
|
},
|
|
]);
|
|
</script>
|
|
|
|
<template>
|
|
<AppLayout :breadcrumbs="breadcrumbItems">
|
|
<Head :title="t('appearance.title')" />
|
|
|
|
<SettingsLayout>
|
|
<Card class="gap-0 overflow-hidden rounded-xl py-0 shadow-none">
|
|
<CardHeader class="gap-stack border-b p-5 sm:p-6">
|
|
<h2 class="text-title">{{ t('appearance.title') }}</h2>
|
|
<p class="text-muted-foreground">
|
|
{{ t('appearance.description') }}
|
|
</p>
|
|
</CardHeader>
|
|
<CardContent class="gap-column grid p-5 sm:p-6">
|
|
<AppearanceTabs />
|
|
<p class="text-caption text-muted-foreground">
|
|
{{ t('appearance.persistenceHint') }}
|
|
</p>
|
|
</CardContent>
|
|
</Card>
|
|
</SettingsLayout>
|
|
</AppLayout>
|
|
</template>
|