, * schedules: Collection, * services: Collection * } */ public function get(Tenant $tenant): array { $attributes = Attribute::query() ->where('tenant_codigo', $tenant->codigo) ->whereIn('codigo', ['horario', 'servicio']) ->with('options') ->get() ->keyBy('codigo'); return [ 'event_dates' => $tenant->eventDates() ->whereNull('rescheduled_to_event_date_id') ->whereNull('suspended_at') ->with('validityTime') ->get() ->filter(fn (EventDate $eventDate): bool => in_array( $eventDate->status, [EventDateStatus::Scheduled, EventDateStatus::InProgress], true, )) ->values(), 'schedules' => $attributes->get('horario')?->options ?? new Collection, 'services' => $attributes->get('servicio')?->options ?? new Collection, ]; } }