adapted to show the emails from the new api

This commit is contained in:
Juan Marulanda De Los Rios 2024-08-06 21:24:53 -04:00
parent cbf6f2aeaf
commit 67461e39f5

View File

@ -1,12 +1,8 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_widget_from_html/flutter_widget_from_html.dart';
// import 'package:flutter_widget_from_html/flutter_widget_from_html.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import 'dart:convert'; import 'dart:convert';
//TODO: copy hope_page.dart impl of iframe
import 'dart:ui_web' as ui; import 'dart:ui_web' as ui;
import 'dart:html' as html; import 'dart:html' as html;
// import 'package:flutter_html/flutter_html.dart';
class MailAddress { class MailAddress {
final String? name; final String? name;
@ -123,7 +119,7 @@ class _EmailPageState extends State<EmailPage> {
emails.clear(); emails.clear();
// emails = messagesMap.values.toList().expand((list) => list).toList(); // emails = messagesMap.values.toList().expand((list) => list).toList();
emails.addAll(allEmails); emails.addAll(allEmails);
print(emails); // print(emails);
; ;
}); });
} }
@ -133,7 +129,9 @@ class _EmailPageState extends State<EmailPage> {
try { try {
var url = Uri.http( var url = Uri.http(
'127.0.0.1:3001', 'get_thread_messages', {'id': threadId.toString()}); '127.0.0.1:3001', 'get_thread_messages', {'id': threadId.toString()});
// print(url);
var response = await http.get(url); var response = await http.get(url);
// print(response.body);
if (response.statusCode == 200) { if (response.statusCode == 200) {
List<dynamic> messagesJson = jsonDecode(response.body); List<dynamic> messagesJson = jsonDecode(response.body);
List<SerializableMessage> messages = List<SerializableMessage> messages =
@ -148,13 +146,15 @@ class _EmailPageState extends State<EmailPage> {
} }
} }
Future<String> _getEmailContent(String relativePath) async { Future<String> _getEmailContent(String id) async {
String content = r""" String content = r"""
"""; """;
try { try {
var url = Uri.http('127.0.0.1:3001', 'email', {'path': relativePath}); var url = Uri.http('127.0.0.1:3001', 'email', {'id': id});
print(url);
var response = await http.get(url); var response = await http.get(url);
print(response.body);
if (response.statusCode == 200) { if (response.statusCode == 200) {
print('ok'); print('ok');
content = response.body; content = response.body;
@ -239,7 +239,7 @@ class EmailListScreen extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
print(emails); // print(emails);
return Scaffold( return Scaffold(
appBar: AppBar( appBar: AppBar(
title: Text('Emails'), title: Text('Emails'),
@ -258,7 +258,7 @@ class EmailListScreen extends StatelessWidget {
), ),
trailing: Text(emails[index].date.toString()), trailing: Text(emails[index].date.toString()),
onTap: () async { onTap: () async {
String emailContent = await getEmailContent(emails[index].path); String emailContent = await getEmailContent(emails[index].id);
Navigator.push( Navigator.push(
context, context,
MaterialPageRoute( MaterialPageRoute(