Вход Регистрация
Файл: vendor/nunomaduro/termwind/src/Html/PreRenderer.php
Строк: 57
<?php

declare(strict_types=1);

namespace 
TermwindHtml;

use 
TermwindComponentsElement;
use 
TermwindTermwind;
use 
TermwindValueObjectsNode;

/**
 * @internal
 */
final class PreRenderer
{
    
/**
     * Gets HTML content from a given node and converts to the content element.
     */
    
public function toElement(Node $node): Element
    
{
        
$lines explode("n"$node->getHtml());
        if (
reset($lines) === '') {
            
array_shift($lines);
        }

        if (
end($lines) === '') {
            
array_pop($lines);
        }

        
$maxStrLen array_reduce(
            
$lines,
            static 
fn (int $maxstring $line) => ($max strlen($line)) ? strlen($line) : $max,
            
0
        
);

        
$styles $node->getClassAttribute();
        
$html array_map(
            static 
fn (string $line) => (string) Termwind::div(str_pad($line$maxStrLen 3), $styles),
            
$lines
        
);

        return 
Termwind::raw(
            
implode(''$html)
        );
    }
}
Онлайн: 0
Реклама