Commit Graph

9 Commits

Author SHA1 Message Date
9d63359854 Adiciona composer.json aos sub-módulos
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-25 09:45:43 -03:00
0dca85ca8f Documenta sub-módulo site_tools_group_helpers e atualiza README principal
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 08:19:55 -03:00
a6e6fd3125 Adiciona sub-módulo site_tools_group_helpers
Fornece um plugin EntityReferenceSelection que restringe campos de
referência a grupos aos grupos dos quais o usuário atual é membro.
Inclui troca automática para o widget options_select ao configurar o
handler, e remoção do #required em target_bundles para campos que
referenciam group, permitindo deixar o tipo de grupo em branco.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 08:08:42 -03:00
1d4d676fa6 Corrige erros de definição de biblioteca e esgotamento de memória no MSC 2020
Remove entrada de biblioteca vazia 'msc_term_select_widget' que causava
IncompleteLibraryDefinitionException. Otimiza buildTermData() para não
instanciar 597 entidades de taxonomia completas: usa loadTree() sem
entidades e busca field_msc_code diretamente na tabela do campo,
eliminando o fatal de memória esgotada (128 MB) ao abrir o modal
de configuração do campo.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-16 07:47:45 -03:00
d14aa22445 Refatora msc:export-translations para saída configurável
O comando passa a aceitar um argumento opcional output-path. Se
fornecido, grava o CSV no caminho indicado; se omitido, escreve em
stdout (permitindo redirecionamento com >). Mensagens de status
(contagens, erros) sempre vão para stderr via $this->io().

O comando não lê mais nem escreve no CSV do módulo: carrega todos os
termos msc_2020 do banco ordenados por field_msc_code e gera o CSV
inteiramente a partir do banco (header fixo, parent_code derivado do
comprimento do código).

Remove a dependência de ModuleExtensionList do construtor e do
drush.services.yml.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 09:20:09 -03:00
d33378c2f0 Adiciona termos de nível 3 ao vocabulário MSC 2020
Expande o CSV de ~597 para ~6100 termos incorporando o terceiro nível
hierárquico (códigos de 5 caracteres, ex.: 03B05). Inclui as traduções
pt-br dos termos de nível 3 já no CSV.

Atualiza MscTermListFormatter e MscTermSelectWidget para suportar a
hierarquia de três níveis, adiciona biblioteca CSS dedicada ao formatter
e adiciona o schema de configuração do formatter.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 09:19:55 -03:00
706c2bd737 Adiciona formatter de lista hierárquica para o vocabulário MSC 2020
MscTermListFormatter agrupa os termos selecionados por categoria pai,
exibindo o pai como item de primeiro nível e os filhos como sub-lista.
Pais não selecionados diretamente são carregados automaticamente para
servir de cabeçalho do grupo. Inclui opção "Link para a entidade
referenciada" para linkar os rótulos às páginas dos termos.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-13 15:04:39 -03:00
7631ef0484 Adiciona widget de seleção em cascata para o vocabulário MSC 2020
Implementa MscTermSelectWidget, um FieldWidget para campos entity_reference
apontando para o vocabulário msc_2020. Dois selects encadeados: o primeiro
lista as 63 categorias pai; o segundo é reconstruído via Drupal AJAX (#ajax)
ao mudar o pai, listando os subcampos da categoria selecionada mais a opção
"área geral (sem subcampo)".

O valor salvo no campo é o TID do segundo select. O estado dos selects é
preservado em rebuilds AJAX (ex.: "Add another item") lendo getUserInput(),
que não é afetado pelo #limit_validation_errors do botão.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-13 14:46:16 -03:00
38ff0019f4 Adiciona sub-módulos site_tools_msc_2020 e site_tools_msc_2020_migrate
- site_tools_msc_2020: vocabulário de taxonomia MSC 2020 (Mathematics
    Subject Classification) com campo field_msc_code e tradução pt-br
    habilitada via config/optional
  - site_tools_msc_2020_migrate: migrations CSV para importação dos 597
    termos hierárquicos em inglês (msc_2020_terms) e tradução pt-br
    (msc_2020_terms_pt_br); caminho do CSV resolvido dinamicamente via
    hook_migration_plugins_alter()
2026-03-13 10:27:30 -03:00