index.tsx30 lines · main
1import { useParams } from 'common'
2
3import { AnalyticsBuckets } from '@/components/interfaces/Storage/AnalyticsBuckets'
4import { BucketsUpgradePlan } from '@/components/interfaces/Storage/BucketsUpgradePlan'
5import { DefaultLayout } from '@/components/layouts/DefaultLayout'
6import { StorageBucketsLayout } from '@/components/layouts/StorageLayout/StorageBucketsLayout'
7import StorageLayout from '@/components/layouts/StorageLayout/StorageLayout'
8import { useIsAnalyticsBucketsEnabled } from '@/data/config/project-storage-config-query'
9import type { NextPageWithLayout } from '@/types'
10
11const StorageAnalyticsPage: NextPageWithLayout = () => {
12 const { ref: projectRef } = useParams()
13 const isAnalyticsBucketsEnabled = useIsAnalyticsBucketsEnabled({ projectRef })
14
15 if (!isAnalyticsBucketsEnabled) {
16 return <BucketsUpgradePlan type="analytics" />
17 } else {
18 return <AnalyticsBuckets />
19 }
20}
21
22StorageAnalyticsPage.getLayout = (page) => (
23 <DefaultLayout>
24 <StorageLayout title="Analytics">
25 <StorageBucketsLayout>{page}</StorageBucketsLayout>
26 </StorageLayout>
27 </DefaultLayout>
28)
29
30export default StorageAnalyticsPage