HOME


Mini Shell 1.0
DIR: /home/cardxfeb/www/vendor/blade-ui-kit/blade-icons/src/Components/
Upload File :
Current File : //home/cardxfeb/www/vendor/blade-ui-kit/blade-icons/src/Components/Icon.php
<?php

declare(strict_types=1);

namespace BladeUI\Icons\Components;

use Closure;
use Illuminate\View\Component;

final class Icon extends Component
{
    public string $name;

    public function __construct(string $name)
    {
        $this->name = $name;
    }

    public function render(): Closure
    {
        return function (array $data) {
            $attributes = $data['attributes']->getIterator()->getArrayCopy();

            $class = $attributes['class'] ?? '';

            unset($attributes['class']);

            return svg($this->name, $class, $attributes)->toHtml();
        };
    }
}