diff --git a/lib/core/router/app_router.dart b/lib/core/router/app_router.dart index 1efa595..5131e11 100644 --- a/lib/core/router/app_router.dart +++ b/lib/core/router/app_router.dart @@ -12,6 +12,7 @@ import 'package:new_learn/features/class/my_interact_page.dart'; import 'package:new_learn/features/class/my_update_detail_page.dart'; import 'package:new_learn/core/api/class/model.dart'; import 'package:new_learn/features/my/my_page.dart'; +import 'package:new_learn/features/conquerPackage/captureList/index.dart'; import 'package:new_learn/features/my/my_point/my_point_page.dart'; import 'package:new_learn/features/recite/recite_page.dart'; import 'package:new_learn/features/task/task_page.dart'; @@ -144,6 +145,11 @@ final GoRouter appRouter = GoRouter( ), // ---------- 登录页 ---------- GoRoute(path: '/login', builder: (_, _) => const LoginPage()), + // ---------- 攻克包 - 截图名单 ---------- + GoRoute( + path: '/conquerPackage/captureList', + builder: (_, _) => const CaptureListPage(), + ), // app_router.dart 的 routes 里加,不用管跳转逻辑 // GoRoute(path: '/task/:id', builder: (_, _) => const TaskDetailPage()), // ---------- 以后新业务页在这里加,一行一个 ---------- diff --git a/lib/features/conquerPackage/beforeDuringClass/index.dart b/lib/features/conquerPackage/beforeDuringClass/index.dart new file mode 100644 index 0000000..d121eb0 --- /dev/null +++ b/lib/features/conquerPackage/beforeDuringClass/index.dart @@ -0,0 +1,18 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; + +class CaptureListPage extends StatelessWidget { + const CaptureListPage({super.key}); + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text('Align 对齐布局 Demo11111')), + // ---------- 下方即为核心代码,可直接复制到 Scaffold body ---------- + body: Container( + width: 300.w, + height: 300.h, + color: Colors.grey[300], + ), + ); + } +} diff --git a/lib/features/conquerPackage/captureList/index.dart b/lib/features/conquerPackage/captureList/index.dart new file mode 100644 index 0000000..d7b7099 --- /dev/null +++ b/lib/features/conquerPackage/captureList/index.dart @@ -0,0 +1,959 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:cached_network_image/cached_network_image.dart'; +import 'package:new_learn/core/utils/img_url.dart'; + +/// ============================================================ +/// 【CaptureListPage】攻克列表页 —— 对标 Vue pages/conquerPackage/captureList/index.vue +/// +/// 一、Vue 源结构: +/// HeaderBac + NavBar(title: "攻克列表", bg-color: #ADD1FF00) +/// ├── rule-view 攻克规则说明卡片(remark 富文本) +/// └── capture-list-refresh-wrap +/// └── up-pull-refresh +/// ├── captureList 攻克项列表 +/// │ └── capture-item +/// │ ├── capture-info (左:标题+学科标签;右:攻克标准百分比) +/// │ └── capture-progress +/// │ ├── progress-top (进度条 + 右侧按钮) +/// │ └── capture-progress-info (展开的历次攻克详情) +/// └── DataEmpty 空状态 +/// +/// 二、换算规则(本工程统一):Vue 的 `N rpx` → Flutter 的 `(N/2).w/.h/.sp/.r` +/// 例:间距 28rpx → 14.w;圆角 32rpx → 16.r;字号 28rpx → 14.sp +/// +/// 三、状态(StatefulWidget): +/// - remark: 规则说明文字 +/// - data: 攻克包列表 +/// - refreshing: 下拉刷新状态 +/// - isDataEmpty: 空数据标记 +/// +/// 四、接口暂未对接,使用 Mock 数据展示页面效果。 +/// ============================================================ + +/// 攻克记录状态枚举 +enum CaptureRecordStatus { + none(0), // 未开始 + success(1), // 成功 + fail(2), // 失败 + processing(3); // 判题中 + + final int value; + const CaptureRecordStatus(this.value); + + factory CaptureRecordStatus.fromInt(int? v) { + return CaptureRecordStatus.values.firstWhere( + (e) => e.value == v, + orElse: () => CaptureRecordStatus.none, + ); + } +} + +/// 攻克包状态 +enum CapturePackStatus { + notStarted(0), // 未开始 + inProgress(1), // 进行中 + conquered(2), // 已攻克 + failed(3), // 攻克失败 + laterStudy(4), // 后续学习 + judging(5); // 判题中 + + final int value; + const CapturePackStatus(this.value); + + factory CapturePackStatus.fromInt(int? v) { + return CapturePackStatus.values.firstWhere( + (e) => e.value == v, + orElse: () => CapturePackStatus.notStarted, + ); + } +} + +/// 攻克记录模型 +class CaptureRecord { + final String id; + final CaptureRecordStatus status; + final int? accuracyRate; // 正确率百分比 + final int? overcomeTimeSecond; // 攻克用时(秒) + + const CaptureRecord({ + required this.id, + required this.status, + this.accuracyRate, + this.overcomeTimeSecond, + }); +} + +/// 攻克包模型 +class CapturePack { + final String id; + final String name; + final String baseSubjectName; + final int overcomeStandard; // 攻克标准百分比 + final int maxOvercomeCount; // 最大攻克次数 + final int recordCount; // 已进行次数 + final CapturePackStatus status; + final List records; + bool isShowCaptureInfo; // 是否展开详情 + + CapturePack({ + required this.id, + required this.name, + required this.baseSubjectName, + required this.overcomeStandard, + required this.maxOvercomeCount, + required this.recordCount, + required this.status, + required this.records, + this.isShowCaptureInfo = false, + }); +} + +class CaptureListPage extends StatefulWidget { + const CaptureListPage({super.key}); + + @override + State createState() => _CaptureListPageState(); +} + +class _CaptureListPageState extends State { + // ========== 颜色常量 ========== + static const Color _bgColor = Color(0xFFF5F8FA); + static const Color _titleColor = Color(0xFF1D2B47); + static const Color _subtitleColor = Color(0xFF495A7A); + static const Color _primary = Color(0xFF3D7DF5); + static const Color _success = Color(0xFF00CC96); + static const Color _error = Color(0xFFFF4D4D); + static const Color _processing = Color(0xFFF5963D); + static const Color _barBg = Color(0xFFE3ECFF); + static const Color _mutedText = Color(0xFF687FAD); + + // ========== 状态 ========== + String _remark = ''; + List _data = []; + bool _refreshing = false; + bool _isDataEmpty = false; + + @override + void initState() { + super.initState(); + _loadMockData(); + } + + /// Mock 数据 —— 替代真实接口,仅用于展示页面效果 + void _loadMockData() { + _remark = '1. 每次攻克需达到指定正确率才算成功;\n' + '2. 攻克失败可重新挑战,最多可挑战 N 次;\n' + '3. 判题中状态下不能进行操作;\n' + '4. 详情可查看每次攻克的用时与正确率。'; + + _data = [ + CapturePack( + id: '1', + name: '一元一次方程入门', + baseSubjectName: '数学', + overcomeStandard: 80, + maxOvercomeCount: 3, + recordCount: 2, + status: CapturePackStatus.inProgress, + records: [ + CaptureRecord( + id: 'r1-1', + status: CaptureRecordStatus.fail, + accuracyRate: 60, + overcomeTimeSecond: 480, + ), + CaptureRecord( + id: 'r1-2', + status: CaptureRecordStatus.success, + accuracyRate: 90, + overcomeTimeSecond: 600, + ), + ], + isShowCaptureInfo: true, + ), + CapturePack( + id: '2', + name: '英语单词 Unit 3', + baseSubjectName: '英语', + overcomeStandard: 70, + maxOvercomeCount: 5, + recordCount: 0, + status: CapturePackStatus.notStarted, + records: [], + ), + CapturePack( + id: '3', + name: '文言文翻译技巧', + baseSubjectName: '语文', + overcomeStandard: 75, + maxOvercomeCount: 3, + recordCount: 3, + status: CapturePackStatus.conquered, + records: [ + CaptureRecord( + id: 'r3-1', + status: CaptureRecordStatus.fail, + accuracyRate: 50, + overcomeTimeSecond: 300, + ), + CaptureRecord( + id: 'r3-2', + status: CaptureRecordStatus.fail, + accuracyRate: 65, + overcomeTimeSecond: 420, + ), + CaptureRecord( + id: 'r3-3', + status: CaptureRecordStatus.success, + accuracyRate: 88, + overcomeTimeSecond: 540, + ), + ], + ), + CapturePack( + id: '4', + name: '物理力学综合', + baseSubjectName: '物理', + overcomeStandard: 85, + maxOvercomeCount: 3, + recordCount: 1, + status: CapturePackStatus.judging, + records: [ + CaptureRecord( + id: 'r4-1', + status: CaptureRecordStatus.processing, + accuracyRate: null, + overcomeTimeSecond: 700, + ), + ], + isShowCaptureInfo: true, + ), + CapturePack( + id: '5', + name: '化学方程式配平', + baseSubjectName: '化学', + overcomeStandard: 80, + maxOvercomeCount: 3, + recordCount: 3, + status: CapturePackStatus.failed, + records: [ + CaptureRecord( + id: 'r5-1', + status: CaptureRecordStatus.fail, + accuracyRate: 40, + overcomeTimeSecond: 200, + ), + CaptureRecord( + id: 'r5-2', + status: CaptureRecordStatus.fail, + accuracyRate: 55, + overcomeTimeSecond: 300, + ), + CaptureRecord( + id: 'r5-3', + status: CaptureRecordStatus.fail, + accuracyRate: 60, + overcomeTimeSecond: 400, + ), + ], + ), + CapturePack( + id: '6', + name: '历史时间轴梳理', + baseSubjectName: '历史', + overcomeStandard: 70, + maxOvercomeCount: 3, + recordCount: 2, + status: CapturePackStatus.laterStudy, + records: [ + CaptureRecord( + id: 'r6-1', + status: CaptureRecordStatus.success, + accuracyRate: 80, + overcomeTimeSecond: 360, + ), + CaptureRecord( + id: 'r6-2', + status: CaptureRecordStatus.success, + accuracyRate: 95, + overcomeTimeSecond: 300, + ), + ], + ), + ]; + + _isDataEmpty = _data.isEmpty; + } + + /// 下拉刷新 + Future _onRefresh() async { + if (_refreshing) return; + setState(() => _refreshing = true); + // 模拟网络请求延迟 + await Future.delayed(const Duration(milliseconds: 800)); + if (mounted) { + setState(() { + _loadMockData(); + _refreshing = false; + }); + } + } + + /// 切换攻克详情展开/收起 + void _toggleCaptureInfo(CapturePack item) { + final validRecords = item.records.where((r) => r.status != CaptureRecordStatus.none).toList(); + if (validRecords.isEmpty) return; + setState(() { + item.isShowCaptureInfo = !item.isShowCaptureInfo; + }); + } + + /// 点击按钮跳转(占位,不接接口) + void _navigateToCaptureInfo(CapturePack item) { + if (item.status == CapturePackStatus.judging) { + ScaffoldMessenger.of(context).showSnackBar( + const SnackBar(content: Text('该攻克正在判题中,暂不能操作'), behavior: SnackBarBehavior.floating), + ); + return; + } + // TODO(业务逻辑): 对接 GetStartOvercome 接口后跳转 + } + + /// 点击报告(占位,不接接口) + void _getReport(CaptureRecord record, CapturePack pack) { + if (record.status == CaptureRecordStatus.processing) return; + // TODO(业务逻辑): 跳转报告页 + } + + /// 数字转中文(1-9) + String _numberToChinese(int num) { + const chineseNum = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']; + return chineseNum[num.clamp(0, 9)]; + } + + /// 秒数格式化:mm分ss秒 / h时mm分 + String _formatDuration(int seconds) { + if (seconds <= 0) return '0秒'; + final h = seconds ~/ 3600; + final m = (seconds % 3600) ~/ 60; + final s = seconds % 60; + if (h > 0) return '${h}时${m}分'; + if (m > 0) return '${m}分${s}秒'; + return '${s}秒'; + } + + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: _bgColor, + body: Stack( + children: [ + // 页面底色 + const Positioned.fill(child: ColoredBox(color: _bgColor)), + // 顶部背景图(对标 HeaderBac,bg-size: 100% auto → width 100%,高度自适应) + Positioned( + top: 0, + left: 0, + right: 0, + child: CachedNetworkImage( + imageUrl: ImgUrl.build( + '/StaticResource/2026-05-26/my-header-bg-default1779775984375.png', + ), + fit: BoxFit.fitWidth, + width: double.infinity, + ), + ), + // 主内容(安全区内,含透明 AppBar + 规则卡片 + 列表) + SafeArea( + child: Column( + children: [ + // 顶部导航栏(对标 NavBar,bg-color 透明,白色文字) + SizedBox( + height: 44.h, + child: Stack( + children: [ + const Center( + child: Text( + '攻克列表', + style: TextStyle( + color: Colors.white, + fontSize: 18, + fontWeight: FontWeight.w600, + ), + ), + ), + Positioned( + left: 16.w, + top: 0, + bottom: 0, + child: IconButton( + icon: const Icon(Icons.arrow_back_ios, color: Colors.white, size: 20), + onPressed: () => Navigator.of(context).maybePop(), + padding: EdgeInsets.zero, + constraints: const BoxConstraints(), + ), + ), + ], + ), + ), + // 规则卡片(透明底 + 白边,置于渐变背景之上) + _buildRuleView(), + SizedBox(height: 19.h), + // 列表区域 + Expanded( + child: RefreshIndicator( + onRefresh: _onRefresh, + child: CustomScrollView( + physics: const AlwaysScrollableScrollPhysics(), + slivers: [ + if (_isDataEmpty) + SliverFillRemaining(child: _buildEmpty()) + else + SliverPadding( + padding: EdgeInsets.symmetric(horizontal: 14.w), + sliver: SliverList( + delegate: SliverChildBuilderDelegate( + (context, index) => _buildCaptureItem(_data[index]), + childCount: _data.length, + ), + ), + ), + SliverToBoxAdapter(child: SizedBox(height: 20.h)), + ], + ), + ), + ), + ], + ), + ), + ], + ), + ); + } + + // ============================================================ + // 子组件构建方法 + // ============================================================ + + /// 攻克规则说明卡片(透明底 + 白色边框 + 阴影,对标 Vue rule-view) + Widget _buildRuleView() { + return Container( + margin: EdgeInsets.fromLTRB(14.w, 16.h, 14.w, 0), + padding: EdgeInsets.symmetric(horizontal: 14.w, vertical: 16.h), + decoration: BoxDecoration( + color: Colors.transparent, + borderRadius: BorderRadius.circular(16.r), + border: Border.all(color: Colors.white, width: 1.w), + boxShadow: [ + BoxShadow( + color: const Color.fromARGB(255, 255, 255, 255).withOpacity(0.05), + blurRadius: 20.r, + offset: Offset(0, 10.h), + ), + ], + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + _buildRuleTitle(), + SizedBox(height: 16.h), + _buildRuleContent(), + ], + ), + ); + } + + Widget _buildRuleTitle() { + return Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + CachedNetworkImage( + imageUrl: ImgUrl.build('/StaticResource/2026-04-10/capture-list-rule.png'), + width: 18.w, + height: 18.w, + fit: BoxFit.fitWidth, + ), + SizedBox(width: 6.w), + Stack( + clipBehavior: Clip.none, + children: [ + Padding( + padding: EdgeInsets.only(bottom: 2.h), + child: Text( + '攻克规则说明', + style: TextStyle( + fontSize: 17.sp, + fontWeight: FontWeight.bold, + color: _titleColor, + ), + ), + ), + Positioned( + bottom: -1.h, + right: 0, + child: Container( + width: 59.5.w, + height: 9.h, + decoration: BoxDecoration( + gradient: const LinearGradient( + colors: [ + Color(0x003D7DF5), + Color(0x331D9CFF), + Color(0x808AECFD), + ], + ), + borderRadius: BorderRadius.circular(50.r), + ), + ), + ), + ], + ), + ], + ); + } + + Widget _buildRuleContent() { + final lines = _remark.split('\n'); + return Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: lines.asMap().entries.map((entry) { + final isLast = entry.key == lines.length - 1; + return Padding( + padding: EdgeInsets.only(bottom: isLast ? 0 : 10.h), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Container( + width: 4.w, + height: 4.w, + margin: EdgeInsets.fromLTRB(6.5.w, 7.5.h, 13.w, 0), + decoration: const BoxDecoration( + color: _primary, + shape: BoxShape.circle, + ), + ), + Expanded( + child: Text( + entry.value, + style: TextStyle(fontSize: 14.sp, color: _subtitleColor, height: 1.5), + ), + ), + ], + ), + ); + }).toList(), + ); + } + + /// 空状态 + Widget _buildEmpty() { + return Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + CachedNetworkImage( + imageUrl: ImgUrl.build('/StaticResource/2026-04-11/noCoursesss.png'), + width: 200.w, + height: 200.w, + ), + SizedBox(height: 16.h), + Text('暂无攻克', style: TextStyle(fontSize: 14.sp, color: _mutedText)), + ], + ), + ); + } + + /// 攻克项卡片 + Widget _buildCaptureItem(CapturePack item) { + return Container( + margin: EdgeInsets.only(bottom: 14.h), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16.r), + border: Border.all(color: Colors.white, width: 1.w), + gradient: const LinearGradient( + begin: Alignment.topCenter, + end: Alignment.bottomCenter, + colors: [Color(0xFFFAFEFF), Color(0xFFEDF7FF)], + ), + ), + child: Column( + children: [ + _buildCaptureInfo(item), + _buildCaptureProgress(item), + ], + ), + ); + } + + /// 攻克项头部信息 + Widget _buildCaptureInfo(CapturePack item) { + return Padding( + padding: EdgeInsets.fromLTRB(14.w, 18.5.h, 14.w, 0), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Expanded( + flex: 4, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + _buildCaptureTitle(item.name), + SizedBox(height: 10.h), + _buildSubjectTag(item.baseSubjectName), + ], + ), + ), + SizedBox(width: 10.w), + _buildStandardBox(item.overcomeStandard), + ], + ), + ); + } + + Widget _buildCaptureTitle(String name) { + return Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Container( + width: 3.w, + height: 14.h, + margin: EdgeInsets.only(right: 7.5.w), + decoration: BoxDecoration( + color: _primary, + borderRadius: BorderRadius.circular(10.r), + ), + ), + Expanded( + child: Text( + name, + style: TextStyle( + fontSize: 16.sp, + fontWeight: FontWeight.bold, + color: _titleColor, + ), + ), + ), + ], + ); + } + + Widget _buildSubjectTag(String subject) { + return Container( + padding: EdgeInsets.symmetric(horizontal: 1.w, vertical: 1.h), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(6.r), + gradient: LinearGradient( + colors: const [Color(0xFF5A9EFF), Color(0xFFF2F8FF), Color(0xFF5A9EFF)], + begin: Alignment.centerLeft, + end: Alignment.centerRight, + ), + ), + child: Container( + padding: EdgeInsets.symmetric(horizontal: 8.w, vertical: 2.h), + decoration: BoxDecoration( + color: const Color(0xFFE5F0FF), + borderRadius: BorderRadius.circular(4.r), + ), + child: Text( + subject, + style: TextStyle( + fontSize: 12.sp, + color: _primary, + fontWeight: FontWeight.w500, + ), + ), + ), + ); + } + + /// 右侧攻克标准百分比盒子 + Widget _buildStandardBox(int standard) { + return Container( + width: 60.w, + height: 51.h, + padding: EdgeInsets.all(2.w), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(6.r), + gradient: const LinearGradient( + begin: Alignment.topCenter, + end: Alignment.bottomCenter, + colors: [Color(0xFF60D0C0), Color(0xFF6EE9DB)], + ), + ), + child: Column( + children: [ + Expanded( + flex: 1, + child: Center( + child: Text( + '攻克标准', + style: TextStyle(fontSize: 12.sp, color: Colors.white), + ), + ), + ), + Container( + padding: EdgeInsets.symmetric(vertical: 1.5.h, horizontal: 4.w), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.only( + bottomLeft: Radius.circular(6.r), + bottomRight: Radius.circular(6.r), + ), + ), + child: Row( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + CachedNetworkImage( + imageUrl: ImgUrl.build('/StaticResource/2026-04-10/capture-list-success.png'), + width: 14.w, + height: 14.w, + fit: BoxFit.fitWidth, + ), + SizedBox(width: 5.5.w), + Text( + '$standard%', + style: TextStyle(fontSize: 15.sp, color: _success, fontWeight: FontWeight.bold), + ), + ], + ), + ), + ], + ), + ); + } + + /// 进度 + 按钮 + 详情展开区 + Widget _buildCaptureProgress(CapturePack item) { + return Container( + margin: EdgeInsets.only(top: 10.5.h), + padding: EdgeInsets.symmetric(horizontal: 14.w, vertical: 16.h), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(16.r), + ), + child: Column( + children: [ + _buildProgressTop(item), + if (item.isShowCaptureInfo) _buildProgressInfo(item), + ], + ), + ); + } + + Widget _buildProgressTop(CapturePack item) { + return Row( + children: [ + Expanded( + child: GestureDetector( + onTap: () => _toggleCaptureInfo(item), + behavior: HitTestBehavior.opaque, + child: Row( + children: [ + Text('攻克次数', style: TextStyle(fontSize: 12.sp, color: _mutedText)), + SizedBox(width: 10.w), + _buildProgressBars(item), + SizedBox(width: 10.w), + _buildProgressCount(item), + ], + ), + ), + ), + _buildButtonGroup(item), + ], + ); + } + + Widget _buildProgressBars(CapturePack item) { + return Row( + children: List.generate(item.maxOvercomeCount, (idx) { + final record = idx < item.records.length ? item.records[idx] : null; + Color color; + switch (record?.status ?? CaptureRecordStatus.none) { + case CaptureRecordStatus.success: + color = _success; + break; + case CaptureRecordStatus.fail: + color = _error; + break; + case CaptureRecordStatus.processing: + color = _processing; + break; + default: + color = _barBg; + } + return Container( + width: 20.w, + height: 4.h, + margin: EdgeInsets.only(right: idx == item.maxOvercomeCount - 1 ? 0 : 4.w), + decoration: BoxDecoration( + color: color, + borderRadius: BorderRadius.circular(4.r), + ), + ); + }), + ); + } + + Widget _buildProgressCount(CapturePack item) { + final hasRecords = item.recordCount > 0 && item.records.isNotEmpty; + return Row( + children: [ + Text( + '${item.recordCount}/${item.maxOvercomeCount}', + style: TextStyle(fontSize: 12.sp, color: _mutedText), + ), + if (hasRecords) + Padding( + padding: EdgeInsets.only(left: 4.5.w), + child: Icon( + item.isShowCaptureInfo ? Icons.keyboard_arrow_up : Icons.keyboard_arrow_down, + size: 12.sp, + color: _mutedText, + ), + ), + ], + ); + } + + /// 右侧按钮组(根据状态不同显示) + Widget _buildButtonGroup(CapturePack item) { + switch (item.status) { + case CapturePackStatus.notStarted: + return _buildOutlineButton('开始攻克', _primary, () => _navigateToCaptureInfo(item)); + case CapturePackStatus.inProgress: + final text = item.records.isNotEmpty ? '继续攻克' : '开始攻克'; + return _buildOutlineButton(text, _primary, () => _navigateToCaptureInfo(item)); + case CapturePackStatus.conquered: + return _buildOutlineButton('已攻克', _success, null, opacity: 0.5); + case CapturePackStatus.failed: + return _buildOutlineButton('攻克失败', _error, () => _navigateToCaptureInfo(item), opacity: 0.5); + case CapturePackStatus.laterStudy: + return Row( + mainAxisSize: MainAxisSize.min, + children: [ + GestureDetector( + onTap: () => _navigateToCaptureInfo(item), + child: Text( + '后续学习', + style: TextStyle(fontSize: 11.sp, color: _primary), + ), + ), + SizedBox(width: 8.w), + _buildOutlineButton('重新攻克', _primary, () => _navigateToCaptureInfo(item)), + ], + ); + case CapturePackStatus.judging: + return _buildOutlineButton('判题中', _success, null, opacity: 0.5); + } + } + + Widget _buildOutlineButton(String text, Color color, VoidCallback? onTap, {double opacity = 1.0}) { + return GestureDetector( + onTap: onTap, + behavior: HitTestBehavior.opaque, + child: Opacity( + opacity: opacity, + child: Container( + padding: EdgeInsets.symmetric(horizontal: 12.w, vertical: 4.h), + height: 30.h, + alignment: Alignment.center, + decoration: BoxDecoration( + border: Border.all(color: color, width: 1.w), + borderRadius: BorderRadius.circular(30.r), + color: onTap == null ? Colors.transparent : color.withOpacity(0.08), + ), + child: Text( + text, + style: TextStyle(fontSize: 13.sp, color: color, fontWeight: FontWeight.w500), + ), + ), + ), + ); + } + + /// 展开的历次攻克详情 + Widget _buildProgressInfo(CapturePack item) { + final validRecords = item.records.where((r) => r.status != CaptureRecordStatus.none).toList(); + if (validRecords.isEmpty) return const SizedBox.shrink(); + + return Container( + margin: EdgeInsets.only(top: 16.h), + padding: EdgeInsets.symmetric(horizontal: 12.w, vertical: 10.5.h), + decoration: BoxDecoration( + color: const Color(0xFFFAFBFD), + borderRadius: BorderRadius.circular(6.r), + border: Border.all(color: _barBg, width: 0.5.w), + ), + child: Column( + children: validRecords.asMap().entries.map((entry) { + final infoIndex = entry.key; + final record = entry.value; + return GestureDetector( + onTap: () => _getReport(record, item), + behavior: HitTestBehavior.opaque, + child: Padding( + padding: EdgeInsets.symmetric(vertical: 5.h), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Row( + children: [ + Text( + '第${_numberToChinese(infoIndex + 1)}次攻克', + style: TextStyle(fontSize: 12.sp, color: _mutedText), + ), + SizedBox(width: 13.w), + Text( + _formatDuration(record.overcomeTimeSecond ?? 0), + style: TextStyle(fontSize: 12.sp, color: _subtitleColor), + ), + ], + ), + if (record.status == CaptureRecordStatus.processing) + Text('判题中', style: TextStyle(fontSize: 12.sp, color: _processing)) + else + _buildInfoRight(record, item), + ], + ), + ), + ); + }).toList(), + ), + ); + } + + Widget _buildInfoRight(CaptureRecord record, CapturePack item) { + final isSuccess = (record.accuracyRate ?? 0) >= item.overcomeStandard; + final bgColor = isSuccess ? const Color(0xFFE8FAF6) : const Color(0xFFFFF0F0); + final textColor = isSuccess ? _success : _error; + final iconPath = isSuccess + ? '/StaticResource/2026-04-22/capture-list-success.png' + : '/StaticResource/2026-04-22/capture-list-fail.png'; + + return Container( + padding: EdgeInsets.symmetric(horizontal: 6.w, vertical: 1.5.h), + decoration: BoxDecoration( + color: bgColor, + borderRadius: BorderRadius.circular(4.r), + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + CachedNetworkImage( + imageUrl: ImgUrl.build(iconPath), + width: 14.w, + height: 14.w, + fit: BoxFit.fitWidth, + ), + SizedBox(width: 5.5.w), + Text( + '${record.accuracyRate ?? 0}%', + style: TextStyle(fontSize: 12.sp, color: textColor, fontWeight: FontWeight.w500), + ), + ], + ), + ); + } +} diff --git a/pubspec.lock b/pubspec.lock index 8524d51..49dc887 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -6,7 +6,7 @@ packages: description: name: _fe_analyzer_shared sha256: "3b19a47f6ea7c2632760777c78174f47f6aec1e05f0cd611380d4593b8af1dbc" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "96.0.0" analyzer: @@ -14,7 +14,7 @@ packages: description: name: analyzer sha256: "0c516bc4ad36a1a75759e54d5047cb9d15cded4459df01aa35a0b5ec7db2c2a0" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "10.2.0" ansicolor: @@ -22,23 +22,23 @@ packages: description: name: ansicolor sha256: "50e982d500bc863e1d703448afdbf9e5a72eb48840a4f766fa361ffd6877055f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.0.3" archive: dependency: transitive description: name: archive - sha256: a96e8b390886ee8abb49b7bd3ac8df6f451c621619f52a26e815fdcf568959ff - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: ace891da0862b0e4cabbb064ee3fd87b2728b898949fdb366d83fe98342c9f19 + url: "https://pub.dev" source: hosted - version: "4.0.9" + version: "4.2.0" args: dependency: transitive description: name: args sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.7.0" async: @@ -46,7 +46,7 @@ packages: description: name: async sha256: e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.13.1" audio_session: @@ -54,7 +54,7 @@ packages: description: name: audio_session sha256: f9e7711a0e24ca8b40f5d7ac374c3c6e55016f3157912badd18199cdbbca5c4d - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.2.4" boolean_selector: @@ -62,7 +62,7 @@ packages: description: name: boolean_selector sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.2" build: @@ -70,31 +70,31 @@ packages: description: name: build sha256: "45d14a0fb23e018d8287c32fc98d726ce466b231928ed9b9200f29bd3ccd39ae" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.0.7" build_config: dependency: transitive description: name: build_config - sha256: "94eaf6708fe64408c632ef2689ca3777b112f9421306ccf4f8c84d7c5c9f83f8" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: d466ed2dc9c6cd1d169948879b84ee061eb5e22c64a7c6089879c6296d272a8d + url: "https://pub.dev" source: hosted - version: "1.3.2" + version: "1.3.3" build_daemon: dependency: transitive description: name: build_daemon - sha256: "79e05eaf15a48d7230b053a4363b8eaac0cc234bbd0134c3229455481f55cbc6" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: e1d40ef3f7934986d5da2271b1ba07794921ce263e44d622fb6c406d76589e33 + url: "https://pub.dev" source: hosted - version: "4.1.5" + version: "4.1.6" build_runner: dependency: "direct dev" description: name: build_runner sha256: "5367e521935b102bdf1e735d2aab461e36b2edca6517662d088dd04cc39f8d16" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.15.1" built_collection: @@ -102,23 +102,23 @@ packages: description: name: built_collection sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.1.1" built_value: dependency: transitive description: name: built_value - sha256: "31b24be6615ec7fcf70b3aa5a7469fe35826485e639a16dd7eb83ba30e4cc6a8" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: f87ea98192116f7093cb214551ce1929caae0681fdba282b3d8b4462adee7bb7 + url: "https://pub.dev" source: hosted - version: "8.12.7" + version: "8.13.0" cached_network_image: dependency: "direct main" description: name: cached_network_image sha256: "7c1183e361e5c8b0a0f21a28401eecdbde252441106a9816400dd4c2b2424916" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.4.1" cached_network_image_platform_interface: @@ -126,7 +126,7 @@ packages: description: name: cached_network_image_platform_interface sha256: "35814b016e37fbdc91f7ae18c8caf49ba5c88501813f73ce8a07027a395e2829" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.1.1" cached_network_image_web: @@ -134,39 +134,39 @@ packages: description: name: cached_network_image_web sha256: "980842f4e8e2535b8dbd3d5ca0b1f0ba66bf61d14cc3a17a9b4788a3685ba062" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.3.1" camera: dependency: transitive description: name: camera - sha256: "558230d6ce6ccea856b32d390db7e7b557adf4d9320aa614481bd3f2f608953f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "3f30ca0ff376f91534f23afa2a7aea06ebb6c889fd9e260642437b37e3d9f753" + url: "https://pub.dev" source: hosted - version: "0.12.0+2" + version: "0.12.1" camera_android_camerax: dependency: transitive description: name: camera_android_camerax - sha256: "294b02ae027ad9edc98414a25f5e958d2dc6c65e9f102f21e2b36f0f558751eb" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: a13f12f9c067679bf11f0f61e3f2079ac5c740388dec2e46d82e9f28ea093b4f + url: "https://pub.dev" source: hosted - version: "0.7.4+4" + version: "0.7.4+7" camera_avfoundation: dependency: transitive description: name: camera_avfoundation - sha256: "866e9cd8370f8055d005c0413937a52dc1d7a472687f0ee3ce02392955aababa" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "843247230a583e04742ea1434ce3f91e536760922fab67c72ce46aa34fac3e9d" + url: "https://pub.dev" source: hosted - version: "0.10.2" + version: "0.10.3" camera_platform_interface: dependency: transitive description: name: camera_platform_interface sha256: "4524ca6eb4176b066864036ad4fe02c3e4863e63b77eadc21a5bf56824f43498" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.13.1" camera_web: @@ -174,7 +174,7 @@ packages: description: name: camera_web sha256: "081441bd2f92b5841aa70ff4d6eddfe34078d97f9d085cc9e0f9d0102f145925" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.3.5+5" characters: @@ -182,7 +182,7 @@ packages: description: name: characters sha256: faf38497bda5ead2a8c7615f4f7939df04333478bf32e4173fcb06d428b5716b - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.4.1" checked_yaml: @@ -190,31 +190,23 @@ packages: description: name: checked_yaml sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.0.4" chewie: dependency: "direct main" description: name: chewie - sha256: "53dadd2c5b6748742d7744072b38a417ad22691ca55715850300ee793dc7cb27" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: f0e1ae317a149c265c040be4c46c7c7c32191fb86a467579c279e0878da0fd43 + url: "https://pub.dev" source: hosted - version: "1.13.1" - cli_config: - dependency: transitive - description: - name: cli_config - sha256: ac20a183a07002b700f0c25e61b7ee46b23c309d76ab7b7640a028f18e4d99ec - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "0.2.0" + version: "1.14.0" clock: dependency: transitive description: name: clock sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.1.2" code_assets: @@ -222,7 +214,7 @@ packages: description: name: code_assets sha256: bf394f466ba9205f1812a0433b392d6af280f155f56651eda7c18cc32ed493b8 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.2.1" collection: @@ -230,7 +222,7 @@ packages: description: name: collection sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.19.1" connectivity_plus: @@ -238,7 +230,7 @@ packages: description: name: connectivity_plus sha256: "762c99f890ca8bf87f7337236f99edd42793843bc6c3631da294a76653a54bd0" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "7.3.1" connectivity_plus_platform_interface: @@ -246,7 +238,7 @@ packages: description: name: connectivity_plus_platform_interface sha256: "3c09627c536d22fd24691a905cdd8b14520de69da52c7a97499c8be5284a32ed" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.0" convert: @@ -254,31 +246,23 @@ packages: description: name: convert sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.1.2" - coverage: - dependency: transitive - description: - name: coverage - sha256: "956a3de0725ca232ad353565a8290d3357592bf4250f6f298a185e2d949c5d3d" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "1.15.1" cross_file: dependency: transitive description: name: cross_file - sha256: "92c9c43c383bfa1c32079d3bc492d55d6d4318044b7b47edaff8971cbb555c51" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: f141ea4f277af142a0356955707f6556f37b03947d39d55585981a06ca437bd6 + url: "https://pub.dev" source: hosted - version: "0.3.5+4" + version: "0.3.5+5" crypto: dependency: "direct main" description: name: crypto sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.0.7" csslib: @@ -286,7 +270,7 @@ packages: description: name: csslib sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.2" cupertino_icons: @@ -294,7 +278,7 @@ packages: description: name: cupertino_icons sha256: "41e005c33bd814be4d3096aff55b1908d419fde52ca656c8c47719ec745873cd" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.9" dart_style: @@ -302,7 +286,7 @@ packages: description: name: dart_style sha256: "29f7ecc274a86d32920b1d9cfc7502fa87220da41ec60b55f329559d5732e2b2" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.1.7" dartx: @@ -310,39 +294,39 @@ packages: description: name: dartx sha256: "8b25435617027257d43e6508b5fe061012880ddfdaa75a71d607c3de2a13d244" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.2.0" dbus: dependency: transitive description: name: dbus - sha256: "0ce9b0a839e6dee59a37a623d2fc26a35bbbe6404213e419b0d6411023d62645" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: a48d5da28e89bd02196e80d81ed8d7954923d00a0f4a68cc20b575038f023383 + url: "https://pub.dev" source: hosted - version: "0.7.14" + version: "0.7.15" dio: dependency: "direct main" description: name: dio - sha256: "0df44ebba85e503958eb75d07eedd3c86275a58c1d3eda2f2ce8f0a2c3abbb3c" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "852ec3b48cc431ac04fff978413c541502b67ffc3e26921e74e3d994694192c1" + url: "https://pub.dev" source: hosted - version: "5.11.0" + version: "5.11.1" dio_web_adapter: dependency: transitive description: name: dio_web_adapter - sha256: "0786d0b7295a373de356fc0af4f6f1d0ab2844ed31b19dfc5e7556b70e24212c" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "3a1b2cd7be71086f38504956e3ebcd2837288d231ff454bafa78021244102bfc" + url: "https://pub.dev" source: hosted - version: "2.2.1" + version: "2.2.2" equatable: dependency: transitive description: name: equatable sha256: "3bce007a596ff8b3119c45d68aaef631272537c03d30e5d4534dd24bf4c5eaa2" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.0" extended_image: @@ -350,7 +334,7 @@ packages: description: name: extended_image sha256: e81d801cd692921f152834e01f39bba8b3d6302c48ad420d499c6062a7e24737 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "10.1.0" extended_image_library: @@ -358,7 +342,7 @@ packages: description: name: extended_image_library sha256: "1f9a24d3a00c2633891c6a7b5cab2807999eb2d5b597e5133b63f49d113811fe" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.0.1" fake_async: @@ -366,7 +350,7 @@ packages: description: name: fake_async sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.3.3" ffi: @@ -374,7 +358,7 @@ packages: description: name: ffi sha256: "6d7fd89431262d8f3125e81b50d3847a091d846eafcd4fdb88dd06f36d705a45" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.2.0" ffi_leak_tracker: @@ -382,7 +366,7 @@ packages: description: name: ffi_leak_tracker sha256: "4093d4ef9ca06ffe2786e73bfb25e22aa92112b9bb4ec941f11e3e6b61489a97" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.1.2" file: @@ -390,47 +374,47 @@ packages: description: name: file sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "7.0.1" file_selector_linux: dependency: transitive description: name: file_selector_linux - sha256: "2567f398e06ac72dcf2e98a0c95df2a9edd03c2c2e0cacd4780f20cdf56263a0" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: da76400e7872ce7637ffdce12749ec24169c25f6195c28372208e65a24bcd2ab + url: "https://pub.dev" source: hosted - version: "0.9.4" + version: "0.9.4+1" file_selector_macos: dependency: transitive description: name: file_selector_macos - sha256: "5e0bbe9c312416f1787a68259ea1505b52f258c587f12920422671807c4d618a" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: d57c62362766b5e7ae739448650b66c6aab7a68ba7ecc65e04018652645ae0f4 + url: "https://pub.dev" source: hosted - version: "0.9.5" + version: "0.9.5+1" file_selector_platform_interface: dependency: transitive description: name: file_selector_platform_interface sha256: "35e0bd61ebcdb91a3505813b055b09b79dfdc7d0aee9c09a7ba59ae4bb13dc85" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.7.0" file_selector_windows: dependency: transitive description: name: file_selector_windows - sha256: "62197474ae75893a62df75939c777763d39c2bc5f73ce5b88497208bc269abfd" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: fbefc5fb92c6d3cbe8d284a2cd971b593bb07d2cd6da8557b81a862250b4acec + url: "https://pub.dev" source: hosted - version: "0.9.3+5" + version: "0.9.3+6" fixnum: dependency: transitive description: name: fixnum sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.1.1" flutter: @@ -443,7 +427,7 @@ packages: description: name: flutter_cache_manager sha256: "1de7849213b4c73c85aca7e0ac687a9a5d82ccdb594366b9dcc26cb6a2189cd2" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.4.2" flutter_driver: @@ -456,7 +440,7 @@ packages: description: name: flutter_image_compress sha256: "98a48c05a7add6869c6838270e862124a4d571f9dd5d0cf209ed03a71b20ea84" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.5.1" flutter_image_compress_common: @@ -464,7 +448,7 @@ packages: description: name: flutter_image_compress_common sha256: "76869e4d5f3d65f3431e7edff0b2d8ad1eea68b49c6a37772fdb1ae6016da9ed" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.1.1" flutter_image_compress_macos: @@ -472,7 +456,7 @@ packages: description: name: flutter_image_compress_macos sha256: "0d2a842d2e544828fb32bda16dcfccb3149107df568898a4936d78232e486847" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.1.0" flutter_image_compress_ohos: @@ -480,7 +464,7 @@ packages: description: name: flutter_image_compress_ohos sha256: "1491bb7bcfdf59e3b127c263c116cfbf8ed3afade6e7fa691d9622e838ed7e48" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.0.3+1" flutter_image_compress_platform_interface: @@ -488,7 +472,7 @@ packages: description: name: flutter_image_compress_platform_interface sha256: bbefb7967bda565004fdabdb3300dcbfb40c7ef8402675d23206e5bddc358178 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.1.0" flutter_image_compress_web: @@ -496,7 +480,7 @@ packages: description: name: flutter_image_compress_web sha256: "91cc58e091a1e09c7683d216d579e2b964119a8527fc43b64dfdb00f1acc94ec" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.1.5+1" flutter_lints: @@ -504,7 +488,7 @@ packages: description: name: flutter_lints sha256: "3105dc8492f6183fb076ccf1f351ac3d60564bff92e20bfc4af9cc1651f4e7e1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "6.0.0" flutter_local_notifications: @@ -512,7 +496,7 @@ packages: description: name: flutter_local_notifications sha256: "1447ba911c60f2ba3f25dae1af151ec187162566b0f57e37771bf0b400f013ad" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "22.3.0" flutter_local_notifications_linux: @@ -520,7 +504,7 @@ packages: description: name: flutter_local_notifications_linux sha256: "9ca97e63776f29ab1b955725c09999fc2c150523269db150c39274f2a43c5a8b" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "8.0.1" flutter_local_notifications_platform_interface: @@ -528,7 +512,7 @@ packages: description: name: flutter_local_notifications_platform_interface sha256: "43c3761d916c9bd3d5c7ebbc44d82f4990329840c0c5d62ad5260cc1b5d399bd" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "12.2.0" flutter_local_notifications_web: @@ -536,7 +520,7 @@ packages: description: name: flutter_local_notifications_web sha256: "516afaf97a2d1e67a036c6617321b00d205d72f7a67b6eccf936cd565f985878" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.0" flutter_local_notifications_windows: @@ -544,7 +528,7 @@ packages: description: name: flutter_local_notifications_windows sha256: "6f43bdd03b171b7a90f22647506fea33e2bb12294b7c7c7a3d690e960a382945" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.1.1" flutter_plugin_android_lifecycle: @@ -552,23 +536,23 @@ packages: description: name: flutter_plugin_android_lifecycle sha256: "3854fe5e3bff0b113c658f260b90c95dea17c92db0f2addeac2e343dd9969785" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.0.35" flutter_riverpod: dependency: "direct main" description: name: flutter_riverpod - sha256: "56e81e662e6e54e59b231da57e90ac0d06ac67d8e3f2273c129a37ae6282b40c" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "2b7f9d2a3c730ac1a98221b420cef966b990fca7ab546ede324642ca57a533e3" + url: "https://pub.dev" source: hosted - version: "3.4.2" + version: "3.4.3" flutter_screenutil: dependency: "direct main" description: name: flutter_screenutil sha256: "8239210dd68bee6b0577aa4a090890342d04a136ce1c81f98ee513fc0ce891de" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.9.3" flutter_secure_storage: @@ -576,7 +560,7 @@ packages: description: name: flutter_secure_storage sha256: "7686b1d6a29985dcbb808c59518226e603e3bfa7c0ddfd1a0d00e4cda77c868e" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "10.3.1" flutter_secure_storage_darwin: @@ -584,7 +568,7 @@ packages: description: name: flutter_secure_storage_darwin sha256: "82329fa5cdf343773b1b6897dea959105a29f092454259edff92f9f6637e8149" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.3.2" flutter_secure_storage_linux: @@ -592,7 +576,7 @@ packages: description: name: flutter_secure_storage_linux sha256: "76fa9c841b3b1619fc5b5bc36efc7d158fa2356f223b6caeb1d0c80a54168546" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.0.2" flutter_secure_storage_platform_interface: @@ -600,7 +584,7 @@ packages: description: name: flutter_secure_storage_platform_interface sha256: "788060052712555182aba55ecb5f8b6e5cb9cfe8f776c83249a61fe3ce877db4" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.0.3" flutter_secure_storage_web: @@ -608,7 +592,7 @@ packages: description: name: flutter_secure_storage_web sha256: "073a62b3aeb866ab4ce795f960413948e51e5a42a9b0c8333b6daf5bb3208a1c" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.1" flutter_secure_storage_windows: @@ -616,7 +600,7 @@ packages: description: name: flutter_secure_storage_windows sha256: "471951813a97006d899db4948acc654a4f28c440083ea08178935ce20b173ec1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.2.2" flutter_staggered_grid_view: @@ -624,7 +608,7 @@ packages: description: name: flutter_staggered_grid_view sha256: "19e7abb550c96fbfeb546b23f3ff356ee7c59a019a651f8f102a4ba9b7349395" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.7.0" flutter_test: @@ -637,7 +621,7 @@ packages: description: name: flutter_timezone sha256: "869677426fde92dbe170fb7d2d4929f2a8343c2f5f62f08b0bb64f908630b073" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.1.0" flutter_web_plugins: @@ -649,18 +633,10 @@ packages: dependency: "direct main" description: name: flutter_widget_from_html_core - sha256: "7ff010b116f6abc16429923e616fbc727f3f65ef4cee12ffdb280aeecbc21e7f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "388f81dd21c2de547abf7071433297f8a3f2a308bc1eb12f099a93f4d71e5155" + url: "https://pub.dev" source: hosted - version: "0.17.2" - frontend_server_client: - dependency: transitive - description: - name: frontend_server_client - sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "4.0.0" + version: "0.17.3" fuchsia_remote_debug_protocol: dependency: transitive description: flutter @@ -671,23 +647,23 @@ packages: description: name: gal sha256: f71e79840fe023a21f2f949771375444b6efcd34b9e625d5f4f5504971380a77 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.3.3" glob: dependency: transitive description: name: glob - sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "218aeb56050c714f62a3182775320dfa04602b55074873e24e31bbd39bda96fb" + url: "https://pub.dev" source: hosted - version: "2.1.3" + version: "2.2.0" go_router: dependency: "direct main" description: name: go_router sha256: d7a3576cb312649eaa51f2356450aed686085fb58fcdebda5b359aa951eef7ea - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "17.5.0" graphs: @@ -695,7 +671,7 @@ packages: description: name: graphs sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.3.2" group_button: @@ -703,7 +679,7 @@ packages: description: name: group_button sha256: "0610fcf28ed122bfb4b410fce161a390f7f2531d55d1d65c5375982001415940" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.3.4" hooks: @@ -711,23 +687,23 @@ packages: description: name: hooks sha256: "9a62a50b50b769a737bc0a8ff381f333529df3ab746b2f6b02e83760231455ba" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.0.2" html: dependency: transitive description: name: html - sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "43b67b8f43321ab066817dfac5619596c98bb1b61624e77203bb4351785f9699" + url: "https://pub.dev" source: hosted - version: "0.15.6" + version: "0.15.7" http: dependency: transitive description: name: http sha256: "87721a4a50b19c7f1d49001e51409bddc46303966ce89a65af4f4e6004896412" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.6.0" http_client_helper: @@ -735,7 +711,7 @@ packages: description: name: http_client_helper sha256: "8a9127650734da86b5c73760de2b404494c968a3fd55602045ffec789dac3cb1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.0.0" http_multi_server: @@ -743,7 +719,7 @@ packages: description: name: http_multi_server sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.2.2" http_parser: @@ -751,55 +727,55 @@ packages: description: name: http_parser sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.1.2" image: dependency: "direct main" description: name: image - sha256: f9881ff4998044947ec38d098bc7c8316ae1186fa786eddffdb867b9bc94dfce - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "1976370a4df3091bb0f72409c187ad1f9132a818bc6b95ca59c0bae1c75c688e" + url: "https://pub.dev" source: hosted - version: "4.8.0" + version: "4.9.2" image_picker: dependency: "direct main" description: name: image_picker sha256: d8402284df184bc05f4a2210c6c23983b0720f4cd87cbd05c5390a78af602667 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.2.3" image_picker_android: dependency: transitive description: name: image_picker_android - sha256: "6f3a1995eafb000333174fae92202622033b0ee7fd917a6cd3730295264df84a" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "1c0c38790306fda4ed774095620444333e56a2b6bc8fc98f3a35c9398781cf54" + url: "https://pub.dev" source: hosted - version: "0.8.13+19" + version: "0.8.13+22" image_picker_for_web: dependency: transitive description: name: image_picker_for_web sha256: "66257a3191ab360d23a55c8241c91a6e329d31e94efa7be9cf7a212e65850214" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.1.1" image_picker_ios: dependency: transitive description: name: image_picker_ios - sha256: b9c4a438a9ff4f60808c9cf0039b93a42bb6c2211ef6ebb647394b2b3fa84588 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: ee3885b6fcd71958fbc79770dd194c63371439d536d69c47b279171a486482ae + url: "https://pub.dev" source: hosted - version: "0.8.13+6" + version: "0.8.13+7" image_picker_linux: dependency: transitive description: name: image_picker_linux sha256: "1f81c5f2046b9ab724f85523e4af65be1d47b038160a8c8deed909762c308ed4" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.2.2" image_picker_macos: @@ -807,7 +783,7 @@ packages: description: name: image_picker_macos sha256: "86f0f15a309de7e1a552c12df9ce5b59fe927e71385329355aec4776c6a8ec91" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.2.2+1" image_picker_platform_interface: @@ -815,7 +791,7 @@ packages: description: name: image_picker_platform_interface sha256: "567e056716333a1647c64bb6bd873cff7622233a5c3f694be28a583d4715690c" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.11.1" image_picker_windows: @@ -823,7 +799,7 @@ packages: description: name: image_picker_windows sha256: d248c86554a72b5495a31c56f060cf73a41c7ff541689327b1a7dbccc33adfae - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.2.2" infinite_scroll_pagination: @@ -831,7 +807,7 @@ packages: description: name: infinite_scroll_pagination sha256: b0d28e37cd8f62490ff6aef63f9db93d4c78b7f11b7c6b26f33c69d8476fda78 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.1.1" integration_test: @@ -844,23 +820,23 @@ packages: description: name: internet_connection_checker_plus sha256: "2c39c48ac73c71fcaad25d67a399eaf10bd72e674b754393c1ced09d199979b6" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.1.1" io: dependency: transitive description: name: io - sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "2635216ca6a737e60de577ffa1a48a0bec76ca8a62917cfc1bb88c14c570646f" + url: "https://pub.dev" source: hosted - version: "1.0.5" + version: "1.1.0" isar_community: dependency: "direct main" description: name: isar_community sha256: "683fd093956eac3a660776afb70d65d50a3391b3587b40b89e3d12586b8cc47f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.3.2" isar_community_flutter_libs: @@ -868,7 +844,7 @@ packages: description: name: isar_community_flutter_libs sha256: c44340fa38c81ef16d924202d443bbe799cde4826be9a31a9dc92ee612e1966f - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.3.2" isar_community_generator: @@ -876,7 +852,7 @@ packages: description: name: isar_community_generator sha256: fd5a2a5df2aac2fccba82425005bf47fd2a48f34190536d0c9fd732dc7303fb3 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.3.2" jni: @@ -884,39 +860,39 @@ packages: description: name: jni sha256: f038e58b4dc2c9037f50e233175086337e0b305e356d28211bf55f21c504cbd3 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.3" jni_flutter: dependency: transitive description: name: jni_flutter - sha256: "7b717011ea40d04fd47c2731d3d1d36eb99eba3435c2753d62489e8c3c9991d5" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: b2310cdd4c18c65c081ab141a41efa94aa26c65431803703ece51996f174f351 + url: "https://pub.dev" source: hosted - version: "1.0.2" + version: "1.0.3" jni_util: dependency: transitive description: name: jni_util sha256: "1ba86da04a5f2bf18fde2edb235587e70c5b0fc5bd4ba955f46b00942c3fc35f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.0" js: dependency: transitive description: name: js - sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "53385261521cc4a0c4658fd0ad07a7d14591cf8fc33abbceae306ddb974888dc" + url: "https://pub.dev" source: hosted - version: "0.6.7" + version: "0.7.2" json_annotation: dependency: "direct main" description: name: json_annotation sha256: "2a743920d81b7910627f68ee2c9ac1fc0bfee32b9fc3403587d7c6791ca12f80" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.12.0" json_serializable: @@ -924,7 +900,7 @@ packages: description: name: json_serializable sha256: e45aefa0324f08c683caafbb94b72837aa6193c61822799c916e45f4a263113d - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "6.14.1" just_audio: @@ -932,7 +908,7 @@ packages: description: name: just_audio sha256: e60aa97b233ddea025e13dfac59195207f528fa5e9e4a4a49a8c0766701e5fe6 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.10.6" just_audio_platform_interface: @@ -940,7 +916,7 @@ packages: description: name: just_audio_platform_interface sha256: "2532c8d6702528824445921c5ff10548b518b13f808c2e34c2fd54793b999a6a" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.6.0" just_audio_web: @@ -948,7 +924,7 @@ packages: description: name: just_audio_web sha256: "6ba8a2a7e87d57d32f0f7b42856ade3d6a9fbe0f1a11fabae0a4f00bb73f0663" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.4.16" leak_tracker: @@ -956,7 +932,7 @@ packages: description: name: leak_tracker sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "11.0.2" leak_tracker_flutter_testing: @@ -964,7 +940,7 @@ packages: description: name: leak_tracker_flutter_testing sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.0.10" leak_tracker_testing: @@ -972,7 +948,7 @@ packages: description: name: leak_tracker_testing sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.0.2" lints: @@ -980,7 +956,7 @@ packages: description: name: lints sha256: "12f842a479589fea194fe5c5a3095abc7be0c1f2ddfa9a0e76aed1dbd26a87df" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "6.1.0" listen: @@ -988,7 +964,7 @@ packages: description: name: listen sha256: "47501a08016a43fcad79252439d723f50f14f88fa7bfd8a177e0a417e5c9e1f2" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.1" logging: @@ -996,7 +972,7 @@ packages: description: name: logging sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.3.0" matcher: @@ -1004,7 +980,7 @@ packages: description: name: matcher sha256: dc0b7dc7651697ea4ff3e69ef44b0407ea32c487a39fff6a4004fa585e901861 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.12.19" material_color_utilities: @@ -1012,7 +988,7 @@ packages: description: name: material_color_utilities sha256: "9c337007e82b1889149c82ed242ed1cb24a66044e30979c44912381e9be4c48b" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.13.0" meta: @@ -1020,31 +996,31 @@ packages: description: name: meta sha256: "1741988757a65eb6b36abe716829688cf01910bbf91c34354ff7ec1c3de2b349" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.18.0" mime: dependency: transitive description: name: mime - sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: bd47de35f07e27267e69c8c8b22edf9473bfee170a60d60fcc93730c5144b7f6 + url: "https://pub.dev" source: hosted - version: "2.0.0" + version: "2.1.0" navigator_resizable: dependency: transitive description: name: navigator_resizable - sha256: "831350d4d44c6defbe06860944da1d9cbb4951ffe7cbc179cea7d049afa50622" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "689f591b70218e152c6496b41142d9058e6c9ba5581a4126a7db978a8239d2eb" + url: "https://pub.dev" source: hosted - version: "3.0.3" + version: "3.1.0" nested: dependency: transitive description: name: nested sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.0" nm: @@ -1052,23 +1028,15 @@ packages: description: name: nm sha256: "2c9aae4127bdc8993206464fcc063611e0e36e72018696cd9631023a31b24254" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.5.0" - node_preamble: - dependency: transitive - description: - name: node_preamble - sha256: "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "2.0.2" objective_c: dependency: transitive description: name: objective_c sha256: b7fb95a6d9a4f009edd63dc5ac69f07420b23a16161c6dd8660290b59c602e8e - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "9.5.0" octo_image: @@ -1076,7 +1044,7 @@ packages: description: name: octo_image sha256: "34faa6639a78c7e3cbe79be6f9f96535867e879748ade7d17c9b1ae7536293bd" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.0" package_config: @@ -1084,7 +1052,7 @@ packages: description: name: package_config sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.2.0" package_info_plus: @@ -1092,7 +1060,7 @@ packages: description: name: package_info_plus sha256: c2a4a9404e578d7c69e3cf19f0b057d906bd0b073deedc8006db997a8bfe97ca - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "10.0.0" package_info_plus_platform_interface: @@ -1100,7 +1068,7 @@ packages: description: name: package_info_plus_platform_interface sha256: db762cb2f4f25ee60fb6359773861b0f199e00b90d237bd85a76a1e806b46ef4 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.1.0" path: @@ -1108,7 +1076,7 @@ packages: description: name: path sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.9.1" path_provider: @@ -1116,7 +1084,7 @@ packages: description: name: path_provider sha256: a7f4874f987173da295a61c181b8ee71dab59b332a486b391babf26a1b884825 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.6" path_provider_android: @@ -1124,7 +1092,7 @@ packages: description: name: path_provider_android sha256: "69cbd515a62b94d32a7944f086b2f82b4ac40a1d45bebfc00813a430ab2dabcd" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.3.1" path_provider_foundation: @@ -1132,7 +1100,7 @@ packages: description: name: path_provider_foundation sha256: "2a376b7d6392d80cd3705782d2caa734ca4727776db0b6ec36ef3f1855197699" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.6.0" path_provider_linux: @@ -1140,7 +1108,7 @@ packages: description: name: path_provider_linux sha256: "58c2005f147315b11e9b4a7bc889cd5203e250cba8e3f012dae259b4972b5c16" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.2.2" path_provider_platform_interface: @@ -1148,7 +1116,7 @@ packages: description: name: path_provider_platform_interface sha256: "484838772624c3a4b94f1e44a3e19897fee738f2d5c4ce448443b0417f7c9dda" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.3" path_provider_windows: @@ -1156,7 +1124,7 @@ packages: description: name: path_provider_windows sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.3.0" permission_handler: @@ -1164,7 +1132,7 @@ packages: description: name: permission_handler sha256: "59adad729136f01ea9e35a48f5d1395e25cba6cea552249ddbe9cf950f5d7849" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "11.4.0" permission_handler_android: @@ -1172,7 +1140,7 @@ packages: description: name: permission_handler_android sha256: d3971dcdd76182a0c198c096b5db2f0884b0d4196723d21a866fc4cdea057ebc - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "12.1.0" permission_handler_apple: @@ -1180,7 +1148,7 @@ packages: description: name: permission_handler_apple sha256: f49cb15a064ea9d974fc7fbb302099353b7b170d07284e86e264561579e5bcf8 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "9.6.1" permission_handler_html: @@ -1188,23 +1156,23 @@ packages: description: name: permission_handler_html sha256: "6ea98b3f17f60d3b527f2647ed2ab4dc0f6bfe25b22cb1c363f5d8f62252f6ac" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.1.4+1" permission_handler_platform_interface: dependency: transitive description: name: permission_handler_platform_interface - sha256: a5c8a97ecf5616112a5b16d4b8e9ec0e5ae90ef63ac69c0d7b8ae240be760b23 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: ed86a61c190258fdd65de395ea0632822e3415c1faec38eae0c31b479c28a531 + url: "https://pub.dev" source: hosted - version: "4.4.0" + version: "4.4.1" permission_handler_windows: dependency: transitive description: name: permission_handler_windows sha256: caeae01858a0a7d2df67a445ac98e1ad95e55a0e77c73044f4e9b1c8c2289cbd - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.2.2" petitparser: @@ -1212,7 +1180,7 @@ packages: description: name: petitparser sha256: "91bd59303e9f769f108f8df05e371341b15d59e995e6806aefab827b58336675" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "7.0.2" photo_manager: @@ -1220,7 +1188,7 @@ packages: description: name: photo_manager sha256: "2d00a785b501bf1e5f6180bbef772846e767be11d45d11112b63092ef54a419e" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.12.0" photo_manager_image_provider: @@ -1228,7 +1196,7 @@ packages: description: name: photo_manager_image_provider sha256: b6015b67b32f345f57cf32c126f871bced2501236c405aafaefa885f7c821e4f - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.2.0" photo_view: @@ -1236,7 +1204,7 @@ packages: description: name: photo_view sha256: "1fc3d970a91295fbd1364296575f854c9863f225505c28c46e0a03e48960c75e" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.15.0" platform: @@ -1244,7 +1212,7 @@ packages: description: name: platform sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.1.6" plugin_platform_interface: @@ -1252,79 +1220,79 @@ packages: description: name: plugin_platform_interface sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.8" pool: dependency: transitive description: name: pool - sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "4177f68c237ea2128d1bee66ac17b2ce05ba3dbaafcbdd54c5d40a39d0b6b11c" + url: "https://pub.dev" source: hosted - version: "1.5.2" + version: "1.5.3" posix: dependency: transitive description: name: posix sha256: bc1bad54ad2b735816e31f8d4600cfde6c7839975085ddfbca48b6c9f7c4044e - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "6.5.2" process: dependency: transitive description: name: process - sha256: c6248e4526673988586e8c00bb22a49210c258dc91df5227d5da9748ecf79744 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "4242ba3508d37e01808bdf71ad1d5bb93a8d671bf2e7450e6b1b353fb0808891" + url: "https://pub.dev" source: hosted - version: "5.0.5" + version: "5.0.6" provider: dependency: transitive description: name: provider sha256: "4e82183fa20e5ca25703ead7e05de9e4cceed1fbd1eadc1ac3cb6f565a09f272" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "6.1.5+1" pub_semver: dependency: transitive description: name: pub_semver - sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "261236774e8b1d69cfc6b9eabbc96c40f25e7a2d6b171f3385d4f65d5734fb24" + url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.2.1" pubspec_parse: dependency: transitive description: name: pubspec_parse - sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: c38b81cbf34450b67e0265d73433569d12e34782e30ed769c9cc99c9d5f2e796 + url: "https://pub.dev" source: hosted - version: "1.5.0" + version: "1.6.0" record_use: dependency: transitive description: name: record_use sha256: "2551bd8eecfe95d14ae75f6021ad0248be5c27f138c2ec12fcb52b500b3ba1ed" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.6.0" riverpod: dependency: transitive description: name: riverpod - sha256: "84351b3472a447f7b89f961f95c73287009d58c59d8cc1267425d995f78e50f1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "484dfc873ea4c4f4240e5635444fa066f87b07862b7279ebd004a2b71fba4b7a" + url: "https://pub.dev" source: hosted - version: "3.4.2" + version: "3.4.3" rxdart: dependency: transitive description: name: rxdart sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.28.0" sensors_plus: @@ -1332,7 +1300,7 @@ packages: description: name: sensors_plus sha256: "31182c626623de79d3f7e1f9b43028f940821ee012c092f68f165fe55b867822" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "7.1.0" sensors_plus_platform_interface: @@ -1340,7 +1308,7 @@ packages: description: name: sensors_plus_platform_interface sha256: "9e12a92569bf14ae04b2f086c3e087177a47e527b7666ae1bbe5f70f8450ab19" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.0.2" share_plus: @@ -1348,7 +1316,7 @@ packages: description: name: share_plus sha256: "9eee8283462d91a7a1c8bdb67d08874abd75a2f8fae3bc0ca033035e375fb3d8" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "13.2.0" share_plus_platform_interface: @@ -1356,7 +1324,7 @@ packages: description: name: share_plus_platform_interface sha256: "365ef7379fc22507256adda3385152942ffce08935452bc972c2e52a0bebae41" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "7.2.0" shared_preferences: @@ -1364,31 +1332,31 @@ packages: description: name: shared_preferences sha256: c3025c5534b01739267eb7d76959bbc25a6d10f6988e1c2a3036940133dd10bf - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.5.5" shared_preferences_android: dependency: transitive description: name: shared_preferences_android - sha256: "0634e64bd719f89c012f392938e173521f535d3ecaf66558fa94a056d22b5cc7" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "1e12aafe408aa50da80edfd679a2a6bf63ba7ab37c7fa98286da459a757b3399" + url: "https://pub.dev" source: hosted - version: "2.4.27" + version: "2.4.28" shared_preferences_foundation: dependency: transitive description: name: shared_preferences_foundation - sha256: "4e7eaffc2b17ba398759f1151415869a34771ba11ebbccd1b0145472a619a64f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "2ec3934efa51e46117f23031cc141b8fc878e8525b94ec1ea4f7f586cf1b47ea" + url: "https://pub.dev" source: hosted - version: "2.5.6" + version: "2.5.7" shared_preferences_linux: dependency: transitive description: name: shared_preferences_linux sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.1" shared_preferences_platform_interface: @@ -1396,7 +1364,7 @@ packages: description: name: shared_preferences_platform_interface sha256: "649dc798a33931919ea356c4305c2d1f81619ea6e92244070b520187b5140ef9" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.2" shared_preferences_web: @@ -1404,7 +1372,7 @@ packages: description: name: shared_preferences_web sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.3" shared_preferences_windows: @@ -1412,7 +1380,7 @@ packages: description: name: shared_preferences_windows sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.1" shelf: @@ -1420,31 +1388,15 @@ packages: description: name: shelf sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.4.2" - shelf_packages_handler: - dependency: transitive - description: - name: shelf_packages_handler - sha256: "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "3.0.2" - shelf_static: - dependency: transitive - description: - name: shelf_static - sha256: c87c3875f91262785dade62d135760c2c69cb217ac759485334c5857ad89f6e3 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "1.1.3" shelf_web_socket: dependency: transitive description: name: shelf_web_socket sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.0.0" sky_engine: @@ -1457,23 +1409,23 @@ packages: description: name: sliver_tools sha256: eae28220badfb9d0559207badcbbc9ad5331aac829a88cb0964d330d2a4636a6 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.2.12" smooth_sheets: dependency: "direct main" description: name: smooth_sheets - sha256: "1dc609c2388a6462910149ae81910928ef39b323d31321f3124e1c5fc5ac62cb" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: ce88a0aa9db65c660af051e6f0678ffbf04eacc612acd232b725892a652e1422 + url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.2.0" source_gen: dependency: transitive description: name: source_gen sha256: a603f1fb984a7391ae5978d1b92bfaaa08b350dca5c825256f925818f7943bf5 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.2.4" source_helper: @@ -1481,31 +1433,15 @@ packages: description: name: source_helper sha256: "5e6f216fdf6376c9f3852381ae037499797a3385377d388b011dac98d303c67c" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.3.13" - source_map_stack_trace: - dependency: transitive - description: - name: source_map_stack_trace - sha256: c0713a43e323c3302c2abe2a1cc89aa057a387101ebd280371d6a6c9fa68516b - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "2.1.2" - source_maps: - dependency: transitive - description: - name: source_maps - sha256: "190222579a448b03896e0ca6eca5998fa810fda630c1d65e2f78b3f638f54812" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "0.10.13" source_span: dependency: transitive description: name: source_span sha256: "56a02f1f4cd1a2d96303c0144c93bd6d909eea6bee6bf5a0e0b685edbd4c47ab" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.10.2" sqflite: @@ -1513,7 +1449,7 @@ packages: description: name: sqflite sha256: "58a799e6ac17dd32fbab93813d39ed835a75ccc0f8f85b8955fe318c6712b082" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.3" sqflite_android: @@ -1521,7 +1457,7 @@ packages: description: name: sqflite_android sha256: d0548f9d7422a2dae99ec6f8b0a3074463b132d216fa5ba0d230eeefc901983b - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.3" sqflite_common: @@ -1529,7 +1465,7 @@ packages: description: name: sqflite_common sha256: "5bf6a55c166e73bf651ba7ec3ed486e577620e3dc8f3a9c6a258a8031b624590" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.5.11" sqflite_darwin: @@ -1537,7 +1473,7 @@ packages: description: name: sqflite_darwin sha256: c86ca18b8f666bbf903924687fe21cc16fc385d086005067e26619ca530bef9f - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.3+1" sqflite_platform_interface: @@ -1545,7 +1481,7 @@ packages: description: name: sqflite_platform_interface sha256: f84939f84350d92d04416f8bc4dc52d3896aec7716cc9e80cf0146342139dc50 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.1" stack_trace: @@ -1553,7 +1489,7 @@ packages: description: name: stack_trace sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.12.1" state_notifier: @@ -1561,7 +1497,7 @@ packages: description: name: state_notifier sha256: b8677376aa54f2d7c58280d5a007f9e8774f1968d1fb1c096adcb4792fba29bb - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.0" stream_channel: @@ -1569,23 +1505,23 @@ packages: description: name: stream_channel sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.4" stream_transform: dependency: transitive description: name: stream_transform - sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: a00e5f18bffc764f923e7dec1038527f7fe7a1791361a7117f0358193f13d53a + url: "https://pub.dev" source: hosted - version: "2.1.1" + version: "2.1.2" string_scanner: dependency: transitive description: name: string_scanner sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.4.1" sync_http: @@ -1593,23 +1529,23 @@ packages: description: name: sync_http sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.3.1" synchronized: dependency: transitive description: name: synchronized - sha256: "61894a1956de6b4fc1aefd0892e109514a1a706cbece3ac59decd90ff5a7a423" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "3a7b5d17422dd0f8d5c6c14feaa5a1c65638b9455f871a96f08437562c046931" + url: "https://pub.dev" source: hosted - version: "3.4.1+1" + version: "3.4.1+2" talker: dependency: transitive description: name: talker sha256: "57b160b70123fdb28cc1035987e4718bce5715c724a40ff74d6466d1559de68a" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.1.20" talker_dio_logger: @@ -1617,7 +1553,7 @@ packages: description: name: talker_dio_logger sha256: c2ab184171bdc3f45a8791c57a7746d095398d5e18a505c042b41a30af244bc4 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.1.20" talker_flutter: @@ -1625,7 +1561,7 @@ packages: description: name: talker_flutter sha256: "9be092f9661d217edcfb3e2d7e3581a290a69ecfbbd2e19e582ff9d49e7f0e97" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.1.20" talker_logger: @@ -1633,7 +1569,7 @@ packages: description: name: talker_logger sha256: b24550d115f209a1b84a697d65f5ec0fa9eb483735c802f18077692fa83cb5f8 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "5.1.20" term_glyph: @@ -1641,39 +1577,23 @@ packages: description: name: term_glyph sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.2.2" - test: - dependency: transitive - description: - name: test - sha256: "8d9ceddbab833f180fbefed08afa76d7c03513dfdba87ffcec2718b02bbcbf20" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "1.31.0" test_api: dependency: transitive description: name: test_api sha256: "949a932224383300f01be9221c39180316445ecb8e7547f70a41a35bf421fb9e" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.7.11" - test_core: - dependency: transitive - description: - name: test_core - sha256: "1991d4cfe85d5043241acac92962c3977c8d2f2add1ee73130c7b286417d1d34" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "0.6.17" time: dependency: transitive description: name: time sha256: "46187cf30bffdab28c56be9a63861b36e4ab7347bf403297595d6a97e10c789f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.1.6" timezone: @@ -1681,7 +1601,7 @@ packages: description: name: timezone sha256: "981d1020d6ef8fe1e7b3de5054e5b25579ae7c403d7734adc508ffc47668e9cb" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.11.1" typed_data: @@ -1689,7 +1609,7 @@ packages: description: name: typed_data sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.4.0" url_launcher: @@ -1697,47 +1617,47 @@ packages: description: name: url_launcher sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "6.3.2" url_launcher_android: dependency: transitive description: name: url_launcher_android - sha256: b413d49b73867ac08dd2f9890efd3cc11f2a0e577618d50843440a1fb3776c32 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "611e87fb320b70d1dd721dc46af89c98aceccea9b31fde49e084591414e0c610" + url: "https://pub.dev" source: hosted - version: "6.3.32" + version: "6.3.33" url_launcher_ios: dependency: transitive description: name: url_launcher_ios - sha256: "580fe5dfb51671ae38191d316e027f6b76272b026370708c2d898799750a02b0" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "8faa1aab294f1ab4040b43660c887b0418d5fa4f0cffef76a484e6aa1092eb4a" + url: "https://pub.dev" source: hosted - version: "6.4.1" + version: "6.4.2" url_launcher_linux: dependency: transitive description: name: url_launcher_linux - sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "10f86fef4c2c43563fa6c211ff9cf757adf4d3ab762c56bd430664a947d70cd0" + url: "https://pub.dev" source: hosted - version: "3.2.2" + version: "3.2.3" url_launcher_macos: dependency: transitive description: name: url_launcher_macos - sha256: "368adf46f71ad3c21b8f06614adb38346f193f3a59ba8fe9a2fd74133070ba18" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "5e835a3b869c2d70325349c81c5a45c28e20791265b67b2669da6b08c5cd5201" + url: "https://pub.dev" source: hosted - version: "3.2.5" + version: "3.2.6" url_launcher_platform_interface: dependency: transitive description: name: url_launcher_platform_interface sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.3.2" url_launcher_web: @@ -1745,23 +1665,23 @@ packages: description: name: url_launcher_web sha256: "85c81589622fbc87c1c683aaea164d3604a7777495a79d91e39ffcdec39ddb34" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.3" url_launcher_windows: dependency: transitive description: name: url_launcher_windows - sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "6c5ad3f22cd4c38e089b81963b3cd7bb83b111b2df5dce008bb066162f42e429" + url: "https://pub.dev" source: hosted - version: "3.1.5" + version: "3.1.6" uuid: dependency: transitive description: name: uuid sha256: "9b129329f58692f6e6578329498a8fe9fbe98f090beb764ffbb8ee2eadd01dcd" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.6.0" vector_math: @@ -1769,39 +1689,39 @@ packages: description: name: vector_math sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.2.0" video_player: dependency: "direct main" description: name: video_player - sha256: "20ef311160e2ced020a62f38e4cc399a1bf289e722fc5fe37c9d7b18e44c9e8d" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "8c837b570dccb9ae6ff73d2e0b03c7e708bfefd3bd1194faa7f3e7f200dfc399" + url: "https://pub.dev" source: hosted - version: "2.13.0" + version: "2.14.0" video_player_android: dependency: transitive description: name: video_player_android - sha256: e229676f8fade3e0124482495aaa2b548872cc4018b6268adfca4868be16aa74 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: d27054dea34d748a44f06d433a57005d2aac69944485b0abbaed3303dbcfa3f1 + url: "https://pub.dev" source: hosted - version: "2.12.0" + version: "2.12.2" video_player_avfoundation: dependency: transitive description: name: video_player_avfoundation - sha256: c238f5f0a26845cd0bcc2956049b63065a4d3c40ddfc22c3414cd170bef7fff9 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "2fc56e537324a19eb649fca991aa308ac961b5406292876fa657b062de461fd8" + url: "https://pub.dev" source: hosted - version: "2.11.0" + version: "2.12.0" video_player_platform_interface: dependency: transitive description: name: video_player_platform_interface sha256: "92c0fbabe20c788e71fd10d26cea998d0d253282e65d145aed0818731cf593ce" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "6.9.0" video_player_web: @@ -1809,7 +1729,7 @@ packages: description: name: video_player_web sha256: "9f3c00be2ef9b76a95d94ac5119fb843dca6f2c69e6c9968f6f2b6c9e7afbdeb" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "2.4.0" visibility_detector: @@ -1817,39 +1737,39 @@ packages: description: name: visibility_detector sha256: dd5cc11e13494f432d15939c3aa8ae76844c42b723398643ce9addb88a5ed420 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "0.4.0+2" vm_service: dependency: transitive description: name: vm_service - sha256: "0016aef94fc66495ac78af5859181e3f3bf2026bd8eecc72b9565601e19ab360" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "5f37239c4851efcef929cea7824e76df7f2f0970aef85d66bbc430afa40e72f0" + url: "https://pub.dev" source: hosted - version: "15.2.0" + version: "15.3.0" wakelock_plus: dependency: transitive description: name: wakelock_plus sha256: "2b09acadd7a2862d33c3577e77e7a2aabb684f47ccca1711f1413bd7307a6a72" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.6.0" wakelock_plus_platform_interface: dependency: transitive description: name: wakelock_plus_platform_interface - sha256: "0618d1799f0b28bcf98255b4ee8313e6fc4d38589dc4ee5fe5840d57d1aff6da" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "764c25504562abc8ac3406f5d175f126b276e6ba916c7c2675690b73368ca384" + url: "https://pub.dev" source: hosted - version: "1.6.0" + version: "1.7.0" watcher: dependency: transitive description: name: watcher sha256: "1398c9f081a753f9226febe8900fce8f7d0a67163334e1c94a2438339d79d635" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.2.1" web: @@ -1857,7 +1777,7 @@ packages: description: name: web sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.1.1" web_socket: @@ -1865,7 +1785,7 @@ packages: description: name: web_socket sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.1" web_socket_channel: @@ -1873,7 +1793,7 @@ packages: description: name: web_socket_channel sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.0.3" webdriver: @@ -1881,23 +1801,15 @@ packages: description: name: webdriver sha256: "2f3a14ca026957870cfd9c635b83507e0e51d8091568e90129fbf805aba7cade" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "3.1.0" - webkit_inspection_protocol: - dependency: transitive - description: - name: webkit_inspection_protocol - sha256: "87d3f2333bb240704cd3f1c6b5b7acd8a10e7f0bc28c28dcf14e782014f4a572" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" - source: hosted - version: "1.2.1" wechat_assets_picker: dependency: "direct main" description: name: wechat_assets_picker sha256: c307e50394c1e6dfcd5c4701e84efb549fce71444fedcf2e671c50d809b3e2a1 - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "9.8.0" wechat_camera_picker: @@ -1905,7 +1817,7 @@ packages: description: name: wechat_camera_picker sha256: "9249a48902da1cacc03e40c49fd6b658d4ef1bd3890636e97d2d733f1576a3a8" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "4.6.0" wechat_picker_library: @@ -1913,7 +1825,7 @@ packages: description: name: wechat_picker_library sha256: "5cb61b9aa935b60da5b043f8446fbb9c5077419f20ccc4856bf444aec4f44bc1" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.0.7" win32: @@ -1921,7 +1833,7 @@ packages: description: name: win32 sha256: a0b93865d5644f11cf6a8c3f6db909f1ec168958b5805f6cc684adea957cd63d - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "6.4.0" xdg_directories: @@ -1929,33 +1841,33 @@ packages: description: name: xdg_directories sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.1.0" xml: dependency: transitive description: name: xml - sha256: "971043b3a0d3da28727e40ed3e0b5d18b742fa5a68665cca88e74b7876d5e025" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: "67f0aff7be013d107995e9b75bf4e7f2c3ef2dfdb2c8e68024bba0a7fd5756a4" + url: "https://pub.dev" source: hosted - version: "6.6.1" + version: "7.0.1" xxh3: dependency: transitive description: name: xxh3 sha256: "399a0438f5d426785723c99da6b16e136f4953fb1e9db0bf270bd41dd4619916" - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + url: "https://pub.dev" source: hosted version: "1.2.0" yaml: dependency: transitive description: name: yaml - sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce - url: "https://mirrors.tuna.tsinghua.edu.cn/dart-pub/" + sha256: f67cdd8e07d3c6329146aaef1ba043542b3134c12489f553ca9a7435d1068aea + url: "https://pub.dev" source: hosted - version: "3.1.3" + version: "3.1.4" sdks: dart: ">=3.12.2 <4.0.0" flutter: ">=3.44.0"