|
|
|
|
@ -1,15 +1,14 @@
|
|
|
|
|
import 'dart:developer';
|
|
|
|
|
|
|
|
|
|
import 'package:fluffychat/pangea/extensions/pangea_event_extension.dart';
|
|
|
|
|
import 'package:fluffychat/pangea/models/pangea_choreo_event.dart';
|
|
|
|
|
import 'package:fluffychat/pangea/models/pangea_token_model.dart';
|
|
|
|
|
import 'package:fluffychat/pangea/repo/tokens_repo.dart';
|
|
|
|
|
import 'package:flutter/foundation.dart';
|
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
|
|
|
|
|
|
import 'package:matrix/matrix.dart';
|
|
|
|
|
import 'package:sentry_flutter/sentry_flutter.dart';
|
|
|
|
|
|
|
|
|
|
import 'package:fluffychat/pangea/extensions/pangea_event_extension.dart';
|
|
|
|
|
import 'package:fluffychat/pangea/models/pangea_choreo_event.dart';
|
|
|
|
|
import 'package:fluffychat/pangea/models/pangea_token_model.dart';
|
|
|
|
|
import 'package:fluffychat/pangea/repo/tokens_repo.dart';
|
|
|
|
|
import '../../widgets/matrix.dart';
|
|
|
|
|
import '../constants/language_keys.dart';
|
|
|
|
|
import '../constants/pangea_event_types.dart';
|
|
|
|
|
@ -62,16 +61,19 @@ class RepresentationEvent {
|
|
|
|
|
if (_tokens != null) return _tokens!.tokens;
|
|
|
|
|
|
|
|
|
|
if (_event == null) {
|
|
|
|
|
debugger(when: kDebugMode);
|
|
|
|
|
ErrorHandler.logError(
|
|
|
|
|
m: '_event and _tokens both null',
|
|
|
|
|
s: StackTrace.current,
|
|
|
|
|
);
|
|
|
|
|
// debugger(when: kDebugMode);
|
|
|
|
|
// ErrorHandler.logError(
|
|
|
|
|
// m: '_event and _tokens both null',
|
|
|
|
|
// s: StackTrace.current,
|
|
|
|
|
// );
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
final Set<Event> tokenEvents =
|
|
|
|
|
_event!.aggregatedEvents(timeline, PangeaEventTypes.tokens);
|
|
|
|
|
final Set<Event> tokenEvents = _event?.aggregatedEvents(
|
|
|
|
|
timeline,
|
|
|
|
|
PangeaEventTypes.tokens,
|
|
|
|
|
) ??
|
|
|
|
|
{};
|
|
|
|
|
|
|
|
|
|
if (tokenEvents.isEmpty) return null;
|
|
|
|
|
|
|
|
|
|
@ -79,13 +81,13 @@ class RepresentationEvent {
|
|
|
|
|
debugger(when: kDebugMode);
|
|
|
|
|
Sentry.addBreadcrumb(
|
|
|
|
|
Breadcrumb(
|
|
|
|
|
message: "Token events for representation ${_event!.eventId}: "
|
|
|
|
|
message: "Token events for representation ${_event?.eventId}: "
|
|
|
|
|
"Content: ${tokenEvents.map((e) => e.content).toString()}"
|
|
|
|
|
"Type: ${tokenEvents.map((e) => e.type).toString()}",
|
|
|
|
|
),
|
|
|
|
|
);
|
|
|
|
|
ErrorHandler.logError(
|
|
|
|
|
m: 'should not have more than one tokenEvent per representation ${_event!.eventId}',
|
|
|
|
|
m: 'should not have more than one tokenEvent per representation ${_event?.eventId}',
|
|
|
|
|
s: StackTrace.current,
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
@ -97,12 +99,13 @@ class RepresentationEvent {
|
|
|
|
|
|
|
|
|
|
Future<List<PangeaToken>?> tokensGlobal(BuildContext context) async {
|
|
|
|
|
if (tokens != null) return tokens!;
|
|
|
|
|
|
|
|
|
|
if (_event == null) {
|
|
|
|
|
debugger(when: kDebugMode);
|
|
|
|
|
ErrorHandler.logError(
|
|
|
|
|
m: '_event and _tokens both null',
|
|
|
|
|
s: StackTrace.current,
|
|
|
|
|
);
|
|
|
|
|
// debugger(when: kDebugMode);
|
|
|
|
|
// ErrorHandler.logError(
|
|
|
|
|
// m: '_event and _tokens both null',
|
|
|
|
|
// s: StackTrace.current,
|
|
|
|
|
// );
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@ -141,16 +144,16 @@ class RepresentationEvent {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
final Set<Event> choreoMatrixEvents =
|
|
|
|
|
_event!.aggregatedEvents(timeline, PangeaEventTypes.choreoRecord);
|
|
|
|
|
_event?.aggregatedEvents(timeline, PangeaEventTypes.choreoRecord) ?? {};
|
|
|
|
|
|
|
|
|
|
if (choreoMatrixEvents.isEmpty) return null;
|
|
|
|
|
|
|
|
|
|
if (choreoMatrixEvents.length > 1) {
|
|
|
|
|
debugger(when: kDebugMode);
|
|
|
|
|
ErrorHandler.logError(
|
|
|
|
|
m: 'should not have more than one choreoEvent per representation ${_event!.eventId}',
|
|
|
|
|
m: 'should not have more than one choreoEvent per representation ${_event?.eventId}',
|
|
|
|
|
s: StackTrace.current,
|
|
|
|
|
data: _event!.toJson(),
|
|
|
|
|
data: _event?.toJson(),
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|