| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- import 'package:e2ee_chat/common/global.dart';
- import 'package:e2ee_chat/model/message.dart';
- import 'package:e2ee_chat/model/user.dart';
- import 'package:flutter/cupertino.dart';
- import 'login.dart';
- enum DTMessageType {
- text,
- image
- }
- class SessionListModel extends ChangeNotifier {
- List<SessionModel> get sessions {
- var user = LoginModel().user;
- var list = <SessionModel>[];
- if (user != null) {
- var friends = user.friends;
- for (var i in friends) {
- list.add(SessionModel(i));
- }
- }
- return list;
- }
- int get count => sessions.length;
- }
- class SessionModel extends SessionListModel {
- // TODO: 仅支持单聊
- SessionModel(this._user);
- final User _user;
- /// 消息体
- Message get lastMessage => _user.messages.last;
- /// 未读数量
- int get unReadCount {
- // TODO: 未读消息数量
- return 0;
- }
- get chatName => _user.username;
- /// 单聊
- get isSingle => true;
- /// 群聊信息
- get isGroup => false;
- /// 消息免打扰
- get isDND => _user.isDND;
- /// 是否为置顶
- get isStick => _user.isStick;
- /// 特别关注
- get isSpecialAttention => _user.isSpecialAttention;
- // TODO: 是否 @ 你
- get isAtYou => false;
- // TODO: 是否 @ 全部
- get isAtAll => false;
- // TODO: user avatar
- get avatar => Global.defaultAvatar;
- }
|