teqo-backup/src/components/campaign/PlazaMapPanelDynamic.tsx
Francisco Ignácio Fontoura Solla cf13c441aa Remodel /campanha around predefined Praças replacing electoral nuclei.
436 seeded Praças (municipality-based; per-TSE-zone in Salvador/Camaçari) become
the operational unit; roles renamed to coordinator/advisor/leader with advisors
scoped to administered Praças. Leadership is one record per person across many
Praças/organizations; vote pledges split leader-declared vs staff-estimated
(estimates never serialized to leaders). Adds organizations, demand workflow
with staff-only cost/receipts, action-plan results with deputy presence, manual
political trend, multi-candidate comparison and the diverging red/white/blue
map mode. Migration 20260721_020109_remodel_plazas deliberately resets the
campaign vertical in production (public site untouched); test suite ported to
the new model (unit 187 / int 306 / e2e 9 green).
2026-07-21 02:28:00 -03:00

27 lines
734 B
TypeScript

'use client'
import dynamic from 'next/dynamic'
import type { FederalCandidateOption } from '@/utilities/electionCandidateOptions'
import type { PlazaMapBundle } from '@/utilities/plazaMapData'
const PlazaMapPanelLazy = dynamic(
() => import('@/components/campaign/PlazaMapPanel').then((module) => module.PlazaMapPanel),
{
ssr: false,
loading: () => (
<div
aria-hidden="true"
className="h-[420px] w-full animate-pulse rounded-xl border bg-muted/40"
/>
),
},
)
export const PlazaMapPanelDynamic = ({
bundle,
candidateOptions,
}: {
bundle: PlazaMapBundle
candidateOptions: FederalCandidateOption[]
}) => <PlazaMapPanelLazy bundle={bundle} candidateOptions={candidateOptions} />