getLocalMessages static method

Future<List> getLocalMessages()

Implementation

static Future<List<dynamic>> getLocalMessages() async {
  if (kDebugMode) print('📂 getLocalMessages: leyendo mensajes locales...');
  final pref = await SharedPreferences.getInstance();

  if (pref.getString('messages') != null) {
    var encodedMessages = pref.getString('messages');
    List decodedList = jsonDecode(encodedMessages!);
    if (kDebugMode) {
      print('📂 getLocalMessages: total → ${decodedList.length}');
      for (int i = 0; i < decodedList.length; i++) {
        final msg = decodedList[i]["message"];
        final texto = msg is List && msg.isNotEmpty ? msg[0]["message"] : msg?.toString() ?? "sin texto";
        print('📂 [$i] messageDate=${decodedList[i]["messageDate"]} | messageId=${decodedList[i]["messageId"]} | type=${decodedList[i]["type"]} | isUser=${decodedList[i]["isUser"]} | message=$texto');
      }
    }
    return Future.value(decodedList);
  }
  if (kDebugMode) print('📂 getLocalMessages: no hay mensajes guardados');
  return [];
}