This commit is contained in:
kodjomoustapha 2024-12-13 10:31:57 +01:00
parent a726e25a7b
commit 4748f3c699
49 changed files with 264 additions and 996 deletions

View file

@ -949,7 +949,7 @@ class _AnimeStreamPageState extends riv.ConsumerState<AnimeStreamPage>
style: TextStyle(
fontSize: 12,
fontWeight: FontWeight.w400,
color: Colors.white.withOpacity(0.7)),
color: Colors.white.withValues(alpha: 0.7)),
overflow: TextOverflow.ellipsis,
),
),
@ -991,7 +991,7 @@ class _AnimeStreamPageState extends riv.ConsumerState<AnimeStreamPage>
// .textTheme
// .bodyLarge!
// .color!
// .withOpacity(0.9),
// .withValues(alpha: 0.9),
// fontSize: 14),
// ),
// onChanged: (value) {}),
@ -1004,7 +1004,7 @@ class _AnimeStreamPageState extends riv.ConsumerState<AnimeStreamPage>
// .textTheme
// .bodyLarge!
// .color!
// .withOpacity(0.9),
// .withValues(alpha: 0.9),
// fontSize: 14),
// ),
// onChanged: (value) {}),

View file

@ -98,7 +98,7 @@ class _FontSettingWidgetState extends ConsumerState<FontSettingWidget> {
},
iconColors: subtitleSettings.useBold!
? null
: context.dynamicWhiteBlackColor.withOpacity(0.5)),
: context.dynamicWhiteBlackColor.withValues(alpha: 0.5)),
iconButton(Icons.format_italic, () {
ref.read(subtitleSettingsStateProvider.notifier).set(
subtitleSettings..useItalic = !subtitleSettings.useItalic!,
@ -107,7 +107,7 @@ class _FontSettingWidgetState extends ConsumerState<FontSettingWidget> {
},
iconColors: subtitleSettings.useItalic!
? null
: context.dynamicWhiteBlackColor.withOpacity(0.5)),
: context.dynamicWhiteBlackColor.withValues(alpha: 0.5)),
],
),
Padding(

View file

@ -45,7 +45,7 @@ class _ExtensionDetailState extends ConsumerState<ExtensionDetail> {
child: Container(
decoration: BoxDecoration(
color:
Theme.of(context).secondaryHeaderColor.withOpacity(0.5),
Theme.of(context).secondaryHeaderColor.withValues(alpha: 0.5),
borderRadius: BorderRadius.circular(10)),
child: widget.source.iconUrl!.isEmpty
? const Icon(Icons.source_outlined, size: 140)
@ -78,7 +78,7 @@ class _ExtensionDetailState extends ConsumerState<ExtensionDetail> {
padding: const EdgeInsets.all(8.0),
child: Container(
decoration: BoxDecoration(
color: context.primaryColor.withOpacity(0.2),
color: context.primaryColor.withValues(alpha: 0.2),
borderRadius: BorderRadius.circular(10)),
child: Padding(
padding: const EdgeInsets.all(20),

View file

@ -66,7 +66,7 @@ class _ExtensionListTileWidgetState
height: 37,
width: 37,
decoration: BoxDecoration(
color: Theme.of(context).secondaryHeaderColor.withOpacity(0.5),
color: Theme.of(context).secondaryHeaderColor.withValues(alpha: 0.5),
borderRadius: BorderRadius.circular(5)),
child: widget.source.iconUrl!.isEmpty
? const Icon(Icons.extension_rounded)

View file

@ -293,7 +293,7 @@ class _MangaGlobalImageCardState extends ConsumerState<MangaGlobalImageCard>
width: 110,
height: 150,
color: hasData && snapshot.data!.first.favorite!
? Colors.black.withOpacity(0.7)
? Colors.black.withValues(alpha: 0.7)
: null,
),
if (hasData && snapshot.data!.first.favorite!)

View file

@ -78,7 +78,7 @@ class SourcesFilterScreen extends ConsumerWidget {
decoration: BoxDecoration(
color: Theme.of(context)
.secondaryHeaderColor
.withOpacity(0.5),
.withValues(alpha: 0.5),
borderRadius: BorderRadius.circular(5)),
child: element.iconUrl!.isEmpty
? const Icon(Icons.source_outlined)

View file

@ -38,7 +38,7 @@ class SourceListTile extends StatelessWidget {
height: 37,
width: 37,
decoration: BoxDecoration(
color: Theme.of(context).secondaryHeaderColor.withOpacity(0.5),
color: Theme.of(context).secondaryHeaderColor.withValues(alpha: 0.5),
borderRadius: BorderRadius.circular(5)),
child: source.iconUrl!.isEmpty
? const Icon(Icons.extension_rounded)

View file

@ -474,7 +474,7 @@ class _LibraryScreenState extends ConsumerState<LibraryScreen>
return AnimatedContainer(
curve: Curves.easeIn,
decoration: BoxDecoration(
color: context.primaryColor.withOpacity(0.2),
color: context.primaryColor.withValues(alpha: 0.2),
borderRadius: const BorderRadius.only(
topLeft: Radius.circular(20),
topRight: Radius.circular(20))),
@ -1416,7 +1416,7 @@ class _LibraryScreenState extends ConsumerState<LibraryScreen>
shadowColor: Colors.transparent,
elevation: 0,
backgroundColor: selected
? context.primaryColor.withOpacity(0.2)
? context.primaryColor.withValues(alpha: 0.2)
: Colors.transparent),
onPressed: () {
displayV.setLibraryDisplayType(e);
@ -1648,7 +1648,7 @@ class _LibraryScreenState extends ConsumerState<LibraryScreen>
color: Theme.of(context).scaffoldBackgroundColor,
child: AppBar(
title: Text(mangaIdsList.length.toString()),
backgroundColor: context.primaryColor.withOpacity(0.2),
backgroundColor: context.primaryColor.withValues(alpha: 0.2),
leading: IconButton(
onPressed: () {
ref.read(mangasListStateProvider.notifier).clear();

View file

@ -302,7 +302,7 @@ class _LibraryGridViewWidgetState extends State<LibraryGridViewWidget> {
borderRadius:
BorderRadius.circular(5),
color: context.primaryColor
.withOpacity(0.9),
.withValues(alpha: 0.9),
),
child: const Padding(
padding: EdgeInsets.all(7),
@ -328,7 +328,7 @@ class _LibraryGridViewWidgetState extends State<LibraryGridViewWidget> {
borderRadius:
BorderRadius.circular(5),
color: context.primaryColor
.withOpacity(0.9),
.withValues(alpha: 0.9),
),
child: const Padding(
padding: EdgeInsets.all(7),
@ -354,7 +354,7 @@ class _LibraryGridViewWidgetState extends State<LibraryGridViewWidget> {
borderRadius:
BorderRadius.circular(5),
color: context.primaryColor
.withOpacity(0.9),
.withValues(alpha: 0.9),
),
child: const Padding(
padding: EdgeInsets.all(7),

View file

@ -88,7 +88,7 @@ class LibraryListViewWidget extends StatelessWidget {
},
child: Container(
color: mangaIdsList.contains(entry.id)
? context.primaryColor.withOpacity(0.4)
? context.primaryColor.withValues(alpha: 0.4)
: Colors.transparent,
child: Padding(
padding:
@ -125,7 +125,7 @@ class LibraryListViewWidget extends StatelessWidget {
child: Container(
color: mangaIdsList.contains(entry.id)
? context.primaryColor
.withOpacity(0.4)
.withValues(alpha: 0.4)
: Colors.transparent,
)),
),
@ -286,7 +286,7 @@ class LibraryListViewWidget extends StatelessWidget {
borderRadius:
BorderRadius.circular(5),
color: context.primaryColor
.withOpacity(0.9),
.withValues(alpha: 0.9),
),
child: const Padding(
padding: EdgeInsets.all(7),
@ -312,7 +312,7 @@ class LibraryListViewWidget extends StatelessWidget {
borderRadius:
BorderRadius.circular(5),
color: context.primaryColor
.withOpacity(0.9),
.withValues(alpha: 0.9),
),
child: const Padding(
padding: EdgeInsets.all(7),
@ -337,7 +337,7 @@ class LibraryListViewWidget extends StatelessWidget {
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(5),
color: context.primaryColor
.withOpacity(0.9),
.withValues(alpha: 0.9),
),
child: const Padding(
padding: EdgeInsets.all(7),

View file

@ -261,7 +261,7 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
.scaffoldBackgroundColor
: Theme.of(context)
.scaffoldBackgroundColor
.withOpacity(0.9),
.withValues(alpha: 0.9),
),
Container(
width: context.width(1),
@ -271,7 +271,7 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
.scaffoldBackgroundColor
: Theme.of(context)
.scaffoldBackgroundColor
.withOpacity(0.9),
.withValues(alpha: 0.9),
),
],
),
@ -308,7 +308,7 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
child: AppBar(
title: Text(chapterList.length.toString()),
backgroundColor:
context.primaryColor.withOpacity(0.2),
context.primaryColor.withValues(alpha: 0.2),
leading: IconButton(
onPressed: () {
ref
@ -683,7 +683,7 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
return AnimatedContainer(
curve: Curves.easeIn,
decoration: BoxDecoration(
color: context.primaryColor.withOpacity(0.2),
color: context.primaryColor.withValues(alpha: 0.2),
borderRadius: const BorderRadius.only(
topLeft: Radius.circular(20),
topRight: Radius.circular(20))),
@ -1219,7 +1219,9 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
colors: [
Theme.of(context).scaffoldBackgroundColor.withOpacity(0.05),
Theme.of(context)
.scaffoldBackgroundColor
.withValues(alpha: 0.05),
Theme.of(context).scaffoldBackgroundColor
],
stops: const [0, .3],
@ -1290,7 +1292,7 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
style: ElevatedButton.styleFrom(
elevation: 0,
backgroundColor: Colors.grey
.withOpacity(0.2),
.withValues(alpha: 0.2),
shape: RoundedRectangleBorder(
borderRadius:
BorderRadius.circular(
@ -1326,7 +1328,7 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
style: ElevatedButton.styleFrom(
elevation: 0,
backgroundColor: Colors.grey
.withOpacity(0.2),
.withValues(alpha: 0.2),
shape: RoundedRectangleBorder(
borderRadius:
BorderRadius.circular(
@ -1744,8 +1746,9 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
.getBytes(context);
if (bytes != null &&
context.mounted) {
final file = File(
p.join(dir!.path, "${widget.manga!.name}.png"));
final file = File(p.join(
dir!.path,
"${widget.manga!.name}.png"));
file.writeAsBytesSync(bytes);
botToast(context.l10n.cover_saved,
second: 3);
@ -1932,9 +1935,13 @@ class _MangaDetailViewState extends ConsumerState<MangaDetailView>
allowToShrink: true,
child: Material(
color: context.isLight
? Theme.of(context).scaffoldBackgroundColor.withOpacity(0.9)
? Theme.of(context)
.scaffoldBackgroundColor
.withValues(alpha: 0.9)
: !ref.watch(pureBlackDarkModeStateProvider)
? Theme.of(context).scaffoldBackgroundColor.withOpacity(0.9)
? Theme.of(context)
.scaffoldBackgroundColor
.withValues(alpha: 0.9)
: Theme.of(context).cardColor,
borderRadius: BorderRadius.circular(20),
clipBehavior: Clip.antiAliasWithSaveLayer,

View file

@ -26,16 +26,16 @@ class ChapterListTileWidget extends ConsumerWidget {
final l10n = l10nLocalizations(context)!;
return Container(
color: chapterList.contains(chapter)
? context.primaryColor.withOpacity(0.4)
? context.primaryColor.withValues(alpha: 0.4)
: null,
child: ListTile(
textColor: chapter.isRead!
? context.isLight
? Colors.black.withOpacity(0.4)
: Colors.white.withOpacity(0.3)
? Colors.black.withValues(alpha: 0.4)
: Colors.white.withValues(alpha: 0.3)
: null,
selectedColor:
chapter.isRead! ? Colors.white.withOpacity(0.3) : Colors.white,
chapter.isRead! ? Colors.white.withValues(alpha: 0.3) : Colors.white,
onLongPress: () {
if (!isLongPressed) {
ref.read(chaptersListStateProvider.notifier).update(chapter);
@ -99,8 +99,8 @@ class ChapterListTileWidget extends ConsumerWidget {
style: TextStyle(
fontSize: 11,
color: context.isLight
? Colors.black.withOpacity(0.4)
: Colors.white.withOpacity(0.3)),
? Colors.black.withValues(alpha: 0.4)
: Colors.white.withValues(alpha: 0.3)),
),
],
),
@ -114,8 +114,8 @@ class ChapterListTileWidget extends ConsumerWidget {
fontSize: 11,
color: chapter.isRead!
? context.isLight
? Colors.black.withOpacity(0.4)
: Colors.white.withOpacity(0.3)
? Colors.black.withValues(alpha: 0.4)
: Colors.white.withValues(alpha: 0.3)
: null),
),
],

View file

@ -65,7 +65,7 @@ class ReadMoreWidgetState extends State<ReadMoreWidget>
colors: [
Theme.of(context)
.scaffoldBackgroundColor
.withOpacity(0.2),
.withValues(alpha: 0.2),
Theme.of(context).scaffoldBackgroundColor
],
stops: const [0, .9],

View file

@ -462,7 +462,7 @@ Widget _elevatedButton(BuildContext context,
shadowColor: Colors.transparent,
shape: RoundedRectangleBorder(
side: BorderSide(
width: 0, color: context.secondaryColor.withOpacity(0.1)),
width: 0, color: context.secondaryColor.withValues(alpha: 0.1)),
borderRadius: borderRadius ?? BorderRadius.circular(0))),
onPressed: onPressed,
child: child ??
@ -473,6 +473,6 @@ Widget _elevatedButton(BuildContext context,
.textTheme
.bodyMedium!
.color!
.withOpacity(0.9)),
.withValues(alpha: 0.9)),
));
}

View file

@ -124,7 +124,7 @@ class _ChapterPageDownloadState extends ConsumerState<ChapterPageDownload>
size: 25,
Icons.check_circle,
color:
Theme.of(context).iconTheme.color!.withOpacity(0.7),
Theme.of(context).iconTheme.color!.withValues(alpha: 0.7),
),
onSelected: (value) {
if (value == 0) {
@ -193,7 +193,7 @@ class _ChapterPageDownloadState extends ConsumerState<ChapterPageDownload>
color: Theme.of(context)
.iconTheme
.color!
.withOpacity(0.7),
.withValues(alpha: 0.7),
),
),
),
@ -210,7 +210,7 @@ class _ChapterPageDownloadState extends ConsumerState<ChapterPageDownload>
: Theme.of(context)
.iconTheme
.color!
.withOpacity(0.7),
.withValues(alpha: 0.7),
)),
],
),
@ -246,7 +246,7 @@ class _ChapterPageDownloadState extends ConsumerState<ChapterPageDownload>
color: Theme.of(context)
.iconTheme
.color!
.withOpacity(0.7),
.withValues(alpha: 0.7),
size: 25,
))
: SizedBox(
@ -349,7 +349,7 @@ Widget _downloadWidget(BuildContext context, bool isLoading) {
child: Icon(
size: 18,
Icons.arrow_downward_sharp,
color: Theme.of(context).iconTheme.color!.withOpacity(0.7),
color: Theme.of(context).iconTheme.color!.withValues(alpha: 0.7),
)),
Align(
alignment: Alignment.center,
@ -358,7 +358,7 @@ Widget _downloadWidget(BuildContext context, bool isLoading) {
width: 20,
child: CircularProgressIndicator(
value: isLoading ? null : 1,
color: Theme.of(context).iconTheme.color!.withOpacity(0.7),
color: Theme.of(context).iconTheme.color!.withValues(alpha: 0.7),
strokeWidth: 2,
),
),

View file

@ -41,7 +41,7 @@ Future<List<PageUrl>> downloadChapter(
bool isOk = false;
final manga = chapter.manga.value!;
final path1 = await storageProvider.getDirectory();
String scanlator = chapter.scanlator!.isNotEmpty
String scanlator = (chapter.scanlator?.isNotEmpty ?? false)
? "${chapter.scanlator!.replaceForbiddenCharacters('_')}_"
: "";
final chapterName = chapter.name!.replaceForbiddenCharacters(' ');
@ -69,8 +69,8 @@ Future<List<PageUrl>> downloadChapter(
Future<void> processConvert() async {
if (hasM3U8File) {
await m3u8Downloader?.mergeTsToMp4(
p.join(path!.path, "$chapterName.mp4"), p.join(path.path, chapterName));
await m3u8Downloader?.mergeTsToMp4(p.join(path!.path, "$chapterName.mp4"),
p.join(path.path, chapterName));
} else {
if (ref.watch(saveAsCBZArchiveStateProvider)) {
await ref.watch(convertToCBZProvider(path!.path, mangaDir!.path,
@ -156,14 +156,16 @@ Future<List<PageUrl>> downloadChapter(
bool cbzFileExist =
await File(p.join(mangaDir!.path, "${chapter.name}.cbz")).exists() &&
ref.watch(saveAsCBZArchiveStateProvider);
bool mp4FileExist = await File(p.join(mangaDir.path, "$chapterName.mp4")).exists();
bool mp4FileExist =
await File(p.join(mangaDir.path, "$chapterName.mp4")).exists();
if (!cbzFileExist && isManga || !mp4FileExist && !isManga) {
for (var index = 0; index < pageUrls.length; index++) {
final path2 = Directory(p.join(path1.path,
"downloads",
isManga ? "Manga" : "Anime",
"${manga.source} (${manga.lang!.toUpperCase()})",
manga.name!.replaceForbiddenCharacters('_')));
final path2 = Directory(p.join(
path1.path,
"downloads",
isManga ? "Manga" : "Anime",
"${manga.source} (${manga.lang!.toUpperCase()})",
manga.name!.replaceForbiddenCharacters('_')));
if (!(await path2.exists())) {
await path2.create(recursive: true);
}
@ -187,7 +189,8 @@ Future<List<PageUrl>> downloadChapter(
pageHeaders.addAll(page.headers ?? {});
if (isManga) {
final file = File(p.join(tempDir.path, "Mangayomi", finalPath, "${padIndex(index + 1)}.jpg"));
final file = File(p.join(tempDir.path, "Mangayomi", finalPath,
"${padIndex(index + 1)}.jpg"));
if (file.existsSync()) {
Directory(path.path).createSync(recursive: true);
await file.copy(p.join(path.path, "${padIndex(index + 1)}.jpg"));
@ -196,7 +199,8 @@ Future<List<PageUrl>> downloadChapter(
if (!(await path.exists())) {
await path.create();
}
if (!(await File(p.join(path.path, "${padIndex(index + 1)}.jpg")).exists())) {
if (!(await File(p.join(path.path, "${padIndex(index + 1)}.jpg"))
.exists())) {
tasks.add(DownloadTask(
taskId: page.url,
headers: pageHeaders,
@ -211,16 +215,21 @@ Future<List<PageUrl>> downloadChapter(
}
}
} else {
final file = File(p.join(tempDir.path, "Mangayomi", finalPath, "$chapterName.mp4"));
final file = File(
p.join(tempDir.path, "Mangayomi", finalPath, "$chapterName.mp4"));
if (file.existsSync()) {
await file.copy(p.join(path.path, "$chapterName.mp4"));
await file.delete();
} else if (hasM3U8File) {
final tempFile = File(p.join(tempDir.path, "Mangayomi", finalPath, chapterName, "TS_${index + 1}.ts"));
final file = File(p.join(path.path, chapterName, "TS_${index + 1}.ts"));
final tempFile = File(p.join(tempDir.path, "Mangayomi", finalPath,
chapterName, "TS_${index + 1}.ts"));
final file =
File(p.join(path.path, chapterName, "TS_${index + 1}.ts"));
if (tempFile.existsSync()) {
Directory(p.join(path.path, chapterName)).createSync(recursive: true);
await tempFile.copy(p.join(path.path, chapterName, "TS_${index + 1}.ts"));
Directory(p.join(path.path, chapterName))
.createSync(recursive: true);
await tempFile
.copy(p.join(path.path, chapterName, "TS_${index + 1}.ts"));
await tempFile.delete();
} else if (!(file.existsSync())) {
tasks.add(DownloadTask(
@ -350,11 +359,14 @@ Future<List<PageUrl>> downloadChapter(
}
}
if (progress == 1.0) {
final file = File(p.join(tempDir.path, taskProgress.task.directory, taskProgress.task.filename));
if(hasM3U8File) {
final newFile = await file.copy(p.join(path!.path, chapterName, taskProgress.task.filename));
final file = File(p.join(tempDir.path, taskProgress.task.directory,
taskProgress.task.filename));
if (hasM3U8File) {
final newFile = await file.copy(
p.join(path!.path, chapterName, taskProgress.task.filename));
await file.delete();
await m3u8Downloader?.processBytes(newFile, tsKey, tsIv, m3u8MediaSequence);
await m3u8Downloader?.processBytes(
newFile, tsKey, tsIv, m3u8MediaSequence);
} else {
await file.copy(p.join(path!.path, taskProgress.task.filename));
await file.delete();

View file

@ -6,7 +6,7 @@ part of 'download_provider.dart';
// RiverpodGenerator
// **************************************************************************
String _$downloadChapterHash() => r'f407f5839eff9754f9590f2f2189bcb604f3fa06';
String _$downloadChapterHash() => r'328601db157de29d38877d6aef8ab101aacd5bad';
/// Copied from Dart SDK
class _SystemHash {

View file

@ -161,7 +161,7 @@ class _DoubleColummViewState extends State<DoubleColummView>
Text(
l10n.image_loading_error,
style: TextStyle(
color: Colors.white.withOpacity(0.7)),
color: Colors.white.withValues(alpha: 0.7)),
),
Padding(
padding: const EdgeInsets.all(8.0),
@ -239,7 +239,7 @@ class _DoubleColummViewState extends State<DoubleColummView>
Text(
l10n.image_loading_error,
style: TextStyle(
color: Colors.white.withOpacity(0.7)),
color: Colors.white.withValues(alpha: 0.7)),
),
Padding(
padding: const EdgeInsets.all(8.0),

View file

@ -68,7 +68,7 @@ class DoubleColummVerticalView extends StatelessWidget {
Text(
l10n.image_loading_error,
style: TextStyle(
color: Colors.white.withOpacity(0.7)),
color: Colors.white.withValues(alpha: 0.7)),
),
Padding(
padding: const EdgeInsets.all(8.0),
@ -139,7 +139,7 @@ class DoubleColummVerticalView extends StatelessWidget {
Text(
l10n.image_loading_error,
style: TextStyle(
color: Colors.white.withOpacity(0.7)),
color: Colors.white.withValues(alpha: 0.7)),
),
Padding(
padding: const EdgeInsets.all(8.0),

View file

@ -60,7 +60,7 @@ class ImageViewVertical extends ConsumerWidget {
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(context.l10n.image_loading_error,
style: TextStyle(color: Colors.white.withOpacity(0.7))),
style: TextStyle(color: Colors.white.withValues(alpha: 0.7))),
Padding(
padding: const EdgeInsets.all(8.0),
child: GestureDetector(

View file

@ -238,7 +238,7 @@ class _MangaChapterPageGalleryState
StateProvider((ref) => _readerController.getShowPageNumber());
Color _backgroundColor(BuildContext context) =>
Theme.of(context).scaffoldBackgroundColor.withOpacity(0.9);
Theme.of(context).scaffoldBackgroundColor.withValues(alpha: 0.9);
void _setFullScreen({bool? value}) async {
if (isDesktop) {
@ -301,7 +301,7 @@ class _MangaChapterPageGalleryState
width: 35,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(6),
color: context.secondaryColor.withOpacity(0.4)),
color: context.secondaryColor.withValues(alpha: 0.4)),
),
),
Row(
@ -721,7 +721,7 @@ class _MangaChapterPageGalleryState
l10n.image_loading_error,
style: TextStyle(
color: Colors.white
.withOpacity(
.withValues(alpha:
0.7)),
),
Padding(
@ -1431,7 +1431,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.4)),
.withValues(alpha: 0.4)),
)),
),
),
@ -1608,7 +1608,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.4),
.withValues(alpha: 0.4),
// size: 17,
),
),
@ -2032,7 +2032,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.9),
.withValues(alpha: 0.9),
fontSize: 14),
),
onChanged: (value) {
@ -2046,7 +2046,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.9),
.withValues(alpha: 0.9),
fontSize: 14)),
onChanged: (value) {
ref
@ -2071,7 +2071,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.9),
.withValues(alpha: 0.9),
fontSize: 14)),
onChanged: (val) {
_readerController.setAutoScroll(
@ -2159,7 +2159,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.9),
.withValues(alpha: 0.9),
fontSize: 14),
),
onChanged: (value) {
@ -2174,7 +2174,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.9),
.withValues(alpha: 0.9),
fontSize: 14),
),
onChanged: (value) {
@ -2190,7 +2190,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.9),
.withValues(alpha: 0.9),
fontSize: 14),
),
onChanged: (value) {
@ -2228,7 +2228,7 @@ class _MangaChapterPageGalleryState
.textTheme
.bodyLarge!
.color!
.withOpacity(0.9),
.withValues(alpha: 0.9),
fontSize: 14),
),
onChanged: (value) {
@ -2358,7 +2358,7 @@ class CustomPopupMenuButton<T> extends StatelessWidget {
.textTheme
.bodyLarge!
.color!
.withOpacity(0.9)),
.withValues(alpha: 0.9)),
overflow: TextOverflow.ellipsis,
maxLines: 1,
),

View file

@ -102,15 +102,15 @@ class _ChapterListTileState extends State<ChapterListTile> {
@override
Widget build(BuildContext context) {
return Container(
color: widget.currentChap ? context.primaryColor.withOpacity(0.3) : null,
color: widget.currentChap ? context.primaryColor.withValues(alpha: 0.3) : null,
child: ListTile(
textColor: chapter.isRead!
? context.isLight
? Colors.black.withOpacity(0.4)
: Colors.white.withOpacity(0.3)
? Colors.black.withValues(alpha: 0.4)
: Colors.white.withValues(alpha: 0.3)
: null,
selectedColor:
chapter.isRead! ? Colors.white.withOpacity(0.3) : Colors.white,
chapter.isRead! ? Colors.white.withValues(alpha: 0.3) : Colors.white,
onTap: () async {
if (!widget.currentChap) {
Navigator.pop(context);
@ -144,8 +144,8 @@ class _ChapterListTileState extends State<ChapterListTile> {
fontSize: 11,
color: chapter.isRead!
? context.isLight
? Colors.black.withOpacity(0.4)
: Colors.white.withOpacity(0.3)
? Colors.black.withValues(alpha: 0.4)
: Colors.white.withValues(alpha: 0.3)
: null)),
],
)

View file

@ -6,7 +6,7 @@ part of 'auto_backup.dart';
// RiverpodGenerator
// **************************************************************************
String _$checkAndBackupHash() => r'bfc4ff93674f9e7caa7fb54f6a7c65b9b87fd571';
String _$checkAndBackupHash() => r'c3fa9f0b0f9009088ee8e787407a691b0044901f';
/// See also [checkAndBackup].
@ProviderFor(checkAndBackup)
@ -58,7 +58,7 @@ final backupFrequencyOptionsStateProvider = AutoDisposeNotifierProvider<
typedef _$BackupFrequencyOptionsState = AutoDisposeNotifier<List<int>>;
String _$autoBackupLocationStateHash() =>
r'db6d5a8a0b74ea61cd8569e0486d3a4720393ed1';
r'80c41bb34c4ed4d07dce626dd03bb20f01672aec';
/// See also [AutoBackupLocationState].
@ProviderFor(AutoBackupLocationState)

View file

@ -6,7 +6,7 @@ part of 'backup.dart';
// RiverpodGenerator
// **************************************************************************
String _$doBackUpHash() => r'2d631e10437666ce38354969c7c05e22a0237b29';
String _$doBackUpHash() => r'd34a7d90280905e4505b71129655368fa4dcf2b1';
/// Copied from Dart SDK
class _SystemHash {

View file

@ -294,7 +294,7 @@ class _CategoriesTabState extends ConsumerState<CategoriesTab> {
controller.text.isEmpty || isExist
? Theme.of(context)
.primaryColor
.withOpacity(0.2)
.withValues(alpha: 0.2)
: null),
)),
],
@ -381,7 +381,7 @@ class _CategoriesTabState extends ConsumerState<CategoriesTab> {
isSameName
? Theme.of(context)
.primaryColor
.withOpacity(0.2)
.withValues(alpha: 0.2)
: null),
)),
],

View file

@ -40,7 +40,7 @@ final saveAsCBZArchiveStateProvider =
typedef _$SaveAsCBZArchiveState = AutoDisposeNotifier<bool>;
String _$downloadLocationStateHash() =>
r'b883597443ed34622e20d20d51a1db56919f5362';
r'e4c2215366c10f850b7d52c96c03545a9413b752';
/// See also [DownloadLocationState].
@ProviderFor(DownloadLocationState)

View file

@ -198,7 +198,7 @@ class SyncScreen extends ConsumerWidget {
.styleFrom(
backgroundColor:
Colors.red
.withOpacity(
.withValues(alpha:
0.7)),
onPressed: () {
ref
@ -283,7 +283,7 @@ class SyncScreen extends ConsumerWidget {
.styleFrom(
backgroundColor:
Colors.red
.withOpacity(
.withValues(alpha:
0.7)),
onPressed: () {
ref

View file

@ -77,7 +77,7 @@ class SyncListile extends ConsumerWidget {
ElevatedButton(
style: ElevatedButton.styleFrom(
backgroundColor:
Colors.red.withOpacity(0.7)),
Colors.red.withValues(alpha: 0.7)),
onPressed: () {
ref
.read(synchingProvider(syncId: id)

View file

@ -78,7 +78,7 @@ class TrackListile extends ConsumerWidget {
ElevatedButton(
style: ElevatedButton.styleFrom(
backgroundColor:
Colors.red.withOpacity(0.7)),
Colors.red.withValues(alpha: 0.7)),
onPressed: () {
ref
.read(

View file

@ -78,7 +78,7 @@ class BottomTextWidget extends StatelessWidget {
end: Alignment.bottomCenter,
colors: [
Colors.transparent,
Colors.black.withOpacity(0.6)
Colors.black.withValues(alpha: 0.6)
],
stops: const [0, 1],
),

View file

@ -38,7 +38,7 @@ class CoverViewWidget extends StatelessWidget {
onSecondaryTap: onSecondaryTap,
child: Container(
color: isLongPressed != null && isLongPressed!
? context.primaryColor.withOpacity(0.4)
? context.primaryColor.withValues(alpha: 0.4)
: Colors.transparent,
child: image == null
? isComfortableGrid

View file

@ -91,7 +91,7 @@ class MangaImageCardWidget extends ConsumerWidget {
children: [
Container(
color: hasData && snapshot.data!.first.favorite!
? Colors.black.withOpacity(0.5)
? Colors.black.withValues(alpha: 0.5)
: null),
if (hasData && snapshot.data!.first.favorite!)
Positioned(
@ -206,7 +206,7 @@ class MangaImageCardListTileWidget extends ConsumerWidget {
height: 55,
width: 40,
color: hasData && snapshot.data!.first.favorite!
? Colors.black.withOpacity(0.5)
? Colors.black.withValues(alpha: 0.5)
: null,
),
],

View file

@ -48,7 +48,7 @@ class StorageProvider {
directory = Directory("/storage/emulated/0/Mangayomi/");
} else {
final dir = await getApplicationDocumentsDirectory();
directory = Directory(path.join(dir.path, 'Mangayomi'));
directory = Directory("${dir.path}/Mangayomi/".fixSeparator);
}
return directory;
}
@ -69,14 +69,14 @@ class StorageProvider {
Future<Directory?> getDirectory() async {
Directory? directory;
String customPath = isar.settings.getSync(227)!.downloadLocation ?? "";
String path = isar.settings.getSync(227)!.downloadLocation ?? "";
if (Platform.isAndroid) {
directory =
Directory(customPath.isEmpty ? "/storage/emulated/0/Mangayomi/" : "$customPath/");
Directory(path.isEmpty ? "/storage/emulated/0/Mangayomi/" : "$path/");
} else {
final dir = await getApplicationDocumentsDirectory();
final basePath = customPath.isEmpty ? dir.path : customPath;
directory = Directory(path.join(basePath, "Mangayomi"));
final p = path.isEmpty ? dir.path : path;
directory = Directory("$p/Mangayomi/".fixSeparator);
}
return directory;
}
@ -88,31 +88,20 @@ class StorageProvider {
String scanlator = chapter.scanlator?.isNotEmpty ?? false
? "${chapter.scanlator!.replaceForbiddenCharacters('_')}_"
: "";
final isManga = manga.isManga!;
final isManga = chapter.manga.value!.isManga!;
final dir = await getDirectory();
final directoryPath = path.join(
dir!.path,
"downloads",
isManga ? "Manga" : "Anime",
"${manga.source} (${manga.lang!.toUpperCase()})",
manga.name!.replaceForbiddenCharacters('_'),
"$scanlator${chapter.name!.replaceForbiddenCharacters('_')}",
);
return Directory(directoryPath);
return Directory(
"${dir!.path}/downloads/${isManga ? "Manga" : "Anime"}/${manga.source} (${manga.lang!.toUpperCase()})/${manga.name!.replaceForbiddenCharacters('_')}/$scanlator${chapter.name!.replaceForbiddenCharacters('_')}/"
.fixSeparator);
}
Future<Directory?> getMangaMainDirectory(Chapter chapter) async {
final manga = chapter.manga.value!;
final isManga = manga.isManga!;
final isManga = chapter.manga.value!.isManga!;
final dir = await getDirectory();
final directoryPath = path.join(
dir!.path,
"downloads",
isManga ? "Manga" : "Anime",
"${manga.source} (${manga.lang!.toUpperCase()})",
manga.name!.replaceForbiddenCharacters('_'),
);
return Directory(directoryPath);
return Directory(
"${dir!.path}/downloads/${isManga ? "Manga" : "Anime"}/${manga.source} (${manga.lang!.toUpperCase()})/${manga.name!.replaceForbiddenCharacters('_')}/"
.fixSeparator);
}
Future<Directory?> getDatabaseDirectory() async {
@ -133,6 +122,7 @@ class StorageProvider {
} else {
gPath = path.join(gPath, 'Pictures');
}
gPath = gPath.fixSeparator;
await Directory(gPath).create(recursive: true);
return Directory(gPath);
}
@ -173,3 +163,7 @@ class StorageProvider {
return isar;
}
}
extension StringPathExtension on String {
String get fixSeparator => replaceAll("/", path.separator);
}

View file

@ -6,7 +6,7 @@ part of 'get_video_list.dart';
// RiverpodGenerator
// **************************************************************************
String _$getVideoListHash() => r'3964374e5672fbbc147fe399dfc121f313cd815d';
String _$getVideoListHash() => r'4cea633e8a21ede6dce9903baef0c978f4826def';
/// Copied from Dart SDK
class _SystemHash {

View file

@ -1,5 +1,5 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import

View file

@ -1,5 +1,5 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import

View file

@ -1,5 +1,5 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import

View file

@ -1,5 +1,5 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import

View file

@ -1,5 +1,5 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// ignore_for_file: unused_import, unused_element, unnecessary_import, duplicate_ignore, invalid_use_of_internal_member, annotate_overrides, non_constant_identifier_names, curly_braces_in_flow_control_structures, prefer_const_literals_to_create_immutables, unused_field
@ -10,8 +10,7 @@ import 'api/rhttp/http.dart';
import 'dart:async';
import 'dart:convert';
import 'frb_generated.dart';
import 'frb_generated.io.dart'
if (dart.library.js_interop) 'frb_generated.web.dart';
import 'frb_generated.io.dart';
import 'lib.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
@ -67,7 +66,7 @@ class RustLib extends BaseEntrypoint<RustLibApi, RustLibApiImpl, RustLibWire> {
kDefaultExternalLibraryLoaderConfig;
@override
String get codegenVersion => '2.6.0';
String get codegenVersion => '2.7.0';
@override
int get rustContentHash => 107666026;
@ -1812,8 +1811,6 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
case HttpHeaders_List(field0: final field0):
sse_encode_i_32(1, serializer);
sse_encode_list_record_string_string(field0, serializer);
default:
throw UnimplementedError('');
}
}
@ -1845,8 +1842,6 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
sse_encode_list_prim_u_8_strict(field0, serializer);
case HttpResponseBody_Stream():
sse_encode_i_32(2, serializer);
default:
throw UnimplementedError('');
}
}
@ -2058,8 +2053,6 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
case RedirectSettings_LimitedRedirects(field0: final field0):
sse_encode_i_32(1, serializer);
sse_encode_i_32(field0, serializer);
default:
throw UnimplementedError('');
}
}
@ -2091,8 +2084,6 @@ class RustLibApiImpl extends RustLibApiImplPlatform implements RustLibApi {
case RhttpError_RhttpUnknownError(field0: final field0):
sse_encode_i_32(6, serializer);
sse_encode_String(field0, serializer);
default:
throw UnimplementedError('');
}
}

View file

@ -1,5 +1,5 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// ignore_for_file: unused_import, unused_element, unnecessary_import, duplicate_ignore, invalid_use_of_internal_member, annotate_overrides, non_constant_identifier_names, curly_braces_in_flow_control_structures, prefer_const_literals_to_create_immutables, unused_field

View file

@ -1,736 +0,0 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// ignore_for_file: unused_import, unused_element, unnecessary_import, duplicate_ignore, invalid_use_of_internal_member, annotate_overrides, non_constant_identifier_names, curly_braces_in_flow_control_structures, prefer_const_literals_to_create_immutables, unused_field
// Static analysis wrongly picks the IO variant, thus ignore this
// ignore_for_file: argument_type_not_assignable
import 'api/image.dart';
import 'api/rhttp/client.dart';
import 'api/rhttp/error.dart';
import 'api/rhttp/http.dart';
import 'dart:async';
import 'dart:convert';
import 'frb_generated.dart';
import 'lib.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated_web.dart';
abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
RustLibApiImplPlatform({
required super.handler,
required super.wire,
required super.generalizedFrbRustBinding,
required super.portManager,
});
CrossPlatformFinalizerArg
get rust_arc_decrement_strong_count_CancellationTokenPtr => wire
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken;
CrossPlatformFinalizerArg
get rust_arc_decrement_strong_count_RequestClientPtr => wire
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient;
@protected
AnyhowException dco_decode_AnyhowException(dynamic raw);
@protected
RequestClient
dco_decode_AutoExplicit_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
dynamic raw);
@protected
CancellationToken
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
dynamic raw);
@protected
RequestClient
dco_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
dynamic raw);
@protected
CancellationToken
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
dynamic raw);
@protected
RequestClient
dco_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
dynamic raw);
@protected
Duration dco_decode_Chrono_Duration(dynamic raw);
@protected
FutureOr<void> Function(CancellationToken)
dco_decode_DartFn_Inputs_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken_Output_unit_AnyhowException(
dynamic raw);
@protected
FutureOr<void> Function(HttpResponse)
dco_decode_DartFn_Inputs_http_response_Output_unit_AnyhowException(
dynamic raw);
@protected
FutureOr<void> Function(RhttpError)
dco_decode_DartFn_Inputs_rhttp_error_Output_unit_AnyhowException(
dynamic raw);
@protected
Object dco_decode_DartOpaque(dynamic raw);
@protected
Map<String, String> dco_decode_Map_String_String(dynamic raw);
@protected
CancellationToken
dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
dynamic raw);
@protected
RequestClient
dco_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
dynamic raw);
@protected
RustStreamSink<Uint8List> dco_decode_StreamSink_list_prim_u_8_strict_Sse(
dynamic raw);
@protected
String dco_decode_String(dynamic raw);
@protected
bool dco_decode_bool(dynamic raw);
@protected
Duration dco_decode_box_autoadd_Chrono_Duration(dynamic raw);
@protected
ClientCertificate dco_decode_box_autoadd_client_certificate(dynamic raw);
@protected
ClientSettings dco_decode_box_autoadd_client_settings(dynamic raw);
@protected
HttpHeaders dco_decode_box_autoadd_http_headers(dynamic raw);
@protected
HttpResponseBody dco_decode_box_autoadd_http_response_body(dynamic raw);
@protected
ProxySettings dco_decode_box_autoadd_proxy_settings(dynamic raw);
@protected
RedirectSettings dco_decode_box_autoadd_redirect_settings(dynamic raw);
@protected
TlsSettings dco_decode_box_autoadd_tls_settings(dynamic raw);
@protected
TlsVersion dco_decode_box_autoadd_tls_version(dynamic raw);
@protected
ClientCertificate dco_decode_client_certificate(dynamic raw);
@protected
ClientSettings dco_decode_client_settings(dynamic raw);
@protected
HttpHeaders dco_decode_http_headers(dynamic raw);
@protected
HttpMethod dco_decode_http_method(dynamic raw);
@protected
HttpResponse dco_decode_http_response(dynamic raw);
@protected
HttpResponseBody dco_decode_http_response_body(dynamic raw);
@protected
HttpVersion dco_decode_http_version(dynamic raw);
@protected
int dco_decode_i_32(dynamic raw);
@protected
PlatformInt64 dco_decode_i_64(dynamic raw);
@protected
PlatformInt64 dco_decode_isize(dynamic raw);
@protected
List<Uint8List> dco_decode_list_list_prim_u_8_strict(dynamic raw);
@protected
List<int> dco_decode_list_prim_u_8_loose(dynamic raw);
@protected
Uint8List dco_decode_list_prim_u_8_strict(dynamic raw);
@protected
List<(String, String)> dco_decode_list_record_string_string(dynamic raw);
@protected
RequestClient?
dco_decode_opt_AutoExplicit_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
dynamic raw);
@protected
Duration? dco_decode_opt_box_autoadd_Chrono_Duration(dynamic raw);
@protected
ClientCertificate? dco_decode_opt_box_autoadd_client_certificate(dynamic raw);
@protected
ClientSettings? dco_decode_opt_box_autoadd_client_settings(dynamic raw);
@protected
HttpHeaders? dco_decode_opt_box_autoadd_http_headers(dynamic raw);
@protected
ProxySettings? dco_decode_opt_box_autoadd_proxy_settings(dynamic raw);
@protected
RedirectSettings? dco_decode_opt_box_autoadd_redirect_settings(dynamic raw);
@protected
TlsSettings? dco_decode_opt_box_autoadd_tls_settings(dynamic raw);
@protected
TlsVersion? dco_decode_opt_box_autoadd_tls_version(dynamic raw);
@protected
Uint8List? dco_decode_opt_list_prim_u_8_strict(dynamic raw);
@protected
List<(String, String)>? dco_decode_opt_list_record_string_string(dynamic raw);
@protected
ProxySettings dco_decode_proxy_settings(dynamic raw);
@protected
(String, String) dco_decode_record_string_string(dynamic raw);
@protected
RedirectSettings dco_decode_redirect_settings(dynamic raw);
@protected
RhttpError dco_decode_rhttp_error(dynamic raw);
@protected
TlsSettings dco_decode_tls_settings(dynamic raw);
@protected
TlsVersion dco_decode_tls_version(dynamic raw);
@protected
int dco_decode_u_16(dynamic raw);
@protected
int dco_decode_u_8(dynamic raw);
@protected
void dco_decode_unit(dynamic raw);
@protected
BigInt dco_decode_usize(dynamic raw);
@protected
AnyhowException sse_decode_AnyhowException(SseDeserializer deserializer);
@protected
RequestClient
sse_decode_AutoExplicit_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
SseDeserializer deserializer);
@protected
CancellationToken
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
SseDeserializer deserializer);
@protected
RequestClient
sse_decode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
SseDeserializer deserializer);
@protected
CancellationToken
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
SseDeserializer deserializer);
@protected
RequestClient
sse_decode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
SseDeserializer deserializer);
@protected
Duration sse_decode_Chrono_Duration(SseDeserializer deserializer);
@protected
Object sse_decode_DartOpaque(SseDeserializer deserializer);
@protected
Map<String, String> sse_decode_Map_String_String(
SseDeserializer deserializer);
@protected
CancellationToken
sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
SseDeserializer deserializer);
@protected
RequestClient
sse_decode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
SseDeserializer deserializer);
@protected
RustStreamSink<Uint8List> sse_decode_StreamSink_list_prim_u_8_strict_Sse(
SseDeserializer deserializer);
@protected
String sse_decode_String(SseDeserializer deserializer);
@protected
bool sse_decode_bool(SseDeserializer deserializer);
@protected
Duration sse_decode_box_autoadd_Chrono_Duration(SseDeserializer deserializer);
@protected
ClientCertificate sse_decode_box_autoadd_client_certificate(
SseDeserializer deserializer);
@protected
ClientSettings sse_decode_box_autoadd_client_settings(
SseDeserializer deserializer);
@protected
HttpHeaders sse_decode_box_autoadd_http_headers(SseDeserializer deserializer);
@protected
HttpResponseBody sse_decode_box_autoadd_http_response_body(
SseDeserializer deserializer);
@protected
ProxySettings sse_decode_box_autoadd_proxy_settings(
SseDeserializer deserializer);
@protected
RedirectSettings sse_decode_box_autoadd_redirect_settings(
SseDeserializer deserializer);
@protected
TlsSettings sse_decode_box_autoadd_tls_settings(SseDeserializer deserializer);
@protected
TlsVersion sse_decode_box_autoadd_tls_version(SseDeserializer deserializer);
@protected
ClientCertificate sse_decode_client_certificate(SseDeserializer deserializer);
@protected
ClientSettings sse_decode_client_settings(SseDeserializer deserializer);
@protected
HttpHeaders sse_decode_http_headers(SseDeserializer deserializer);
@protected
HttpMethod sse_decode_http_method(SseDeserializer deserializer);
@protected
HttpResponse sse_decode_http_response(SseDeserializer deserializer);
@protected
HttpResponseBody sse_decode_http_response_body(SseDeserializer deserializer);
@protected
HttpVersion sse_decode_http_version(SseDeserializer deserializer);
@protected
int sse_decode_i_32(SseDeserializer deserializer);
@protected
PlatformInt64 sse_decode_i_64(SseDeserializer deserializer);
@protected
PlatformInt64 sse_decode_isize(SseDeserializer deserializer);
@protected
List<Uint8List> sse_decode_list_list_prim_u_8_strict(
SseDeserializer deserializer);
@protected
List<int> sse_decode_list_prim_u_8_loose(SseDeserializer deserializer);
@protected
Uint8List sse_decode_list_prim_u_8_strict(SseDeserializer deserializer);
@protected
List<(String, String)> sse_decode_list_record_string_string(
SseDeserializer deserializer);
@protected
RequestClient?
sse_decode_opt_AutoExplicit_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
SseDeserializer deserializer);
@protected
Duration? sse_decode_opt_box_autoadd_Chrono_Duration(
SseDeserializer deserializer);
@protected
ClientCertificate? sse_decode_opt_box_autoadd_client_certificate(
SseDeserializer deserializer);
@protected
ClientSettings? sse_decode_opt_box_autoadd_client_settings(
SseDeserializer deserializer);
@protected
HttpHeaders? sse_decode_opt_box_autoadd_http_headers(
SseDeserializer deserializer);
@protected
ProxySettings? sse_decode_opt_box_autoadd_proxy_settings(
SseDeserializer deserializer);
@protected
RedirectSettings? sse_decode_opt_box_autoadd_redirect_settings(
SseDeserializer deserializer);
@protected
TlsSettings? sse_decode_opt_box_autoadd_tls_settings(
SseDeserializer deserializer);
@protected
TlsVersion? sse_decode_opt_box_autoadd_tls_version(
SseDeserializer deserializer);
@protected
Uint8List? sse_decode_opt_list_prim_u_8_strict(SseDeserializer deserializer);
@protected
List<(String, String)>? sse_decode_opt_list_record_string_string(
SseDeserializer deserializer);
@protected
ProxySettings sse_decode_proxy_settings(SseDeserializer deserializer);
@protected
(String, String) sse_decode_record_string_string(
SseDeserializer deserializer);
@protected
RedirectSettings sse_decode_redirect_settings(SseDeserializer deserializer);
@protected
RhttpError sse_decode_rhttp_error(SseDeserializer deserializer);
@protected
TlsSettings sse_decode_tls_settings(SseDeserializer deserializer);
@protected
TlsVersion sse_decode_tls_version(SseDeserializer deserializer);
@protected
int sse_decode_u_16(SseDeserializer deserializer);
@protected
int sse_decode_u_8(SseDeserializer deserializer);
@protected
void sse_decode_unit(SseDeserializer deserializer);
@protected
BigInt sse_decode_usize(SseDeserializer deserializer);
@protected
void sse_encode_AnyhowException(
AnyhowException self, SseSerializer serializer);
@protected
void
sse_encode_AutoExplicit_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
RequestClient self, SseSerializer serializer);
@protected
void
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
CancellationToken self, SseSerializer serializer);
@protected
void
sse_encode_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
RequestClient self, SseSerializer serializer);
@protected
void
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
CancellationToken self, SseSerializer serializer);
@protected
void
sse_encode_Auto_Ref_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
RequestClient self, SseSerializer serializer);
@protected
void sse_encode_Chrono_Duration(Duration self, SseSerializer serializer);
@protected
void
sse_encode_DartFn_Inputs_Auto_Owned_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken_Output_unit_AnyhowException(
FutureOr<void> Function(CancellationToken) self,
SseSerializer serializer);
@protected
void sse_encode_DartFn_Inputs_http_response_Output_unit_AnyhowException(
FutureOr<void> Function(HttpResponse) self, SseSerializer serializer);
@protected
void sse_encode_DartFn_Inputs_rhttp_error_Output_unit_AnyhowException(
FutureOr<void> Function(RhttpError) self, SseSerializer serializer);
@protected
void sse_encode_DartOpaque(Object self, SseSerializer serializer);
@protected
void sse_encode_Map_String_String(
Map<String, String> self, SseSerializer serializer);
@protected
void
sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
CancellationToken self, SseSerializer serializer);
@protected
void
sse_encode_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
RequestClient self, SseSerializer serializer);
@protected
void sse_encode_StreamSink_list_prim_u_8_strict_Sse(
RustStreamSink<Uint8List> self, SseSerializer serializer);
@protected
void sse_encode_String(String self, SseSerializer serializer);
@protected
void sse_encode_bool(bool self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_Chrono_Duration(
Duration self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_client_certificate(
ClientCertificate self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_client_settings(
ClientSettings self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_http_headers(
HttpHeaders self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_http_response_body(
HttpResponseBody self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_proxy_settings(
ProxySettings self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_redirect_settings(
RedirectSettings self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_tls_settings(
TlsSettings self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_tls_version(
TlsVersion self, SseSerializer serializer);
@protected
void sse_encode_client_certificate(
ClientCertificate self, SseSerializer serializer);
@protected
void sse_encode_client_settings(
ClientSettings self, SseSerializer serializer);
@protected
void sse_encode_http_headers(HttpHeaders self, SseSerializer serializer);
@protected
void sse_encode_http_method(HttpMethod self, SseSerializer serializer);
@protected
void sse_encode_http_response(HttpResponse self, SseSerializer serializer);
@protected
void sse_encode_http_response_body(
HttpResponseBody self, SseSerializer serializer);
@protected
void sse_encode_http_version(HttpVersion self, SseSerializer serializer);
@protected
void sse_encode_i_32(int self, SseSerializer serializer);
@protected
void sse_encode_i_64(PlatformInt64 self, SseSerializer serializer);
@protected
void sse_encode_isize(PlatformInt64 self, SseSerializer serializer);
@protected
void sse_encode_list_list_prim_u_8_strict(
List<Uint8List> self, SseSerializer serializer);
@protected
void sse_encode_list_prim_u_8_loose(List<int> self, SseSerializer serializer);
@protected
void sse_encode_list_prim_u_8_strict(
Uint8List self, SseSerializer serializer);
@protected
void sse_encode_list_record_string_string(
List<(String, String)> self, SseSerializer serializer);
@protected
void
sse_encode_opt_AutoExplicit_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
RequestClient? self, SseSerializer serializer);
@protected
void sse_encode_opt_box_autoadd_Chrono_Duration(
Duration? self, SseSerializer serializer);
@protected
void sse_encode_opt_box_autoadd_client_certificate(
ClientCertificate? self, SseSerializer serializer);
@protected
void sse_encode_opt_box_autoadd_client_settings(
ClientSettings? self, SseSerializer serializer);
@protected
void sse_encode_opt_box_autoadd_http_headers(
HttpHeaders? self, SseSerializer serializer);
@protected
void sse_encode_opt_box_autoadd_proxy_settings(
ProxySettings? self, SseSerializer serializer);
@protected
void sse_encode_opt_box_autoadd_redirect_settings(
RedirectSettings? self, SseSerializer serializer);
@protected
void sse_encode_opt_box_autoadd_tls_settings(
TlsSettings? self, SseSerializer serializer);
@protected
void sse_encode_opt_box_autoadd_tls_version(
TlsVersion? self, SseSerializer serializer);
@protected
void sse_encode_opt_list_prim_u_8_strict(
Uint8List? self, SseSerializer serializer);
@protected
void sse_encode_opt_list_record_string_string(
List<(String, String)>? self, SseSerializer serializer);
@protected
void sse_encode_proxy_settings(ProxySettings self, SseSerializer serializer);
@protected
void sse_encode_record_string_string(
(String, String) self, SseSerializer serializer);
@protected
void sse_encode_redirect_settings(
RedirectSettings self, SseSerializer serializer);
@protected
void sse_encode_rhttp_error(RhttpError self, SseSerializer serializer);
@protected
void sse_encode_tls_settings(TlsSettings self, SseSerializer serializer);
@protected
void sse_encode_tls_version(TlsVersion self, SseSerializer serializer);
@protected
void sse_encode_u_16(int self, SseSerializer serializer);
@protected
void sse_encode_u_8(int self, SseSerializer serializer);
@protected
void sse_encode_unit(void self, SseSerializer serializer);
@protected
void sse_encode_usize(BigInt self, SseSerializer serializer);
}
// Section: wire_class
class RustLibWire implements BaseWire {
RustLibWire.fromExternalLibrary(ExternalLibrary lib);
void rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
int ptr) =>
wasmModule
.rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
ptr);
void rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
int ptr) =>
wasmModule
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
ptr);
void rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
int ptr) =>
wasmModule
.rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
ptr);
void rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
int ptr) =>
wasmModule
.rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
ptr);
}
@JS('wasm_bindgen')
external RustLibWasmModule get wasmModule;
@JS()
@anonymous
extension type RustLibWasmModule._(JSObject _) implements JSObject {
external void
rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
int ptr);
external void
rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerCancellationToken(
int ptr);
external void
rust_arc_increment_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
int ptr);
external void
rust_arc_decrement_strong_count_RustOpaque_flutter_rust_bridgefor_generatedRustAutoOpaqueInnerRequestClient(
int ptr);
}

View file

@ -1,5 +1,5 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import

View file

@ -36,7 +36,7 @@ extension BuildContextExtensions on BuildContext {
}
Color get secondaryColor {
return Theme.of(this).iconTheme.color!.withOpacity(0.7);
return Theme.of(this).iconTheme.color!.withValues(alpha: 0.7);
}
ThemeData get themeData {

View file

@ -5,23 +5,23 @@ packages:
dependency: transitive
description:
name: _fe_analyzer_shared
sha256: f256b0c0ba6c7577c15e2e4e114755640a875e885099367bf6e012b19314c834
sha256: "16e298750b6d0af7ce8a3ba7c18c69c3785d11b15ec83f6dcd0ad2a0009b3cab"
url: "https://pub.dev"
source: hosted
version: "72.0.0"
version: "76.0.0"
_macros:
dependency: transitive
description: dart
source: sdk
version: "0.3.2"
version: "0.3.3"
analyzer:
dependency: "direct overridden"
description:
name: analyzer
sha256: b652861553cd3990d8ed361f7979dc6d7053a9ac8843fa73820ab68ce5410139
sha256: "1f14db053a8c23e260789e9b0980fa27f2680dd640932cae5e1137cce0e46e1e"
url: "https://pub.dev"
source: hosted
version: "6.7.0"
version: "6.11.0"
analyzer_plugin:
dependency: transitive
description:
@ -282,10 +282,10 @@ packages:
dependency: transitive
description:
name: custom_lint_visitor
sha256: "8aeb3b6ae2bb765e7716b93d1d10e8356d04e0ff6d7592de6ee04e0dd7d6587d"
sha256: bfe9b7a09c4775a587b58d10ebb871d4fe618237639b1e84d5ec62d7dfef25f9
url: "https://pub.dev"
source: hosted
version: "1.0.0+6.7.0"
version: "1.0.0+6.11.0"
dart_eval:
dependency: "direct main"
description:
@ -435,10 +435,10 @@ packages:
dependency: "direct main"
description:
name: file_picker
sha256: "16dc141db5a2ccc6520ebb6a2eb5945b1b09e95085c021d9f914f8ded7f1465c"
sha256: "89500471922dd3a89ab0d6e13ab4a2268c25474bff4ca7c628f55c76e0ced1de"
url: "https://pub.dev"
source: hosted
version: "8.1.4"
version: "8.1.5"
fixnum:
dependency: transitive
description:
@ -598,10 +598,10 @@ packages:
dependency: "direct main"
description:
name: flutter_rust_bridge
sha256: fb9d3c9395eae3c71d4fe3ec343b9f30636c9988150c8bb33b60047549b34e3d
sha256: "35c257fc7f98e34c1314d6c145e5ed54e7c94e8a9f469947e31c9298177d546f"
url: "https://pub.dev"
source: hosted
version: "2.6.0"
version: "2.7.0"
flutter_test:
dependency: "direct dev"
description: flutter
@ -672,10 +672,10 @@ packages:
dependency: "direct main"
description:
name: go_router
sha256: "8660b74171fafae4aa8202100fa2e55349e078281dadc73a241eb8e758534d9d"
sha256: "2fd11229f59e23e967b0775df8d5948a519cd7e1e8b6e849729e010587b46539"
url: "https://pub.dev"
source: hosted
version: "14.6.1"
version: "14.6.2"
google_fonts:
dependency: "direct main"
description:
@ -792,10 +792,10 @@ packages:
dependency: transitive
description:
name: io
sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e"
sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b
url: "https://pub.dev"
source: hosted
version: "1.0.4"
version: "1.0.5"
iregexp:
dependency: transitive
description:
@ -880,18 +880,18 @@ packages:
dependency: transitive
description:
name: leak_tracker
sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05"
sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06"
url: "https://pub.dev"
source: hosted
version: "10.0.5"
version: "10.0.7"
leak_tracker_flutter_testing:
dependency: transitive
description:
name: leak_tracker_flutter_testing
sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806"
sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379"
url: "https://pub.dev"
source: hosted
version: "3.0.5"
version: "3.0.8"
leak_tracker_testing:
dependency: transitive
description:
@ -928,10 +928,10 @@ packages:
dependency: transitive
description:
name: macros
sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536"
sha256: "1d9e801cd66f7ea3663c45fc708450db1fa57f988142c64289142c9b7ee80656"
url: "https://pub.dev"
source: hosted
version: "0.1.2-main.4"
version: "0.1.3-main.0"
matcher:
dependency: transitive
description:
@ -1067,10 +1067,10 @@ packages:
dependency: transitive
description:
name: package_config
sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67"
url: "https://pub.dev"
source: hosted
version: "2.1.0"
version: "2.1.1"
package_info_plus:
dependency: "direct main"
description:
@ -1107,18 +1107,18 @@ packages:
dependency: transitive
description:
name: path_provider_android
sha256: "8c4967f8b7cb46dc914e178daa29813d83ae502e0529d7b0478330616a691ef7"
sha256: "4adf4fd5423ec60a29506c76581bc05854c55e3a0b72d35bb28d661c9686edf2"
url: "https://pub.dev"
source: hosted
version: "2.2.14"
version: "2.2.15"
path_provider_foundation:
dependency: transitive
description:
name: path_provider_foundation
sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16
sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942"
url: "https://pub.dev"
source: hosted
version: "2.4.0"
version: "2.4.1"
path_provider_linux:
dependency: transitive
description:
@ -1251,10 +1251,10 @@ packages:
dependency: transitive
description:
name: pub_semver
sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c"
sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd"
url: "https://pub.dev"
source: hosted
version: "2.1.4"
version: "2.1.5"
pubspec_parse:
dependency: transitive
description:
@ -1442,7 +1442,7 @@ packages:
dependency: transitive
description: flutter
source: sdk
version: "0.0.99"
version: "0.0.0"
source_gen:
dependency: transitive
description:
@ -1471,10 +1471,10 @@ packages:
dependency: transitive
description:
name: stack_trace
sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b"
sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377"
url: "https://pub.dev"
source: hosted
version: "1.11.1"
version: "1.12.0"
state_notifier:
dependency: transitive
description:
@ -1503,10 +1503,10 @@ packages:
dependency: transitive
description:
name: string_scanner
sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde"
sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3"
url: "https://pub.dev"
source: hosted
version: "1.2.0"
version: "1.3.0"
super_sliver_list:
dependency: "direct main"
description:
@ -1535,10 +1535,10 @@ packages:
dependency: transitive
description:
name: test_api
sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb"
sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c"
url: "https://pub.dev"
source: hosted
version: "0.7.2"
version: "0.7.3"
time:
dependency: transitive
description:
@ -1551,10 +1551,10 @@ packages:
dependency: transitive
description:
name: timing
sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32"
sha256: "62ee18aca144e4a9f29d212f5a4c6a053be252b895ab14b5821996cff4ed90fe"
url: "https://pub.dev"
source: hosted
version: "1.0.1"
version: "1.0.2"
tuple:
dependency: transitive
description:
@ -1607,10 +1607,10 @@ packages:
dependency: transitive
description:
name: url_launcher_ios
sha256: e43b677296fadce447e987a2f519dcf5f6d1e527dc35d01ffab4fff5b8a7063e
sha256: "16a513b6c12bb419304e72ea0ae2ab4fed569920d1c7cb850263fe3acc824626"
url: "https://pub.dev"
source: hosted
version: "6.3.1"
version: "6.3.2"
url_launcher_linux:
dependency: transitive
description:
@ -1623,10 +1623,10 @@ packages:
dependency: transitive
description:
name: url_launcher_macos
sha256: "769549c999acdb42b8bcfa7c43d72bf79a382ca7441ab18a808e101149daf672"
sha256: "17ba2000b847f334f16626a574c702b196723af2a289e7a93ffcb79acff855c2"
url: "https://pub.dev"
source: hosted
version: "3.2.1"
version: "3.2.2"
url_launcher_platform_interface:
dependency: transitive
description:
@ -1671,10 +1671,10 @@ packages:
dependency: transitive
description:
name: vm_service
sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d"
sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b
url: "https://pub.dev"
source: hosted
version: "14.2.5"
version: "14.3.0"
volume_controller:
dependency: transitive
description:
@ -1735,10 +1735,10 @@ packages:
dependency: transitive
description:
name: win32
sha256: "84ba388638ed7a8cb3445a320c8273136ab2631cd5f2c57888335504ddab1bc2"
sha256: "8b338d4486ab3fbc0ba0db9f9b4f5239b6697fcee427939a40e720cbb9ee0a69"
url: "https://pub.dev"
source: hosted
version: "5.8.0"
version: "5.9.0"
window_manager:
dependency: "direct main"
description:
@ -1791,10 +1791,10 @@ packages:
dependency: transitive
description:
name: xxh3
sha256: cbeb0e1d10f4c6bf67b650f395eac0cc689425b5efc2ba0cc3d3e069a0beaeec
sha256: "399a0438f5d426785723c99da6b16e136f4953fb1e9db0bf270bd41dd4619916"
url: "https://pub.dev"
source: hosted
version: "1.1.0"
version: "1.2.0"
yaml:
dependency: transitive
description:
@ -1812,5 +1812,5 @@ packages:
source: hosted
version: "2.2.1"
sdks:
dart: ">=3.5.4 <4.0.0"
dart: ">=3.6.0 <4.0.0"
flutter: ">=3.24.0"

View file

@ -4,7 +4,7 @@ publish_to: "none"
version: 0.3.8+73
environment:
sdk: ">=3.5.4 <4.0.0"
sdk: ^3.6.0
dependencies:
flutter:
@ -62,7 +62,7 @@ dependencies:
highlight: ^0.7.0
json_view: ^0.4.2
super_sliver_list: ^0.4.1
flutter_rust_bridge: 2.6.0
flutter_rust_bridge: 2.7.0
rust_lib_mangayomi:
path: rust_builder
pseudom: ^1.0.1

16
rust/Cargo.lock generated
View file

@ -416,10 +416,10 @@ dependencies = [
]
[[package]]
name = "dart-sys-fork"
version = "4.1.1"
name = "dart-sys"
version = "4.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "933dafff26172b719bb9695dd3715a1e7792f62dcdc8a5d4c740db7e0fedee8b"
checksum = "57967e4b200d767d091b961d6ab42cc7d0cc14fe9e052e75d0d3cf9eb732d895"
dependencies = [
"cc",
]
@ -532,9 +532,9 @@ dependencies = [
[[package]]
name = "flutter_rust_bridge"
version = "2.6.0"
version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "93b95a1b4f20b8c037535bcda990abf0ae2bd94c93e27ebbbe00633322bc1561"
checksum = "5419323ff3ae8b63ed20b7cd0fd0e3e73fa9234b3b212b87b5586fe76ae52318"
dependencies = [
"allo-isolate",
"android_logger",
@ -544,7 +544,7 @@ dependencies = [
"byteorder",
"chrono",
"console_error_panic_hook",
"dart-sys-fork",
"dart-sys",
"delegate-attr",
"flutter_rust_bridge_macros",
"futures",
@ -562,9 +562,9 @@ dependencies = [
[[package]]
name = "flutter_rust_bridge_macros"
version = "2.6.0"
version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fafd532ccfcce8ef23e858fe07303ff572e8b302be6ec0b0f38ca6eb319206dc"
checksum = "9c6fd06cacc0dfe931d00f3acdc5ac6c5dd9382b33dd78d71cce8f0a62e9458b"
dependencies = [
"hex",
"md-5",

View file

@ -7,7 +7,7 @@ edition = "2021"
crate-type = ["cdylib", "staticlib"]
[dependencies]
flutter_rust_bridge = { version = "=2.6.0", features = ["chrono"] }
flutter_rust_bridge = { version = "=2.7.0", features = ["chrono"] }
image = "0.25.5"
chrono = "0.4.38"
futures-util = "0.3.31"

View file

@ -1,5 +1,5 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
#![allow(
non_camel_case_types,
@ -38,7 +38,7 @@ flutter_rust_bridge::frb_generated_boilerplate!(
default_rust_opaque = RustOpaqueMoi,
default_rust_auto_opaque = RustAutoOpaqueMoi,
);
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_VERSION: &str = "2.6.0";
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_VERSION: &str = "2.7.0";
pub(crate) const FLUTTER_RUST_BRIDGE_CODEGEN_CONTENT_HASH: i32 = 107666026;
// Section: executor
@ -1905,7 +1905,7 @@ impl SseEncode for usize {
#[cfg(not(target_family = "wasm"))]
mod io {
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// Section: imports
@ -1957,7 +1957,7 @@ pub use io::*;
#[cfg(target_family = "wasm")]
mod web {
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.6.0.
// @generated by `flutter_rust_bridge`@ 2.7.0.
// Section: imports

View file

@ -37,18 +37,18 @@ packages:
dependency: transitive
description:
name: async
sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c"
sha256: d2872f9c19731c2e5f10444b14686eb7cc85c76274bd6c16e1816bff9a3bab63
url: "https://pub.dev"
source: hosted
version: "2.11.0"
version: "2.12.0"
boolean_selector:
dependency: transitive
description:
name: boolean_selector
sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66"
sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea"
url: "https://pub.dev"
source: hosted
version: "2.1.1"
version: "2.1.2"
collection:
dependency: "direct main"
description:
@ -69,10 +69,10 @@ packages:
dependency: transitive
description:
name: coverage
sha256: "576aaab8b1abdd452e0f656c3e73da9ead9d7880e15bdc494189d9c1a1baf0db"
sha256: e3493833ea012784c740e341952298f1cc77f1f01b1bbc3eb4eecf6984fb7f43
url: "https://pub.dev"
source: hosted
version: "1.9.0"
version: "1.11.1"
crypto:
dependency: "direct main"
description:
@ -101,10 +101,10 @@ packages:
dependency: transitive
description:
name: fixnum
sha256: "25517a4deb0c03aa0f32fd12db525856438902d9c16536311e76cdc57b31d7d1"
sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be
url: "https://pub.dev"
source: hosted
version: "1.1.0"
version: "1.1.1"
frontend_server_client:
dependency: transitive
description:
@ -165,10 +165,10 @@ packages:
dependency: transitive
description:
name: io
sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e"
sha256: dfd5a80599cf0165756e3181807ed3e77daf6dd4137caaad72d0b7931597650b
url: "https://pub.dev"
source: hosted
version: "1.0.4"
version: "1.0.5"
js:
dependency: transitive
description:
@ -213,18 +213,18 @@ packages:
dependency: transitive
description:
name: meta
sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7
sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c
url: "https://pub.dev"
source: hosted
version: "1.15.0"
version: "1.16.0"
mime:
dependency: transitive
description:
name: mime
sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2"
sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6"
url: "https://pub.dev"
source: hosted
version: "1.0.5"
version: "2.0.0"
node_preamble:
dependency: transitive
description:
@ -237,10 +237,10 @@ packages:
dependency: transitive
description:
name: package_config
sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd"
sha256: "92d4488434b520a62570293fbd33bb556c7d49230791c1b4bbd973baf6d2dc67"
url: "https://pub.dev"
source: hosted
version: "2.1.0"
version: "2.1.1"
path:
dependency: "direct main"
description:
@ -269,10 +269,10 @@ packages:
dependency: transitive
description:
name: pub_semver
sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c"
sha256: "7b3cfbf654f3edd0c6298ecd5be782ce997ddf0e00531b9464b55245185bbbbd"
url: "https://pub.dev"
source: hosted
version: "2.1.4"
version: "2.1.5"
shelf:
dependency: transitive
description:
@ -293,34 +293,34 @@ packages:
dependency: transitive
description:
name: shelf_static
sha256: a41d3f53c4adf0f57480578c1d61d90342cd617de7fc8077b1304643c2d85c1e
sha256: c87c3875f91262785dade62d135760c2c69cb217ac759485334c5857ad89f6e3
url: "https://pub.dev"
source: hosted
version: "1.1.2"
version: "1.1.3"
shelf_web_socket:
dependency: transitive
description:
name: shelf_web_socket
sha256: "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611"
sha256: cc36c297b52866d203dbf9332263c94becc2fe0ceaa9681d07b6ef9807023b67
url: "https://pub.dev"
source: hosted
version: "2.0.0"
version: "2.0.1"
source_map_stack_trace:
dependency: transitive
description:
name: source_map_stack_trace
sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae"
sha256: c0713a43e323c3302c2abe2a1cc89aa057a387101ebd280371d6a6c9fa68516b
url: "https://pub.dev"
source: hosted
version: "2.1.1"
version: "2.1.2"
source_maps:
dependency: transitive
description:
name: source_maps
sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703"
sha256: "190222579a448b03896e0ca6eca5998fa810fda630c1d65e2f78b3f638f54812"
url: "https://pub.dev"
source: hosted
version: "0.10.12"
version: "0.10.13"
source_span:
dependency: "direct main"
description:
@ -333,10 +333,10 @@ packages:
dependency: transitive
description:
name: stack_trace
sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b"
sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377"
url: "https://pub.dev"
source: hosted
version: "1.11.1"
version: "1.12.0"
stream_channel:
dependency: transitive
description:
@ -349,10 +349,10 @@ packages:
dependency: transitive
description:
name: string_scanner
sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3"
sha256: "0bd04f5bb74fcd6ff0606a888a30e917af9bd52820b178eaa464beb11dca84b6"
url: "https://pub.dev"
source: hosted
version: "1.3.0"
version: "1.4.0"
term_glyph:
dependency: transitive
description:
@ -365,26 +365,26 @@ packages:
dependency: "direct dev"
description:
name: test
sha256: "713a8789d62f3233c46b4a90b174737b2c04cb6ae4500f2aa8b1be8f03f5e67f"
sha256: "22eb7769bee38c7e032d532e8daa2e1cc901b799f603550a4db8f3a5f5173ea2"
url: "https://pub.dev"
source: hosted
version: "1.25.8"
version: "1.25.12"
test_api:
dependency: transitive
description:
name: test_api
sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c"
sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd
url: "https://pub.dev"
source: hosted
version: "0.7.3"
version: "0.7.4"
test_core:
dependency: transitive
description:
name: test_core
sha256: "12391302411737c176b0b5d6491f466b0dd56d4763e347b6714efbaa74d7953d"
sha256: "84d17c3486c8dfdbe5e12a50c8ae176d15e2a771b96909a9442b40173649ccaa"
url: "https://pub.dev"
source: hosted
version: "0.6.5"
version: "0.6.8"
toml:
dependency: "direct main"
description:
@ -397,10 +397,10 @@ packages:
dependency: transitive
description:
name: typed_data
sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c
sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006
url: "https://pub.dev"
source: hosted
version: "1.3.2"
version: "1.4.0"
version:
dependency: "direct main"
description:
@ -413,10 +413,10 @@ packages:
dependency: transitive
description:
name: vm_service
sha256: f652077d0bdf60abe4c1f6377448e8655008eef28f128bc023f7b5e8dfeb48fc
sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02
url: "https://pub.dev"
source: hosted
version: "14.2.4"
version: "15.0.0"
watcher:
dependency: transitive
description:
@ -429,10 +429,10 @@ packages:
dependency: transitive
description:
name: web
sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062
sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
url: "https://pub.dev"
source: hosted
version: "1.0.0"
version: "1.1.0"
web_socket:
dependency: transitive
description:
@ -466,4 +466,4 @@ packages:
source: hosted
version: "3.1.2"
sdks:
dart: ">=3.4.0 <4.0.0"
dart: ">=3.5.0 <4.0.0"