seitime-frappe/billing/src/App.vue

40 lines
1 KiB
Vue

<template>
<div v-if="isFCSite.data && user.name" class="flex h-screen w-screen">
<div class="h-full border-r bg-gray-50">
<AppSidebar />
</div>
<div class="flex-1 flex flex-col h-full overflow-x-hidden">
<router-view />
</div>
<Dialogs />
<Toasts />
</div>
<PageNotFound v-else />
</template>
<script setup>
import PageNotFound from './pages/PageNotFound.vue'
import AppSidebar from '@/components/AppSidebar.vue'
import { Dialogs } from '@/dialogs.js'
import { getSession } from '@/session.js'
import { Toasts, createResource } from 'frappe-ui'
import { provide } from 'vue'
const { isFCSite, user } = getSession()
const team = createResource({
url: 'frappe.integrations.frappe_providers.frappecloud_billing.api',
params: { method: 'team.info' },
cache: 'team',
auto: true,
})
const currentSiteInfo = createResource({
url: 'frappe.integrations.frappe_providers.frappecloud_billing.current_site_info',
auto: true,
cache: 'currentSiteInfo',
})
provide('team', team)
provide('currentSiteInfo', currentSiteInfo)
</script>