优化代码,增加引导

This commit is contained in:
yuanjunyao 2023-11-28 20:25:09 +08:00
parent f1c7279bfb
commit 2c3a07914c
15 changed files with 552 additions and 360 deletions

View File

@ -1,3 +1,9 @@
plugins {
id "com.android.application"
id "kotlin-android"
id "dev.flutter.flutter-gradle-plugin"
}
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
@ -24,9 +30,9 @@ apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
def keystorePropertiesFile = rootProject.file("app/key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
//def keystorePropertiesFile = rootProject.file("app/key.properties")
//def keystoreProperties = new Properties()
//keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
android {
compileSdkVersion flutter.compileSdkVersion
@ -58,10 +64,15 @@ android {
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
keyAlias signingConfigs.debug.keyAlias
keyPassword signingConfigs.debug.keyPassword
storeFile signingConfigs.debug.storeFile
storePassword signingConfigs.debug.storePassword
//
// keyAlias keystoreProperties['keyAlias']
// keyPassword keystoreProperties['keyPassword']
// storeFile file(keystoreProperties['storeFile'])
// storePassword keystoreProperties['storePassword']
}
}

View File

@ -1,5 +1,5 @@
buildscript {
ext.kotlin_version = '1.6.10'
ext.kotlin_version = '1.7.10'
repositories {
maven { url 'https://maven.aliyun.com/repository/public' }//jcenter
maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }//gradle-plugin
@ -11,7 +11,6 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:4.1.3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}

View File

@ -1,6 +1,6 @@
android.useAndroidX=true
android.enableJetifier=true
android.jetifier.blacklist=bcprov-jdk15on,bcprov-jdk18on
android.jetifier.ignorelist=bcprov-jdk15on,bcprov-jdk18on
# 提升编译速度配置 https://blog.csdn.net/weixin_33943347/article/details/91361727
org.gradle.daemon=true
@ -10,7 +10,6 @@ org.gradle.jvmargs=-Xmx1536M -XX:+UseParallelGC -XX:MaxPermSize=1024m -XX:+HeapD
# 开启gradle缓存
org.gradle.caching=true
android.enableBuildCache=true
#开启 kotlin 的增量和并行编译
kotlin.incremental=true

View File

@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-6.7-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip

View File

@ -1,11 +1,29 @@
include ':app'
pluginManagement {
def flutterSdkPath = {
def properties = new Properties()
file("local.properties").withInputStream { properties.load(it) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
return flutterSdkPath
}
settings.ext.flutterSdkPath = flutterSdkPath()
def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
def properties = new Properties()
includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")
assert localPropertiesFile.exists()
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
plugins {
id "dev.flutter.flutter-gradle-plugin" version "1.0.0" apply false
}
}
plugins {
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
id "com.android.application" version "7.3.0" apply false
}
include ":app"

View File

@ -1,6 +1,7 @@
// ignore_for_file: unnecessary_overrides
import 'dart:async';
import 'package:flutter/scheduler.dart';
import 'package:flutter_guid/flutter_guid.dart';
import 'package:dreampad/app/models/models.dart';
import 'package:dreampad/app/routes/app_pages.dart';
@ -18,8 +19,11 @@ import '../widgets/first_time_dialog.dart';
class HomeController extends GetxController {
final HomeProvider homeProvider;
HomeController({required this.homeProvider});
final explored = false.obs;
final explored2 = 0.obs;
final create = true.obs;
final prompt = false.obs;
final exploreCount = 0.obs;
@ -223,12 +227,34 @@ class HomeController extends GetxController {
Future leareKnowledge(KnowledgePoint knowledge) async {
selectKnowledge.value = knowledge;
chatMsgList.clear();
chatMsgList.add(ChatMsg(
id: Guid.newGuid.toString(),
knowledgeId: knowledge.id,
isBot: 1,
text: '探梦者,关于“${knowledge.title}”这个话题,你有什么想法或者疑问? 我们起交流吧!',
));
if (knowledge.title!.contains('科学')) {
var chatMsg = ChatMsg(
id: Guid.newGuid.toString(),
text: '''科学是一种了解我们周围世界的方式,它通过观察、实验和逻辑推理来探索自然界的奥秘。🔬
''',
isBot: 1,
knowledgeId: selectKnowledge.value!.id,
);
SchedulerBinding.instance.addPostFrameCallback((timeStamp) {
Future.delayed(const Duration(milliseconds: 300));
scrollController.jumpTo(scrollController.position.maxScrollExtent);
});
chatMsgList.add(chatMsg);
} else {
chatMsgList.add(ChatMsg(
id: Guid.newGuid.toString(),
knowledgeId: knowledge.id,
isBot: 1,
text: '探梦者,关于“${knowledge.title}”这个话题,你有什么想法或者疑问? 我们起交流吧!',
));
}
await Get.toNamed(Routes.HOME + Routes.EXPLORE_STUDY);
}
@ -241,6 +267,36 @@ class HomeController extends GetxController {
);
chatMsgList.add(chatMsg);
if (selectKnowledge.value?.title?.contains('科学') ?? false) {
chatMsg = ChatMsg(
id: Guid.newGuid.toString(),
text: '''1. 做实验:
2.
3.
4.
5.
''',
isBot: 0,
knowledgeId: selectKnowledge.value!.id,
);
chatMsgList.add(chatMsg);
}
SchedulerBinding.instance.addPostFrameCallback((timeStamp) {
Future.delayed(const Duration(milliseconds: 300));
scrollController.jumpTo(scrollController.position.maxScrollExtent);
});
var knowledge =
knowledgePoints.firstWhere((t) => t.id == selectKnowledge.value!.id);
knowledge.leared = true;

View File

@ -1,6 +1,8 @@
import 'package:dreampad/app/modules/home/models/chat_msg_model.dart';
import 'package:dreampad/app/shared/shared.dart';
import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
@ -100,10 +102,27 @@ class ExploreStudyView extends GetView<HomeController> {
child: buildMsgList(context),
),
),
ChatInputWidget(
onPressed: (txt) {
controller.addSendMsg(txt);
},
HookBuilder(
builder: (context) {
final textController = useTextEditingController();
useMemoized(() async {
if (controller.selectKnowledge.value?.title?.contains('科学') ?? false) {
const guide = '科学跟其他学科有什么区别呢';
for (int i = 0; i < guide.length + 1; i++) {
textController.text = guide.substring(0, i);
await Future.delayed(const Duration(milliseconds: 80));
}
}
SchedulerBinding.instance.addPostFrameCallback((timeStamp) {
});
});
return ChatInputWidget(
controller: textController,
onPressed: (txt) {
controller.addSendMsg(txt);
},
);
}
),
],
);

View File

@ -2,6 +2,7 @@ import 'package:dreampad/app/models/models.dart';
import 'package:dreampad/app/routes/app_pages.dart';
import 'package:dreampad/app/shared/shared.dart';
import 'package:flutter/material.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
import 'package:get/get.dart';
@ -14,6 +15,7 @@ import '../widgets/user_widget.dart';
class HomeView extends GetView<HomeController> {
const HomeView({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MaterialApp(
@ -155,7 +157,7 @@ class HomeView extends GetView<HomeController> {
Widget goalWidget() {
return Stack(
children: [
controller.explored.value
controller.explored2.value >= 4
? Positioned(
left: 15.w,
top: 20.h,
@ -167,7 +169,7 @@ class HomeView extends GetView<HomeController> {
),
)
: Container(),
controller.explored.value
controller.explored2.value >= 3
? Positioned(
left: 352.w,
top: 0.0,
@ -179,7 +181,7 @@ class HomeView extends GetView<HomeController> {
),
)
: Container(),
controller.explored.value
controller.explored2.value >= 2
? Positioned(
left: 363.w,
top: 180.h,
@ -320,65 +322,67 @@ class HomeView extends GetView<HomeController> {
}
Widget secondGoalWidget() {
return Stack(
children: [
Positioned(
left: 43.w,
top: 66.h,
child: GestureDetector(
behavior: HitTestBehavior.opaque,
onTap: () {
showGoalDialog(controller.getGoal(1));
},
child: Text(
'今年目标',
style: TextStyles.boldWhiteShadow18_111,
return _ShowUp(
child: Stack(
children: [
Positioned(
left: 43.w,
top: 66.h,
child: GestureDetector(
behavior: HitTestBehavior.opaque,
onTap: () {
showGoalDialog(controller.getGoal(1));
},
child: Text(
'今年目标',
style: TextStyles.boldWhiteShadow18_111,
),
),
),
),
Positioned(
right: 34.w,
top: 40.h,
child: Container(
height: 36.h,
width: 56.w,
color: Colors.transparent,
child: Text(
'课外阅读提升',
textAlign: TextAlign.center,
style: TextStyles.boldWhiteShadow14_111,
Positioned(
right: 34.w,
top: 40.h,
child: Container(
height: 36.h,
width: 56.w,
color: Colors.transparent,
child: Text(
'课外阅读提升',
textAlign: TextAlign.center,
style: TextStyles.boldWhiteShadow14_111,
),
),
),
),
Positioned(
right: 38.w,
top: 93.h,
child: Container(
height: 36.h,
width: 56.w,
color: Colors.transparent,
child: Text(
'科学兴趣培养',
textAlign: TextAlign.center,
style: TextStyles.boldWhiteShadow14_111,
Positioned(
right: 38.w,
top: 93.h,
child: Container(
height: 36.h,
width: 56.w,
color: Colors.transparent,
child: Text(
'科学兴趣培养',
textAlign: TextAlign.center,
style: TextStyles.boldWhiteShadow14_111,
),
),
),
),
Positioned(
left: 92.w,
top: 120.h,
child: Container(
height: 36.h,
width: 56.w,
color: Colors.transparent,
child: Text(
'基础教学能力',
textAlign: TextAlign.center,
style: TextStyles.boldWhiteShadow14_111,
Positioned(
left: 92.w,
top: 120.h,
child: Container(
height: 36.h,
width: 56.w,
color: Colors.transparent,
child: Text(
'基础教学能力',
textAlign: TextAlign.center,
style: TextStyles.boldWhiteShadow14_111,
),
),
),
),
],
],
),
);
}
@ -401,129 +405,145 @@ class HomeView extends GetView<HomeController> {
}
Widget treeWidget() {
return Stack(
children: [
Positioned(
left: 218.w,
top: 244.h,
child: GestureDetector(
onTap: () async {
await Get.toNamed(Routes.HOME + Routes.EXPLORE);
return GestureDetector(
behavior: HitTestBehavior.translucent,
onTap: controller.explored2.value >= 4
? null
: () {
controller.explored2.value = controller.explored2.value + 1;
},
child: Container(
width: 210.w,
height: 216.h,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeShine,
fit: BoxFit.fill,
child: Stack(
children: [
Positioned(
left: 218.w,
top: 244.h,
child: GestureDetector(
onTap: controller.explored2.value >= 4
? () async {
await Get.toNamed(Routes.HOME + Routes.EXPLORE);
}
: null,
child: Container(
width: 210.w,
height: 216.h,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeShine,
fit: BoxFit.fill,
),
),
),
child: Center(
child: Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text(
'梦想',
style: TextStyles.boldWhiteShadow22_012,
),
Text(
'探索',
style: TextStyles.boldWhiteShadow22_012,
)
],
child: Center(
child: Column(
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Text(
'梦想',
style: TextStyles.boldWhiteShadow22_012,
),
Text(
'探索',
style: TextStyles.boldWhiteShadow22_012,
)
],
),
),
),
),
),
),
controller.explored.value
? Positioned(
left: 15.w,
top: 20.h,
child: Container(
height: 311.h,
width: 230.w,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeFourthLeaf,
fit: BoxFit.fill,
controller.explored2.value >= 4
? Positioned(
left: 15.w,
top: 20.h,
child: _ShowUp(
child: Container(
height: 311.h,
width: 230.w,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeFourthLeaf,
fit: BoxFit.fill,
),
),
),
),
),
)
: Container(),
controller.explored.value
? Positioned(
left: 352.w,
top: 0.0,
child: Container(
height: 221.h,
width: 281.w,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeThirdLeaf,
fit: BoxFit.fill,
)
: Container(),
controller.explored2.value >= 3
? Positioned(
left: 352.w,
top: 0.0,
child: _ShowUp(
child: Container(
height: 221.h,
width: 281.w,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeThirdLeaf,
fit: BoxFit.fill,
),
),
),
),
),
)
: Container(),
controller.explored.value
? Positioned(
left: 363.w,
top: 180.h,
child: Container(
height: 240.h,
width: 240.w,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeSecondLeaf,
fit: BoxFit.fill,
)
: Container(),
controller.explored2.value >= 2
? Positioned(
left: 363.w,
top: 180.h,
child: _ShowUp(
child: Container(
height: 240.h,
width: 240.w,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeSecondLeaf,
fit: BoxFit.fill,
),
),
),
),
),
)
: Container(),
controller.prompt.value ? Container() : firstLeafWidget(),
Positioned(
left: 168.w,
top: 244.h,
child: Images.homeIp,
),
Positioned(
left: 135.w,
bottom: 10.h,
child: GestureDetector(
onTap: () {},
child: controller.explored.value
? Images.homePicturebook
: Images.homePicturebookGrey,
)
: Container(),
controller.explored2.value >= 1 ? firstLeafWidget() : Container(),
Positioned(
left: 168.w,
top: 244.h,
child: Images.homeIp,
),
),
Positioned(
left: 316.w,
bottom: 10.h,
child: GestureDetector(
onTap: () {},
child: controller.explored.value
? Images.homeProgramme
: Images.homeProgrammeGrey,
Positioned(
left: 135.w,
bottom: 10.h,
child: GestureDetector(
onTap: () {},
child: controller.explored.value
? Images.homePicturebook
: Images.homePicturebookGrey,
),
),
),
Positioned(
right: 79.w,
bottom: 10.h,
child: GestureDetector(
onTap: () {},
child: controller.explored.value
? Images.homeMusic
: Images.homeMusicGrey,
Positioned(
left: 316.w,
bottom: 10.h,
child: GestureDetector(
onTap: () {},
child: controller.explored.value
? Images.homeProgramme
: Images.homeProgrammeGrey,
),
),
),
],
Positioned(
right: 79.w,
bottom: 10.h,
child: GestureDetector(
onTap: () {},
child: controller.explored.value
? Images.homeMusic
: Images.homeMusicGrey,
),
),
],
),
);
}
@ -543,26 +563,28 @@ class HomeView extends GetView<HomeController> {
return Positioned(
right: 68.w,
top: 326.h,
child: Container(
height: 60.h,
width: 171.w,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeFirstLeaf,
fit: BoxFit.fill,
),
),
child: Stack(
children: [
Positioned(
left: 23.w,
top: 26.h,
child: Text(
'本月已点亮${controller.exploreCount.value}个知识点',
style: TextStyles.mediumWhiteShadow12_111,
),
child: _ShowUp(
child: Container(
height: 60.h,
width: 171.w,
decoration: const BoxDecoration(
image: DecorationImage(
image: Images.homeFirstLeaf,
fit: BoxFit.fill,
),
],
),
child: Stack(
children: [
Positioned(
left: 23.w,
top: 26.h,
child: Text(
'本月已点亮${controller.exploreCount.value}个知识点',
style: TextStyles.mediumWhiteShadow12_111,
),
),
],
),
),
),
);
@ -623,3 +645,28 @@ class HomeView extends GetView<HomeController> {
);
}
}
class _ShowUp extends HookWidget {
const _ShowUp({
super.key,
required this.child,
});
final Widget child;
@override
Widget build(BuildContext context) {
final controller =
useAnimationController(duration: const Duration(milliseconds: 300));
useMemoized(() {
controller.forward();
});
return FadeTransition(
opacity: CurvedAnimation(
curve: Curves.easeIn,
parent: controller
),
child: child,
);
}
}

View File

@ -4,17 +4,23 @@ import 'package:flutter/services.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
class ChatInputWidget extends StatefulWidget {
const ChatInputWidget({this.onPressed, super.key});
const ChatInputWidget({
this.onPressed,
super.key,
required this.controller,
});
final Function(String)? onPressed;
final TextEditingController controller;
@override
// ignore: library_private_types_in_public_api
_ChatInputWidgetState createState() => _ChatInputWidgetState();
}
class _ChatInputWidgetState extends State<ChatInputWidget> {
final TextEditingController _controller = TextEditingController();
late final TextEditingController _controller = widget.controller;
final FocusNode _focus = FocusNode();
late bool clickable = false;

View File

@ -11,6 +11,7 @@ class QuestionController extends GetxController {
final ipLeft = 149.obs;
final ipTop = 42.obs;
final question = ''.obs;
final guide = ''.obs;
final btnTxt = ''.obs;
final allAnswer = false.obs;
final showQuestionDialog = false.obs;
@ -31,6 +32,7 @@ class QuestionController extends GetxController {
question: '你平常最喜欢的事情是什么?做什么事最能让你开心?',
display: false,
answer: '',
guide: '我平常喜欢滑板,因为喜欢速度和挑战',
).obs);
questionAnswers.add(QuestionAnswer(
index: 2,
@ -39,6 +41,7 @@ class QuestionController extends GetxController {
question: '你的偶像是谁你最喜欢TA的哪些地方',
display: false,
answer: '',
guide: '我的偶像时IU',
).obs);
questionAnswers.add(QuestionAnswer(
index: 3,
@ -47,6 +50,7 @@ class QuestionController extends GetxController {
question: '你想变成电影、动画、故事中的哪个角色?原因是什么?',
display: false,
answer: '',
guide: '我想变成某某电影里的某某,因为电影',
).obs);
}
@ -74,6 +78,7 @@ class QuestionController extends GetxController {
}
step.value = questionAnswer.value.index!;
question.value = questionAnswer.value.question!;
guide.value = questionAnswer.value.guide;
allAnswer.value = false;
hasQuestion = true;
break;

View File

@ -5,6 +5,7 @@ class QuestionAnswer {
String? question;
String? answer;
bool? display;
String guide;
QuestionAnswer({
this.index,
@ -13,5 +14,6 @@ class QuestionAnswer {
this.question,
this.answer,
this.display,
this.guide = '',
});
}

View File

@ -1,5 +1,6 @@
import 'package:dreampad/app/shared/shared.dart';
import 'package:flutter/material.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
import 'package:get/get.dart';
@ -167,9 +168,21 @@ class QuestionView extends GetView<QuestionController> {
},
maskColor: const Color(0xFF080F3D).withOpacity(0.8),
builder: (_) {
return QuestionDialog(
question: controller.question.value,
controller: controller.textController,
return HookBuilder(
builder: (context) {
useMemoized(() async {
final guide = controller.guide.value;
for (int i = 0; i < guide.length + 1; i++) {
controller.textController.text = guide.substring(0, i);
await Future.delayed(const Duration(milliseconds: 80));
}
});
return QuestionDialog(
question: controller.question.value,
controller: controller.textController,
);
}
);
},
);

View File

@ -13,7 +13,7 @@ import sqflite
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin"))
FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin"))
FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin"))
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin"))

View File

@ -6,7 +6,7 @@ packages:
description:
name: animated_text_kit
sha256: "37392a5376c9a1a503b02463c38bc0342ef814ddbb8f9977bc90f2a84b22fa92"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "4.2.2"
app_installer:
@ -14,7 +14,7 @@ packages:
description:
name: app_installer
sha256: e125a0c44666b6f1c2e96b48347e798e127654b5eb5281b005ccf0f3a320d621
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.0"
async:
@ -22,7 +22,7 @@ packages:
description:
name: async
sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.11.0"
boolean_selector:
@ -30,7 +30,7 @@ packages:
description:
name: boolean_selector
sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.1"
bubble_box:
@ -38,7 +38,7 @@ packages:
description:
name: bubble_box
sha256: "6194c3471291ff2f2e765bb50fdc72a2322a36bb47a04663c03e2c94f3551132"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.5.3"
cached_network_image:
@ -46,7 +46,7 @@ packages:
description:
name: cached_network_image
sha256: f98972704692ba679db144261172a8e20feb145636c617af0eb4022132a6797f
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.3.0"
cached_network_image_platform_interface:
@ -54,7 +54,7 @@ packages:
description:
name: cached_network_image_platform_interface
sha256: "56aa42a7a01e3c9db8456d9f3f999931f1e05535b5a424271e9a38cabf066613"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.0.0"
cached_network_image_web:
@ -62,7 +62,7 @@ packages:
description:
name: cached_network_image_web
sha256: "759b9a9f8f6ccbb66c185df805fac107f05730b1dab9c64626d1008cca532257"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.0"
characters:
@ -70,7 +70,7 @@ packages:
description:
name: characters
sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.3.0"
clock:
@ -78,23 +78,23 @@ packages:
description:
name: clock
sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.1"
collection:
dependency: transitive
description:
name: collection
sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.17.2"
version: "1.18.0"
common_utils:
dependency: "direct main"
description:
name: common_utils
sha256: c26884339b13ff99b0739e56f4b02090c84054ed9dd3a045435cd24e7b99c2c1
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.0"
convert:
@ -102,7 +102,7 @@ packages:
description:
name: convert
sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.1.1"
crypto:
@ -110,7 +110,7 @@ packages:
description:
name: crypto
sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.0.3"
cupertino_icons:
@ -118,7 +118,7 @@ packages:
description:
name: cupertino_icons
sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.6"
decimal:
@ -126,47 +126,47 @@ packages:
description:
name: decimal
sha256: "24a261d5d5c87e86c7651c417a5dbdf8bcd7080dd592533910e8d0505a279f21"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.3.3"
device_info_plus:
dependency: "direct main"
description:
name: device_info_plus
sha256: "1d6e5a61674ba3a68fb048a7c7b4ff4bebfed8d7379dbe8f2b718231be9a7c95"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "0042cb3b2a76413ea5f8a2b40cec2a33e01d0c937e91f0f7c211fde4f7739ba6"
url: "https://pub.flutter-io.cn"
source: hosted
version: "8.1.0"
version: "9.1.1"
device_info_plus_platform_interface:
dependency: transitive
description:
name: device_info_plus_platform_interface
sha256: d3b01d5868b50ae571cd1dc6e502fc94d956b665756180f7b16ead09e836fd64
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "7.0.0"
dio:
dependency: "direct main"
description:
name: dio
sha256: "417e2a6f9d83ab396ec38ff4ea5da6c254da71e4db765ad737a42af6930140b7"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "01870acd87986f768e0c09cc4d7a19a59d814af7b34cbeb0b437d2c33bdfea4c"
url: "https://pub.flutter-io.cn"
source: hosted
version: "5.3.3"
version: "5.3.4"
easy_refresh:
dependency: "direct main"
description:
name: easy_refresh
sha256: "77b025ea49f27b5ebc5eef40a6678be52564c293bd97ce91a4088d6646478329"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: a3b33b60a97e4931c3923e8b80e2f2869a080001c8742213d484c37db0d15164
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.3.2+1"
version: "3.3.2+4"
fake_async:
dependency: transitive
description:
name: fake_async
sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.3.1"
ffi:
@ -174,23 +174,23 @@ packages:
description:
name: ffi
sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.0"
file:
dependency: transitive
description:
name: file
sha256: "1b92bec4fc2a72f59a8e15af5f52cd441e4a7860b49499d69dfa817af20e925d"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c"
url: "https://pub.flutter-io.cn"
source: hosted
version: "6.1.4"
version: "7.0.0"
flustars_flutter3:
dependency: "direct main"
description:
name: flustars_flutter3
sha256: d4f412eeb97e648dfe5cf888aa9066f6c1b1f133ff72dca264c0d23a906e3dab
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.0.0"
flutter:
@ -203,7 +203,7 @@ packages:
description:
name: flutter_cache_manager
sha256: "8207f27539deb83732fdda03e259349046a39a4c767269285f449ade355d54ba"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.3.1"
flutter_guid:
@ -211,17 +211,25 @@ packages:
description:
name: flutter_guid
sha256: "5d9d82bedf77ab5a626f3e3fd505f59db574169f432570c8b006e7c4533b734c"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.3.1"
flutter_hooks:
dependency: "direct main"
description:
name: flutter_hooks
sha256: "7c8db779c2d1010aa7f9ea3fbefe8f86524fcb87b69e8b0af31e1a4b55422dec"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.20.3"
flutter_lints:
dependency: "direct dev"
description:
name: flutter_lints
sha256: a25a15ebbdfc33ab1cd26c63a6ee519df92338a9c10f122adda92938253bef04
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: e2a421b7e59244faef694ba7b30562e489c2b489866e505074eb005cd7060db7
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.0.3"
version: "3.0.1"
flutter_localizations:
dependency: "direct main"
description: flutter
@ -232,17 +240,17 @@ packages:
description:
name: flutter_screenutil
sha256: "8cf100b8e4973dc570b6415a2090b0bfaa8756ad333db46939efc3e774ee100d"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "5.9.0"
flutter_smart_dialog:
dependency: "direct main"
description:
name: flutter_smart_dialog
sha256: "8ffa51d55591227dbfe9fc2b1ff396b37bec7d09c241d875b9b932db99d2d5ea"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: a666d56e3348aae0a85cf3d19c1b5b18799f39e0568023f991aacd83d5d7c441
url: "https://pub.flutter-io.cn"
source: hosted
version: "4.9.4"
version: "4.9.5+1"
flutter_test:
dependency: "direct dev"
description: flutter
@ -258,23 +266,23 @@ packages:
description:
name: get
sha256: e4e7335ede17452b391ed3b2ede016545706c01a02292a6c97619705e7d2a85e
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "4.6.6"
http:
dependency: transitive
description:
name: http
sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: d4872660c46d929f6b8a9ef4e7a7eff7e49bbf0c4ec3f385ee32df5119175139
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.13.6"
version: "1.1.2"
http_parser:
dependency: transitive
description:
name: http_parser
sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "4.0.2"
intl:
@ -282,7 +290,7 @@ packages:
description:
name: intl
sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.18.1"
keyboard_actions:
@ -290,23 +298,23 @@ packages:
description:
name: keyboard_actions
sha256: "31e0ab2a706ac8f58887efa60efc1f19aecdf37d8ab0f665a0f156d1fbeab650"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "4.2.0"
lints:
dependency: transitive
description:
name: lints
sha256: "0a217c6c989d21039f1498c3ed9f3ed71b354e69873f13a8dfc3c9fe76f1b452"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: cbf8d4b858bb0134ef3ef87841abdf8d63bfc255c266b7bf6b39daa1085c4290
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.1"
version: "3.0.0"
matcher:
dependency: transitive
description:
name: matcher
sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.12.16"
material_color_utilities:
@ -314,39 +322,39 @@ packages:
description:
name: material_color_utilities
sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.5.0"
meta:
dependency: transitive
description:
name: meta
sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.9.1"
version: "1.10.0"
octo_image:
dependency: transitive
description:
name: octo_image
sha256: "45b40f99622f11901238e18d48f5f12ea36426d8eced9f4cbf58479c7aa2430d"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.0.0"
package_info_plus:
dependency: "direct main"
description:
name: package_info_plus
sha256: cbff87676c352d97116af6dbea05aa28c4d65eb0f6d5677a520c11a69ca9a24d
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "88bc797f44a94814f2213db1c9bd5badebafdfb8290ca9f78d4b9ee2a3db4d79"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.1.0"
version: "5.0.1"
package_info_plus_platform_interface:
dependency: transitive
description:
name: package_info_plus_platform_interface
sha256: "9bc8ba46813a4cc42c66ab781470711781940780fd8beddd0c3da62506d3a6c6"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.0.1"
path:
@ -354,7 +362,7 @@ packages:
description:
name: path
sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.8.3"
path_drawing:
@ -362,7 +370,7 @@ packages:
description:
name: path_drawing
sha256: bbb1934c0cbb03091af082a6389ca2080345291ef07a5fa6d6e078ba8682f977
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.1"
path_parsing:
@ -370,7 +378,7 @@ packages:
description:
name: path_parsing
sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.1"
path_provider:
@ -378,23 +386,23 @@ packages:
description:
name: path_provider
sha256: a1aa8aaa2542a6bc57e381f132af822420216c80d4781f7aa085ca3229208aaa
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.1"
path_provider_android:
dependency: transitive
description:
name: path_provider_android
sha256: "6b8b19bd80da4f11ce91b2d1fb931f3006911477cec227cce23d3253d80df3f1"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: e595b98692943b4881b219f0a9e3945118d3c16bd7e2813f98ec6e532d905f72
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.0"
version: "2.2.1"
path_provider_foundation:
dependency: transitive
description:
name: path_provider_foundation
sha256: "19314d595120f82aca0ba62787d58dde2cc6b5df7d2f0daf72489e38d1b57f2d"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.3.1"
path_provider_linux:
@ -402,7 +410,7 @@ packages:
description:
name: path_provider_linux
sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.1"
path_provider_platform_interface:
@ -410,7 +418,7 @@ packages:
description:
name: path_provider_platform_interface
sha256: "94b1e0dd80970c1ce43d5d4e050a9918fce4f4a775e6142424c30a29a363265c"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.1"
path_provider_windows:
@ -418,31 +426,31 @@ packages:
description:
name: path_provider_windows
sha256: "8bc9f22eee8690981c22aa7fc602f5c85b497a6fb2ceb35ee5a5e5ed85ad8170"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.1"
platform:
dependency: transitive
description:
name: platform
sha256: ae68c7bfcd7383af3629daafb32fb4e8681c7154428da4febcff06200585f102
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.1.2"
version: "3.1.3"
plugin_platform_interface:
dependency: transitive
description:
name: plugin_platform_interface
sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: f4f88d4a900933e7267e2b353594774fc0d07fb072b47eedcd5b54e1ea3269f8
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.6"
version: "2.1.7"
qiniu_flutter_sdk:
dependency: "direct main"
description:
name: qiniu_flutter_sdk
sha256: ee6edab2fc18ddf11af91fe767d04fd5435af2e693e65f7b00a10c2026f1011a
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.5.0"
qiniu_sdk_base:
@ -450,7 +458,7 @@ packages:
description:
name: qiniu_sdk_base
sha256: "256eaa6920489d12c534093e61d12232b6252355edc3ef179041bcc0a8746336"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.5.0"
rational:
@ -458,7 +466,7 @@ packages:
description:
name: rational
sha256: ba58e9e18df9abde280e8b10051e4bce85091e41e8e7e411b6cde2e738d357cf
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.2"
rxdart:
@ -466,7 +474,7 @@ packages:
description:
name: rxdart
sha256: "0c7c0cedd93788d996e33041ffecda924cc54389199cde4e6a34b440f50044cb"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.27.7"
scroll_date_picker:
@ -474,31 +482,31 @@ packages:
description:
name: scroll_date_picker
sha256: "99f8caf3f1b6a77ba60a2973c2f9061bcf3b3c4c5049f19ec7271ee5d34387c7"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.7.3"
scrollview_observer:
dependency: "direct main"
description:
name: scrollview_observer
sha256: "5b687ebee76a24f3670891d70256911df8d0f84d2654e198ddf74ad2d9347ab8"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "72b806ea64d446efffac1000c0e0c0b03b06ce019b0fcc7d24d3b1f86e93fb0d"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.16.5"
version: "1.18.2"
shared_preferences:
dependency: transitive
description:
name: shared_preferences
sha256: b7f41bad7e521d205998772545de63ff4e6c97714775902c199353f8bf1511ac
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "81429e4481e1ccfb51ede496e916348668fd0921627779233bd24cc3ff6abd02"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.1"
version: "2.2.2"
shared_preferences_android:
dependency: transitive
description:
name: shared_preferences_android
sha256: "8568a389334b6e83415b6aae55378e158fbc2314e074983362d20c562780fb06"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.1"
shared_preferences_foundation:
@ -506,41 +514,41 @@ packages:
description:
name: shared_preferences_foundation
sha256: "7bf53a9f2d007329ee6f3df7268fd498f8373602f943c975598bbb34649b62a7"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.3.4"
shared_preferences_linux:
dependency: transitive
description:
name: shared_preferences_linux
sha256: c2eb5bf57a2fe9ad6988121609e47d3e07bb3bdca5b6f8444e4cf302428a128a
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "9f2cbcf46d4270ea8be39fa156d86379077c8a5228d9dfdb1164ae0bb93f1faa"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.3.1"
version: "2.3.2"
shared_preferences_platform_interface:
dependency: transitive
description:
name: shared_preferences_platform_interface
sha256: d4ec5fc9ebb2f2e056c617112aa75dcf92fc2e4faaf2ae999caa297473f75d8a
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.3.1"
shared_preferences_web:
dependency: transitive
description:
name: shared_preferences_web
sha256: d762709c2bbe80626ecc819143013cc820fa49ca5e363620ee20a8b15a3e3daf
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "7b15ffb9387ea3e237bb7a66b8a23d2147663d391cafc5c8f37b2e7b4bde5d21"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.2.1"
version: "2.2.2"
shared_preferences_windows:
dependency: transitive
description:
name: shared_preferences_windows
sha256: f763a101313bd3be87edffe0560037500967de9c394a714cd598d945517f694f
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "841ad54f3c8381c480d0c9b508b89a34036f512482c407e6df7a9c4aa2ef8f59"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.3.1"
version: "2.3.2"
sky_engine:
dependency: transitive
description: flutter
@ -551,7 +559,7 @@ packages:
description:
name: source_span
sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.10.0"
sp_util:
@ -559,7 +567,7 @@ packages:
description:
name: sp_util
sha256: "9da43dce5de79c17a787d0626bf01538d63090ca32521200d22a232171c495dc"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.0.3"
sqflite:
@ -567,39 +575,39 @@ packages:
description:
name: sqflite
sha256: "591f1602816e9c31377d5f008c2d9ef7b8aca8941c3f89cc5fd9d84da0c38a9a"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.3.0"
sqflite_common:
dependency: transitive
description:
name: sqflite_common
sha256: "1b92f368f44b0dee2425bb861cfa17b6f6cf3961f762ff6f941d20b33355660a"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: bb4738f15b23352822f4c42a531677e5c6f522e079461fd240ead29d8d8a54a6
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.5.0"
version: "2.5.0+2"
stack_trace:
dependency: transitive
description:
name: stack_trace
sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.11.0"
version: "1.11.1"
stream_channel:
dependency: transitive
description:
name: stream_channel
sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.1"
version: "2.1.2"
string_scanner:
dependency: transitive
description:
name: string_scanner
sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.0"
synchronized:
@ -607,7 +615,7 @@ packages:
description:
name: synchronized
sha256: "5fcbd27688af6082f5abd611af56ee575342c30e87541d0245f7ff99faa02c60"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.1.0"
term_glyph:
@ -615,23 +623,23 @@ packages:
description:
name: term_glyph
sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.2.1"
test_api:
dependency: transitive
description:
name: test_api
sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b"
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.6.0"
version: "0.6.1"
typed_data:
dependency: transitive
description:
name: typed_data
sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.3.2"
uuid:
@ -639,7 +647,7 @@ packages:
description:
name: uuid
sha256: "648e103079f7c64a36dc7d39369cabb358d377078a051d6ae2ad3aa539519313"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.0.7"
validators:
@ -647,7 +655,7 @@ packages:
description:
name: validators
sha256: "884515951f831a9c669a41ed6c4d3c61c2a0e8ec6bca761a4480b28e99cecf5d"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.0.0"
vector_math:
@ -655,33 +663,41 @@ packages:
description:
name: vector_math
sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "2.1.4"
web:
dependency: transitive
description:
name: web
sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: afe077240a270dcfd2aafe77602b4113645af95d0ad31128cc02bce5ac5d5152
url: "https://pub.flutter-io.cn"
source: hosted
version: "0.1.4-beta"
version: "0.3.0"
win32:
dependency: transitive
description:
name: win32
sha256: a6f0236dbda0f63aa9a25ad1ff9a9d8a4eaaa5012da0dc59d21afdb1dc361ca4
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
sha256: "7c99c0e1e2fa190b48d25c81ca5e42036d5cac81430ef249027d97b0935c553f"
url: "https://pub.flutter-io.cn"
source: hosted
version: "3.1.4"
version: "5.1.0"
win32_registry:
dependency: transitive
description:
name: win32_registry
sha256: "41fd8a189940d8696b1b810efb9abcf60827b6cbfab90b0c43e8439e3a39d85a"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.1.2"
xdg_directories:
dependency: transitive
description:
name: xdg_directories
sha256: "589ada45ba9e39405c198fe34eb0f607cddb2108527e658136120892beac46d2"
url: "https://mirrors.sjtug.sjtu.edu.cn/dart-pub/"
url: "https://pub.flutter-io.cn"
source: hosted
version: "1.0.3"
sdks:
dart: ">=3.1.0-185.0.dev <4.0.0"
flutter: ">=3.13.0"
dart: ">=3.2.0 <4.0.0"
flutter: ">=3.16.0"

View File

@ -6,15 +6,15 @@ environment:
sdk: '>=2.18.5 <3.0.0'
dependencies:
cupertino_icons: ^1.0.2
cupertino_icons: ^1.0.6
get: 4.6.6
app_installer: ^1.1.0
# 图片缓存 https://github.com/renefloor/flutter_cached_network_image
cached_network_image: ^3.2.3
cached_network_image: ^3.3.0
# Localization https://github.com/dart-lang/intl
intl: ^0.18.1
# 获取当前设备信息 https://github.com/fluttercommunity/plus_plugins/tree/main/packages/device_info_plus
device_info_plus: 8.1.0
device_info_plus: ^9.1.1
# Dart 常用工具类库 https://github.com/Sky24n/common_utils
common_utils: 2.1.0
flustars_flutter3: ^3.0.0
@ -25,22 +25,23 @@ dependencies:
# Guid https://github.com/rocket-libs/flutter_guid
flutter_guid: ^0.3.1
animated_text_kit: ^4.2.2
flutter_smart_dialog: ^4.9.4
flutter_smart_dialog: ^4.9.5+1
bubble_box: ^0.5.3
flutter_screenutil: ^5.9.0
easy_refresh: ^3.3.2+1
scrollview_observer: ^1.16.5
easy_refresh: ^3.3.2+4
scrollview_observer: ^1.18.1
qiniu_flutter_sdk: ^0.5.0
package_info_plus: 3.1.0
dio: ^5.3.3
package_info_plus: ^5.0.1
dio: ^5.3.4
scroll_date_picker: ^3.7.3
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
flutter_hooks: ^0.20.3
dev_dependencies:
flutter_lints: ^2.0.0
flutter_lints: ^3.0.1
flutter_test:
sdk: flutter