Show agency creatives board when a client is selected in Contexto.

Creatividades Ads was always rendering the client approval UI, so agency never saw Pedir relevo / kanban on that route.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
4Ventures
2026-10-13 16:37:51 +02:00
parent 2b57b93220
commit f80292cc1b

View File

@@ -2,7 +2,10 @@ import React from 'react';
import { createClient } from '@/lib/supabase/server'; import { createClient } from '@/lib/supabase/server';
import { redirect } from 'next/navigation'; import { redirect } from 'next/navigation';
import { resolveActiveTenant } from '@/lib/tenant-context'; import { resolveActiveTenant } from '@/lib/tenant-context';
import { isAgencyRole, userRole } from '@/lib/agency';
import ClientCreativesView from '@/components/ClientCreativesView'; import ClientCreativesView from '@/components/ClientCreativesView';
import AgencyCreativesView from '@/components/AgencyCreativesView';
import { EmptyState, PageHeader } from '@/components/ui';
export const dynamic = 'force-dynamic'; export const dynamic = 'force-dynamic';
@@ -15,6 +18,33 @@ export default async function CreatividadesPage() {
if (!user) redirect('/login'); if (!user) redirect('/login');
const ctx = await resolveActiveTenant(user); const ctx = await resolveActiveTenant(user);
const agency = isAgencyRole(userRole(user));
// Agencia en vista global: hay que elegir cliente para pedir relevos / kanban
if (agency && ctx.portfolioWide) {
return (
<div className="space-y-6">
<PageHeader
eyebrow="Meta Ads & Creatividades"
title="Creatividades Ads"
description="Kanban, brief y peticiones a Claude por cliente."
/>
<EmptyState
title="Elige un cliente"
description="Estás en Vista global agencia. Selecciona un tenant en Contexto para ver el panel de producción (Pedir relevo a Claude, Estilo/Brief, Cola)."
/>
</div>
);
}
if (agency && ctx.tenantId) {
return (
<AgencyCreativesView
tenantId={ctx.tenantId}
clientName={ctx.label || 'Cliente'}
/>
);
}
return <ClientCreativesView tenantName={ctx.label || 'Cliente'} />; return <ClientCreativesView tenantName={ctx.label || 'Cliente'} />;
} }