parent
522df86976
commit
029efe7c0a
1 changed files with 225 additions and 70 deletions
22
lib/controllers/tombstone.dart
Normal file
22
lib/controllers/tombstone.dart
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
import "package:nexus/controllers/rooms.dart";
|
||||
import "package:nexus/models/content/content.dart";
|
||||
import "package:nexus/models/event.dart";
|
||||
|
||||
class TombstoneController(final String roomId) extends Notifier<Event?> {
|
||||
@override
|
||||
Event? build() => ref.watch(
|
||||
RoomsController.provider.select((rooms) {
|
||||
final room = rooms[roomId];
|
||||
return switch (room?.state[EventType.tombstone.type]?[""]) {
|
||||
final rowId? => room?.events[rowId],
|
||||
null => null,
|
||||
};
|
||||
}),
|
||||
);
|
||||
|
||||
static final provider = NotifierProvider.family
|
||||
.autoDispose<TombstoneController, Event?, String>(
|
||||
TombstoneController.new,
|
||||
);
|
||||
}
|
||||
Loading…
Reference in a new issue