[ 'title' => 'Текст заголовка', 'type' => FieldType::TEXT ], 'header-required' => [ 'title' => 'Текст заголовка', 'type' => FieldType::TEXT, 'required' => true ], 'documents' => [ 'title' => 'Документы', 'type' => FieldType::DOCUMENT, 'multiple' => true ], 'documents-required' => [ 'title' => 'Документы', 'type' => FieldType::DOCUMENT, 'multiple' => true, 'required' => true ], 'text' => [ 'title' => 'Содержимое текстового блока', 'type' => FieldType::TEXT ], 'text-required' => [ 'title' => 'Содержимое текстового блока', 'type' => FieldType::TEXT, 'required' => true ], 'html' => [ 'title' => 'Содержимое текстового блока', 'type' => FieldType::HTML ], 'html-required' => [ 'title' => 'Содержимое текстового блока', 'type' => FieldType::HTML, 'required' => true ], 'list-type' => [ 'title' => 'Вид списка', 'type' => FieldType::RELATION, 'required' => true, 'params' => [ 'related' => DictionaryItem::class, 'transformer' => DictionaryItemTransformer::class, 'options' => ['show' => true, 'whereHas' => ['dictionary' => ['name' => 'list-types']]] ] ], 'list-items' => [ 'title' => 'Элементы списка', 'type' => FieldType::TEXT, 'multiple' => true, 'required' => true ], 'images' => [ 'title' => 'Изображения', 'type' => FieldType::IMAGE, 'multiple' => true ], 'images-required' => [ 'title' => 'Изображения', 'type' => FieldType::IMAGE, 'multiple' => true, 'required' => true ] ]; public function run() { collect($this->fields)->each(function($data, $name) { $field = Field::firstOrCreate(['name' => $name]); $field->update($data); }); } }