picea-ui/src/Component/UiPopup.php
2019-11-08 11:42:11 -05:00

31 lines
777 B
PHP

<?php
namespace Picea\Ui\Component;
use Picea\Ui\Common\UiElement;
use Picea\Extension\Extension;
use Picea\Extension\ExtensionTrait;
class UiPopup extends UiElement implements Extension {
use ExtensionTrait;
public string $token = "ui.popup";
public string $tag = "div";
public array $attributes = [
'class' => 'ui-popup',
];
public function parse(/*\Picae\Compiler\Context*/ &$context, ?string $arguments, string $token) : string
{
return "<?php echo ( new \\" . static::class . "() )->buildAttributes($arguments) ?>";
}
public function buildAttributes(string $name, array $variables = []) : string
{
return json_encode([ "name" => $name, "vars" => $variables ], JSON_HEX_APOS | JSON_HEX_QUOT);
}
}