feat: 重构 Reminder Notification 系统并更新应用包名
This commit is contained in:
@@ -17,6 +17,14 @@ class InboxApi {
|
||||
final response = await _client.patch('$_prefix/$messageId/read');
|
||||
return InboxMessageResponse.fromJson(response.data);
|
||||
}
|
||||
|
||||
Future<Stream<String>> streamEvents({String? lastEventId}) {
|
||||
final headers = <String, String>{'Accept': 'text/event-stream'};
|
||||
if (lastEventId != null && lastEventId.isNotEmpty) {
|
||||
headers['Last-Event-ID'] = lastEventId;
|
||||
}
|
||||
return _client.getSseLines('$_prefix/stream', headers: headers);
|
||||
}
|
||||
}
|
||||
|
||||
class InboxMessageResponse {
|
||||
|
||||
@@ -4,7 +4,10 @@ import '../../../../data/cache/cached_repository.dart';
|
||||
import '../models/inbox_message.dart';
|
||||
|
||||
abstract class InboxRepository {
|
||||
Future<List<InboxMessage>> getMessages({bool? isRead});
|
||||
Future<List<InboxMessage>> getMessages({
|
||||
bool? isRead,
|
||||
bool forceRefresh = false,
|
||||
});
|
||||
Future<InboxMessage> markAsRead(String messageId);
|
||||
}
|
||||
|
||||
@@ -26,9 +29,13 @@ class InboxRepositoryImpl extends CachedRepository<List<InboxMessage>>
|
||||
);
|
||||
|
||||
@override
|
||||
Future<List<InboxMessage>> getMessages({bool? isRead}) async {
|
||||
Future<List<InboxMessage>> getMessages({
|
||||
bool? isRead,
|
||||
bool forceRefresh = false,
|
||||
}) async {
|
||||
return getOrLoad(
|
||||
key: _messagesKey(isRead),
|
||||
forceRefresh: forceRefresh,
|
||||
loadFromRemote: () => _loadMessagesFromRemote(isRead: isRead),
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user