Remove flutter chat #26
4 changed files with 13 additions and 12 deletions
add assertion for PowerLevelConfig.redaction
commit
a2e0b6bdb1
|
|
@ -13,6 +13,13 @@ class PowerLevelController extends Notifier<bool> {
|
||||||
|
|
||||||
@override
|
@override
|
||||||
bool build() {
|
bool build() {
|
||||||
|
if (config case EventPowerLevelConfig(:final eventType)) {
|
||||||
|
assert(
|
||||||
|
eventType != EventType.redaction,
|
||||||
|
"Checking power level for a redaction should use [PowerLevelConfig.redaction].",
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
final room = ref.watch(SelectedRoomController.provider);
|
final room = ref.watch(SelectedRoomController.provider);
|
||||||
final event = room?.events.firstWhereOrNull(
|
final event = room?.events.firstWhereOrNull(
|
||||||
(event) => event.rowId == room.state[EventType.powerLevels.type]?[""],
|
(event) => event.rowId == room.state[EventType.powerLevels.type]?[""],
|
||||||
|
|
@ -45,7 +52,7 @@ class PowerLevelController extends Notifier<bool> {
|
||||||
|
|
||||||
StatePowerLevelConfig(:final eventType) =>
|
StatePowerLevelConfig(:final eventType) =>
|
||||||
userLevel > (content.events[eventType.type] ?? content.stateDefault),
|
userLevel > (content.events[eventType.type] ?? content.stateDefault),
|
||||||
RedactPowerLevelConfig(:final targetUser) =>
|
RedactionPowerLevelConfig(:final targetUser) =>
|
||||||
userLevel >=
|
userLevel >=
|
||||||
(targetUser == user
|
(targetUser == user
|
||||||
? (content.events[EventType.redaction.type] ??
|
? (content.events[EventType.redaction.type] ??
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,6 @@ sealed class PowerLevelConfig with _$PowerLevelConfig {
|
||||||
const factory PowerLevelConfig.state({required EventType eventType}) =
|
const factory PowerLevelConfig.state({required EventType eventType}) =
|
||||||
StatePowerLevelConfig;
|
StatePowerLevelConfig;
|
||||||
|
|
||||||
const factory PowerLevelConfig.redact({required String targetUser}) =
|
const factory PowerLevelConfig.redaction({required String targetUser}) =
|
||||||
RedactPowerLevelConfig;
|
RedactionPowerLevelConfig;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -53,14 +53,8 @@ class RelationPreview extends ConsumerWidget {
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
Expanded(
|
Expanded(
|
||||||
child: Text(switch (relatedEvent?.content) {
|
child: Text(
|
||||||
|
switch (relatedEvent?.content) {},
|
||||||
_ => ""
|
|
||||||
}
|
|
||||||
|
|
||||||
relatedEvent?.metadata?["body"] ??
|
|
||||||
relatedEvent?.metadata?["eventType"] ??
|
|
||||||
"",
|
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
softWrap: false,
|
softWrap: false,
|
||||||
|
|
|
||||||
|
|
@ -168,7 +168,7 @@ class RoomChat extends HookConsumerWidget {
|
||||||
),
|
),
|
||||||
if (ref.watch(
|
if (ref.watch(
|
||||||
PowerLevelController.provider(
|
PowerLevelController.provider(
|
||||||
PowerLevelConfig.redact(targetUser: message.authorId),
|
PowerLevelConfig.redaction(targetUser: message.authorId),
|
||||||
),
|
),
|
||||||
))
|
))
|
||||||
PopupMenuItem(
|
PopupMenuItem(
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue