* @method self name(string $name) */ class FormtemplateFactory extends Factory { public $model = Formtemplate::class; /** * Define the model's default state. * * @return array */ public function definition() { return [ 'name' => $this->faker->words(4, true), 'config' => [ 'sections' => [], ], ]; } /** * @param array $sections */ public function sections(array $sections): self { return $this->state(['config' => ['sections' => array_map(fn ($section) => $section->create(), $sections)]]); } /** * @param mixed $parameters */ public function __call($method, $parameters): self { return $this->state([str($method)->snake()->toString() => $parameters[0]]); } }