1
0
mirror of https://github.com/go-vikunja/app synced 2024-06-05 20:19:51 +00:00

refactor: dart fix, upgrade packages

This commit is contained in:
Denys Vitali 2024-03-26 20:26:01 +01:00
parent e9e23ed88b
commit e0c9f1a10e
No known key found for this signature in database
GPG Key ID: 5227C664145098BC
29 changed files with 131 additions and 146 deletions

0
android/gradlew vendored Normal file → Executable file
View File

View File

@ -1,4 +1,3 @@
import 'dart:async';
import 'dart:convert';
import 'dart:core';
import 'dart:io';

View File

@ -1,5 +1,4 @@
import 'dart:async';
import 'dart:developer';
import 'package:vikunja_app/api/client.dart';
import 'package:vikunja_app/api/service.dart';
import 'package:vikunja_app/models/namespace.dart';

View File

@ -1,5 +1,4 @@
import 'dart:async';
import 'dart:developer';
import 'package:vikunja_app/api/client.dart';
import 'package:vikunja_app/api/response.dart';

View File

@ -1,4 +1,3 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:package_info_plus/package_info_plus.dart';
import 'dart:convert';

View File

@ -1,8 +1,5 @@
import 'package:flutter/material.dart';
import 'package:vikunja_app/components/datetimePicker.dart';
import 'package:vikunja_app/global.dart';
import 'dart:developer';
import '../models/task.dart';
enum NewTaskDue {day,week, month, custom}
// TODO: add to enum above

View File

@ -60,7 +60,7 @@ class _BucketTaskCardState extends State<BucketTaskCard> with AutomaticKeepAlive
Text(
widget.task.identifier.isNotEmpty
? '#${widget.task.identifier}' : '${widget.task.id}',
style: (theme.textTheme.subtitle2 ?? TextStyle()).copyWith(
style: (theme.textTheme.titleSmall ?? TextStyle()).copyWith(
color: Colors.grey,
),
),
@ -283,8 +283,8 @@ class _BucketTaskCardState extends State<BucketTaskCard> with AutomaticKeepAlive
SizedBox(
height: (cardSize.height / 2) + (dropAbove ? dropBoxSize.height : 0),
child: DragTarget<TaskData>(
onWillAccept: (data) => dragTargetOnWillAccept(data!, DropLocation.above),
onAccept: dragTargetOnAccept,
onWillAcceptWithDetails: (data) => dragTargetOnWillAccept(data, DropLocation.above),
onAcceptWithDetails: dragTargetOnAccept,
onLeave: dragTargetOnLeave,
builder: (_, __, ___) => SizedBox.expand(),
),
@ -292,8 +292,8 @@ class _BucketTaskCardState extends State<BucketTaskCard> with AutomaticKeepAlive
SizedBox(
height: (cardSize.height / 2) + (dropBelow ? dropBoxSize.height : 0),
child: DragTarget<TaskData>(
onWillAccept: (data) => dragTargetOnWillAccept(data!, DropLocation.below),
onAccept: dragTargetOnAccept,
onWillAcceptWithDetails: (data) => dragTargetOnWillAccept(data, DropLocation.below),
onAcceptWithDetails: dragTargetOnAccept,
onLeave: dragTargetOnLeave,
builder: (_, __, ___) => SizedBox.expand(),
),

View File

@ -7,7 +7,6 @@ import 'package:provider/provider.dart';
import '../global.dart';
import '../models/bucket.dart';
import '../models/list.dart';
import '../models/project.dart';
import '../pages/list/list.dart';
import '../stores/project_store.dart';
@ -502,13 +501,13 @@ class KanbanClass {
// DragTarget to drop tasks in empty buckets
if (bucket.tasks.length == 0)
DragTarget<TaskData>(
onWillAccept: (data) {
onWillAcceptWithDetails: (data) {
/*setState(() =>*/ _bucketProps[bucket.id]!.taskDropSize =
data?.size;//);
data.size;//);
notify();
return true;
},
onAccept: (data) {
onAcceptWithDetails: (data) {
Provider.of<ProjectProvider>(context, listen: false)
.moveTaskToBucket(
context: context,

View File

@ -1,8 +1,5 @@
import 'package:datetime_picker_formfield/datetime_picker_formfield.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_widget_from_html/flutter_widget_from_html.dart';
import 'package:provider/provider.dart';
import 'package:vikunja_app/utils/priority.dart';
import '../models/label.dart';

View File

@ -12,13 +12,11 @@ class UserManager {
userMap.keys
.where((id) => _isNumeric(id))
.map((idString) => int.tryParse(idString));
return null;
});
}
bool _isNumeric(String str) {
if (str == null) {
return false;
}
return double.tryParse(str) != null;
}
}

View File

@ -1,4 +1,3 @@
import 'package:meta/meta.dart';
import 'package:vikunja_app/models/label.dart';
import 'package:vikunja_app/models/task.dart';
import 'package:vikunja_app/models/user.dart';
@ -10,7 +9,8 @@ class LabelTask {
LabelTask({required this.label, required this.task});
LabelTask.fromJson(Map<String, dynamic> json, User createdBy)
: label = new Label(id: json['label_id'], title: '', createdBy: createdBy),
: label =
new Label(id: json['label_id'], title: '', createdBy: createdBy),
task = null;
toJSON() => {

View File

@ -1,4 +1,3 @@
import 'package:meta/meta.dart';
import 'package:vikunja_app/models/label.dart';
class LabelTaskBulk {

View File

@ -1,19 +1,9 @@
import 'dart:async';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:after_layout/after_layout.dart';
import 'package:provider/provider.dart';
import 'package:vikunja_app/components/AddDialog.dart';
import 'package:vikunja_app/components/ErrorDialog.dart';
import 'package:vikunja_app/models/project.dart';
import 'package:vikunja_app/pages/namespace/namespace.dart';
import 'package:vikunja_app/pages/namespace/namespace_edit.dart';
import 'package:vikunja_app/pages/landing_page.dart';
import 'package:vikunja_app/global.dart';
import 'package:vikunja_app/models/namespace.dart';
import 'package:vikunja_app/pages/namespace/overview.dart';
import 'package:vikunja_app/pages/project/overview.dart';
import 'package:vikunja_app/pages/settings.dart';
@ -64,7 +54,7 @@ class HomePageState extends State<HomePage> {
);
}
_getDrawerItemWidget(int pos, {bool forceReload = false}) {
_getDrawerItemWidget(int pos) {
_previousDrawerIndex = pos;
return widgets[pos];
}

View File

@ -12,7 +12,6 @@ import 'package:vikunja_app/models/list.dart';
import 'package:vikunja_app/models/task.dart';
import 'package:vikunja_app/models/bucket.dart';
import 'package:vikunja_app/pages/list/list_edit.dart';
import 'package:vikunja_app/pages/list/task_edit.dart';
import 'package:vikunja_app/stores/list_store.dart';
import '../../components/pagestatus.dart';

View File

@ -1,7 +1,5 @@
import 'dart:ffi';
import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:flutter_typeahead/flutter_typeahead.dart';
import 'package:vikunja_app/global.dart';
import 'package:vikunja_app/models/list.dart';
import 'package:vikunja_app/theme/button.dart';
@ -107,7 +105,7 @@ class _ListEditPageState extends State<ListEditPage> {
onPressed: !_loading
? () {
if (_formKey.currentState!.validate()) {
Form.of(context)?.save();
Form.of(context).save();
_saveList(context);
}
}

View File

@ -454,7 +454,7 @@ class _TaskEditPageState extends State<TaskEditPage> {
onPressed: !_loading
? () {
if (_formKey.currentState!.validate()) {
Form.of(_listKey.currentContext!)!.save();
Form.of(_listKey.currentContext!).save();
_saveTask(_listKey.currentContext!);
}
}

View File

@ -83,7 +83,7 @@ class _NamespaceEditPageState extends State<NamespaceEditPage> {
onPressed: !_loading
? () {
if (_formKey.currentState!.validate()) {
Form.of(context)?.save();
Form.of(context).save();
_saveNamespace(context);
}
}

View File

@ -1,5 +1,4 @@
import 'package:after_layout/after_layout.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import '../../components/AddDialog.dart';

View File

@ -13,13 +13,13 @@ class PlaceholderPage extends StatelessWidget {
padding: EdgeInsets.only(top: 32.0),
child: Text(
'Welcome to Vikunja',
style: Theme.of(context).textTheme.headline5,
style: Theme.of(context).textTheme.headlineSmall,
),
),
Padding(
padding: EdgeInsets.symmetric(vertical: 10),
child: Text('Please select a namespace by tapping the ☰ icon.',
style: Theme.of(context).textTheme.subtitle1),
style: Theme.of(context).textTheme.titleMedium),
)
],
),

View File

@ -1,6 +1,5 @@
import 'package:after_layout/after_layout.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:vikunja_app/pages/project/project_task_list.dart';

View File

@ -1,4 +1,3 @@
import 'dart:ffi';
import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:vikunja_app/global.dart';
@ -107,7 +106,7 @@ class _ProjectEditPageState extends State<ProjectEditPage> {
onPressed: !_loading
? () {
if (_formKey.currentState!.validate()) {
Form.of(context)?.save();
Form.of(context).save();
_saveList(context);
}
}

View File

@ -8,10 +8,8 @@ import 'package:vikunja_app/components/AddDialog.dart';
import 'package:vikunja_app/components/KanbanWidget.dart';
import 'package:vikunja_app/components/TaskTile.dart';
import 'package:vikunja_app/global.dart';
import 'package:vikunja_app/models/list.dart';
import 'package:vikunja_app/models/task.dart';
import 'package:vikunja_app/models/bucket.dart';
import 'package:vikunja_app/pages/list/list_edit.dart';
import 'package:vikunja_app/pages/list/task_edit.dart';
import 'package:vikunja_app/pages/project/project_edit.dart';

View File

@ -1,8 +1,6 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:permission_handler/permission_handler.dart';
import 'package:vikunja_app/global.dart';
import 'package:vikunja_app/models/list.dart';
import 'package:collection/collection.dart';
import '../main.dart';

View File

@ -1,9 +1,7 @@
import 'dart:convert';
import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:vikunja_app/models/user.dart';
import 'package:vikunja_app/api/client.dart';
import 'package:webview_flutter/webview_flutter.dart';
class LoginWithWebView extends StatefulWidget {
@ -35,7 +33,7 @@ class LoginWithWebViewState extends State<LoginWithWebView> {
))
..loadRequest(Uri.parse(widget.frontEndUrl)).then((value) => {
webViewController!.runJavaScript("localStorage.clear(); location.href=location.href;")
webViewController.runJavaScript("localStorage.clear(); location.href=location.href;")
});
/*
@ -60,7 +58,7 @@ class LoginWithWebViewState extends State<LoginWithWebView> {
body: WebViewWidget(controller: webViewController,)
),
onWillPop: () async {
String? currentUrl = await webViewController?.currentUrl();
String? currentUrl = await webViewController.currentUrl();
if (currentUrl != null) {
bool hasPopped = await _handlePageFinished(currentUrl);
return Future.value(!hasPopped);
@ -71,35 +69,33 @@ class LoginWithWebViewState extends State<LoginWithWebView> {
Future<bool> _handlePageFinished(String pageLocation) async {
log("handlePageFinished");
if(webViewController != null) {
String localStorage = (await webViewController!
.runJavaScriptReturningResult("JSON.stringify(localStorage);")).toString();
String localStorage = (await webViewController
.runJavaScriptReturningResult("JSON.stringify(localStorage);")).toString();
String apiUrl = (await webViewController!.runJavaScriptReturningResult("API_URL")).toString();
String token = (await webViewController!.runJavaScriptReturningResult("localStorage['token']")).toString();
if (localStorage.toString() != "{}") {
apiUrl = apiUrl.replaceAll("\"", "");
token = token.replaceAll("\"", "");
if(!apiUrl.startsWith("http")) {
if(pageLocation.endsWith("/"))
pageLocation = pageLocation.substring(0,pageLocation.length-1);
apiUrl = pageLocation + apiUrl;
}
if (apiUrl != "null" && token != "null") {
BaseTokenPair baseTokenPair = BaseTokenPair(
apiUrl, token);
if(destroyed)
return true;
destroyed = true;
print("pop now");
Navigator.pop(context, baseTokenPair);
String apiUrl = (await webViewController.runJavaScriptReturningResult("API_URL")).toString();
String token = (await webViewController.runJavaScriptReturningResult("localStorage['token']")).toString();
if (localStorage.toString() != "{}") {
apiUrl = apiUrl.replaceAll("\"", "");
token = token.replaceAll("\"", "");
if(!apiUrl.startsWith("http")) {
if(pageLocation.endsWith("/"))
pageLocation = pageLocation.substring(0,pageLocation.length-1);
apiUrl = pageLocation + apiUrl;
}
if (apiUrl != "null" && token != "null") {
BaseTokenPair baseTokenPair = BaseTokenPair(
apiUrl, token);
if(destroyed)
return true;
}
destroyed = true;
print("pop now");
Navigator.pop(context, baseTokenPair);
return true;
}
}
return false;
return false;
}
}

View File

@ -1,7 +1,6 @@
import 'dart:async';
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
import 'package:vikunja_app/api/response.dart';
import 'package:vikunja_app/models/label.dart';

View File

@ -1,5 +1,4 @@
import 'package:flutter/material.dart';
import 'package:vikunja_app/theme/constants.dart';
class VikunjaButtonText extends StatelessWidget {
final String text;

View File

@ -8,26 +8,20 @@ ThemeData buildVikunjaDarkTheme() => _buildVikunjaTheme(ThemeData.dark(), isDark
ThemeData buildVikunjaMaterialLightTheme() {
return ThemeData.light().copyWith(
useMaterial3: true,
);
}
ThemeData buildVikunjaMaterialDarkTheme() {
return ThemeData.dark().copyWith(
useMaterial3: true,
);
}
ThemeData _buildVikunjaTheme(ThemeData base, {bool isDark = false}) {
return base.copyWith(
useMaterial3: true,
errorColor: vRed,
primaryColor: vPrimaryDark,
primaryColorLight: vPrimary,
primaryColorDark: vBlueDark,
colorScheme: base.colorScheme.copyWith(
primary: vPrimaryDark,
secondary: vPrimary,
),
floatingActionButtonTheme: base.floatingActionButtonTheme.copyWith(
foregroundColor: vWhite,
),
@ -38,7 +32,7 @@ ThemeData _buildVikunjaTheme(ThemeData base, {bool isDark = false}) {
// title: base.textTheme.title.copyWith(
// fontFamily: 'Quicksand',
// ),
button: base.textTheme.button?.copyWith(
labelLarge: base.textTheme.labelLarge?.copyWith(
color:
vWhite, // This does not work, looks like a bug in Flutter: https://github.com/flutter/flutter/issues/19623
),
@ -65,6 +59,9 @@ ThemeData _buildVikunjaTheme(ThemeData base, {bool isDark = false}) {
);
return _hslColor.withLightness(max(_hslColor.lightness - 0.03, 0)).toColor();
}(),
),
), colorScheme: base.colorScheme.copyWith(
primary: vPrimaryDark,
secondary: vPrimary,
).copyWith(error: vRed),
);
}

View File

@ -5,10 +5,10 @@ packages:
dependency: transitive
description:
name: _fe_analyzer_shared
sha256: eb376e9acf6938204f90eb3b1f00b578640d3188b4c8a8ec054f9f479af8d051
sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7"
url: "https://pub.dev"
source: hosted
version: "64.0.0"
version: "67.0.0"
after_layout:
dependency: "direct main"
description:
@ -21,10 +21,10 @@ packages:
dependency: transitive
description:
name: analyzer
sha256: "69f54f967773f6c26c7dcb13e93d7ccee8b17a641689da39e878d5cf13b06893"
sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d"
url: "https://pub.dev"
source: hosted
version: "6.2.0"
version: "6.4.1"
archive:
dependency: transitive
description:
@ -146,7 +146,7 @@ packages:
source: hosted
version: "1.1.1"
collection:
dependency: transitive
dependency: "direct main"
description:
name: collection
sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a
@ -197,10 +197,10 @@ packages:
dependency: transitive
description:
name: dart_style
sha256: "40ae61a5d43feea6d24bd22c0537a6629db858963b99b4bc1c3db80676f32368"
sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9"
url: "https://pub.dev"
source: hosted
version: "2.3.4"
version: "2.3.6"
datetime_picker_formfield:
dependency: "direct main"
description:
@ -229,10 +229,10 @@ packages:
dependency: "direct main"
description:
name: dynamic_color
sha256: a866f1f8947bfdaf674d7928e769eac7230388a2e7a2542824fad4bb5b87be3b
sha256: eae98052fa6e2826bdac3dd2e921c6ce2903be15c6b7f8b6d8a5d49b5086298d
url: "https://pub.dev"
source: hosted
version: "1.6.9"
version: "1.7.0"
fake_async:
dependency: transitive
description:
@ -245,10 +245,10 @@ packages:
dependency: transitive
description:
name: ffi
sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878"
sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21"
url: "https://pub.dev"
source: hosted
version: "2.1.0"
version: "2.1.2"
file:
dependency: transitive
description:
@ -601,7 +601,7 @@ packages:
source: hosted
version: "0.6.7"
json_annotation:
dependency: transitive
dependency: "direct main"
description:
name: json_annotation
sha256: b10a7b2ff83d83c777edba3c6a0f97045ddadd56c944e1a23a3fdf43a1bf4467
@ -640,6 +640,30 @@ packages:
url: "https://pub.dev"
source: hosted
version: "0.4.9"
leak_tracker:
dependency: transitive
description:
name: leak_tracker
sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa"
url: "https://pub.dev"
source: hosted
version: "10.0.0"
leak_tracker_flutter_testing:
dependency: transitive
description:
name: leak_tracker_flutter_testing
sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0
url: "https://pub.dev"
source: hosted
version: "2.0.1"
leak_tracker_testing:
dependency: transitive
description:
name: leak_tracker_testing
sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47
url: "https://pub.dev"
source: hosted
version: "2.0.1"
logging:
dependency: transitive
description:
@ -652,26 +676,26 @@ packages:
dependency: transitive
description:
name: matcher
sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e"
sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb
url: "https://pub.dev"
source: hosted
version: "0.12.16"
version: "0.12.16+1"
material_color_utilities:
dependency: transitive
description:
name: material_color_utilities
sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41"
sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a"
url: "https://pub.dev"
source: hosted
version: "0.5.0"
version: "0.8.0"
meta:
dependency: transitive
dependency: "direct main"
description:
name: meta
sha256: a6e590c838b18133bb482a2745ad77c5bb7715fb0451209e1a7567d416678b8e
sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04
url: "https://pub.dev"
source: hosted
version: "1.10.0"
version: "1.11.0"
mime:
dependency: transitive
description:
@ -732,10 +756,10 @@ packages:
dependency: transitive
description:
name: path
sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917"
sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af"
url: "https://pub.dev"
source: hosted
version: "1.8.3"
version: "1.9.0"
path_drawing:
dependency: transitive
description:
@ -900,10 +924,10 @@ packages:
dependency: "direct main"
description:
name: provider
sha256: "9a96a0a19b594dbc5bf0f1f27d2bc67d5f95957359b461cd9feb44ed6ae75096"
sha256: c8a055ee5ce3fd98d6fc872478b03823ffdb448699c6ebdbbc71d59b596fd48c
url: "https://pub.dev"
source: hosted
version: "6.1.1"
version: "6.1.2"
pub_semver:
dependency: transitive
description:
@ -1025,10 +1049,10 @@ packages:
dependency: transitive
description:
name: sqflite_common
sha256: "28d8c66baee4968519fb8bd6cdbedad982d6e53359091f0b74544a9f32ec72d5"
sha256: "3da423ce7baf868be70e2c0976c28a1bb2f73644268b7ffa7d2e08eab71f16a4"
url: "https://pub.dev"
source: hosted
version: "2.5.3"
version: "2.5.4"
stack_trace:
dependency: transitive
description:
@ -1094,7 +1118,7 @@ packages:
source: hosted
version: "0.5.9"
timezone:
dependency: transitive
dependency: "direct main"
description:
name: timezone
sha256: "57b35f6e8ef731f18529695bffc62f92c6189fac2e52c12d478dec1931afb66e"
@ -1113,26 +1137,26 @@ packages:
dependency: "direct main"
description:
name: url_launcher
sha256: c512655380d241a337521703af62d2c122bf7b77a46ff7dd750092aa9433499c
sha256: "0ecc004c62fd3ed36a2ffcbe0dd9700aee63bd7532d0b642a488b1ec310f492e"
url: "https://pub.dev"
source: hosted
version: "6.2.4"
version: "6.2.5"
url_launcher_android:
dependency: transitive
description:
name: url_launcher_android
sha256: "507dc655b1d9cb5ebc756032eb785f114e415f91557b73bf60b7e201dfedeb2f"
sha256: d4ed0711849dd8e33eb2dd69c25db0d0d3fdc37e0a62e629fe32f57a22db2745
url: "https://pub.dev"
source: hosted
version: "6.2.2"
version: "6.3.0"
url_launcher_ios:
dependency: transitive
description:
name: url_launcher_ios
sha256: "75bb6fe3f60070407704282a2d295630cab232991eb52542b18347a8a941df03"
sha256: "9149d493b075ed740901f3ee844a38a00b33116c7c5c10d7fb27df8987fb51d5"
url: "https://pub.dev"
source: hosted
version: "6.2.4"
version: "6.2.5"
url_launcher_linux:
dependency: transitive
description:
@ -1153,18 +1177,18 @@ packages:
dependency: transitive
description:
name: url_launcher_platform_interface
sha256: a932c3a8082e118f80a475ce692fde89dc20fddb24c57360b96bc56f7035de1f
sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029"
url: "https://pub.dev"
source: hosted
version: "2.3.1"
version: "2.3.2"
url_launcher_web:
dependency: transitive
description:
name: url_launcher_web
sha256: fff0932192afeedf63cdd50ecbb1bc825d31aed259f02bb8dba0f3b729a5e88b
sha256: "3692a459204a33e04bc94f5fb91158faf4f2c8903281ddd82915adecdb1a901d"
url: "https://pub.dev"
source: hosted
version: "2.2.3"
version: "2.3.0"
url_launcher_windows:
dependency: transitive
description:
@ -1217,18 +1241,18 @@ packages:
dependency: transitive
description:
name: video_player
sha256: fbf28ce8bcfe709ad91b5789166c832cb7a684d14f571a81891858fefb5bb1c2
sha256: afc65f4b8bcb2c188f64a591f84fb471f4f2e19fc607c65fd8d2f8fedb3dec23
url: "https://pub.dev"
source: hosted
version: "2.8.2"
version: "2.8.3"
video_player_android:
dependency: transitive
description:
name: video_player_android
sha256: "7f8f25d7ad56819a82b2948357f3c3af071f6a678db33833b26ec36bbc221316"
sha256: "4dd9b8b86d70d65eecf3dcabfcdfbb9c9115d244d022654aba49a00336d540c2"
url: "https://pub.dev"
source: hosted
version: "2.4.11"
version: "2.4.12"
video_player_avfoundation:
dependency: transitive
description:
@ -1249,10 +1273,10 @@ packages:
dependency: transitive
description:
name: video_player_web
sha256: "34beb3a07d4331a24f7e7b2f75b8e2b103289038e07e65529699a671b6a6e2cb"
sha256: "41245cef5ef29c4585dbabcbcbe9b209e34376642c7576cabf11b4ad9289d6e4"
url: "https://pub.dev"
source: hosted
version: "2.1.3"
version: "2.3.0"
vm_service:
dependency: transitive
description:
@ -1313,18 +1337,18 @@ packages:
dependency: transitive
description:
name: web
sha256: afe077240a270dcfd2aafe77602b4113645af95d0ad31128cc02bce5ac5d5152
sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27"
url: "https://pub.dev"
source: hosted
version: "0.3.0"
version: "0.5.1"
web_socket_channel:
dependency: transitive
description:
name: web_socket_channel
sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b
sha256: "1d8e795e2a8b3730c41b8a98a2dff2e0fb57ae6f0764a1c46ec5915387d257b2"
url: "https://pub.dev"
source: hosted
version: "2.4.0"
version: "2.4.4"
webkit_inspection_protocol:
dependency: transitive
description:
@ -1337,18 +1361,18 @@ packages:
dependency: "direct main"
description:
name: webview_flutter
sha256: d81b68e88cc353e546afb93fb38958e3717282c5ac6e5d3be4a4aef9fc3c1413
sha256: "25e1b6e839e8cbfbd708abc6f85ed09d1727e24e08e08c6b8590d7c65c9a8932"
url: "https://pub.dev"
source: hosted
version: "4.5.0"
version: "4.7.0"
webview_flutter_android:
dependency: transitive
description:
name: webview_flutter_android
sha256: "3e5f4e9d818086b0d01a66fb1ff9cc72ab0cc58c71980e3d3661c5685ea0efb0"
sha256: f038ee2fae73b509dde1bc9d2c5a50ca92054282de17631a9a3d515883740934
url: "https://pub.dev"
source: hosted
version: "3.15.0"
version: "3.16.0"
webview_flutter_platform_interface:
dependency: transitive
description:
@ -1361,10 +1385,10 @@ packages:
dependency: transitive
description:
name: webview_flutter_wkwebview
sha256: "4d062ad505390ecef1c4bfb6001cd857a51e00912cc9dfb66edb1886a9ebd80c"
sha256: f12f8d8a99784b863e8b85e4a9a5e3cf1839d6803d2c0c3e0533a8f3c5a992a7
url: "https://pub.dev"
source: hosted
version: "3.10.2"
version: "3.13.0"
win32:
dependency: transitive
description:
@ -1406,5 +1430,5 @@ packages:
source: hosted
version: "3.1.2"
sdks:
dart: ">=3.2.0 <4.0.0"
flutter: ">=3.16.0"
dart: ">=3.3.0 <4.0.0"
flutter: ">=3.19.0"

View File

@ -37,6 +37,10 @@ dependencies:
flutter_downloader: ^1.11.6
meta: any
timezone: any
json_annotation: any
collection: any
dev_dependencies:
flutter_test:
sdk: flutter