- 抽出 lib/core 的日期/JSON 工具,收敛各页重复解析 - 主页与音乐风险页拆成组件,风险功能共用一套运行框架 - 修复设置页作为主页页签保存时弹掉根路由导致的黑屏 - 登录对齐 Astral aimedb 协议:84 位二维码校验、签名与请求头修正, 补 GlobalSign 中间证书;Windows 改用 WinHTTP 绕过服务端对 BoringSSL 的 TLS 指纹拦截(证书校验保持开启) - 补开发预览数据与测试
48 lines
1.3 KiB
Dart
48 lines
1.3 KiB
Dart
import 'package:flutter/material.dart';
|
|
|
|
import '../../config/strings.dart';
|
|
import '../../models/user_preview.dart';
|
|
import 'home_common.dart';
|
|
|
|
class PreviewGameInfoCard extends StatelessWidget {
|
|
final UserPreviewDataBean preview;
|
|
|
|
const PreviewGameInfoCard({super.key, required this.preview});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return HomeSectionCard(
|
|
title: AppStrings.gameInfo,
|
|
rows: [
|
|
(AppStrings.lastGame, preview.lastGameId),
|
|
(AppStrings.lastPlay, preview.lastPlayDate),
|
|
(AppStrings.lastLogin, preview.lastLoginDate),
|
|
(AppStrings.romVersion, preview.lastRomVersion),
|
|
(AppStrings.dataVersion, preview.lastDataVersion),
|
|
],
|
|
);
|
|
}
|
|
}
|
|
|
|
class PreviewStatusCard extends StatelessWidget {
|
|
final UserPreviewDataBean preview;
|
|
|
|
const PreviewStatusCard({super.key, required this.preview});
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return HomeStatusCard(
|
|
chips: [
|
|
HomeStatusChip(AppStrings.netMember, preview.isNetMember),
|
|
HomeStatusChip(AppStrings.inherit, preview.isInherit),
|
|
HomeStatusChip(
|
|
AppStrings.banState,
|
|
preview.banState == 0,
|
|
trueText: AppStrings.clean,
|
|
falseText: '已封禁 (${preview.banState})',
|
|
),
|
|
],
|
|
);
|
|
}
|
|
}
|