This commit is contained in:
kodjomoustapha 2023-08-02 12:23:47 +01:00
parent c1964580bb
commit 84a2e0bb78
9 changed files with 14 additions and 42 deletions

View file

@ -7,9 +7,9 @@ import 'package:dart_eval/stdlib/core.dart';
import 'package:desktop_webview_window/desktop_webview_window.dart';
import 'package:flutter/material.dart';
import 'package:flutter_inappwebview/flutter_inappwebview.dart';
import 'package:flutter_js/flutter_js.dart';
import 'package:intl/date_symbol_data_local.dart';
import 'package:intl/intl.dart';
import 'package:js_packer/js_packer.dart';
import 'package:json_path/json_path.dart';
import 'package:mangayomi/eval/bridge_class/model.dart';
import 'package:mangayomi/eval/bridge_class/video_model.dart';
@ -308,11 +308,13 @@ class MBridge {
static String evalJs(String code) {
try {
JavascriptRuntime? flutterJs;
flutterJs = getJavascriptRuntime();
final res = flutterJs.evaluate(code).stringResult;
flutterJs.dispose();
return res;
// JavascriptRuntime? flutterJs;
// flutterJs = getJavascriptRuntime();
// final res = flutterJs.evaluate(code).stringResult;
// flutterJs.dispose();
// return res;
final jsPacker = JSPacker(code);
return jsPacker.unpack() ?? "";
} catch (e) {
_botToast(e.toString());
throw Exception(e);

View file

@ -1,5 +1,5 @@
import 'package:flutter_js/flutter_js.dart';
import 'package:http/http.dart' as http;
import 'package:js_packer/js_packer.dart';
import 'package:mangayomi/models/video.dart';
import 'package:mangayomi/utils/extensions.dart';
import 'package:mangayomi/utils/xpath_selector.dart';
@ -22,7 +22,7 @@ class Mp4uploadExtractor {
.attrs;
if (scriptElementWithEval.isNotEmpty) {
script = _evalJs(script);
script = _evalJs(script)!;
} else {
final scriptElementWithSrc = xpathSelector(response.body)
.queryXPath('//script[contains(text(), "player.src")]/text()')
@ -50,10 +50,7 @@ class Mp4uploadExtractor {
}
}
String _evalJs(String script) {
JavascriptRuntime? flutterJs;
flutterJs = getJavascriptRuntime();
final res = flutterJs.evaluate(script).stringResult;
flutterJs.dispose();
return res;
String? _evalJs(String script) {
final jsPacker = JSPacker(script);
return jsPacker.unpack();
}

View file

@ -7,7 +7,6 @@
#include "generated_plugin_registrant.h"
#include <desktop_webview_window/desktop_webview_window_plugin.h>
#include <flutter_js/flutter_js_plugin.h>
#include <flutter_meedu_videoplayer/flutter_meedu_videoplayer_plugin.h>
#include <isar_flutter_libs/isar_flutter_libs_plugin.h>
#include <media_kit_libs_linux/media_kit_libs_linux_plugin.h>
@ -21,9 +20,6 @@ void fl_register_plugins(FlPluginRegistry* registry) {
g_autoptr(FlPluginRegistrar) desktop_webview_window_registrar =
fl_plugin_registry_get_registrar_for_plugin(registry, "DesktopWebviewWindowPlugin");
desktop_webview_window_plugin_register_with_registrar(desktop_webview_window_registrar);
g_autoptr(FlPluginRegistrar) flutter_js_registrar =
fl_plugin_registry_get_registrar_for_plugin(registry, "FlutterJsPlugin");
flutter_js_plugin_register_with_registrar(flutter_js_registrar);
g_autoptr(FlPluginRegistrar) flutter_meedu_videoplayer_registrar =
fl_plugin_registry_get_registrar_for_plugin(registry, "FlutterMeeduVideoplayerPlugin");
flutter_meedu_videoplayer_plugin_register_with_registrar(flutter_meedu_videoplayer_registrar);

View file

@ -4,7 +4,6 @@
list(APPEND FLUTTER_PLUGIN_LIST
desktop_webview_window
flutter_js
flutter_meedu_videoplayer
isar_flutter_libs
media_kit_libs_linux

View file

@ -7,7 +7,6 @@ import Foundation
import desktop_webview_window
import flutter_inappwebview
import flutter_js
import flutter_meedu_videoplayer
import flutter_web_auth_2
import isar_flutter_libs
@ -28,7 +27,6 @@ import window_to_front
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
DesktopWebviewWindowPlugin.register(with: registry.registrar(forPlugin: "DesktopWebviewWindowPlugin"))
InAppWebViewFlutterPlugin.register(with: registry.registrar(forPlugin: "InAppWebViewFlutterPlugin"))
FlutterJsPlugin.register(with: registry.registrar(forPlugin: "FlutterJsPlugin"))
FlutterMeeduVideoplayerPlugin.register(with: registry.registrar(forPlugin: "FlutterMeeduVideoplayerPlugin"))
FlutterWebAuth2Plugin.register(with: registry.registrar(forPlugin: "FlutterWebAuth2Plugin"))
IsarFlutterLibsPlugin.register(with: registry.registrar(forPlugin: "IsarFlutterLibsPlugin"))

View file

@ -494,14 +494,6 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.1.0"
flutter_js:
dependency: "direct main"
description:
name: flutter_js
sha256: "5bf5db354fe78fe24cb90a5fa6b4423d38712440c88e3445c3dc88bc134c452f"
url: "https://pub.dev"
source: hosted
version: "0.8.0"
flutter_lints:
dependency: "direct dev"
description:
@ -1458,14 +1450,6 @@ packages:
url: "https://pub.dev"
source: hosted
version: "1.2.0"
sync_http:
dependency: transitive
description:
name: sync_http
sha256: "7f0cd72eca000d2e026bcd6f990b81d0ca06022ef4e32fb257b30d3d1014a961"
url: "https://pub.dev"
source: hosted
version: "0.3.1"
synchronized:
dependency: transitive
description:

View file

@ -18,7 +18,7 @@ dependencies:
http: ^1.1.0
riverpod_annotation: ^2.1.1
html: ^0.15.4
flutter_js: ^0.8.0
# flutter_js: ^0.8.0
font_awesome_flutter: ^10.5.0
expandable_text: ^2.3.0
flex_color_scheme: ^7.2.0

View file

@ -7,7 +7,6 @@
#include "generated_plugin_registrant.h"
#include <desktop_webview_window/desktop_webview_window_plugin.h>
#include <flutter_js/flutter_js_plugin.h>
#include <flutter_meedu_videoplayer/flutter_meedu_videoplayer_plugin_c_api.h>
#include <fullscreen_window/fullscreen_window_plugin_c_api.h>
#include <isar_flutter_libs/isar_flutter_libs_plugin.h>
@ -24,8 +23,6 @@
void RegisterPlugins(flutter::PluginRegistry* registry) {
DesktopWebviewWindowPluginRegisterWithRegistrar(
registry->GetRegistrarForPlugin("DesktopWebviewWindowPlugin"));
FlutterJsPluginRegisterWithRegistrar(
registry->GetRegistrarForPlugin("FlutterJsPlugin"));
FlutterMeeduVideoplayerPluginCApiRegisterWithRegistrar(
registry->GetRegistrarForPlugin("FlutterMeeduVideoplayerPluginCApi"));
FullscreenWindowPluginCApiRegisterWithRegistrar(

View file

@ -4,7 +4,6 @@
list(APPEND FLUTTER_PLUGIN_LIST
desktop_webview_window
flutter_js
flutter_meedu_videoplayer
fullscreen_window
isar_flutter_libs