From aeb318f9d5377811d720c043e226055892a4472d Mon Sep 17 00:00:00 2001 From: "1147192855@qq.com" <1147192855@qq.com> Date: Fri, 29 Mar 2024 18:29:12 +0800 Subject: [PATCH] no message --- .gitignore | 2 + .../job_personal_detail.dart | 306 +++++++----------- .../lib/utils/drawer_util/auto_drawer.dart | 119 ++++--- marking_app/pubspec.yaml | 2 +- 4 files changed, 171 insertions(+), 258 deletions(-) diff --git a/.gitignore b/.gitignore index e45eead..e146bd9 100644 --- a/.gitignore +++ b/.gitignore @@ -209,3 +209,5 @@ marking_app/lib/common/model/job/job_favorite_item_model.g.dart marking_app/lib/pages/homework_correction/pages/job_favorite.g.dart marking_app/lib/common/model/job/job_fav_student.g.dart marking_app/lib/common/model/job/job_data_report.g.dart +marking_app/lib/common/model/job/job_student_history.g.dart +marking_app/lib/pages/homework_correction/job_personal_detail.g.dart diff --git a/marking_app/lib/pages/homework_correction/job_personal_detail.dart b/marking_app/lib/pages/homework_correction/job_personal_detail.dart index c1cb298..4f867a5 100644 --- a/marking_app/lib/pages/homework_correction/job_personal_detail.dart +++ b/marking_app/lib/pages/homework_correction/job_personal_detail.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:flutter_easyrefresh/easy_refresh.dart'; +import 'package:flutter_hooks/flutter_hooks.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:functional_widget_annotation/functional_widget_annotation.dart'; import 'package:marking_app/common/mixin/common.dart'; @@ -15,20 +16,19 @@ import 'package:marking_app/utils/request/rest_client.dart'; import 'package:percent_indicator/percent_indicator.dart'; import 'package:syncfusion_flutter_datepicker/datepicker.dart'; +part 'job_personal_detail.g.dart'; + class JobPersonalDetail extends StatefulWidget { final String studentName; final int studentId; - const JobPersonalDetail( - {Key? key, required this.studentName, required this.studentId}) - : super(key: key); + const JobPersonalDetail({Key? key, required this.studentName, required this.studentId}) : super(key: key); @override _JobPersonalDetailState createState() => _JobPersonalDetailState(); } -class _JobPersonalDetailState extends State - with CommonMixin, TickerProviderStateMixin { +class _JobPersonalDetailState extends State with CommonMixin, TickerProviderStateMixin { @override int page = 1; int pageSize = 10; @@ -60,8 +60,7 @@ class _JobPersonalDetailState extends State void getList() async { RestClient _client = await getClient(); BaseStructureResult res = - await _client.getStudentJobHistory(widget.studentId, !isJob, - startDataTime, endDataTime, page, pageSize); + await _client.getStudentJobHistory(widget.studentId, !isJob, startDataTime, endDataTime, page, pageSize); if (res.success) { res.data!.pagedList.items.forEach((element) { int num = 0; @@ -75,8 +74,7 @@ class _JobPersonalDetailState extends State num = num + 1; } }); - if (num == - (element.objectiveDtls.length + element.subjectiveDtls.length)) { + if (num == (element.objectiveDtls.length + element.subjectiveDtls.length)) { element.allNotDone = true; } }); @@ -106,8 +104,7 @@ class _JobPersonalDetailState extends State backgroundColor: Color.fromRGBO(245, 245, 245, 1), appBar: AppBar( backgroundColor: Colors.white, - title: Text('${widget.studentName}作业详情', - style: TextStyle(fontSize: 14.sp, color: Color(0xFF333333))), + title: Text('${widget.studentName}作业详情', style: TextStyle(fontSize: 14.sp, color: Color(0xFF333333))), centerTitle: true, leading: IconButton( icon: Icon(Icons.arrow_back_ios, color: Colors.black), @@ -143,9 +140,7 @@ class _JobPersonalDetailState extends State child: Center( child: Text( '作业', - style: TextStyle( - fontSize: 14.sp, - color: isJob ? Color(0xFF7491FD) : Color(0xFF505E6E)), + style: TextStyle(fontSize: 14.sp, color: isJob ? Color(0xFF7491FD) : Color(0xFF505E6E)), )), ), ), @@ -170,10 +165,7 @@ class _JobPersonalDetailState extends State child: Center( child: Text( '考试', - style: TextStyle( - fontSize: 14.sp, - color: - !isJob ? Color(0xFF7491FD) : Color(0xFF505E6E)), + style: TextStyle(fontSize: 14.sp, color: !isJob ? Color(0xFF7491FD) : Color(0xFF505E6E)), )), ), ), @@ -181,17 +173,16 @@ class _JobPersonalDetailState extends State ), ), Container( - margin: EdgeInsets.symmetric( - vertical: 10.r, horizontal: 14.r), - padding: EdgeInsets.only(top: 10.r,left: 10.r,right: 10.r,bottom: 10.r), - decoration: BoxDecoration( - borderRadius: - BorderRadius.all(Radius.circular(10.r)), - color: Colors.white), + margin: EdgeInsets.symmetric(vertical: 10.r, horizontal: 14.r), + padding: EdgeInsets.only(top: 10.r, left: 10.r, right: 10.r, bottom: 10.r), + decoration: BoxDecoration(borderRadius: BorderRadius.all(Radius.circular(10.r)), color: Colors.white), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - Text('总览:',style: TextStyle(fontSize: 12.sp,color: Color(0xFF7491FD),fontWeight: FontWeight.w600),), + Text( + '总览:', + style: TextStyle(fontSize: 12.sp, color: Color(0xFF7491FD), fontWeight: FontWeight.w600), + ), progressBar(context, title: '客观题正确率:', color: Color(0xFFB8C7FF), @@ -214,7 +205,7 @@ class _JobPersonalDetailState extends State ), ), - /* SizedBox( + /* SizedBox( height: 5.r, ),*/ jobConditionFilter(context, @@ -222,16 +213,11 @@ class _JobPersonalDetailState extends State jobType: isJob ? 1 : 2, customTimeStr: customTimeStr, customTime: tabController.index != 3 || - ((endDataTime == null || endDataTime == '') && - (startDataTime == null || startDataTime == '')) + ((endDataTime == null || endDataTime == '') && (startDataTime == null || startDataTime == '')) ? null : PickerDateRange( - startDataTime == null || startDataTime == '' - ? null - : DateTime.parse(startDataTime!), - endDataTime == null || endDataTime == '' - ? null - : DateTime.parse(endDataTime!), + startDataTime == null || startDataTime == '' ? null : DateTime.parse(startDataTime!), + endDataTime == null || endDataTime == '' ? null : DateTime.parse(endDataTime!), ), onTimeFilter: (String? startTime, String? endTime) { EasyLoading.show(status: 'loading...'); if (startTime == null && endTime == null) { @@ -253,73 +239,76 @@ class _JobPersonalDetailState extends State // _refreshController2.callRefresh(); }, refreshTime: (value) { if (value != null && value.startDate != null) { - customTimeStr = - value.startDate?.toString().substring(0, 10) ?? ''; + customTimeStr = value.startDate?.toString().substring(0, 10) ?? ''; setState(() {}); if (value.endDate != null) { if (!isPad() && value.startDate!.year == value.endDate!.year) { - customTimeStr = value.startDate.toString().substring(5, 10) + - '~${value.endDate.toString().substring(5, 10)}'; + customTimeStr = + value.startDate.toString().substring(5, 10) + '~${value.endDate.toString().substring(5, 10)}'; setState(() {}); } else { - customTimeStr = - '$customTimeStr~${value.endDate?.toString().substring(0, 10)}'; + customTimeStr = '$customTimeStr~${value.endDate?.toString().substring(0, 10)}'; setState(() {}); } } } }), Padding( - padding: EdgeInsets.only(top: 14.r,right: 14.r), + padding: EdgeInsets.only(top: 14.r, right: 14.r), child: Row( mainAxisAlignment: MainAxisAlignment.end, children: [ Text( '注:', - style: TextStyle( - fontSize: 8.sp, color: Color(0xFF8B8B8B)), + style: TextStyle(fontSize: 8.sp, color: Color(0xFF8B8B8B)), ), Container( - width:10.r, + width: 10.r, height: 10.r, decoration: BoxDecoration( borderRadius: BorderRadius.all(Radius.circular(5.r)), // color: Color(0xFF4CC793), - border: Border.all(width: 1.r,color: Color(0xFF4CC793)), + border: Border.all(width: 1.r, color: Color(0xFF4CC793)), ), ), - SizedBox(width: 2.r,), + SizedBox( + width: 2.r, + ), Text( '正确', - style: TextStyle( - fontSize: 8.sp, color: Color(0xFF8B8B8B)), + style: TextStyle(fontSize: 8.sp, color: Color(0xFF8B8B8B)), + ), + SizedBox( + width: 15.r, ), - SizedBox(width: 15.r,), Container( - width:10.r, + width: 10.r, height: 10.r, decoration: BoxDecoration( borderRadius: BorderRadius.all(Radius.circular(5.r)), // color: Color(0xFFFF7474), - border: Border.all(width: 1.r,color: Color(0xFFFF7474)), + border: Border.all(width: 1.r, color: Color(0xFFFF7474)), ), ), - SizedBox(width: 2.r,), + SizedBox( + width: 2.r, + ), Text( '错误', - style: TextStyle( - fontSize: 8.sp, color: Color(0xFF8B8B8B)), + style: TextStyle(fontSize: 8.sp, color: Color(0xFF8B8B8B)), + ), + SizedBox( + width: 15.r, ), - SizedBox(width: 15.r,), Container( - width:10.r, + width: 10.r, height: 10.r, decoration: BoxDecoration( borderRadius: BorderRadius.all(Radius.circular(5.r)), // color: Color(0xFF666666), - border: Border.all(width: 1.r,color: Color(0xFF666666)), + border: Border.all(width: 1.r, color: Color(0xFF666666)), // border: Border.all(width: 1.r,color: Colors.grey), - /* boxShadow: [ + /* boxShadow: [ BoxShadow( color: Colors.grey, offset: Offset(1.w, 1.h), //阴影y轴偏移量 @@ -329,27 +318,31 @@ class _JobPersonalDetailState extends State ],*/ ), ), - SizedBox(width: 2.r,), + SizedBox( + width: 2.r, + ), Text( '已作答未批阅', - style: TextStyle( - fontSize: 8.sp, color: Color(0xFF8B8B8B)), + style: TextStyle(fontSize: 8.sp, color: Color(0xFF8B8B8B)), + ), + SizedBox( + width: 15.r, ), - SizedBox(width: 15.r,), Container( - width:10.r, + width: 10.r, height: 10.r, decoration: BoxDecoration( borderRadius: BorderRadius.all(Radius.circular(5.r)), - border: Border.all(width: 1.r,color: Color(0xFFDDDDDD)), + border: Border.all(width: 1.r, color: Color(0xFFDDDDDD)), // color: Color(0xFFDDDDDD), ), ), - SizedBox(width: 2.r,), + SizedBox( + width: 2.r, + ), Text( '未做', - style: TextStyle( - fontSize: 8.sp, color: Color(0xFF8B8B8B)), + style: TextStyle(fontSize: 8.sp, color: Color(0xFF8B8B8B)), ), ], ), @@ -383,8 +376,8 @@ class _JobPersonalDetailState extends State itemBuilder: (context, index) { Items item = dataList[index]; return InkWell( - onTap: (){ - /* RouterManager.router.navigateTo( + onTap: () { + /* RouterManager.router.navigateTo( context, RouterManager.quickDataCheckPath + '?gradeName=${Uri.encodeComponent(item.gradeName)}&className=${Uri.encodeComponent(item.className)}&jobId=${item.id}', @@ -398,16 +391,11 @@ class _JobPersonalDetailState extends State ); }, child: Container( - margin: EdgeInsets.symmetric( - vertical: 5.r, horizontal: 14.r), - padding: EdgeInsets.symmetric( - vertical: 14.r, horizontal: 10.r), + margin: EdgeInsets.symmetric(vertical: 5.r, horizontal: 14.r), + padding: EdgeInsets.symmetric(vertical: 14.r, horizontal: 10.r), decoration: BoxDecoration( - borderRadius: - BorderRadius.all(Radius.circular(10.r)), - color: item.allNotDone - ? Color(0xFFFFEDD3) - : Colors.white), + borderRadius: BorderRadius.all(Radius.circular(10.r)), + color: item.allNotDone ? Color(0xFFFFEDD3) : Colors.white), child: Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, @@ -422,10 +410,7 @@ class _JobPersonalDetailState extends State alignment: Alignment.center, padding: EdgeInsets.only(left: 2.w), decoration: BoxDecoration( - color: isJob - ? const Color.fromRGBO( - 104, 136, 253, 1) - : Color(0xFFFFA116), + color: isJob ? const Color.fromRGBO(104, 136, 253, 1) : Color(0xFFFFA116), borderRadius: BorderRadius.only( topLeft: Radius.circular(14.r), topRight: Radius.circular(3.r), @@ -436,17 +421,13 @@ class _JobPersonalDetailState extends State margin: EdgeInsets.only(right: 4.w), child: Text( isJob ? '作业' : '考试', - style: TextStyle( - fontSize: 10.sp, - color: Colors.white), + style: TextStyle(fontSize: 10.sp, color: Colors.white), ), ), Expanded( child: Text( item.name, - style: TextStyle( - fontSize: 12.sp, - color: Color(0xFF464646)), + style: TextStyle(fontSize: 12.sp, color: Color(0xFF464646)), )), // SizedBox(width: 5.r,), // Text('2024.1',style: TextStyle(fontSize: 12.sp,color: Color(0xFF5B5B5B)),), @@ -455,18 +436,13 @@ class _JobPersonalDetailState extends State width: 40.r, height: 20.r, decoration: BoxDecoration( - borderRadius: BorderRadius.all( - Radius.circular(4.r)), - border: Border.all( - width: 1.r, - color: Color(0xFF4CC793)), + borderRadius: BorderRadius.all(Radius.circular(4.r)), + border: Border.all(width: 1.r, color: Color(0xFF4CC793)), ), child: Center( child: Text( item.subjectName, - style: TextStyle( - fontSize: 10.sp, - color: Color(0xFF4CC793)), + style: TextStyle(fontSize: 10.sp, color: Color(0xFF4CC793)), )), ), ], @@ -479,9 +455,7 @@ class _JobPersonalDetailState extends State children: [ Text( '客:', - style: TextStyle( - fontSize: 12.sp, - color: Color(0xFF5B5B5B)), + style: TextStyle(fontSize: 12.sp, color: Color(0xFF5B5B5B)), ), SizedBox( width: 5.r, @@ -493,11 +467,8 @@ class _JobPersonalDetailState extends State alignment: WrapAlignment.start, spacing: 8, runSpacing: 5, - children: List.generate( - item.objectiveDtls.length, - (i) { - SubjectiveDtls subjective = - item.objectiveDtls[i]; + children: List.generate(item.objectiveDtls.length, (i) { + SubjectiveDtls subjective = item.objectiveDtls[i]; return Container( width: 20.r, height: 20.r, @@ -505,44 +476,26 @@ class _JobPersonalDetailState extends State color: Colors.transparent, border: Border.all( width: 1.r, - color: subjective - .state == - 0 - ? Color( - 0xFFDDDDDD) - : subjective.state == - 3 - ? Color( - 0xFF666666) - : subjective.state == - 1 - ? Color( - 0xFFFF7474) - : Color( - 0xFF4CC793)), - borderRadius: - BorderRadius.all( - Radius.circular( - 10.r))), + color: subjective.state == 0 + ? Color(0xFFDDDDDD) + : subjective.state == 3 + ? Color(0xFF666666) + : subjective.state == 1 + ? Color(0xFFFF7474) + : Color(0xFF4CC793)), + borderRadius: BorderRadius.all(Radius.circular(10.r))), child: Center( child: Text( subjective.questionNo, style: TextStyle( fontSize: 10.r, - color: subjective - .state == - 0 + color: subjective.state == 0 ? Color(0xFFDDDDDD) - : subjective.state == - 3 - ? Color( - 0xFF666666) - : subjective.state == - 1 - ? Color( - 0xFFFF7474) - : Color( - 0xFF4CC793)), + : subjective.state == 3 + ? Color(0xFF666666) + : subjective.state == 1 + ? Color(0xFFFF7474) + : Color(0xFF4CC793)), )), ); }), @@ -550,9 +503,7 @@ class _JobPersonalDetailState extends State ) : Text( '无', - style: TextStyle( - fontSize: 12.sp, - color: Color(0xFF5B5B5B)), + style: TextStyle(fontSize: 12.sp, color: Color(0xFF5B5B5B)), ), ], ), @@ -564,9 +515,7 @@ class _JobPersonalDetailState extends State children: [ Text( '主:', - style: TextStyle( - fontSize: 12.sp, - color: Color(0xFF5B5B5B)), + style: TextStyle(fontSize: 12.sp, color: Color(0xFF5B5B5B)), ), SizedBox( width: 5.r, @@ -578,11 +527,8 @@ class _JobPersonalDetailState extends State alignment: WrapAlignment.start, spacing: 8, runSpacing: 5, - children: List.generate( - item.subjectiveDtls.length, - (i) { - SubjectiveDtls subjective = - item.subjectiveDtls[i]; + children: List.generate(item.subjectiveDtls.length, (i) { + SubjectiveDtls subjective = item.subjectiveDtls[i]; return Container( width: 20.r, height: 20.r, @@ -590,44 +536,26 @@ class _JobPersonalDetailState extends State color: Colors.transparent, border: Border.all( width: 1.r, - color: subjective - .state == - 0 - ? Color( - 0xFFDDDDDD) - : subjective.state == - 3 - ? Color( - 0xFF666666) - : subjective.state == - 1 - ? Color( - 0xFFFF7474) - : Color( - 0xFF4CC793)), - borderRadius: - BorderRadius.all( - Radius.circular( - 10.r))), + color: subjective.state == 0 + ? Color(0xFFDDDDDD) + : subjective.state == 3 + ? Color(0xFF666666) + : subjective.state == 1 + ? Color(0xFFFF7474) + : Color(0xFF4CC793)), + borderRadius: BorderRadius.all(Radius.circular(10.r))), child: Center( child: Text( subjective.questionNo, style: TextStyle( fontSize: 10.r, - color: subjective - .state == - 0 + color: subjective.state == 0 ? Color(0xFFDDDDDD) - : subjective.state == - 3 - ? Color( - 0xFF666666) - : subjective.state == - 1 - ? Color( - 0xFFFF7474) - : Color( - 0xFF4CC793)), + : subjective.state == 3 + ? Color(0xFF666666) + : subjective.state == 1 + ? Color(0xFFFF7474) + : Color(0xFF4CC793)), )), ); }), @@ -635,9 +563,7 @@ class _JobPersonalDetailState extends State ) : Text( '无', - style: TextStyle( - fontSize: 12.sp, - color: Color(0xFF5B5B5B)), + style: TextStyle(fontSize: 12.sp, color: Color(0xFF5B5B5B)), ), ], ), @@ -695,8 +621,7 @@ Widget progressBar( crossAxisAlignment: CrossAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - if (title == '总正确率:') - quickText('确率', color: Colors.transparent, size: fontSize), + if (title == '总正确率:') quickText('确率', color: Colors.transparent, size: fontSize), quickText(title, color: Color(0xFF8B8B8B), size: fontSize), Expanded( flex: 1, @@ -761,8 +686,7 @@ Widget jobConditionFilter(BuildContext context, var customTimeState = PickerDateRange(null, null); print('customTime=${customTime}'); if (customTime != null) { - customTimeState = PickerDateRange( - customTime!.startDate != null ? customTime!.startDate : null, + customTimeState = PickerDateRange(customTime!.startDate != null ? customTime!.startDate : null, customTime!.endDate != null ? customTime!.endDate : null); } @@ -798,9 +722,7 @@ Widget jobConditionFilter(BuildContext context, nextMonth = 1; now = now.add(Duration(days: 31 - now.day)); // 跨年了,所以加到当前月的最后一天 } else { - now = now.add(Duration( - days: DateTime(now.year, nextMonth, 0).day - - now.day)); // 加到下个月的第一天的前一天,即本月最后一天 + now = now.add(Duration(days: DateTime(now.year, nextMonth, 0).day - now.day)); // 加到下个月的第一天的前一天,即本月最后一天 } return now; } @@ -839,9 +761,7 @@ Widget jobConditionFilter(BuildContext context, return Center( child: Container( color: Colors.white, - width: isPad() - ? ScreenUtil().screenWidth / 2 - : ScreenUtil().screenWidth / 1.3, + width: isPad() ? ScreenUtil().screenWidth / 2 : ScreenUtil().screenWidth / 1.3, height: ScreenUtil().screenHeight / 2, child: SfDateRangePicker( showActionButtons: true, diff --git a/marking_app/lib/utils/drawer_util/auto_drawer.dart b/marking_app/lib/utils/drawer_util/auto_drawer.dart index 09793fd..196246d 100644 --- a/marking_app/lib/utils/drawer_util/auto_drawer.dart +++ b/marking_app/lib/utils/drawer_util/auto_drawer.dart @@ -1,70 +1,61 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; - class AutoDrawer extends StatefulWidget { - - final double elevation; - final Widget child; - final String? semanticLabel; - //定义显示宽度百分百比 默认60% - final double widthPercent; - final DrawerCallback? callback; - const AutoDrawer({ - Key? key, - this.elevation = 16.0, - required this.child, - this.semanticLabel, - this.widthPercent = 0.6, - this.callback, - }) :super(key: key); - @override - _AutoDrawerState createState() => _AutoDrawerState(); +class AutoDrawer extends StatefulWidget { + final double elevation; + final Widget child; + final String? semanticLabel; + //定义显示宽度百分百比 默认60% + final double widthPercent; + final DrawerCallback? callback; + const AutoDrawer({ + Key? key, + this.elevation = 16.0, + required this.child, + this.semanticLabel, + this.widthPercent = 0.6, + this.callback, + }) : super(key: key); + @override + _AutoDrawerState createState() => _AutoDrawerState(); +} + +class _AutoDrawerState extends State { + @override + void initState() { + if (widget.callback != null) { + //打开侧边栏 触发 + widget.callback!(true); + } + super.initState(); } - - class _AutoDrawerState extends State { - - @override - void initState() { - if(widget.callback!=null){ - //打开侧边栏 触发 - widget.callback!(true); - } - super.initState(); + + @override + void dispose() { + if (widget.callback != null) { + // 关闭侧边栏触发 + widget.callback!(false); } - @override - void dispose() { - if(widget.callback!=null){ - // 关闭侧边栏触发 - widget.callback!(false); - } - super.dispose(); - } - - @override - Widget build(BuildContext context) { - assert(debugCheckHasMaterialLocalizations(context)); - String? label = widget.semanticLabel; - switch (defaultTargetPlatform) { - case TargetPlatform.iOS: - label = widget.semanticLabel; - break; - case TargetPlatform.android: - case TargetPlatform.fuchsia: - label = widget.semanticLabel ?? MaterialLocalizations.of(context)?.drawerLabel; - } - final double _width = MediaQuery.of(context).size.width * widget.widthPercent; - return Semantics( - scopesRoute: true, - namesRoute: true, - explicitChildNodes: true, - label: label, - child: ConstrainedBox( - constraints: BoxConstraints.expand(width: _width), - child: Material( - elevation: widget.elevation, - child: widget.child, - ), + super.dispose(); + } + + @override + Widget build(BuildContext context) { + assert(debugCheckHasMaterialLocalizations(context)); + String? label = widget.semanticLabel ?? MaterialLocalizations.of(context).drawerLabel; + final double _width = MediaQuery.of(context).size.width * widget.widthPercent; + return Semantics( + scopesRoute: true, + namesRoute: true, + explicitChildNodes: true, + label: label, + child: ConstrainedBox( + constraints: BoxConstraints.expand(width: _width), + child: Material( + elevation: widget.elevation, + child: widget.child, ), - ); - } - } \ No newline at end of file + ), + ); + } +} diff --git a/marking_app/pubspec.yaml b/marking_app/pubspec.yaml index 2c078b5..dd3a2a1 100644 --- a/marking_app/pubspec.yaml +++ b/marking_app/pubspec.yaml @@ -15,7 +15,7 @@ publish_to: "none" # Remove this line if you wish to publish to pub.dev # In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. # Read more about iOS versioning at # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html -version: 1.0.101 +version: 1.0.102 environment: sdk: ">=2.17.1 <3.0.0"