Files
supabase/apps/studio/components/interfaces/Database/Backups/DatabaseBackupsNav.tsx
Jordi Enric 3521b9004f clean up old logs feature flags (#33487)
* clean up loki ff

* rm loki ff

* rm logsDetailV2 ff

* rm cloneToNewProject ff
2025-02-14 12:11:05 +01:00

57 lines
1.4 KiB
TypeScript

import { useProjectContext } from 'components/layouts/ProjectLayout/ProjectContext'
import Link from 'next/link'
import React from 'react'
import { Badge, NavMenu, NavMenuItem } from 'ui'
type Props = {
active: 'pitr' | 'scheduled' | 'rtnp'
}
function DatabaseBackupsNav({ active }: Props) {
const { ref, cloud_provider } = useProjectContext()?.project || {}
const navMenuItems = [
{
enabled: true,
id: 'scheduled',
label: 'Scheduled backups',
href: `/project/${ref}/database/backups/scheduled`,
},
{
enabled: true,
id: 'pitr',
label: 'Point in time',
href: `/project/${ref}/database/backups/pitr`,
},
{
enabled: cloud_provider !== 'FLY',
id: 'rtnp',
label: (
<div className="flex items-center gap-1">
Restore to new project{' '}
<Badge size="small" className="!text-[10px] px-1.5 py-0">
New
</Badge>
</div>
),
href: `/project/${ref}/database/backups/restore-to-new-project`,
},
] as const
return (
<NavMenu className="overflow-hidden overflow-x-auto">
{navMenuItems.map(
(item) =>
item.enabled && (
<NavMenuItem key={item.id} active={item.id === active}>
<Link href={item.href}>{item.label}</Link>
</NavMenuItem>
)
)}
</NavMenu>
)
}
export default DatabaseBackupsNav