mirror of
https://mirror.ghproxy.com/https://github.com/StarCitizenToolBox/app.git
synced 2024-12-23 05:23:44 +08:00
feat: move json file data to code
This commit is contained in:
parent
f392463a84
commit
a8e88983e2
@ -1,4 +1,4 @@
|
|||||||
{
|
final advancedLocalizationJsonData = {
|
||||||
"class_keys": [
|
"class_keys": [
|
||||||
{
|
{
|
||||||
"id": "location_opt",
|
"id": "location_opt",
|
||||||
@ -98,9 +98,7 @@
|
|||||||
{
|
{
|
||||||
"class_name": "物品-常用",
|
"class_name": "物品-常用",
|
||||||
"id": "thing",
|
"id": "thing",
|
||||||
"keys": [
|
"keys": ["item_Name.*"]
|
||||||
"item_Name.*"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"class_name": "载具-其他",
|
"class_name": "载具-其他",
|
||||||
@ -115,9 +113,7 @@
|
|||||||
{
|
{
|
||||||
"class_name": "载具-常用",
|
"class_name": "载具-常用",
|
||||||
"id": "vehicle",
|
"id": "vehicle",
|
||||||
"keys": [
|
"keys": ["vehicle_Name.*"]
|
||||||
"vehicle_Name.*"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "mission",
|
"id": "mission",
|
||||||
@ -562,4 +558,4 @@
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
};
|
@ -1,9 +1,7 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
import 'dart:convert';
|
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
import 'package:flutter/foundation.dart';
|
import 'package:flutter/foundation.dart';
|
||||||
import 'package:flutter/services.dart';
|
|
||||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
import 'package:starcitizen_doctor/common/utils/log.dart';
|
import 'package:starcitizen_doctor/common/utils/log.dart';
|
||||||
@ -13,6 +11,7 @@ import 'package:starcitizen_doctor/data/sc_localization_data.dart';
|
|||||||
import 'package:starcitizen_doctor/provider/unp4kc.dart';
|
import 'package:starcitizen_doctor/provider/unp4kc.dart';
|
||||||
|
|
||||||
import '../home_ui_model.dart';
|
import '../home_ui_model.dart';
|
||||||
|
import 'advanced_localization_ui.json.dart';
|
||||||
import 'localization_ui_model.dart';
|
import 'localization_ui_model.dart';
|
||||||
|
|
||||||
part 'advanced_localization_ui_model.g.dart';
|
part 'advanced_localization_ui_model.g.dart';
|
||||||
@ -151,8 +150,7 @@ class AdvancedLocalizationUIModel extends _$AdvancedLocalizationUIModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Future<AppAdvancedLocalizationData> _readClassJson() async {
|
Future<AppAdvancedLocalizationData> _readClassJson() async {
|
||||||
final s = await rootBundle.loadString("assets/advanced_localization.json");
|
return AppAdvancedLocalizationData.fromJson(advancedLocalizationJsonData);
|
||||||
return AppAdvancedLocalizationData.fromJson(json.decode(s));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<(String, String)> _readIni(LocalizationUIState localizationUIState,
|
Future<(String, String)> _readIni(LocalizationUIState localizationUIState,
|
||||||
|
@ -7,7 +7,7 @@ part of 'advanced_localization_ui_model.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
String _$advancedLocalizationUIModelHash() =>
|
String _$advancedLocalizationUIModelHash() =>
|
||||||
r'55c9d02d4c78112b2772f789c2758c3ea88808cb';
|
r'2db0a21dd98f5fb002469fcefe1bc1c0d514e135';
|
||||||
|
|
||||||
/// See also [AdvancedLocalizationUIModel].
|
/// See also [AdvancedLocalizationUIModel].
|
||||||
@ProviderFor(AdvancedLocalizationUIModel)
|
@ProviderFor(AdvancedLocalizationUIModel)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
[
|
final performanceUIConfJsonData = [
|
||||||
{
|
{
|
||||||
"key": "r_ssdo",
|
"key": "r_ssdo",
|
||||||
"name": "屏幕光线后处理",
|
"name": "屏幕光线后处理",
|
||||||
@ -319,4 +319,4 @@
|
|||||||
"value": 1,
|
"value": 1,
|
||||||
"group": "自定义"
|
"group": "自定义"
|
||||||
}
|
}
|
||||||
]
|
];
|
@ -1,9 +1,7 @@
|
|||||||
// ignore_for_file: avoid_build_context_in_providers, avoid_public_notifier_properties
|
// ignore_for_file: avoid_build_context_in_providers, avoid_public_notifier_properties
|
||||||
import 'dart:convert';
|
|
||||||
import 'dart:io';
|
import 'dart:io';
|
||||||
|
|
||||||
import 'package:fluent_ui/fluent_ui.dart';
|
import 'package:fluent_ui/fluent_ui.dart';
|
||||||
import 'package:flutter/services.dart';
|
|
||||||
import 'package:freezed_annotation/freezed_annotation.dart';
|
import 'package:freezed_annotation/freezed_annotation.dart';
|
||||||
import 'package:hive/hive.dart';
|
import 'package:hive/hive.dart';
|
||||||
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
import 'package:riverpod_annotation/riverpod_annotation.dart';
|
||||||
@ -14,6 +12,8 @@ import 'package:starcitizen_doctor/data/game_performance_data.dart';
|
|||||||
import 'package:starcitizen_doctor/generated/l10n.dart';
|
import 'package:starcitizen_doctor/generated/l10n.dart';
|
||||||
import 'package:starcitizen_doctor/ui/home/home_ui_model.dart';
|
import 'package:starcitizen_doctor/ui/home/home_ui_model.dart';
|
||||||
|
|
||||||
|
import 'performance_ui.json.dart';
|
||||||
|
|
||||||
part 'performance_ui_model.freezed.dart';
|
part 'performance_ui_model.freezed.dart';
|
||||||
|
|
||||||
part 'performance_ui_model.g.dart';
|
part 'performance_ui_model.g.dart';
|
||||||
@ -50,22 +50,16 @@ class HomePerformanceUIModel extends _$HomePerformanceUIModel {
|
|||||||
Future<void> _init() async {
|
Future<void> _init() async {
|
||||||
customizeCtrl.clear();
|
customizeCtrl.clear();
|
||||||
_inAppKeys.clear();
|
_inAppKeys.clear();
|
||||||
final String jsonString =
|
final performanceMap = <String, List<GamePerformanceData>>{};
|
||||||
await rootBundle.loadString('assets/performance.json');
|
for (var element in performanceUIConfJsonData) {
|
||||||
final list = json.decode(jsonString);
|
final item = GamePerformanceData.fromJson(element);
|
||||||
|
if (item.key != "customize") {
|
||||||
if (list is List) {
|
_inAppKeys.add(item.key ?? "");
|
||||||
final performanceMap = <String, List<GamePerformanceData>>{};
|
|
||||||
for (var element in list) {
|
|
||||||
final item = GamePerformanceData.fromJson(element);
|
|
||||||
if (item.key != "customize") {
|
|
||||||
_inAppKeys.add(item.key ?? "");
|
|
||||||
}
|
|
||||||
performanceMap[item.group!] ??= [];
|
|
||||||
performanceMap[item.group]?.add(item);
|
|
||||||
}
|
}
|
||||||
state = state.copyWith(performanceMap: performanceMap);
|
performanceMap[item.group!] ??= [];
|
||||||
|
performanceMap[item.group]?.add(item);
|
||||||
}
|
}
|
||||||
|
state = state.copyWith(performanceMap: performanceMap);
|
||||||
|
|
||||||
if (await confFile.exists()) {
|
if (await confFile.exists()) {
|
||||||
await _readConf();
|
await _readConf();
|
||||||
@ -155,11 +149,13 @@ class HomePerformanceUIModel extends _$HomePerformanceUIModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
clean(BuildContext context) async {
|
clean(BuildContext context) async {
|
||||||
state = state.copyWith(workingString: S.current.performance_info_delete_config_file);
|
state = state.copyWith(
|
||||||
|
workingString: S.current.performance_info_delete_config_file);
|
||||||
if (await confFile.exists()) {
|
if (await confFile.exists()) {
|
||||||
await confFile.delete(recursive: true);
|
await confFile.delete(recursive: true);
|
||||||
}
|
}
|
||||||
state = state.copyWith(workingString: S.current.performance_action_clear_shaders);
|
state = state.copyWith(
|
||||||
|
workingString: S.current.performance_action_clear_shaders);
|
||||||
if (!context.mounted) return;
|
if (!context.mounted) return;
|
||||||
await cleanShaderCache(context);
|
await cleanShaderCache(context);
|
||||||
state = state.copyWith(workingString: S.current.performance_info_done);
|
state = state.copyWith(workingString: S.current.performance_info_done);
|
||||||
@ -188,7 +184,8 @@ class HomePerformanceUIModel extends _$HomePerformanceUIModel {
|
|||||||
applyProfile(bool cleanShader) async {
|
applyProfile(bool cleanShader) async {
|
||||||
if (state.performanceMap == null) return;
|
if (state.performanceMap == null) return;
|
||||||
AnalyticsApi.touch("performance_apply");
|
AnalyticsApi.touch("performance_apply");
|
||||||
state = state.copyWith(workingString: S.current.performance_info_generate_config_file);
|
state = state.copyWith(
|
||||||
|
workingString: S.current.performance_info_generate_config_file);
|
||||||
String conf = "";
|
String conf = "";
|
||||||
for (var v in state.performanceMap!.entries) {
|
for (var v in state.performanceMap!.entries) {
|
||||||
for (var c in v.value) {
|
for (var c in v.value) {
|
||||||
@ -207,14 +204,16 @@ class HomePerformanceUIModel extends _$HomePerformanceUIModel {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
state = state.copyWith(workingString: S.current.performance_info_write_out_config_file);
|
state = state.copyWith(
|
||||||
|
workingString: S.current.performance_info_write_out_config_file);
|
||||||
if (await confFile.exists()) {
|
if (await confFile.exists()) {
|
||||||
await confFile.delete();
|
await confFile.delete();
|
||||||
}
|
}
|
||||||
await confFile.create();
|
await confFile.create();
|
||||||
await confFile.writeAsString(conf);
|
await confFile.writeAsString(conf);
|
||||||
if (cleanShader) {
|
if (cleanShader) {
|
||||||
state = state.copyWith(workingString: S.current.performance_action_clear_shaders);
|
state = state.copyWith(
|
||||||
|
workingString: S.current.performance_action_clear_shaders);
|
||||||
await cleanShaderCache(null);
|
await cleanShaderCache(null);
|
||||||
}
|
}
|
||||||
state = state.copyWith(workingString: S.current.performance_info_done);
|
state = state.copyWith(workingString: S.current.performance_info_done);
|
||||||
|
@ -7,7 +7,7 @@ part of 'performance_ui_model.dart';
|
|||||||
// **************************************************************************
|
// **************************************************************************
|
||||||
|
|
||||||
String _$homePerformanceUIModelHash() =>
|
String _$homePerformanceUIModelHash() =>
|
||||||
r'6ac9c9adc428120cb5ce71949221064c9e5d9385';
|
r'83fbdbbae287892dd0c67f5fd86d42a73d0ab91f';
|
||||||
|
|
||||||
/// See also [HomePerformanceUIModel].
|
/// See also [HomePerformanceUIModel].
|
||||||
@ProviderFor(HomePerformanceUIModel)
|
@ProviderFor(HomePerformanceUIModel)
|
||||||
|
Loading…
Reference in New Issue
Block a user