From d87f86bee1db83fb2c783fa21521ae482a0935f7 Mon Sep 17 00:00:00 2001 From: ggurdin <46800240+ggurdin@users.noreply.github.com> Date: Fri, 8 Aug 2025 12:21:46 -0400 Subject: [PATCH] 3667 replace room creation state event with big image (#3670) * build: reorganize activity-related files * chore: add roles to instances of activity plan models * chore: add avatar url to role object * chore: in activity sessions, replace room creation state event with larger image --- lib/pages/chat/chat_view.dart | 6 +-- lib/pages/chat/events/message.dart | 11 ++++- .../events/room_creation_state_event.dart | 4 -- lib/pages/new_group/new_group.dart | 2 +- .../activity_generator.dart | 13 +++--- .../activity_generator_view.dart | 2 +- .../activity_mode_list_repo.dart | 2 +- .../activity_plan_card.dart | 0 .../activity_plan_generation_repo.dart | 0 .../learning_objective_list_repo.dart | 2 +- .../list_request_schema.dart | 0 .../media_enum.dart | 0 .../topic_list_repo.dart | 2 +- .../activity_planner/activity_plan_model.dart | 7 +++- .../activity_plan_request.dart | 2 +- .../activity_planner_builder.dart | 3 +- .../activity_planner_settings_form.dart | 1 - ...tivity_planner_settings_search_widget.dart | 40 ------------------- .../suggestion_form_field.dart | 2 +- .../activity_creation_state_event.dart | 40 +++++++++++++++++++ .../activity_finished_status_message.dart | 8 ++-- .../activity_participant_indicator.dart | 2 +- .../activity_pinned_message.dart | 2 +- .../activity_results_carousel.dart | 2 +- .../activity_role_model.dart | 0 .../activity_roles_model.dart | 2 +- .../activity_room_extension.dart | 15 ++++--- .../activity_state_event.dart | 4 +- .../activity_status_message.dart | 6 +-- .../activity_unfinished_status_message.dart | 6 +-- .../activity_search_request.dart | 2 +- .../activity_suggestion_dialog.dart | 2 +- .../activity_suggestions_area.dart | 2 +- .../extensions/pangea_room_extension.dart | 2 +- 34 files changed, 100 insertions(+), 94 deletions(-) rename lib/pangea/{activity_planner => activity_generator}/activity_mode_list_repo.dart (95%) rename lib/pangea/{activity_planner => activity_generator}/activity_plan_card.dart (100%) rename lib/pangea/{activity_planner => activity_generator}/activity_plan_generation_repo.dart (100%) rename lib/pangea/{activity_planner => activity_generator}/learning_objective_list_repo.dart (95%) rename lib/pangea/{activity_planner => activity_generator}/list_request_schema.dart (100%) rename lib/pangea/{activity_planner => activity_generator}/media_enum.dart (100%) rename lib/pangea/{activity_planner => activity_generator}/topic_list_repo.dart (95%) delete mode 100644 lib/pangea/activity_planner/activity_planner_settings_form.dart delete mode 100644 lib/pangea/activity_planner/activity_planner_settings_search_widget.dart create mode 100644 lib/pangea/activity_sessions/activity_creation_state_event.dart rename lib/pangea/{activity_planner => activity_sessions}/activity_finished_status_message.dart (96%) rename lib/pangea/{activity_planner => activity_sessions}/activity_participant_indicator.dart (96%) rename lib/pangea/{activity_planner => activity_sessions}/activity_pinned_message.dart (98%) rename lib/pangea/{activity_planner => activity_sessions}/activity_results_carousel.dart (98%) rename lib/pangea/{activity_planner => activity_sessions}/activity_role_model.dart (100%) rename lib/pangea/{activity_planner => activity_sessions}/activity_roles_model.dart (95%) rename lib/pangea/{activity_planner => activity_sessions}/activity_room_extension.dart (95%) rename lib/pangea/{chat/widgets => activity_sessions}/activity_state_event.dart (89%) rename lib/pangea/{activity_planner => activity_sessions}/activity_status_message.dart (82%) rename lib/pangea/{activity_planner => activity_sessions}/activity_unfinished_status_message.dart (92%) diff --git a/lib/pages/chat/chat_view.dart b/lib/pages/chat/chat_view.dart index f1914204a..9ee9d4241 100644 --- a/lib/pages/chat/chat_view.dart +++ b/lib/pages/chat/chat_view.dart @@ -13,9 +13,9 @@ import 'package:fluffychat/pages/chat/chat_app_bar_list_tile.dart'; import 'package:fluffychat/pages/chat/chat_app_bar_title.dart'; import 'package:fluffychat/pages/chat/chat_event_list.dart'; import 'package:fluffychat/pages/chat/pinned_events.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_pinned_message.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_status_message.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_pinned_message.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_status_message.dart'; import 'package:fluffychat/pangea/chat/widgets/chat_input_bar.dart'; import 'package:fluffychat/pangea/chat/widgets/chat_input_bar_header.dart'; import 'package:fluffychat/pangea/chat/widgets/chat_view_background.dart'; diff --git a/lib/pages/chat/events/message.dart b/lib/pages/chat/events/message.dart index 654ed09db..0d6b364ab 100644 --- a/lib/pages/chat/events/message.dart +++ b/lib/pages/chat/events/message.dart @@ -10,7 +10,9 @@ import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pages/chat/chat.dart'; import 'package:fluffychat/pages/chat/events/pangea_message_reactions.dart'; import 'package:fluffychat/pages/chat/events/room_creation_state_event.dart'; -import 'package:fluffychat/pangea/chat/widgets/activity_state_event.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_creation_state_event.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_state_event.dart'; import 'package:fluffychat/pangea/common/widgets/pressable_button.dart'; import 'package:fluffychat/pangea/events/constants/pangea_event_types.dart'; import 'package:fluffychat/pangea/events/event_wrappers/pangea_message_event.dart'; @@ -125,7 +127,12 @@ class Message extends StatelessWidget { return const SizedBox.shrink(); } if (event.type == EventTypes.RoomCreate) { - return RoomCreationStateEvent(event: event); + // #Pangea + // return RoomCreationStateEvent(event: event); + return event.room.activityPlan != null + ? ActivityCreationStateEvent(event: event) + : RoomCreationStateEvent(event: event); + // Pangea# } // #Pangea diff --git a/lib/pages/chat/events/room_creation_state_event.dart b/lib/pages/chat/events/room_creation_state_event.dart index 576e84b0b..f02770ee1 100644 --- a/lib/pages/chat/events/room_creation_state_event.dart +++ b/lib/pages/chat/events/room_creation_state_event.dart @@ -6,7 +6,6 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/config/app_config.dart'; import 'package:fluffychat/l10n/l10n.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; import 'package:fluffychat/pangea/instructions/instructions_enum.dart'; import 'package:fluffychat/pangea/instructions/instructions_inline_tooltip.dart'; import 'package:fluffychat/utils/date_time_extension.dart'; @@ -67,9 +66,6 @@ class RoomCreationStateEventState extends State { // child: ConstrainedBox( child: Column( children: [ - // https://github.com/pangeachat/client/issues/3639 - if (widget.event.room.isActiveInActivity) - const SizedBox(height: 60.0), ConstrainedBox( // Pangea# constraints: const BoxConstraints(maxWidth: 256), diff --git a/lib/pages/new_group/new_group.dart b/lib/pages/new_group/new_group.dart index 60975b758..a4c89a2ce 100644 --- a/lib/pages/new_group/new_group.dart +++ b/lib/pages/new_group/new_group.dart @@ -9,7 +9,7 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pages/new_group/new_group_view.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_model.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; import 'package:fluffychat/pangea/chat/constants/default_power_level.dart'; import 'package:fluffychat/pangea/common/utils/error_handler.dart'; import 'package:fluffychat/pangea/common/utils/firebase_analytics.dart'; diff --git a/lib/pangea/activity_generator/activity_generator.dart b/lib/pangea/activity_generator/activity_generator.dart index abb964e26..41c9b7097 100644 --- a/lib/pangea/activity_generator/activity_generator.dart +++ b/lib/pangea/activity_generator/activity_generator.dart @@ -6,14 +6,14 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/config/app_config.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pangea/activity_generator/activity_generator_view.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_mode_list_repo.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_plan_generation_repo.dart'; +import 'package:fluffychat/pangea/activity_generator/activity_mode_list_repo.dart'; +import 'package:fluffychat/pangea/activity_generator/activity_plan_generation_repo.dart'; +import 'package:fluffychat/pangea/activity_generator/learning_objective_list_repo.dart'; +import 'package:fluffychat/pangea/activity_generator/list_request_schema.dart'; +import 'package:fluffychat/pangea/activity_generator/media_enum.dart'; +import 'package:fluffychat/pangea/activity_generator/topic_list_repo.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_model.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_request.dart'; -import 'package:fluffychat/pangea/activity_planner/learning_objective_list_repo.dart'; -import 'package:fluffychat/pangea/activity_planner/list_request_schema.dart'; -import 'package:fluffychat/pangea/activity_planner/media_enum.dart'; -import 'package:fluffychat/pangea/activity_planner/topic_list_repo.dart'; import 'package:fluffychat/pangea/activity_suggestions/activity_suggestions_constants.dart'; import 'package:fluffychat/pangea/common/utils/error_handler.dart'; import 'package:fluffychat/pangea/learning_settings/constants/language_constants.dart'; @@ -191,6 +191,7 @@ class ActivityGeneratorState extends State { instructions: activity.instructions, vocab: activity.vocab, imageURL: imageUrl, + roles: activity.roles, ); } }); diff --git a/lib/pangea/activity_generator/activity_generator_view.dart b/lib/pangea/activity_generator/activity_generator_view.dart index 4a2a70e70..1c7e5da00 100644 --- a/lib/pangea/activity_generator/activity_generator_view.dart +++ b/lib/pangea/activity_generator/activity_generator_view.dart @@ -6,7 +6,7 @@ import 'package:material_symbols_icons/symbols.dart'; import 'package:fluffychat/config/app_config.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pangea/activity_generator/activity_generator.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_plan_card.dart'; +import 'package:fluffychat/pangea/activity_generator/activity_plan_card.dart'; import 'package:fluffychat/pangea/activity_planner/activity_planner_builder.dart'; import 'package:fluffychat/pangea/activity_planner/suggestion_form_field.dart'; import 'package:fluffychat/pangea/activity_suggestions/activity_suggestions_constants.dart'; diff --git a/lib/pangea/activity_planner/activity_mode_list_repo.dart b/lib/pangea/activity_generator/activity_mode_list_repo.dart similarity index 95% rename from lib/pangea/activity_planner/activity_mode_list_repo.dart rename to lib/pangea/activity_generator/activity_mode_list_repo.dart index 9b4db5172..9aec9588c 100644 --- a/lib/pangea/activity_planner/activity_mode_list_repo.dart +++ b/lib/pangea/activity_generator/activity_mode_list_repo.dart @@ -3,7 +3,7 @@ import 'dart:convert'; import 'package:get_storage/get_storage.dart'; import 'package:http/http.dart'; -import 'package:fluffychat/pangea/activity_planner/list_request_schema.dart'; +import 'package:fluffychat/pangea/activity_generator/list_request_schema.dart'; import 'package:fluffychat/pangea/common/config/environment.dart'; import 'package:fluffychat/pangea/common/network/urls.dart'; import 'package:fluffychat/widgets/matrix.dart'; diff --git a/lib/pangea/activity_planner/activity_plan_card.dart b/lib/pangea/activity_generator/activity_plan_card.dart similarity index 100% rename from lib/pangea/activity_planner/activity_plan_card.dart rename to lib/pangea/activity_generator/activity_plan_card.dart diff --git a/lib/pangea/activity_planner/activity_plan_generation_repo.dart b/lib/pangea/activity_generator/activity_plan_generation_repo.dart similarity index 100% rename from lib/pangea/activity_planner/activity_plan_generation_repo.dart rename to lib/pangea/activity_generator/activity_plan_generation_repo.dart diff --git a/lib/pangea/activity_planner/learning_objective_list_repo.dart b/lib/pangea/activity_generator/learning_objective_list_repo.dart similarity index 95% rename from lib/pangea/activity_planner/learning_objective_list_repo.dart rename to lib/pangea/activity_generator/learning_objective_list_repo.dart index cc08beabe..2f88256cd 100644 --- a/lib/pangea/activity_planner/learning_objective_list_repo.dart +++ b/lib/pangea/activity_generator/learning_objective_list_repo.dart @@ -3,7 +3,7 @@ import 'dart:convert'; import 'package:get_storage/get_storage.dart'; import 'package:http/http.dart'; -import 'package:fluffychat/pangea/activity_planner/list_request_schema.dart'; +import 'package:fluffychat/pangea/activity_generator/list_request_schema.dart'; import 'package:fluffychat/pangea/common/config/environment.dart'; import 'package:fluffychat/pangea/common/network/urls.dart'; import 'package:fluffychat/widgets/matrix.dart'; diff --git a/lib/pangea/activity_planner/list_request_schema.dart b/lib/pangea/activity_generator/list_request_schema.dart similarity index 100% rename from lib/pangea/activity_planner/list_request_schema.dart rename to lib/pangea/activity_generator/list_request_schema.dart diff --git a/lib/pangea/activity_planner/media_enum.dart b/lib/pangea/activity_generator/media_enum.dart similarity index 100% rename from lib/pangea/activity_planner/media_enum.dart rename to lib/pangea/activity_generator/media_enum.dart diff --git a/lib/pangea/activity_planner/topic_list_repo.dart b/lib/pangea/activity_generator/topic_list_repo.dart similarity index 95% rename from lib/pangea/activity_planner/topic_list_repo.dart rename to lib/pangea/activity_generator/topic_list_repo.dart index 299737403..3642a6ccc 100644 --- a/lib/pangea/activity_planner/topic_list_repo.dart +++ b/lib/pangea/activity_generator/topic_list_repo.dart @@ -3,7 +3,7 @@ import 'dart:convert'; import 'package:get_storage/get_storage.dart'; import 'package:http/http.dart'; -import 'package:fluffychat/pangea/activity_planner/list_request_schema.dart'; +import 'package:fluffychat/pangea/activity_generator/list_request_schema.dart'; import 'package:fluffychat/pangea/common/config/environment.dart'; import 'package:fluffychat/pangea/common/network/urls.dart'; import 'package:fluffychat/widgets/matrix.dart'; diff --git a/lib/pangea/activity_planner/activity_plan_model.dart b/lib/pangea/activity_planner/activity_plan_model.dart index 20c87843b..410974e4b 100644 --- a/lib/pangea/activity_planner/activity_plan_model.dart +++ b/lib/pangea/activity_planner/activity_plan_model.dart @@ -1,6 +1,7 @@ +import 'package:flutter/foundation.dart'; + import 'package:fluffychat/pangea/activity_planner/activity_plan_request.dart'; import 'package:fluffychat/pangea/common/constants/model_keys.dart'; -import 'package:flutter/foundation.dart'; class ActivityPlanModel { final String bookmarkId; @@ -181,20 +182,24 @@ class Vocab { class Role { final String name; + final String? avatarUrl; Role({ required this.name, + this.avatarUrl, }); factory Role.fromJson(Map json) { return Role( name: json['name'], + avatarUrl: json['avatar_url'], ); } Map toJson() { return { 'name': name, + 'avatar_url': avatarUrl, }; } } diff --git a/lib/pangea/activity_planner/activity_plan_request.dart b/lib/pangea/activity_planner/activity_plan_request.dart index 3fabd9eb7..61a1a4ae8 100644 --- a/lib/pangea/activity_planner/activity_plan_request.dart +++ b/lib/pangea/activity_planner/activity_plan_request.dart @@ -1,4 +1,4 @@ -import 'package:fluffychat/pangea/activity_planner/media_enum.dart'; +import 'package:fluffychat/pangea/activity_generator/media_enum.dart'; import 'package:fluffychat/pangea/common/constants/model_keys.dart'; import 'package:fluffychat/pangea/learning_settings/enums/language_level_type_enum.dart'; diff --git a/lib/pangea/activity_planner/activity_planner_builder.dart b/lib/pangea/activity_planner/activity_planner_builder.dart index 078f3375d..df1bf4e4e 100644 --- a/lib/pangea/activity_planner/activity_planner_builder.dart +++ b/lib/pangea/activity_planner/activity_planner_builder.dart @@ -8,8 +8,8 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_model.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_request.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; import 'package:fluffychat/pangea/activity_planner/bookmarked_activities_repo.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; import 'package:fluffychat/pangea/chat/constants/default_power_level.dart'; import 'package:fluffychat/pangea/common/utils/error_handler.dart'; import 'package:fluffychat/pangea/extensions/join_rule_extension.dart'; @@ -102,6 +102,7 @@ class ActivityPlannerBuilderState extends State { instructions: instructionsController.text, vocab: vocab, imageURL: imageURL, + roles: widget.initialActivity.roles, ); } diff --git a/lib/pangea/activity_planner/activity_planner_settings_form.dart b/lib/pangea/activity_planner/activity_planner_settings_form.dart deleted file mode 100644 index 8b1378917..000000000 --- a/lib/pangea/activity_planner/activity_planner_settings_form.dart +++ /dev/null @@ -1 +0,0 @@ - diff --git a/lib/pangea/activity_planner/activity_planner_settings_search_widget.dart b/lib/pangea/activity_planner/activity_planner_settings_search_widget.dart deleted file mode 100644 index 9719cf8fb..000000000 --- a/lib/pangea/activity_planner/activity_planner_settings_search_widget.dart +++ /dev/null @@ -1,40 +0,0 @@ -import 'package:flutter/material.dart'; - -import 'package:fluffychat/l10n/l10n.dart'; - -class ActivityPlannerSettingsSearchWidget extends StatelessWidget { - const ActivityPlannerSettingsSearchWidget({ - super.key, - required TextEditingController searchController, - }) : _objectiveSearchController = searchController; - - final TextEditingController _objectiveSearchController; - - @override - Widget build(BuildContext context) { - return Padding( - padding: const EdgeInsets.only( - top: 8, - bottom: 4, - right: 8, - left: 8, - ), - child: TextFormField( - controller: _objectiveSearchController, - textInputAction: TextInputAction.search, - decoration: InputDecoration( - isDense: true, - contentPadding: const EdgeInsets.symmetric( - horizontal: 10, - vertical: 8, - ), - hintText: L10n.of(context).search, - icon: const Icon(Icons.search), - border: OutlineInputBorder( - borderRadius: BorderRadius.circular(8), - ), - ), - ), - ); - } -} diff --git a/lib/pangea/activity_planner/suggestion_form_field.dart b/lib/pangea/activity_planner/suggestion_form_field.dart index 4edba8ccd..a460235bf 100644 --- a/lib/pangea/activity_planner/suggestion_form_field.dart +++ b/lib/pangea/activity_planner/suggestion_form_field.dart @@ -1,6 +1,6 @@ import 'package:flutter/material.dart'; -import 'package:fluffychat/pangea/activity_planner/list_request_schema.dart'; +import 'package:fluffychat/pangea/activity_generator/list_request_schema.dart'; class SuggestionFormField extends StatelessWidget { final Future> suggestions; diff --git a/lib/pangea/activity_sessions/activity_creation_state_event.dart b/lib/pangea/activity_sessions/activity_creation_state_event.dart new file mode 100644 index 000000000..41cfd8015 --- /dev/null +++ b/lib/pangea/activity_sessions/activity_creation_state_event.dart @@ -0,0 +1,40 @@ +import 'package:flutter/material.dart'; + +import 'package:matrix/matrix.dart'; + +import 'package:fluffychat/config/app_config.dart'; +import 'package:fluffychat/l10n/l10n.dart'; +import 'package:fluffychat/utils/matrix_sdk_extensions/matrix_locals.dart'; +import 'package:fluffychat/widgets/avatar.dart'; + +class ActivityCreationStateEvent extends StatelessWidget { + final Event event; + + const ActivityCreationStateEvent({required this.event, super.key}); + + @override + Widget build(BuildContext context) { + final l10n = L10n.of(context); + final matrixLocals = MatrixLocals(l10n); + final theme = Theme.of(context); + final roomName = event.room.getLocalizedDisplayname(matrixLocals); + return Center( + child: Container( + padding: const EdgeInsets.only(bottom: 32.0, top: 60.0), + child: Material( + color: theme.colorScheme.surfaceContainer, + borderRadius: BorderRadius.circular(AppConfig.borderRadius), + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Avatar( + mxContent: event.room.avatar, + name: roomName, + size: Avatar.defaultSize * 5, + userId: event.room.directChatMatrixID, + ), + ), + ), + ), + ); + } +} diff --git a/lib/pangea/activity_planner/activity_finished_status_message.dart b/lib/pangea/activity_sessions/activity_finished_status_message.dart similarity index 96% rename from lib/pangea/activity_planner/activity_finished_status_message.dart rename to lib/pangea/activity_sessions/activity_finished_status_message.dart index d0f44c777..16722bb20 100644 --- a/lib/pangea/activity_planner/activity_finished_status_message.dart +++ b/lib/pangea/activity_sessions/activity_finished_status_message.dart @@ -7,10 +7,10 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/config/themes.dart'; import 'package:fluffychat/l10n/l10n.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_participant_indicator.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_results_carousel.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_role_model.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_participant_indicator.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_results_carousel.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_role_model.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; import 'package:fluffychat/widgets/future_loading_dialog.dart'; import 'package:fluffychat/widgets/matrix.dart'; import 'package:fluffychat/widgets/mxc_image.dart'; diff --git a/lib/pangea/activity_planner/activity_participant_indicator.dart b/lib/pangea/activity_sessions/activity_participant_indicator.dart similarity index 96% rename from lib/pangea/activity_planner/activity_participant_indicator.dart rename to lib/pangea/activity_sessions/activity_participant_indicator.dart index e7685bae5..33010db11 100644 --- a/lib/pangea/activity_planner/activity_participant_indicator.dart +++ b/lib/pangea/activity_sessions/activity_participant_indicator.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:fluffychat/l10n/l10n.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_role_model.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_role_model.dart'; import 'package:fluffychat/utils/string_color.dart'; import 'package:fluffychat/widgets/hover_builder.dart'; diff --git a/lib/pangea/activity_planner/activity_pinned_message.dart b/lib/pangea/activity_sessions/activity_pinned_message.dart similarity index 98% rename from lib/pangea/activity_planner/activity_pinned_message.dart rename to lib/pangea/activity_sessions/activity_pinned_message.dart index 30e10d40e..a36e80528 100644 --- a/lib/pangea/activity_planner/activity_pinned_message.dart +++ b/lib/pangea/activity_sessions/activity_pinned_message.dart @@ -9,7 +9,7 @@ import 'package:fluffychat/config/themes.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pages/chat/chat.dart'; import 'package:fluffychat/pages/chat/chat_app_bar_list_tile.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; import 'package:fluffychat/pangea/activity_suggestions/activity_suggestions_constants.dart'; import 'package:fluffychat/pangea/events/constants/pangea_event_types.dart'; import 'package:fluffychat/widgets/future_loading_dialog.dart'; diff --git a/lib/pangea/activity_planner/activity_results_carousel.dart b/lib/pangea/activity_sessions/activity_results_carousel.dart similarity index 98% rename from lib/pangea/activity_planner/activity_results_carousel.dart rename to lib/pangea/activity_sessions/activity_results_carousel.dart index 9365249bd..972059eaf 100644 --- a/lib/pangea/activity_planner/activity_results_carousel.dart +++ b/lib/pangea/activity_sessions/activity_results_carousel.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; import 'package:matrix/matrix.dart'; import 'package:fluffychat/config/themes.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_role_model.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_role_model.dart'; import 'package:fluffychat/pangea/activity_summary/activity_summary_response_model.dart'; import 'package:fluffychat/pangea/common/widgets/pressable_button.dart'; import 'package:fluffychat/widgets/avatar.dart'; diff --git a/lib/pangea/activity_planner/activity_role_model.dart b/lib/pangea/activity_sessions/activity_role_model.dart similarity index 100% rename from lib/pangea/activity_planner/activity_role_model.dart rename to lib/pangea/activity_sessions/activity_role_model.dart diff --git a/lib/pangea/activity_planner/activity_roles_model.dart b/lib/pangea/activity_sessions/activity_roles_model.dart similarity index 95% rename from lib/pangea/activity_planner/activity_roles_model.dart rename to lib/pangea/activity_sessions/activity_roles_model.dart index 3bc0c6536..11c492379 100644 --- a/lib/pangea/activity_planner/activity_roles_model.dart +++ b/lib/pangea/activity_sessions/activity_roles_model.dart @@ -1,7 +1,7 @@ import 'package:collection/collection.dart'; import 'package:matrix/matrix.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_role_model.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_role_model.dart'; class ActivityRolesModel { final Event? event; diff --git a/lib/pangea/activity_planner/activity_room_extension.dart b/lib/pangea/activity_sessions/activity_room_extension.dart similarity index 95% rename from lib/pangea/activity_planner/activity_room_extension.dart rename to lib/pangea/activity_sessions/activity_room_extension.dart index 269849a2f..e96c00c9e 100644 --- a/lib/pangea/activity_planner/activity_room_extension.dart +++ b/lib/pangea/activity_sessions/activity_room_extension.dart @@ -5,9 +5,9 @@ import 'package:collection/collection.dart'; import 'package:matrix/matrix.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_model.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_role_model.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_roles_model.dart'; import 'package:fluffychat/pangea/activity_planner/bookmarked_activities_repo.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_role_model.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_roles_model.dart'; import 'package:fluffychat/pangea/activity_summary/activity_summary_model.dart'; import 'package:fluffychat/pangea/activity_summary/activity_summary_repo.dart'; import 'package:fluffychat/pangea/activity_summary/activity_summary_request_model.dart'; @@ -294,13 +294,12 @@ extension ActivityRoomExtension on Room { }); } - int? get numberOfParticipants { - return activityPlan?.req.numberOfParticipants; - } - int get remainingRoles { - if (numberOfParticipants == null) return 0; - return max(0, numberOfParticipants! - (activityRoles?.roles.length ?? 0)); + if (activityPlan == null) return 0; + return max( + 0, + activityPlan!.roles.length - (activityRoles?.roles.length ?? 0), + ); } bool get isHiddenActivityRoom => diff --git a/lib/pangea/chat/widgets/activity_state_event.dart b/lib/pangea/activity_sessions/activity_state_event.dart similarity index 89% rename from lib/pangea/chat/widgets/activity_state_event.dart rename to lib/pangea/activity_sessions/activity_state_event.dart index a5931ffdd..5189ccf60 100644 --- a/lib/pangea/chat/widgets/activity_state_event.dart +++ b/lib/pangea/activity_sessions/activity_state_event.dart @@ -4,9 +4,9 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/config/themes.dart'; import 'package:fluffychat/pages/chat/events/state_message.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_participant_indicator.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_model.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_participant_indicator.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; class ActivityStateEvent extends StatelessWidget { final Event event; diff --git a/lib/pangea/activity_planner/activity_status_message.dart b/lib/pangea/activity_sessions/activity_status_message.dart similarity index 82% rename from lib/pangea/activity_planner/activity_status_message.dart rename to lib/pangea/activity_sessions/activity_status_message.dart index 2f20b4514..fa081dfc5 100644 --- a/lib/pangea/activity_planner/activity_status_message.dart +++ b/lib/pangea/activity_sessions/activity_status_message.dart @@ -3,9 +3,9 @@ import 'package:flutter/material.dart'; import 'package:matrix/matrix.dart'; import 'package:fluffychat/config/themes.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_finished_status_message.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_unfinished_status_message.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_finished_status_message.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_unfinished_status_message.dart'; class ActivityStatusMessage extends StatelessWidget { final Room room; diff --git a/lib/pangea/activity_planner/activity_unfinished_status_message.dart b/lib/pangea/activity_sessions/activity_unfinished_status_message.dart similarity index 92% rename from lib/pangea/activity_planner/activity_unfinished_status_message.dart rename to lib/pangea/activity_sessions/activity_unfinished_status_message.dart index 617a3bf82..aa8bf6851 100644 --- a/lib/pangea/activity_planner/activity_unfinished_status_message.dart +++ b/lib/pangea/activity_sessions/activity_unfinished_status_message.dart @@ -4,8 +4,8 @@ import 'package:matrix/matrix.dart'; import 'package:fluffychat/config/themes.dart'; import 'package:fluffychat/l10n/l10n.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_participant_indicator.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_participant_indicator.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; import 'package:fluffychat/widgets/future_loading_dialog.dart'; class ActivityUnfinishedStatusMessage extends StatefulWidget { @@ -31,8 +31,6 @@ class ActivityUnfinishedStatusMessageState @override Widget build(BuildContext context) { - debugPrint("HELLO. remainingRoles: ${widget.room.remainingRoles}"); - final theme = Theme.of(context); final isColumnMode = FluffyThemes.isColumnMode(context); diff --git a/lib/pangea/activity_suggestions/activity_search_request.dart b/lib/pangea/activity_suggestions/activity_search_request.dart index 35b66fc70..4ce95f7dc 100644 --- a/lib/pangea/activity_suggestions/activity_search_request.dart +++ b/lib/pangea/activity_suggestions/activity_search_request.dart @@ -1,4 +1,4 @@ -import 'package:fluffychat/pangea/activity_planner/media_enum.dart'; +import 'package:fluffychat/pangea/activity_generator/media_enum.dart'; import 'package:fluffychat/pangea/learning_settings/enums/language_level_type_enum.dart'; class ActivitySearchRequest { diff --git a/lib/pangea/activity_suggestions/activity_suggestion_dialog.dart b/lib/pangea/activity_suggestions/activity_suggestion_dialog.dart index ad6e966e6..86a523088 100644 --- a/lib/pangea/activity_suggestions/activity_suggestion_dialog.dart +++ b/lib/pangea/activity_suggestions/activity_suggestion_dialog.dart @@ -5,7 +5,7 @@ import 'package:go_router/go_router.dart'; import 'package:fluffychat/config/themes.dart'; import 'package:fluffychat/l10n/l10n.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_plan_generation_repo.dart'; +import 'package:fluffychat/pangea/activity_generator/activity_plan_generation_repo.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_model.dart'; import 'package:fluffychat/pangea/activity_planner/activity_planner_builder.dart'; import 'package:fluffychat/pangea/activity_suggestions/activity_suggestion_dialog_content.dart'; diff --git a/lib/pangea/activity_suggestions/activity_suggestions_area.dart b/lib/pangea/activity_suggestions/activity_suggestions_area.dart index c97dcd81b..9064b765b 100644 --- a/lib/pangea/activity_suggestions/activity_suggestions_area.dart +++ b/lib/pangea/activity_suggestions/activity_suggestions_area.dart @@ -12,11 +12,11 @@ import 'package:shimmer/shimmer.dart'; import 'package:fluffychat/config/themes.dart'; import 'package:fluffychat/l10n/l10n.dart'; +import 'package:fluffychat/pangea/activity_generator/media_enum.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_model.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_request.dart'; import 'package:fluffychat/pangea/activity_planner/activity_plan_response.dart'; import 'package:fluffychat/pangea/activity_planner/activity_planner_builder.dart'; -import 'package:fluffychat/pangea/activity_planner/media_enum.dart'; import 'package:fluffychat/pangea/activity_suggestions/activity_plan_search_repo.dart'; import 'package:fluffychat/pangea/activity_suggestions/activity_suggestion_card.dart'; import 'package:fluffychat/pangea/activity_suggestions/activity_suggestion_dialog.dart'; diff --git a/lib/pangea/extensions/pangea_room_extension.dart b/lib/pangea/extensions/pangea_room_extension.dart index a3c9872d3..3c4626460 100644 --- a/lib/pangea/extensions/pangea_room_extension.dart +++ b/lib/pangea/extensions/pangea_room_extension.dart @@ -14,7 +14,7 @@ import 'package:matrix/src/utils/markdown.dart'; import 'package:sentry_flutter/sentry_flutter.dart'; import 'package:fluffychat/l10n/l10n.dart'; -import 'package:fluffychat/pangea/activity_planner/activity_room_extension.dart'; +import 'package:fluffychat/pangea/activity_sessions/activity_room_extension.dart'; import 'package:fluffychat/pangea/analytics_misc/constructs_event.dart'; import 'package:fluffychat/pangea/analytics_misc/constructs_model.dart'; import 'package:fluffychat/pangea/bot/utils/bot_name.dart';