From b990f9cf87457f0364f3570684e47e730e247ba1 Mon Sep 17 00:00:00 2001 From: bggRGjQaUbCoE Date: Sat, 31 May 2025 20:02:22 +0800 Subject: [PATCH] Revert "opt: account (#846)" This reverts commit ab57aee8c1b9f823c7dfe4908d26445942a262c5. --- lib/utils/accounts/account.dart | 65 +++++++++++++++++---------------- 1 file changed, 33 insertions(+), 32 deletions(-) diff --git a/lib/utils/accounts/account.dart b/lib/utils/accounts/account.dart index 06f5fa5a..348e1d8c 100644 --- a/lib/utils/accounts/account.dart +++ b/lib/utils/accounts/account.dart @@ -5,15 +5,15 @@ import 'package:cookie_jar/cookie_jar.dart'; import 'package:hive/hive.dart'; abstract class Account { - bool get isLogin; - DefaultCookieJar get cookieJar; - String? get accessKey; - String? get refresh; - Set get type; + final bool isLogin = false; + late final DefaultCookieJar cookieJar; + String? accessKey; + String? refresh; + late final Set type; - int get mid; - String get csrf; - Map get headers; + final int mid = 0; + late String csrf; + final Map headers = const {}; // bool activited = false; @@ -29,16 +29,16 @@ class LoginAccount implements Account { final bool isLogin = true; @override @HiveField(0) - final DefaultCookieJar cookieJar; + late final DefaultCookieJar cookieJar; @override @HiveField(1) - final String? accessKey; + String? accessKey; @override @HiveField(2) - final String? refresh; + String? refresh; @override @HiveField(3) - final Set type; + late final Set type; @override late final int mid = int.parse(_midStr); @@ -49,7 +49,7 @@ class LoginAccount implements Account { 'x-bili-aurora-eid': Utils.genAuroraEid(mid), }; @override - late final String csrf = + late String csrf = cookieJar.domainCookies['bilibili.com']!['/']!['bili_jct']!.cookie.value; @override @@ -71,19 +71,19 @@ class LoginAccount implements Account { late final Box _box = Accounts.account; - LoginAccount( - this.cookieJar, - this.accessKey, - this.refresh, [ - Set? type, - ]) : type = type ?? {}; + LoginAccount(this.cookieJar, this.accessKey, this.refresh, + [Set? type]) + : type = type ?? {}; - factory LoginAccount.fromJson(Map json) => LoginAccount( - BiliCookieJar.fromJson(json['cookies'])..setBuvid3(), - json['accessKey'], - json['refresh'], - (json['type'] as Iterable?)?.map((i) => AccountType.values[i]).toSet(), - ); + LoginAccount.fromJson(Map json) { + cookieJar = BiliCookieJar.fromJson(json['cookies']); + accessKey = json['accessKey']; + refresh = json['refresh']; + type = (json['type'] as Iterable?) + ?.map((i) => AccountType.values[i]) + .toSet() ?? + {}; + } @override int get hashCode => mid.hashCode; @@ -97,18 +97,17 @@ class AnonymousAccount implements Account { @override final bool isLogin = false; @override - final DefaultCookieJar cookieJar = DefaultCookieJar(ignoreExpires: true) - ..setBuvid3(); + late final DefaultCookieJar cookieJar; @override - final String? accessKey = null; + String? accessKey; @override - final String? refresh = null; + String? refresh; @override - final Set type = {}; + Set type = {}; @override final int mid = 0; @override - final String csrf = ''; + String csrf = ''; @override final Map headers = const {}; @@ -126,7 +125,9 @@ class AnonymousAccount implements Account { static final _instance = AnonymousAccount._(); - AnonymousAccount._(); + AnonymousAccount._() { + cookieJar = DefaultCookieJar(ignoreExpires: true)..setBuvid3(); + } factory AnonymousAccount() => _instance;