diff --git a/apps/studio/components/interfaces/Auth/RLSTester/RLSTesterSheet.tsx b/apps/studio/components/interfaces/Auth/RLSTester/RLSTesterSheet.tsx index cf9a96e6769..81b64d27ec9 100644 --- a/apps/studio/components/interfaces/Auth/RLSTester/RLSTesterSheet.tsx +++ b/apps/studio/components/interfaces/Auth/RLSTester/RLSTesterSheet.tsx @@ -8,6 +8,7 @@ import { SelectTrigger, SelectValue, } from '@ui/components/shadcn/ui/select' +import { LOCAL_STORAGE_KEYS } from 'common' import { Code } from 'lucide-react' import { useEffect, useState } from 'react' import { @@ -32,6 +33,7 @@ import { RoleSelector } from './RoleSelector' import { UserSelector } from './UserSelector' import { useTestQueryRLS } from './useTestQueryRLS' import { CodeEditor } from '@/components/ui/CodeEditor/CodeEditor' +import { FeaturePreviewBadge } from '@/components/ui/FeaturePreviewBadge' import { useRoleImpersonationStateSnapshot } from '@/state/role-impersonation-state' interface RLSTesterSheetProps { @@ -87,7 +89,10 @@ export const RLSTesterSheet = ({ handleSelectEditPolicy }: RLSTesterSheetProps) - What data can my users see? + + What data can my users see? + + See what data a user is allowed to read based on your RLS policies diff --git a/apps/studio/components/interfaces/Platform/Webhooks/PlatformWebhooksHeader.tsx b/apps/studio/components/interfaces/Platform/Webhooks/PlatformWebhooksHeader.tsx index 6af68fbd45d..24306c1ef42 100644 --- a/apps/studio/components/interfaces/Platform/Webhooks/PlatformWebhooksHeader.tsx +++ b/apps/studio/components/interfaces/Platform/Webhooks/PlatformWebhooksHeader.tsx @@ -62,7 +62,7 @@ export const PlatformWebhooksHeader = ({ - + {headerTitle} {hasSelectedEndpoint && endpointStatus && ( { - + Temporary access diff --git a/apps/studio/components/interfaces/UnifiedLogs/UnifiedLogs.tsx b/apps/studio/components/interfaces/UnifiedLogs/UnifiedLogs.tsx index ebcce0e9a5f..4bcacd95016 100644 --- a/apps/studio/components/interfaces/UnifiedLogs/UnifiedLogs.tsx +++ b/apps/studio/components/interfaces/UnifiedLogs/UnifiedLogs.tsx @@ -409,7 +409,7 @@ export const UnifiedLogs = () => {
-
+
diff --git a/apps/studio/components/layouts/AdvisorsLayout/AdvisorRulesLayout.tsx b/apps/studio/components/layouts/AdvisorsLayout/AdvisorRulesLayout.tsx index 288b7e86524..a1132003e60 100644 --- a/apps/studio/components/layouts/AdvisorsLayout/AdvisorRulesLayout.tsx +++ b/apps/studio/components/layouts/AdvisorsLayout/AdvisorRulesLayout.tsx @@ -15,7 +15,7 @@ export const AdvisorRulesLayout = ({ children }: PropsWithChildren<{}>) => { + Advisor Settings {isAdvisorRulesEnabled && ( diff --git a/apps/studio/components/layouts/AdvisorsLayout/AdvisorsMenu.utils.tsx b/apps/studio/components/layouts/AdvisorsLayout/AdvisorsMenu.utils.tsx index 3e968a14780..d99e24ff76b 100644 --- a/apps/studio/components/layouts/AdvisorsLayout/AdvisorsMenu.utils.tsx +++ b/apps/studio/components/layouts/AdvisorsLayout/AdvisorsMenu.utils.tsx @@ -1,11 +1,13 @@ +import { useParams } from 'common' import { ArrowUpRight } from 'lucide-react' +import { useIsAdvisorRulesEnabled } from '@/components/interfaces/App/FeaturePreview/FeaturePreviewContext' import type { ProductMenuGroup } from '@/components/ui/ProductMenu/ProductMenu.types' -import type { Project } from '@/data/projects/project-detail-query' import { IS_PLATFORM } from '@/lib/constants' -export const generateAdvisorsMenu = (project?: Project): ProductMenuGroup[] => { - const ref = project?.ref ?? 'default' +export const useGenerateAdvisorsMenu = (): ProductMenuGroup[] => { + const { ref } = useParams() + const isAdvisorRulesEnabled = useIsAdvisorRulesEnabled() return [ { @@ -32,7 +34,7 @@ export const generateAdvisorsMenu = (project?: Project): ProductMenuGroup[] => { }, ], }, - ...(IS_PLATFORM + ...(IS_PLATFORM && isAdvisorRulesEnabled ? [ { title: 'Configuration', diff --git a/apps/studio/components/layouts/AdvisorsLayout/AdvisorsSidebarMenu.tsx b/apps/studio/components/layouts/AdvisorsLayout/AdvisorsSidebarMenu.tsx index 0d735950391..e5334a9f415 100644 --- a/apps/studio/components/layouts/AdvisorsLayout/AdvisorsSidebarMenu.tsx +++ b/apps/studio/components/layouts/AdvisorsLayout/AdvisorsSidebarMenu.tsx @@ -1,10 +1,9 @@ import { Badge, Button } from 'ui' import { FeaturePreviewSidebarPanel } from '../../ui/FeaturePreviewSidebarPanel' -import { generateAdvisorsMenu } from './AdvisorsMenu.utils' +import { useGenerateAdvisorsMenu } from './AdvisorsMenu.utils' import { SIDEBAR_KEYS } from '@/components/layouts/ProjectLayout/LayoutSidebar/LayoutSidebarProvider' import { ProductMenu } from '@/components/ui/ProductMenu' -import { useSelectedProjectQuery } from '@/hooks/misc/useSelectedProject' import { useSidebarManagerSnapshot } from '@/state/sidebar-manager-state' interface AdvisorsSidebarMenuProps { @@ -12,7 +11,7 @@ interface AdvisorsSidebarMenuProps { } export function AdvisorsSidebarMenu({ page }: AdvisorsSidebarMenuProps) { - const { data: project } = useSelectedProjectQuery() + const menu = useGenerateAdvisorsMenu() const { toggleSidebar } = useSidebarManagerSnapshot() const handleOpenAdvisor = () => { @@ -33,7 +32,7 @@ export function AdvisorsSidebarMenu({ page }: AdvisorsSidebarMenuProps) { } /> - +
) } diff --git a/apps/studio/components/ui/FeaturePreviewBadge.tsx b/apps/studio/components/ui/FeaturePreviewBadge.tsx index 45a0c454b13..89118121c90 100644 --- a/apps/studio/components/ui/FeaturePreviewBadge.tsx +++ b/apps/studio/components/ui/FeaturePreviewBadge.tsx @@ -15,7 +15,7 @@ export const FeaturePreviewBadge = ({ featureKey, className }: FeaturePreviewBad