refactor CodeEditor & update package
This commit is contained in:
parent
9a20e91e92
commit
6deffa4b97
8 changed files with 159 additions and 203 deletions
|
|
@ -42,12 +42,12 @@ void main(List<String> args) async {
|
|||
}
|
||||
if (!kIsWeb && defaultTargetPlatform == TargetPlatform.windows) {
|
||||
final availableVersion = await WebViewEnvironment.getAvailableVersion();
|
||||
assert(availableVersion != null,
|
||||
'Failed to find an installed WebView2 runtime or non-stable Microsoft Edge installation.');
|
||||
final document = await getApplicationDocumentsDirectory();
|
||||
webViewEnvironment = await WebViewEnvironment.create(
|
||||
settings: WebViewEnvironmentSettings(
|
||||
userDataFolder: p.join(document.path, 'flutter_inappwebview')));
|
||||
if (availableVersion != null) {
|
||||
final document = await getApplicationDocumentsDirectory();
|
||||
webViewEnvironment = await WebViewEnvironment.create(
|
||||
settings: WebViewEnvironmentSettings(
|
||||
userDataFolder: p.join(document.path, 'flutter_inappwebview')));
|
||||
}
|
||||
}
|
||||
isar = await StorageProvider().initDB(null, inspector: kDebugMode);
|
||||
await StorageProvider().requestPermission();
|
||||
|
|
@ -104,7 +104,6 @@ class _MyAppState extends ConsumerState<MyApp> {
|
|||
unselectedToggleIsColored: true,
|
||||
inputDecoratorRadius: 24.0,
|
||||
chipRadius: 24.0,
|
||||
dialogBackgroundSchemeColor: SchemeColor.background,
|
||||
),
|
||||
useMaterial3ErrorColors: true,
|
||||
visualDensity: FlexColorScheme.comfortablePlatformDensity,
|
||||
|
|
@ -123,7 +122,6 @@ class _MyAppState extends ConsumerState<MyApp> {
|
|||
unselectedToggleIsColored: true,
|
||||
inputDecoratorRadius: 24.0,
|
||||
chipRadius: 24.0,
|
||||
dialogBackgroundSchemeColor: SchemeColor.background,
|
||||
),
|
||||
useMaterial3ErrorColors: true,
|
||||
visualDensity: FlexColorScheme.comfortablePlatformDensity,
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_code_editor/flutter_code_editor.dart';
|
||||
import 'package:flutter_highlight/themes/atom-one-dark.dart';
|
||||
import 'package:highlight/highlight.dart';
|
||||
import 'package:json_view/json_view.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
import 'package:highlight/languages/dart.dart';
|
||||
import 'package:highlight/languages/javascript.dart';
|
||||
import 'package:mangayomi/eval/lib.dart';
|
||||
import 'package:mangayomi/main.dart';
|
||||
import 'package:mangayomi/models/manga.dart';
|
||||
import 'package:mangayomi/models/source.dart';
|
||||
import 'package:mangayomi/modules/manga/home/widget/filter_widget.dart';
|
||||
import 'package:mangayomi/modules/more/settings/appearance/providers/app_font_family.dart';
|
||||
import 'package:mangayomi/providers/l10n_providers.dart';
|
||||
import 'package:mangayomi/services/get_detail.dart';
|
||||
import 'package:mangayomi/services/get_filter_list.dart';
|
||||
|
|
@ -18,41 +15,34 @@ import 'package:mangayomi/services/get_popular.dart';
|
|||
import 'package:mangayomi/services/search.dart';
|
||||
import 'package:mangayomi/utils/extensions/build_context_extensions.dart';
|
||||
import 'package:mangayomi/utils/log/log.dart';
|
||||
import 'package:re_editor/re_editor.dart';
|
||||
import 'package:re_highlight/languages/dart.dart';
|
||||
import 'package:re_highlight/languages/javascript.dart';
|
||||
import 'package:re_highlight/styles/vs2015.dart';
|
||||
|
||||
class CodeEditor extends ConsumerStatefulWidget {
|
||||
class CodeEditorPage extends ConsumerStatefulWidget {
|
||||
final int? sourceId;
|
||||
const CodeEditor({super.key, this.sourceId});
|
||||
const CodeEditorPage({super.key, this.sourceId});
|
||||
|
||||
@override
|
||||
ConsumerState<CodeEditor> createState() => _CodeEditorState();
|
||||
ConsumerState<CodeEditorPage> createState() => _CodeEditorPageState();
|
||||
}
|
||||
|
||||
Mode getSourceMode(Source? source) {
|
||||
return switch (source?.sourceCodeLanguage) {
|
||||
SourceCodeLanguage.dart => dart,
|
||||
SourceCodeLanguage.javascript => javascript,
|
||||
_ => dart,
|
||||
};
|
||||
}
|
||||
|
||||
class _CodeEditorState extends ConsumerState<CodeEditor> {
|
||||
class _CodeEditorPageState extends ConsumerState<CodeEditorPage> {
|
||||
dynamic result;
|
||||
late final source =
|
||||
widget.sourceId == null ? null : isar.sources.getSync(widget.sourceId!);
|
||||
late final controller = CodeController(
|
||||
text: source?.sourceCode ?? "",
|
||||
language: getSourceMode(source),
|
||||
namedSectionParser: const BracketsStartEndNamedSectionParser());
|
||||
final CodeLineEditingController _controller = CodeLineEditingController();
|
||||
|
||||
List<(String, int)> _getServices(BuildContext context) => [
|
||||
("getPopular", 0),
|
||||
("getLatestUpdates", 1),
|
||||
("search", 2),
|
||||
("getDetail", 3),
|
||||
("getPageList", 4),
|
||||
("getVideoList", 5),
|
||||
("getHtmlContent", 6),
|
||||
("cleanHtmlContent", 7)
|
||||
if (source?.itemType == ItemType.manga) ("getPageList", 4),
|
||||
if (source?.itemType == ItemType.anime) ("getVideoList", 5),
|
||||
if (source?.itemType == ItemType.novel) ("getHtmlContent", 6),
|
||||
if (source?.itemType == ItemType.novel) ("cleanHtmlContent", 7)
|
||||
];
|
||||
|
||||
int _serviceIndex = 0;
|
||||
|
|
@ -69,6 +59,7 @@ class _CodeEditorState extends ConsumerState<CodeEditor> {
|
|||
final _scrollController = ScrollController();
|
||||
@override
|
||||
void initState() {
|
||||
_controller.text = source?.sourceCode ?? "";
|
||||
useLogger = true;
|
||||
_logStreamController.stream.asBroadcastStream().listen((event) async {
|
||||
_logsNotifier.value.add(event);
|
||||
|
|
@ -138,12 +129,14 @@ class _CodeEditorState extends ConsumerState<CodeEditor> {
|
|||
super.dispose();
|
||||
_logsNotifier.value.clear();
|
||||
_scrollController.dispose();
|
||||
_controller.dispose();
|
||||
useLogger = false;
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final filterList = source != null ? getFilterList(source: source!) : [];
|
||||
final appFontFamily = ref.watch(appFontFamilyProvider);
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
leading: BackButton(onPressed: () {
|
||||
|
|
@ -154,35 +147,49 @@ class _CodeEditorState extends ConsumerState<CodeEditor> {
|
|||
body: Column(
|
||||
children: [
|
||||
Expanded(
|
||||
flex: 7,
|
||||
child: Row(
|
||||
children: [
|
||||
Flexible(
|
||||
flex: 7,
|
||||
child: CodeTheme(
|
||||
data: CodeThemeData(styles: atomOneDarkTheme),
|
||||
child: SingleChildScrollView(
|
||||
child: CodeField(
|
||||
controller: controller,
|
||||
gutterStyle: const GutterStyle(
|
||||
textStyle: TextStyle(
|
||||
color: Colors.grey,
|
||||
height:
|
||||
1.5, // Issue #307 fix, found in package: flutter-code-editor issue #270
|
||||
),
|
||||
showLineNumbers: true,
|
||||
),
|
||||
onChanged: (a) {
|
||||
setState(() {
|
||||
source?.sourceCode = a;
|
||||
});
|
||||
if (source != null && mounted) {
|
||||
isar.writeTxnSync(
|
||||
() => isar.sources.putSync(source!));
|
||||
}
|
||||
},
|
||||
child: CodeEditor(
|
||||
style: CodeEditorStyle(
|
||||
fontSize: 15,
|
||||
fontFamily: appFontFamily,
|
||||
codeTheme: CodeHighlightTheme(languages: {
|
||||
'dart': CodeHighlightThemeMode(mode: langDart),
|
||||
'javascript':
|
||||
CodeHighlightThemeMode(mode: langJavascript),
|
||||
}, theme: vs2015Theme),
|
||||
),
|
||||
),
|
||||
)),
|
||||
controller: _controller,
|
||||
onChanged: (_) {
|
||||
source?.sourceCode = _controller.text;
|
||||
if (source != null && context.mounted) {
|
||||
isar.writeTxnSync(
|
||||
() => isar.sources.putSync(source!));
|
||||
}
|
||||
},
|
||||
wordWrap: false,
|
||||
indicatorBuilder: (context, editingController,
|
||||
chunkController, notifier) {
|
||||
return Row(
|
||||
children: [
|
||||
DefaultCodeLineNumber(
|
||||
controller: editingController,
|
||||
notifier: notifier,
|
||||
),
|
||||
DefaultCodeChunkIndicator(
|
||||
width: 20,
|
||||
controller: chunkController,
|
||||
notifier: notifier)
|
||||
],
|
||||
);
|
||||
},
|
||||
sperator: Container(
|
||||
width: 1,
|
||||
color: context.dynamicThemeColor,
|
||||
))),
|
||||
if (context.isTablet)
|
||||
Flexible(
|
||||
flex: 3,
|
||||
|
|
@ -190,22 +197,27 @@ class _CodeEditorState extends ConsumerState<CodeEditor> {
|
|||
children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: DropdownButton(
|
||||
child: DropdownButton<(String, int)>(
|
||||
icon: const Icon(Icons.keyboard_arrow_down),
|
||||
isExpanded: true,
|
||||
value: _serviceIndex,
|
||||
hint: Text(_getServices(context)[_serviceIndex].$1,
|
||||
value: _getServices(context).firstWhere(
|
||||
(element) => element.$2 == _serviceIndex),
|
||||
hint: Text(
|
||||
_getServices(context)
|
||||
.firstWhere((element) =>
|
||||
element.$2 == _serviceIndex)
|
||||
.$1,
|
||||
style: const TextStyle(fontSize: 13)),
|
||||
items: _getServices(context)
|
||||
.map((e) => DropdownMenuItem(
|
||||
value: e.$2,
|
||||
value: e,
|
||||
child: Text(e.$1,
|
||||
style: const TextStyle(fontSize: 13)),
|
||||
))
|
||||
.toList(),
|
||||
onChanged: (v) {
|
||||
setState(() {
|
||||
_serviceIndex = v!;
|
||||
_serviceIndex = v!.$2;
|
||||
});
|
||||
},
|
||||
),
|
||||
|
|
@ -239,10 +251,8 @@ class _CodeEditorState extends ConsumerState<CodeEditor> {
|
|||
children: [
|
||||
ElevatedButton(
|
||||
onPressed: () async {
|
||||
setState(() {
|
||||
source?.sourceCode = controller.text;
|
||||
});
|
||||
if (source != null && mounted) {
|
||||
source?.sourceCode = _controller.text;
|
||||
if (source != null && context.mounted) {
|
||||
isar.writeTxnSync(
|
||||
() => isar.sources.putSync(source!));
|
||||
}
|
||||
|
|
@ -306,13 +316,13 @@ class _CodeEditorState extends ConsumerState<CodeEditor> {
|
|||
result = (await service
|
||||
.cleanHtmlContent(_html));
|
||||
}
|
||||
if (mounted) {
|
||||
if (context.mounted) {
|
||||
setState(() {
|
||||
_isLoading = false;
|
||||
});
|
||||
}
|
||||
} catch (e) {
|
||||
if (mounted) {
|
||||
if (context.mounted) {
|
||||
setState(() {
|
||||
_error = true;
|
||||
_errorText = e.toString();
|
||||
|
|
@ -347,7 +357,8 @@ class _CodeEditorState extends ConsumerState<CodeEditor> {
|
|||
}
|
||||
final res =
|
||||
await filterDialog(context);
|
||||
if (res == 'filter' && mounted) {
|
||||
if (res == 'filter' &&
|
||||
context.mounted) {
|
||||
setState(() {
|
||||
result = null;
|
||||
_isLoading = true;
|
||||
|
|
|
|||
|
|
@ -34,7 +34,6 @@ class ImageViewPaged extends ConsumerWidget {
|
|||
image: image,
|
||||
fit: getBoxFit(scaleType),
|
||||
filterQuality: FilterQuality.medium,
|
||||
enableMemoryCache: true,
|
||||
mode: ExtendedImageMode.gesture,
|
||||
handleLoadingProgress: true,
|
||||
loadStateChanged: loadStateChanged,
|
||||
|
|
|
|||
|
|
@ -31,7 +31,6 @@ class ImageViewVertical extends ConsumerWidget {
|
|||
filterQuality: FilterQuality.medium,
|
||||
handleLoadingProgress: true,
|
||||
fit: getBoxFit(ref.watch(scaleTypeStateProvider)),
|
||||
enableMemoryCache: true,
|
||||
enableLoadState: true,
|
||||
loadStateChanged: (state) {
|
||||
if (state.extendedImageLoadState == LoadState.completed) {
|
||||
|
|
|
|||
|
|
@ -559,13 +559,13 @@ class RouterNotifier extends ChangeNotifier {
|
|||
name: "codeEditor",
|
||||
builder: (context, state) {
|
||||
final sourceId = state.extra as int?;
|
||||
return CodeEditor(sourceId: sourceId);
|
||||
return CodeEditorPage(sourceId: sourceId);
|
||||
},
|
||||
pageBuilder: (context, state) {
|
||||
final sourceId = state.extra as int?;
|
||||
return transitionPage(
|
||||
key: state.pageKey,
|
||||
child: CodeEditor(sourceId: sourceId),
|
||||
child: CodeEditorPage(sourceId: sourceId),
|
||||
);
|
||||
},
|
||||
),
|
||||
|
|
|
|||
|
|
@ -19,7 +19,6 @@ Widget cachedNetworkImage(
|
|||
height: height,
|
||||
fit: fit,
|
||||
filterQuality: FilterQuality.medium,
|
||||
enableMemoryCache: true,
|
||||
mode: ExtendedImageMode.gesture,
|
||||
handleLoadingProgress: true,
|
||||
loadStateChanged: (state) {
|
||||
|
|
|
|||
196
pubspec.lock
196
pubspec.lock
|
|
@ -42,10 +42,10 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: archive
|
||||
sha256: "08064924cbf0ab88280a0c3f60db9dd24fec693927e725ecb176f16c629d1cb8"
|
||||
sha256: "6199c74e3db4fbfbd04f66d739e72fe11c8a8957d5f219f1f4482dbde6420b5a"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.0.1"
|
||||
version: "4.0.2"
|
||||
args:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -78,14 +78,6 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.1.23"
|
||||
autotrie:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: autotrie
|
||||
sha256: "55da6faefb53cfcb0abb2f2ca8636123fb40e35286bb57440d2cf467568188f8"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.0"
|
||||
boolean_selector:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -214,14 +206,6 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.3.0"
|
||||
charcode:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: charcode
|
||||
sha256: fb0f1107cac15a5ea6ef0a6ef71a807b9e4267c713bb93e00e92d737cc8dbd8a
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.4.0"
|
||||
checked_yaml:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -234,10 +218,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: chewie
|
||||
sha256: "335df378c025588aef400c704bd71f0daea479d4cd57c471c88c056c1144e7cd"
|
||||
sha256: "28d77bb89787b41430202fee9509289d75f3aa7fac408be1c0a74cb487e3bdba"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.8.5"
|
||||
version: "1.9.0"
|
||||
cli_util:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -298,10 +282,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: csslib
|
||||
sha256: "831883fb353c8bdc1d71979e5b342c7d88acfbc643113c14ae51e2442ea0f20f"
|
||||
sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.17.3"
|
||||
version: "1.0.2"
|
||||
cupertino_icons:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -391,14 +375,6 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "5.0.3"
|
||||
equatable:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: equatable
|
||||
sha256: "567c64b3cb4cf82397aac55f4f0cbd3ca20d77c6c03bedbc4ceaddc08904aef7"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.7"
|
||||
exception_templates:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -427,10 +403,10 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: extended_image
|
||||
sha256: "613875dc319f17546ea07499b5f0774755709a19a36dfde812e5eda9eb7a5c8c"
|
||||
sha256: "85199f9233e03abc2ce2e68cbb2991648666af4a527ae4e6250935be8edfddae"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "9.0.7"
|
||||
version: "9.1.0"
|
||||
extended_image_library:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -491,18 +467,18 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: flex_color_scheme
|
||||
sha256: "32914024a4f404d90ff449f58d279191675b28e7c08824046baf06826e99d984"
|
||||
sha256: "09bea5d776f694c5a67f2229f2aa500cc7cce369322dc6500ab01cf9ad1b4e1a"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "7.3.1"
|
||||
version: "8.1.0"
|
||||
flex_seed_scheme:
|
||||
dependency: "direct overridden"
|
||||
dependency: transitive
|
||||
description:
|
||||
name: flex_seed_scheme
|
||||
sha256: fb66cdb8ca89084e79efcad2bc2d9deb144666875116f08cdd8d9f8238c8b3ab
|
||||
sha256: d3ba3c5c92d2d79d45e94b4c6c71d01fac3c15017da1545880c53864da5dfeb0
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.0"
|
||||
version: "3.5.0"
|
||||
flutter:
|
||||
dependency: "direct main"
|
||||
description: flutter
|
||||
|
|
@ -516,22 +492,6 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.4.1"
|
||||
flutter_code_editor:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: flutter_code_editor
|
||||
sha256: "505ad56dcc8a7be4b782c8113574571bc4b9723499b0c1f385b3e2c3fae11f5d"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.3.2"
|
||||
flutter_highlight:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: flutter_highlight
|
||||
sha256: "7b96333867aa07e122e245c033b8ad622e4e3a42a1a2372cbb098a2541d8782c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.7.0"
|
||||
flutter_inappwebview:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -792,10 +752,10 @@ packages:
|
|||
dependency: "direct main"
|
||||
description:
|
||||
name: go_router
|
||||
sha256: "2fd11229f59e23e967b0775df8d5948a519cd7e1e8b6e849729e010587b46539"
|
||||
sha256: "7c2d40b59890a929824f30d442e810116caf5088482629c894b9e4478c67472d"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "14.6.2"
|
||||
version: "14.6.3"
|
||||
google_fonts:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -820,30 +780,14 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "6.0.0"
|
||||
highlight:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: highlight
|
||||
sha256: "5353a83ffe3e3eca7df0abfb72dcf3fa66cc56b953728e7113ad4ad88497cf21"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.7.0"
|
||||
hive:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: hive
|
||||
sha256: "8dcf6db979d7933da8217edcec84e9df1bdb4e4edc7fc77dbd5aa74356d6d941"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.2.3"
|
||||
html:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: html
|
||||
sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a"
|
||||
sha256: "1fc58edeaec4307368c60d59b7e15b9d658b57d7f3125098b6294153c75337ec"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.15.4"
|
||||
version: "0.15.5"
|
||||
http:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -880,18 +824,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: http_parser
|
||||
sha256: "76d306a1c3afb33fe82e2bbacad62a61f409b5634c915fceb0d799de1a913360"
|
||||
sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.1"
|
||||
version: "4.1.2"
|
||||
image:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: image
|
||||
sha256: "599d08e369969bdf83138f5b4e0a7e823d3f992f23b8a64dd626877c37013533"
|
||||
sha256: "8346ad4b5173924b5ddddab782fc7d8a6300178c8b1dc427775405a01701c4a6"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.4.0"
|
||||
version: "4.5.2"
|
||||
infinite_listview:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -948,6 +892,22 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.1.0+1"
|
||||
isolate_contactor:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: isolate_contactor
|
||||
sha256: "6ba8434ceb58238a1389d6365111a3efe7baa1c68a66f4db6d63d351cf6c3a0f"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.0"
|
||||
isolate_manager:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: isolate_manager
|
||||
sha256: "22ed0c25f80ec3b5f21e3a55d060f4650afff33f27c2dff34c0f9409d5759ae5"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "4.1.5+1"
|
||||
js:
|
||||
dependency: "direct overridden"
|
||||
description:
|
||||
|
|
@ -1044,22 +1004,14 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.1"
|
||||
linked_scroll_controller:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: linked_scroll_controller
|
||||
sha256: e6020062bcf4ffc907ee7fd090fa971e65d8dfaac3c62baf601a3ced0b37986a
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.2.0"
|
||||
lints:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: lints
|
||||
sha256: "4a16b3f03741e1252fda5de3ce712666d010ba2122f8e912c94f9f7b90e1a4c3"
|
||||
sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "5.1.0"
|
||||
version: "5.1.1"
|
||||
logging:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1191,14 +1143,6 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.0"
|
||||
mocktail:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: mocktail
|
||||
sha256: "890df3f9688106f25755f26b1c60589a92b3ab91a22b8b224947ad041bf172d8"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.4"
|
||||
nested:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1443,10 +1387,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: pubspec_parse
|
||||
sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8
|
||||
sha256: "0560ba233314abbed0a48a2956f7f022cce7c3e1e73df540277da7544cad4082"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.3.0"
|
||||
version: "1.5.0"
|
||||
quiver:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1463,6 +1407,22 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.2.6"
|
||||
re_editor:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: re_editor
|
||||
sha256: "2169c114c7877bcaae72d6e8b69cdaa2a9cded69a51e3cf26209dad4a3ed2b9c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.6.0"
|
||||
re_highlight:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: re_highlight
|
||||
sha256: "6c4ac3f76f939fb7ca9df013df98526634e17d8f7460e028bd23a035870024f2"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.0.3"
|
||||
rfc_6901:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1711,10 +1671,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: sqflite_darwin
|
||||
sha256: "96a698e2bc82bd770a4d6aab00b42396a7c63d9e33513a56945cbccb594c2474"
|
||||
sha256: "22adfd9a2c7d634041e96d6241e6e1c8138ca6817018afc5d443fef91dcefa9c"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.4.1"
|
||||
version: "2.4.1+1"
|
||||
sqflite_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1811,14 +1771,6 @@ packages:
|
|||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.2"
|
||||
tuple:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: tuple
|
||||
sha256: a97ce2013f240b2f3807bcbaf218765b6f301c3eff91092bcfa23a039e7dd151
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.0.2"
|
||||
typed_data:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1927,10 +1879,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: vector_graphics_codec
|
||||
sha256: "2430b973a4ca3c4dbc9999b62b8c719a160100dcbae5c819bae0cacce32c9cdb"
|
||||
sha256: "99fd9fbd34d9f9a32efd7b6a6aae14125d8237b10403b422a6a6dfeac2806146"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.1.12"
|
||||
version: "1.1.13"
|
||||
vector_graphics_compiler:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -1959,10 +1911,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: video_player_android
|
||||
sha256: "391e092ba4abe2f93b3e625bd6b6a6ec7d7414279462c1c0ee42b5ab8d0a0898"
|
||||
sha256: "7018dbcb395e2bca0b9a898e73989e67c0c4a5db269528e1b036ca38bcca0d0b"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.7.16"
|
||||
version: "2.7.17"
|
||||
video_player_avfoundation:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -2007,18 +1959,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: wakelock_plus
|
||||
sha256: bf4ee6f17a2fa373ed3753ad0e602b7603f8c75af006d5b9bdade263928c0484
|
||||
sha256: "36c88af0b930121941345306d259ec4cc4ecca3b151c02e3a9e71aede83c615e"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.2.8"
|
||||
version: "1.2.10"
|
||||
wakelock_plus_platform_interface:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: wakelock_plus_platform_interface
|
||||
sha256: "422d1cdbb448079a8a62a5a770b69baa489f8f7ca21aef47800c726d404f9d16"
|
||||
sha256: "70e780bc99796e1db82fe764b1e7dcb89a86f1e5b3afb1db354de50f2e41eb7a"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.2.1"
|
||||
version: "1.2.2"
|
||||
watcher:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
|
@ -2087,10 +2039,10 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: win32
|
||||
sha256: "8b338d4486ab3fbc0ba0db9f9b4f5239b6697fcee427939a40e720cbb9ee0a69"
|
||||
sha256: "154360849a56b7b67331c21f09a386562d88903f90a1099c5987afc1912e1f29"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "5.9.0"
|
||||
version: "5.10.0"
|
||||
window_manager:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
|
|
@ -2151,18 +2103,18 @@ packages:
|
|||
dependency: transitive
|
||||
description:
|
||||
name: yaml
|
||||
sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5"
|
||||
sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.1.2"
|
||||
version: "3.1.3"
|
||||
yaml_edit:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: yaml_edit
|
||||
sha256: e9c1a3543d2da0db3e90270dbb1e4eebc985ee5e3ffe468d83224472b2194a5f
|
||||
sha256: fb38626579fb345ad00e674e2af3a5c9b0cc4b9bfb8fd7f7ff322c7c9e62aef5
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.2.1"
|
||||
version: "2.2.2"
|
||||
sdks:
|
||||
dart: ">=3.6.0 <4.0.0"
|
||||
flutter: ">=3.24.0"
|
||||
flutter: ">=3.27.0"
|
||||
|
|
|
|||
12
pubspec.yaml
12
pubspec.yaml
|
|
@ -11,14 +11,14 @@ dependencies:
|
|||
sdk: flutter
|
||||
flutter_localizations:
|
||||
sdk: flutter
|
||||
go_router: ^14.2.0
|
||||
go_router: ^14.6.3
|
||||
flutter_riverpod: ^2.6.1
|
||||
riverpod_annotation: ^2.6.1
|
||||
html: ^0.15.5
|
||||
font_awesome_flutter: ^10.8.0
|
||||
expandable_text: ^2.3.0
|
||||
flex_color_scheme: ^7.3.1
|
||||
extended_image: ^9.0.7
|
||||
flex_color_scheme: ^8.1.0
|
||||
extended_image: ^9.1.0
|
||||
photo_view: ^0.15.0
|
||||
grouped_list: ^6.0.0
|
||||
intl: ^0.19.0
|
||||
|
|
@ -61,9 +61,8 @@ dependencies:
|
|||
url: https://github.com/kodjodevf/flutter_qjs.git
|
||||
ref: main
|
||||
http: ^1.2.2
|
||||
flutter_code_editor: ^0.3.1
|
||||
flutter_highlight: ^0.7.0
|
||||
highlight: ^0.7.0
|
||||
re_editor: ^0.6.0
|
||||
re_highlight: ^0.0.3
|
||||
json_view: ^0.4.2
|
||||
super_sliver_list: ^0.4.1
|
||||
flutter_rust_bridge: 2.7.0
|
||||
|
|
@ -83,7 +82,6 @@ dependencies:
|
|||
dependency_overrides:
|
||||
http: ^1.2.2
|
||||
ffi: ^2.1.3
|
||||
flex_seed_scheme: ^2.0.0
|
||||
analyzer: ">=5.2.0 <7.0.0"
|
||||
html: ^0.15.4
|
||||
media_kit_libs_windows_video:
|
||||
|
|
|
|||
Loading…
Reference in a new issue