Explore page

This commit is contained in:
2024-03-23 23:05:04 +08:00
parent 8bb9c960c1
commit a3b4706ca2
15 changed files with 540 additions and 284 deletions

43
lib/widgets/feed.dart Normal file
View File

@ -0,0 +1,43 @@
import 'package:flutter/material.dart';
import 'package:flutter_markdown/flutter_markdown.dart';
import 'package:solaragent/models/feed.dart';
class FeedItem extends StatelessWidget {
final Feed item;
const FeedItem({super.key, required this.item});
String getDescription(String desc) =>
desc.isEmpty ? "No description yet." : desc;
@override
Widget build(BuildContext context) {
return Container(
padding: const EdgeInsets.symmetric(horizontal: 10),
child: Column(
children: [
Container(
color: Colors.grey[50],
child: ListTile(
title: Text(item.author.name),
leading: CircleAvatar(
backgroundImage: NetworkImage(item.author.avatar),
),
subtitle: Text(
getDescription(item.author.description),
overflow: TextOverflow.ellipsis,
maxLines: 1,
softWrap: false,
),
),
),
Markdown(
data: item.content,
shrinkWrap: true,
physics: const NeverScrollableScrollPhysics(),
),
],
),
);
}
}

View File

@ -1,9 +1,5 @@
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
import '../auth.dart';
import 'package:solaragent/auth.dart';
class NameCard extends StatelessWidget {
const NameCard({super.key, this.onLogin, this.onCheck});

View File

@ -5,7 +5,7 @@ class AgentNavigation extends StatefulWidget {
const AgentNavigation({super.key});
static const List<(String, NavigationDestination)> destinations = [
('/', NavigationDestination(icon: Icon(Icons.home), label: 'Home')),
('/', NavigationDestination(icon: Icon(Icons.explore), label: 'Explore')),
('/notifications', NavigationDestination(icon: Icon(Icons.notifications), label: 'Notifications')),
('/account', NavigationDestination(icon: Icon(Icons.account_circle), label: 'Account')),
];