// Visual mockups using divs + icons — no images
const { Cross, Globe, Users, LayoutDashboard, BarChart, Calendar, Mic,
Check, QrCode, Play, BookOpen, DollarSign, TrendingUp, FileText, Award } = window.Icons;
// Browser frame for desktop mockups
const BrowserFrame = ({ children, title = 'app.ecclesiahub.com' }) => (
);
// Phone frame for mobile mockups
const PhoneFrame = ({ children }) => (
);
// Hero — Admin Dashboard mockup
const DashboardMockup = ({ t }) => (
{/* Sidebar */}
{[
{ icon: LayoutDashboard, label: 'Dashboard', active: true },
{ icon: Users, label: 'Membros' },
{ icon: DollarSign, label: 'Tesouraria' },
{ icon: Calendar, label: 'Agenda' },
{ icon: Mic, label: 'Sermões' },
{ icon: BookOpen, label: 'Cursos' }
].map((item, i) => (
{item.label}
))}
{/* Main */}
{t.mockup.dashboard}
Visão geral · Outubro 2026
{/* Stats row */}
{[
{ label: t.mockup.members, value: '420', delta: '+12', color: 'blue' },
{ label: t.mockup.revenue, value: 'R$ 28k', delta: '+18%', color: 'emerald' },
{ label: t.mockup.attendance, value: '87%', delta: '+4%', color: 'amber' }
].map((s, i) => (
{s.label}
{s.value}
{s.delta}
))}
{/* Chart */}
{t.mockup.revenue}
6 meses
{[42, 58, 51, 72, 68, 85].map((h, i) => (
))}
{/* Members list */}
Novos membros
{[
{ n: 'Ana Lima', t: 'Hoje' },
{ n: 'JoĂŁo Silva', t: 'Ontem' },
{ n: 'Maria Costa', t: '2 dias' }
].map((m, i) => (
))}
);
// Hero — Phone Member Portal mockup
const PhoneMockup = ({ t }) => (
{/* Check-in card */}
{t.mockup.checkin}
Culto · 19h30
{/* Courses */}
{t.mockup.courses}
{[
{ name: 'Discipulado I', prog: 75, color: 'bg-blue-500' },
{ name: 'Liderança', prog: 40, color: 'bg-amber-500' }
].map((c, i) => (
))}
{/* Bottom nav */}
{[LayoutDashboard, Calendar, BookOpen, Users].map((I, i) => (
))}
);
// Showcase 1 — Financial
const FinancialMockup = ({ t }) => (
{[
{ l: 'Entradas', v: 'R$ 32.450', c: 'emerald' },
{ l: 'SaĂdas', v: 'R$ 18.200', c: 'rose' },
{ l: 'Saldo', v: 'R$ 14.250', c: 'blue' }
].map((s, i) => (
))}
{/* Chart */}
Receita mensal
{[45, 62, 55, 78, 70, 88, 82, 95].map((h, i) => (
))}
{/* Recent txns */}
Lançamentos recentes
{[
{ d: '24/10', desc: 'DĂzimos · Culto Domingo', v: '+ R$ 4.250', c: 'emerald' },
{ d: '23/10', desc: 'Conta de luz', v: '- R$ 680', c: 'rose' },
{ d: '22/10', desc: 'Oferta especial', v: '+ R$ 1.890', c: 'emerald' }
].map((tx, i) => (
))}
);
// Showcase 2 — Check-in
const CheckinMockup = ({ t }) => (
{t.mockup.checkin}
Domingo, 19h30 · 87 presentes
{[1,1,0,1,0,1,0,1,1].map((b,i) => (
))}
Presentes
87
+ 12 vs semana passada
Total membros
100
87% de presença
Membros
{[
{ n: 'Ana Beatriz Lima', cell: 'Célula Vida', here: true },
{ n: 'Carlos Eduardo', cell: 'Célula Fé', here: true },
{ n: 'Daniela Souza', cell: 'Célula Vida', here: false },
{ n: 'Eduardo Martins', cell: 'Célula Esperança', here: true }
].map((m, i) => (
))}
);
// Showcase 3 — EAD
const EADMockup = ({ t }) => (
Curso · Discipulado I
Fundamentos da FĂ© CristĂŁ
{/* Video player */}
{/* Progress */}
{/* Modules */}
{[
{ n: '1. Quem Ă© Jesus?', done: true },
{ n: '2. A obra da Cruz', done: true },
{ n: '3. Vida em ComunhĂŁo', done: false, current: true },
{ n: '4. O EspĂrito Santo', done: false }
].map((m, i) => (
{m.done ? : {i+1}}
{m.n}
{m.done &&
âś“ {t.mockup.complete}
}
))}
);
window.Mockups = { BrowserFrame, PhoneFrame, DashboardMockup, PhoneMockup, FinancialMockup, CheckinMockup, EADMockup };