Remove flutter chat #26
3 changed files with 18 additions and 5 deletions
add pinned events content type
commit
05b15c44ec
|
|
@ -8,6 +8,7 @@ import "package:nexus/models/content/join_rules.dart";
|
||||||
import "package:nexus/models/content/membership.dart";
|
import "package:nexus/models/content/membership.dart";
|
||||||
import "package:nexus/models/content/message.dart";
|
import "package:nexus/models/content/message.dart";
|
||||||
import "package:nexus/models/content/name.dart";
|
import "package:nexus/models/content/name.dart";
|
||||||
|
import "package:nexus/models/content/pinned_events.dart";
|
||||||
import "package:nexus/models/content/power_levels.dart";
|
import "package:nexus/models/content/power_levels.dart";
|
||||||
import "package:nexus/models/content/server_acl.dart";
|
import "package:nexus/models/content/server_acl.dart";
|
||||||
import "package:nexus/models/content/topic.dart";
|
import "package:nexus/models/content/topic.dart";
|
||||||
|
|
@ -38,6 +39,7 @@ enum EventType {
|
||||||
avatar("m.room.avatar", AvatarContent.fromJson),
|
avatar("m.room.avatar", AvatarContent.fromJson),
|
||||||
topic("m.room.topic", TopicContent.fromJson),
|
topic("m.room.topic", TopicContent.fromJson),
|
||||||
name("m.room.name", NameContent.fromJson),
|
name("m.room.name", NameContent.fromJson),
|
||||||
|
pinnedEvents("m.room.pinned_events", PinnedEventsContent.fromJson),
|
||||||
message("m.room.message", MessageContent.fromJson);
|
message("m.room.message", MessageContent.fromJson);
|
||||||
|
|
||||||
final String type;
|
final String type;
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@ abstract class MessageContent extends Content with _$MessageContent {
|
||||||
|
|
||||||
@FreezedUnionValue("m.image")
|
@FreezedUnionValue("m.image")
|
||||||
const factory MessageContent.image({
|
const factory MessageContent.image({
|
||||||
required String msgtype,
|
|
||||||
required String body,
|
required String body,
|
||||||
String? format,
|
String? format,
|
||||||
String? formattedBody,
|
String? formattedBody,
|
||||||
|
|
@ -30,7 +29,6 @@ abstract class MessageContent extends Content with _$MessageContent {
|
||||||
|
|
||||||
@FreezedUnionValue("m.file")
|
@FreezedUnionValue("m.file")
|
||||||
const factory MessageContent.file({
|
const factory MessageContent.file({
|
||||||
required String msgtype,
|
|
||||||
required String body,
|
required String body,
|
||||||
String? format,
|
String? format,
|
||||||
String? formattedBody,
|
String? formattedBody,
|
||||||
|
|
@ -42,7 +40,6 @@ abstract class MessageContent extends Content with _$MessageContent {
|
||||||
|
|
||||||
@FreezedUnionValue("m.audio")
|
@FreezedUnionValue("m.audio")
|
||||||
const factory MessageContent.audio({
|
const factory MessageContent.audio({
|
||||||
required String msgtype,
|
|
||||||
required String body,
|
required String body,
|
||||||
String? format,
|
String? format,
|
||||||
String? formattedBody,
|
String? formattedBody,
|
||||||
|
|
@ -54,7 +51,6 @@ abstract class MessageContent extends Content with _$MessageContent {
|
||||||
|
|
||||||
@FreezedUnionValue("m.video")
|
@FreezedUnionValue("m.video")
|
||||||
const factory MessageContent.video({
|
const factory MessageContent.video({
|
||||||
required String msgtype,
|
|
||||||
required String body,
|
required String body,
|
||||||
String? format,
|
String? format,
|
||||||
String? formattedBody,
|
String? formattedBody,
|
||||||
|
|
@ -66,7 +62,6 @@ abstract class MessageContent extends Content with _$MessageContent {
|
||||||
|
|
||||||
@FreezedUnionValue("m.location")
|
@FreezedUnionValue("m.location")
|
||||||
const factory MessageContent.location({
|
const factory MessageContent.location({
|
||||||
required String msgtype,
|
|
||||||
required String body,
|
required String body,
|
||||||
required Uri geoUri,
|
required Uri geoUri,
|
||||||
}) = _LocationMessageContent;
|
}) = _LocationMessageContent;
|
||||||
|
|
|
||||||
16
lib/models/content/pinned_events.dart
Normal file
16
lib/models/content/pinned_events.dart
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
import "package:fast_immutable_collections/fast_immutable_collections.dart";
|
||||||
|
import "package:freezed_annotation/freezed_annotation.dart";
|
||||||
|
import "package:nexus/models/content/content.dart";
|
||||||
|
part "pinned_events.freezed.dart";
|
||||||
|
part "pinned_events.g.dart";
|
||||||
|
|
||||||
|
@freezed
|
||||||
|
abstract class PinnedEventsContent extends Content with _$PinnedEventsContent {
|
||||||
|
PinnedEventsContent._();
|
||||||
|
const factory PinnedEventsContent({
|
||||||
|
@Default(IList.empty()) IList<String> pinned,
|
||||||
|
}) = _PinnedEventsContent;
|
||||||
|
|
||||||
|
factory PinnedEventsContent.fromJson(Map<String, Object?> json) =>
|
||||||
|
_$PinnedEventsContentFromJson(json);
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue