*/ class ContactMessageFactory extends Factory { /** * @return array */ public function definition(): array { return [ 'portal' => 'presseecho', 'topic' => fake()->randomElement(ContactMessageTopic::cases()), 'status' => ContactMessageStatus::Open, 'name' => fake()->name(), 'email' => fake()->safeEmail(), 'message' => fake()->sentence(12), 'page_url' => fake()->url(), 'payload' => null, 'requester_ip' => fake()->ipv4(), ]; } public function topic(ContactMessageTopic $topic): static { return $this->state(['topic' => $topic]); } public function resolved(): static { return $this->state([ 'status' => ContactMessageStatus::Resolved, 'resolved_at' => now(), ]); } }