mirror of
https://github.com/venera-app/venera.git
synced 2025-12-16 23:11:15 +00:00
Compare commits
1 Commits
version-1.
...
feat/login
| Author | SHA1 | Date | |
|---|---|---|---|
| 5ccf0eea43 |
@@ -13,7 +13,7 @@ export "widget_utils.dart";
|
|||||||
export "context.dart";
|
export "context.dart";
|
||||||
|
|
||||||
class _App {
|
class _App {
|
||||||
final version = "1.6.0";
|
final version = "1.5.3";
|
||||||
|
|
||||||
bool get isAndroid => Platform.isAndroid;
|
bool get isAndroid => Platform.isAndroid;
|
||||||
|
|
||||||
|
|||||||
@@ -1245,6 +1245,15 @@ class _LoginPageState extends State<_LoginPage> {
|
|||||||
if (widget.config.checkLoginStatus != null &&
|
if (widget.config.checkLoginStatus != null &&
|
||||||
widget.config.checkLoginStatus!(url, title)) {
|
widget.config.checkLoginStatus!(url, title)) {
|
||||||
var cookies = (await c.getCookies(url)) ?? [];
|
var cookies = (await c.getCookies(url)) ?? [];
|
||||||
|
var localStorageItems = await c.webStorage.localStorage.getItems();
|
||||||
|
var mappedLocalStorage = <String, dynamic>{};
|
||||||
|
for (var item in localStorageItems) {
|
||||||
|
if (item.key != null) {
|
||||||
|
mappedLocalStorage[item.key!] = item.value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
widget.source.data['_localStorage'] = mappedLocalStorage;
|
||||||
|
await widget.source.saveData();
|
||||||
SingleInstanceCookieJar.instance?.saveFromResponse(
|
SingleInstanceCookieJar.instance?.saveFromResponse(
|
||||||
Uri.parse(url),
|
Uri.parse(url),
|
||||||
cookies,
|
cookies,
|
||||||
@@ -1306,6 +1315,20 @@ class _LoginPageState extends State<_LoginPage> {
|
|||||||
Uri.parse(url),
|
Uri.parse(url),
|
||||||
cookies,
|
cookies,
|
||||||
);
|
);
|
||||||
|
var localStorageJson = await webview.evaluateJavascript(
|
||||||
|
"JSON.stringify(window.localStorage);",
|
||||||
|
);
|
||||||
|
var localStorage = <String, dynamic>{};
|
||||||
|
try {
|
||||||
|
var decoded = jsonDecode(localStorageJson ?? '');
|
||||||
|
if (decoded is Map<String, dynamic>) {
|
||||||
|
localStorage = decoded;
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
Log.error("ComicSourcePage", "Failed to parse localStorage JSON\n$e");
|
||||||
|
}
|
||||||
|
widget.source.data['_localStorage'] = localStorage;
|
||||||
|
await widget.source.saveData();
|
||||||
success = true;
|
success = true;
|
||||||
widget.config.onLoginWithWebviewSuccess?.call();
|
widget.config.onLoginWithWebviewSuccess?.call();
|
||||||
webview.close();
|
webview.close();
|
||||||
|
|||||||
@@ -1132,4 +1132,4 @@ packages:
|
|||||||
version: "0.0.12"
|
version: "0.0.12"
|
||||||
sdks:
|
sdks:
|
||||||
dart: ">=3.8.0 <4.0.0"
|
dart: ">=3.8.0 <4.0.0"
|
||||||
flutter: ">=3.35.7"
|
flutter: ">=3.35.5"
|
||||||
|
|||||||
@@ -2,11 +2,11 @@ name: venera
|
|||||||
description: "A comic app."
|
description: "A comic app."
|
||||||
publish_to: 'none'
|
publish_to: 'none'
|
||||||
|
|
||||||
version: 1.6.0+160
|
version: 1.5.3+153
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
sdk: '>=3.8.0 <4.0.0'
|
sdk: '>=3.8.0 <4.0.0'
|
||||||
flutter: 3.35.7
|
flutter: 3.35.5
|
||||||
|
|
||||||
dependencies:
|
dependencies:
|
||||||
flutter:
|
flutter:
|
||||||
|
|||||||
Reference in New Issue
Block a user