import 'package:flutter/material.dart'; import 'package:prosapp_web_app/models/usuario_profesional.dart'; import 'package:prosapp_web_app/services/api_service.dart'; class ProfessionalsProvider extends ChangeNotifier { List professionals = []; bool isLoading = true; bool _initialized = false; final _api = ApiService.instance; void updateCity(String? city) { // Only used to trigger the initial load when auth becomes available. if (!_initialized) { _initialized = true; getProfessionals(); } } Future getProfessionals({String? search}) async { isLoading = true; notifyListeners(); try { final path = (search != null && search.trim().isNotEmpty) ? '/professionals?search=${Uri.encodeComponent(search.trim())}' : '/professionals'; final res = await _api.get(path); final list = (res is Map ? res['data'] : res) as List; professionals = list .map((e) => UsuarioProfesional.fromDocument(e as Map)) .toList(); } catch (e) { print('Error obteniendo profesionales: $e'); } finally { isLoading = false; notifyListeners(); } } }