Get tests passing

This commit is contained in:
Brabli
2022-08-29 20:01:39 +01:00
parent 6553d0d32f
commit 5e3756773e
2 changed files with 26 additions and 3 deletions

View File

@@ -16,7 +16,8 @@ final class IconExtension extends AbstractExtension
'icon' => null,
'title' => null,
'size' => self::DEFAULT_SIZE,
'colour' => 'primary'
'colour' => 'primary',
'hover' => null
];
public function __construct(private array $directories, private array $palletes)
@@ -66,6 +67,7 @@ final class IconExtension extends AbstractExtension
* 'title' => (?string) Text to appear on mouse hover
* 'size' => (int) Height and width in px
* 'colour' => (string) Main colour pallete
* 'hover' => (?string) Hover colour pallete
* ]
* ```
*/
@@ -81,8 +83,16 @@ final class IconExtension extends AbstractExtension
$xml = new \SimpleXMLElement($cleanSvgMarkup);
$xml = $this->addAttributeToXmlElement($xml, 'class', $mainPallete['stroke'] . ' ' . $mainPallete['fill']);
$markup = $this->removeXMLDeclaration($xml->saveXML());
$cleanSvgMarkup = $this->removeXMLDeclaration($xml->saveXML());
if (null !== $options['hover']) {
$hoverPallete = $this->getPallete($options['hover']);
$xml = new \SimpleXMLElement($cleanSvgMarkup);
$xml = $this->addAttributeToXmlElement($xml, 'class', 'hover:' . $hoverPallete['stroke'] . ' ' . 'hover:' . $hoverPallete['fill']);
$cleanSvgMarkup = $this->removeXMLDeclaration($xml->saveXML());
}
$markup = $cleanSvgMarkup;
if ($this->isNonEmptyString($options['title']))
$markup = $this->addTitleToMarkup($markup, $options['title']);