40 lines
1.1 KiB
PHP
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', ""),
|
|
);
|
|
}
|
|
} |