import InteractiveInvestmentMap from './interactive-investment-map'; import { useTerritoryGeometry, type TerritoryGeometryContext, } from './use-territory-geometry'; const noPoints: [] = []; export default function TerritoryGeometryPreview({ territoryId, management = false, endpoint: suppliedEndpoint, label = 'Cobertura cartográfica da seleção', }: { territoryId?: string; management?: boolean; endpoint?: string; label?: string; }) { const { context, error } = useTerritoryGeometry( territoryId, suppliedEndpoint ?? (management ? '/management/territory-geometries' : '/api/v1/investment/territory-geometries'), ); if (!territoryId) return null; return ( ); } export function TerritoryGeometryDetails({ context, error, label = 'Cobertura cartográfica da selecção', renderMap = false, showSources = true, }: { context: TerritoryGeometryContext | null; error: string; label?: string; renderMap?: boolean; showSources?: boolean; }) { return (

Território selecionado no cadastro.

{error &&

{error}

} {!context && !error &&

A consultar geometria…

} {context && ( <>

{context.selected_geometry_available ? 'Limite administrativo disponível para este território.' : 'Sem limite administrativo acessível para este território neste perfil.'}

{!context.selected_geometry_available && context.areas.length > 0 && (

O mapa mostra outros limites da hierarquia como contexto. Estes limites não representam o território seleccionado.

)}

{context.context_geometry_count} limites disponíveis na hierarquia consultada. São contexto administrativo, não perímetro nem disponibilidade de investimento. A edição e a atualidade jurídica são informações distintas.

{context.child_coverage?.location_type && (

Subdivisões do nível imediatamente inferior com limite nesta resposta:{' '} {context.child_coverage.represented_count} de{' '} {context.child_coverage.registered_count}{' '} referências acessíveis. As restantes não têm limite apresentado nesta consulta; isso não significa inexistência do território.

)} {context.truncated && (

Consulta limitada a 100 geometrias e 500 subdivisões; cobertura incompleta.

)} {renderMap && context.areas.length > 0 && ( )} {showSources && (
    {context.areas.map((area, index) => (
  • {area.title} ·{' '} {area.selected_territory ? 'Território seleccionado' : area.child_territory ? 'Subdivisão do território seleccionado' : 'Contexto de nível superior'}{' '} · Fonte:{' '} {area.source_reference ?? 'Não indicada'} · Edição: {area.source_date ?? 'Não indicada'}
  • ))}
)} )}
); }