cloudflare verification

This commit is contained in:
nyne
2024-10-16 10:55:57 +08:00
parent 96ae6755bd
commit d01d0b5ddb
14 changed files with 591 additions and 35 deletions

View File

@@ -22,6 +22,7 @@ import 'package:venera/foundation/image_provider/cached_image.dart';
import 'package:venera/foundation/local.dart';
import 'package:venera/foundation/res.dart';
import 'package:venera/foundation/state_controller.dart';
import 'package:venera/network/cloudflare.dart';
import 'package:venera/pages/comic_page.dart';
import 'package:venera/pages/favorites/favorites_page.dart';
import 'package:venera/utils/ext.dart';

View File

@@ -16,6 +16,7 @@ class NetworkError extends StatelessWidget {
@override
Widget build(BuildContext context) {
var cfe = CloudflareException.fromString(message);
Widget body = Center(
child: Column(
mainAxisSize: MainAxisSize.min,
@@ -41,7 +42,7 @@ class NetworkError extends StatelessWidget {
height: 8,
),
Text(
message,
cfe == null ? message : "Cloudflare verification required".tl,
textAlign: TextAlign.center,
maxLines: 3,
),
@@ -50,7 +51,17 @@ class NetworkError extends StatelessWidget {
height: 12,
),
if (retry != null)
FilledButton(onPressed: retry, child: Text('重试'.tl))
if (cfe != null)
FilledButton(
onPressed: () => passCloudflare(
CloudflareException.fromString(message)!, retry!),
child: Text('Verify'.tl),
)
else
FilledButton(
onPressed: retry,
child: Text('Retry'.tl),
),
],
),
);