ValueConverter::fromPhp('#0b0e1a') gera SassString com aspas, e
'background-color:"#0b0e1a"' é CSS inválido (browser ignora — fundo
cinza). Bug latente desde os temas legados (afetava qualquer uso direto
de $var injetada, ex. cor do botão); ficou visível quando os fundos
passaram a usar $page-background-color. Hex agora entra via parseValue()
como cor de verdade — também habilita funções de cor sobre as variáveis.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Classes migradas de inc/*.class.php (PluginButterfly*) para src/ com
namespace GlpiPlugin\Butterfly (PSR-4 registrado pelo core; KB-033).
Referências de core qualificadas (\Config, \Html, \Session, ...).
- Editor de CSS custom agora usa o Monaco do core (GLPI.Monaco.createEditor
+ sync via formdata, mesmo padrão de custom_ui do core) com fallback
para textarea se a lib não carregar.
- pics/ movido para public/pics: no GLPI 11 só recursos em public/ são
servidos estaticamente em /plugins/<key>/... (RequestRouterTrait).
URLs do select2 de temas agora usam root_doc + encodeURIComponent.
- MIN_GLPI_VERSION 11.0.0; removido bloco morto de GLPI <9.5 e
css/login.base.css órfão.
- config_page com glpi_tab urlencoded para a classe namespaced.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>