diff --git a/app/Http/Controllers/FundingProgrammeController.php b/app/Http/Controllers/FundingProgrammeController.php
index 5ddddd25..292ec2ce 100644
--- a/app/Http/Controllers/FundingProgrammeController.php
+++ b/app/Http/Controllers/FundingProgrammeController.php
@@ -155,6 +155,10 @@ final class FundingProgrammeController extends Controller
'sector' => ['nullable', 'integer', Rule::in(Sector::choices()->whereNotNull('published_at')->pluck('id')->all())],
'certainty' => 'nullable|in:include_unknown,documented', 'state' => 'nullable|in:open,closed,upcoming,unknown']);
$filters = array_filter($filters, fn ($value) => $value !== null && $value !== '');
+ // A local search excludes unlocated records unless explicitly requested.
+ if (($filters['location_mode'] ?? '') === 'physical' && ! isset($filters['certainty'])) {
+ $filters['certainty'] = 'documented';
+ }
$dossier = $request->user() && ! empty($filters['context']) ? app(FundingDossierPreparation::class)->context($request->user(), $filters['context'], $filters['opportunity'] ?? null) : null;
$explicitLocation = $request->hasAny(['territory', 'province_id', 'district_id', 'admin_post_id', 'locality_id']);
if ($dossier && ! $explicitLocation && empty($filters['territory']) && $dossier['territory']) {
diff --git a/docs/investmoz/unification/traceability-and-manual.md b/docs/investmoz/unification/traceability-and-manual.md
index 5132f9ad..804efd34 100644
--- a/docs/investmoz/unification/traceability-and-manual.md
+++ b/docs/investmoz/unification/traceability-and-manual.md
@@ -10224,3 +10224,7 @@ A Tempo autorizou expressamente `3558647e`, incluindo menus, mantendo fecho púb
# Instalação exacta das Ofertas — falha antes da promoção e correcção QA, 14/11/2026
O fast-forward autorizado `96f51096 → 3558647e` foi efectuado sem força ou commits posteriores. Janela com path automático pausado, lock exclusivo e chamada única ao executor existente, recusando qualquer outro SHA. Novo backup/restauro isolado 219 tabelas/417 ficheiros aprovado. O executor passou schema isolado 1/3106 e build, mas parou em tipos: colisão Wayfinder entre a acção GET `reportForm` e o formulário gerado para POST `report`. Sem promoção, migrações, alteração operacional ou reversão; homologação servida permanece `96f51096`, 219 tabelas/417 ficheiros reconferidos intactos. Lock libertado, path original restaurado, fila vazia. Correcção mínima em QA: acção GET `reportPage`, mesmo URL e corpo, com geração real/produção/tipos/PHPStan/Pint e 28 testes/403 asserções aprovados, numa base isolada separada da prévia. Nenhum novo push ou instalação. Relatório: `../v2/auditoria-portal/ofertas-instalacao-privada-incidente-wayfinder-20261114.md`; recibo `outputs/offers-exact-install-20261114/qa-result.json`. Nova revisão correctiva exige autorização expressa antes de integrar/instalar; publicação, correio, pagamentos e decisões jurídicas continuam nos limites anteriores.
+
+
+### 2026-11-15 — pesquisa local de instituições
+AUD-FUND-01: diagnóstico e delta sobre bd000d04 registados em `../v2/auditoria-portal/apresentacao-contexto-qa-20261115.md`. Filtros existentes; corrigidas em código a predefinição física e a apresentação das moradas/incerteza. 10 testes frontend aprovados; API, tipos globais/build e visual da candidata por concluir. Sem instalação ou alteração de dados.
diff --git a/docs/investmoz/v2/auditoria-portal/apresentacao-contexto-qa-20261115.md b/docs/investmoz/v2/auditoria-portal/apresentacao-contexto-qa-20261115.md
index f07cd2f1..7fc49448 100644
--- a/docs/investmoz/v2/auditoria-portal/apresentacao-contexto-qa-20261115.md
+++ b/docs/investmoz/v2/auditoria-portal/apresentacao-contexto-qa-20261115.md
@@ -230,3 +230,14 @@ A captura nativa do Edge recuperou nesta passagem; o conector de abas continua a
Foram observados em computador e em emulação móvel (390 px e 360 × 844): cartões em uma coluna, leitura da variação temporal, abertura da série anual, ano ausente como «Sem dados» e recuperação do detalhe de fontes/originais. A primeira captura móvel detectou palavras comprimidas na tabela original; foi aplicada largura mínima com deslocamento interno, seguida de nova conferência. As capturas são evidência da **prévia de componentes**, não de aceitação autenticada integral ou de utilização num telefone físico.
Continuam pendentes a conferência autenticada dos percursos completos e a aceitação do responsável. Sem instalação no activo, sem alteração do esquema ou de permissões e sem envio externo. A pendência de obter/comparar o bundle fica encerrada por esta reconciliação selectiva.
+
+
+## 2026-11-15 — localização nas instituições financeiras (AUD-FUND-01)
+
+Base conferida: bd000d04. Na homologação, os selectores de província/distrito/posto/localidade existem. A pesquisa por presença física em Tete com inclusão de desconhecidos devolveu 140 resultados; os primeiros cartões não mostravam moradas nem assinalavam presença por confirmar. Ao seleccionar apenas âmbito documentado, o resultado mudou para instituições com presença cadastrada, incluindo Access Bank, Socremo e seguradoras. Esta observação não certifica que todos os balcões reais estejam cadastrados ou actualizados.
+
+Delta preparado em ramo isolado: modo e território juntos; pesquisa depois dos critérios; modo físico começa com âmbito documentado, mantendo a escolha explícita de desconhecidos e URLs anteriores; o controlador aplica a mesma predefinição quando omitida. Cartões mostram a morada no território escolhido, sem mostrar a sede de outra província como presença local. Desconhecidos incluídos voluntariamente recebem indicação específica. O detalhe conserva todas as moradas existentes e o retorno conserva critérios. Nenhum registo, fonte ou permissão foi alterado. Cobertura de financiamento permanece distinta de presença física.
+
+Verificação: 10 testes frontend aprovados (3 novos), incluindo renderização dos componentes reais, critérios dependentes, retorno explícito de desconhecidos e preservação do detalhe; lint dirigido e git diff --check aprovados. Teste HTTP acrescentado a FundingCriteriaCoherenceTest, não executado neste ambiente sem PHP/PostgreSQL. TypeScript global executado mas bloqueado pela ausência de módulos routes/actions gerados; sem diagnósticos nos ficheiros funding alterados. Não foi executado build global nem conferência visual da candidata. A observação visual refere-se apenas ao activo anterior.
+
+Entrega: patch e bundle a produzir a partir de bd000d04; sem push autenticado ou instalação nesta sessão. Antes de instalar, executar o teste HTTP na base QA isolada já definida no teste, gerar routes/actions, concluir tipos/build e conferir a candidata em computador e móvel. Não repetir testes fiscais ou importar dados para esta correcção.
diff --git a/docs/investmoz/v2/auditoria-portal/matriz-requisitos.csv b/docs/investmoz/v2/auditoria-portal/matriz-requisitos.csv
index 347917c1..be655632 100644
--- a/docs/investmoz/v2/auditoria-portal/matriz-requisitos.csv
+++ b/docs/investmoz/v2/auditoria-portal/matriz-requisitos.csv
@@ -10904,7 +10904,8 @@ AUD-FUND-01,Catálogo de fundos nacionais e territoriais com elegibilidade expli
[RECONCILIACAO-43-20261019] Código e critérios confrontados com leitura READ ONLY fresca; PROVA-RECONCILIACAO-43-LEITURA.json, RECONCILIACAO-43-QA-FONTES.json, RECONCILIACAO-43-SCHEMA-QA.json. Não encerra critério funcional por inventário.
-[PLANO-P1-P6-20261019] Plano Tempo: 27–46 h disponibilização; P7 e desenvolvimento separados. Inclusão 36–39 expressa para decisão; sem publicação automática. Revisão de proposta d87970e701f0. Roteiro no manual existente; não encerra critério por instalação. [FUNDING-EDITOR-20261102] Catálogo e editor locais: rascunhos, prévia vinculada, publicação/retirada com autoridade editorial existente, versões imutáveis, janelas/critério explicado, documentos por versão e interesse privado. Quatro testes/91 asserções e tipos aprovados. Filtros territoriais/sectoriais, ensaios de documentos, fontes reais, visual e disponibilização pendentes; requisito parcial, sem alteração no activo. Manual de 02/11 e funding_editor_increment_20261102. [FUNDING-FILTERS-20261102] Filtros locais por sector, cobertura territorial e estado de janela, com desconhecidos explícitos e cobertura parcial. Nomes/caminhos territoriais e sectores conservados por versão. Descarga verifica versão, checksum, direitos, análise e bytes; prévia obsoleta recusada. Seis testes/204 asserções, PHPStan, tipos, lint sem avisos e compilação aprovados. Recibo funding_filters_increment_20261102 e manual. Faltam fontes reais incorporadas, validação visual, ensaios de concorrência e disponibilização; requisito parcial. [FUNDING-REFERENCES-20261102] Referência oficial FDEL empacotada com fontes/edições/hashes e prévia editorial; prepara rascunho sem publicar. Uma ficha e chamada municipal histórica, repetição sem duplicar ou substituir. Sete testes/235 asserções; PHPStan, tipos e lint aprovados. Recibo funding_references_increment_20261102; manual de 02/11. Ligações sectorial/cartográfica, concorrência, visual, alertas e disponibilização pendentes. Parcial local, sem escrita no activo. [FUNDING-CONCURRENCY-20261102] Ensaio com cinco pares de processos e bloqueios observados no PostgreSQL identificou deadlock 40P01 entre retirada e interesse da mesma pessoa. Bloqueio da conta ajustado a FOR NO KEY UPDATE, conservando serialização e referências de auditoria. Cinco cenários passaram após correcção; sete Feature/235 asserções e PHPStan/Pint aprovados. Dados/versão/interesse e auditoria sem duplicação conservados; recibo funding_concurrency_increment_20261102. Não comprova carga ou todas as intercalações. Visual, vínculos da referência, alertas e disponibilização pendentes. [FUNDING-ALERTS-20261102] ACT-11: versões publicadas de fundos/programas/incentivos do catálogo integradas no motor de alertas existente, com adesão explícita e preferências antigas preservadas. Filtros e desconhecidos explicados, origem/versão/estado conservados, retirada/acesso próprio, cancelamento, lote e reversão transaccional. 36 testes/612 asserções e seis frontend; PHPStan, tipos, lint e compilação aprovados. Recibo funding_alerts_increment_20261102 e manual. Sem canais externos, recolha externa ou instalação no activo; requisito agregado parcial. [FUNDING-ASSESSMENT-CONCURRENCY-20261102] Nove pares concorrentes observados aprovaram referências/versões/interesses, geradores duplicados, preferências idempotentes e ambas as precedências de cancelamento. Conferência de critérios mostra/envia apenas perguntas aplicáveis, preserva respostas locais e reinicia por ficha/versão. Oito frontend, tipos/lint/compilação aprovados; PHP da aplicação sem delta, provas 36 Feature/612 reutilizadas após conferir hashes. Recibo funding_assessment_concurrency_increment_20261102. Visual, vínculos de referência, canais externos e disponibilização continuam pendentes. Preparação editorial assistida em QA: selecção/conferência e publicação explícita separadas, MFA nativo, edições preservadas e repetição exacta. Disponibilização efectiva ainda pendente. Instalação ef24cbdc confirmada10/11/2026; backup/restauro190tabelas/369ficheiros; fontes33hashes. Conteúdo ainda0fichas/0publicações; entrada no editor confirmada, sem POST de preparação/publicação observado. ACT12 aberto até consulta efectiva, sem nova instalação exigida. Confirmação posterior10/11:32rascunhos persistidos/0publicações; continuação e publicação403 após expiraçãoMFA900s (21:31:43+02). Retoma autenticada idempotente conserva rascunhos. Instalaçãoef24cbdc preservada; ACT12 aberto. Confirmação seguinte:90rascunhos/0publicações, recusas403 apósMFA. CorrecçãoQA de retoma na mesma aba poractor/fontes, confirmação separada e recuperação exacta; selecção todas270/contadores/controlos visíveis. Revisãoactivaef24cbdc até recibo posterior. Retoma instalada4f3dbcf8/22:01+02,7hashes/HTTP200/backup-restauro190tabelas369ficheiros, guardasMFA mantidas.90rascunhos/0publicações; preparação/publicação autenticada e consulta efectiva ainda pendentes. ACT12 aberto. Diagnóstico posterior:loginMFAEdge22:03:53/dashboard200; editor403Safari/WebKit22:04 em sessão anterior. Não era expiração da nova sessãoEdge. Colar URL noEdge autenticado; nenhuma permissão/sessão/configuração alterada. Abertura/publicação efectiva por confirmar. Acesso reposto:editorEdgeHTTP200às22:11:21+02 na sessão correcta; sem nova instalação/permissão. Publicação/conteúdo consultável ainda por confirmar. ENTREGACONFIRMADA10/11/2026às22:54:31+02:270/270instituições do documento publicadas/270identidades/393locais168contactos; nenhuma em falta. CatálogoHTTP200total270incluindo histórico, filtroseguradora/Nampula6resultados eBCI/Absa/ArkoHTTP200. Cadastro/disponibilização do original concluídos emhomologação4f3dbcf8; continuidade dossierQA aceite reutilizada; visual separado. Cinco programas anteriores permanecem privados. Provaoutputs/funding-directory-20261110/institutions/publication-complete.json.",incrementos futuros,12/10/2026 — reconciliação e HTTP; nova inspeção visual bloqueada,,,"Correspondência financeira genérica RF-CLU-005 é relacionada, mas não implementa o catálogo de fundos com cobertura e janelas. Não foram encontrados modelo/controlador/consumidor específicos no inventário de código.",Identificar fontes/dados/âmbito/período concretos; não reabrir aceitação oficial.,Reutilizar biblioteca e cadastro de entidades/parceiros para fontes e gestores reais; regras versionadas de cobertura/elegibilidade com indeterminado quando faltar parâmetro. Correspondência não representa aprovação ou compromisso de financiamento.,Leitura integral do exemplar local e inventário código/documental; importação/retrieval deste DOCX não comprova a funcionalidade descrita.,Contrato específico não demonstrado.,,,,16–32 h após inventário de fontes e campos; atualização operacional a definir pela Tempo.,,,
+[PLANO-P1-P6-20261019] Plano Tempo: 27–46 h disponibilização; P7 e desenvolvimento separados. Inclusão 36–39 expressa para decisão; sem publicação automática. Revisão de proposta d87970e701f0. Roteiro no manual existente; não encerra critério por instalação. [FUNDING-EDITOR-20261102] Catálogo e editor locais: rascunhos, prévia vinculada, publicação/retirada com autoridade editorial existente, versões imutáveis, janelas/critério explicado, documentos por versão e interesse privado. Quatro testes/91 asserções e tipos aprovados. Filtros territoriais/sectoriais, ensaios de documentos, fontes reais, visual e disponibilização pendentes; requisito parcial, sem alteração no activo. Manual de 02/11 e funding_editor_increment_20261102. [FUNDING-FILTERS-20261102] Filtros locais por sector, cobertura territorial e estado de janela, com desconhecidos explícitos e cobertura parcial. Nomes/caminhos territoriais e sectores conservados por versão. Descarga verifica versão, checksum, direitos, análise e bytes; prévia obsoleta recusada. Seis testes/204 asserções, PHPStan, tipos, lint sem avisos e compilação aprovados. Recibo funding_filters_increment_20261102 e manual. Faltam fontes reais incorporadas, validação visual, ensaios de concorrência e disponibilização; requisito parcial. [FUNDING-REFERENCES-20261102] Referência oficial FDEL empacotada com fontes/edições/hashes e prévia editorial; prepara rascunho sem publicar. Uma ficha e chamada municipal histórica, repetição sem duplicar ou substituir. Sete testes/235 asserções; PHPStan, tipos e lint aprovados. Recibo funding_references_increment_20261102; manual de 02/11. Ligações sectorial/cartográfica, concorrência, visual, alertas e disponibilização pendentes. Parcial local, sem escrita no activo. [FUNDING-CONCURRENCY-20261102] Ensaio com cinco pares de processos e bloqueios observados no PostgreSQL identificou deadlock 40P01 entre retirada e interesse da mesma pessoa. Bloqueio da conta ajustado a FOR NO KEY UPDATE, conservando serialização e referências de auditoria. Cinco cenários passaram após correcção; sete Feature/235 asserções e PHPStan/Pint aprovados. Dados/versão/interesse e auditoria sem duplicação conservados; recibo funding_concurrency_increment_20261102. Não comprova carga ou todas as intercalações. Visual, vínculos da referência, alertas e disponibilização pendentes. [FUNDING-ALERTS-20261102] ACT-11: versões publicadas de fundos/programas/incentivos do catálogo integradas no motor de alertas existente, com adesão explícita e preferências antigas preservadas. Filtros e desconhecidos explicados, origem/versão/estado conservados, retirada/acesso próprio, cancelamento, lote e reversão transaccional. 36 testes/612 asserções e seis frontend; PHPStan, tipos, lint e compilação aprovados. Recibo funding_alerts_increment_20261102 e manual. Sem canais externos, recolha externa ou instalação no activo; requisito agregado parcial. [FUNDING-ASSESSMENT-CONCURRENCY-20261102] Nove pares concorrentes observados aprovaram referências/versões/interesses, geradores duplicados, preferências idempotentes e ambas as precedências de cancelamento. Conferência de critérios mostra/envia apenas perguntas aplicáveis, preserva respostas locais e reinicia por ficha/versão. Oito frontend, tipos/lint/compilação aprovados; PHP da aplicação sem delta, provas 36 Feature/612 reutilizadas após conferir hashes. Recibo funding_assessment_concurrency_increment_20261102. Visual, vínculos de referência, canais externos e disponibilização continuam pendentes. Preparação editorial assistida em QA: selecção/conferência e publicação explícita separadas, MFA nativo, edições preservadas e repetição exacta. Disponibilização efectiva ainda pendente. Instalação ef24cbdc confirmada10/11/2026; backup/restauro190tabelas/369ficheiros; fontes33hashes. Conteúdo ainda0fichas/0publicações; entrada no editor confirmada, sem POST de preparação/publicação observado. ACT12 aberto até consulta efectiva, sem nova instalação exigida. Confirmação posterior10/11:32rascunhos persistidos/0publicações; continuação e publicação403 após expiraçãoMFA900s (21:31:43+02). Retoma autenticada idempotente conserva rascunhos. Instalaçãoef24cbdc preservada; ACT12 aberto. Confirmação seguinte:90rascunhos/0publicações, recusas403 apósMFA. CorrecçãoQA de retoma na mesma aba poractor/fontes, confirmação separada e recuperação exacta; selecção todas270/contadores/controlos visíveis. Revisãoactivaef24cbdc até recibo posterior. Retoma instalada4f3dbcf8/22:01+02,7hashes/HTTP200/backup-restauro190tabelas369ficheiros, guardasMFA mantidas.90rascunhos/0publicações; preparação/publicação autenticada e consulta efectiva ainda pendentes. ACT12 aberto. Diagnóstico posterior:loginMFAEdge22:03:53/dashboard200; editor403Safari/WebKit22:04 em sessão anterior. Não era expiração da nova sessãoEdge. Colar URL noEdge autenticado; nenhuma permissão/sessão/configuração alterada. Abertura/publicação efectiva por confirmar. Acesso reposto:editorEdgeHTTP200às22:11:21+02 na sessão correcta; sem nova instalação/permissão. Publicação/conteúdo consultável ainda por confirmar. ENTREGACONFIRMADA10/11/2026às22:54:31+02:270/270instituições do documento publicadas/270identidades/393locais168contactos; nenhuma em falta. CatálogoHTTP200total270incluindo histórico, filtroseguradora/Nampula6resultados eBCI/Absa/ArkoHTTP200. Cadastro/disponibilização do original concluídos emhomologação4f3dbcf8; continuidade dossierQA aceite reutilizada; visual separado. Cinco programas anteriores permanecem privados. Provaoutputs/funding-directory-20261110/institutions/publication-complete.json.
+[2026-11-15 / pesquisa física] Filtros presentes em bd000d04; Tete incluía registos sem localização por include_unknown. Delta local: presença documentada por defeito no modo físico, localização visível nos cartões, desconhecidos identificados, critérios territoriais agrupados. 10 testes frontend aprovados. Teste HTTP preparado não executado (sem PHP/PostgreSQL); TypeScript global bloqueado por routes/actions gerados ausentes. Conferência visual da candidata e instalação pendentes. Ver apresentacao-contexto-qa-20261115.md.",incrementos futuros,12/10/2026 — reconciliação e HTTP; nova inspeção visual bloqueada,,,"Correspondência financeira genérica RF-CLU-005 é relacionada, mas não implementa o catálogo de fundos com cobertura e janelas. Não foram encontrados modelo/controlador/consumidor específicos no inventário de código.",Identificar fontes/dados/âmbito/período concretos; não reabrir aceitação oficial.,Reutilizar biblioteca e cadastro de entidades/parceiros para fontes e gestores reais; regras versionadas de cobertura/elegibilidade com indeterminado quando faltar parâmetro. Correspondência não representa aprovação ou compromisso de financiamento.,Leitura integral do exemplar local e inventário código/documental; importação/retrieval deste DOCX não comprova a funcionalidade descrita.,Contrato específico não demonstrado.,,,,16–32 h após inventário de fontes e campos; atualização operacional a definir pela Tempo.,,,
AUD-COMPANY-01,"Comparador de forma societária orientado por perguntas, com fundamento, alternativas e limites",[Segmentação bf26caeee043 — identidade confirmada; nome local v1.docx] Alias documental SOC-001; SEG-bf26caee-p109; SEG-bf26caee-p119; SEG-bf26caee-p730; SEG-bf26caee-p874; SEG-bf26caee-p875; SEG-bf26caee-p877; SEG-bf26caee-p878; SEG-bf26caee-p879; SEG-bf26caee-p881; SEG-bf26caee-p882; SEG-bf26caee-p883; SEG-bf26caee-p884; SEG-bf26caee-p885; SEG-bf26caee-p886; SEG-bf26caee-p887; SEG-bf26caee-p888; SEG-bf26caee-p889; SEG-bf26caee-p890; SEG-bf26caee-p897; SEG-bf26caee-p899; SEG-bf26caee-p901; SEG-bf26caee-p902; SEG-bf26caee-p903; SEG-bf26caee-p905; SEG-bf26caee-p906; SEG-bf26caee-p907,SOC-001 / incremento posterior ao workflow das seis categorias,"Consumidor específico ainda por delimitar; reutilizar rotas de biblioteca/Balcão/negócios/simulador pertinentes, sem atribuir existência fictícia.","Roteiro societário, biblioteca e motor de regras existentes. Capacidade existente associada ao domínio; correspondência integral desta cláusula só quando demonstrada na prova individual. [COMPANY-COMPARISON-20261102] Comparador informativo implementado localmente: consulta pública, perguntas aplicáveis/recuperáveis, cinco alternativas da edição citada e distinção de representação/cooperação; fontes/artigos/datas, limites e conflitos explicados. Dossier existente guarda snapshot cifrado de respostas/perguntas/resultado/fonte, com histórico paginado; correcção cria nova edição e repetição sem alteração não duplica. Repetição de operação usa a versão de perguntas original. Escolha/criação explícita de dossier conserva respostas através do percurso de autenticação normal; nenhuma entidade, contrato, etapa ou aprovação criada automaticamente. 14 Feature/385 asserções e seis frontend aprovados, PHPStan/Pint/tipos/lint/build; recibo company_comparison_increment_20261102. Sem migração nova, IA, escrita no activo ou instalação remota.","[CONCLUSAO-INTEGRAL-20261110] Fontes até ff726e57 na homologação teste-investidor. Não confundir instalação do código com nova concessão, habilitação nominal ou prova visual integral. | Histórico anterior preservado: Ativo investemoz:5432, 295 tabelas, COUNTRY02/030000/040000 instalados; seis categorias e administração habilitadas. Leitura atual não demonstra esta cláusula individual. Legado, percurso integrado, modulares/ofertas e notificações desabilitados.","segmentacao-processos-reconciliacao-20261011.md; contratos/rotas inventariados atuais; não há prova de percurso completo deste incremento. [COMPANY-COMPARISON-20261102] Comparador informativo implementado localmente: consulta pública, perguntas aplicáveis/recuperáveis, cinco alternativas da edição citada e distinção de representação/cooperação; fontes/artigos/datas, limites e conflitos explicados. Dossier existente guarda snapshot cifrado de respostas/perguntas/resultado/fonte, com histórico paginado; correcção cria nova edição e repetição sem alteração não duplica. Repetição de operação usa a versão de perguntas original. Escolha/criação explícita de dossier conserva respostas através do percurso de autenticação normal; nenhuma entidade, contrato, etapa ou aprovação criada automaticamente. 14 Feature/385 asserções e seis frontend aprovados, PHPStan/Pint/tipos/lint/build; recibo company_comparison_increment_20261102. Sem migração nova, IA, escrita no activo ou instalação remota.",Implementado parcialmente,"Saldo 02/11/2026: comparador base público e ligado ao dossier implementado e ensaiado localmente. Restam observação visual/login real, disponibilização e casos especiais/redacções adicionais não abrangidos pela edição citada; modelos de contratos/estatutos são AUD-COMPANY-02 e não foram declarados entregues. Histórico anterior: Comparador societário orientado por perguntas não implementado.",Documentos/entidades/fontes/parâmetros próprios antes de implementação; sem novos módulos nesta auditoria. Alternativas com fundamento/versionamento e limites; não afirmar aprovação externa. Nenhuma nova decisão identificada para reconciliar/demonstrar esta cláusula. Decisões específicas só após localizar a regra correspondente.,"Perguntas recuperáveis, alternativas explicadas com fonte/data/limites, correção dos dados, retorno ao dossier sem alterar retrospectivamente a entidade ou garantir decisão externa.",P2,"Código SOC-001 é alias deste documento, não renumeração do roteiro/backlog. Conteúdo/regras pendentes não se tornam aprovados pela importação.",SEG-bf26caee-p109; SEG-bf26caee-p119; SEG-bf26caee-p730; SEG-bf26caee-p874; SEG-bf26caee-p875; SEG-bf26caee-p877; SEG-bf26caee-p878; SEG-bf26caee-p879; SEG-bf26caee-p881; SEG-bf26caee-p882; SEG-bf26caee-p883; SEG-bf26caee-p884; SEG-bf26caee-p885; SEG-bf26caee-p886; SEG-bf26caee-p887; SEG-bf26caee-p888; SEG-bf26caee-p889; SEG-bf26caee-p890; SEG-bf26caee-p897; SEG-bf26caee-p899; SEG-bf26caee-p901; SEG-bf26caee-p902; SEG-bf26caee-p903; SEG-bf26caee-p905; SEG-bf26caee-p906; SEG-bf26caee-p907,26,"[{""id"": ""SEG-bf26caee-p109"", ""section"": ""1.0.2"", ""first_paragraph"": 109, ""last_paragraph"": 113, ""text"": ""Artigos 13 a 18 | Decreto-Lei n.º 1/2022 — publicação oficial da Imprensa Nacional de Moçambique | Capacidade empresarial e situações especiais | INV-001; INV-007; SOC-001; §§3.1.1, 3.2.2 e 9.5 | Validações de capacidade e representação nos formulários e no comparador, sem decisão automática quando for necessária análise jurídica."", ""requirements"": [""AUD-CHECKLIST-01"", ""AUD-COMPANY-01"", ""AUD-DESK-02"", ""MASTER-1f0a4cde-0001"", ""MASTER-9dee08d0-0049""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p109"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p119"", ""section"": ""1.0.2"", ""first_paragraph"": 119, ""last_paragraph"": 123, ""text"": ""Artigos 20 a 33 | Decreto-Lei n.º 1/2022 — publicação oficial da Imprensa Nacional de Moçambique | Regime da firma | INV-001; INV-007; SOC-001; SOC-002; §§3.2.2, 6.1, 9.2 e 9.3 | Validação da designação, composição, verdade, novidade, uso, transmissão, caducidade e renúncia, com fonte e evidência registal."", ""requirements"": [""AUD-CHECKLIST-01"", ""AUD-COMPANY-01"", ""AUD-COMPANY-02"", ""AUD-DESK-02"", ""MASTER-1f0a4cde-0001"", ""MASTER-9dee08d0-0049""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p119"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p730"", ""section"": ""6.1"", ""first_paragraph"": 730, ""last_paragraph"": 736, ""text"": ""§3.2; §9 | Comparador societário orientado por perguntas | INV-001 e SOC-001 | Sim | Sem demonstração suficiente | — | Demonstrar perguntas, decisões explicadas, fontes, aviso informativo e ligação ao roteiro."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-DESK-02"", ""MASTER-1f0a4cde-0001""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p730"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p874"", ""section"": ""9.0"", ""first_paragraph"": 874, ""last_paragraph"": 874, ""text"": ""O guia societário deve ser revisto por especialista competente e associado às fontes legais, data de actualização, entidade responsável e aviso de carácter informativo. A revisão deve confirmar a terminologia aplicável em Moçambique, distinguir empresário em nome individual de sociedades comerciais, verificar os tipos societários apresentados, uniformizar o termo “contrato” e eliminar formulações importadas de outros ordenamentos jurídicos. Cada modelo deve indicar finalidade, requisitos, limitações e necessidade de validação antes da utilização."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p874"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p875"", ""section"": ""9.0"", ""first_paragraph"": 875, ""last_paragraph"": 875, ""text"": ""Para efeitos do guia societário e do comparador de forma jurídica, a fonte-base é o Código Comercial aprovado pelo Decreto-Lei n.º 1/2022, de 25 de Maio. As denominações, formas societárias, representações comerciais, actos constitutivos, regras de responsabilidade e modelos contratuais devem ser reconciliados com a versão republicada do Código Comercial e com a legislação especial vigente antes de serem apresentados como regra automática ou conteúdo validado."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p875"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p877"", ""section"": ""9.1"", ""first_paragraph"": 877, ""last_paragraph"": 877, ""text"": ""Uma sociedade comercial resulta da associação de pessoas ou entidades para exercer uma actividade económica nos termos da legislação aplicável, com funções, responsabilidades, participações e obrigações definidas no acto constitutivo. A escolha da forma jurídica deve considerar o número de participantes, o regime de responsabilidade, a estrutura de gestão, as necessidades de capital e os requisitos legais vigentes em Moçambique. O empresário em nome individual deve ser apresentado separadamente das formas societárias. A classificação e a terminologia publicadas no portal dependem de validação jurídica e da identificação das respectivas fontes e datas de actualização."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p877"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p878"", ""section"": ""9.1"", ""first_paragraph"": 878, ""last_paragraph"": 878, ""text"": ""Contar com um sócio cujos objectivos e interesses estejam alinhados com os seus é um elemento essencial para o êxito de qualquer empreendimento. A relação societária deve promover sinergia, confiança e colaboração, factores imprescindíveis para enfrentar os desafios inerentes ao mundo dos negócios. Empreender exige dedicação, resiliência e compromisso — qualidades que se fortalecem quando partilhadas por uma equipa com visão comum."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p878"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p879"", ""section"": ""9.1"", ""first_paragraph"": 879, ""last_paragraph"": 879, ""text"": ""Existem diferentes tipos de sociedades empresariais, cada um regulamentando a participação de seus membros de acordo com características e responsabilidades específicas."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p879"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p881"", ""section"": ""9.2"", ""first_paragraph"": 881, ""last_paragraph"": 881, ""text"": ""Empresário individual — categoria distinta das formas societárias."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p881"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p882"", ""section"": ""9.2"", ""first_paragraph"": 882, ""last_paragraph"": 882, ""text"": ""Sociedade em Nome Colectivo — designação sujeita a confirmação na legislação vigente antes da publicação no comparador."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p882"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p883"", ""section"": ""9.2"", ""first_paragraph"": 883, ""last_paragraph"": 883, ""text"": ""Sociedade em Comandita — forma a validar quanto às modalidades e requisitos aplicáveis."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p883"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p884"", ""section"": ""9.2"", ""first_paragraph"": 884, ""last_paragraph"": 884, ""text"": ""Sociedade de Capital e Indústria — forma a validar quanto à vigência e aos requisitos aplicáveis."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p884"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p885"", ""section"": ""9.2"", ""first_paragraph"": 885, ""last_paragraph"": 885, ""text"": ""Sociedade por Quotas."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p885"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p886"", ""section"": ""9.2"", ""first_paragraph"": 886, ""last_paragraph"": 886, ""text"": ""Sociedade Unipessoal por Quotas."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p886"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p887"", ""section"": ""9.2"", ""first_paragraph"": 887, ""last_paragraph"": 887, ""text"": ""Sociedade Anónima."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p887"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p888"", ""section"": ""9.2"", ""first_paragraph"": 888, ""last_paragraph"": 888, ""text"": ""Sucursal, agência e delegação — formas de representação comercial, não tipos autónomos de sociedade."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p888"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p889"", ""section"": ""9.2"", ""first_paragraph"": 889, ""last_paragraph"": 889, ""text"": ""Sociedades coligadas e relações de domínio — matérias de ligação ou controlo entre sociedades, não formas autónomas de constituição."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p889"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p890"", ""section"": ""9.2"", ""first_paragraph"": 890, ""last_paragraph"": 890, ""text"": ""Consórcio — instrumento de cooperação sujeito a enquadramento próprio, não forma societária."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p890"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p897"", ""section"": ""9.4"", ""first_paragraph"": 897, ""last_paragraph"": 897, ""text"": ""A participação, a responsabilidade, os direitos económicos e os poderes de gestão dependem da forma societária, do contrato de sociedade, da legislação aplicável e das deliberações válidas. As contribuições dos sócios podem assumir formas diferentes, de acordo com o regime jurídico e o acto constitutivo. A maior participação no capital não deve ser apresentada como sinónimo de principal proprietário, nem se deve presumir que a distribuição de quotas determina, por si só, a responsabilidade perante terceiros ou a participação nos lucros. O contrato de sociedade deve definir a estrutura de capital, os órgãos, os poderes, as regras de deliberação, os direitos e as obrigações aplicáveis."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p897"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p899"", ""section"": ""9.5"", ""first_paragraph"": 899, ""last_paragraph"": 899, ""text"": ""A escolha da forma jurídica deve considerar o número de participantes, o regime de responsabilidade, a estrutura de gestão, as necessidades de capital, a actividade e os requisitos legais aplicáveis. A empresa em nome individual e a sociedade unipessoal possuem estruturas distintas e devem ser avaliadas separadamente. A entrada posterior de sócios, a transformação da forma jurídica e as alterações do capital ou do contrato dependem da legislação vigente, dos actos societários aplicáveis e do respectivo registo; por isso, o portal não deve apresentar estas modalidades como definitivamente fechadas à evolução da estrutura."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p899"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p901"", ""section"": ""9.6"", ""first_paragraph"": 901, ""last_paragraph"": 901, ""text"": ""A principal vantagem de ter sócios é a possibilidade de reunir pessoas com interesses e objectivos semelhantes em torno de uma finalidade comum, o que fortalece o desenvolvimento e a execução do projecto. Essa união permite complementar competências, partilhar responsabilidades e ampliar a capacidade de resposta às necessidades do negócio."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p901"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p902"", ""section"": ""9.6"", ""first_paragraph"": 902, ""last_paragraph"": 902, ""text"": ""No entanto, uma sociedade empresarial segue regras específicas e deve ser estruturada de forma estratégica. Falhas de alinhamento ou mal-entendidos entre os sócios podem gerar conflitos e comprometer o funcionamento da organização. Por isso, é essencial escolher cuidadosamente o modelo societário e estabelecer acordos claros desde o início."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p902"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p903"", ""section"": ""9.6"", ""first_paragraph"": 903, ""last_paragraph"": 903, ""text"": ""Existem diversos formatos de sociedade empresarial, com características e formas de participação próprias, permitindo ao empreendedor escolher o modelo mais adequado à realidade e aos objectivos do negócio."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p903"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p905"", ""section"": ""9.6.1"", ""first_paragraph"": 905, ""last_paragraph"": 905, ""text"": ""Não existe um tipo de sociedade empresarial universalmente melhor ou pior. O essencial é identificar o modelo alinhado ao propósito do negócio e à relação entre os sócios, preferencialmente com orientação profissional especializada."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p905"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p906"", ""section"": ""9.6.1"", ""first_paragraph"": 906, ""last_paragraph"": 906, ""text"": ""Também devem ser considerados formatos específicos para determinadas áreas de actuação, como a sociedade de advogados, que apenas pode ser composta por profissionais legalmente habilitados a exercer actividades na área do Direito."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p906"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}, {""id"": ""SEG-bf26caee-p907"", ""section"": ""9.6.1"", ""first_paragraph"": 907, ""last_paragraph"": 907, ""text"": ""Uma avaliação cuidadosa do planeamento do negócio é indispensável para determinar a viabilidade da sociedade e identificar as alternativas jurídicas adequadas à sua formalização."", ""requirements"": [""AUD-COMPANY-01"", ""AUD-COMPANY-02""], ""source_sha256"": ""bf26caeee0437a8d292bf29be59247e2862c14e79b5ae465c00322747af72af5"", ""locator"": ""word/document.xml#p907"", ""declared_document_state_is_not_functional_evidence"": true, ""exact_requested_exemplar_confirmed"": true}]",Consumidor específico não demonstrado.,Contrato específico não demonstrado.,Nenhuma entidade/regra criada para este módulo.,"A recuperação do original da especificação é prova do acervo, não deste percurso.",Pendente de implementação/prova própria.,"Novo ID apenas após pesquisa de correspondência: os requisitos relacionados são componentes a reutilizar, não equivalências. [Segmentação bf26caeee043 — identidade confirmada; nome local v1.docx] ",não implementado,Não demonstrada para este requisito específico; nenhum pacote ativado por esta incorporação. COUNTRY02ON preservado.,"Diagnóstico específico anterior de ausência/cobertura conservado; inventário atual não demonstra entrega posterior deste incremento. Nenhuma nova implementação iniciada nesta auditoria.
[RECONCILIACAO-43-20261019] 16: Implementar perguntas recuperáveis, alternativas fundamentadas e modelos exactos versionados. Exemplares ausentes permanecem lacuna de conteúdo.","[CONCLUSAO-INTEGRAL-20261110] Comparador base e preparação factual já implementados, fontes instaladas. Restam casos especiais, sete modelos exactos, ingestão/versionamento/vínculo/derivadas, actividade/licenciamento e percursos de assinatura/submissão/registo não cobertos. Modelos em falta bloqueiam só as derivadas dependentes; visual separado. | Histórico anterior preservado: Saldo 02/11/2026: comparador base público e ligado ao dossier implementado e ensaiado localmente. Restam observação visual/login real, disponibilização e casos especiais/redacções adicionais não abrangidos pela edição citada; modelos de contratos/estatutos são AUD-COMPANY-02 e não foram declarados entregues. Histórico anterior: Comparador societário orientado por perguntas não implementado.
diff --git a/resources/js/components/funding-institution.tsx b/resources/js/components/funding-institution.tsx
index 1c7ba74e..012cd5f0 100644
--- a/resources/js/components/funding-institution.tsx
+++ b/resources/js/components/funding-institution.tsx
@@ -2,17 +2,15 @@ import {
ClassificationFields,
evidenceLabels,
type Classification,
-} from '@/components/funding-classification';
+} from "@/components/funding-classification";
import {
fundingPublicPresentation,
publicInstitutionContacts,
publicInstitutionLocations,
-} from '@/lib/funding-public-presentation';
-import {
- financialCategories,
- financialTypes,
-} from '@/components/funding-classification';
-import { card, input, button } from '@/pages/investment/shared';
+ matchingInstitutionLocations,
+} from "@/lib/funding-public-presentation";
+import { financialCategories, financialTypes } from "@/components/funding-classification";
+import { card, input, button } from "@/pages/investment/shared";
export type FundingSource = {
source_url: string | null;
@@ -33,7 +31,7 @@ export type FundingLocation = FundingSource & {
label: string;
address: string;
territory_id: string;
- territory_path?: { name: string }[];
+ territory_path?: { id?: string; name: string }[];
};
export type FundingProduct = FundingSource & {
code: string;
@@ -57,22 +55,22 @@ export type InstitutionDetails = Classification & {
products: FundingProduct[];
};
export const emptyInstitution: InstitutionDetails = {
- institution_key: '',
- institution_nature: 'unknown',
+ institution_key: "",
+ institution_nature: "unknown",
contacts: [],
locations: [],
products: [],
};
const source: FundingSource = {
- source_url: '',
- source_reference: '',
- checked_on: '',
+ source_url: "",
+ source_reference: "",
+ checked_on: "",
};
function Text({
label,
value,
change,
- type = 'text',
+ type = "text",
}: {
label: string;
value: string;
@@ -85,8 +83,8 @@ function Text({
change(e.target.value)}
/>
@@ -105,24 +103,20 @@ function Sources({
change({ source_url })}
/>
{!value.source_url && (
<>
- change({ source_document_name })
- }
+ value={value.source_document_name ?? ""}
+ change={(source_document_name) => change({ source_document_name })}
/>
- change({ source_document_sha256 })
- }
+ value={value.source_document_sha256 ?? ""}
+ change={(source_document_sha256) => change({ source_document_sha256 })}
/>
>
)}
@@ -131,10 +125,8 @@ function Sources({
Situação desta informação