mirror of
https://github.com/Litlyx/litlyx
synced 2025-12-10 07:48:37 +01:00
new selfhosted version
This commit is contained in:
@@ -1,49 +1,50 @@
|
||||
<script lang="ts" setup>
|
||||
|
||||
definePageMeta({ layout: 'dashboard' });
|
||||
import { Tabs, TabsContent, TabsList, TabsTrigger } from '@/components/ui/tabs'
|
||||
|
||||
const selfhosted = useSelfhosted();
|
||||
definePageMeta({ layout: 'sidebar' });
|
||||
|
||||
const items = [
|
||||
{ label: 'General', slot: 'general', tab: 'general' },
|
||||
{ label: 'Domains', slot: 'domains', tab: 'domains' },
|
||||
{ label: 'Billing', slot: 'billing', tab: 'billing' },
|
||||
{ label: 'Codes', slot: 'codes', tab: 'codes' },
|
||||
{ label: 'Account', slot: 'account', tab: 'account' }
|
||||
]
|
||||
const route = useRoute();
|
||||
const router = useRouter();
|
||||
|
||||
const activeTab = ref<string>(route.query.tab?.toString() ?? 'general');
|
||||
router.push({ query: { tab: activeTab.value } });
|
||||
|
||||
watch(activeTab, () => {
|
||||
router.push({ query: { tab: activeTab.value } });
|
||||
})
|
||||
|
||||
const projectStore = useProjectStore();
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="lg:px-10 h-full lg:py-8 overflow-hidden hide-scrollbars">
|
||||
<Unauthorized v-if="!projectStore.isOwner" authorization="Guest user limitation Workspace Settings">
|
||||
</Unauthorized>
|
||||
<div v-else class="poppins">
|
||||
<PageHeader title="Settings"
|
||||
description="Manage domains, preferences and controls to customize this workspace." />
|
||||
|
||||
<Tabs v-model="activeTab" class="w-full mt-4">
|
||||
|
||||
<div class="poppins font-semibold text-[1.3rem] lg:px-0 px-4 lg:py-0 py-4"> Settings </div>
|
||||
<TabsList class="w-full mb-4">
|
||||
<TabsTrigger value="general">
|
||||
General
|
||||
</TabsTrigger>
|
||||
<TabsTrigger value="domains">
|
||||
Domains
|
||||
</TabsTrigger>
|
||||
</TabsList>
|
||||
|
||||
<CustomTab :items="items" :route="true" class="mt-8">
|
||||
<template #general>
|
||||
<SettingsGeneral :key="refreshKey"></SettingsGeneral>
|
||||
</template>
|
||||
<template #domains>
|
||||
<SettingsData :key="refreshKey"></SettingsData>
|
||||
</template>
|
||||
<template #billing>
|
||||
<SettingsBilling v-if="!selfhosted" :key="refreshKey"></SettingsBilling>
|
||||
<div class="flex popping text-[1.2rem] font-semibold justify-center mt-[20vh] text-lyx-lightmode-text dark:text-lyx-text"
|
||||
v-if="selfhosted">
|
||||
Billing disabled in self-host mode
|
||||
</div>
|
||||
</template>
|
||||
<template #codes>
|
||||
<SettingsCodes v-if="!selfhosted" :key="refreshKey"></SettingsCodes>
|
||||
<div class="flex popping text-[1.2rem] font-semibold justify-center mt-[20vh] text-lyx-lightmode-text dark:text-lyx-text"
|
||||
v-if="selfhosted">
|
||||
Codes disabled in self-host mode
|
||||
</div>
|
||||
</template>
|
||||
<template #account>
|
||||
<SettingsAccount :key="refreshKey"></SettingsAccount>
|
||||
</template>
|
||||
</CustomTab>
|
||||
<TabsContent value="general">
|
||||
<LazySettingsGeneral></LazySettingsGeneral>
|
||||
</TabsContent>
|
||||
|
||||
<TabsContent value="domains">
|
||||
<LazySettingsDomains></LazySettingsDomains>
|
||||
</TabsContent>
|
||||
|
||||
</Tabs>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
Reference in New Issue
Block a user