Se você quiser fazer um pull request, ficarei feliz em mesclá-lo ![]()
Isso não resolve este problema, mas ter estilos duplicados é um desperdício e propenso a erros de qualquer maneira.
Eu faria alguns pequenos ajustes na função deduplicate_style, principalmente para garantir que tanto a key quanto os values estejam presentes.
def deduplicate_style(style)
styles = {}
style
.split(";")
.select(&:present?)
.map { _1.split(":", 2).map(&:strip) }
.each { |k, v| styles[k] = v if k.present? && v.present? }
styles.map { |k, v| "#{k}:#{v}" }.join(";")
end