Files
lucent-laravel/src/Field/Rich/Data.php
T
2024-10-11 16:04:44 +03:00

40 lines
1.1 KiB
PHP

<?php
namespace Lucent\Field\Rich;
use Lucent\Field\FieldData;
class Data extends FieldData
{
public function __construct(
public string $name,
public string $label,
public bool $required = false,
public bool $nullable = false,
public string $default = "",
public string $help = "",
public array $collections = [],
public ?int $min = null,
public ?int $max = null,
public bool $readonly = false,
public string $group = "",
)
{
}
public static function fromArray(array $data): self
{
return new self(
name: data_get($data, 'name'),
label: data_get($data, 'label'),
required: data_get($data, 'required', false),
nullable: data_get($data, 'nullable', false),
default: data_get($data, 'default', ""),
help: data_get($data, 'help', ""),
min: data_get($data, 'min'),
max: data_get($data, 'max'),
readonly: data_get($data, 'readonly', false),
group: data_get($data, 'group', ""),
);
}
}