diff --git a/lib/helper/command_parser.dart b/lib/helper/command_parser.dart index 6cb43a5..ee29182 100644 --- a/lib/helper/command_parser.dart +++ b/lib/helper/command_parser.dart @@ -36,14 +36,16 @@ List _defaultData(final Object fromObject, final String command) { throw Exception('Unexpected fromObject type'); } - return parseCommand(command, - url: url, - title: title, - description: description, - type: type, - preview: preview, - thumbnail: thumbnail, - icon: icon); + return parseCommand( + command, + url: url, + title: title, + description: description, + type: type, + preview: preview, + thumbnail: thumbnail, + icon: icon, + ); } Future playFromUrl( diff --git a/lib/helper/time.dart b/lib/helper/time.dart index 3ec9807..e50732f 100644 --- a/lib/helper/time.dart +++ b/lib/helper/time.dart @@ -1,7 +1,8 @@ /// Used to calculate YouTube video age /// Returns [String] /// ```dart -/// timeSince(DateTime., DateTime.now()); +/// start = +/// print(timeSince(DateTime(2022), DateTime(2023)); // 1 year /// ``` String timeSince(final DateTime startTime, final DateTime endTime) { final duration = startTime.difference(endTime); diff --git a/lib/model/config.dart b/lib/model/config.dart index 1f63c4e..1900132 100644 --- a/lib/model/config.dart +++ b/lib/model/config.dart @@ -5,6 +5,7 @@ import 'package:yaml/yaml.dart'; import 'package:yaml_edit/yaml_edit.dart'; import '../const.dart'; +import '../util/dynamic.dart'; import 'setting_options.dart'; abstract class YamlConfig { @@ -82,14 +83,12 @@ class UserConfig extends YamlConfig { required final String rawFile, required final dynamic json, }) { - if (!(json is Map)) { + if (json is! Map) { return UserConfig._defaultConfig(); } - final minimizedOnLaunch = switch (json['minimizedOnLaunch']) { - final bool value => value, - _ => null - }; + final minimizedOnLaunch = json['minimizedOnLaunch']?.unwrapOrNull(); + final onPlay = switch (json['onPlay']) { 'nothing' => OnPlayOptions.nothing, 'minimize' => OnPlayOptions.minimize, @@ -97,10 +96,9 @@ class UserConfig extends YamlConfig { 'exit' => OnPlayOptions.exit, _ => null }; - final autofocusNavigation = switch (json['autofocusNavigation']) { - final bool value => value, - _ => null - }; + final autofocusNavigation = + json['autofocusNavigation']?.unwrapOrNull(); + final videoPlayCommand = switch (json['videoPlayCommand']) { final List value => value.map((final command) => command.toString()).toList(), @@ -111,10 +109,11 @@ class UserConfig extends YamlConfig { value.map((final command) => command.toString()).toList(), _ => null }; - final youtube = switch (json['youtube']) { - final Map? value => value, - _ => null - }; + final youtube = json['youtube']?.unwrapOrNull>(); + // final youtube = switch (json['youtube']) { + // final Map? value => value, + // _ => null + // }; final theme = switch (json['theme']) { final Map? value => value, _ => null @@ -224,7 +223,7 @@ class _ConfigYoutube extends YamlConfig { factory _ConfigYoutube.fromMap({ required final String filePath, required final String rawFile, - final Map? youtube, + final Map? youtube, }) => youtube == null ? _ConfigYoutube(apiKey: '') diff --git a/lib/model/setting_options.dart b/lib/model/setting_options.dart index a419bdb..1788d49 100644 --- a/lib/model/setting_options.dart +++ b/lib/model/setting_options.dart @@ -28,15 +28,13 @@ enum OnPlayOptions implements SettingOptions { @override int currentIndex() => super.index; - factory OnPlayOptions.fromString(final String option) { - return switch (option) { - 'nothing' => OnPlayOptions.nothing, - 'minimize' => OnPlayOptions.minimize, - 'tray' => OnPlayOptions.tray, - 'exit' => OnPlayOptions.exit, - _ => OnPlayOptions.nothing, - }; - } + factory OnPlayOptions.fromString(final String option) => switch (option) { + 'nothing' => OnPlayOptions.nothing, + 'minimize' => OnPlayOptions.minimize, + 'tray' => OnPlayOptions.tray, + 'exit' => OnPlayOptions.exit, + _ => OnPlayOptions.nothing, + }; } /// Theme brightness mode. @@ -61,14 +59,12 @@ enum BrightnessOptions implements SettingOptions { @override int currentIndex() => super.index; - factory BrightnessOptions.fromString(final String option) { - return switch (option) { - 'light' => BrightnessOptions.light, - 'dark' => BrightnessOptions.dark, - 'system' => BrightnessOptions.system, - _ => BrightnessOptions.dark, - }; - } + factory BrightnessOptions.fromString(final String option) => switch (option) { + 'light' => BrightnessOptions.light, + 'dark' => BrightnessOptions.dark, + 'system' => BrightnessOptions.system, + _ => BrightnessOptions.dark, + }; } /// Visual desity mode controls how dense the UI looks. The densier the UI is, @@ -94,13 +90,12 @@ enum VisualDensityOptions implements SettingOptions { @override int currentIndex() => super.index; - factory VisualDensityOptions.fromString(final String option) { - return switch (option) { - 'compact' => VisualDensityOptions.compact, - 'standard' => VisualDensityOptions.standard, - 'comfort' => VisualDensityOptions.comfort, - 'adaptive' => VisualDensityOptions.adaptive, - _ => VisualDensityOptions.adaptive, - }; - } + factory VisualDensityOptions.fromString(final String option) => + switch (option) { + 'compact' => VisualDensityOptions.compact, + 'standard' => VisualDensityOptions.standard, + 'comfort' => VisualDensityOptions.comfort, + 'adaptive' => VisualDensityOptions.adaptive, + _ => VisualDensityOptions.adaptive, + }; } diff --git a/lib/model/theme.dart b/lib/model/theme.dart index 61b8332..73c9b35 100644 --- a/lib/model/theme.dart +++ b/lib/model/theme.dart @@ -1,13 +1,6 @@ import 'dart:ui'; class AppTheme { - final Brightness brightness; - final Color background; - final Color backgroundHighlight; - final Color backgroundDarker; - final Color text; - final Color primary; - const AppTheme({ required this.brightness, required this.background, @@ -17,45 +10,55 @@ class AppTheme { required this.primary, }); - factory AppTheme.arc() { - return const AppTheme( - brightness: Brightness.light, - background: Color(0xFFFFFFFF), - backgroundHighlight: Color(0xFFFAFBFC), - backgroundDarker: Color(0xFFF5F6F7), - text: Color(0xFFD3DAE3), - primary: Color(0xFF5294E2), - ); - } - - factory AppTheme.arcDarker() { - return const AppTheme( - brightness: Brightness.light, - background: Color(0xFF404552), - backgroundHighlight: Color(0xFF505666), - backgroundDarker: Color(0xFF2F343F), - text: Color(0xFFD3DAE3), - primary: Color(0xFF5294E2), - ); - } - - factory AppTheme.arcDark() { - return const AppTheme( - brightness: Brightness.dark, - background: Color(0xFF404552), - backgroundHighlight: Color(0xFF505666), - backgroundDarker: Color(0xFF2F343F), - text: Color(0xFFD3DAE3), - primary: Color(0xFF5294E2), - ); - } - - factory AppTheme.from(final String themeName) { - return switch (themeName) { - 'Arc' => AppTheme.arc(), - 'Arc-Darker' => AppTheme.arcDarker(), - 'Arc-Dark' => AppTheme.arcDark(), - _ => AppTheme.arcDark(), - }; - } + /// + final Brightness brightness; + + /// + final Color background; + + /// + final Color backgroundHighlight; + + /// + final Color backgroundDarker; + + /// + final Color text; + + /// + final Color primary; + + factory AppTheme.arc() => const AppTheme( + brightness: Brightness.light, + background: Color(0xFFFFFFFF), + backgroundHighlight: Color(0xFFFAFBFC), + backgroundDarker: Color(0xFFF5F6F7), + text: Color(0xFFD3DAE3), + primary: Color(0xFF5294E2), + ); + + factory AppTheme.arcDarker() => const AppTheme( + brightness: Brightness.light, + background: Color(0xFF404552), + backgroundHighlight: Color(0xFF505666), + backgroundDarker: Color(0xFF2F343F), + text: Color(0xFFD3DAE3), + primary: Color(0xFF5294E2), + ); + + factory AppTheme.arcDark() => const AppTheme( + brightness: Brightness.dark, + background: Color(0xFF404552), + backgroundHighlight: Color(0xFF505666), + backgroundDarker: Color(0xFF2F343F), + text: Color(0xFFD3DAE3), + primary: Color(0xFF5294E2), + ); + + factory AppTheme.from(final String themeName) => switch (themeName) { + 'Arc' => AppTheme.arc(), + 'Arc-Darker' => AppTheme.arcDarker(), + 'Arc-Dark' => AppTheme.arcDark(), + _ => AppTheme.arcDark(), + }; } diff --git a/lib/page/settings.dart b/lib/page/settings.dart index 03e3f18..a27333a 100644 --- a/lib/page/settings.dart +++ b/lib/page/settings.dart @@ -49,22 +49,17 @@ class SettingsPage extends StatelessWidget { return const Center(child: ProgressBar()); } - final userConfig = switch (data.first) { - final UserConfig userConfig => userConfig, - _ => null, - }; - final feedList = switch (data.last) { - final String feedList => feedList, - _ => null, - }; + final userConfig = data.first; + final feedList = data.last; - if (userConfig == null || feedList == null) { + if (userConfig is! UserConfig || feedList is! String) { return const SizedBox(); } final parsedFeedList = switch (yaml.loadYaml(feedList)) { - final List urls => - urls.map((final url) => url.toString()).toList(), + final List urls => [ + for (final url in urls) url.toString() + ], _ => [''] }; diff --git a/lib/util/dynamic.dart b/lib/util/dynamic.dart new file mode 100644 index 0000000..6d124f4 --- /dev/null +++ b/lib/util/dynamic.dart @@ -0,0 +1,8 @@ +extension Unwrap on Object { + /// TODO: + /// + T? unwrapOrNull([final T Function(T)? callback]) => switch (this) { + final T value => callback == null ? value : callback(value), + _ => null, + }; +} diff --git a/lib/widget/search_error.dart b/lib/widget/search_error.dart index 9ae1d01..ac467f0 100644 --- a/lib/widget/search_error.dart +++ b/lib/widget/search_error.dart @@ -72,9 +72,7 @@ class SearchError extends StatelessWidget { message: 'Copy to clipboard', child: Button( child: const Icon(FluentIcons.copy), - onPressed: () async { - await _handleCopyToClipboard(context); - }, + onPressed: () async => _handleCopyToClipboard(context), ), ), ), diff --git a/pubspec.lock b/pubspec.lock index fef2fad..3e776c0 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -5,18 +5,23 @@ packages: dependency: transitive description: name: _fe_analyzer_shared - sha256: "0b2f2bd91ba804e53a61d757b986f89f1f9eaed5b11e4b2f5a2468d86d6c9fc7" + sha256: f256b0c0ba6c7577c15e2e4e114755640a875e885099367bf6e012b19314c834 url: "https://pub.dev" source: hosted - version: "67.0.0" + version: "72.0.0" + _macros: + dependency: transitive + description: dart + source: sdk + version: "0.3.2" analyzer: dependency: transitive description: name: analyzer - sha256: "37577842a27e4338429a1cbc32679d508836510b056f1eedf0c8d20e39c1383d" + sha256: b652861553cd3990d8ed361f7979dc6d7053a9ac8843fa73820ab68ce5410139 url: "https://pub.dev" source: hosted - version: "6.4.1" + version: "6.7.0" analyzer_plugin: dependency: transitive description: @@ -116,50 +121,50 @@ packages: dependency: transitive description: name: coverage - sha256: "8acabb8306b57a409bf4c83522065672ee13179297a6bb0cb9ead73948df7c76" + sha256: c1fb2dce3c0085f39dc72668e85f8e0210ec7de05345821ff58530567df345a5 url: "https://pub.dev" source: hosted - version: "1.7.2" + version: "1.9.2" crypto: dependency: transitive description: name: crypto - sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab + sha256: ec30d999af904f33454ba22ed9a86162b35e52b44ac4807d1d93c288041d7d27 url: "https://pub.dev" source: hosted - version: "3.0.3" + version: "3.0.5" custom_lint: dependency: "direct dev" description: name: custom_lint - sha256: "7c0aec12df22f9082146c354692056677f1e70bc43471644d1fdb36c6fdda799" + sha256: "6e1ec47427ca968f22bce734d00028ae7084361999b41673291138945c5baca0" url: "https://pub.dev" source: hosted - version: "0.6.4" + version: "0.6.7" custom_lint_builder: dependency: transitive description: name: custom_lint_builder - sha256: d7dc41e709dde223806660268678be7993559e523eb3164e2a1425fd6f7615a9 + sha256: ba2f90fff4eff71d202d097eb14b14f87087eaaef742e956208c0eb9d3a40a21 url: "https://pub.dev" source: hosted - version: "0.6.4" + version: "0.6.7" custom_lint_core: dependency: transitive description: name: custom_lint_core - sha256: a85e8f78f4c52f6c63cdaf8c872eb573db0231dcdf3c3a5906d493c1f8bc20e6 + sha256: "4ddbbdaa774265de44c97054dcec058a83d9081d071785ece601e348c18c267d" url: "https://pub.dev" source: hosted - version: "0.6.3" + version: "0.6.5" dart_style: dependency: transitive description: name: dart_style - sha256: "99e066ce75c89d6b29903d788a7bb9369cf754f7b24bf70bf4b6d6d6b26853b9" + sha256: "7856d364b589d1f08986e140938578ed36ed948581fbc3bc9aef1805039ac5ab" url: "https://pub.dev" source: hosted - version: "2.3.6" + version: "2.3.7" extra_pedantic: dependency: "direct dev" description: @@ -180,10 +185,10 @@ packages: dependency: transitive description: name: ffi - sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21" + sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.3" file: dependency: transitive description: @@ -204,10 +209,10 @@ packages: dependency: "direct main" description: name: fluent_ui - sha256: a8c76cb501303d108cb9bd33e516da7cfd078031ff427d68eab6069bf4492a2c + sha256: ae97c15cbf41594e31d9582a359b5a725cb66753bef73ed845ba534d3c7ec053 url: "https://pub.dev" source: hosted - version: "4.8.7" + version: "4.9.1" flutter: dependency: "direct main" description: flutter @@ -240,18 +245,18 @@ packages: dependency: transitive description: name: freezed_annotation - sha256: c3fd9336eb55a38cc1bbd79ab17573113a8deccd0ecbbf926cca3c62803b5c2d + sha256: c2e2d632dd9b8a2b7751117abcfc2b4888ecfe181bd9fca7170d9ef02e595fe2 url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.4" frontend_server_client: dependency: transitive description: name: frontend_server_client - sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 url: "https://pub.dev" source: hosted - version: "3.2.0" + version: "4.0.0" glob: dependency: transitive description: @@ -272,10 +277,10 @@ packages: dependency: transitive description: name: http - sha256: "761a297c042deedc1ffbb156d6e2af13886bb305c2a343a4d972504cd67dd938" + sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010 url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.2" http_multi_server: dependency: transitive description: @@ -296,10 +301,10 @@ packages: dependency: transitive description: name: intl - sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf url: "https://pub.dev" source: hosted - version: "0.18.1" + version: "0.19.0" io: dependency: transitive description: @@ -312,10 +317,10 @@ packages: dependency: transitive description: name: js - sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + sha256: c1b2e9b5ea78c45e1a0788d29606ba27dc5f71f019f32ca5140f61ef071838cf url: "https://pub.dev" source: hosted - version: "0.6.7" + version: "0.7.1" json_annotation: dependency: transitive description: @@ -328,26 +333,26 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "78eb209deea09858f5269f5a5b02be4049535f568c07b275096836f01ea323fa" + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" url: "https://pub.dev" source: hosted - version: "10.0.0" + version: "10.0.5" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: b46c5e37c19120a8a01918cfaf293547f47269f7cb4b0058f21531c2465d6ef0 + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.5" leak_tracker_testing: dependency: transitive description: name: leak_tracker_testing - sha256: a597f72a664dbd293f3bfc51f9ba69816f84dcd403cdac7066cb3f6003f3ab47 + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" url: "https://pub.dev" source: hosted - version: "2.0.1" + version: "3.0.1" logging: dependency: transitive description: @@ -356,6 +361,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.2.0" + macros: + dependency: transitive + description: + name: macros + sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" + url: "https://pub.dev" + source: hosted + version: "0.1.2-main.4" matcher: dependency: transitive description: @@ -368,34 +381,34 @@ packages: dependency: transitive description: name: material_color_utilities - sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec url: "https://pub.dev" source: hosted - version: "0.8.0" + version: "0.11.1" math_expressions: dependency: transitive description: name: math_expressions - sha256: db0b72d867491c4e53a1c773e2708d5d6e94bbe06be07080fc9f896766b9cd3d + sha256: e32d803d758ace61cc6c4bdfed1226ff60a6a23646b35685670d28b5616139f8 url: "https://pub.dev" source: hosted - version: "2.5.0" + version: "2.6.0" meta: dependency: transitive description: name: meta - sha256: d584fa6707a52763a52446f02cc621b077888fb63b93bbcb1143a7be5a0c0c04 + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 url: "https://pub.dev" source: hosted - version: "1.11.0" + version: "1.15.0" mime: dependency: transitive description: name: mime - sha256: "2e123074287cc9fd6c09de8336dae606d1ddb88d9ac47358826db698c176a1f2" + sha256: "801fd0b26f14a4a58ccb09d5892c3fbdeff209594300a542492cf13fba9d247a" url: "https://pub.dev" source: hosted - version: "1.0.5" + version: "1.0.6" node_preamble: dependency: transitive description: @@ -440,10 +453,10 @@ packages: dependency: transitive description: name: path_provider_windows - sha256: "8bc9f22eee8690981c22aa7fc602f5c85b497a6fb2ceb35ee5a5e5ed85ad8170" + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 url: "https://pub.dev" source: hosted - version: "2.2.1" + version: "2.3.0" petitparser: dependency: transitive description: @@ -456,10 +469,10 @@ packages: dependency: transitive description: name: platform - sha256: "12220bb4b65720483f8fa9450b4332347737cf8213dd2840d8b2c823e47243ec" + sha256: "9b71283fc13df574056616011fb138fd3b793ea47cc509c189a6c3fa5f8a1a65" url: "https://pub.dev" source: hosted - version: "3.1.4" + version: "3.1.5" plugin_platform_interface: dependency: transitive description: @@ -488,10 +501,10 @@ packages: dependency: transitive description: name: pubspec_parse - sha256: c63b2876e58e194e4b0828fcb080ad0e06d051cb607a6be51a9e084f47cb9367 + sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8 url: "https://pub.dev" source: hosted - version: "1.2.3" + version: "1.3.0" recase: dependency: transitive description: @@ -512,35 +525,35 @@ packages: dependency: transitive description: name: riverpod_analyzer_utils - sha256: "8b71f03fc47ae27d13769496a1746332df4cec43918aeba9aff1e232783a780f" + sha256: ac28d7bc678471ec986b42d88e5a0893513382ff7542c7ac9634463b044ac72c url: "https://pub.dev" source: hosted - version: "0.5.1" + version: "0.5.4" riverpod_lint: dependency: "direct dev" description: name: riverpod_lint - sha256: "3c67c14ccd16f0c9d53e35ef70d06cd9d072e2fb14557326886bbde903b230a5" + sha256: a35a92f2c2a4b7a5d95671c96c5432b42c20f26bb3e985e83d0b186471b61a85 url: "https://pub.dev" source: hosted - version: "2.3.10" + version: "2.3.13" rss_dart: dependency: "direct main" description: path: "." ref: HEAD - resolved-ref: d74949d30ef531d39d32d305cdddbb86586407bc + resolved-ref: "53f8c5da0d73a6f6554391856840918c2d62a087" url: "https://github.com/brainwo/rss.dart.git" source: git - version: "1.0.6" + version: "1.0.10" rxdart: dependency: transitive description: name: rxdart - sha256: "0c7c0cedd93788d996e33041ffecda924cc54389199cde4e6a34b440f50044cb" + sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" url: "https://pub.dev" source: hosted - version: "0.27.7" + version: "0.28.0" scroll_pos: dependency: transitive description: @@ -553,58 +566,58 @@ packages: dependency: "direct main" description: name: shared_preferences - sha256: d3bbe5553a986e83980916ded2f0b435ef2e1893dfaa29d5a7a790d0eca12180 + sha256: "746e5369a43170c25816cc472ee016d3a66bc13fcf430c0bc41ad7b4b2922051" url: "https://pub.dev" source: hosted - version: "2.2.3" + version: "2.3.2" shared_preferences_android: dependency: transitive description: name: shared_preferences_android - sha256: "1ee8bf911094a1b592de7ab29add6f826a7331fb854273d55918693d5364a1f2" + sha256: "480ba4345773f56acda9abf5f50bd966f581dac5d514e5fc4a18c62976bbba7e" url: "https://pub.dev" source: hosted - version: "2.2.2" + version: "2.3.2" shared_preferences_foundation: dependency: transitive description: name: shared_preferences_foundation - sha256: "7708d83064f38060c7b39db12aefe449cb8cdc031d6062280087bc4cdb988f5c" + sha256: c4b35f6cb8f63c147312c054ce7c2254c8066745125264f0c88739c417fc9d9f url: "https://pub.dev" source: hosted - version: "2.3.5" + version: "2.5.2" shared_preferences_linux: dependency: transitive description: name: shared_preferences_linux - sha256: "9f2cbcf46d4270ea8be39fa156d86379077c8a5228d9dfdb1164ae0bb93f1faa" + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.4.1" shared_preferences_platform_interface: dependency: transitive description: name: shared_preferences_platform_interface - sha256: "22e2ecac9419b4246d7c22bfbbda589e3acf5c0351137d87dd2939d984d37c3b" + sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.4.1" shared_preferences_web: dependency: transitive description: name: shared_preferences_web - sha256: "9aee1089b36bd2aafe06582b7d7817fd317ef05fc30e6ba14bff247d0933042a" + sha256: d2ca4132d3946fec2184261726b355836a82c33d7d5b67af32692aff18a4684e url: "https://pub.dev" source: hosted - version: "2.3.0" + version: "2.4.2" shared_preferences_windows: dependency: transitive description: name: shared_preferences_windows - sha256: "841ad54f3c8381c480d0c9b508b89a34036f512482c407e6df7a9c4aa2ef8f59" + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" url: "https://pub.dev" source: hosted - version: "2.3.2" + version: "2.4.1" shelf: dependency: transitive description: @@ -625,18 +638,18 @@ 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: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" + sha256: "073c147238594ecd0d193f3456a5fe91c4b0abbcc68bf5cd95b36c4e194ac611" url: "https://pub.dev" source: hosted - version: "1.0.4" + version: "2.0.0" sky_engine: dependency: transitive description: flutter @@ -646,10 +659,10 @@ packages: 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: @@ -726,26 +739,26 @@ packages: dependency: "direct dev" description: name: test - sha256: a1f7595805820fcc05e5c52e3a231aedd0b72972cb333e8c738a8b1239448b6f + sha256: "7ee44229615f8f642b68120165ae4c2a75fe77ae2065b1e55ae4711f6cf0899e" url: "https://pub.dev" source: hosted - version: "1.24.9" + version: "1.25.7" test_api: dependency: transitive description: name: test_api - sha256: "5c2f730018264d276c20e4f1503fd1308dfbbae39ec8ee63c5236311ac06954b" + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" url: "https://pub.dev" source: hosted - version: "0.6.1" + version: "0.7.2" test_core: dependency: transitive description: name: test_core - sha256: a757b14fc47507060a162cc2530d9a4a2f92f5100a952c7443b5cad5ef5b106a + sha256: "55ea5a652e38a1dfb32943a7973f3681a60f872f8c3a05a14664ad54ef9c6696" url: "https://pub.dev" source: hosted - version: "0.5.9" + version: "0.6.4" typed_data: dependency: transitive description: @@ -758,42 +771,42 @@ packages: dependency: "direct main" description: name: url_launcher - sha256: "6ce1e04375be4eed30548f10a315826fd933c1e493206eab82eed01f438c8d2e" + sha256: "21b704ce5fa560ea9f3b525b43601c678728ba46725bab9b01187b4831377ed3" url: "https://pub.dev" source: hosted - version: "6.2.6" + version: "6.3.0" url_launcher_android: dependency: transitive description: name: url_launcher_android - sha256: "360a6ed2027f18b73c8d98e159dda67a61b7f2e0f6ec26e86c3ada33b0621775" + sha256: e35a698ac302dd68e41f73250bd9517fe3ab5fa4f18fe4647a0872db61bacbab url: "https://pub.dev" source: hosted - version: "6.3.1" + version: "6.3.10" url_launcher_ios: dependency: transitive description: name: url_launcher_ios - sha256: "9149d493b075ed740901f3ee844a38a00b33116c7c5c10d7fb27df8987fb51d5" + sha256: e43b677296fadce447e987a2f519dcf5f6d1e527dc35d01ffab4fff5b8a7063e url: "https://pub.dev" source: hosted - version: "6.2.5" + version: "6.3.1" url_launcher_linux: dependency: transitive description: name: url_launcher_linux - sha256: ab360eb661f8879369acac07b6bb3ff09d9471155357da8443fd5d3cf7363811 + sha256: e2b9622b4007f97f504cd64c0128309dfb978ae66adbe944125ed9e1750f06af url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.2.0" url_launcher_macos: dependency: transitive description: name: url_launcher_macos - sha256: b7244901ea3cf489c5335bdacda07264a6e960b1c1b1a9f91e4bc371d9e68234 + sha256: "9a1a42d5d2d95400c795b2914c36fdcb525870c752569438e4ebb09a2b5d90de" url: "https://pub.dev" source: hosted - version: "3.1.0" + version: "3.2.0" url_launcher_platform_interface: dependency: transitive description: @@ -806,26 +819,26 @@ packages: dependency: transitive description: name: url_launcher_web - sha256: "8d9e750d8c9338601e709cd0885f95825086bd8b642547f26bda435aade95d8a" + sha256: "772638d3b34c779ede05ba3d38af34657a05ac55b06279ea6edd409e323dca8e" url: "https://pub.dev" source: hosted - version: "2.3.1" + version: "2.3.3" url_launcher_windows: dependency: transitive description: name: url_launcher_windows - sha256: ecf9725510600aa2bb6d7ddabe16357691b6d2805f66216a97d1b881e21beff7 + sha256: "49c10f879746271804767cb45551ec5592cdab00ee105c06dddde1a98f73b185" url: "https://pub.dev" source: hosted - version: "3.1.1" + version: "3.1.2" uuid: dependency: transitive description: name: uuid - sha256: "814e9e88f21a176ae1359149021870e87f7cddaf633ab678a5d2b0bff7fd1ba8" + sha256: f33d6bb662f0e4f79dcd7ada2e6170f3b3a2530c28fc41f49a411ddedd576a77 url: "https://pub.dev" source: hosted - version: "4.4.0" + version: "4.5.0" vector_math: dependency: transitive description: @@ -838,10 +851,10 @@ packages: dependency: transitive description: name: vm_service - sha256: b3d56ff4341b8f182b96aceb2fa20e3dcb336b9f867bc0eafc0de10f1048e957 + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" url: "https://pub.dev" source: hosted - version: "13.0.0" + version: "14.2.5" watcher: dependency: transitive description: @@ -854,18 +867,26 @@ packages: dependency: transitive description: name: web - sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27" + sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062 url: "https://pub.dev" source: hosted - version: "0.5.1" + version: "1.0.0" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" + url: "https://pub.dev" + source: hosted + version: "0.1.6" web_socket_channel: dependency: transitive description: name: web_socket_channel - sha256: "58c6666b342a38816b2e7e50ed0f1e261959630becd4c879c4f26bfa14aa5a42" + sha256: "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f" url: "https://pub.dev" source: hosted - version: "2.4.5" + version: "3.0.1" webkit_inspection_protocol: dependency: transitive description: @@ -874,14 +895,6 @@ packages: url: "https://pub.dev" source: hosted version: "1.2.1" - win32: - dependency: transitive - description: - name: win32 - sha256: "0a989dc7ca2bb51eac91e8fd00851297cfffd641aa7538b165c62637ca0eaa4a" - url: "https://pub.dev" - source: hosted - version: "5.4.0" xdg_directories: dependency: transitive description: @@ -910,10 +923,10 @@ packages: dependency: "direct main" description: name: yaml_edit - sha256: c566f4f804215d84a7a2c377667f546c6033d5b34b4f9e60dfb09d17c4e97826 + sha256: e9c1a3543d2da0db3e90270dbb1e4eebc985ee5e3ffe468d83224472b2194a5f url: "https://pub.dev" source: hosted - version: "2.2.0" + version: "2.2.1" youtube_api: dependency: "direct main" description: @@ -922,5 +935,5 @@ packages: source: path version: "1.0.3" sdks: - dart: ">=3.3.3 <4.0.0" - flutter: ">=3.19.6" + dart: ">=3.5.0 <4.0.0" + flutter: ">=3.24.2" diff --git a/pubspec.yaml b/pubspec.yaml index 30b8ed8..02c1690 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -6,8 +6,8 @@ publish_to: "none" version: 0.0.2 environment: - sdk: ">=3.2.0 <4.0.0" - flutter: 3.19.6 + sdk: ^3.5.0 + flutter: 3.24.2 dependencies: autoscroll: