diff --git a/lib/controller/discover/room_controller.dart b/lib/controller/discover/room_controller.dart index ac2c495..8e7bb99 100644 --- a/lib/controller/discover/room_controller.dart +++ b/lib/controller/discover/room_controller.dart @@ -201,6 +201,10 @@ class RoomController extends GetxController with WidgetsBindingObserver { SmartDialog.showToast(response.data.message); return; } + if (!response.data.data['success']) { + SmartDialog.showToast('积分不足'); + return; + } currentRole = role; if (role == CurrentRole.maleAudience || role == CurrentRole.femaleAudience) { @@ -264,7 +268,8 @@ class RoomController extends GetxController with WidgetsBindingObserver { } } - Future _fetchRtcChannelDetail(String channelName) async { + /// 获取 RTC 频道详情(公有方法,供外部调用) + Future fetchRtcChannelDetail(String channelName) async { try { final response = await _networkService.rtcApi.getRtcChannelDetail( channelName, @@ -278,6 +283,10 @@ class RoomController extends GetxController with WidgetsBindingObserver { } } + Future _fetchRtcChannelDetail(String channelName) async { + await fetchRtcChannelDetail(channelName); + } + /// 发送公屏消息 Future sendChatMessage(String content) async { final channelName = RTCManager.instance.currentChannelId; @@ -362,7 +371,7 @@ class RoomController extends GetxController with WidgetsBindingObserver { /// 赠送礼物 Future sendGift({ required GiftProductModel gift, - String? targetUserId, + required int targetUserId, }) async { try { // 先调用消费接口 @@ -376,7 +385,7 @@ class RoomController extends GetxController with WidgetsBindingObserver { final requestData = { 'channelId': int.tryParse(channelId) ?? 0, 'type': 1, // 1.送礼 2.添加好友 - 'toUId': targetUserId != null ? int.tryParse(targetUserId) ?? 0 : 0, + 'toUId': targetUserId, 'productSpecId': int.tryParse(gift.productSpecId) ?? 0, 'quantity': 1, }; @@ -399,7 +408,7 @@ class RoomController extends GetxController with WidgetsBindingObserver { SvgaAnimationItem( svgaFile: gift.svgaFile, targetUserId: targetUserId, - senderUserId: GlobalData().userId ?? GlobalData().userData?.id, + senderUserId: rtcChannel.value?.uid, giftProductId: gift.productId, ), ); @@ -411,7 +420,7 @@ class RoomController extends GetxController with WidgetsBindingObserver { 'svgaFile': gift.svgaFile, 'giftProductId': gift.productId, 'targetUserId': targetUserId, - 'senderUserId': GlobalData().userId ?? GlobalData().userData?.id, + 'senderUserId': rtcChannel.value?.uid, 'senderNickName': GlobalData().userData?.nickName ?? '', }; @@ -433,8 +442,8 @@ class RoomController extends GetxController with WidgetsBindingObserver { try { final svgaFile = message['svgaFile']?.toString() ?? ''; final giftProductId = message['giftProductId']?.toString(); - final targetUserId = message['targetUserId']?.toString(); - final senderUserId = message['senderUserId']?.toString(); + final targetUserId = message['targetUserId']?.toInt() ?? 0; + final senderUserId = message['senderUserId']?.toInt() ?? 0; final senderNickName = message['senderNickName']?.toString() ?? ''; if (svgaFile.isNotEmpty) { @@ -453,88 +462,6 @@ class RoomController extends GetxController with WidgetsBindingObserver { } catch (e) { print('❌ 处理礼物消息失败: $e'); } - } else if (message['type'] == 'join_chat') { - final response = await _networkService.rtcApi - .getDatingRtcChannelUserDetail( - rtcChannel.value!.channelId, - message['uid'], - ); - if (!response.data.isSuccess) { - return; - } - final currentDetail = rtcChannelDetail.value; - if (currentDetail == null) { - return; - } - final userData = response.data.data; - if (userData == null) { - return; - } - - if (message['role'] == 'male_audience') { - final maleInfo = RtcSeatUserInfo( - miId: userData.miId, - userId: userData.userId, - nickName: userData.nickName, - profilePhoto: userData.profilePhoto, - genderCode: userData.genderCode, - seatNumber: userData.seatNumber, - isFriend: userData.isFriend, - isMicrophoneOn: userData.isMicrophoneOn, - isVideoOn: userData.isVideoOn, - uid: message['uid'] is int - ? message['uid'] as int - : int.tryParse(message['uid']?.toString() ?? ''), - ); - final newDetail = RtcChannelDetail( - channelId: currentDetail.channelId, - anchorInfo: currentDetail.anchorInfo, - maleInfo: maleInfo, - femaleInfo: currentDetail.femaleInfo, - ); - rtcChannelDetail.value = newDetail; - } else if (message['role'] == 'female_audience') { - final femaleInfo = RtcSeatUserInfo( - miId: userData.miId, - userId: userData.userId, - nickName: userData.nickName, - profilePhoto: userData.profilePhoto, - genderCode: userData.genderCode, - seatNumber: userData.seatNumber, - isFriend: userData.isFriend, - isMicrophoneOn: userData.isMicrophoneOn, - isVideoOn: userData.isVideoOn, - uid: message['uid'] is int - ? message['uid'] as int - : int.tryParse(message['uid']?.toString() ?? ''), - ); - final newDetail = RtcChannelDetail( - channelId: currentDetail.channelId, - anchorInfo: currentDetail.anchorInfo, - maleInfo: currentDetail.maleInfo, - femaleInfo: femaleInfo, - ); - rtcChannelDetail.value = newDetail; - } - // } - } else if (message['type'] == 'leave_chat') { - if (message['role'] == 'male_audience') { - final newDetail = RtcChannelDetail( - channelId: rtcChannelDetail.value!.channelId, - anchorInfo: rtcChannelDetail.value!.anchorInfo, - maleInfo: null, - femaleInfo: rtcChannelDetail.value!.femaleInfo, - ); - rtcChannelDetail.value = newDetail; - } else if (message['role'] == 'female_audience') { - final newDetail = RtcChannelDetail( - channelId: rtcChannelDetail.value!.channelId, - anchorInfo: rtcChannelDetail.value!.anchorInfo, - maleInfo: rtcChannelDetail.value!.maleInfo, - femaleInfo: null, - ); - rtcChannelDetail.value = newDetail; - } } } diff --git a/lib/controller/discover/svga_player_manager.dart b/lib/controller/discover/svga_player_manager.dart index ffb9ede..85cb034 100644 --- a/lib/controller/discover/svga_player_manager.dart +++ b/lib/controller/discover/svga_player_manager.dart @@ -6,8 +6,8 @@ import 'package:get/get.dart'; /// SVGA 动画项 class SvgaAnimationItem { final String svgaFile; - final String? targetUserId; // 接收礼物的用户ID - final String? senderUserId; // 发送礼物的用户ID + final int? targetUserId; // 接收礼物的用户ID + final int? senderUserId; // 发送礼物的用户ID final String? giftProductId; // 礼物产品ID SvgaAnimationItem({ diff --git a/lib/rtc/rtc_manager.dart b/lib/rtc/rtc_manager.dart index e7eca2e..fc954bc 100644 --- a/lib/rtc/rtc_manager.dart +++ b/lib/rtc/rtc_manager.dart @@ -6,7 +6,6 @@ import 'package:flutter/foundation.dart'; import 'package:get/get.dart'; import '../controller/discover/room_controller.dart'; -import '../network/network_service.dart'; import '../pages/discover/live_room_page.dart'; /// RTC 管理器,负责管理声网音视频通话功能 @@ -119,6 +118,16 @@ class RTCManager { channelJoinedNotifier.value = true; _currentChannelId = connection.channelId; print('加入频道成功,频道名:${connection.channelId},耗时:${elapsed}ms'); + + // 调用 RoomController 的 fetchRtcChannelDetail 方法 + final channelId = connection.channelId; + if (Get.isRegistered() && + channelId != null && + channelId.isNotEmpty) { + final roomController = Get.find(); + await roomController.fetchRtcChannelDetail(channelId); + } + if (connection.localUid == _currentUid) { await RTMManager.instance.subscribe(_currentChannelId ?? ''); await RTMManager.instance.publishChannelMessage( @@ -131,21 +140,42 @@ class RTCManager { onJoinChannelSuccess!(connection, elapsed); } }, - onUserJoined: (RtcConnection connection, int remoteUid, int elapsed) async{ - print('用户加入,UID:$remoteUid'); - _handleRemoteUserJoined(remoteUid); - if (onUserJoined != null) { - onUserJoined!(connection, remoteUid, elapsed); - } - }, + onUserJoined: + (RtcConnection connection, int remoteUid, int elapsed) async { + print('用户加入,UID:$remoteUid'); + _handleRemoteUserJoined(remoteUid); + + // 调用 RoomController 的 fetchRtcChannelDetail 方法 + final channelId = connection.channelId; + if (Get.isRegistered() && + channelId != null && + channelId.isNotEmpty) { + final roomController = Get.find(); + await roomController.fetchRtcChannelDetail(channelId); + } + + if (onUserJoined != null) { + onUserJoined!(connection, remoteUid, elapsed); + } + }, onUserOffline: ( RtcConnection connection, int remoteUid, UserOfflineReasonType reason, - ) { + ) async { print('用户离开,UID:$remoteUid,原因:$reason'); _handleRemoteUserOffline(remoteUid); + + // 调用 RoomController 的 fetchRtcChannelDetail 方法 + final channelId = connection.channelId; + if (Get.isRegistered() && + channelId != null && + channelId.isNotEmpty) { + final roomController = Get.find(); + await roomController.fetchRtcChannelDetail(channelId); + } + if (onUserOffline != null) { onUserOffline!(connection, remoteUid, reason); } @@ -521,8 +551,13 @@ class RTCManager { await _engine?.muteLocalVideoStream(true); await RTMManager.instance.publishChannelMessage( channelName: _currentChannelId ?? '', - message: json.encode({'type': 'leave_chat', 'uid': _currentUid, 'role': role == CurrentRole.maleAudience - ? 'male_audience' : 'female_audience',}), + message: json.encode({ + 'type': 'leave_chat', + 'uid': _currentUid, + 'role': role == CurrentRole.maleAudience + ? 'male_audience' + : 'female_audience', + }), ); } } diff --git a/lib/widget/live/live_gift_popup.dart b/lib/widget/live/live_gift_popup.dart index b14cd8a..19c5890 100644 --- a/lib/widget/live/live_gift_popup.dart +++ b/lib/widget/live/live_gift_popup.dart @@ -26,7 +26,7 @@ class LiveGiftPopup extends StatefulWidget { final List giftList; // 支持 List 或 List final void Function(int) changeActive; final bool showHeader; // 是否显示头部(用户选择部分) - final String? targetUserId; // 预设的目标用户ID + final int? targetUserId; // 预设的目标用户ID @override State createState() => _LiveGiftPopupState(); @@ -34,7 +34,7 @@ class LiveGiftPopup extends StatefulWidget { class _LiveGiftPopupState extends State { // 选中的用户ID(单选) - String? _selectedUserId; + int? _selectedUserId; @override void initState() { @@ -50,7 +50,7 @@ class _LiveGiftPopupState extends State { } // 切换用户选中状态(单选模式) - void _toggleUserSelection(String userId) { + void _toggleUserSelection(int userId) { setState(() { if (_selectedUserId == userId) { // 如果点击的是已选中的用户,则取消选中 @@ -74,7 +74,7 @@ class _LiveGiftPopupState extends State { } // 检查是否选中了接收用户(如果showHeader为false,则必须有targetUserId) - if (_selectedUserId == null || _selectedUserId!.isEmpty) { + if (_selectedUserId == 0) { if (widget.showHeader) { SmartDialog.showToast('请先选择接收礼物的用户'); } @@ -107,7 +107,7 @@ class _LiveGiftPopupState extends State { } // 发送礼物 - await roomController.sendGift(gift: gift, targetUserId: _selectedUserId); + await roomController.sendGift(gift: gift, targetUserId: _selectedUserId ?? 0); SmartDialog.dismiss(); } @@ -208,9 +208,9 @@ class _LiveGiftPopupState extends State { ...displayUsers.asMap().entries.map((entry) { final index = entry.key; final user = entry.value; - final isSelected = _selectedUserId == user.userId; + final isSelected = _selectedUserId == user.uid; return GestureDetector( - onTap: () => _toggleUserSelection(user.userId), + onTap: () => _toggleUserSelection(user.uid ?? 0), child: Padding( padding: EdgeInsets.only(right: 10.w), child: Stack( diff --git a/lib/widget/live/live_room_anchor_showcase.dart b/lib/widget/live/live_room_anchor_showcase.dart index b5744f5..99d2769 100644 --- a/lib/widget/live/live_room_anchor_showcase.dart +++ b/lib/widget/live/live_room_anchor_showcase.dart @@ -361,11 +361,7 @@ class _LiveRoomAnchorShowcaseState extends State { } // 获取目标用户ID(优先使用userId,如果没有则使用miId) - final targetUserId = userInfo.userId.isNotEmpty - ? userInfo.userId - : userInfo.miId.isNotEmpty - ? userInfo.miId - : null; + final targetUserId = userInfo.uid; if (targetUserId == null) { SmartDialog.showToast('用户ID不存在'); diff --git a/pubspec.lock b/pubspec.lock deleted file mode 100644 index 9ed9dbf..0000000 --- a/pubspec.lock +++ /dev/null @@ -1,1782 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - _fe_analyzer_shared: - dependency: transitive - description: - name: _fe_analyzer_shared - sha256: c209688d9f5a5f26b2fb47a188131a6fb9e876ae9e47af3737c0b4f58a93470d - url: "https://pub.flutter-io.cn" - source: hosted - version: "91.0.0" - agora_rtc_engine: - dependency: "direct main" - description: - name: agora_rtc_engine - sha256: "6559294d18ce4445420e19dbdba10fb58cac955cd8f22dbceae26716e194d70e" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.5.3" - agora_rtm: - dependency: "direct main" - description: - name: agora_rtm - sha256: "3cd8e25ecfccbb2e8ca5a70b173bff080dab782e233f9b40f483adbd31dd38fb" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.5" - agora_token_generator: - dependency: "direct main" - description: - name: agora_token_generator - sha256: eeb53d753430b6d6227b05ace89655cd7990b3137a236937825699d528377904 - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.0" - analyzer: - dependency: transitive - description: - name: analyzer - sha256: f51c8499b35f9b26820cfe914828a6a98a94efd5cc78b37bb7d03debae3a1d08 - url: "https://pub.flutter-io.cn" - source: hosted - version: "8.4.1" - ansicolor: - dependency: transitive - description: - name: ansicolor - sha256: "50e982d500bc863e1d703448afdbf9e5a72eb48840a4f766fa361ffd6877055f" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.0.3" - app_settings: - dependency: "direct main" - description: - name: app_settings - sha256: "3e46c561441e5820d3a25339bf8b51b9e45a5f686873851a20c257a530917795" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.1.1" - archive: - dependency: transitive - description: - name: archive - sha256: "2fde1607386ab523f7a36bb3e7edb43bd58e6edaf2ffb29d8a6d578b297fdbbd" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.0.7" - args: - dependency: transitive - description: - name: args - sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.7.0" - async: - dependency: transitive - description: - name: async - sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.13.0" - audioplayers: - dependency: "direct main" - description: - name: audioplayers - sha256: "5441fa0ceb8807a5ad701199806510e56afde2b4913d9d17c2f19f2902cf0ae4" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.5.1" - audioplayers_android: - dependency: transitive - description: - name: audioplayers_android - sha256: "60a6728277228413a85755bd3ffd6fab98f6555608923813ce383b190a360605" - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.2.1" - audioplayers_darwin: - dependency: transitive - description: - name: audioplayers_darwin - sha256: "0811d6924904ca13f9ef90d19081e4a87f7297ddc19fc3d31f60af1aaafee333" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.3.0" - audioplayers_linux: - dependency: transitive - description: - name: audioplayers_linux - sha256: f75bce1ce864170ef5e6a2c6a61cd3339e1a17ce11e99a25bae4474ea491d001 - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.2.1" - audioplayers_platform_interface: - dependency: transitive - description: - name: audioplayers_platform_interface - sha256: "0e2f6a919ab56d0fec272e801abc07b26ae7f31980f912f24af4748763e5a656" - url: "https://pub.flutter-io.cn" - source: hosted - version: "7.1.1" - audioplayers_web: - dependency: transitive - description: - name: audioplayers_web - sha256: "1c0f17cec68455556775f1e50ca85c40c05c714a99c5eb1d2d57cc17ba5522d7" - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.1.1" - audioplayers_windows: - dependency: transitive - description: - name: audioplayers_windows - sha256: "4048797865105b26d47628e6abb49231ea5de84884160229251f37dfcbe52fd7" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.2.1" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.2" - build: - dependency: transitive - description: - name: build - sha256: c1668065e9ba04752570ad7e038288559d1e2ca5c6d0131c0f5f55e39e777413 - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.0.3" - build_config: - dependency: transitive - description: - name: build_config - sha256: "4f64382b97504dc2fcdf487d5aae33418e08b4703fc21249e4db6d804a4d0187" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.0" - build_daemon: - dependency: transitive - description: - name: build_daemon - sha256: bf05f6e12cfea92d3c09308d7bcdab1906cd8a179b023269eed00c071004b957 - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.1.1" - build_runner: - dependency: "direct dev" - description: - name: build_runner - sha256: "110c56ef29b5eb367b4d17fc79375fa8c18a6cd7acd92c05bb3986c17a079057" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.10.4" - built_collection: - dependency: transitive - description: - name: built_collection - sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.1.1" - built_value: - dependency: transitive - description: - name: built_value - sha256: "426cf75afdb23aa74bd4e471704de3f9393f3c7b04c1e2d9c6f1073ae0b8b139" - url: "https://pub.flutter-io.cn" - source: hosted - version: "8.12.1" - cached_network_image: - dependency: "direct main" - description: - name: cached_network_image - sha256: "7c1183e361e5c8b0a0f21a28401eecdbde252441106a9816400dd4c2b2424916" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.4.1" - cached_network_image_platform_interface: - dependency: transitive - description: - name: cached_network_image_platform_interface - sha256: "35814b016e37fbdc91f7ae18c8caf49ba5c88501813f73ce8a07027a395e2829" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.1.1" - cached_network_image_web: - dependency: transitive - description: - name: cached_network_image_web - sha256: "980842f4e8e2535b8dbd3d5ca0b1f0ba66bf61d14cc3a17a9b4788a3685ba062" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.1" - camera: - dependency: transitive - description: - name: camera - sha256: dfa8fc5a1adaeb95e7a54d86a5bd56f4bb0e035515354c8ac6d262e35cec2ec8 - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.10.6" - camera_android: - dependency: transitive - description: - name: camera_android - sha256: "50c0d1c4b122163e3d7cdfcd6d4cd8078aac27d0f1cd1e7b3fa69e6b3f06f4b7" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.10.10+14" - camera_avfoundation: - dependency: transitive - description: - name: camera_avfoundation - sha256: "035b90c1e33c2efad7548f402572078f6e514d4f82be0a315cd6c6af7e855aa8" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.9.22+6" - camera_platform_interface: - dependency: transitive - description: - name: camera_platform_interface - sha256: "98cfc9357e04bad617671b4c1f78a597f25f08003089dd94050709ae54effc63" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.12.0" - camera_web: - dependency: transitive - description: - name: camera_web - sha256: "77e53acb64d9de8917424eeb32b5c7c73572d1e00954bbf54a1e609d79a751a2" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.3.5+1" - characters: - dependency: transitive - description: - name: characters - sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.4.0" - checked_yaml: - dependency: transitive - description: - name: checked_yaml - sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.0.4" - chewie: - dependency: "direct main" - description: - name: chewie - sha256: "44bcfc5f0dfd1de290c87c9d86a61308b3282a70b63435d5557cfd60f54a69ca" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.13.0" - clock: - dependency: transitive - description: - name: clock - sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.2" - code_builder: - dependency: transitive - description: - name: code_builder - sha256: "11654819532ba94c34de52ff5feb52bd81cba1de00ef2ed622fd50295f9d4243" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.11.0" - collection: - dependency: transitive - description: - name: collection - sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.19.1" - common_utils: - dependency: transitive - description: - name: common_utils - sha256: c26884339b13ff99b0739e56f4b02090c84054ed9dd3a045435cd24e7b99c2c1 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.0" - convert: - dependency: transitive - description: - name: convert - sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.1.2" - cross_file: - dependency: transitive - description: - name: cross_file - sha256: "701dcfc06da0882883a2657c445103380e53e647060ad8d9dfb710c100996608" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.3.5+1" - crypto: - dependency: transitive - description: - name: crypto - sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.0.7" - csslib: - dependency: transitive - description: - name: csslib - sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.2" - cupertino_icons: - dependency: "direct main" - description: - name: cupertino_icons - sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.8" - dart_style: - dependency: transitive - description: - name: dart_style - sha256: a9c30492da18ff84efe2422ba2d319a89942d93e58eb0b73d32abe822ef54b7b - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.1.3" - dbus: - dependency: transitive - description: - name: dbus - sha256: "79e0c23480ff85dc68de79e2cd6334add97e48f7f4865d17686dd6ea81a47e8c" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.7.11" - decimal: - dependency: transitive - description: - name: decimal - sha256: fc706a5618b81e5b367b01dd62621def37abc096f2b46a9bd9068b64c1fa36d0 - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.2.4" - dio: - dependency: "direct main" - description: - name: dio - sha256: d90ee57923d1828ac14e492ca49440f65477f4bb1263575900be731a3dac66a9 - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.9.0" - dio_web_adapter: - dependency: transitive - description: - name: dio_web_adapter - sha256: "7586e476d70caecaf1686d21eee7247ea43ef5c345eab9e0cc3583ff13378d78" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.1" - easy_localization: - dependency: "direct main" - description: - name: easy_localization - sha256: "2ccdf9db8fe4d9c5a75c122e6275674508fd0f0d49c827354967b8afcc56bbed" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.0.8" - easy_logger: - dependency: transitive - description: - name: easy_logger - sha256: c764a6e024846f33405a2342caf91c62e357c24b02c04dbc712ef232bf30ffb7 - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.0.2" - easy_refresh: - dependency: "direct main" - description: - name: easy_refresh - sha256: "486e30abfcaae66c0f2c2798a10de2298eb9dc5e0bb7e1dba9328308968cae0c" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.4.0" - event_bus: - dependency: "direct main" - description: - name: event_bus - sha256: "1a55e97923769c286d295240048fc180e7b0768902c3c2e869fe059aafa15304" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.0.1" - extended_image: - dependency: "direct main" - description: - name: extended_image - sha256: "85199f9233e03abc2ce2e68cbb2991648666af4a527ae4e6250935be8edfddae" - url: "https://pub.flutter-io.cn" - source: hosted - version: "9.1.0" - extended_image_library: - dependency: transitive - description: - name: extended_image_library - sha256: e61dafd94400fff6ef7ed1523d445ff3af137f198f3228e4a3107bc5b4bec5d1 - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.0.6" - fake_async: - dependency: transitive - description: - name: fake_async - sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.3" - ffi: - dependency: transitive - description: - name: ffi - sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.4" - file: - dependency: transitive - description: - name: file - sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 - url: "https://pub.flutter-io.cn" - source: hosted - version: "7.0.1" - file_selector_linux: - dependency: transitive - description: - name: file_selector_linux - sha256: "2567f398e06ac72dcf2e98a0c95df2a9edd03c2c2e0cacd4780f20cdf56263a0" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.9.4" - file_selector_macos: - dependency: transitive - description: - name: file_selector_macos - sha256: "5e0bbe9c312416f1787a68259ea1505b52f258c587f12920422671807c4d618a" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.9.5" - file_selector_platform_interface: - dependency: transitive - description: - name: file_selector_platform_interface - sha256: "35e0bd61ebcdb91a3505813b055b09b79dfdc7d0aee9c09a7ba59ae4bb13dc85" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.7.0" - file_selector_windows: - dependency: transitive - description: - name: file_selector_windows - sha256: "62197474ae75893a62df75939c777763d39c2bc5f73ce5b88497208bc269abfd" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.9.3+5" - fixnum: - dependency: transitive - description: - name: fixnum - sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.1" - flustars: - dependency: "direct main" - description: - name: flustars - sha256: "7019ab8d68c0d4759ee122644d91a165d450b0492717f9e7e9d0ce277dcf664b" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.0.1" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_cache_manager: - dependency: transitive - description: - name: flutter_cache_manager - sha256: "400b6592f16a4409a7f2bb929a9a7e38c72cceb8ffb99ee57bbf2cb2cecf8386" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.4.1" - flutter_lints: - dependency: "direct dev" - description: - name: flutter_lints - sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.0.0" - flutter_localizations: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_native_splash: - dependency: "direct main" - description: - name: flutter_native_splash - sha256: "4fb9f4113350d3a80841ce05ebf1976a36de622af7d19aca0ca9a9911c7ff002" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.7" - flutter_oss_aliyun: - dependency: "direct main" - description: - name: flutter_oss_aliyun - sha256: "8280c1e8dfb792dec6449d1e6052e1d3492b3b3a1dfee456cc41d3f31b4cbc26" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.4.2" - flutter_plugin_android_lifecycle: - dependency: transitive - description: - name: flutter_plugin_android_lifecycle - sha256: ee8068e0e1cd16c4a82714119918efdeed33b3ba7772c54b5d094ab53f9b7fd1 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.0.33" - flutter_screenutil: - dependency: "direct main" - description: - name: flutter_screenutil - sha256: "8239210dd68bee6b0577aa4a090890342d04a136ce1c81f98ee513fc0ce891de" - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.9.3" - flutter_slidable: - dependency: transitive - description: - name: flutter_slidable - sha256: a857de7ea701f276fd6a6c4c67ae885b60729a3449e42766bb0e655171042801 - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.1.2" - flutter_smart_dialog: - dependency: "direct main" - description: - name: flutter_smart_dialog - sha256: "0852df132cb03fd8fc5144eb404c31eb7eb50c22aecb1cc2504f2f598090d756" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.9.8+9" - flutter_svga: - dependency: "direct main" - description: - name: flutter_svga - sha256: "8b96237fd33c80f3e9850245515d41c70520a4bcb9f3415e96b53fb798e6ab0a" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.0.8" - flutter_swiper_null_safety: - dependency: transitive - description: - name: flutter_swiper_null_safety - sha256: "5a855e0080d035c08e82f8b7fd2f106344943a30c9ab483b2584860a2f22eaaf" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.2" - flutter_test: - dependency: "direct dev" - description: flutter - source: sdk - version: "0.0.0" - flutter_web_plugins: - dependency: transitive - description: flutter - source: sdk - version: "0.0.0" - fluwx: - dependency: "direct main" - description: - name: fluwx - sha256: "7e92d2000ee49c5262a88c51ea2d22b91a753d5b29df27cc264bb0a115d65373" - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.7.5" - get: - dependency: "direct main" - description: - name: get - sha256: "5ed34a7925b85336e15d472cc4cfe7d9ebf4ab8e8b9f688585bf6b50f4c3d79a" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.7.3" - get_storage: - dependency: "direct main" - description: - name: get_storage - sha256: "39db1fffe779d0c22b3a744376e86febe4ade43bf65e06eab5af707dc84185a2" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.1" - glob: - dependency: transitive - description: - name: glob - sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.3" - graphs: - dependency: transitive - description: - name: graphs - sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.3.2" - html: - dependency: transitive - description: - name: html - sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.15.6" - http: - dependency: transitive - description: - name: http - sha256: "87721a4a50b19c7f1d49001e51409bddc46303966ce89a65af4f4e6004896412" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.6.0" - http_client_helper: - dependency: transitive - description: - name: http_client_helper - sha256: "8a9127650734da86b5c73760de2b404494c968a3fd55602045ffec789dac3cb1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.0.0" - http_multi_server: - dependency: transitive - description: - name: http_multi_server - sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.2.2" - http_parser: - dependency: transitive - description: - name: http_parser - sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.1.2" - im_flutter_sdk: - dependency: "direct main" - description: - name: im_flutter_sdk - sha256: "5f81988c5edf14a4e3868b9c47f01de2ee355e2203ae5bd95d7cacfe30e15d97" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.15.2" - im_flutter_sdk_android: - dependency: transitive - description: - name: im_flutter_sdk_android - sha256: ce4e01f1374a6cf20bb46f6774e1effbde5c014fd1cd3003b6604813e4fe9e71 - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.15.2" - im_flutter_sdk_interface: - dependency: transitive - description: - name: im_flutter_sdk_interface - sha256: "08ad3ce9fc935e24272bce34aebfd9b3c3c30aab2b9e7d4b2e759acf4a4874f5" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.15.2" - im_flutter_sdk_ios: - dependency: transitive - description: - name: im_flutter_sdk_ios - sha256: "11300c086f5821730224932c28860198ef5d879f7941f9158dddee499f7bb60e" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.15.2" - image: - dependency: transitive - description: - name: image - sha256: "4e973fcf4caae1a4be2fa0a13157aa38a8f9cb049db6529aa00b4d71abc4d928" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.5.4" - image_picker: - dependency: "direct main" - description: - name: image_picker - sha256: "021834d9c0c3de46bf0fe40341fa07168407f694d9b2bb18d532dc1261867f7a" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.2" - image_picker_android: - dependency: "direct main" - description: - name: image_picker_android - sha256: "317a5d961cec5b34e777b9252393f2afbd23084aa6e60fcf601dcf6341b9ebeb" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.8.12+23" - image_picker_for_web: - dependency: transitive - description: - name: image_picker_for_web - sha256: "66257a3191ab360d23a55c8241c91a6e329d31e94efa7be9cf7a212e65850214" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.1.1" - image_picker_ios: - dependency: transitive - description: - name: image_picker_ios - sha256: "997d100ce1dda5b1ba4085194c5e36c9f8a1fb7987f6a36ab677a344cd2dc986" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.8.13+2" - image_picker_linux: - dependency: transitive - description: - name: image_picker_linux - sha256: "1f81c5f2046b9ab724f85523e4af65be1d47b038160a8c8deed909762c308ed4" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.2.2" - image_picker_macos: - dependency: transitive - description: - name: image_picker_macos - sha256: "86f0f15a309de7e1a552c12df9ce5b59fe927e71385329355aec4776c6a8ec91" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.2.2+1" - image_picker_platform_interface: - dependency: transitive - description: - name: image_picker_platform_interface - sha256: "567e056716333a1647c64bb6bd873cff7622233a5c3f694be28a583d4715690c" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.11.1" - image_picker_windows: - dependency: transitive - description: - name: image_picker_windows - sha256: d248c86554a72b5495a31c56f060cf73a41c7ff541689327b1a7dbccc33adfae - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.2.2" - intl: - dependency: "direct main" - description: - name: intl - sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.20.2" - io: - dependency: transitive - description: - name: io - sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.5" - iris_method_channel: - dependency: transitive - description: - name: iris_method_channel - sha256: bfb5cfc6c6eae42da8cd1b35977a72d8b8881848a5dfc3d672e4760a907d11a0 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.4" - js: - dependency: transitive - description: - name: js - sha256: "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.7.2" - json_annotation: - dependency: transitive - description: - name: json_annotation - sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.9.0" - json_serializable: - dependency: "direct dev" - description: - name: json_serializable - sha256: c5b2ee75210a0f263c6c7b9eeea80553dbae96ea1bf57f02484e806a3ffdffa3 - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.11.2" - leak_tracker: - dependency: transitive - description: - name: leak_tracker - sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" - url: "https://pub.flutter-io.cn" - source: hosted - version: "11.0.2" - leak_tracker_flutter_testing: - dependency: transitive - description: - name: leak_tracker_flutter_testing - sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.0.10" - leak_tracker_testing: - dependency: transitive - description: - name: leak_tracker_testing - sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.0.2" - lints: - dependency: transitive - description: - name: lints - sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.1.1" - location_plugin: - dependency: "direct main" - description: - path: location_plugin - relative: true - source: path - version: "0.0.1" - logging: - dependency: transitive - description: - name: logging - sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.0" - matcher: - dependency: transitive - description: - name: matcher - sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.12.17" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.11.1" - meta: - dependency: transitive - description: - name: meta - sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.16.0" - mime: - dependency: transitive - description: - name: mime - sha256: "801fd0b26f14a4a58ccb09d5892c3fbdeff209594300a542492cf13fba9d247a" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.6" - nested: - dependency: transitive - description: - name: nested - sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.0" - octo_image: - dependency: transitive - description: - name: octo_image - sha256: "34faa6639a78c7e3cbe79be6f9f96535867e879748ade7d17c9b1ae7536293bd" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.0" - package_config: - dependency: transitive - description: - name: package_config - sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.0" - package_info_plus: - dependency: "direct main" - description: - name: package_info_plus - sha256: f69da0d3189a4b4ceaeb1a3defb0f329b3b352517f52bed4290f83d4f06bc08d - url: "https://pub.flutter-io.cn" - source: hosted - version: "9.0.0" - package_info_plus_platform_interface: - dependency: transitive - description: - name: package_info_plus_platform_interface - sha256: "202a487f08836a592a6bd4f901ac69b3a8f146af552bbd14407b6b41e1c3f086" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.2.1" - path: - dependency: transitive - description: - name: path - sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.9.1" - path_drawing: - dependency: transitive - description: - name: path_drawing - sha256: bbb1934c0cbb03091af082a6389ca2080345291ef07a5fa6d6e078ba8682f977 - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.1" - path_parsing: - dependency: transitive - description: - name: path_parsing - sha256: "883402936929eac138ee0a45da5b0f2c80f89913e6dc3bf77eb65b84b409c6ca" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.0" - path_provider: - dependency: "direct main" - description: - name: path_provider - sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.5" - path_provider_android: - dependency: transitive - description: - name: path_provider_android - sha256: f2c65e21139ce2c3dad46922be8272bb5963516045659e71bb16e151c93b580e - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.22" - path_provider_foundation: - dependency: transitive - description: - name: path_provider_foundation - sha256: "6d13aece7b3f5c5a9731eaf553ff9dcbc2eff41087fd2df587fd0fed9a3eb0c4" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.5.1" - path_provider_linux: - dependency: transitive - description: - name: path_provider_linux - sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.1" - path_provider_platform_interface: - dependency: transitive - description: - name: path_provider_platform_interface - sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.2" - path_provider_windows: - dependency: transitive - description: - name: path_provider_windows - sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.3.0" - permission_handler: - dependency: "direct main" - description: - name: permission_handler - sha256: bc917da36261b00137bbc8896bf1482169cd76f866282368948f032c8c1caae1 - url: "https://pub.flutter-io.cn" - source: hosted - version: "12.0.1" - permission_handler_android: - dependency: transitive - description: - name: permission_handler_android - sha256: "1e3bc410ca1bf84662104b100eb126e066cb55791b7451307f9708d4007350e6" - url: "https://pub.flutter-io.cn" - source: hosted - version: "13.0.1" - permission_handler_apple: - dependency: transitive - description: - name: permission_handler_apple - sha256: f000131e755c54cf4d84a5d8bd6e4149e262cc31c5a8b1d698de1ac85fa41023 - url: "https://pub.flutter-io.cn" - source: hosted - version: "9.4.7" - permission_handler_html: - dependency: transitive - description: - name: permission_handler_html - sha256: "38f000e83355abb3392140f6bc3030660cfaef189e1f87824facb76300b4ff24" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.1.3+5" - permission_handler_platform_interface: - dependency: transitive - description: - name: permission_handler_platform_interface - sha256: eb99b295153abce5d683cac8c02e22faab63e50679b937fa1bf67d58bb282878 - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.3.0" - permission_handler_windows: - dependency: transitive - description: - name: permission_handler_windows - sha256: "1a790728016f79a41216d88672dbc5df30e686e811ad4e698bfc51f76ad91f1e" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.2.1" - petitparser: - dependency: transitive - description: - name: petitparser - sha256: "1a97266a94f7350d30ae522c0af07890c70b8e62c71e8e3920d1db4d23c057d1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "7.0.1" - photo_manager: - dependency: transitive - description: - name: photo_manager - sha256: "12c8873ec2e7488dd6a0cebcb3c4f1d6c51db34ba696c973faf121b53ffd210e" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.8.2" - photo_manager_image_provider: - dependency: transitive - description: - name: photo_manager_image_provider - sha256: b6015b67b32f345f57cf32c126f871bced2501236c405aafaefa885f7c821e4f - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.0" - platform: - dependency: transitive - description: - name: platform - sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.1.6" - plugin_platform_interface: - dependency: transitive - description: - name: plugin_platform_interface - sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.8" - pointycastle: - dependency: transitive - description: - name: pointycastle - sha256: "92aa3841d083cc4b0f4709b5c74fd6409a3e6ba833ffc7dc6a8fee096366acf5" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.0.0" - pool: - dependency: transitive - description: - name: pool - sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.5.2" - posix: - dependency: transitive - description: - name: posix - sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.0.3" - protobuf: - dependency: transitive - description: - name: protobuf - sha256: de9c9eb2c33f8e933a42932fe1dc504800ca45ebc3d673e6ed7f39754ee4053e - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.2.0" - provider: - dependency: transitive - description: - name: provider - sha256: "4e82183fa20e5ca25703ead7e05de9e4cceed1fbd1eadc1ac3cb6f565a09f272" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.1.5+1" - pub_semver: - dependency: transitive - description: - name: pub_semver - sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.0" - pubspec_parse: - dependency: transitive - description: - name: pubspec_parse - sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.5.0" - rational: - dependency: transitive - description: - name: rational - sha256: cb808fb6f1a839e6fc5f7d8cb3b0a10e1db48b3be102de73938c627f0b636336 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.3" - record: - dependency: "direct main" - description: - name: record - sha256: "6bad72fb3ea6708d724cf8b6c97c4e236cf9f43a52259b654efeb6fd9b737f1f" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.1.2" - record_android: - dependency: transitive - description: - name: record_android - sha256: "9aaf3f151e61399b09bd7c31eb5f78253d2962b3f57af019ac5a2d1a3afdcf71" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.4.5" - record_ios: - dependency: transitive - description: - name: record_ios - sha256: "69fcd37c6185834e90254573599a9165db18a2cbfa266b6d1e46ffffeb06a28c" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.5" - record_linux: - dependency: transitive - description: - name: record_linux - sha256: "235b1f1fb84e810f8149cc0c2c731d7d697f8d1c333b32cb820c449bf7bb72d8" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.1" - record_macos: - dependency: transitive - description: - name: record_macos - sha256: "842ea4b7e95f4dd237aacffc686d1b0ff4277e3e5357865f8d28cd28bc18ed95" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.2" - record_platform_interface: - dependency: transitive - description: - name: record_platform_interface - sha256: b0065fdf1ec28f5a634d676724d388a77e43ce7646fb049949f58c69f3fcb4ed - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.4.0" - record_web: - dependency: transitive - description: - name: record_web - sha256: "3feeffbc0913af3021da9810bb8702a068db6bc9da52dde1d19b6ee7cb9edb51" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.2" - record_windows: - dependency: transitive - description: - name: record_windows - sha256: "223258060a1d25c62bae18282c16783f28581ec19401d17e56b5205b9f039d78" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.7" - retrofit: - dependency: "direct main" - description: - name: retrofit - sha256: "7d78824afa6eeeaf6ac58220910ee7a97597b39e93360d4bda230b7c6df45089" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.9.0" - retrofit_generator: - dependency: "direct dev" - description: - name: retrofit_generator - sha256: "5827551e2496f2c9586e4f23eedd6ce0b519286d2f405f91bf70f342a96b48ce" - url: "https://pub.flutter-io.cn" - source: hosted - version: "10.0.6" - rxdart: - dependency: transitive - description: - name: rxdart - sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.28.0" - sensors_plus: - dependency: transitive - description: - name: sensors_plus - sha256: "89e2bfc3d883743539ce5774a2b93df61effde40ff958ecad78cd66b1a8b8d52" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.1.2" - sensors_plus_platform_interface: - dependency: transitive - description: - name: sensors_plus_platform_interface - sha256: "58815d2f5e46c0c41c40fb39375d3f127306f7742efe3b891c0b1c87e2b5cd5d" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.0.1" - shared_preferences: - dependency: transitive - description: - name: shared_preferences - sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.5.3" - shared_preferences_android: - dependency: transitive - description: - name: shared_preferences_android - sha256: "46a46fd64659eff15f4638bbe19de43f9483f0e0bf024a9fb6b3582064bacc7b" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.17" - shared_preferences_foundation: - dependency: transitive - description: - name: shared_preferences_foundation - sha256: "4e7eaffc2b17ba398759f1151415869a34771ba11ebbccd1b0145472a619a64f" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.5.6" - shared_preferences_linux: - dependency: transitive - description: - name: shared_preferences_linux - sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.1" - shared_preferences_platform_interface: - dependency: transitive - description: - name: shared_preferences_platform_interface - sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.1" - shared_preferences_web: - dependency: transitive - description: - name: shared_preferences_web - sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.3" - shared_preferences_windows: - dependency: transitive - description: - name: shared_preferences_windows - sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.1" - shelf: - dependency: transitive - description: - name: shelf - sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.4.2" - shelf_web_socket: - dependency: transitive - description: - name: shelf_web_socket - sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.0.0" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.0" - source_gen: - dependency: transitive - description: - name: source_gen - sha256: "07b277b67e0096c45196cbddddf2d8c6ffc49342e88bf31d460ce04605ddac75" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.1.1" - source_helper: - dependency: transitive - description: - name: source_helper - sha256: "6a3c6cc82073a8797f8c4dc4572146114a39652851c157db37e964d9c7038723" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.8" - source_span: - dependency: transitive - description: - name: source_span - sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.10.1" - sp_util: - dependency: transitive - description: - name: sp_util - sha256: "9da43dce5de79c17a787d0626bf01538d63090ca32521200d22a232171c495dc" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.0.3" - sqflite: - dependency: transitive - description: - name: sqflite - sha256: e2297b1da52f127bc7a3da11439985d9b536f75070f3325e62ada69a5c585d03 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.2" - sqflite_android: - dependency: transitive - description: - name: sqflite_android - sha256: ecd684501ebc2ae9a83536e8b15731642b9570dc8623e0073d227d0ee2bfea88 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.2+2" - sqflite_common: - dependency: transitive - description: - name: sqflite_common - sha256: "6ef422a4525ecc601db6c0a2233ff448c731307906e92cabc9ba292afaae16a6" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.5.6" - sqflite_darwin: - dependency: transitive - description: - name: sqflite_darwin - sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.2" - sqflite_platform_interface: - dependency: transitive - description: - name: sqflite_platform_interface - sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.0" - stack_trace: - dependency: transitive - description: - name: stack_trace - sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.12.1" - stream_channel: - dependency: transitive - description: - name: stream_channel - sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.4" - stream_transform: - dependency: transitive - description: - name: stream_transform - sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.1.1" - string_scanner: - dependency: transitive - description: - name: string_scanner - sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.4.1" - synchronized: - dependency: transitive - description: - name: synchronized - sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0 - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.4.0" - tdesign_flutter: - dependency: "direct main" - description: - name: tdesign_flutter - sha256: cf166a5fdbbfd9129305d2c2906633c8d0151bbb2d0a6fbcf901bdd76726a555 - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.2.6" - tdesign_flutter_adaptation: - dependency: transitive - description: - name: tdesign_flutter_adaptation - sha256: "707bbc52ec8b5872ea808500200f402007acf24c03a1cc823a3be2113c1d813a" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.32.0" - term_glyph: - dependency: transitive - description: - name: term_glyph - sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.2.2" - test_api: - dependency: transitive - description: - name: test_api - sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.7.6" - typed_data: - dependency: transitive - description: - name: typed_data - sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.4.0" - universal_io: - dependency: transitive - description: - name: universal_io - sha256: f63cbc48103236abf48e345e07a03ce5757ea86285ed313a6a032596ed9301e2 - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.3.1" - url_launcher: - dependency: "direct main" - description: - name: url_launcher - sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8 - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.3.2" - url_launcher_android: - dependency: transitive - description: - name: url_launcher_android - sha256: "767344bf3063897b5cf0db830e94f904528e6dd50a6dfaf839f0abf509009611" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.3.28" - url_launcher_ios: - dependency: transitive - description: - name: url_launcher_ios - sha256: cfde38aa257dae62ffe79c87fab20165dfdf6988c1d31b58ebf59b9106062aad - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.3.6" - url_launcher_linux: - dependency: transitive - description: - name: url_launcher_linux - sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.2.2" - url_launcher_macos: - dependency: transitive - description: - name: url_launcher_macos - sha256: "368adf46f71ad3c21b8f06614adb38346f193f3a59ba8fe9a2fd74133070ba18" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.2.5" - url_launcher_platform_interface: - dependency: transitive - description: - name: url_launcher_platform_interface - sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.3.2" - url_launcher_web: - dependency: transitive - description: - name: url_launcher_web - sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.1" - url_launcher_windows: - dependency: transitive - description: - name: url_launcher_windows - sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f" - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.1.5" - uuid: - dependency: transitive - description: - name: uuid - sha256: a11b666489b1954e01d992f3d601b1804a33937b5a8fe677bd26b8a9f96f96e8 - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.5.2" - vector_math: - dependency: transitive - description: - name: vector_math - sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.2.0" - video_player: - dependency: "direct main" - description: - name: video_player - sha256: "096bc28ce10d131be80dfb00c223024eb0fba301315a406728ab43dd99c45bdf" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.10.1" - video_player_android: - dependency: transitive - description: - name: video_player_android - sha256: "3f7ef3fb7b29f510e58f4d56b6ffbc3463b1071f2cf56e10f8d25f5b991ed85b" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.8.21" - video_player_avfoundation: - dependency: transitive - description: - name: video_player_avfoundation - sha256: e4d33b79a064498c6eb3a6a492b6a5012573d4943c28d566caf1a6c0840fe78d - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.8.8" - video_player_platform_interface: - dependency: transitive - description: - name: video_player_platform_interface - sha256: "57c5d73173f76d801129d0531c2774052c5a7c11ccb962f1830630decd9f24ec" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.6.0" - video_player_web: - dependency: transitive - description: - name: video_player_web - sha256: "9f3c00be2ef9b76a95d94ac5119fb843dca6f2c69e6c9968f6f2b6c9e7afbdeb" - url: "https://pub.flutter-io.cn" - source: hosted - version: "2.4.0" - video_thumbnail: - dependency: "direct main" - description: - name: video_thumbnail - sha256: "181a0c205b353918954a881f53a3441476b9e301641688a581e0c13f00dc588b" - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.5.6" - visibility_detector: - dependency: transitive - description: - name: visibility_detector - sha256: dd5cc11e13494f432d15939c3aa8ae76844c42b723398643ce9addb88a5ed420 - url: "https://pub.flutter-io.cn" - source: hosted - version: "0.4.0+2" - vm_service: - dependency: transitive - description: - name: vm_service - sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60" - url: "https://pub.flutter-io.cn" - source: hosted - version: "15.0.2" - wakelock_plus: - dependency: "direct main" - description: - name: wakelock_plus - sha256: "9296d40c9adbedaba95d1e704f4e0b434be446e2792948d0e4aa977048104228" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.4.0" - wakelock_plus_platform_interface: - dependency: transitive - description: - name: wakelock_plus_platform_interface - sha256: "036deb14cd62f558ca3b73006d52ce049fabcdcb2eddfe0bf0fe4e8a943b5cf2" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.3.0" - watcher: - dependency: transitive - description: - name: watcher - sha256: "592ab6e2892f67760543fb712ff0177f4ec76c031f02f5b4ff8d3fc5eb9fb61a" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.4" - web: - dependency: transitive - description: - name: web - sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.1" - web_socket: - dependency: transitive - description: - name: web_socket - sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.1" - web_socket_channel: - dependency: transitive - description: - name: web_socket_channel - sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.0.3" - wechat_assets_picker: - dependency: "direct main" - description: - name: wechat_assets_picker - sha256: c307e50394c1e6dfcd5c4701e84efb549fce71444fedcf2e671c50d809b3e2a1 - url: "https://pub.flutter-io.cn" - source: hosted - version: "9.8.0" - wechat_camera_picker: - dependency: "direct main" - description: - name: wechat_camera_picker - sha256: "776ce32feda72d84b63425533a27d3b822bfb93cc063d2aef3cc6d788769f36b" - url: "https://pub.flutter-io.cn" - source: hosted - version: "4.4.0" - wechat_picker_library: - dependency: transitive - description: - name: wechat_picker_library - sha256: "5cb61b9aa935b60da5b043f8446fbb9c5077419f20ccc4856bf444aec4f44bc1" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.0.7" - win32: - dependency: transitive - description: - name: win32 - sha256: d7cb55e04cd34096cd3a79b3330245f54cb96a370a1c27adb3c84b917de8b08e - url: "https://pub.flutter-io.cn" - source: hosted - version: "5.15.0" - xdg_directories: - dependency: transitive - description: - name: xdg_directories - sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" - url: "https://pub.flutter-io.cn" - source: hosted - version: "1.1.0" - xml: - dependency: transitive - description: - name: xml - sha256: "971043b3a0d3da28727e40ed3e0b5d18b742fa5a68665cca88e74b7876d5e025" - url: "https://pub.flutter-io.cn" - source: hosted - version: "6.6.1" - yaml: - dependency: transitive - description: - name: yaml - sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce - url: "https://pub.flutter-io.cn" - source: hosted - version: "3.1.3" -sdks: - dart: ">=3.9.0 <4.0.0" - flutter: ">=3.35.0" diff --git a/pubspec.yaml b/pubspec.yaml index 31033b9..aab6b80 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -45,7 +45,7 @@ dependencies: path_provider: ^2.1.4 event_bus: ^2.0.1 dio: ^5.9.0 - retrofit: ^4.9.0 + retrofit: 4.9.0 flutter_native_splash: ^2.4.7 im_flutter_sdk: ^4.15.2 easy_localization: ^3.0.8