♻️ Migrated to riverpod v3
This commit is contained in:
@@ -34,8 +34,8 @@ class AudioCallButton extends HookConsumerWidget {
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final ongoingCall = ref.watch(ongoingCallProvider(room.id));
|
||||
final callState = ref.watch(callNotifierProvider);
|
||||
final callNotifier = ref.read(callNotifierProvider.notifier);
|
||||
final callState = ref.watch(callProvider);
|
||||
final callNotifier = ref.read(callProvider.notifier);
|
||||
final isLoading = useState(false);
|
||||
final apiClient = ref.watch(apiClientProvider);
|
||||
|
||||
|
||||
@@ -6,146 +6,80 @@ part of 'call_button.dart';
|
||||
// RiverpodGenerator
|
||||
// **************************************************************************
|
||||
|
||||
String _$ongoingCallHash() => r'48031badb79efa07aefb3a4fc51635be457bd3f9';
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
// ignore_for_file: type=lint, type=warning
|
||||
|
||||
/// Copied from Dart SDK
|
||||
class _SystemHash {
|
||||
_SystemHash._();
|
||||
|
||||
static int combine(int hash, int value) {
|
||||
// ignore: parameter_assignments
|
||||
hash = 0x1fffffff & (hash + value);
|
||||
// ignore: parameter_assignments
|
||||
hash = 0x1fffffff & (hash + ((0x0007ffff & hash) << 10));
|
||||
return hash ^ (hash >> 6);
|
||||
}
|
||||
|
||||
static int finish(int hash) {
|
||||
// ignore: parameter_assignments
|
||||
hash = 0x1fffffff & (hash + ((0x03ffffff & hash) << 3));
|
||||
// ignore: parameter_assignments
|
||||
hash = hash ^ (hash >> 11);
|
||||
return 0x1fffffff & (hash + ((0x00003fff & hash) << 15));
|
||||
}
|
||||
}
|
||||
|
||||
/// See also [ongoingCall].
|
||||
@ProviderFor(ongoingCall)
|
||||
const ongoingCallProvider = OngoingCallFamily();
|
||||
const ongoingCallProvider = OngoingCallFamily._();
|
||||
|
||||
/// See also [ongoingCall].
|
||||
class OngoingCallFamily extends Family<AsyncValue<SnRealtimeCall?>> {
|
||||
/// See also [ongoingCall].
|
||||
const OngoingCallFamily();
|
||||
final class OngoingCallProvider
|
||||
extends
|
||||
$FunctionalProvider<
|
||||
AsyncValue<SnRealtimeCall?>,
|
||||
SnRealtimeCall?,
|
||||
FutureOr<SnRealtimeCall?>
|
||||
>
|
||||
with $FutureModifier<SnRealtimeCall?>, $FutureProvider<SnRealtimeCall?> {
|
||||
const OngoingCallProvider._({
|
||||
required OngoingCallFamily super.from,
|
||||
required String super.argument,
|
||||
}) : super(
|
||||
retry: null,
|
||||
name: r'ongoingCallProvider',
|
||||
isAutoDispose: true,
|
||||
dependencies: null,
|
||||
$allTransitiveDependencies: null,
|
||||
);
|
||||
|
||||
/// See also [ongoingCall].
|
||||
OngoingCallProvider call(String roomId) {
|
||||
return OngoingCallProvider(roomId);
|
||||
@override
|
||||
String debugGetCreateSourceHash() => _$ongoingCallHash();
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return r'ongoingCallProvider'
|
||||
''
|
||||
'($argument)';
|
||||
}
|
||||
|
||||
@$internal
|
||||
@override
|
||||
OngoingCallProvider getProviderOverride(
|
||||
covariant OngoingCallProvider provider,
|
||||
) {
|
||||
return call(provider.roomId);
|
||||
}
|
||||
|
||||
static const Iterable<ProviderOrFamily>? _dependencies = null;
|
||||
$FutureProviderElement<SnRealtimeCall?> $createElement(
|
||||
$ProviderPointer pointer,
|
||||
) => $FutureProviderElement(pointer);
|
||||
|
||||
@override
|
||||
Iterable<ProviderOrFamily>? get dependencies => _dependencies;
|
||||
|
||||
static const Iterable<ProviderOrFamily>? _allTransitiveDependencies = null;
|
||||
|
||||
@override
|
||||
Iterable<ProviderOrFamily>? get allTransitiveDependencies =>
|
||||
_allTransitiveDependencies;
|
||||
|
||||
@override
|
||||
String? get name => r'ongoingCallProvider';
|
||||
}
|
||||
|
||||
/// See also [ongoingCall].
|
||||
class OngoingCallProvider extends AutoDisposeFutureProvider<SnRealtimeCall?> {
|
||||
/// See also [ongoingCall].
|
||||
OngoingCallProvider(String roomId)
|
||||
: this._internal(
|
||||
(ref) => ongoingCall(ref as OngoingCallRef, roomId),
|
||||
from: ongoingCallProvider,
|
||||
name: r'ongoingCallProvider',
|
||||
debugGetCreateSourceHash:
|
||||
const bool.fromEnvironment('dart.vm.product')
|
||||
? null
|
||||
: _$ongoingCallHash,
|
||||
dependencies: OngoingCallFamily._dependencies,
|
||||
allTransitiveDependencies: OngoingCallFamily._allTransitiveDependencies,
|
||||
roomId: roomId,
|
||||
);
|
||||
|
||||
OngoingCallProvider._internal(
|
||||
super._createNotifier, {
|
||||
required super.name,
|
||||
required super.dependencies,
|
||||
required super.allTransitiveDependencies,
|
||||
required super.debugGetCreateSourceHash,
|
||||
required super.from,
|
||||
required this.roomId,
|
||||
}) : super.internal();
|
||||
|
||||
final String roomId;
|
||||
|
||||
@override
|
||||
Override overrideWith(
|
||||
FutureOr<SnRealtimeCall?> Function(OngoingCallRef provider) create,
|
||||
) {
|
||||
return ProviderOverride(
|
||||
origin: this,
|
||||
override: OngoingCallProvider._internal(
|
||||
(ref) => create(ref as OngoingCallRef),
|
||||
from: from,
|
||||
name: null,
|
||||
dependencies: null,
|
||||
allTransitiveDependencies: null,
|
||||
debugGetCreateSourceHash: null,
|
||||
roomId: roomId,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
AutoDisposeFutureProviderElement<SnRealtimeCall?> createElement() {
|
||||
return _OngoingCallProviderElement(this);
|
||||
FutureOr<SnRealtimeCall?> create(Ref ref) {
|
||||
final argument = this.argument as String;
|
||||
return ongoingCall(ref, argument);
|
||||
}
|
||||
|
||||
@override
|
||||
bool operator ==(Object other) {
|
||||
return other is OngoingCallProvider && other.roomId == roomId;
|
||||
return other is OngoingCallProvider && other.argument == argument;
|
||||
}
|
||||
|
||||
@override
|
||||
int get hashCode {
|
||||
var hash = _SystemHash.combine(0, runtimeType.hashCode);
|
||||
hash = _SystemHash.combine(hash, roomId.hashCode);
|
||||
|
||||
return _SystemHash.finish(hash);
|
||||
return argument.hashCode;
|
||||
}
|
||||
}
|
||||
|
||||
@Deprecated('Will be removed in 3.0. Use Ref instead')
|
||||
// ignore: unused_element
|
||||
mixin OngoingCallRef on AutoDisposeFutureProviderRef<SnRealtimeCall?> {
|
||||
/// The parameter `roomId` of this provider.
|
||||
String get roomId;
|
||||
}
|
||||
String _$ongoingCallHash() => r'48031badb79efa07aefb3a4fc51635be457bd3f9';
|
||||
|
||||
class _OngoingCallProviderElement
|
||||
extends AutoDisposeFutureProviderElement<SnRealtimeCall?>
|
||||
with OngoingCallRef {
|
||||
_OngoingCallProviderElement(super.provider);
|
||||
final class OngoingCallFamily extends $Family
|
||||
with $FunctionalFamilyOverride<FutureOr<SnRealtimeCall?>, String> {
|
||||
const OngoingCallFamily._()
|
||||
: super(
|
||||
retry: null,
|
||||
name: r'ongoingCallProvider',
|
||||
dependencies: null,
|
||||
$allTransitiveDependencies: null,
|
||||
isAutoDispose: true,
|
||||
);
|
||||
|
||||
OngoingCallProvider call(String roomId) =>
|
||||
OngoingCallProvider._(argument: roomId, from: this);
|
||||
|
||||
@override
|
||||
String get roomId => (origin as OngoingCallProvider).roomId;
|
||||
String toString() => r'ongoingCallProvider';
|
||||
}
|
||||
|
||||
// ignore_for_file: type=lint
|
||||
// ignore_for_file: subtype_of_sealed_class, invalid_use_of_internal_member, invalid_use_of_visible_for_testing_member, deprecated_member_use_from_same_package
|
||||
|
||||
@@ -10,8 +10,8 @@ class CallContent extends HookConsumerWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final callState = ref.watch(callNotifierProvider);
|
||||
final callNotifier = ref.watch(callNotifierProvider.notifier);
|
||||
final callState = ref.watch(callProvider);
|
||||
final callNotifier = ref.watch(callProvider.notifier);
|
||||
|
||||
if (!callState.isConnected) {
|
||||
return const Center(child: CircularProgressIndicator());
|
||||
|
||||
@@ -25,8 +25,8 @@ class CallControlsBar extends HookConsumerWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final callState = ref.watch(callNotifierProvider);
|
||||
final callNotifier = ref.read(callNotifierProvider.notifier);
|
||||
final callState = ref.watch(callProvider);
|
||||
final callNotifier = ref.read(callProvider.notifier);
|
||||
|
||||
return Container(
|
||||
padding: EdgeInsets.symmetric(
|
||||
@@ -268,7 +268,7 @@ class CallControlsBar extends HookConsumerWidget {
|
||||
String deviceType,
|
||||
) async {
|
||||
try {
|
||||
final callNotifier = ref.read(callNotifierProvider.notifier);
|
||||
final callNotifier = ref.read(callProvider.notifier);
|
||||
|
||||
if (deviceType == 'videoinput') {
|
||||
// Switch camera device
|
||||
@@ -312,8 +312,8 @@ class CallOverlayBar extends HookConsumerWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final callState = ref.watch(callNotifierProvider);
|
||||
final callNotifier = ref.read(callNotifierProvider.notifier);
|
||||
final callState = ref.watch(callProvider);
|
||||
final callNotifier = ref.read(callProvider.notifier);
|
||||
final ongoingCall = ref.watch(ongoingCallProvider(room.id));
|
||||
|
||||
// State for overlay mode: compact or preview
|
||||
@@ -398,7 +398,7 @@ class CallOverlayBar extends HookConsumerWidget {
|
||||
isLoading.value = true;
|
||||
try {
|
||||
// Just join the room, don't navigate
|
||||
await ref.read(callNotifierProvider.notifier).joinRoom(room);
|
||||
await ref.read(callProvider.notifier).joinRoom(room);
|
||||
} catch (e) {
|
||||
showErrorAlert(e);
|
||||
} finally {
|
||||
|
||||
@@ -19,7 +19,7 @@ class CallParticipantCard extends HookConsumerWidget {
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final width =
|
||||
math.min(MediaQuery.of(context).size.width - 80, 360).toDouble();
|
||||
final callNotifier = ref.watch(callNotifierProvider.notifier);
|
||||
final callNotifier = ref.watch(callProvider.notifier);
|
||||
|
||||
final volumeSliderValue = useState(callNotifier.getParticipantVolume(live));
|
||||
|
||||
|
||||
@@ -260,7 +260,7 @@ class ChatInput extends HookConsumerWidget {
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final inputFocusNode = useFocusNode();
|
||||
final chatSubscribe = ref.watch(chatSubscribeNotifierProvider(chatRoom.id));
|
||||
final chatSubscribe = ref.watch(chatSubscribeProvider(chatRoom.id));
|
||||
final isExpanded = useState(false);
|
||||
|
||||
void send() {
|
||||
@@ -310,7 +310,7 @@ class ChatInput extends HookConsumerWidget {
|
||||
}
|
||||
}
|
||||
|
||||
final settings = ref.watch(appSettingsNotifierProvider);
|
||||
final settings = ref.watch(appSettingsProvider);
|
||||
|
||||
inputFocusNode.onKeyEvent = (node, event) {
|
||||
if (event is! KeyDownEvent) return KeyEventResult.ignored;
|
||||
|
||||
@@ -13,14 +13,12 @@ import 'package:material_symbols_icons/symbols.dart';
|
||||
import 'package:styled_widget/styled_widget.dart';
|
||||
import 'package:url_launcher/url_launcher_string.dart';
|
||||
|
||||
final chatCloudFileListNotifierProvider = AsyncNotifierProvider.autoDispose<
|
||||
ChatCloudFileListNotifier,
|
||||
List<SnCloudFile>
|
||||
>(ChatCloudFileListNotifier.new);
|
||||
final chatCloudFileListNotifierProvider = AsyncNotifierProvider.autoDispose(
|
||||
ChatCloudFileListNotifier.new,
|
||||
);
|
||||
|
||||
class ChatCloudFileListNotifier
|
||||
extends AutoDisposeAsyncNotifier<List<SnCloudFile>>
|
||||
with AutoDisposeAsyncPaginationController<SnCloudFile> {
|
||||
class ChatCloudFileListNotifier extends AsyncNotifier<List<SnCloudFile>>
|
||||
with AsyncPaginationController<SnCloudFile> {
|
||||
@override
|
||||
Future<List<SnCloudFile>> fetch() async {
|
||||
final client = ref.read(apiClientProvider);
|
||||
|
||||
@@ -67,7 +67,7 @@ class MessageItem extends HookConsumerWidget {
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final remoteMessage = message.toRemoteMessage();
|
||||
final settings = ref.watch(appSettingsNotifierProvider);
|
||||
final settings = ref.watch(appSettingsProvider);
|
||||
|
||||
final isMobile = !kIsWeb && (Platform.isAndroid || Platform.isIOS);
|
||||
|
||||
@@ -1150,7 +1150,7 @@ class MessageQuoteWidget extends HookConsumerWidget {
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final messagesNotifier = ref.watch(
|
||||
messagesNotifierProvider(message.roomId).notifier,
|
||||
messagesProvider(message.roomId).notifier,
|
||||
);
|
||||
|
||||
return FutureBuilder<LocalChatMessage?>(
|
||||
|
||||
@@ -28,8 +28,8 @@ class PublicRoomPreview extends HookConsumerWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final messages = ref.watch(messagesNotifierProvider(id));
|
||||
final messagesNotifier = ref.read(messagesNotifierProvider(id).notifier);
|
||||
final messages = ref.watch(messagesProvider(id));
|
||||
final messagesNotifier = ref.read(messagesProvider(id).notifier);
|
||||
final scrollController = useScrollController();
|
||||
|
||||
final listController = useMemoized(() => ListController(), []);
|
||||
@@ -204,7 +204,7 @@ class PublicRoomPreview extends HookConsumerWidget {
|
||||
showLoadingModal(context);
|
||||
final apiClient = ref.read(apiClientProvider);
|
||||
await apiClient.post('/sphere/chat/${room.id}/members/me');
|
||||
ref.invalidate(ChatRoomIdentityNotifierProvider(id));
|
||||
ref.invalidate(chatRoomIdentityProvider(id));
|
||||
} catch (err) {
|
||||
showErrorAlert(err);
|
||||
} finally {
|
||||
|
||||
Reference in New Issue
Block a user