Move to Flutter 3.47, use the improvements that come with this (#64)
Reviewed-on: #64
This commit is contained in:
parent
01b13b4764
commit
077044ec19
157 changed files with 1366 additions and 1457 deletions
|
|
@ -6,10 +6,8 @@ import "package:nexus/models/content/content.dart";
|
|||
import "package:nexus/models/content/message.dart";
|
||||
import "package:path/path.dart";
|
||||
|
||||
class AttachmentController extends Notifier<(String, MessageContent?)?> {
|
||||
final String roomId;
|
||||
AttachmentController(this.roomId);
|
||||
|
||||
class AttachmentController(final String roomId)
|
||||
extends Notifier<(String, MessageContent?)?> {
|
||||
@override
|
||||
Null build() => null;
|
||||
|
||||
|
|
|
|||
|
|
@ -4,10 +4,8 @@ import "package:nexus/controllers/client_id.dart";
|
|||
import "package:nexus/models/oauth_auth_code_response.dart";
|
||||
import "package:nexus/models/requests/oauth/get_auth_url.dart";
|
||||
|
||||
class AuthUrlController extends AsyncNotifier<OAuthAuthCodeResponse> {
|
||||
final Uri homeserver;
|
||||
AuthUrlController(this.homeserver);
|
||||
|
||||
class AuthUrlController(final Uri homeserver)
|
||||
extends AsyncNotifier<OAuthAuthCodeResponse> {
|
||||
@override
|
||||
Future<OAuthAuthCodeResponse> build() async => ref
|
||||
.watch(ClientController.provider.notifier)
|
||||
|
|
|
|||
|
|
@ -1,19 +1,17 @@
|
|||
import "dart:async";
|
||||
|
||||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
import "package:nexus/controllers/user.dart";
|
||||
import "package:nexus/models/content/membership.dart";
|
||||
import "package:nexus/models/event.dart";
|
||||
|
||||
class AuthorController extends AsyncNotifier<MembershipContent> {
|
||||
final Event event;
|
||||
AuthorController(this.event);
|
||||
|
||||
class AuthorController(final Event event)
|
||||
extends AsyncNotifier<MembershipContent> {
|
||||
@override
|
||||
Future<MembershipContent> build() async {
|
||||
final member = await ref.watch(
|
||||
UserController.provider(
|
||||
.new(roomId: event.roomId, userId: event.sender),
|
||||
).future,
|
||||
UserController.provider(.new(roomId: event.roomId, userId: event.sender))
|
||||
.future,
|
||||
);
|
||||
|
||||
return .new(
|
||||
|
|
|
|||
|
|
@ -1,10 +1,7 @@
|
|||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
import "package:nexus/controllers/client.dart";
|
||||
|
||||
class ClientIdController extends AsyncNotifier<String> {
|
||||
final Uri homeserver;
|
||||
ClientIdController(this.homeserver);
|
||||
|
||||
class ClientIdController(final Uri homeserver) extends AsyncNotifier<String> {
|
||||
@override
|
||||
Future<String> build() => ref
|
||||
.watch(ClientController.provider.notifier)
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import "dart:convert";
|
||||
import "package:emoji_text_field/models/emoji_category.dart";
|
||||
import "package:fast_immutable_collections/fast_immutable_collections.dart";
|
||||
import "package:flutter/material.dart";
|
||||
import "package:material_ui/material_ui.dart";
|
||||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
import "package:http/http.dart";
|
||||
import "package:nexus/models/emoji.dart";
|
||||
|
|
|
|||
|
|
@ -5,10 +5,8 @@ import "package:nexus/controllers/rooms.dart";
|
|||
import "package:nexus/models/event.dart";
|
||||
import "package:nexus/models/requests/get_event.dart";
|
||||
|
||||
class EventController extends AsyncNotifier<Event?> {
|
||||
final GetEventRequest request;
|
||||
EventController(this.request);
|
||||
|
||||
class EventController(final GetEventRequest request)
|
||||
extends AsyncNotifier<Event?> {
|
||||
@override
|
||||
Future<Event?> build() async {
|
||||
final room = ref.watch(
|
||||
|
|
|
|||
|
|
@ -1,10 +1,7 @@
|
|||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
import "package:nexus/controllers/shared_prefs.dart";
|
||||
|
||||
class KeyController extends Notifier<String?> {
|
||||
final String key;
|
||||
KeyController(this.key);
|
||||
|
||||
class KeyController(final String key) extends Notifier<String?> {
|
||||
static const String spaceKey = "space";
|
||||
static const String roomKey = "room";
|
||||
|
||||
|
|
|
|||
|
|
@ -6,10 +6,8 @@ import "package:nexus/models/content/content.dart";
|
|||
import "package:nexus/models/event.dart";
|
||||
import "package:nexus/models/requests/get_room_state.dart";
|
||||
|
||||
class MembersController extends AsyncNotifier<ISet<Event>> {
|
||||
final String roomId;
|
||||
MembersController(this.roomId);
|
||||
|
||||
class MembersController(final String roomId)
|
||||
extends AsyncNotifier<ISet<Event>> {
|
||||
@override
|
||||
Future<ISet<Event>> build() async {
|
||||
final room = ref.watch(
|
||||
|
|
|
|||
|
|
@ -5,10 +5,8 @@ import "package:nexus/models/configs/members_by_status.dart";
|
|||
import "package:nexus/models/content/membership.dart";
|
||||
import "package:nexus/models/event.dart";
|
||||
|
||||
class MembersByStatusController extends AsyncNotifier<ISet<Event>> {
|
||||
final MembersByStatusConfig config;
|
||||
MembersByStatusController(this.config);
|
||||
|
||||
class MembersByStatusController(final MembersByStatusConfig config)
|
||||
extends AsyncNotifier<ISet<Event>> {
|
||||
@override
|
||||
Future<ISet<Event>> build() => ref.watch(
|
||||
MembersController.provider(config.roomId).selectAsync(
|
||||
|
|
|
|||
|
|
@ -8,11 +8,8 @@ import "package:nexus/models/content/content.dart";
|
|||
import "package:nexus/models/content/power_levels.dart";
|
||||
import "package:nexus/models/event.dart";
|
||||
|
||||
class MembersGroupedController
|
||||
class MembersGroupedController(final MembersByStatusConfig config)
|
||||
extends AsyncNotifier<IList<MapEntry<int?, ISet<Event>>>> {
|
||||
final MembersByStatusConfig config;
|
||||
MembersGroupedController(this.config);
|
||||
|
||||
@override
|
||||
Future<IList<MapEntry<int?, ISet<Event>>>> build() async {
|
||||
final room = ref.watch(
|
||||
|
|
|
|||
|
|
@ -1,11 +1,10 @@
|
|||
import "dart:async";
|
||||
|
||||
import "package:fast_immutable_collections/fast_immutable_collections.dart";
|
||||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
|
||||
class MultiProviderController extends AsyncNotifier<void> {
|
||||
MultiProviderController(this.providers);
|
||||
final IList<AsyncNotifierProvider> providers;
|
||||
|
||||
class MultiProviderController(final IList<AsyncNotifierProvider> providers)
|
||||
extends AsyncNotifier<void> {
|
||||
@override
|
||||
Future<void> build() =>
|
||||
.wait(providers.map((provider) => ref.watch(provider.future)));
|
||||
|
|
|
|||
|
|
@ -4,10 +4,8 @@ import "package:nexus/controllers/event.dart";
|
|||
import "package:nexus/controllers/pinned_ids.dart";
|
||||
import "package:nexus/models/event.dart";
|
||||
|
||||
class PinnedEventsController extends AsyncNotifier<IList<Event>> {
|
||||
final String roomId;
|
||||
PinnedEventsController(this.roomId);
|
||||
|
||||
class PinnedEventsController(final String roomId)
|
||||
extends AsyncNotifier<IList<Event>> {
|
||||
@override
|
||||
Future<IList<Event>> build() async {
|
||||
final pinIds = ref.watch(PinnedIdsController.provider(roomId));
|
||||
|
|
@ -15,9 +13,8 @@ class PinnedEventsController extends AsyncNotifier<IList<Event>> {
|
|||
return (await Future.wait(
|
||||
pinIds.map(
|
||||
(eventId) => ref.watch(
|
||||
EventController.provider(
|
||||
.new(eventId: eventId, roomId: roomId),
|
||||
).future,
|
||||
EventController.provider(.new(eventId: eventId, roomId: roomId))
|
||||
.future,
|
||||
),
|
||||
),
|
||||
)).nonNulls.toIList();
|
||||
|
|
|
|||
|
|
@ -5,10 +5,7 @@ import "package:nexus/controllers/rooms.dart";
|
|||
import "package:nexus/models/content/content.dart";
|
||||
import "package:nexus/models/content/pinned_events.dart";
|
||||
|
||||
class PinnedIdsController extends Notifier<IList<String>> {
|
||||
final String roomId;
|
||||
PinnedIdsController(this.roomId);
|
||||
|
||||
class PinnedIdsController(final String roomId) extends Notifier<IList<String>> {
|
||||
@override
|
||||
IList<String> build() {
|
||||
final room = ref.watch(
|
||||
|
|
|
|||
|
|
@ -6,10 +6,8 @@ import "package:nexus/models/configs/power_level.dart";
|
|||
import "package:nexus/models/content/content.dart";
|
||||
import "package:nexus/models/content/power_levels.dart";
|
||||
|
||||
class PowerLevelController extends Notifier<bool> {
|
||||
final PowerLevelConfig config;
|
||||
PowerLevelController(this.config);
|
||||
|
||||
class PowerLevelController(final PowerLevelConfig config)
|
||||
extends Notifier<bool> {
|
||||
@override
|
||||
bool build() {
|
||||
if (config case EventPowerLevelConfig(:final eventType)) {
|
||||
|
|
|
|||
|
|
@ -2,10 +2,8 @@ import "package:flutter_riverpod/flutter_riverpod.dart";
|
|||
import "package:nexus/controllers/client.dart";
|
||||
import "package:nexus/models/profile_response.dart";
|
||||
|
||||
class ProfileController extends AsyncNotifier<ProfileResponse> {
|
||||
final String userId;
|
||||
ProfileController(this.userId);
|
||||
|
||||
class ProfileController(final String userId)
|
||||
extends AsyncNotifier<ProfileResponse> {
|
||||
@override
|
||||
Future<ProfileResponse> build() {
|
||||
final client = ref.watch(ClientController.provider.notifier);
|
||||
|
|
|
|||
|
|
@ -5,10 +5,8 @@ import "package:nexus/controllers/rooms.dart";
|
|||
import "package:nexus/models/configs/reactions.dart";
|
||||
import "package:nexus/models/content/reaction.dart";
|
||||
|
||||
class ReactionsController extends AsyncNotifier<IMap<String, IList<String>>> {
|
||||
final ReactionsConfig config;
|
||||
ReactionsController(this.config);
|
||||
|
||||
class ReactionsController(final ReactionsConfig config)
|
||||
extends AsyncNotifier<IMap<String, IList<String>>> {
|
||||
@override
|
||||
Future<IMap<String, IList<String>>> build() async {
|
||||
final eventInfo = ref.watch(
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import "dart:async";
|
||||
import "dart:math";
|
||||
|
||||
import "package:collection/collection.dart";
|
||||
import "package:fast_immutable_collections/fast_immutable_collections.dart";
|
||||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
|
|
@ -15,10 +16,8 @@ import "package:nexus/models/relation_type.dart";
|
|||
import "package:nexus/models/requests/send_message.dart";
|
||||
import "package:nexus/models/room.dart";
|
||||
|
||||
class RoomChatController extends AsyncNotifier<IList<Event>?> {
|
||||
final String roomId;
|
||||
RoomChatController(this.roomId);
|
||||
|
||||
class RoomChatController(final String roomId)
|
||||
extends AsyncNotifier<IList<Event>?> {
|
||||
@override
|
||||
Future<IList<Event>?> build() async {
|
||||
final client = ref.watch(ClientController.provider.notifier);
|
||||
|
|
|
|||
|
|
@ -4,10 +4,7 @@ import "package:nexus/models/content/content.dart";
|
|||
import "package:nexus/models/content/create.dart";
|
||||
import "package:nexus/models/room.dart";
|
||||
|
||||
class RoomCreatorsController extends Notifier<IList<String>> {
|
||||
final Room room;
|
||||
RoomCreatorsController(this.room);
|
||||
|
||||
class RoomCreatorsController(final Room room) extends Notifier<IList<String>> {
|
||||
@override
|
||||
IList<String> build() {
|
||||
final createRowId = room.state[EventType.create.type]?[""];
|
||||
|
|
|
|||
|
|
@ -3,10 +3,8 @@ import "package:nexus/controllers/client.dart";
|
|||
import "package:nexus/models/requests/join_room.dart";
|
||||
import "package:nexus/models/room_summary.dart";
|
||||
|
||||
class RoomSummaryController extends AsyncNotifier<RoomSummary> {
|
||||
final JoinRoomRequest request;
|
||||
RoomSummaryController(this.request);
|
||||
|
||||
class RoomSummaryController(final JoinRoomRequest request)
|
||||
extends AsyncNotifier<RoomSummary> {
|
||||
@override
|
||||
Future<RoomSummary> build() =>
|
||||
ref.watch(ClientController.provider.notifier).getRoomSummary(request);
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import "dart:io";
|
||||
import "package:fast_immutable_collections/fast_immutable_collections.dart";
|
||||
import "package:flutter/material.dart";
|
||||
import "package:material_ui/material_ui.dart";
|
||||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
import "package:intl/intl.dart";
|
||||
import "package:m3e_buttons/m3e_buttons.dart";
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import "package:collection/collection.dart";
|
||||
import "package:fast_immutable_collections/fast_immutable_collections.dart";
|
||||
import "package:flutter/material.dart";
|
||||
import "package:material_ui/material_ui.dart";
|
||||
import "package:flutter_riverpod/flutter_riverpod.dart";
|
||||
import "package:nexus/controllers/account_data.dart";
|
||||
import "package:nexus/controllers/rooms.dart";
|
||||
|
|
|
|||
|
|
@ -3,10 +3,8 @@ import "package:flutter_riverpod/flutter_riverpod.dart";
|
|||
import "package:nexus/controllers/client.dart";
|
||||
import "package:nexus/models/open_graph_data.dart";
|
||||
|
||||
class UrlPreviewController extends AsyncNotifier<OpenGraphData?> {
|
||||
final Uri url;
|
||||
UrlPreviewController(this.url);
|
||||
|
||||
class UrlPreviewController(final Uri url)
|
||||
extends AsyncNotifier<OpenGraphData?> {
|
||||
@override
|
||||
Future<OpenGraphData?> build() async {
|
||||
if (url.host == "matrix.to") return null;
|
||||
|
|
|
|||
|
|
@ -7,10 +7,7 @@ import "package:nexus/models/content/membership.dart";
|
|||
import "package:nexus/models/content/power_levels.dart";
|
||||
import "package:nexus/models/room.dart";
|
||||
|
||||
class ViaController extends Notifier<String> {
|
||||
final Room room;
|
||||
ViaController(this.room);
|
||||
|
||||
class ViaController(final Room room) extends Notifier<String> {
|
||||
@override
|
||||
String build() {
|
||||
final servers = <String>{};
|
||||
|
|
|
|||
Loading…
Reference in a new issue