*/ class WatchedEventFactory extends Factory { public function definition(): array { $startsAt = fake()->dateTimeBetween('-30 days', '+30 days'); $endsAt = (clone $startsAt)->modify('+'.fake()->numberBetween(1, 14).' days'); return [ 'label' => fake()->sentence(3), 'starts_at' => $startsAt, 'ends_at' => $endsAt, 'notes' => fake()->boolean() ? fake()->paragraph() : null, ]; } public function active(): static { return $this->state([ 'starts_at' => now()->subDays(2), 'ends_at' => now()->addDays(2), ]); } public function inactive(): static { return $this->state([ 'starts_at' => now()->subDays(30), 'ends_at' => now()->subDays(15), ]); } }