diff --git a/android/java_pid17080.hprof b/android/java_pid17080.hprof new file mode 100644 index 0000000..aba051c Binary files /dev/null and b/android/java_pid17080.hprof differ diff --git a/assets/file.json b/assets/file.json new file mode 100644 index 0000000..e594e50 --- /dev/null +++ b/assets/file.json @@ -0,0 +1,3 @@ +[ + "assets/miniapp/mhtControl_1.0.0.zip" +] \ No newline at end of file diff --git a/assets/miniapp/mhtControl_1.0.0.zip b/assets/miniapp/mhtControl_1.0.0.zip new file mode 100644 index 0000000..67a3cac Binary files /dev/null and b/assets/miniapp/mhtControl_1.0.0.zip differ diff --git a/lib/pages/mh_page/homepage/mht_sleep_report_page_return.dart b/lib/pages/mh_page/homepage/mht_sleep_report_page_return.dart new file mode 100644 index 0000000..1777edc --- /dev/null +++ b/lib/pages/mh_page/homepage/mht_sleep_report_page_return.dart @@ -0,0 +1,305 @@ +import 'package:ef/ef.dart'; +import 'package:flutter/material.dart'; +import 'package:flutterflow_ui/flutterflow_ui.dart'; +import 'package:vbvs_app/common/util/FitTool.dart'; +import 'package:vbvs_app/common/util/MyUtils.dart'; +import 'package:vbvs_app/controller/user_info_controller.dart'; +import 'package:vbvs_app/pages/mh_page/homepage/controller/mht_home_controller.dart'; +import 'package:vbvs_app/pages/sleep_report/new_sleep_report_page.dart'; + +class MhtSleepReportReturnPage extends StatefulWidget { + final dynamic data; + const MhtSleepReportReturnPage({super.key, required this.data}); + + @override + State createState() => + _MhtSleepReportReturnPageState(); +} + +class _MhtSleepReportReturnPageState extends State { + final UserInfoController userInfoController = Get.find(); + final MHTHomeController deviceController = Get.find(); + final MHTHomeController homeController = Get.find(); + final double borderRadius = 16.rpx; + + final formFieldController = FormFieldController(null); + final personInfo = {}.obs; + + @override + void initState() { + super.initState(); + if (userInfoController.model.login == 1) { + // 设备列表 + deviceController.getDeviceList(group: 'room'); + } + } + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: () => FocusScope.of(context).unfocus(), + child: Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage('assets/images/new_background.png'), + fit: BoxFit.fill, + ), + ), + child: Scaffold( + backgroundColor: Colors.transparent, + appBar: AppBar( + backgroundColor: Colors.transparent, + automaticallyImplyLeading: false, + iconTheme: IconThemeData(color: themeController.currentColor.sc3), + titleSpacing: 0, + title: Container( + width: double.infinity, + height: 180.rpx, + child: Stack( + alignment: Alignment.center, + children: [ + /// 下拉选人 + Positioned( + right: 20.rpx, + child: ScrollbarTheme( + data: ScrollbarThemeData( + thumbColor: + MaterialStateProperty.all(Colors.transparent), + trackColor: + MaterialStateProperty.all(Colors.transparent), + trackBorderColor: + MaterialStateProperty.all(Colors.transparent), + ), + child: ValueListenableBuilder( + valueListenable: formFieldController, + // builder: (context, val, _) { + // return ClipRRect( + // borderRadius: BorderRadius.circular(36.rpx), + // child: Theme( + // data: Theme.of(context).copyWith( + // splashColor: Colors.transparent, + // highlightColor: Colors.transparent, + // hoverColor: Colors.transparent, + // ), + // child: FlutterFlowDropDown( + // controller: formFieldController, + // options: deviceController.personnelList.value + // .map((d) => "${d["mac"]}") + // .toList(), + // optionLabels: deviceController + // .personnelList.value + // .map((d) => d["name"] ?? d["mac"]) + // .toList(), + // onChanged: (val) { + // WidgetsBinding.instance + // .addPostFrameCallback((_) { + // final list = + // deviceController.personnelList.value; + // final selectedPerson = list.firstWhere( + // (element) => element['mac'] == val, + // orElse: () => null, + // ); + // homeController.selectPerson.value = + // selectedPerson; + // personInfo.value = selectedPerson; + + // homeController.selectedDayIndex = + // 6.obs; // 默认选第7天 + + // if (val == null) { + // homeController.sleepDays.value = []; + // } else { + // homeController.selectDevcie.value = val; + // deviceController.getSleeps(val); + // homeController.updateAll(); + // } + // }); + // }, + // width: 300.rpx, + // height: 81.rpx, + // maxHeight: 300.rpx, + // textStyle: TextStyle( + // fontSize: 28.rpx, + // overflow: TextOverflow.ellipsis, + // color: Colors.white, + // ), + // hintText: '', + // icon: Icon( + // Icons.keyboard_arrow_down_rounded, + // color: stringToColor("#FFFFFF"), + // size: 30.rpx, + // ), + // fillColor: stringToColor("#011D33"), + // elevation: 2, + // borderColor: Colors.transparent, + // borderWidth: 2, + // borderRadius: 0.rpx, + // margin: EdgeInsetsDirectional.fromSTEB( + // 32.rpx, 8.rpx, 32.rpx, 8.rpx), + // hidesUnderline: true, + // isOverButton: false, + // isSearchable: false, + // isMultiSelect: false, + // ), + // ), + // ); + // }, + + builder: (context, val, _) { + // 只保留符合 bind_mac_a/b 的人员 + final macA = widget.data['bind_mac_a']; + final macB = widget.data['bind_mac_b']; + final list = deviceController.personnelList.value; + final filteredList = list + .where( + (p) => p['mac'] == macA || p['mac'] == macB) + .toList(); + + // 默认只赋值一次 + if (formFieldController.value == null && + filteredList.isNotEmpty) { + final defaultMac = filteredList.first['mac']; + WidgetsBinding.instance.addPostFrameCallback((_) { + formFieldController.value = defaultMac; + + final selectedPerson = filteredList.firstWhere( + (element) => element['mac'] == defaultMac, + orElse: () => null, + ); + homeController.selectPerson.value = + selectedPerson; + personInfo.value = selectedPerson; + + homeController.selectedDayIndex = 6.obs; + homeController.selectDevcie.value = defaultMac; + deviceController.getSleeps(defaultMac); + homeController.updateAll(); + }); + } + + return ClipRRect( + borderRadius: BorderRadius.circular(36.rpx), + child: Theme( + data: Theme.of(context).copyWith( + splashColor: Colors.transparent, + highlightColor: Colors.transparent, + hoverColor: Colors.transparent, + ), + child: FlutterFlowDropDown( + controller: formFieldController, + options: filteredList + .map((d) => "${d["mac"]}") + .toList(), + optionLabels: filteredList + .map((d) => d["name"] ?? d["mac"]) + .toList(), + onChanged: (val) { + WidgetsBinding.instance + .addPostFrameCallback((_) { + final selectedPerson = + filteredList.firstWhere( + (element) => element['mac'] == val, + orElse: () => null, + ); + homeController.selectPerson.value = + selectedPerson; + personInfo.value = selectedPerson; + + homeController.selectedDayIndex = 6.obs; + + if (val == null) { + homeController.sleepDays.value = []; + } else { + homeController.selectDevcie.value = val; + deviceController.getSleeps(val); + homeController.updateAll(); + } + }); + }, + width: 300.rpx, + height: 81.rpx, + maxHeight: 300.rpx, + textStyle: TextStyle( + fontSize: 28.rpx, + overflow: TextOverflow.ellipsis, + color: Colors.white, + ), + hintText: '', + icon: Icon( + Icons.keyboard_arrow_down_rounded, + color: stringToColor("#FFFFFF"), + size: 30.rpx, + ), + fillColor: stringToColor("#003058"), + elevation: 2, + borderColor: Colors.transparent, + borderWidth: 2, + borderRadius: 0.rpx, + margin: EdgeInsetsDirectional.fromSTEB( + 32.rpx, 8.rpx, 32.rpx, 8.rpx), + hidesUnderline: true, + isOverButton: false, + isSearchable: false, + isMultiSelect: false, + ), + ), + ); + }, + ), + ), + ), + + /// 左侧返回 + 标题 + Positioned( + left: 0, + child: Row( + children: [ + returnIconButtomNew, + Text( + '健康报告'.tr, + style: TextStyle( + fontFamily: 'Readex Pro', + color: themeController.currentColor.sc3, + letterSpacing: 0, + fontSize: 30.rpx, + ), + ), + ], + ), + ), + ], + ), + ), + ), + body: SafeArea( + child: Obx(() { + final device = homeController.selectDevcie.value; + if (device != null && device.isNotEmpty) { + return Column( + children: [ + Expanded( + child: NewSleepReportPage( + data: { + "tag": "444", + 'date': DateTime.now().millisecondsSinceEpoch, + 'mac': device, + 'person': homeController.selectPerson.value, + 'backgroundImg': 'assets/images/new_background.png', + 'arrow': false, + 'noBackImg': true, + 'person_show': false, + }, + ), + ), + ], + ); + } + return Center( + child: Text('暂无数据', style: TextStyle(color: Colors.white))); + }), + ), + ), + ), + ); + } +} diff --git a/package.ps1 b/package.ps1 new file mode 100644 index 0000000..fbdbd11 --- /dev/null +++ b/package.ps1 @@ -0,0 +1,97 @@ +param ( + [Parameter(ValueFromRemainingArguments = $true)] + [string[]]$AllArgs +) +# 初始化变量 +$packageArgs = @() +$flutterArgs = @() +$inFlutterArgs = $false + +# 参数解析 +foreach ($arg in $AllArgs) { + if ($arg -eq "--args") { + $inFlutterArgs = $true + continue + } + + if ($inFlutterArgs) { + $flutterArgs += $arg + } else { + $packageArgs += $arg + } +} + + +function Write-FilesToJson { + param ( + [Parameter(Mandatory=$true)] + [string]$TargetDir, # 要扫描的目录 + + [Parameter(Mandatory=$true)] + [string]$OutputJsonPath # 输出的 JSON 文件路径 + ) + + if (-Not (Test-Path $TargetDir)) { + throw "dir '$TargetDir' is not exists" + } + + # 获取当前工作目录用于相对路径计算 + $basePath = Resolve-Path $TargetDir + + # 收集所有文件(递归) + $files = Get-ChildItem -Path $TargetDir -File -Recurse | ForEach-Object { + # 计算相对路径 + $relativePath = "assets\"+$_.FullName.Substring($basePath.Path.Length).TrimStart('\', '/') + return $relativePath + } + + # 转为 JSON 并保存 + $json = $files | ConvertTo-Json -Depth 10 + Set-Content -Path $OutputJsonPath -Value $json -Encoding UTF8 + + Write-Host "save to: $OutputJsonPath" +} + +function Invoke-AllScriptsInScriptFolder { + param ( + [string[]]$packageArgs, + [string[]]$flutterArgs + ) + $scriptDir = Join-Path -Path (Get-Location) -ChildPath "script" + if (-not (Test-Path $scriptDir)) { + return + } + $scripts = Get-ChildItem -Path $scriptDir -Filter *.ps1 | Sort-Object Name + foreach ($script in $scripts) { + Write-Host "`nruning script at: $($script.Name)" + & $script.FullName ` + --packageArgs @($packageArgs) ` + --flutterArgs @($flutterArgs) + if ($LASTEXITCODE -ne 0) { + Write-Host " script $($script.Name) is failed , because return is not 0" + } + } +} + +for ($i = 0; $i -lt $packageArgs.Count; $i++) { + $arg = $packageArgs[$i] + if ($arg.StartsWith("--assetsinfo")) { + $value = "" + if ($arg.Contains('=')) { + $value = $arg -replace '^--assetsinfo=', '' + } + if ([string]::IsNullOrEmpty($value)) { + $value = "assets/file.json" + } + Write-FilesToJson -TargetDir "assets" -OutputJsonPath $value + } +} +Invoke-AllScriptsInScriptFolder -packageArgs $packageArgs -flutterArgs $flutterArgs +# 构造 flutter 命令 +$flutterCommand = "flutter" +$flutterArgsStr = $flutterArgs -join " " +Write-Host "`nruning: flutter $flutterArgsStr`n" +if ($flutterArgs.Count -gt 0) { + # 调用 flutter 命令 + & $flutterCommand @flutterArgs +} \ No newline at end of file diff --git a/pubspec.lock b/pubspec.lock index 671f5ea..94572a2 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -14,15 +14,15 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "16e298750b6d0af7ce8a3ba7c18c69c3785d11b15ec83f6dcd0ad2a0009b3cab" + sha256: "45cfa8471b89fb6643fe9bf51bd7931a76b8f5ec2d65de4fb176dba8d4f22c77" url: "https://pub.flutter-io.cn" source: hosted - version: "76.0.0" + version: "73.0.0" _macros: dependency: transitive description: dart source: sdk - version: "0.3.3" + version: "0.3.2" adaptive_number: dependency: transitive description: @@ -51,10 +51,10 @@ packages: dependency: transitive description: name: analyzer - sha256: "1f14db053a8c23e260789e9b0980fa27f2680dd640932cae5e1137cce0e46e1e" + sha256: "4959fec185fe70cce007c57e9ab6983101dbe593d2bf8bbfb4453aaec0cf470a" url: "https://pub.flutter-io.cn" source: hosted - version: "6.11.0" + version: "6.8.0" apivideo_live_stream: dependency: transitive description: @@ -83,10 +83,10 @@ packages: dependency: transitive description: name: async - sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63 + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" url: "https://pub.flutter-io.cn" source: hosted - version: "2.12.0" + version: "2.11.0" auto_size_text: dependency: transitive description: @@ -131,18 +131,18 @@ packages: dependency: transitive description: name: boolean_selector - sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.2" + version: "2.1.1" bson: dependency: transitive description: name: bson - sha256: "5a286c4cb9944ab21287579d1f664eb8300daa91d80938349b1a244d165a6ba5" + sha256: f8c80be7a62a88f4add7c48cc83567c36a77532de107224df8328ef71f125045 url: "https://pub.flutter-io.cn" source: hosted - version: "5.0.4" + version: "5.0.7" buffer: dependency: transitive description: @@ -211,10 +211,10 @@ packages: dependency: transitive description: name: built_value - sha256: ea90e81dc4a25a043d9bee692d20ed6d1c4a1662a28c03a96417446c093ed6b4 + sha256: "082001b5c3dc495d4a42f1d5789990505df20d8547d42507c29050af6933ee27" url: "https://pub.flutter-io.cn" source: hosted - version: "8.9.5" + version: "8.10.1" cached_network_image: dependency: transitive description: @@ -251,10 +251,10 @@ packages: dependency: transitive description: name: characters - sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" url: "https://pub.flutter-io.cn" source: hosted - version: "1.4.0" + version: "1.3.0" charcode: dependency: transitive description: @@ -283,10 +283,10 @@ packages: dependency: transitive description: name: clock - sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.2" + version: "1.1.1" code_builder: dependency: transitive description: @@ -403,10 +403,10 @@ packages: dependency: transitive description: name: decimal - sha256: "24a261d5d5c87e86c7651c417a5dbdf8bcd7080dd592533910e8d0505a279f21" + sha256: fc706a5618b81e5b367b01dd62621def37abc096f2b46a9bd9068b64c1fa36d0 url: "https://pub.flutter-io.cn" source: hosted - version: "2.3.3" + version: "3.2.4" dio: dependency: transitive description: @@ -444,11 +444,7 @@ packages: description: path: "." ref: main -<<<<<<< HEAD - resolved-ref: "840bcea66ee9222d9698a58f12a06107f337b59f" -======= - resolved-ref: f307495aac440031d119a728beaccf5d33003932 ->>>>>>> 13eb25e1c30dcd81c87aa85bcb5306ca0931ed21 + resolved-ref: "494ff9d2b803522745d88061791be1072a617afd" url: "https://gitea.wslpc.real.he-info.cn:94/flutter/easydevice.git" source: git version: "0.0.1" @@ -456,13 +452,8 @@ packages: dependency: "direct main" description: path: "." -<<<<<<< HEAD ref: main - resolved-ref: "13a86afdcf71b55017ebf7ee2c22af211e642603" -======= - ref: e86d515f77 - resolved-ref: e86d515f77a736a5e6f09036e5e022153cde425d ->>>>>>> 13eb25e1c30dcd81c87aa85bcb5306ca0931ed21 + resolved-ref: a6e0ac89b5408ae55421331a6019defb26f4110b url: "https://gitea.wslpc.real.he-info.cn:94/flutter/easyweb.git" source: git version: "0.0.1" @@ -479,7 +470,7 @@ packages: description: path: "." ref: main - resolved-ref: "495112d603fbd9d72a709af1f728f14276be012e" + resolved-ref: b8455ecd8caf09e8d9ce09167d8a633d554381fb url: "https://gitea.wslpc.real.he-info.cn:94/flutter/ef.git" source: git version: "0.0.1" @@ -519,10 +510,10 @@ packages: dependency: transitive description: name: fake_async - sha256: "6a95e56b2449df2273fd8c45a662d6947ce1ebb7aafe80e550a3f68297f3cacc" + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" url: "https://pub.flutter-io.cn" source: hosted - version: "1.3.2" + version: "1.3.1" ffi: dependency: transitive description: @@ -708,10 +699,10 @@ packages: dependency: "direct main" description: name: flutter_localization - sha256: "987faf0a6c13a267202b28d3ed680647e234245ead1a1c1f95f87e86c6f12490" + sha256: "578a73455a0deffc4169ef9372ba0562a3e2cff563e5c524ea87bc96daa519c0" url: "https://pub.flutter-io.cn" source: hosted - version: "0.3.2" + version: "0.3.3" flutter_localizations: dependency: transitive description: flutter @@ -721,10 +712,10 @@ packages: dependency: "direct main" description: name: flutter_pdfview - sha256: "51413e36ab3f1a2fe0edf97ebfa770e20182ea4a066bc9f292920330d9245c9d" + sha256: c402ad1f51ba8ea73b9fb04c003ca0a9286118ba5ac9787ee2aa58956b3fcf8a url: "https://pub.flutter-io.cn" source: hosted - version: "1.4.0+1" + version: "1.4.1+1" flutter_plugin_android_lifecycle: dependency: transitive description: @@ -796,10 +787,10 @@ packages: dependency: "direct main" description: name: fluwx - sha256: "8dbbe3f2dd93cd5f689de7b1342b86a47db3f03005e2020904fc45a204d0df4f" + sha256: "61e572248c38a775ad44731e2ec7c4b52cae673eda58222b5432ed721205471c" url: "https://pub.flutter-io.cn" source: hosted - version: "5.5.2" + version: "5.6.0" font_awesome_flutter: dependency: transitive description: @@ -1012,10 +1003,10 @@ packages: dependency: transitive description: name: grpc - sha256: "30e1edae6846b163a64f6d8716e3443980fe1f7d2d1f086f011d24ea186f2582" + sha256: "2dde469ddd8bbd7a33a0765da417abe1ad2142813efce3a86c512041294e2b26" url: "https://pub.flutter-io.cn" source: hosted - version: "4.0.4" + version: "4.1.0" html: dependency: transitive description: @@ -1156,18 +1147,18 @@ packages: dependency: transitive description: name: leak_tracker - sha256: c35baad643ba394b40aac41080300150a4f08fd0fd6a10378f8f7c6bc161acec + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" url: "https://pub.flutter-io.cn" source: hosted - version: "10.0.8" + version: "10.0.5" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" url: "https://pub.flutter-io.cn" source: hosted - version: "3.0.9" + version: "3.0.5" leak_tracker_testing: dependency: transitive description: @@ -1220,10 +1211,10 @@ packages: dependency: transitive description: name: macros - sha256: "1d9e801cd66f7ea3663c45fc708450db1fa57f988142c64289142c9b7ee80656" + sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" url: "https://pub.flutter-io.cn" source: hosted - version: "0.1.3-main.0" + version: "0.1.2-main.4" map_launcher: dependency: "direct main" description: @@ -1244,10 +1235,10 @@ packages: dependency: transitive description: name: matcher - sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb url: "https://pub.flutter-io.cn" source: hosted - version: "0.12.17" + version: "0.12.16+1" material_color_utilities: dependency: transitive description: @@ -1268,10 +1259,10 @@ packages: dependency: transitive description: name: meta - sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 url: "https://pub.flutter-io.cn" source: hosted - version: "1.16.0" + version: "1.15.0" mime: dependency: transitive description: @@ -1308,10 +1299,10 @@ packages: dependency: transitive description: name: mongo_dart - sha256: b0078dd433ecad7d250abaa6437cb720dd16cbfa9b8cc020460698e0703d7bc9 + sha256: "43b62b43c6449a0159bf138fba27653cb35acd92d3587ad26d1ec068cd645559" url: "https://pub.flutter-io.cn" source: hosted - version: "0.10.3" + version: "0.10.5" mongo_dart_query: dependency: transitive description: @@ -1388,10 +1379,10 @@ packages: dependency: transitive description: name: packages_extensions - sha256: "268108a92be955e33a58cf6492e289e43ef55a50c89fa64947f032f5cefeb3fc" + sha256: "1fb328695a9828c80d275ce1650a2bb5947690070de082dfa1dfac7429378daf" url: "https://pub.flutter-io.cn" source: hosted - version: "0.1.0" + version: "0.1.1" page_transition: dependency: transitive description: @@ -1404,10 +1395,10 @@ packages: dependency: "direct main" description: name: path - sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" url: "https://pub.flutter-io.cn" source: hosted - version: "1.9.1" + version: "1.9.0" path_parsing: dependency: transitive description: @@ -1476,10 +1467,10 @@ packages: dependency: "direct main" description: name: permission_handler - sha256: "2d070d8684b68efb580a5997eb62f675e8a885ef0be6e754fb9ef489c177470f" + sha256: bc917da36261b00137bbc8896bf1482169cd76f866282368948f032c8c1caae1 url: "https://pub.flutter-io.cn" source: hosted - version: "12.0.0+1" + version: "12.0.1" permission_handler_android: dependency: transitive description: @@ -1580,10 +1571,10 @@ packages: dependency: transitive description: name: pointer_interceptor_web - sha256: "460b600e71de6fcea2b3d5f662c92293c049c4319e27f0829310e5a953b3ee2a" + sha256: "7a7087782110f8c1827170660b09f8aa893e0e9a61431dbbe2ac3fc482e8c044" url: "https://pub.flutter-io.cn" source: hosted - version: "0.10.3" + version: "0.10.2+1" pointycastle: dependency: transitive description: @@ -1604,10 +1595,10 @@ packages: dependency: transitive description: name: posix - sha256: f0d7856b6ca1887cfa6d1d394056a296ae33489db914e365e2044fdada449e62 + sha256: "6323a5b0fa688b6a010df4905a56b00181479e6d10534cecfecede2aa55add61" url: "https://pub.flutter-io.cn" source: hosted - version: "6.0.2" + version: "6.0.3" power_extensions: dependency: transitive description: @@ -1828,7 +1819,7 @@ packages: dependency: transitive description: flutter source: sdk - version: "0.0.0" + version: "0.0.99" smooth_page_indicator: dependency: transitive description: @@ -1857,10 +1848,10 @@ packages: dependency: transitive description: name: source_span - sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.flutter-io.cn" source: hosted - version: "1.10.1" + version: "1.10.0" sprintf: dependency: transitive description: @@ -1873,34 +1864,34 @@ packages: dependency: transitive description: name: sqflite - sha256: e2297b1da52f127bc7a3da11439985d9b536f75070f3325e62ada69a5c585d03 + sha256: "2d7299468485dca85efeeadf5d38986909c5eb0cd71fd3db2c2f000e6c9454bb" url: "https://pub.flutter-io.cn" source: hosted - version: "2.4.2" + version: "2.4.1" sqflite_android: dependency: transitive description: name: sqflite_android - sha256: "2b3070c5fa881839f8b402ee4a39c1b4d561704d4ebbbcfb808a119bc2a1701b" + sha256: "78f489aab276260cdd26676d2169446c7ecd3484bbd5fead4ca14f3ed4dd9ee3" url: "https://pub.flutter-io.cn" source: hosted - version: "2.4.1" + version: "2.4.0" sqflite_common: dependency: transitive description: name: sqflite_common - sha256: "84731e8bfd8303a3389903e01fb2141b6e59b5973cacbb0929021df08dddbe8b" + sha256: "761b9740ecbd4d3e66b8916d784e581861fd3c3553eda85e167bc49fdb68f709" url: "https://pub.flutter-io.cn" source: hosted - version: "2.5.5" + version: "2.5.4+6" sqflite_darwin: dependency: transitive description: name: sqflite_darwin - sha256: "279832e5cde3fe99e8571879498c9211f3ca6391b0d818df4e17d9fff5c6ccb3" + sha256: "22adfd9a2c7d634041e96d6241e6e1c8138ca6817018afc5d443fef91dcefa9c" url: "https://pub.flutter-io.cn" source: hosted - version: "2.4.2" + version: "2.4.1+1" sqflite_platform_interface: dependency: transitive description: @@ -1913,10 +1904,10 @@ packages: dependency: transitive description: name: stack_trace - sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" url: "https://pub.flutter-io.cn" source: hosted - version: "1.12.1" + version: "1.11.1" stop_watch_timer: dependency: transitive description: @@ -1929,10 +1920,10 @@ packages: dependency: transitive description: name: stream_channel - sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 url: "https://pub.flutter-io.cn" source: hosted - version: "2.1.4" + version: "2.1.2" stream_transform: dependency: transitive description: @@ -1945,10 +1936,10 @@ packages: dependency: transitive description: name: string_scanner - sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" url: "https://pub.flutter-io.cn" source: hosted - version: "1.4.1" + version: "1.2.0" substring_highlight: dependency: transitive description: @@ -1977,10 +1968,10 @@ packages: dependency: transitive description: name: synchronized - sha256: "0669c70faae6270521ee4f05bffd2919892d42d1276e6c495be80174b6bc0ef6" + sha256: "69fe30f3a8b04a0be0c15ae6490fc859a78ef4c43ae2dd5e8a623d45bfcf9225" url: "https://pub.flutter-io.cn" source: hosted - version: "3.3.1" + version: "3.3.0+3" table_calendar: dependency: transitive description: @@ -1993,18 +1984,18 @@ packages: dependency: transitive description: name: term_glyph - sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 url: "https://pub.flutter-io.cn" source: hosted - version: "1.2.2" + version: "1.2.1" test_api: dependency: transitive description: name: test_api - sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" url: "https://pub.flutter-io.cn" source: hosted - version: "0.7.4" + version: "0.7.2" timeago: dependency: transitive description: @@ -2073,10 +2064,10 @@ packages: dependency: transitive description: name: url_launcher_android - sha256: "8582d7f6fe14d2652b4c45c9b6c14c0b678c2af2d083a11b604caeba51930d79" + sha256: "6fc2f56536ee873eeb867ad176ae15f304ccccc357848b351f6f0d8d4a40d193" url: "https://pub.flutter-io.cn" source: hosted - version: "6.3.16" + version: "6.3.14" url_launcher_ios: dependency: transitive description: @@ -2113,10 +2104,10 @@ packages: dependency: transitive description: name: url_launcher_web - sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2" + sha256: "772638d3b34c779ede05ba3d38af34657a05ac55b06279ea6edd409e323dca8e" url: "https://pub.flutter-io.cn" source: hosted - version: "2.4.1" + version: "2.3.3" url_launcher_windows: dependency: transitive description: @@ -2209,10 +2200,10 @@ packages: dependency: transitive description: name: vm_service - sha256: "0968250880a6c5fe7edc067ed0a13d4bae1577fe2771dcf3010d52c4a9d3ca14" + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" url: "https://pub.flutter-io.cn" source: hosted - version: "14.3.1" + version: "14.2.5" vy_string_utils: dependency: transitive description: @@ -2241,10 +2232,10 @@ packages: dependency: transitive description: name: watcher - sha256: "69da27e49efa56a15f8afe8f4438c4ec02eff0a117df1b22ea4aad194fe1c104" + sha256: "0b7fd4a0bbc4b92641dbf20adfd7e3fd1398fe17102d94b674234563e110088a" url: "https://pub.flutter-io.cn" source: hosted - version: "1.1.1" + version: "1.1.2" weather: dependency: "direct main" description: @@ -2297,10 +2288,10 @@ packages: dependency: transitive description: name: webview_flutter_platform_interface - sha256: f0dc2dc3a2b1e3a6abdd6801b9355ebfeb3b8f6cde6b9dc7c9235909c4a1f147 + sha256: "7cb32b21825bd65569665c32bb00a34ded5779786d6201f5350979d2d529940d" url: "https://pub.flutter-io.cn" source: hosted - version: "2.13.1" + version: "2.13.0" webview_flutter_wkwebview: dependency: transitive description: @@ -2350,5 +2341,5 @@ packages: source: hosted version: "3.1.3" sdks: - dart: ">=3.7.0 <4.0.0" - flutter: ">=3.27.0" + dart: ">=3.5.4 <4.0.0" + flutter: ">=3.24.0" diff --git a/pubspec.yaml b/pubspec.yaml index ebb1971..a5128e6 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -97,6 +97,8 @@ flutter: - assets/img/ - assets/img/menu/ - assets/img/icon/ + - assets/file.json + - assets/miniapp/ fonts: - family: calculatrix fonts: