Commit 6dc9dd6c9b8ae7e79e01f62d50902ca0d2f2e282

Authored by 常守达
1 parent 29897890

feat(hw): 鸿蒙版睡眠健身

@@ -52,9 +52,6 @@ PODS: @@ -52,9 +52,6 @@ PODS:
52 - libwebp/webp (1.5.0): 52 - libwebp/webp (1.5.0):
53 - libwebp/sharpyuv 53 - libwebp/sharpyuv
54 - OBS (3.20.11.1) 54 - OBS (3.20.11.1)
55 - - path_provider_foundation (0.0.1):  
56 - - Flutter  
57 - - FlutterMacOS  
58 - permission_handler_apple (9.4.8): 55 - permission_handler_apple (9.4.8):
59 - Flutter 56 - Flutter
60 - PromisesObjC (2.4.1) 57 - PromisesObjC (2.4.1)
@@ -106,7 +103,6 @@ DEPENDENCIES: @@ -106,7 +103,6 @@ DEPENDENCIES:
106 - image_cropper (from `.symlinks/plugins/image_cropper/ios`) 103 - image_cropper (from `.symlinks/plugins/image_cropper/ios`)
107 - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`) 104 - image_picker_ios (from `.symlinks/plugins/image_picker_ios/ios`)
108 - OBS (from `./Runner/Library`) 105 - OBS (from `./Runner/Library`)
109 - - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)  
110 - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`) 106 - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`)
111 - share_plus (from `.symlinks/plugins/share_plus/ios`) 107 - share_plus (from `.symlinks/plugins/share_plus/ios`)
112 - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`) 108 - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
@@ -145,8 +141,6 @@ EXTERNAL SOURCES: @@ -145,8 +141,6 @@ EXTERNAL SOURCES:
145 :path: ".symlinks/plugins/image_picker_ios/ios" 141 :path: ".symlinks/plugins/image_picker_ios/ios"
146 OBS: 142 OBS:
147 :path: "./Runner/Library" 143 :path: "./Runner/Library"
148 - path_provider_foundation:  
149 - :path: ".symlinks/plugins/path_provider_foundation/darwin"  
150 permission_handler_apple: 144 permission_handler_apple:
151 :path: ".symlinks/plugins/permission_handler_apple/ios" 145 :path: ".symlinks/plugins/permission_handler_apple/ios"
152 share_plus: 146 share_plus:
@@ -173,16 +167,15 @@ SPEC CHECKSUMS: @@ -173,16 +167,15 @@ SPEC CHECKSUMS:
173 GTMAppAuth: 217a876b249c3c585a54fd6f73e6b58c4f5c4238 167 GTMAppAuth: 217a876b249c3c585a54fd6f73e6b58c4f5c4238
174 GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6 168 GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6
175 image_cropper: c4326ea50132b1e1564499e5d32a84f01fb03537 169 image_cropper: c4326ea50132b1e1564499e5d32a84f01fb03537
176 - image_picker_ios: 7fe1ff8e34c1790d6fff70a32484959f563a928a 170 + image_picker_ios: e0ece4aa2a75771a7de3fa735d26d90817041326
177 libwebp: 02b23773aedb6ff1fd38cec7a77b81414c6842a8 171 libwebp: 02b23773aedb6ff1fd38cec7a77b81414c6842a8
178 OBS: 4cf1e6db5515aefd6c3c6ae3e90e85ea5f028e83 172 OBS: 4cf1e6db5515aefd6c3c6ae3e90e85ea5f028e83
179 - path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564  
180 permission_handler_apple: 92d754bbaa7361d436db2d6c3c1c2a0fdcec462e 173 permission_handler_apple: 92d754bbaa7361d436db2d6c3c1c2a0fdcec462e
181 PromisesObjC: 752c3227f599e3467650e47ea36f433eeb10c273 174 PromisesObjC: 752c3227f599e3467650e47ea36f433eeb10c273
182 PromisesSwift: 217dea0fd5d2ad65222a109c48698add13cc1c5b 175 PromisesSwift: 217dea0fd5d2ad65222a109c48698add13cc1c5b
183 RecaptchaInterop: 11e0b637842dfb48308d242afc3f448062325aba 176 RecaptchaInterop: 11e0b637842dfb48308d242afc3f448062325aba
184 share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a 177 share_plus: 50da8cb520a8f0f65671c6c6a99b3617ed10a58a
185 - shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7 178 + shared_preferences_foundation: 7036424c3d8ec98dfe75ff1667cb0cd531ec82bb
186 sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0 179 sqflite_darwin: 20b2a3a3b70e43edae938624ce550a3cbf66a3d0
187 TAThirdParty: 65db0235cd209237781535f19f9d0eef706156e5 180 TAThirdParty: 65db0235cd209237781535f19f9d0eef706156e5
188 thinking_analytics: 6f254c030da8dfc3409c08d91929b6ad89c415be 181 thinking_analytics: 6f254c030da8dfc3409c08d91929b6ad89c415be
1 import 'package:doublefeel_flutter/app/utils/platform_compact.dart'; 1 import 'package:doublefeel_flutter/app/utils/platform_compact.dart';
  2 +import 'package:doublefeel_flutter/app/widget/circular_gradient_progress/arc_progress_widget.dart';
2 import 'package:doublefeel_flutter/app/widget/circular_gradient_progress/combine.dart'; 3 import 'package:doublefeel_flutter/app/widget/circular_gradient_progress/combine.dart';
3 import 'package:doublefeel_flutter/core/theme/app_theme.dart'; 4 import 'package:doublefeel_flutter/core/theme/app_theme.dart';
4 import 'package:doublefeel_flutter/l10n/l10n_extensions.dart'; 5 import 'package:doublefeel_flutter/l10n/l10n_extensions.dart';
@@ -44,6 +45,16 @@ class TodaySleepCard extends StatelessWidget { @@ -44,6 +45,16 @@ class TodaySleepCard extends StatelessWidget {
44 double sleepScoreProgress = 45 double sleepScoreProgress =
45 sleepDuration == 0 ? -1 : (healthData?.sleepScore ?? 0.0) * 3.6; 46 sleepDuration == 0 ? -1 : (healthData?.sleepScore ?? 0.0) * 3.6;
46 47
  48 + double? sleepDurationRatio =
  49 + (activityTarget?.sleepTargetDuration ?? 28800) == 0 ||
  50 + sleepDuration == 0
  51 + ? null
  52 + : ((healthData?.sleepDuration ?? 0) /
  53 + (activityTarget?.sleepTargetDuration ?? 28800));
  54 + double? sleepScoreRatio = sleepDuration == 0
  55 + ? null
  56 + : ((healthData?.sleepScore ?? 0.0) / 100.0);
  57 +
47 return _TodaySummaryCard( 58 return _TodaySummaryCard(
48 iconAsset: 'assets/images/common/ic_sleep_stroke.png', 59 iconAsset: 'assets/images/common/ic_sleep_stroke.png',
49 iconColor: context.colors.primary, 60 iconColor: context.colors.primary,
@@ -144,9 +155,29 @@ class TodaySleepCard extends StatelessWidget { @@ -144,9 +155,29 @@ class TodaySleepCard extends StatelessWidget {
144 rightWidget: Container( 155 rightWidget: Container(
145 width: 50, 156 width: 50,
146 height: 50, 157 height: 50,
147 - margin: EdgeInsets.only(right: 6, left: 4), 158 + margin: const EdgeInsets.only(right: 6, left: 4),
148 child: isOhos() 159 child: isOhos()
149 - ? SizedBox() 160 + ? ArcMultiProgressWidget(
  161 + size: 50,
  162 + strokeWidth: 6,
  163 + gap: 1.2,
  164 + startAngleDeg: 140,
  165 + sweepTotalDeg: 260,
  166 + items: [
  167 + ArcProgressItem(
  168 + ratio: sleepDurationRatio,
  169 + color: const Color(0xFF7B59EE),
  170 + backgroundColor: const Color(0xFFECE7FB),
  171 + noDataBackgroundColor: const Color(0xFFF0F1F5),
  172 + ),
  173 + ArcProgressItem(
  174 + ratio: sleepScoreRatio,
  175 + color: const Color(0xFF638BFB),
  176 + backgroundColor: const Color(0xFFE8EFFD),
  177 + noDataBackgroundColor: const Color(0xFFF0F1F5),
  178 + ),
  179 + ],
  180 + )
150 : CircularGradientCombineWidget( 181 : CircularGradientCombineWidget(
151 size: 50, 182 size: 50,
152 duration: const Duration(seconds: 1), 183 duration: const Duration(seconds: 1),
@@ -276,6 +307,16 @@ class TodayActivityCard extends StatelessWidget { @@ -276,6 +307,16 @@ class TodayActivityCard extends StatelessWidget {
276 double standProgress = (stand > 0 && (activityTarget?.stand ?? 0) > 0) 307 double standProgress = (stand > 0 && (activityTarget?.stand ?? 0) > 0)
277 ? (stand / (activityTarget?.stand ?? 0)) * 360 308 ? (stand / (activityTarget?.stand ?? 0)) * 360
278 : -1; 309 : -1;
  310 + double? moveRatio = (activity > 0 && (activityTarget?.move ?? 0) > 0)
  311 + ? (activity / (activityTarget?.move ?? 0))
  312 + : null;
  313 + double? exerciseRatio =
  314 + (exercise > 0 && (activityTarget?.exercise ?? 0) > 0)
  315 + ? (exercise / (activityTarget?.exercise ?? 0))
  316 + : null;
  317 + double? standRatio = (stand > 0 && (activityTarget?.stand ?? 0) > 0)
  318 + ? (stand / (activityTarget?.stand ?? 0))
  319 + : null;
279 320
280 return _TodaySummaryCard( 321 return _TodaySummaryCard(
281 iconAsset: 'assets/images/common/ic_exercise.png', 322 iconAsset: 'assets/images/common/ic_exercise.png',
@@ -322,20 +363,41 @@ class TodayActivityCard extends StatelessWidget { @@ -322,20 +363,41 @@ class TodayActivityCard extends StatelessWidget {
322 rightWidget: Container( 363 rightWidget: Container(
323 width: 50, 364 width: 50,
324 height: 50, 365 height: 50,
325 - margin: EdgeInsets.only(right: 6, left: 4),  
326 - child: Stack(  
327 - children: [  
328 - isOhos()  
329 - ? SizedBox()  
330 - : Container( 366 + margin: const EdgeInsets.only(right: 6, left: 4),
  367 + child: isOhos()
  368 + ? ArcMultiProgressWidget(
  369 + size: 50,
  370 + strokeWidth: 6,
  371 + gap: 1.2,
  372 + startAngleDeg: 140,
  373 + sweepTotalDeg: 260,
  374 + items: [
  375 + ArcProgressItem(
  376 + ratio: moveRatio,
  377 + color: const Color(0xFFF84C38),
  378 + backgroundColor: const Color(0xFFFEE6E4),
  379 + ),
  380 + ArcProgressItem(
  381 + ratio: exerciseRatio,
  382 + color: const Color(0xFFF6A523),
  383 + backgroundColor: const Color(0xFFFDF2E2),
  384 + ),
  385 + ArcProgressItem(
  386 + ratio: standRatio,
  387 + color: const Color(0xFF3A9BFB),
  388 + backgroundColor: const Color(0xFFE3F1FD),
  389 + ),
  390 + ],
  391 + )
  392 + : Stack(
  393 + children: [
  394 + Container(
331 decoration: BoxDecoration( 395 decoration: BoxDecoration(
332 shape: BoxShape.circle, 396 shape: BoxShape.circle,
333 color: context.colors.textPrimary, 397 color: context.colors.textPrimary,
334 ), 398 ),
335 ), 399 ),
336 - isOhos()  
337 - ? SizedBox()  
338 - : CircularGradientCombineWidget( 400 + CircularGradientCombineWidget(
339 size: 50, 401 size: 50,
340 duration: const Duration(seconds: 1), 402 duration: const Duration(seconds: 1),
341 centerCircleSizeRatio: 0.2, 403 centerCircleSizeRatio: 0.2,
@@ -362,8 +424,8 @@ class TodayActivityCard extends StatelessWidget { @@ -362,8 +424,8 @@ class TodayActivityCard extends StatelessWidget {
362 ], 424 ],
363 ], 425 ],
364 ), 426 ),
365 - ],  
366 - ), 427 + ],
  428 + ),
367 ), 429 ),
368 ); 430 );
369 }), 431 }),
@@ -94,7 +94,9 @@ class LoginView extends GetView<LoginController> { @@ -94,7 +94,9 @@ class LoginView extends GetView<LoginController> {
94 ), 94 ),
95 )), 95 )),
96 Positioned( 96 Positioned(
97 - bottom: bottom(region == AppRegion.china ? 253 : 273), 97 + bottom: bottom(isOhos()
  98 + ? 233
  99 + : (region == AppRegion.china ? 253 : 273)),
98 left: 0, 100 left: 0,
99 right: 0, 101 right: 0,
100 child: Column( 102 child: Column(
@@ -139,7 +141,7 @@ class LoginView extends GetView<LoginController> { @@ -139,7 +141,7 @@ class LoginView extends GetView<LoginController> {
139 child: Column( 141 child: Column(
140 mainAxisSize: MainAxisSize.min, 142 mainAxisSize: MainAxisSize.min,
141 children: [ 143 children: [
142 - if (region == AppRegion.china) ...[ 144 + if (region == AppRegion.china || isOhos()) ...[
143 _LoginMethodButton( 145 _LoginMethodButton(
144 width: buttonWidth, 146 width: buttonWidth,
145 label: l10n.loginWithPhone, 147 label: l10n.loginWithPhone,
@@ -151,7 +153,7 @@ class LoginView extends GetView<LoginController> { @@ -151,7 +153,7 @@ class LoginView extends GetView<LoginController> {
151 ), 153 ),
152 const SizedBox(height: 12), 154 const SizedBox(height: 12),
153 ], 155 ],
154 - if (region == AppRegion.global) ...[ 156 + if (region == AppRegion.global && !isOhos()) ...[
155 _LoginMethodButton( 157 _LoginMethodButton(
156 width: buttonWidth, 158 width: buttonWidth,
157 label: l10n.continueWithEmail, 159 label: l10n.continueWithEmail,
@@ -161,9 +163,7 @@ class LoginView extends GetView<LoginController> { @@ -161,9 +163,7 @@ class LoginView extends GetView<LoginController> {
161 'email', 163 'email',
162 lastUsedLabel: l10n.loginLastUsed, 164 lastUsedLabel: l10n.loginLastUsed,
163 ), 165 ),
164 - const SizedBox(height: 12)  
165 - ],  
166 - if (region == AppRegion.global) ...[ 166 + const SizedBox(height: 12),
167 _LoginMethodButton( 167 _LoginMethodButton(
168 width: buttonWidth, 168 width: buttonWidth,
169 label: l10n.continueWithGoogle, 169 label: l10n.continueWithGoogle,
  1 +import 'dart:math';
  2 +import 'package:flutter/material.dart';
  3 +
  4 +/// 弧形进度单环配置
  5 +class ArcProgressItem {
  6 + /// 进度比例 (0.0 ~ 1.0,支持超过 1.0,<= 0 或 null 表示无数据/未开始)
  7 + final double? ratio;
  8 +
  9 + /// 高亮进度颜色
  10 + final Color color;
  11 +
  12 + /// 底轨背景色
  13 + final Color backgroundColor;
  14 +
  15 + /// 无数据时的底轨背景色 (若为空则使用 [backgroundColor])
  16 + final Color? noDataBackgroundColor;
  17 +
  18 + const ArcProgressItem({
  19 + required this.ratio,
  20 + required this.color,
  21 + required this.backgroundColor,
  22 + this.noDataBackgroundColor,
  23 + });
  24 +}
  25 +
  26 +/// 华为版开口朝下的彩虹弧形多环进度 Widget(支持平滑动画,无中心文字)
  27 +class ArcMultiProgressWidget extends StatefulWidget {
  28 + /// 尺寸宽高 (正方形)
  29 + final double size;
  30 +
  31 + /// 环形线宽 (如果为 null,将根据环数自适应计算)
  32 + final double? strokeWidth;
  33 +
  34 + /// 环与环之间的间距 (如果为 null,将根据环数自适应计算)
  35 + final double? gap;
  36 +
  37 + /// 起始角度 (以度为单位,150° 表示从左下方开始)
  38 + final double startAngleDeg;
  39 +
  40 + /// 总扫过角度 (以度为单位,240° 表示从左下顺时针扫至右下,底部开口 120°)
  41 + final double sweepTotalDeg;
  42 +
  43 + /// 环项列表 (从最外环到最内环排序)
  44 + final List<ArcProgressItem> items;
  45 +
  46 + /// 是否开启动画
  47 + final bool animate;
  48 +
  49 + /// 动画时长
  50 + final Duration duration;
  51 +
  52 + /// 动画曲线
  53 + final Curve curve;
  54 +
  55 + const ArcMultiProgressWidget({
  56 + super.key,
  57 + required this.items,
  58 + this.size = 50,
  59 + this.strokeWidth,
  60 + this.gap,
  61 + this.startAngleDeg = 150,
  62 + this.sweepTotalDeg = 240,
  63 + this.animate = true,
  64 + this.duration = const Duration(milliseconds: 1000),
  65 + this.curve = Curves.easeOutCubic,
  66 + });
  67 +
  68 + @override
  69 + State<ArcMultiProgressWidget> createState() => _ArcMultiProgressWidgetState();
  70 +}
  71 +
  72 +class _ArcMultiProgressWidgetState extends State<ArcMultiProgressWidget>
  73 + with SingleTickerProviderStateMixin {
  74 + late AnimationController _controller;
  75 + late Animation<double> _animation;
  76 + late List<double> _currentProgressAngles;
  77 +
  78 + List<double> get _targetProgressAngles {
  79 + final totalRad = widget.sweepTotalDeg * pi / 180.0;
  80 + return widget.items.map((item) {
  81 + if (item.ratio == null || item.ratio! <= 0) {
  82 + return 0.0;
  83 + }
  84 + final clampedRatio = min(item.ratio!, 1.0);
  85 + return clampedRatio * totalRad;
  86 + }).toList();
  87 + }
  88 +
  89 + @override
  90 + void initState() {
  91 + super.initState();
  92 + _currentProgressAngles = List.filled(widget.items.length, 0.0);
  93 + _controller = AnimationController(
  94 + vsync: this,
  95 + duration: widget.duration,
  96 + );
  97 +
  98 + final targets = _targetProgressAngles;
  99 + _updateAnimation(_currentProgressAngles, targets);
  100 + }
  101 +
  102 + @override
  103 + void didUpdateWidget(ArcMultiProgressWidget oldWidget) {
  104 + super.didUpdateWidget(oldWidget);
  105 + final oldTargets = oldWidget.items.map((e) => e.ratio ?? 0.0).toList();
  106 + final newTargets = widget.items.map((e) => e.ratio ?? 0.0).toList();
  107 + if (oldTargets.toString() != newTargets.toString()) {
  108 + _updateAnimation(_currentProgressAngles, _targetProgressAngles);
  109 + }
  110 + }
  111 +
  112 + void _updateAnimation(List<double> fromAngles, List<double> toAngles) {
  113 + if (!widget.animate) {
  114 + setState(() {
  115 + _currentProgressAngles = List.from(toAngles);
  116 + });
  117 + return;
  118 + }
  119 +
  120 + final startList = List<double>.from(fromAngles);
  121 + // 确保长度一致
  122 + while (startList.length < toAngles.length) {
  123 + startList.add(0.0);
  124 + }
  125 +
  126 + _controller.duration = widget.duration;
  127 + _animation = CurvedAnimation(parent: _controller, curve: widget.curve);
  128 +
  129 + _controller.addListener(() {
  130 + final t = _animation.value;
  131 + setState(() {
  132 + _currentProgressAngles = List.generate(toAngles.length, (i) {
  133 + final start = i < startList.length ? startList[i] : 0.0;
  134 + final end = toAngles[i];
  135 + return start + (end - start) * t;
  136 + });
  137 + });
  138 + });
  139 +
  140 + _controller.forward(from: 0);
  141 + }
  142 +
  143 + @override
  144 + void dispose() {
  145 + _controller.dispose();
  146 + super.dispose();
  147 + }
  148 +
  149 + @override
  150 + Widget build(BuildContext context) {
  151 + final count = widget.items.length;
  152 + // 自动计算粗细和间距
  153 + final strokeWidth = widget.strokeWidth ?? (count <= 2 ? 4.5 : 3.6);
  154 + final gap = widget.gap ?? (count <= 2 ? 2.5 : 1.8);
  155 +
  156 + final startAngleRad = widget.startAngleDeg * pi / 180.0;
  157 + final totalSweepRad = widget.sweepTotalDeg * pi / 180.0;
  158 +
  159 + return SizedBox(
  160 + width: widget.size,
  161 + height: widget.size,
  162 + child: CustomPaint(
  163 + painter: _ArcMultiProgressPainter(
  164 + animatedProgresses: _currentProgressAngles,
  165 + items: widget.items,
  166 + strokeWidth: strokeWidth,
  167 + gap: gap,
  168 + startAngleRad: startAngleRad,
  169 + totalSweepRad: totalSweepRad,
  170 + ),
  171 + ),
  172 + );
  173 + }
  174 +}
  175 +
  176 +class _ArcMultiProgressPainter extends CustomPainter {
  177 + final List<double> animatedProgresses;
  178 + final List<ArcProgressItem> items;
  179 + final double strokeWidth;
  180 + final double gap;
  181 + final double startAngleRad;
  182 + final double totalSweepRad;
  183 +
  184 + _ArcMultiProgressPainter({
  185 + required this.animatedProgresses,
  186 + required this.items,
  187 + required this.strokeWidth,
  188 + required this.gap,
  189 + required this.startAngleRad,
  190 + required this.totalSweepRad,
  191 + });
  192 +
  193 + @override
  194 + void paint(Canvas canvas, Size size) {
  195 + final center = Offset(size.width / 2, size.height / 2);
  196 + final count = items.length;
  197 +
  198 + for (int i = 0; i < count; i++) {
  199 + final item = items[i];
  200 + final radius = (size.width - strokeWidth) / 2 - i * (strokeWidth + gap);
  201 + if (radius <= 0) continue;
  202 +
  203 + final rect = Rect.fromCircle(center: center, radius: radius);
  204 +
  205 + // 1. 绘制底轨
  206 + final hasData = item.ratio != null && item.ratio! > 0;
  207 + final bgColor = (!hasData && item.noDataBackgroundColor != null)
  208 + ? item.noDataBackgroundColor!
  209 + : item.backgroundColor;
  210 +
  211 + final trackPaint = Paint()
  212 + ..color = bgColor
  213 + ..strokeWidth = strokeWidth
  214 + ..style = PaintingStyle.stroke
  215 + ..strokeCap = StrokeCap.round;
  216 +
  217 + canvas.drawArc(rect, startAngleRad, totalSweepRad, false, trackPaint);
  218 +
  219 + // 2. 绘制进度
  220 + final progressSweep =
  221 + i < animatedProgresses.length ? animatedProgresses[i] : 0.0;
  222 + if (progressSweep > 0.001) {
  223 + final progressPaint = Paint()
  224 + ..color = item.color
  225 + ..strokeWidth = strokeWidth
  226 + ..style = PaintingStyle.stroke
  227 + ..strokeCap = StrokeCap.round;
  228 +
  229 + canvas.drawArc(rect, startAngleRad, progressSweep, false, progressPaint);
  230 + }
  231 + }
  232 + }
  233 +
  234 + @override
  235 + bool shouldRepaint(covariant _ArcMultiProgressPainter oldDelegate) {
  236 + return true;
  237 + }
  238 +}
  1 +import 'package:flutter/material.dart';
  2 +
  3 +import 'paint.dart';
  4 +
  5 +/// 环形百分比进度 Widget(专为单环百分比展示设计,保持平滑动画)
  6 +class CircularPercentProgressWidget extends StatefulWidget {
  7 + /// 尺寸宽高
  8 + final double size;
  9 +
  10 + /// 圆环宽度
  11 + final double strokeWidth;
  12 +
  13 + /// 进度百分比 (0.0 ~ 1.0+,例如 0.85 表示 85%,null 或 < 0 表示无数据)
  14 + final double? percent;
  15 +
  16 + /// 渐变色或纯色列表
  17 + final List<Color> gradientColors;
  18 +
  19 + /// 底环背景颜色
  20 + final Color backgroundColor;
  21 +
  22 + /// 是否开启动画
  23 + final bool animate;
  24 +
  25 + /// 动画时长
  26 + final Duration duration;
  27 +
  28 + /// 动画曲线
  29 + final Curve curve;
  30 +
  31 + /// 是否在中心显示文字
  32 + final bool showText;
  33 +
  34 + /// 自定义中心文字样式
  35 + final TextStyle? textStyle;
  36 +
  37 + /// 无数据时显示的文字,默认为 '-'
  38 + final String noDataText;
  39 +
  40 + const CircularPercentProgressWidget({
  41 + super.key,
  42 + required this.gradientColors,
  43 + this.percent,
  44 + this.size = 50,
  45 + this.strokeWidth = 4.5,
  46 + this.backgroundColor = const Color(0xFFF3F3F3),
  47 + this.animate = true,
  48 + this.duration = const Duration(milliseconds: 1000),
  49 + this.curve = Curves.easeOutCubic,
  50 + this.showText = true,
  51 + this.textStyle,
  52 + this.noDataText = '-',
  53 + });
  54 +
  55 + @override
  56 + State<CircularPercentProgressWidget> createState() =>
  57 + _CircularPercentProgressWidgetState();
  58 +}
  59 +
  60 +class _CircularPercentProgressWidgetState
  61 + extends State<CircularPercentProgressWidget>
  62 + with SingleTickerProviderStateMixin {
  63 + late AnimationController _controller;
  64 + late Animation<double> _animation;
  65 + double _currentSweepAngle = 0;
  66 +
  67 + double get _targetSweepAngle {
  68 + if (widget.percent == null || widget.percent! < 0) {
  69 + return -1;
  70 + }
  71 + return widget.percent! * 360;
  72 + }
  73 +
  74 + @override
  75 + void initState() {
  76 + super.initState();
  77 + _controller = AnimationController(
  78 + vsync: this,
  79 + duration: widget.duration,
  80 + );
  81 +
  82 + final targetAngle = _targetSweepAngle;
  83 + _updateAnimation(0, targetAngle);
  84 + }
  85 +
  86 + @override
  87 + void didUpdateWidget(CircularPercentProgressWidget oldWidget) {
  88 + super.didUpdateWidget(oldWidget);
  89 + if (widget.percent != oldWidget.percent) {
  90 + _updateAnimation(_currentSweepAngle, _targetSweepAngle);
  91 + }
  92 + }
  93 +
  94 + void _updateAnimation(double fromAngle, double toAngle) {
  95 + if (toAngle < 0) {
  96 + setState(() {
  97 + _currentSweepAngle = -1;
  98 + });
  99 + return;
  100 + }
  101 +
  102 + final begin = fromAngle < 0 ? 0.0 : fromAngle;
  103 + if (!widget.animate) {
  104 + setState(() {
  105 + _currentSweepAngle = toAngle;
  106 + });
  107 + return;
  108 + }
  109 +
  110 + _controller.duration = widget.duration;
  111 + _animation = Tween<double>(begin: begin, end: toAngle).animate(
  112 + CurvedAnimation(parent: _controller, curve: widget.curve),
  113 + )..addListener(() {
  114 + setState(() {
  115 + _currentSweepAngle = _animation.value;
  116 + });
  117 + });
  118 +
  119 + _controller.forward(from: 0);
  120 + }
  121 +
  122 + @override
  123 + void dispose() {
  124 + _controller.dispose();
  125 + super.dispose();
  126 + }
  127 +
  128 + @override
  129 + Widget build(BuildContext context) {
  130 + final colors = widget.gradientColors.length == 1
  131 + ? [widget.gradientColors.first, widget.gradientColors.first]
  132 + : widget.gradientColors;
  133 +
  134 + final hasData = widget.percent != null && widget.percent! >= 0;
  135 +
  136 + String displayText;
  137 + if (!hasData) {
  138 + displayText = widget.noDataText;
  139 + } else {
  140 + final currentPercentInt = ((_currentSweepAngle / 360) * 100).round();
  141 + displayText = '$currentPercentInt%';
  142 + }
  143 +
  144 + final defaultTextStyle = TextStyle(
  145 + fontSize: 10,
  146 + fontWeight: FontWeight.w600,
  147 + color: const Color(0xFF0F0F11),
  148 + letterSpacing: -0.5,
  149 + );
  150 +
  151 + return SizedBox(
  152 + width: widget.size,
  153 + height: widget.size,
  154 + child: Stack(
  155 + alignment: Alignment.center,
  156 + children: [
  157 + CustomPaint(
  158 + painter: ProgressPainter(
  159 + sweepAngle: _currentSweepAngle,
  160 + progressColor: [colors],
  161 + strokeWidth: widget.strokeWidth,
  162 + backgroundColor: widget.backgroundColor,
  163 + reverse: false,
  164 + ),
  165 + size: Size(widget.size, widget.size),
  166 + ),
  167 + if (widget.showText)
  168 + Container(
  169 + width: widget.size - widget.strokeWidth * 2 - 4,
  170 + height: widget.size - widget.strokeWidth * 2 - 4,
  171 + alignment: Alignment.center,
  172 + child: FittedBox(
  173 + fit: BoxFit.scaleDown,
  174 + child: Text(
  175 + displayText,
  176 + textAlign: TextAlign.center,
  177 + maxLines: 1,
  178 + style: widget.textStyle ?? defaultTextStyle,
  179 + ),
  180 + ),
  181 + ),
  182 + ],
  183 + ),
  184 + );
  185 + }
  186 +}
  1 +import 'package:doublefeel_flutter/app/utils/platform_compact.dart';
1 import 'package:doublefeel_flutter/core/network/dio_client.dart'; 2 import 'package:doublefeel_flutter/core/network/dio_client.dart';
2 import 'package:doublefeel_flutter/core/platform/pigeon_api_facade.dart'; 3 import 'package:doublefeel_flutter/core/platform/pigeon_api_facade.dart';
3 import 'package:flutter/foundation.dart'; 4 import 'package:flutter/foundation.dart';
@@ -21,15 +22,19 @@ class AppEnvironmentConfig { @@ -21,15 +22,19 @@ class AppEnvironmentConfig {
21 Future<AppEnvironmentConfig> init() async { 22 Future<AppEnvironmentConfig> init() async {
22 environment.value = await _storage.readEnvironment(); 23 environment.value = await _storage.readEnvironment();
23 _isNativeDebug = await _platformHostApi.isDebugEnvoriment(); 24 _isNativeDebug = await _platformHostApi.isDebugEnvoriment();
24 - final stored = await _storage.readRegion();  
25 - if (stored == null) {  
26 - final detected = await _detectRegion();  
27 - await setRegion(detected); 25 + if (isOhos()) {
  26 + region.value = AppRegion.china;
28 } else { 27 } else {
29 - region.value = stored;  
30 - }  
31 - if (stored == AppRegion.global) {  
32 - await _storage.setTermsAgreed(true); 28 + final stored = await _storage.readRegion();
  29 + if (stored == null) {
  30 + final detected = await _detectRegion();
  31 + await setRegion(detected);
  32 + } else {
  33 + region.value = stored;
  34 + }
  35 + if (stored == AppRegion.global) {
  36 + await _storage.setTermsAgreed(true);
  37 + }
33 } 38 }
34 return this; 39 return this;
35 } 40 }
@@ -6,7 +6,7 @@ packages: @@ -6,7 +6,7 @@ packages:
6 description: 6 description:
7 name: _fe_analyzer_shared 7 name: _fe_analyzer_shared
8 sha256: da0d9209ca76bde579f2da330aeb9df62b6319c834fa7baae052021b0462401f 8 sha256: da0d9209ca76bde579f2da330aeb9df62b6319c834fa7baae052021b0462401f
9 - url: "https://pub.flutter-io.cn" 9 + url: "https://pub.dev"
10 source: hosted 10 source: hosted
11 version: "85.0.0" 11 version: "85.0.0"
12 analyzer: 12 analyzer:
@@ -14,7 +14,7 @@ packages: @@ -14,7 +14,7 @@ packages:
14 description: 14 description:
15 name: analyzer 15 name: analyzer
16 sha256: "974859dc0ff5f37bc4313244b3218c791810d03ab3470a579580279ba971a48d" 16 sha256: "974859dc0ff5f37bc4313244b3218c791810d03ab3470a579580279ba971a48d"
17 - url: "https://pub.flutter-io.cn" 17 + url: "https://pub.dev"
18 source: hosted 18 source: hosted
19 version: "7.7.1" 19 version: "7.7.1"
20 archive: 20 archive:
@@ -22,7 +22,7 @@ packages: @@ -22,7 +22,7 @@ packages:
22 description: 22 description:
23 name: archive 23 name: archive
24 sha256: ace891da0862b0e4cabbb064ee3fd87b2728b898949fdb366d83fe98342c9f19 24 sha256: ace891da0862b0e4cabbb064ee3fd87b2728b898949fdb366d83fe98342c9f19
25 - url: "https://pub.flutter-io.cn" 25 + url: "https://pub.dev"
26 source: hosted 26 source: hosted
27 version: "4.2.0" 27 version: "4.2.0"
28 args: 28 args:
@@ -30,7 +30,7 @@ packages: @@ -30,7 +30,7 @@ packages:
30 description: 30 description:
31 name: args 31 name: args
32 sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 32 sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04
33 - url: "https://pub.flutter-io.cn" 33 + url: "https://pub.dev"
34 source: hosted 34 source: hosted
35 version: "2.7.0" 35 version: "2.7.0"
36 async: 36 async:
@@ -38,7 +38,7 @@ packages: @@ -38,7 +38,7 @@ packages:
38 description: 38 description:
39 name: async 39 name: async
40 sha256: e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37 40 sha256: e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37
41 - url: "https://pub.flutter-io.cn" 41 + url: "https://pub.dev"
42 source: hosted 42 source: hosted
43 version: "2.13.1" 43 version: "2.13.1"
44 boolean_selector: 44 boolean_selector:
@@ -46,7 +46,7 @@ packages: @@ -46,7 +46,7 @@ packages:
46 description: 46 description:
47 name: boolean_selector 47 name: boolean_selector
48 sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" 48 sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea"
49 - url: "https://pub.flutter-io.cn" 49 + url: "https://pub.dev"
50 source: hosted 50 source: hosted
51 version: "2.1.2" 51 version: "2.1.2"
52 build: 52 build:
@@ -54,7 +54,7 @@ packages: @@ -54,7 +54,7 @@ packages:
54 description: 54 description:
55 name: build 55 name: build
56 sha256: "825fed4d63050252a0b6e74f2d75844c4a85b664814be6993bd3493fb5239779" 56 sha256: "825fed4d63050252a0b6e74f2d75844c4a85b664814be6993bd3493fb5239779"
57 - url: "https://pub.flutter-io.cn" 57 + url: "https://pub.dev"
58 source: hosted 58 source: hosted
59 version: "4.0.1" 59 version: "4.0.1"
60 build_config: 60 build_config:
@@ -62,7 +62,7 @@ packages: @@ -62,7 +62,7 @@ packages:
62 description: 62 description:
63 name: build_config 63 name: build_config
64 sha256: "4f64382b97504dc2fcdf487d5aae33418e08b4703fc21249e4db6d804a4d0187" 64 sha256: "4f64382b97504dc2fcdf487d5aae33418e08b4703fc21249e4db6d804a4d0187"
65 - url: "https://pub.flutter-io.cn" 65 + url: "https://pub.dev"
66 source: hosted 66 source: hosted
67 version: "1.2.0" 67 version: "1.2.0"
68 build_daemon: 68 build_daemon:
@@ -70,7 +70,7 @@ packages: @@ -70,7 +70,7 @@ packages:
70 description: 70 description:
71 name: build_daemon 71 name: build_daemon
72 sha256: fd754058c342243718d5171a95f352cfc9fcf0cba8cfa26df67cb13a5836db78 72 sha256: fd754058c342243718d5171a95f352cfc9fcf0cba8cfa26df67cb13a5836db78
73 - url: "https://pub.flutter-io.cn" 73 + url: "https://pub.dev"
74 source: hosted 74 source: hosted
75 version: "4.1.2" 75 version: "4.1.2"
76 build_runner: 76 build_runner:
@@ -78,7 +78,7 @@ packages: @@ -78,7 +78,7 @@ packages:
78 description: 78 description:
79 name: build_runner 79 name: build_runner
80 sha256: "4e54dbeefdc70691ba80b3bce3976af63b5425c8c07dface348dfee664a0edc1" 80 sha256: "4e54dbeefdc70691ba80b3bce3976af63b5425c8c07dface348dfee664a0edc1"
81 - url: "https://pub.flutter-io.cn" 81 + url: "https://pub.dev"
82 source: hosted 82 source: hosted
83 version: "2.9.0" 83 version: "2.9.0"
84 built_collection: 84 built_collection:
@@ -86,7 +86,7 @@ packages: @@ -86,7 +86,7 @@ packages:
86 description: 86 description:
87 name: built_collection 87 name: built_collection
88 sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" 88 sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100"
89 - url: "https://pub.flutter-io.cn" 89 + url: "https://pub.dev"
90 source: hosted 90 source: hosted
91 version: "5.1.1" 91 version: "5.1.1"
92 built_value: 92 built_value:
@@ -94,7 +94,7 @@ packages: @@ -94,7 +94,7 @@ packages:
94 description: 94 description:
95 name: built_value 95 name: built_value
96 sha256: "31b24be6615ec7fcf70b3aa5a7469fe35826485e639a16dd7eb83ba30e4cc6a8" 96 sha256: "31b24be6615ec7fcf70b3aa5a7469fe35826485e639a16dd7eb83ba30e4cc6a8"
97 - url: "https://pub.flutter-io.cn" 97 + url: "https://pub.dev"
98 source: hosted 98 source: hosted
99 version: "8.12.7" 99 version: "8.12.7"
100 cached_network_image: 100 cached_network_image:
@@ -102,7 +102,7 @@ packages: @@ -102,7 +102,7 @@ packages:
102 description: 102 description:
103 name: cached_network_image 103 name: cached_network_image
104 sha256: "7c1183e361e5c8b0a0f21a28401eecdbde252441106a9816400dd4c2b2424916" 104 sha256: "7c1183e361e5c8b0a0f21a28401eecdbde252441106a9816400dd4c2b2424916"
105 - url: "https://pub.flutter-io.cn" 105 + url: "https://pub.dev"
106 source: hosted 106 source: hosted
107 version: "3.4.1" 107 version: "3.4.1"
108 cached_network_image_platform_interface: 108 cached_network_image_platform_interface:
@@ -110,7 +110,7 @@ packages: @@ -110,7 +110,7 @@ packages:
110 description: 110 description:
111 name: cached_network_image_platform_interface 111 name: cached_network_image_platform_interface
112 sha256: "35814b016e37fbdc91f7ae18c8caf49ba5c88501813f73ce8a07027a395e2829" 112 sha256: "35814b016e37fbdc91f7ae18c8caf49ba5c88501813f73ce8a07027a395e2829"
113 - url: "https://pub.flutter-io.cn" 113 + url: "https://pub.dev"
114 source: hosted 114 source: hosted
115 version: "4.1.1" 115 version: "4.1.1"
116 cached_network_image_web: 116 cached_network_image_web:
@@ -118,7 +118,7 @@ packages: @@ -118,7 +118,7 @@ packages:
118 description: 118 description:
119 name: cached_network_image_web 119 name: cached_network_image_web
120 sha256: "980842f4e8e2535b8dbd3d5ca0b1f0ba66bf61d14cc3a17a9b4788a3685ba062" 120 sha256: "980842f4e8e2535b8dbd3d5ca0b1f0ba66bf61d14cc3a17a9b4788a3685ba062"
121 - url: "https://pub.flutter-io.cn" 121 + url: "https://pub.dev"
122 source: hosted 122 source: hosted
123 version: "1.3.1" 123 version: "1.3.1"
124 characters: 124 characters:
@@ -126,7 +126,7 @@ packages: @@ -126,7 +126,7 @@ packages:
126 description: 126 description:
127 name: characters 127 name: characters
128 sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 128 sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803
129 - url: "https://pub.flutter-io.cn" 129 + url: "https://pub.dev"
130 source: hosted 130 source: hosted
131 version: "1.4.0" 131 version: "1.4.0"
132 checked_yaml: 132 checked_yaml:
@@ -134,7 +134,7 @@ packages: @@ -134,7 +134,7 @@ packages:
134 description: 134 description:
135 name: checked_yaml 135 name: checked_yaml
136 sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f" 136 sha256: "959525d3162f249993882720d52b7e0c833978df229be20702b33d48d91de70f"
137 - url: "https://pub.flutter-io.cn" 137 + url: "https://pub.dev"
138 source: hosted 138 source: hosted
139 version: "2.0.4" 139 version: "2.0.4"
140 clock: 140 clock:
@@ -142,7 +142,7 @@ packages: @@ -142,7 +142,7 @@ packages:
142 description: 142 description:
143 name: clock 143 name: clock
144 sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b 144 sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b
145 - url: "https://pub.flutter-io.cn" 145 + url: "https://pub.dev"
146 source: hosted 146 source: hosted
147 version: "1.1.2" 147 version: "1.1.2"
148 code_assets: 148 code_assets:
@@ -150,7 +150,7 @@ packages: @@ -150,7 +150,7 @@ packages:
150 description: 150 description:
151 name: code_assets 151 name: code_assets
152 sha256: cfd4f5f575a49c5f10ca856e9846073f1e6c3ee94912377eea5f6cefc5272941 152 sha256: cfd4f5f575a49c5f10ca856e9846073f1e6c3ee94912377eea5f6cefc5272941
153 - url: "https://pub.flutter-io.cn" 153 + url: "https://pub.dev"
154 source: hosted 154 source: hosted
155 version: "2.0.0" 155 version: "2.0.0"
156 code_builder: 156 code_builder:
@@ -158,7 +158,7 @@ packages: @@ -158,7 +158,7 @@ packages:
158 description: 158 description:
159 name: code_builder 159 name: code_builder
160 sha256: "6a6cab2ba4680d6423f34a9b972a4c9a94ebe1b62ecec4e1a1f2cba91fd1319d" 160 sha256: "6a6cab2ba4680d6423f34a9b972a4c9a94ebe1b62ecec4e1a1f2cba91fd1319d"
161 - url: "https://pub.flutter-io.cn" 161 + url: "https://pub.dev"
162 source: hosted 162 source: hosted
163 version: "4.11.1" 163 version: "4.11.1"
164 collection: 164 collection:
@@ -166,7 +166,7 @@ packages: @@ -166,7 +166,7 @@ packages:
166 description: 166 description:
167 name: collection 167 name: collection
168 sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" 168 sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76"
169 - url: "https://pub.flutter-io.cn" 169 + url: "https://pub.dev"
170 source: hosted 170 source: hosted
171 version: "1.19.1" 171 version: "1.19.1"
172 convert: 172 convert:
@@ -174,7 +174,7 @@ packages: @@ -174,7 +174,7 @@ packages:
174 description: 174 description:
175 name: convert 175 name: convert
176 sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 176 sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68
177 - url: "https://pub.flutter-io.cn" 177 + url: "https://pub.dev"
178 source: hosted 178 source: hosted
179 version: "3.1.2" 179 version: "3.1.2"
180 cross_file: 180 cross_file:
@@ -182,7 +182,7 @@ packages: @@ -182,7 +182,7 @@ packages:
182 description: 182 description:
183 name: cross_file 183 name: cross_file
184 sha256: "92c9c43c383bfa1c32079d3bc492d55d6d4318044b7b47edaff8971cbb555c51" 184 sha256: "92c9c43c383bfa1c32079d3bc492d55d6d4318044b7b47edaff8971cbb555c51"
185 - url: "https://pub.flutter-io.cn" 185 + url: "https://pub.dev"
186 source: hosted 186 source: hosted
187 version: "0.3.5+4" 187 version: "0.3.5+4"
188 crypto: 188 crypto:
@@ -190,7 +190,7 @@ packages: @@ -190,7 +190,7 @@ packages:
190 description: 190 description:
191 name: crypto 191 name: crypto
192 sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf 192 sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf
193 - url: "https://pub.flutter-io.cn" 193 + url: "https://pub.dev"
194 source: hosted 194 source: hosted
195 version: "3.0.7" 195 version: "3.0.7"
196 cupertino_icons: 196 cupertino_icons:
@@ -198,7 +198,7 @@ packages: @@ -198,7 +198,7 @@ packages:
198 description: 198 description:
199 name: cupertino_icons 199 name: cupertino_icons
200 sha256: "41e005c33bd814be4d3096aff55b1908d419fde52ca656c8c47719ec745873cd" 200 sha256: "41e005c33bd814be4d3096aff55b1908d419fde52ca656c8c47719ec745873cd"
201 - url: "https://pub.flutter-io.cn" 201 + url: "https://pub.dev"
202 source: hosted 202 source: hosted
203 version: "1.0.9" 203 version: "1.0.9"
204 dart_style: 204 dart_style:
@@ -206,7 +206,7 @@ packages: @@ -206,7 +206,7 @@ packages:
206 description: 206 description:
207 name: dart_style 207 name: dart_style
208 sha256: "8a0e5fba27e8ee025d2ffb4ee820b4e6e2cf5e4246a6b1a477eb66866947e0bb" 208 sha256: "8a0e5fba27e8ee025d2ffb4ee820b4e6e2cf5e4246a6b1a477eb66866947e0bb"
209 - url: "https://pub.flutter-io.cn" 209 + url: "https://pub.dev"
210 source: hosted 210 source: hosted
211 version: "3.1.1" 211 version: "3.1.1"
212 dio: 212 dio:
@@ -214,7 +214,7 @@ packages: @@ -214,7 +214,7 @@ packages:
214 description: 214 description:
215 name: dio 215 name: dio
216 sha256: "0df44ebba85e503958eb75d07eedd3c86275a58c1d3eda2f2ce8f0a2c3abbb3c" 216 sha256: "0df44ebba85e503958eb75d07eedd3c86275a58c1d3eda2f2ce8f0a2c3abbb3c"
217 - url: "https://pub.flutter-io.cn" 217 + url: "https://pub.dev"
218 source: hosted 218 source: hosted
219 version: "5.11.0" 219 version: "5.11.0"
220 dio_web_adapter: 220 dio_web_adapter:
@@ -222,7 +222,7 @@ packages: @@ -222,7 +222,7 @@ packages:
222 description: 222 description:
223 name: dio_web_adapter 223 name: dio_web_adapter
224 sha256: "0786d0b7295a373de356fc0af4f6f1d0ab2844ed31b19dfc5e7556b70e24212c" 224 sha256: "0786d0b7295a373de356fc0af4f6f1d0ab2844ed31b19dfc5e7556b70e24212c"
225 - url: "https://pub.flutter-io.cn" 225 + url: "https://pub.dev"
226 source: hosted 226 source: hosted
227 version: "2.2.1" 227 version: "2.2.1"
228 equatable: 228 equatable:
@@ -230,7 +230,7 @@ packages: @@ -230,7 +230,7 @@ packages:
230 description: 230 description:
231 name: equatable 231 name: equatable
232 sha256: "3bce007a596ff8b3119c45d68aaef631272537c03d30e5d4534dd24bf4c5eaa2" 232 sha256: "3bce007a596ff8b3119c45d68aaef631272537c03d30e5d4534dd24bf4c5eaa2"
233 - url: "https://pub.flutter-io.cn" 233 + url: "https://pub.dev"
234 source: hosted 234 source: hosted
235 version: "2.1.0" 235 version: "2.1.0"
236 fake_async: 236 fake_async:
@@ -238,7 +238,7 @@ packages: @@ -238,7 +238,7 @@ packages:
238 description: 238 description:
239 name: fake_async 239 name: fake_async
240 sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" 240 sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44"
241 - url: "https://pub.flutter-io.cn" 241 + url: "https://pub.dev"
242 source: hosted 242 source: hosted
243 version: "1.3.3" 243 version: "1.3.3"
244 ffi: 244 ffi:
@@ -246,7 +246,7 @@ packages: @@ -246,7 +246,7 @@ packages:
246 description: 246 description:
247 name: ffi 247 name: ffi
248 sha256: "6d7fd89431262d8f3125e81b50d3847a091d846eafcd4fdb88dd06f36d705a45" 248 sha256: "6d7fd89431262d8f3125e81b50d3847a091d846eafcd4fdb88dd06f36d705a45"
249 - url: "https://pub.flutter-io.cn" 249 + url: "https://pub.dev"
250 source: hosted 250 source: hosted
251 version: "2.2.0" 251 version: "2.2.0"
252 file: 252 file:
@@ -254,7 +254,7 @@ packages: @@ -254,7 +254,7 @@ packages:
254 description: 254 description:
255 name: file 255 name: file
256 sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 256 sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4
257 - url: "https://pub.flutter-io.cn" 257 + url: "https://pub.dev"
258 source: hosted 258 source: hosted
259 version: "7.0.1" 259 version: "7.0.1"
260 file_selector_linux: 260 file_selector_linux:
@@ -262,7 +262,7 @@ packages: @@ -262,7 +262,7 @@ packages:
262 description: 262 description:
263 name: file_selector_linux 263 name: file_selector_linux
264 sha256: "2567f398e06ac72dcf2e98a0c95df2a9edd03c2c2e0cacd4780f20cdf56263a0" 264 sha256: "2567f398e06ac72dcf2e98a0c95df2a9edd03c2c2e0cacd4780f20cdf56263a0"
265 - url: "https://pub.flutter-io.cn" 265 + url: "https://pub.dev"
266 source: hosted 266 source: hosted
267 version: "0.9.4" 267 version: "0.9.4"
268 file_selector_macos: 268 file_selector_macos:
@@ -270,7 +270,7 @@ packages: @@ -270,7 +270,7 @@ packages:
270 description: 270 description:
271 name: file_selector_macos 271 name: file_selector_macos
272 sha256: "5e0bbe9c312416f1787a68259ea1505b52f258c587f12920422671807c4d618a" 272 sha256: "5e0bbe9c312416f1787a68259ea1505b52f258c587f12920422671807c4d618a"
273 - url: "https://pub.flutter-io.cn" 273 + url: "https://pub.dev"
274 source: hosted 274 source: hosted
275 version: "0.9.5" 275 version: "0.9.5"
276 file_selector_platform_interface: 276 file_selector_platform_interface:
@@ -278,7 +278,7 @@ packages: @@ -278,7 +278,7 @@ packages:
278 description: 278 description:
279 name: file_selector_platform_interface 279 name: file_selector_platform_interface
280 sha256: "35e0bd61ebcdb91a3505813b055b09b79dfdc7d0aee9c09a7ba59ae4bb13dc85" 280 sha256: "35e0bd61ebcdb91a3505813b055b09b79dfdc7d0aee9c09a7ba59ae4bb13dc85"
281 - url: "https://pub.flutter-io.cn" 281 + url: "https://pub.dev"
282 source: hosted 282 source: hosted
283 version: "2.7.0" 283 version: "2.7.0"
284 file_selector_windows: 284 file_selector_windows:
@@ -286,7 +286,7 @@ packages: @@ -286,7 +286,7 @@ packages:
286 description: 286 description:
287 name: file_selector_windows 287 name: file_selector_windows
288 sha256: "62197474ae75893a62df75939c777763d39c2bc5f73ce5b88497208bc269abfd" 288 sha256: "62197474ae75893a62df75939c777763d39c2bc5f73ce5b88497208bc269abfd"
289 - url: "https://pub.flutter-io.cn" 289 + url: "https://pub.dev"
290 source: hosted 290 source: hosted
291 version: "0.9.3+5" 291 version: "0.9.3+5"
292 fixnum: 292 fixnum:
@@ -294,7 +294,7 @@ packages: @@ -294,7 +294,7 @@ packages:
294 description: 294 description:
295 name: fixnum 295 name: fixnum
296 sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be 296 sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be
297 - url: "https://pub.flutter-io.cn" 297 + url: "https://pub.dev"
298 source: hosted 298 source: hosted
299 version: "1.1.1" 299 version: "1.1.1"
300 fl_chart: 300 fl_chart:
@@ -302,7 +302,7 @@ packages: @@ -302,7 +302,7 @@ packages:
302 description: 302 description:
303 name: fl_chart 303 name: fl_chart
304 sha256: "5276944c6ffc975ae796569a826c38a62d2abcf264e26b88fa6f482e107f4237" 304 sha256: "5276944c6ffc975ae796569a826c38a62d2abcf264e26b88fa6f482e107f4237"
305 - url: "https://pub.flutter-io.cn" 305 + url: "https://pub.dev"
306 source: hosted 306 source: hosted
307 version: "0.70.2" 307 version: "0.70.2"
308 flutter: 308 flutter:
@@ -315,7 +315,7 @@ packages: @@ -315,7 +315,7 @@ packages:
315 description: 315 description:
316 name: flutter_cache_manager 316 name: flutter_cache_manager
317 sha256: "1de7849213b4c73c85aca7e0ac687a9a5d82ccdb594366b9dcc26cb6a2189cd2" 317 sha256: "1de7849213b4c73c85aca7e0ac687a9a5d82ccdb594366b9dcc26cb6a2189cd2"
318 - url: "https://pub.flutter-io.cn" 318 + url: "https://pub.dev"
319 source: hosted 319 source: hosted
320 version: "3.4.2" 320 version: "3.4.2"
321 flutter_lints: 321 flutter_lints:
@@ -323,7 +323,7 @@ packages: @@ -323,7 +323,7 @@ packages:
323 description: 323 description:
324 name: flutter_lints 324 name: flutter_lints
325 sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1" 325 sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1"
326 - url: "https://pub.flutter-io.cn" 326 + url: "https://pub.dev"
327 source: hosted 327 source: hosted
328 version: "5.0.0" 328 version: "5.0.0"
329 flutter_localizations: 329 flutter_localizations:
@@ -336,7 +336,7 @@ packages: @@ -336,7 +336,7 @@ packages:
336 description: 336 description:
337 name: flutter_plugin_android_lifecycle 337 name: flutter_plugin_android_lifecycle
338 sha256: "3854fe5e3bff0b113c658f260b90c95dea17c92db0f2addeac2e343dd9969785" 338 sha256: "3854fe5e3bff0b113c658f260b90c95dea17c92db0f2addeac2e343dd9969785"
339 - url: "https://pub.flutter-io.cn" 339 + url: "https://pub.dev"
340 source: hosted 340 source: hosted
341 version: "2.0.35" 341 version: "2.0.35"
342 flutter_test: 342 flutter_test:
@@ -349,7 +349,7 @@ packages: @@ -349,7 +349,7 @@ packages:
349 description: 349 description:
350 name: flutter_timezone 350 name: flutter_timezone
351 sha256: "869677426fde92dbe170fb7d2d4929f2a8343c2f5f62f08b0bb64f908630b073" 351 sha256: "869677426fde92dbe170fb7d2d4929f2a8343c2f5f62f08b0bb64f908630b073"
352 - url: "https://pub.flutter-io.cn" 352 + url: "https://pub.dev"
353 source: hosted 353 source: hosted
354 version: "5.1.0" 354 version: "5.1.0"
355 flutter_web_plugins: 355 flutter_web_plugins:
@@ -362,7 +362,7 @@ packages: @@ -362,7 +362,7 @@ packages:
362 description: 362 description:
363 name: fluttertoast 363 name: fluttertoast
364 sha256: "90778fe0497fe3a09166e8cf2e0867310ff434b794526589e77ec03cf08ba8e8" 364 sha256: "90778fe0497fe3a09166e8cf2e0867310ff434b794526589e77ec03cf08ba8e8"
365 - url: "https://pub.flutter-io.cn" 365 + url: "https://pub.dev"
366 source: hosted 366 source: hosted
367 version: "8.2.14" 367 version: "8.2.14"
368 get: 368 get:
@@ -370,7 +370,7 @@ packages: @@ -370,7 +370,7 @@ packages:
370 description: 370 description:
371 name: get 371 name: get
372 sha256: "5ed34a7925b85336e15d472cc4cfe7d9ebf4ab8e8b9f688585bf6b50f4c3d79a" 372 sha256: "5ed34a7925b85336e15d472cc4cfe7d9ebf4ab8e8b9f688585bf6b50f4c3d79a"
373 - url: "https://pub.flutter-io.cn" 373 + url: "https://pub.dev"
374 source: hosted 374 source: hosted
375 version: "4.7.3" 375 version: "4.7.3"
376 glob: 376 glob:
@@ -378,7 +378,7 @@ packages: @@ -378,7 +378,7 @@ packages:
378 description: 378 description:
379 name: glob 379 name: glob
380 sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de 380 sha256: c3f1ee72c96f8f78935e18aa8cecced9ab132419e8625dc187e1c2408efc20de
381 - url: "https://pub.flutter-io.cn" 381 + url: "https://pub.dev"
382 source: hosted 382 source: hosted
383 version: "2.1.3" 383 version: "2.1.3"
384 graphs: 384 graphs:
@@ -386,7 +386,7 @@ packages: @@ -386,7 +386,7 @@ packages:
386 description: 386 description:
387 name: graphs 387 name: graphs
388 sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" 388 sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0"
389 - url: "https://pub.flutter-io.cn" 389 + url: "https://pub.dev"
390 source: hosted 390 source: hosted
391 version: "2.3.2" 391 version: "2.3.2"
392 hooks: 392 hooks:
@@ -394,7 +394,7 @@ packages: @@ -394,7 +394,7 @@ packages:
394 description: 394 description:
395 name: hooks 395 name: hooks
396 sha256: eaac480a35ec0814146c2c48d96aaa829e0e44a7662c88ae84c9edf4bc35651f 396 sha256: eaac480a35ec0814146c2c48d96aaa829e0e44a7662c88ae84c9edf4bc35651f
397 - url: "https://pub.flutter-io.cn" 397 + url: "https://pub.dev"
398 source: hosted 398 source: hosted
399 version: "2.2.0" 399 version: "2.2.0"
400 http: 400 http:
@@ -402,7 +402,7 @@ packages: @@ -402,7 +402,7 @@ packages:
402 description: 402 description:
403 name: http 403 name: http
404 sha256: "87721a4a50b19c7f1d49001e51409bddc46303966ce89a65af4f4e6004896412" 404 sha256: "87721a4a50b19c7f1d49001e51409bddc46303966ce89a65af4f4e6004896412"
405 - url: "https://pub.flutter-io.cn" 405 + url: "https://pub.dev"
406 source: hosted 406 source: hosted
407 version: "1.6.0" 407 version: "1.6.0"
408 http_multi_server: 408 http_multi_server:
@@ -410,7 +410,7 @@ packages: @@ -410,7 +410,7 @@ packages:
410 description: 410 description:
411 name: http_multi_server 411 name: http_multi_server
412 sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8 412 sha256: aa6199f908078bb1c5efb8d8638d4ae191aac11b311132c3ef48ce352fb52ef8
413 - url: "https://pub.flutter-io.cn" 413 + url: "https://pub.dev"
414 source: hosted 414 source: hosted
415 version: "3.2.2" 415 version: "3.2.2"
416 http_parser: 416 http_parser:
@@ -418,7 +418,7 @@ packages: @@ -418,7 +418,7 @@ packages:
418 description: 418 description:
419 name: http_parser 419 name: http_parser
420 sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" 420 sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
421 - url: "https://pub.flutter-io.cn" 421 + url: "https://pub.dev"
422 source: hosted 422 source: hosted
423 version: "4.1.2" 423 version: "4.1.2"
424 image_cropper: 424 image_cropper:
@@ -426,7 +426,7 @@ packages: @@ -426,7 +426,7 @@ packages:
426 description: 426 description:
427 name: image_cropper 427 name: image_cropper
428 sha256: "4e9c96c029eb5a23798da1b6af39787f964da6ffc78fd8447c140542a9f7c6fc" 428 sha256: "4e9c96c029eb5a23798da1b6af39787f964da6ffc78fd8447c140542a9f7c6fc"
429 - url: "https://pub.flutter-io.cn" 429 + url: "https://pub.dev"
430 source: hosted 430 source: hosted
431 version: "9.1.0" 431 version: "9.1.0"
432 image_cropper_for_web: 432 image_cropper_for_web:
@@ -434,7 +434,7 @@ packages: @@ -434,7 +434,7 @@ packages:
434 description: 434 description:
435 name: image_cropper_for_web 435 name: image_cropper_for_web
436 sha256: fd81ebe36f636576094377aab32673c4e5d1609b32dec16fad98d2b71f1250a9 436 sha256: fd81ebe36f636576094377aab32673c4e5d1609b32dec16fad98d2b71f1250a9
437 - url: "https://pub.flutter-io.cn" 437 + url: "https://pub.dev"
438 source: hosted 438 source: hosted
439 version: "6.1.0" 439 version: "6.1.0"
440 image_cropper_platform_interface: 440 image_cropper_platform_interface:
@@ -442,7 +442,7 @@ packages: @@ -442,7 +442,7 @@ packages:
442 description: 442 description:
443 name: image_cropper_platform_interface 443 name: image_cropper_platform_interface
444 sha256: "6ca6b81769abff9a4dcc3bbd3d75f5dfa9de6b870ae9613c8cd237333a4283af" 444 sha256: "6ca6b81769abff9a4dcc3bbd3d75f5dfa9de6b870ae9613c8cd237333a4283af"
445 - url: "https://pub.flutter-io.cn" 445 + url: "https://pub.dev"
446 source: hosted 446 source: hosted
447 version: "7.1.0" 447 version: "7.1.0"
448 image_picker: 448 image_picker:
@@ -450,7 +450,7 @@ packages: @@ -450,7 +450,7 @@ packages:
450 description: 450 description:
451 name: image_picker 451 name: image_picker
452 sha256: d8402284df184bc05f4a2210c6c23983b0720f4cd87cbd05c5390a78af602667 452 sha256: d8402284df184bc05f4a2210c6c23983b0720f4cd87cbd05c5390a78af602667
453 - url: "https://pub.flutter-io.cn" 453 + url: "https://pub.dev"
454 source: hosted 454 source: hosted
455 version: "1.2.3" 455 version: "1.2.3"
456 image_picker_android: 456 image_picker_android:
@@ -458,7 +458,7 @@ packages: @@ -458,7 +458,7 @@ packages:
458 description: 458 description:
459 name: image_picker_android 459 name: image_picker_android
460 sha256: d5b3e1774af29c9ab00103afb0d4614070f924d2e0057ac867ec98800114793f 460 sha256: d5b3e1774af29c9ab00103afb0d4614070f924d2e0057ac867ec98800114793f
461 - url: "https://pub.flutter-io.cn" 461 + url: "https://pub.dev"
462 source: hosted 462 source: hosted
463 version: "0.8.13+17" 463 version: "0.8.13+17"
464 image_picker_for_web: 464 image_picker_for_web:
@@ -466,7 +466,7 @@ packages: @@ -466,7 +466,7 @@ packages:
466 description: 466 description:
467 name: image_picker_for_web 467 name: image_picker_for_web
468 sha256: "66257a3191ab360d23a55c8241c91a6e329d31e94efa7be9cf7a212e65850214" 468 sha256: "66257a3191ab360d23a55c8241c91a6e329d31e94efa7be9cf7a212e65850214"
469 - url: "https://pub.flutter-io.cn" 469 + url: "https://pub.dev"
470 source: hosted 470 source: hosted
471 version: "3.1.1" 471 version: "3.1.1"
472 image_picker_ios: 472 image_picker_ios:
@@ -474,7 +474,7 @@ packages: @@ -474,7 +474,7 @@ packages:
474 description: 474 description:
475 name: image_picker_ios 475 name: image_picker_ios
476 sha256: b9c4a438a9ff4f60808c9cf0039b93a42bb6c2211ef6ebb647394b2b3fa84588 476 sha256: b9c4a438a9ff4f60808c9cf0039b93a42bb6c2211ef6ebb647394b2b3fa84588
477 - url: "https://pub.flutter-io.cn" 477 + url: "https://pub.dev"
478 source: hosted 478 source: hosted
479 version: "0.8.13+6" 479 version: "0.8.13+6"
480 image_picker_linux: 480 image_picker_linux:
@@ -482,7 +482,7 @@ packages: @@ -482,7 +482,7 @@ packages:
482 description: 482 description:
483 name: image_picker_linux 483 name: image_picker_linux
484 sha256: "1f81c5f2046b9ab724f85523e4af65be1d47b038160a8c8deed909762c308ed4" 484 sha256: "1f81c5f2046b9ab724f85523e4af65be1d47b038160a8c8deed909762c308ed4"
485 - url: "https://pub.flutter-io.cn" 485 + url: "https://pub.dev"
486 source: hosted 486 source: hosted
487 version: "0.2.2" 487 version: "0.2.2"
488 image_picker_macos: 488 image_picker_macos:
@@ -490,7 +490,7 @@ packages: @@ -490,7 +490,7 @@ packages:
490 description: 490 description:
491 name: image_picker_macos 491 name: image_picker_macos
492 sha256: "86f0f15a309de7e1a552c12df9ce5b59fe927e71385329355aec4776c6a8ec91" 492 sha256: "86f0f15a309de7e1a552c12df9ce5b59fe927e71385329355aec4776c6a8ec91"
493 - url: "https://pub.flutter-io.cn" 493 + url: "https://pub.dev"
494 source: hosted 494 source: hosted
495 version: "0.2.2+1" 495 version: "0.2.2+1"
496 image_picker_ohos: 496 image_picker_ohos:
@@ -507,7 +507,7 @@ packages: @@ -507,7 +507,7 @@ packages:
507 description: 507 description:
508 name: image_picker_platform_interface 508 name: image_picker_platform_interface
509 sha256: "567e056716333a1647c64bb6bd873cff7622233a5c3f694be28a583d4715690c" 509 sha256: "567e056716333a1647c64bb6bd873cff7622233a5c3f694be28a583d4715690c"
510 - url: "https://pub.flutter-io.cn" 510 + url: "https://pub.dev"
511 source: hosted 511 source: hosted
512 version: "2.11.1" 512 version: "2.11.1"
513 image_picker_windows: 513 image_picker_windows:
@@ -515,7 +515,7 @@ packages: @@ -515,7 +515,7 @@ packages:
515 description: 515 description:
516 name: image_picker_windows 516 name: image_picker_windows
517 sha256: d248c86554a72b5495a31c56f060cf73a41c7ff541689327b1a7dbccc33adfae 517 sha256: d248c86554a72b5495a31c56f060cf73a41c7ff541689327b1a7dbccc33adfae
518 - url: "https://pub.flutter-io.cn" 518 + url: "https://pub.dev"
519 source: hosted 519 source: hosted
520 version: "0.2.2" 520 version: "0.2.2"
521 intl: 521 intl:
@@ -523,7 +523,7 @@ packages: @@ -523,7 +523,7 @@ packages:
523 description: 523 description:
524 name: intl 524 name: intl
525 sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" 525 sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5"
526 - url: "https://pub.flutter-io.cn" 526 + url: "https://pub.dev"
527 source: hosted 527 source: hosted
528 version: "0.20.2" 528 version: "0.20.2"
529 io: 529 io:
@@ -531,7 +531,7 @@ packages: @@ -531,7 +531,7 @@ packages:
531 description: 531 description:
532 name: io 532 name: io
533 sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b 533 sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b
534 - url: "https://pub.flutter-io.cn" 534 + url: "https://pub.dev"
535 source: hosted 535 source: hosted
536 version: "1.0.5" 536 version: "1.0.5"
537 jni: 537 jni:
@@ -539,7 +539,7 @@ packages: @@ -539,7 +539,7 @@ packages:
539 description: 539 description:
540 name: jni 540 name: jni
541 sha256: f038e58b4dc2c9037f50e233175086337e0b305e356d28211bf55f21c504cbd3 541 sha256: f038e58b4dc2c9037f50e233175086337e0b305e356d28211bf55f21c504cbd3
542 - url: "https://pub.flutter-io.cn" 542 + url: "https://pub.dev"
543 source: hosted 543 source: hosted
544 version: "1.0.3" 544 version: "1.0.3"
545 jni_flutter: 545 jni_flutter:
@@ -547,7 +547,7 @@ packages: @@ -547,7 +547,7 @@ packages:
547 description: 547 description:
548 name: jni_flutter 548 name: jni_flutter
549 sha256: "7b717011ea40d04fd47c2731d3d1d36eb99eba3435c2753d62489e8c3c9991d5" 549 sha256: "7b717011ea40d04fd47c2731d3d1d36eb99eba3435c2753d62489e8c3c9991d5"
550 - url: "https://pub.flutter-io.cn" 550 + url: "https://pub.dev"
551 source: hosted 551 source: hosted
552 version: "1.0.2" 552 version: "1.0.2"
553 jni_util: 553 jni_util:
@@ -555,7 +555,7 @@ packages: @@ -555,7 +555,7 @@ packages:
555 description: 555 description:
556 name: jni_util 556 name: jni_util
557 sha256: "1ba86da04a5f2bf18fde2edb235587e70c5b0fc5bd4ba955f46b00942c3fc35f" 557 sha256: "1ba86da04a5f2bf18fde2edb235587e70c5b0fc5bd4ba955f46b00942c3fc35f"
558 - url: "https://pub.flutter-io.cn" 558 + url: "https://pub.dev"
559 source: hosted 559 source: hosted
560 version: "1.0.0" 560 version: "1.0.0"
561 json_annotation: 561 json_annotation:
@@ -563,7 +563,7 @@ packages: @@ -563,7 +563,7 @@ packages:
563 description: 563 description:
564 name: json_annotation 564 name: json_annotation
565 sha256: "2a743920d81b7910627f68ee2c9ac1fc0bfee32b9fc3403587d7c6791ca12f80" 565 sha256: "2a743920d81b7910627f68ee2c9ac1fc0bfee32b9fc3403587d7c6791ca12f80"
566 - url: "https://pub.flutter-io.cn" 566 + url: "https://pub.dev"
567 source: hosted 567 source: hosted
568 version: "4.12.0" 568 version: "4.12.0"
569 leak_tracker: 569 leak_tracker:
@@ -571,7 +571,7 @@ packages: @@ -571,7 +571,7 @@ packages:
571 description: 571 description:
572 name: leak_tracker 572 name: leak_tracker
573 sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" 573 sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de"
574 - url: "https://pub.flutter-io.cn" 574 + url: "https://pub.dev"
575 source: hosted 575 source: hosted
576 version: "11.0.2" 576 version: "11.0.2"
577 leak_tracker_flutter_testing: 577 leak_tracker_flutter_testing:
@@ -579,7 +579,7 @@ packages: @@ -579,7 +579,7 @@ packages:
579 description: 579 description:
580 name: leak_tracker_flutter_testing 580 name: leak_tracker_flutter_testing
581 sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" 581 sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1"
582 - url: "https://pub.flutter-io.cn" 582 + url: "https://pub.dev"
583 source: hosted 583 source: hosted
584 version: "3.0.10" 584 version: "3.0.10"
585 leak_tracker_testing: 585 leak_tracker_testing:
@@ -587,7 +587,7 @@ packages: @@ -587,7 +587,7 @@ packages:
587 description: 587 description:
588 name: leak_tracker_testing 588 name: leak_tracker_testing
589 sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" 589 sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1"
590 - url: "https://pub.flutter-io.cn" 590 + url: "https://pub.dev"
591 source: hosted 591 source: hosted
592 version: "3.0.2" 592 version: "3.0.2"
593 lints: 593 lints:
@@ -595,7 +595,7 @@ packages: @@ -595,7 +595,7 @@ packages:
595 description: 595 description:
596 name: lints 596 name: lints
597 sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7 597 sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7
598 - url: "https://pub.flutter-io.cn" 598 + url: "https://pub.dev"
599 source: hosted 599 source: hosted
600 version: "5.1.1" 600 version: "5.1.1"
601 logger: 601 logger:
@@ -603,7 +603,7 @@ packages: @@ -603,7 +603,7 @@ packages:
603 description: 603 description:
604 name: logger 604 name: logger
605 sha256: "25aee487596a6257655a1e091ec2ae66bc30e7af663592cc3a27e6591e05035c" 605 sha256: "25aee487596a6257655a1e091ec2ae66bc30e7af663592cc3a27e6591e05035c"
606 - url: "https://pub.flutter-io.cn" 606 + url: "https://pub.dev"
607 source: hosted 607 source: hosted
608 version: "2.7.0" 608 version: "2.7.0"
609 logging: 609 logging:
@@ -611,7 +611,7 @@ packages: @@ -611,7 +611,7 @@ packages:
611 description: 611 description:
612 name: logging 612 name: logging
613 sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 613 sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61
614 - url: "https://pub.flutter-io.cn" 614 + url: "https://pub.dev"
615 source: hosted 615 source: hosted
616 version: "1.3.0" 616 version: "1.3.0"
617 lottie: 617 lottie:
@@ -619,7 +619,7 @@ packages: @@ -619,7 +619,7 @@ packages:
619 description: 619 description:
620 name: lottie 620 name: lottie
621 sha256: c5fa04a80a620066c15cf19cc44773e19e9b38e989ff23ea32e5903ef1015950 621 sha256: c5fa04a80a620066c15cf19cc44773e19e9b38e989ff23ea32e5903ef1015950
622 - url: "https://pub.flutter-io.cn" 622 + url: "https://pub.dev"
623 source: hosted 623 source: hosted
624 version: "3.3.1" 624 version: "3.3.1"
625 matcher: 625 matcher:
@@ -627,7 +627,7 @@ packages: @@ -627,7 +627,7 @@ packages:
627 description: 627 description:
628 name: matcher 628 name: matcher
629 sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 629 sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2
630 - url: "https://pub.flutter-io.cn" 630 + url: "https://pub.dev"
631 source: hosted 631 source: hosted
632 version: "0.12.17" 632 version: "0.12.17"
633 material_color_utilities: 633 material_color_utilities:
@@ -635,7 +635,7 @@ packages: @@ -635,7 +635,7 @@ packages:
635 description: 635 description:
636 name: material_color_utilities 636 name: material_color_utilities
637 sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec 637 sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec
638 - url: "https://pub.flutter-io.cn" 638 + url: "https://pub.dev"
639 source: hosted 639 source: hosted
640 version: "0.11.1" 640 version: "0.11.1"
641 meta: 641 meta:
@@ -643,7 +643,7 @@ packages: @@ -643,7 +643,7 @@ packages:
643 description: 643 description:
644 name: meta 644 name: meta
645 sha256: "307249ce4ff29d58a18e97f6345f539382eb9c9c29ecda628900f31de0443dd9" 645 sha256: "307249ce4ff29d58a18e97f6345f539382eb9c9c29ecda628900f31de0443dd9"
646 - url: "https://pub.flutter-io.cn" 646 + url: "https://pub.dev"
647 source: hosted 647 source: hosted
648 version: "1.19.0" 648 version: "1.19.0"
649 mime: 649 mime:
@@ -651,7 +651,7 @@ packages: @@ -651,7 +651,7 @@ packages:
651 description: 651 description:
652 name: mime 652 name: mime
653 sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" 653 sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6"
654 - url: "https://pub.flutter-io.cn" 654 + url: "https://pub.dev"
655 source: hosted 655 source: hosted
656 version: "2.0.0" 656 version: "2.0.0"
657 objective_c: 657 objective_c:
@@ -659,7 +659,7 @@ packages: @@ -659,7 +659,7 @@ packages:
659 description: 659 description:
660 name: objective_c 660 name: objective_c
661 sha256: ad56fd53a78ff6b1472fa59ff2a4e8b8ccabafc586fc263a1dfad0b99b5553e3 661 sha256: ad56fd53a78ff6b1472fa59ff2a4e8b8ccabafc586fc263a1dfad0b99b5553e3
662 - url: "https://pub.flutter-io.cn" 662 + url: "https://pub.dev"
663 source: hosted 663 source: hosted
664 version: "9.6.0" 664 version: "9.6.0"
665 octo_image: 665 octo_image:
@@ -667,7 +667,7 @@ packages: @@ -667,7 +667,7 @@ packages:
667 description: 667 description:
668 name: octo_image 668 name: octo_image
669 sha256: "34faa6639a78c7e3cbe79be6f9f96535867e879748ade7d17c9b1ae7536293bd" 669 sha256: "34faa6639a78c7e3cbe79be6f9f96535867e879748ade7d17c9b1ae7536293bd"
670 - url: "https://pub.flutter-io.cn" 670 + url: "https://pub.dev"
671 source: hosted 671 source: hosted
672 version: "2.1.0" 672 version: "2.1.0"
673 package_config: 673 package_config:
@@ -675,7 +675,7 @@ packages: @@ -675,7 +675,7 @@ packages:
675 description: 675 description:
676 name: package_config 676 name: package_config
677 sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc 677 sha256: f096c55ebb7deb7e384101542bfba8c52696c1b56fca2eb62827989ef2353bbc
678 - url: "https://pub.flutter-io.cn" 678 + url: "https://pub.dev"
679 source: hosted 679 source: hosted
680 version: "2.2.0" 680 version: "2.2.0"
681 path: 681 path:
@@ -683,7 +683,7 @@ packages: @@ -683,7 +683,7 @@ packages:
683 description: 683 description:
684 name: path 684 name: path
685 sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" 685 sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5"
686 - url: "https://pub.flutter-io.cn" 686 + url: "https://pub.dev"
687 source: hosted 687 source: hosted
688 version: "1.9.1" 688 version: "1.9.1"
689 path_provider: 689 path_provider:
@@ -691,7 +691,7 @@ packages: @@ -691,7 +691,7 @@ packages:
691 description: 691 description:
692 name: path_provider 692 name: path_provider
693 sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" 693 sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd"
694 - url: "https://pub.flutter-io.cn" 694 + url: "https://pub.dev"
695 source: hosted 695 source: hosted
696 version: "2.1.5" 696 version: "2.1.5"
697 path_provider_android: 697 path_provider_android:
@@ -699,7 +699,7 @@ packages: @@ -699,7 +699,7 @@ packages:
699 description: 699 description:
700 name: path_provider_android 700 name: path_provider_android
701 sha256: "69cbd515a62b94d32a7944f086b2f82b4ac40a1d45bebfc00813a430ab2dabcd" 701 sha256: "69cbd515a62b94d32a7944f086b2f82b4ac40a1d45bebfc00813a430ab2dabcd"
702 - url: "https://pub.flutter-io.cn" 702 + url: "https://pub.dev"
703 source: hosted 703 source: hosted
704 version: "2.3.1" 704 version: "2.3.1"
705 path_provider_foundation: 705 path_provider_foundation:
@@ -707,7 +707,7 @@ packages: @@ -707,7 +707,7 @@ packages:
707 description: 707 description:
708 name: path_provider_foundation 708 name: path_provider_foundation
709 sha256: "2a376b7d6392d80cd3705782d2caa734ca4727776db0b6ec36ef3f1855197699" 709 sha256: "2a376b7d6392d80cd3705782d2caa734ca4727776db0b6ec36ef3f1855197699"
710 - url: "https://pub.flutter-io.cn" 710 + url: "https://pub.dev"
711 source: hosted 711 source: hosted
712 version: "2.6.0" 712 version: "2.6.0"
713 path_provider_linux: 713 path_provider_linux:
@@ -715,7 +715,7 @@ packages: @@ -715,7 +715,7 @@ packages:
715 description: 715 description:
716 name: path_provider_linux 716 name: path_provider_linux
717 sha256: "58c2005f147315b11e9b4a7bc889cd5203e250cba8e3f012dae259b4972b5c16" 717 sha256: "58c2005f147315b11e9b4a7bc889cd5203e250cba8e3f012dae259b4972b5c16"
718 - url: "https://pub.flutter-io.cn" 718 + url: "https://pub.dev"
719 source: hosted 719 source: hosted
720 version: "2.2.2" 720 version: "2.2.2"
721 path_provider_platform_interface: 721 path_provider_platform_interface:
@@ -723,7 +723,7 @@ packages: @@ -723,7 +723,7 @@ packages:
723 description: 723 description:
724 name: path_provider_platform_interface 724 name: path_provider_platform_interface
725 sha256: "484838772624c3a4b94f1e44a3e19897fee738f2d5c4ce448443b0417f7c9dda" 725 sha256: "484838772624c3a4b94f1e44a3e19897fee738f2d5c4ce448443b0417f7c9dda"
726 - url: "https://pub.flutter-io.cn" 726 + url: "https://pub.dev"
727 source: hosted 727 source: hosted
728 version: "2.1.3" 728 version: "2.1.3"
729 path_provider_windows: 729 path_provider_windows:
@@ -731,7 +731,7 @@ packages: @@ -731,7 +731,7 @@ packages:
731 description: 731 description:
732 name: path_provider_windows 732 name: path_provider_windows
733 sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 733 sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7
734 - url: "https://pub.flutter-io.cn" 734 + url: "https://pub.dev"
735 source: hosted 735 source: hosted
736 version: "2.3.0" 736 version: "2.3.0"
737 permission_handler: 737 permission_handler:
@@ -739,7 +739,7 @@ packages: @@ -739,7 +739,7 @@ packages:
739 description: 739 description:
740 name: permission_handler 740 name: permission_handler
741 sha256: "59adad729136f01ea9e35a48f5d1395e25cba6cea552249ddbe9cf950f5d7849" 741 sha256: "59adad729136f01ea9e35a48f5d1395e25cba6cea552249ddbe9cf950f5d7849"
742 - url: "https://pub.flutter-io.cn" 742 + url: "https://pub.dev"
743 source: hosted 743 source: hosted
744 version: "11.4.0" 744 version: "11.4.0"
745 permission_handler_android: 745 permission_handler_android:
@@ -747,7 +747,7 @@ packages: @@ -747,7 +747,7 @@ packages:
747 description: 747 description:
748 name: permission_handler_android 748 name: permission_handler_android
749 sha256: d3971dcdd76182a0c198c096b5db2f0884b0d4196723d21a866fc4cdea057ebc 749 sha256: d3971dcdd76182a0c198c096b5db2f0884b0d4196723d21a866fc4cdea057ebc
750 - url: "https://pub.flutter-io.cn" 750 + url: "https://pub.dev"
751 source: hosted 751 source: hosted
752 version: "12.1.0" 752 version: "12.1.0"
753 permission_handler_apple: 753 permission_handler_apple:
@@ -755,7 +755,7 @@ packages: @@ -755,7 +755,7 @@ packages:
755 description: 755 description:
756 name: permission_handler_apple 756 name: permission_handler_apple
757 sha256: f49cb15a064ea9d974fc7fbb302099353b7b170d07284e86e264561579e5bcf8 757 sha256: f49cb15a064ea9d974fc7fbb302099353b7b170d07284e86e264561579e5bcf8
758 - url: "https://pub.flutter-io.cn" 758 + url: "https://pub.dev"
759 source: hosted 759 source: hosted
760 version: "9.6.1" 760 version: "9.6.1"
761 permission_handler_html: 761 permission_handler_html:
@@ -763,7 +763,7 @@ packages: @@ -763,7 +763,7 @@ packages:
763 description: 763 description:
764 name: permission_handler_html 764 name: permission_handler_html
765 sha256: "6ea98b3f17f60d3b527f2647ed2ab4dc0f6bfe25b22cb1c363f5d8f62252f6ac" 765 sha256: "6ea98b3f17f60d3b527f2647ed2ab4dc0f6bfe25b22cb1c363f5d8f62252f6ac"
766 - url: "https://pub.flutter-io.cn" 766 + url: "https://pub.dev"
767 source: hosted 767 source: hosted
768 version: "0.1.4+1" 768 version: "0.1.4+1"
769 permission_handler_ohos: 769 permission_handler_ohos:
@@ -780,7 +780,7 @@ packages: @@ -780,7 +780,7 @@ packages:
780 description: 780 description:
781 name: permission_handler_platform_interface 781 name: permission_handler_platform_interface
782 sha256: a5c8a97ecf5616112a5b16d4b8e9ec0e5ae90ef63ac69c0d7b8ae240be760b23 782 sha256: a5c8a97ecf5616112a5b16d4b8e9ec0e5ae90ef63ac69c0d7b8ae240be760b23
783 - url: "https://pub.flutter-io.cn" 783 + url: "https://pub.dev"
784 source: hosted 784 source: hosted
785 version: "4.4.0" 785 version: "4.4.0"
786 permission_handler_windows: 786 permission_handler_windows:
@@ -788,7 +788,7 @@ packages: @@ -788,7 +788,7 @@ packages:
788 description: 788 description:
789 name: permission_handler_windows 789 name: permission_handler_windows
790 sha256: caeae01858a0a7d2df67a445ac98e1ad95e55a0e77c73044f4e9b1c8c2289cbd 790 sha256: caeae01858a0a7d2df67a445ac98e1ad95e55a0e77c73044f4e9b1c8c2289cbd
791 - url: "https://pub.flutter-io.cn" 791 + url: "https://pub.dev"
792 source: hosted 792 source: hosted
793 version: "0.2.2" 793 version: "0.2.2"
794 pigeon: 794 pigeon:
@@ -805,7 +805,7 @@ packages: @@ -805,7 +805,7 @@ packages:
805 description: 805 description:
806 name: platform 806 name: platform
807 sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" 807 sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984"
808 - url: "https://pub.flutter-io.cn" 808 + url: "https://pub.dev"
809 source: hosted 809 source: hosted
810 version: "3.1.6" 810 version: "3.1.6"
811 plugin_platform_interface: 811 plugin_platform_interface:
@@ -813,7 +813,7 @@ packages: @@ -813,7 +813,7 @@ packages:
813 description: 813 description:
814 name: plugin_platform_interface 814 name: plugin_platform_interface
815 sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" 815 sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02"
816 - url: "https://pub.flutter-io.cn" 816 + url: "https://pub.dev"
817 source: hosted 817 source: hosted
818 version: "2.1.8" 818 version: "2.1.8"
819 pool: 819 pool:
@@ -821,7 +821,7 @@ packages: @@ -821,7 +821,7 @@ packages:
821 description: 821 description:
822 name: pool 822 name: pool
823 sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d" 823 sha256: "978783255c543aa3586a1b3c21f6e9d720eb315376a915872c61ef8b5c20177d"
824 - url: "https://pub.flutter-io.cn" 824 + url: "https://pub.dev"
825 source: hosted 825 source: hosted
826 version: "1.5.2" 826 version: "1.5.2"
827 posix: 827 posix:
@@ -829,7 +829,7 @@ packages: @@ -829,7 +829,7 @@ packages:
829 description: 829 description:
830 name: posix 830 name: posix
831 sha256: bc1bad54ad2b735816e31f8d4600cfde6c7839975085ddfbca48b6c9f7c4044e 831 sha256: bc1bad54ad2b735816e31f8d4600cfde6c7839975085ddfbca48b6c9f7c4044e
832 - url: "https://pub.flutter-io.cn" 832 + url: "https://pub.dev"
833 source: hosted 833 source: hosted
834 version: "6.5.2" 834 version: "6.5.2"
835 pretty_dio_logger: 835 pretty_dio_logger:
@@ -837,7 +837,7 @@ packages: @@ -837,7 +837,7 @@ packages:
837 description: 837 description:
838 name: pretty_dio_logger 838 name: pretty_dio_logger
839 sha256: "36f2101299786d567869493e2f5731de61ce130faa14679473b26905a92b6407" 839 sha256: "36f2101299786d567869493e2f5731de61ce130faa14679473b26905a92b6407"
840 - url: "https://pub.flutter-io.cn" 840 + url: "https://pub.dev"
841 source: hosted 841 source: hosted
842 version: "1.4.0" 842 version: "1.4.0"
843 pub_semver: 843 pub_semver:
@@ -845,7 +845,7 @@ packages: @@ -845,7 +845,7 @@ packages:
845 description: 845 description:
846 name: pub_semver 846 name: pub_semver
847 sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" 847 sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585"
848 - url: "https://pub.flutter-io.cn" 848 + url: "https://pub.dev"
849 source: hosted 849 source: hosted
850 version: "2.2.0" 850 version: "2.2.0"
851 pubspec_parse: 851 pubspec_parse:
@@ -853,7 +853,7 @@ packages: @@ -853,7 +853,7 @@ packages:
853 description: 853 description:
854 name: pubspec_parse 854 name: pubspec_parse
855 sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082" 855 sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082"
856 - url: "https://pub.flutter-io.cn" 856 + url: "https://pub.dev"
857 source: hosted 857 source: hosted
858 version: "1.5.0" 858 version: "1.5.0"
859 record_use: 859 record_use:
@@ -861,7 +861,7 @@ packages: @@ -861,7 +861,7 @@ packages:
861 description: 861 description:
862 name: record_use 862 name: record_use
863 sha256: "1cb8564af8d43b464294411db9217f5ec04891c6f22ee2c32d73ae05e88a6bd2" 863 sha256: "1cb8564af8d43b464294411db9217f5ec04891c6f22ee2c32d73ae05e88a6bd2"
864 - url: "https://pub.flutter-io.cn" 864 + url: "https://pub.dev"
865 source: hosted 865 source: hosted
866 version: "1.1.1" 866 version: "1.1.1"
867 rxdart: 867 rxdart:
@@ -869,7 +869,7 @@ packages: @@ -869,7 +869,7 @@ packages:
869 description: 869 description:
870 name: rxdart 870 name: rxdart
871 sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" 871 sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962"
872 - url: "https://pub.flutter-io.cn" 872 + url: "https://pub.dev"
873 source: hosted 873 source: hosted
874 version: "0.28.0" 874 version: "0.28.0"
875 share_plus: 875 share_plus:
@@ -904,7 +904,7 @@ packages: @@ -904,7 +904,7 @@ packages:
904 description: 904 description:
905 name: shared_preferences_android 905 name: shared_preferences_android
906 sha256: e8d4762b1e2e8578fc4d0fd548cebf24afd24f49719c08974df92834565e2c53 906 sha256: e8d4762b1e2e8578fc4d0fd548cebf24afd24f49719c08974df92834565e2c53
907 - url: "https://pub.flutter-io.cn" 907 + url: "https://pub.dev"
908 source: hosted 908 source: hosted
909 version: "2.4.23" 909 version: "2.4.23"
910 shared_preferences_foundation: 910 shared_preferences_foundation:
@@ -912,7 +912,7 @@ packages: @@ -912,7 +912,7 @@ packages:
912 description: 912 description:
913 name: shared_preferences_foundation 913 name: shared_preferences_foundation
914 sha256: "4e7eaffc2b17ba398759f1151415869a34771ba11ebbccd1b0145472a619a64f" 914 sha256: "4e7eaffc2b17ba398759f1151415869a34771ba11ebbccd1b0145472a619a64f"
915 - url: "https://pub.flutter-io.cn" 915 + url: "https://pub.dev"
916 source: hosted 916 source: hosted
917 version: "2.5.6" 917 version: "2.5.6"
918 shared_preferences_linux: 918 shared_preferences_linux:
@@ -920,7 +920,7 @@ packages: @@ -920,7 +920,7 @@ packages:
920 description: 920 description:
921 name: shared_preferences_linux 921 name: shared_preferences_linux
922 sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" 922 sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f"
923 - url: "https://pub.flutter-io.cn" 923 + url: "https://pub.dev"
924 source: hosted 924 source: hosted
925 version: "2.4.1" 925 version: "2.4.1"
926 shared_preferences_ohos: 926 shared_preferences_ohos:
@@ -937,7 +937,7 @@ packages: @@ -937,7 +937,7 @@ packages:
937 description: 937 description:
938 name: shared_preferences_platform_interface 938 name: shared_preferences_platform_interface
939 sha256: "649dc798a33931919ea356c4305c2d1f81619ea6e92244070b520187b5140ef9" 939 sha256: "649dc798a33931919ea356c4305c2d1f81619ea6e92244070b520187b5140ef9"
940 - url: "https://pub.flutter-io.cn" 940 + url: "https://pub.dev"
941 source: hosted 941 source: hosted
942 version: "2.4.2" 942 version: "2.4.2"
943 shared_preferences_web: 943 shared_preferences_web:
@@ -945,7 +945,7 @@ packages: @@ -945,7 +945,7 @@ packages:
945 description: 945 description:
946 name: shared_preferences_web 946 name: shared_preferences_web
947 sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019 947 sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019
948 - url: "https://pub.flutter-io.cn" 948 + url: "https://pub.dev"
949 source: hosted 949 source: hosted
950 version: "2.4.3" 950 version: "2.4.3"
951 shared_preferences_windows: 951 shared_preferences_windows:
@@ -953,7 +953,7 @@ packages: @@ -953,7 +953,7 @@ packages:
953 description: 953 description:
954 name: shared_preferences_windows 954 name: shared_preferences_windows
955 sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" 955 sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1"
956 - url: "https://pub.flutter-io.cn" 956 + url: "https://pub.dev"
957 source: hosted 957 source: hosted
958 version: "2.4.1" 958 version: "2.4.1"
959 shelf: 959 shelf:
@@ -961,7 +961,7 @@ packages: @@ -961,7 +961,7 @@ packages:
961 description: 961 description:
962 name: shelf 962 name: shelf
963 sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12 963 sha256: e7dd780a7ffb623c57850b33f43309312fc863fb6aa3d276a754bb299839ef12
964 - url: "https://pub.flutter-io.cn" 964 + url: "https://pub.dev"
965 source: hosted 965 source: hosted
966 version: "1.4.2" 966 version: "1.4.2"
967 shelf_web_socket: 967 shelf_web_socket:
@@ -969,7 +969,7 @@ packages: @@ -969,7 +969,7 @@ packages:
969 description: 969 description:
970 name: shelf_web_socket 970 name: shelf_web_socket
971 sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925" 971 sha256: "3632775c8e90d6c9712f883e633716432a27758216dfb61bd86a8321c0580925"
972 - url: "https://pub.flutter-io.cn" 972 + url: "https://pub.dev"
973 source: hosted 973 source: hosted
974 version: "3.0.0" 974 version: "3.0.0"
975 simple_gesture_detector: 975 simple_gesture_detector:
@@ -977,7 +977,7 @@ packages: @@ -977,7 +977,7 @@ packages:
977 description: 977 description:
978 name: simple_gesture_detector 978 name: simple_gesture_detector
979 sha256: ba2cd5af24ff20a0b8d609cec3f40e5b0744d2a71804a2616ae086b9c19d19a3 979 sha256: ba2cd5af24ff20a0b8d609cec3f40e5b0744d2a71804a2616ae086b9c19d19a3
980 - url: "https://pub.flutter-io.cn" 980 + url: "https://pub.dev"
981 source: hosted 981 source: hosted
982 version: "0.2.1" 982 version: "0.2.1"
983 sky_engine: 983 sky_engine:
@@ -990,7 +990,7 @@ packages: @@ -990,7 +990,7 @@ packages:
990 description: 990 description:
991 name: source_span 991 name: source_span
992 sha256: "56a02f1f4cd1a2d96303c0144c93bd6d909eea6bee6bf5a0e0b685edbd4c47ab" 992 sha256: "56a02f1f4cd1a2d96303c0144c93bd6d909eea6bee6bf5a0e0b685edbd4c47ab"
993 - url: "https://pub.flutter-io.cn" 993 + url: "https://pub.dev"
994 source: hosted 994 source: hosted
995 version: "1.10.2" 995 version: "1.10.2"
996 sqflite: 996 sqflite:
@@ -1007,7 +1007,7 @@ packages: @@ -1007,7 +1007,7 @@ packages:
1007 description: 1007 description:
1008 name: sqflite_android 1008 name: sqflite_android
1009 sha256: "881e28efdcc9950fd8e9bb42713dcf1103e62a2e7168f23c9338d82db13dec40" 1009 sha256: "881e28efdcc9950fd8e9bb42713dcf1103e62a2e7168f23c9338d82db13dec40"
1010 - url: "https://pub.flutter-io.cn" 1010 + url: "https://pub.dev"
1011 source: hosted 1011 source: hosted
1012 version: "2.4.2+3" 1012 version: "2.4.2+3"
1013 sqflite_common: 1013 sqflite_common:
@@ -1015,7 +1015,7 @@ packages: @@ -1015,7 +1015,7 @@ packages:
1015 description: 1015 description:
1016 name: sqflite_common 1016 name: sqflite_common
1017 sha256: "1581ffbf7a0e333b380d6a30737d78516b826cb35beb7fb0bf8a3ea0c678b465" 1017 sha256: "1581ffbf7a0e333b380d6a30737d78516b826cb35beb7fb0bf8a3ea0c678b465"
1018 - url: "https://pub.flutter-io.cn" 1018 + url: "https://pub.dev"
1019 source: hosted 1019 source: hosted
1020 version: "2.5.8" 1020 version: "2.5.8"
1021 sqflite_darwin: 1021 sqflite_darwin:
@@ -1023,7 +1023,7 @@ packages: @@ -1023,7 +1023,7 @@ packages:
1023 description: 1023 description:
1024 name: sqflite_darwin 1024 name: sqflite_darwin
1025 sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3" 1025 sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3"
1026 - url: "https://pub.flutter-io.cn" 1026 + url: "https://pub.dev"
1027 source: hosted 1027 source: hosted
1028 version: "2.4.2" 1028 version: "2.4.2"
1029 sqflite_ohos: 1029 sqflite_ohos:
@@ -1040,7 +1040,7 @@ packages: @@ -1040,7 +1040,7 @@ packages:
1040 description: 1040 description:
1041 name: sqflite_platform_interface 1041 name: sqflite_platform_interface
1042 sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920" 1042 sha256: "8dd4515c7bdcae0a785b0062859336de775e8c65db81ae33dd5445f35be61920"
1043 - url: "https://pub.flutter-io.cn" 1043 + url: "https://pub.dev"
1044 source: hosted 1044 source: hosted
1045 version: "2.4.0" 1045 version: "2.4.0"
1046 stack_trace: 1046 stack_trace:
@@ -1048,7 +1048,7 @@ packages: @@ -1048,7 +1048,7 @@ packages:
1048 description: 1048 description:
1049 name: stack_trace 1049 name: stack_trace
1050 sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" 1050 sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1"
1051 - url: "https://pub.flutter-io.cn" 1051 + url: "https://pub.dev"
1052 source: hosted 1052 source: hosted
1053 version: "1.12.1" 1053 version: "1.12.1"
1054 stream_channel: 1054 stream_channel:
@@ -1056,7 +1056,7 @@ packages: @@ -1056,7 +1056,7 @@ packages:
1056 description: 1056 description:
1057 name: stream_channel 1057 name: stream_channel
1058 sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" 1058 sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d"
1059 - url: "https://pub.flutter-io.cn" 1059 + url: "https://pub.dev"
1060 source: hosted 1060 source: hosted
1061 version: "2.1.4" 1061 version: "2.1.4"
1062 stream_transform: 1062 stream_transform:
@@ -1064,7 +1064,7 @@ packages: @@ -1064,7 +1064,7 @@ packages:
1064 description: 1064 description:
1065 name: stream_transform 1065 name: stream_transform
1066 sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871 1066 sha256: ad47125e588cfd37a9a7f86c7d6356dde8dfe89d071d293f80ca9e9273a33871
1067 - url: "https://pub.flutter-io.cn" 1067 + url: "https://pub.dev"
1068 source: hosted 1068 source: hosted
1069 version: "2.1.1" 1069 version: "2.1.1"
1070 string_scanner: 1070 string_scanner:
@@ -1072,7 +1072,7 @@ packages: @@ -1072,7 +1072,7 @@ packages:
1072 description: 1072 description:
1073 name: string_scanner 1073 name: string_scanner
1074 sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" 1074 sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43"
1075 - url: "https://pub.flutter-io.cn" 1075 + url: "https://pub.dev"
1076 source: hosted 1076 source: hosted
1077 version: "1.4.1" 1077 version: "1.4.1"
1078 synchronized: 1078 synchronized:
@@ -1080,7 +1080,7 @@ packages: @@ -1080,7 +1080,7 @@ packages:
1080 description: 1080 description:
1081 name: synchronized 1081 name: synchronized
1082 sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0 1082 sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0
1083 - url: "https://pub.flutter-io.cn" 1083 + url: "https://pub.dev"
1084 source: hosted 1084 source: hosted
1085 version: "3.4.0" 1085 version: "3.4.0"
1086 table_calendar: 1086 table_calendar:
@@ -1088,7 +1088,7 @@ packages: @@ -1088,7 +1088,7 @@ packages:
1088 description: 1088 description:
1089 name: table_calendar 1089 name: table_calendar
1090 sha256: f276347cad425ef837a41e8d9ad43f3ee7d59227aa4c36d7430607a5a18fa3b3 1090 sha256: f276347cad425ef837a41e8d9ad43f3ee7d59227aa4c36d7430607a5a18fa3b3
1091 - url: "https://pub.flutter-io.cn" 1091 + url: "https://pub.dev"
1092 source: hosted 1092 source: hosted
1093 version: "3.2.1" 1093 version: "3.2.1"
1094 term_glyph: 1094 term_glyph:
@@ -1096,7 +1096,7 @@ packages: @@ -1096,7 +1096,7 @@ packages:
1096 description: 1096 description:
1097 name: term_glyph 1097 name: term_glyph
1098 sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" 1098 sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e"
1099 - url: "https://pub.flutter-io.cn" 1099 + url: "https://pub.dev"
1100 source: hosted 1100 source: hosted
1101 version: "1.2.2" 1101 version: "1.2.2"
1102 test_api: 1102 test_api:
@@ -1104,7 +1104,7 @@ packages: @@ -1104,7 +1104,7 @@ packages:
1104 description: 1104 description:
1105 name: test_api 1105 name: test_api
1106 sha256: ab2726c1a94d3176a45960b6234466ec367179b87dd74f1611adb1f3b5fb9d55 1106 sha256: ab2726c1a94d3176a45960b6234466ec367179b87dd74f1611adb1f3b5fb9d55
1107 - url: "https://pub.flutter-io.cn" 1107 + url: "https://pub.dev"
1108 source: hosted 1108 source: hosted
1109 version: "0.7.7" 1109 version: "0.7.7"
1110 thinking_analytics: 1110 thinking_analytics:
@@ -1112,7 +1112,7 @@ packages: @@ -1112,7 +1112,7 @@ packages:
1112 description: 1112 description:
1113 name: thinking_analytics 1113 name: thinking_analytics
1114 sha256: b01cac0b5482e71c1d75c44c77d27f427662cc65a77b7bc3c8b49617d7a01e02 1114 sha256: b01cac0b5482e71c1d75c44c77d27f427662cc65a77b7bc3c8b49617d7a01e02
1115 - url: "https://pub.flutter-io.cn" 1115 + url: "https://pub.dev"
1116 source: hosted 1116 source: hosted
1117 version: "3.3.3" 1117 version: "3.3.3"
1118 typed_data: 1118 typed_data:
@@ -1120,7 +1120,7 @@ packages: @@ -1120,7 +1120,7 @@ packages:
1120 description: 1120 description:
1121 name: typed_data 1121 name: typed_data
1122 sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 1122 sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006
1123 - url: "https://pub.flutter-io.cn" 1123 + url: "https://pub.dev"
1124 source: hosted 1124 source: hosted
1125 version: "1.4.0" 1125 version: "1.4.0"
1126 url_launcher_linux: 1126 url_launcher_linux:
@@ -1128,7 +1128,7 @@ packages: @@ -1128,7 +1128,7 @@ packages:
1128 description: 1128 description:
1129 name: url_launcher_linux 1129 name: url_launcher_linux
1130 sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a 1130 sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a
1131 - url: "https://pub.flutter-io.cn" 1131 + url: "https://pub.dev"
1132 source: hosted 1132 source: hosted
1133 version: "3.2.2" 1133 version: "3.2.2"
1134 url_launcher_platform_interface: 1134 url_launcher_platform_interface:
@@ -1136,7 +1136,7 @@ packages: @@ -1136,7 +1136,7 @@ packages:
1136 description: 1136 description:
1137 name: url_launcher_platform_interface 1137 name: url_launcher_platform_interface
1138 sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" 1138 sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029"
1139 - url: "https://pub.flutter-io.cn" 1139 + url: "https://pub.dev"
1140 source: hosted 1140 source: hosted
1141 version: "2.3.2" 1141 version: "2.3.2"
1142 url_launcher_web: 1142 url_launcher_web:
@@ -1144,7 +1144,7 @@ packages: @@ -1144,7 +1144,7 @@ packages:
1144 description: 1144 description:
1145 name: url_launcher_web 1145 name: url_launcher_web
1146 sha256: "85c81589622fbc87c1c683aaea164d3604a7777495a79d91e39ffcdec39ddb34" 1146 sha256: "85c81589622fbc87c1c683aaea164d3604a7777495a79d91e39ffcdec39ddb34"
1147 - url: "https://pub.flutter-io.cn" 1147 + url: "https://pub.dev"
1148 source: hosted 1148 source: hosted
1149 version: "2.4.3" 1149 version: "2.4.3"
1150 url_launcher_windows: 1150 url_launcher_windows:
@@ -1152,7 +1152,7 @@ packages: @@ -1152,7 +1152,7 @@ packages:
1152 description: 1152 description:
1153 name: url_launcher_windows 1153 name: url_launcher_windows
1154 sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f" 1154 sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f"
1155 - url: "https://pub.flutter-io.cn" 1155 + url: "https://pub.dev"
1156 source: hosted 1156 source: hosted
1157 version: "3.1.5" 1157 version: "3.1.5"
1158 uuid: 1158 uuid:
@@ -1160,7 +1160,7 @@ packages: @@ -1160,7 +1160,7 @@ packages:
1160 description: 1160 description:
1161 name: uuid 1161 name: uuid
1162 sha256: "9b129329f58692f6e6578329498a8fe9fbe98f090beb764ffbb8ee2eadd01dcd" 1162 sha256: "9b129329f58692f6e6578329498a8fe9fbe98f090beb764ffbb8ee2eadd01dcd"
1163 - url: "https://pub.flutter-io.cn" 1163 + url: "https://pub.dev"
1164 source: hosted 1164 source: hosted
1165 version: "4.6.0" 1165 version: "4.6.0"
1166 vector_math: 1166 vector_math:
@@ -1168,7 +1168,7 @@ packages: @@ -1168,7 +1168,7 @@ packages:
1168 description: 1168 description:
1169 name: vector_math 1169 name: vector_math
1170 sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b 1170 sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b
1171 - url: "https://pub.flutter-io.cn" 1171 + url: "https://pub.dev"
1172 source: hosted 1172 source: hosted
1173 version: "2.2.0" 1173 version: "2.2.0"
1174 video_thumbnail: 1174 video_thumbnail:
@@ -1176,7 +1176,7 @@ packages: @@ -1176,7 +1176,7 @@ packages:
1176 description: 1176 description:
1177 name: video_thumbnail 1177 name: video_thumbnail
1178 sha256: "181a0c205b353918954a881f53a3441476b9e301641688a581e0c13f00dc588b" 1178 sha256: "181a0c205b353918954a881f53a3441476b9e301641688a581e0c13f00dc588b"
1179 - url: "https://pub.flutter-io.cn" 1179 + url: "https://pub.dev"
1180 source: hosted 1180 source: hosted
1181 version: "0.5.6" 1181 version: "0.5.6"
1182 vm_service: 1182 vm_service:
@@ -1184,7 +1184,7 @@ packages: @@ -1184,7 +1184,7 @@ packages:
1184 description: 1184 description:
1185 name: vm_service 1185 name: vm_service
1186 sha256: "5f37239c4851efcef929cea7824e76df7f2f0970aef85d66bbc430afa40e72f0" 1186 sha256: "5f37239c4851efcef929cea7824e76df7f2f0970aef85d66bbc430afa40e72f0"
1187 - url: "https://pub.flutter-io.cn" 1187 + url: "https://pub.dev"
1188 source: hosted 1188 source: hosted
1189 version: "15.3.0" 1189 version: "15.3.0"
1190 watcher: 1190 watcher:
@@ -1192,7 +1192,7 @@ packages: @@ -1192,7 +1192,7 @@ packages:
1192 description: 1192 description:
1193 name: watcher 1193 name: watcher
1194 sha256: "1398c9f081a753f9226febe8900fce8f7d0a67163334e1c94a2438339d79d635" 1194 sha256: "1398c9f081a753f9226febe8900fce8f7d0a67163334e1c94a2438339d79d635"
1195 - url: "https://pub.flutter-io.cn" 1195 + url: "https://pub.dev"
1196 source: hosted 1196 source: hosted
1197 version: "1.2.1" 1197 version: "1.2.1"
1198 web: 1198 web:
@@ -1200,7 +1200,7 @@ packages: @@ -1200,7 +1200,7 @@ packages:
1200 description: 1200 description:
1201 name: web 1201 name: web
1202 sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" 1202 sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a"
1203 - url: "https://pub.flutter-io.cn" 1203 + url: "https://pub.dev"
1204 source: hosted 1204 source: hosted
1205 version: "1.1.1" 1205 version: "1.1.1"
1206 web_socket: 1206 web_socket:
@@ -1208,7 +1208,7 @@ packages: @@ -1208,7 +1208,7 @@ packages:
1208 description: 1208 description:
1209 name: web_socket 1209 name: web_socket
1210 sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c" 1210 sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c"
1211 - url: "https://pub.flutter-io.cn" 1211 + url: "https://pub.dev"
1212 source: hosted 1212 source: hosted
1213 version: "1.0.1" 1213 version: "1.0.1"
1214 web_socket_channel: 1214 web_socket_channel:
@@ -1216,7 +1216,7 @@ packages: @@ -1216,7 +1216,7 @@ packages:
1216 description: 1216 description:
1217 name: web_socket_channel 1217 name: web_socket_channel
1218 sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8 1218 sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8
1219 - url: "https://pub.flutter-io.cn" 1219 + url: "https://pub.dev"
1220 source: hosted 1220 source: hosted
1221 version: "3.0.3" 1221 version: "3.0.3"
1222 webview_flutter: 1222 webview_flutter:
@@ -1269,7 +1269,7 @@ packages: @@ -1269,7 +1269,7 @@ packages:
1269 description: 1269 description:
1270 name: win32 1270 name: win32
1271 sha256: d7cb55e04cd34096cd3a79b3330245f54cb96a370a1c27adb3c84b917de8b08e 1271 sha256: d7cb55e04cd34096cd3a79b3330245f54cb96a370a1c27adb3c84b917de8b08e
1272 - url: "https://pub.flutter-io.cn" 1272 + url: "https://pub.dev"
1273 source: hosted 1273 source: hosted
1274 version: "5.15.0" 1274 version: "5.15.0"
1275 xdg_directories: 1275 xdg_directories:
@@ -1277,7 +1277,7 @@ packages: @@ -1277,7 +1277,7 @@ packages:
1277 description: 1277 description:
1278 name: xdg_directories 1278 name: xdg_directories
1279 sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" 1279 sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15"
1280 - url: "https://pub.flutter-io.cn" 1280 + url: "https://pub.dev"
1281 source: hosted 1281 source: hosted
1282 version: "1.1.0" 1282 version: "1.1.0"
1283 yaml: 1283 yaml:
@@ -1285,7 +1285,7 @@ packages: @@ -1285,7 +1285,7 @@ packages:
1285 description: 1285 description:
1286 name: yaml 1286 name: yaml
1287 sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce 1287 sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce
1288 - url: "https://pub.flutter-io.cn" 1288 + url: "https://pub.dev"
1289 source: hosted 1289 source: hosted
1290 version: "3.1.3" 1290 version: "3.1.3"
1291 sdks: 1291 sdks: