+
+ {tabs.map((tab) => (
+
+ ))}
+
+
+
+
+ )
+}
diff --git a/apps/studio/components/interfaces/Workers/WorkersEmptyState.tsx b/apps/studio/components/interfaces/Workers/WorkersEmptyState.tsx
new file mode 100644
index 00000000000..e5b29c52723
--- /dev/null
+++ b/apps/studio/components/interfaces/Workers/WorkersEmptyState.tsx
@@ -0,0 +1,41 @@
+import { PermissionAction } from '@supabase/shared-types/out/constants'
+import { BoxPlus } from 'icons'
+import { Plus } from 'lucide-react'
+import { EmptyStatePresentational } from 'ui-patterns/EmptyStatePresentational'
+
+import { ButtonTooltip } from '@/components/ui/ButtonTooltip'
+import { useAsyncCheckPermissions } from '@/hooks/misc/useCheckPermissions'
+
+interface WorkersEmptyStateProps {
+ onDeploy: () => void
+}
+
+export const WorkersEmptyState = ({ onDeploy }: WorkersEmptyStateProps) => {
+ const { can: canDeployWorkers } = useAsyncCheckPermissions(PermissionAction.FUNCTIONS_WRITE, '*')
+
+ return (
+