From 797963e63df3b9203c6ae02fdb84f810c200c341 Mon Sep 17 00:00:00 2001 From: Kima Date: Sat, 21 Oct 2023 21:22:59 +0200 Subject: [PATCH] removed shit --- filcnaplo_premium | 2 +- .../.dart_tool/package_config.json | 1172 ------------- .../.dart_tool/package_config_subset | 777 --------- filcnaplo_premium_old/.dart_tool/version | 1 - filcnaplo_premium_old/.flutter-plugins | 57 - .../.flutter-plugins-dependencies | 1 - filcnaplo_premium_old/README.md | 3 - filcnaplo_premium_old/analysis_options.yaml | 28 - filcnaplo_premium_old/lib/api/auth.dart | 124 -- .../lib/models/premium_result.dart | 21 - .../lib/models/premium_scopes.dart | 33 - .../lib/providers/goal_provider.dart | 68 - .../lib/providers/premium_provider.dart | 27 - .../goal_planner/goal_complete_modal.dart | 252 --- .../ui/mobile/goal_planner/goal_input.dart | 180 -- .../ui/mobile/goal_planner/goal_planner.dart | 191 -- .../goal_planner/goal_planner_screen.dart | 429 ----- .../goal_planner_screen.i18n.dart | 45 - .../goal_planner/goal_state_screen.dart | 469 ----- .../goal_planner/goal_state_screen.i18n.dart | 87 - .../ui/mobile/goal_planner/grade_display.dart | 34 - .../lib/ui/mobile/goal_planner/graph.dart | 249 --- .../ui/mobile/goal_planner/graph.i18n.dart | 21 - .../ui/mobile/goal_planner/route_option.dart | 202 --- .../activation_view/activation_dashboard.dart | 197 --- .../activation_view/activation_view.dart | 67 - .../lib/ui/mobile/premium/premium_inline.dart | 66 - .../lib/ui/mobile/premium/upsell.dart | 183 -- .../mobile/settings/modify_teacher_names.dart | 436 ----- .../lib/ui/mobile/settings/share_theme.dart | 26 - .../ui/mobile/settings/welcome_message.dart | 146 -- filcnaplo_premium_old/pubspec.lock | 1534 ----------------- filcnaplo_premium_old/pubspec.yaml | 38 - 33 files changed, 1 insertion(+), 7165 deletions(-) delete mode 100644 filcnaplo_premium_old/.dart_tool/package_config.json delete mode 100644 filcnaplo_premium_old/.dart_tool/package_config_subset delete mode 100644 filcnaplo_premium_old/.dart_tool/version delete mode 100644 filcnaplo_premium_old/.flutter-plugins delete mode 100644 filcnaplo_premium_old/.flutter-plugins-dependencies delete mode 100644 filcnaplo_premium_old/README.md delete mode 100644 filcnaplo_premium_old/analysis_options.yaml delete mode 100644 filcnaplo_premium_old/lib/api/auth.dart delete mode 100644 filcnaplo_premium_old/lib/models/premium_result.dart delete mode 100644 filcnaplo_premium_old/lib/models/premium_scopes.dart delete mode 100644 filcnaplo_premium_old/lib/providers/goal_provider.dart delete mode 100644 filcnaplo_premium_old/lib/providers/premium_provider.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_complete_modal.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_input.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner_screen.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner_screen.i18n.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_state_screen.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_state_screen.i18n.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/grade_display.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/graph.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/graph.i18n.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/goal_planner/route_option.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/premium/activation_view/activation_dashboard.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/premium/activation_view/activation_view.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/premium/premium_inline.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/premium/upsell.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/settings/modify_teacher_names.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/settings/share_theme.dart delete mode 100644 filcnaplo_premium_old/lib/ui/mobile/settings/welcome_message.dart delete mode 100644 filcnaplo_premium_old/pubspec.lock delete mode 100644 filcnaplo_premium_old/pubspec.yaml diff --git a/filcnaplo_premium b/filcnaplo_premium index 7a8ac0b..3e12ef4 160000 --- a/filcnaplo_premium +++ b/filcnaplo_premium @@ -1 +1 @@ -Subproject commit 7a8ac0bd0c6c7675ca905a2c1e4589900035305d +Subproject commit 3e12ef4cc2e375b3fb2a9182bbfe42b0f90e9116 diff --git a/filcnaplo_premium_old/.dart_tool/package_config.json b/filcnaplo_premium_old/.dart_tool/package_config.json deleted file mode 100644 index c8641e6..0000000 --- a/filcnaplo_premium_old/.dart_tool/package_config.json +++ /dev/null @@ -1,1172 +0,0 @@ -{ - "configVersion": 2, - "packages": [ - { - "name": "_fe_analyzer_shared", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-61.0.0", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "analyzer", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/analyzer-5.13.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "animated_background", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/animated_background-2.0.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "animated_flip_counter", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/animated_flip_counter-0.2.6", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "animated_list_plus", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/animated_list_plus-0.5.2", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "animations", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/animations-2.0.8", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "app_group_directory", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/app_group_directory-2.0.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "archive", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/archive-3.4.6", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "args", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/args-2.4.2", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "async", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/async-2.11.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "auto_size_text", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/auto_size_text-3.0.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "background_fetch", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/background_fetch-1.2.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "boolean_selector", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/boolean_selector-2.1.1", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "characters", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/characters-1.3.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "charcode", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/charcode-1.3.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "clock", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/clock-1.1.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "collection", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/collection-1.17.2", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "confetti", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/confetti-0.6.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "connectivity_plus", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "connectivity_plus_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus_platform_interface-1.2.4", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "convert", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/convert-3.1.1", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "coverage", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/coverage-1.6.4", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "cross_file", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/cross_file-0.3.3+6", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "crypto", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/crypto-3.0.3", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "csslib", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/csslib-1.0.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "cupertino_icons", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.6", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "dbus", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/dbus-0.7.8", - "packageUri": "lib/", - "languageVersion": "2.15" - }, - { - "name": "dev_test", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/dev_test-0.16.1+4", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "dotted_border", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/dotted_border-2.1.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "dropdown_button2", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/dropdown_button2-1.9.4", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "dynamic_color", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/dynamic_color-1.6.7", - "packageUri": "lib/", - "languageVersion": "2.16" - }, - { - "name": "elegant_notification", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/elegant_notification-1.11.2", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "equatable", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/equatable-2.0.5", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "fake_async", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/fake_async-1.3.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "ffi", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/ffi-2.1.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "filcnaplo", - "rootUri": "../../filcnaplo", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "filcnaplo_desktop_ui", - "rootUri": "../../filcnaplo_desktop_ui", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "filcnaplo_kreta_api", - "rootUri": "../../filcnaplo_kreta_api", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "filcnaplo_mobile_ui", - "rootUri": "../../filcnaplo_mobile_ui", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "file", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/file-7.0.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "file_picker", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/file_picker-5.5.0", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "file_selector_linux", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.2+1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "file_selector_macos", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.3+3", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "file_selector_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_platform_interface-2.6.1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "file_selector_windows", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "fl_chart", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/fl_chart-0.45.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter", - "rootUri": "file:///Users/kima/src/flutter/packages/flutter", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "flutter_acrylic", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_acrylic-1.1.3", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_custom_tabs", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs-1.2.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_custom_tabs_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs_platform_interface-1.2.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_custom_tabs_web", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs_web-1.1.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_displaymode", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_displaymode-0.6.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_expandable_fab", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_expandable_fab-1.8.1", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "flutter_feather_icons", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_feather_icons-2.0.0+1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_image_compress", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress-2.0.4", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_image_compress_common", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_common-1.0.2", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_image_compress_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_platform_interface-1.0.2", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_image_compress_web", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_web-0.1.3+1", - "packageUri": "lib/", - "languageVersion": "2.16" - }, - { - "name": "flutter_linkify", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_linkify-5.0.2", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_lints", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_lints-1.0.4", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_local_notifications", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications-14.1.4", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "flutter_local_notifications_linux", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications_linux-4.0.0+1", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "flutter_local_notifications_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications_platform_interface-7.0.0+1", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "flutter_localizations", - "rootUri": "file:///Users/kima/src/flutter/packages/flutter_localizations", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "flutter_markdown", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_markdown-0.6.18", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "flutter_material_color_picker", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_material_color_picker-1.2.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "flutter_native_image", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_native_image-0.0.6+1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_plugin_android_lifecycle", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.16", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "flutter_staggered_grid_view", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_staggered_grid_view-0.7.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "flutter_svg", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_svg-1.1.6", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "flutter_test", - "rootUri": "file:///Users/kima/src/flutter/packages/flutter_test", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "flutter_web_plugins", - "rootUri": "file:///Users/kima/src/flutter/packages/flutter_web_plugins", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "frontend_server_client", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/frontend_server_client-3.2.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "glob", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/glob-2.1.2", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "go_router", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/go_router-10.2.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "graphs", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/graphs-2.3.1", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "home_widget", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/home_widget-0.1.6", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "html", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/html-0.15.4", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "http", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/http-0.13.6", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "http_multi_server", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/http_multi_server-3.2.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "http_parser", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/http_parser-4.0.2", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "i18n_extension", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/i18n_extension-9.0.2", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "image_crop", - "rootUri": "file:///Users/kima/.pub-cache/git/image_crop-5e98cdd539a47861c1f81e230344b7fd338dde4f/", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "image_gallery_saver", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_gallery_saver-2.0.3", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "image_picker", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker-0.8.9", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "image_picker_android", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_android-0.8.8+1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "image_picker_for_web", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_for_web-2.2.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "image_picker_ios", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_ios-0.8.8+2", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "image_picker_linux", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_linux-0.2.1+1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "image_picker_macos", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_macos-0.2.1+1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "image_picker_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_platform_interface-2.9.1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "image_picker_windows", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_windows-0.2.1+1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "intl", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/intl-0.18.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "io", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/io-1.0.4", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "js", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/js-0.6.7", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "linkify", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/linkify-4.1.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "lints", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/lints-1.0.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "live_activities", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/live_activities-1.7.5", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "logging", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/logging-1.2.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "lottie", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/lottie-1.4.3", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "macos_window_utils", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/macos_window_utils-1.4.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "markdown", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/markdown-7.1.1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "matcher", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/matcher-0.12.16", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "material_color_utilities", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/material_color_utilities-0.5.0", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "meta", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/meta-1.9.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "mime", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/mime-1.0.4", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "nested", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/nested-1.0.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "nm", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/nm-0.5.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "node_preamble", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/node_preamble-2.0.2", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "open_file", - "rootUri": "file:///Users/kima/.pub-cache/git/open_file-69268cb6e3ce422cc493788088317cb82313ecea/", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "package_config", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/package_config-2.1.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "package_info_plus", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "package_info_plus_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/package_info_plus_platform_interface-2.0.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "path", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path-1.8.3", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "path_drawing", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path_drawing-1.0.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "path_parsing", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path_parsing-1.0.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "path_provider", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider-2.1.1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "path_provider_android", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_android-2.2.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "path_provider_foundation", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_foundation-2.3.1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "path_provider_linux", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "path_provider_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_platform_interface-2.1.1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "path_provider_windows", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_windows-2.2.1", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "permission_handler", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler-10.4.5", - "packageUri": "lib/", - "languageVersion": "2.15" - }, - { - "name": "permission_handler_android", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_android-10.3.6", - "packageUri": "lib/", - "languageVersion": "2.15" - }, - { - "name": "permission_handler_apple", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_apple-9.1.4", - "packageUri": "lib/", - "languageVersion": "2.15" - }, - { - "name": "permission_handler_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_platform_interface-3.12.0", - "packageUri": "lib/", - "languageVersion": "2.14" - }, - { - "name": "permission_handler_windows", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_windows-0.1.3", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "petitparser", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/petitparser-5.4.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "photo_view", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/photo_view-0.14.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "platform", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/platform-3.1.3", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "plugin_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/plugin_platform_interface-2.1.6", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "pointycastle", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/pointycastle-3.7.3", - "packageUri": "lib/", - "languageVersion": "2.14" - }, - { - "name": "pool", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/pool-1.5.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "process_run", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/process_run-0.13.1", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "provider", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/provider-5.0.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "pub_semver", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/pub_semver-2.1.4", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "quick_actions", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions-1.0.6", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "quick_actions_android", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_android-1.0.8", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "quick_actions_ios", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_ios-1.0.7", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "quick_actions_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_platform_interface-1.0.5", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "rive", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/rive-0.9.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "rounded_expansion_tile", - "rootUri": "file:///Users/kima/.pub-cache/git/rounded_expansion_tile-aa1074fde76312befe9618ee958e5b9a1aad66d0/", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "screenshot", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/screenshot-2.1.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "share_plus", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "share_plus_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/share_plus_platform_interface-3.3.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "shelf", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/shelf-1.4.1", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "shelf_packages_handler", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_packages_handler-3.0.2", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "shelf_static", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_static-1.1.2", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "shelf_web_socket", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_web_socket-1.0.4", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "sky_engine", - "rootUri": "file:///Users/kima/src/flutter/bin/cache/pkg/sky_engine", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "source_map_stack_trace", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/source_map_stack_trace-2.1.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "source_maps", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/source_maps-0.10.12", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "source_span", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/source_span-1.10.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "sprintf", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/sprintf-7.0.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "sqflite", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite-2.3.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "sqflite_common", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common-2.5.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "sqflite_common_ffi", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common_ffi-2.3.0+2", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "sqflite_common_ffi_web", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common_ffi_web-0.4.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "sqlite3", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/sqlite3-2.1.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "stack_trace", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/stack_trace-1.11.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "stream_channel", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/stream_channel-2.1.1", - "packageUri": "lib/", - "languageVersion": "2.14" - }, - { - "name": "string_scanner", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/string_scanner-1.2.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "synchronized", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/synchronized-3.1.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "term_glyph", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/term_glyph-1.2.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "test", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/test-1.24.3", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "test_api", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/test_api-0.6.0", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "test_core", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/test_core-0.5.3", - "packageUri": "lib/", - "languageVersion": "2.18" - }, - { - "name": "timezone", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/timezone-0.9.2", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "typed_data", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/typed_data-1.3.2", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "uni_links", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links-0.5.1", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "uni_links_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links_platform_interface-1.0.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "uni_links_web", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links_web-0.1.0", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "url_launcher", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher-6.1.14", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "url_launcher_android", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_android-6.1.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "url_launcher_ios", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_ios-6.1.5", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "url_launcher_linux", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_linux-3.0.6", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "url_launcher_macos", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_macos-3.0.7", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "url_launcher_platform_interface", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_platform_interface-2.1.5", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "url_launcher_web", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_web-2.0.20", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "url_launcher_windows", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_windows-3.0.8", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "uuid", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/uuid-3.0.7", - "packageUri": "lib/", - "languageVersion": "2.12" - }, - { - "name": "vector_math", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/vector_math-2.1.4", - "packageUri": "lib/", - "languageVersion": "2.14" - }, - { - "name": "vm_service", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/vm_service-11.10.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "watcher", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/watcher-1.1.0", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "web", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/web-0.1.4-beta", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "web_socket_channel", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/web_socket_channel-2.4.0", - "packageUri": "lib/", - "languageVersion": "2.15" - }, - { - "name": "webkit_inspection_protocol", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/webkit_inspection_protocol-1.2.1", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "win32", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/win32-5.0.9", - "packageUri": "lib/", - "languageVersion": "3.0" - }, - { - "name": "workmanager", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/workmanager-0.5.2", - "packageUri": "lib/", - "languageVersion": "3.1" - }, - { - "name": "wtf_sliding_sheet", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/wtf_sliding_sheet-1.1.2", - "packageUri": "lib/", - "languageVersion": "2.17" - }, - { - "name": "xdg_directories", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/xdg_directories-1.0.3", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "xml", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/xml-6.3.0", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "yaml", - "rootUri": "file:///Users/kima/.pub-cache/hosted/pub.dev/yaml-3.1.2", - "packageUri": "lib/", - "languageVersion": "2.19" - }, - { - "name": "filcnaplo_premium", - "rootUri": "../", - "packageUri": "lib/", - "languageVersion": "2.17" - } - ], - "generated": "2023-10-15T18:32:39.904170Z", - "generator": "pub", - "generatorVersion": "3.1.3" -} diff --git a/filcnaplo_premium_old/.dart_tool/package_config_subset b/filcnaplo_premium_old/.dart_tool/package_config_subset deleted file mode 100644 index a51dd1e..0000000 --- a/filcnaplo_premium_old/.dart_tool/package_config_subset +++ /dev/null @@ -1,777 +0,0 @@ -image_crop -2.17 -file:///Users/kima/.pub-cache/git/image_crop-5e98cdd539a47861c1f81e230344b7fd338dde4f/ -file:///Users/kima/.pub-cache/git/image_crop-5e98cdd539a47861c1f81e230344b7fd338dde4f/lib/ -open_file -2.17 -file:///Users/kima/.pub-cache/git/open_file-69268cb6e3ce422cc493788088317cb82313ecea/ -file:///Users/kima/.pub-cache/git/open_file-69268cb6e3ce422cc493788088317cb82313ecea/lib/ -rounded_expansion_tile -2.12 -file:///Users/kima/.pub-cache/git/rounded_expansion_tile-aa1074fde76312befe9618ee958e5b9a1aad66d0/ -file:///Users/kima/.pub-cache/git/rounded_expansion_tile-aa1074fde76312befe9618ee958e5b9a1aad66d0/lib/ -_fe_analyzer_shared -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-61.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/_fe_analyzer_shared-61.0.0/lib/ -analyzer -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/analyzer-5.13.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/analyzer-5.13.0/lib/ -animated_background -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/animated_background-2.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/animated_background-2.0.0/lib/ -animated_flip_counter -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/animated_flip_counter-0.2.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/animated_flip_counter-0.2.6/lib/ -animated_list_plus -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/animated_list_plus-0.5.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/animated_list_plus-0.5.2/lib/ -animations -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/animations-2.0.8/ -file:///Users/kima/.pub-cache/hosted/pub.dev/animations-2.0.8/lib/ -app_group_directory -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/app_group_directory-2.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/app_group_directory-2.0.0/lib/ -archive -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/archive-3.4.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/archive-3.4.6/lib/ -args -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/args-2.4.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/args-2.4.2/lib/ -async -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/async-2.11.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/async-2.11.0/lib/ -auto_size_text -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/auto_size_text-3.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/auto_size_text-3.0.0/lib/ -background_fetch -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/background_fetch-1.2.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/background_fetch-1.2.1/lib/ -boolean_selector -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/boolean_selector-2.1.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/boolean_selector-2.1.1/lib/ -characters -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/characters-1.3.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/characters-1.3.0/lib/ -charcode -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/charcode-1.3.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/charcode-1.3.1/lib/ -clock -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/clock-1.1.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/clock-1.1.1/lib/ -collection -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/collection-1.17.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/collection-1.17.2/lib/ -confetti -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/confetti-0.6.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/confetti-0.6.0/lib/ -connectivity_plus -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/lib/ -connectivity_plus_platform_interface -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus_platform_interface-1.2.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus_platform_interface-1.2.4/lib/ -convert -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/convert-3.1.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/convert-3.1.1/lib/ -coverage -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/coverage-1.6.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/coverage-1.6.4/lib/ -cross_file -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/cross_file-0.3.3+6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/cross_file-0.3.3+6/lib/ -crypto -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/crypto-3.0.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/crypto-3.0.3/lib/ -csslib -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/csslib-1.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/csslib-1.0.0/lib/ -cupertino_icons -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/cupertino_icons-1.0.6/lib/ -dbus -2.15 -file:///Users/kima/.pub-cache/hosted/pub.dev/dbus-0.7.8/ -file:///Users/kima/.pub-cache/hosted/pub.dev/dbus-0.7.8/lib/ -dev_test -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/dev_test-0.16.1+4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/dev_test-0.16.1+4/lib/ -dotted_border -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/dotted_border-2.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/dotted_border-2.1.0/lib/ -dropdown_button2 -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/dropdown_button2-1.9.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/dropdown_button2-1.9.4/lib/ -dynamic_color -2.16 -file:///Users/kima/.pub-cache/hosted/pub.dev/dynamic_color-1.6.7/ -file:///Users/kima/.pub-cache/hosted/pub.dev/dynamic_color-1.6.7/lib/ -elegant_notification -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/elegant_notification-1.11.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/elegant_notification-1.11.2/lib/ -equatable -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/equatable-2.0.5/ -file:///Users/kima/.pub-cache/hosted/pub.dev/equatable-2.0.5/lib/ -fake_async -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/fake_async-1.3.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/fake_async-1.3.1/lib/ -ffi -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/ffi-2.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/ffi-2.1.0/lib/ -file -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/file-7.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/file-7.0.0/lib/ -file_picker -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/file_picker-5.5.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/file_picker-5.5.0/lib/ -file_selector_linux -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.2+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.2+1/lib/ -file_selector_macos -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.3+3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.3+3/lib/ -file_selector_platform_interface -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_platform_interface-2.6.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_platform_interface-2.6.1/lib/ -file_selector_windows -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+1/lib/ -fl_chart -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/fl_chart-0.45.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/fl_chart-0.45.1/lib/ -flutter_acrylic -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_acrylic-1.1.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_acrylic-1.1.3/lib/ -flutter_custom_tabs -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs-1.2.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs-1.2.1/lib/ -flutter_custom_tabs_platform_interface -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs_platform_interface-1.2.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs_platform_interface-1.2.0/lib/ -flutter_custom_tabs_web -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs_web-1.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs_web-1.1.0/lib/ -flutter_displaymode -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_displaymode-0.6.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_displaymode-0.6.0/lib/ -flutter_expandable_fab -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_expandable_fab-1.8.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_expandable_fab-1.8.1/lib/ -flutter_feather_icons -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_feather_icons-2.0.0+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_feather_icons-2.0.0+1/lib/ -flutter_image_compress -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress-2.0.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress-2.0.4/lib/ -flutter_image_compress_common -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_common-1.0.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_common-1.0.2/lib/ -flutter_image_compress_platform_interface -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_platform_interface-1.0.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_platform_interface-1.0.2/lib/ -flutter_image_compress_web -2.16 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_web-0.1.3+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_web-0.1.3+1/lib/ -flutter_linkify -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_linkify-5.0.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_linkify-5.0.2/lib/ -flutter_lints -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_lints-1.0.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_lints-1.0.4/lib/ -flutter_local_notifications -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications-14.1.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications-14.1.4/lib/ -flutter_local_notifications_linux -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications_linux-4.0.0+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications_linux-4.0.0+1/lib/ -flutter_local_notifications_platform_interface -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications_platform_interface-7.0.0+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications_platform_interface-7.0.0+1/lib/ -flutter_markdown -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_markdown-0.6.18/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_markdown-0.6.18/lib/ -flutter_material_color_picker -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_material_color_picker-1.2.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_material_color_picker-1.2.0/lib/ -flutter_native_image -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_native_image-0.0.6+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_native_image-0.0.6+1/lib/ -flutter_plugin_android_lifecycle -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.16/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.16/lib/ -flutter_staggered_grid_view -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_staggered_grid_view-0.7.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_staggered_grid_view-0.7.0/lib/ -flutter_svg -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_svg-1.1.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/flutter_svg-1.1.6/lib/ -frontend_server_client -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/frontend_server_client-3.2.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/frontend_server_client-3.2.0/lib/ -glob -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/glob-2.1.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/glob-2.1.2/lib/ -go_router -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/go_router-10.2.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/go_router-10.2.0/lib/ -graphs -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/graphs-2.3.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/graphs-2.3.1/lib/ -home_widget -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/home_widget-0.1.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/home_widget-0.1.6/lib/ -html -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/html-0.15.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/html-0.15.4/lib/ -http -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/http-0.13.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/http-0.13.6/lib/ -http_multi_server -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/http_multi_server-3.2.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/http_multi_server-3.2.1/lib/ -http_parser -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/http_parser-4.0.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/http_parser-4.0.2/lib/ -i18n_extension -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/i18n_extension-9.0.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/i18n_extension-9.0.2/lib/ -image_gallery_saver -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_gallery_saver-2.0.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_gallery_saver-2.0.3/lib/ -image_picker -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker-0.8.9/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker-0.8.9/lib/ -image_picker_android -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_android-0.8.8+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_android-0.8.8+1/lib/ -image_picker_for_web -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_for_web-2.2.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_for_web-2.2.0/lib/ -image_picker_ios -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_ios-0.8.8+2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_ios-0.8.8+2/lib/ -image_picker_linux -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_linux-0.2.1+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_linux-0.2.1+1/lib/ -image_picker_macos -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_macos-0.2.1+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_macos-0.2.1+1/lib/ -image_picker_platform_interface -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_platform_interface-2.9.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_platform_interface-2.9.1/lib/ -image_picker_windows -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_windows-0.2.1+1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/image_picker_windows-0.2.1+1/lib/ -intl -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/intl-0.18.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/intl-0.18.1/lib/ -io -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/io-1.0.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/io-1.0.4/lib/ -js -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/js-0.6.7/ -file:///Users/kima/.pub-cache/hosted/pub.dev/js-0.6.7/lib/ -linkify -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/linkify-4.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/linkify-4.1.0/lib/ -lints -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/lints-1.0.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/lints-1.0.1/lib/ -live_activities -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/live_activities-1.7.5/ -file:///Users/kima/.pub-cache/hosted/pub.dev/live_activities-1.7.5/lib/ -logging -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/logging-1.2.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/logging-1.2.0/lib/ -lottie -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/lottie-1.4.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/lottie-1.4.3/lib/ -macos_window_utils -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/macos_window_utils-1.4.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/macos_window_utils-1.4.0/lib/ -markdown -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/markdown-7.1.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/markdown-7.1.1/lib/ -matcher -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/matcher-0.12.16/ -file:///Users/kima/.pub-cache/hosted/pub.dev/matcher-0.12.16/lib/ -material_color_utilities -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/material_color_utilities-0.5.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/material_color_utilities-0.5.0/lib/ -meta -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/meta-1.9.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/meta-1.9.1/lib/ -mime -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/mime-1.0.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/mime-1.0.4/lib/ -nested -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/nested-1.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/nested-1.0.0/lib/ -nm -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/nm-0.5.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/nm-0.5.0/lib/ -node_preamble -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/node_preamble-2.0.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/node_preamble-2.0.2/lib/ -package_config -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/package_config-2.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/package_config-2.1.0/lib/ -package_info_plus -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/lib/ -package_info_plus_platform_interface -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/package_info_plus_platform_interface-2.0.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/package_info_plus_platform_interface-2.0.1/lib/ -path -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/path-1.8.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path-1.8.3/lib/ -path_drawing -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/path_drawing-1.0.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path_drawing-1.0.1/lib/ -path_parsing -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/path_parsing-1.0.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path_parsing-1.0.1/lib/ -path_provider -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider-2.1.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider-2.1.1/lib/ -path_provider_android -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_android-2.2.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_android-2.2.0/lib/ -path_provider_foundation -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_foundation-2.3.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_foundation-2.3.1/lib/ -path_provider_linux -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/lib/ -path_provider_platform_interface -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_platform_interface-2.1.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_platform_interface-2.1.1/lib/ -path_provider_windows -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_windows-2.2.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/path_provider_windows-2.2.1/lib/ -permission_handler -2.15 -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler-10.4.5/ -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler-10.4.5/lib/ -permission_handler_android -2.15 -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_android-10.3.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_android-10.3.6/lib/ -permission_handler_apple -2.15 -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_apple-9.1.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_apple-9.1.4/lib/ -permission_handler_platform_interface -2.14 -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_platform_interface-3.12.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_platform_interface-3.12.0/lib/ -permission_handler_windows -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_windows-0.1.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/permission_handler_windows-0.1.3/lib/ -petitparser -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/petitparser-5.4.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/petitparser-5.4.0/lib/ -photo_view -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/photo_view-0.14.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/photo_view-0.14.0/lib/ -platform -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/platform-3.1.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/platform-3.1.3/lib/ -plugin_platform_interface -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/plugin_platform_interface-2.1.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/plugin_platform_interface-2.1.6/lib/ -pointycastle -2.14 -file:///Users/kima/.pub-cache/hosted/pub.dev/pointycastle-3.7.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/pointycastle-3.7.3/lib/ -pool -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/pool-1.5.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/pool-1.5.1/lib/ -process_run -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/process_run-0.13.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/process_run-0.13.1/lib/ -provider -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/provider-5.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/provider-5.0.0/lib/ -pub_semver -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/pub_semver-2.1.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/pub_semver-2.1.4/lib/ -quick_actions -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions-1.0.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions-1.0.6/lib/ -quick_actions_android -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_android-1.0.8/ -file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_android-1.0.8/lib/ -quick_actions_ios -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_ios-1.0.7/ -file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_ios-1.0.7/lib/ -quick_actions_platform_interface -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_platform_interface-1.0.5/ -file:///Users/kima/.pub-cache/hosted/pub.dev/quick_actions_platform_interface-1.0.5/lib/ -rive -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/rive-0.9.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/rive-0.9.1/lib/ -screenshot -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/screenshot-2.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/screenshot-2.1.0/lib/ -share_plus -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/lib/ -share_plus_platform_interface -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/share_plus_platform_interface-3.3.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/share_plus_platform_interface-3.3.0/lib/ -shelf -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/shelf-1.4.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/shelf-1.4.1/lib/ -shelf_packages_handler -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_packages_handler-3.0.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_packages_handler-3.0.2/lib/ -shelf_static -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_static-1.1.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_static-1.1.2/lib/ -shelf_web_socket -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_web_socket-1.0.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/shelf_web_socket-1.0.4/lib/ -source_map_stack_trace -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/source_map_stack_trace-2.1.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/source_map_stack_trace-2.1.1/lib/ -source_maps -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/source_maps-0.10.12/ -file:///Users/kima/.pub-cache/hosted/pub.dev/source_maps-0.10.12/lib/ -source_span -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/source_span-1.10.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/source_span-1.10.0/lib/ -sprintf -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/sprintf-7.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/sprintf-7.0.0/lib/ -sqflite -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite-2.3.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite-2.3.0/lib/ -sqflite_common -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common-2.5.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common-2.5.0/lib/ -sqflite_common_ffi -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common_ffi-2.3.0+2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common_ffi-2.3.0+2/lib/ -sqflite_common_ffi_web -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common_ffi_web-0.4.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/sqflite_common_ffi_web-0.4.0/lib/ -sqlite3 -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/sqlite3-2.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/sqlite3-2.1.0/lib/ -stack_trace -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/stack_trace-1.11.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/stack_trace-1.11.0/lib/ -stream_channel -2.14 -file:///Users/kima/.pub-cache/hosted/pub.dev/stream_channel-2.1.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/stream_channel-2.1.1/lib/ -string_scanner -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/string_scanner-1.2.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/string_scanner-1.2.0/lib/ -synchronized -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/synchronized-3.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/synchronized-3.1.0/lib/ -term_glyph -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/term_glyph-1.2.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/term_glyph-1.2.1/lib/ -test -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/test-1.24.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/test-1.24.3/lib/ -test_api -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/test_api-0.6.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/test_api-0.6.0/lib/ -test_core -2.18 -file:///Users/kima/.pub-cache/hosted/pub.dev/test_core-0.5.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/test_core-0.5.3/lib/ -timezone -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/timezone-0.9.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/timezone-0.9.2/lib/ -typed_data -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/typed_data-1.3.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/typed_data-1.3.2/lib/ -uni_links -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links-0.5.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links-0.5.1/lib/ -uni_links_platform_interface -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links_platform_interface-1.0.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links_platform_interface-1.0.0/lib/ -uni_links_web -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links_web-0.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/uni_links_web-0.1.0/lib/ -url_launcher -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher-6.1.14/ -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher-6.1.14/lib/ -url_launcher_android -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_android-6.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_android-6.1.0/lib/ -url_launcher_ios -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_ios-6.1.5/ -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_ios-6.1.5/lib/ -url_launcher_linux -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_linux-3.0.6/ -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_linux-3.0.6/lib/ -url_launcher_macos -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_macos-3.0.7/ -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_macos-3.0.7/lib/ -url_launcher_platform_interface -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_platform_interface-2.1.5/ -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_platform_interface-2.1.5/lib/ -url_launcher_web -3.1 -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_web-2.0.20/ -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_web-2.0.20/lib/ -url_launcher_windows -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_windows-3.0.8/ -file:///Users/kima/.pub-cache/hosted/pub.dev/url_launcher_windows-3.0.8/lib/ -uuid -2.12 -file:///Users/kima/.pub-cache/hosted/pub.dev/uuid-3.0.7/ -file:///Users/kima/.pub-cache/hosted/pub.dev/uuid-3.0.7/lib/ -vector_math -2.14 -file:///Users/kima/.pub-cache/hosted/pub.dev/vector_math-2.1.4/ -file:///Users/kima/.pub-cache/hosted/pub.dev/vector_math-2.1.4/lib/ -vm_service -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/vm_service-11.10.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/vm_service-11.10.0/lib/ -watcher -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/watcher-1.1.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/watcher-1.1.0/lib/ -web -3.1 -file:///Users/kima/.pub-cache/hosted/pub.dev/web-0.1.4-beta/ -file:///Users/kima/.pub-cache/hosted/pub.dev/web-0.1.4-beta/lib/ -web_socket_channel -2.15 -file:///Users/kima/.pub-cache/hosted/pub.dev/web_socket_channel-2.4.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/web_socket_channel-2.4.0/lib/ -webkit_inspection_protocol -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/webkit_inspection_protocol-1.2.1/ -file:///Users/kima/.pub-cache/hosted/pub.dev/webkit_inspection_protocol-1.2.1/lib/ -win32 -3.0 -file:///Users/kima/.pub-cache/hosted/pub.dev/win32-5.0.9/ -file:///Users/kima/.pub-cache/hosted/pub.dev/win32-5.0.9/lib/ -workmanager -3.1 -file:///Users/kima/.pub-cache/hosted/pub.dev/workmanager-0.5.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/workmanager-0.5.2/lib/ -wtf_sliding_sheet -2.17 -file:///Users/kima/.pub-cache/hosted/pub.dev/wtf_sliding_sheet-1.1.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/wtf_sliding_sheet-1.1.2/lib/ -xdg_directories -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/xdg_directories-1.0.3/ -file:///Users/kima/.pub-cache/hosted/pub.dev/xdg_directories-1.0.3/lib/ -xml -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/xml-6.3.0/ -file:///Users/kima/.pub-cache/hosted/pub.dev/xml-6.3.0/lib/ -yaml -2.19 -file:///Users/kima/.pub-cache/hosted/pub.dev/yaml-3.1.2/ -file:///Users/kima/.pub-cache/hosted/pub.dev/yaml-3.1.2/lib/ -filcnaplo -2.17 -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo/ -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo/lib/ -filcnaplo_desktop_ui -2.17 -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo_desktop_ui/ -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo_desktop_ui/lib/ -filcnaplo_kreta_api -2.17 -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo_kreta_api/ -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo_kreta_api/lib/ -filcnaplo_mobile_ui -2.17 -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo_mobile_ui/ -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo_mobile_ui/lib/ -filcnaplo_premium -2.17 -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo_premium/ -file:///Users/kima/Documents/refilc/app/latest/naplo/filcnaplo_premium/lib/ -sky_engine -3.0 -file:///Users/kima/src/flutter/bin/cache/pkg/sky_engine/ -file:///Users/kima/src/flutter/bin/cache/pkg/sky_engine/lib/ -flutter -3.0 -file:///Users/kima/src/flutter/packages/flutter/ -file:///Users/kima/src/flutter/packages/flutter/lib/ -flutter_localizations -3.0 -file:///Users/kima/src/flutter/packages/flutter_localizations/ -file:///Users/kima/src/flutter/packages/flutter_localizations/lib/ -flutter_test -3.0 -file:///Users/kima/src/flutter/packages/flutter_test/ -file:///Users/kima/src/flutter/packages/flutter_test/lib/ -flutter_web_plugins -3.0 -file:///Users/kima/src/flutter/packages/flutter_web_plugins/ -file:///Users/kima/src/flutter/packages/flutter_web_plugins/lib/ -2 diff --git a/filcnaplo_premium_old/.dart_tool/version b/filcnaplo_premium_old/.dart_tool/version deleted file mode 100644 index 78472f9..0000000 --- a/filcnaplo_premium_old/.dart_tool/version +++ /dev/null @@ -1 +0,0 @@ -3.13.6 \ No newline at end of file diff --git a/filcnaplo_premium_old/.flutter-plugins b/filcnaplo_premium_old/.flutter-plugins deleted file mode 100644 index c611b12..0000000 --- a/filcnaplo_premium_old/.flutter-plugins +++ /dev/null @@ -1,57 +0,0 @@ -# This is a generated file; do not edit or check into version control. -app_group_directory=/Users/kima/.pub-cache/hosted/pub.dev/app_group_directory-2.0.0/ -background_fetch=/Users/kima/.pub-cache/hosted/pub.dev/background_fetch-1.2.1/ -connectivity_plus=/Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/ -dynamic_color=/Users/kima/.pub-cache/hosted/pub.dev/dynamic_color-1.6.7/ -file_picker=/Users/kima/.pub-cache/hosted/pub.dev/file_picker-5.5.0/ -file_selector_linux=/Users/kima/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.2+1/ -file_selector_macos=/Users/kima/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.3+3/ -file_selector_windows=/Users/kima/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+1/ -flutter_acrylic=/Users/kima/.pub-cache/hosted/pub.dev/flutter_acrylic-1.1.3/ -flutter_custom_tabs=/Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs-1.2.1/ -flutter_custom_tabs_web=/Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs_web-1.1.0/ -flutter_displaymode=/Users/kima/.pub-cache/hosted/pub.dev/flutter_displaymode-0.6.0/ -flutter_image_compress=/Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress-2.0.4/ -flutter_image_compress_common=/Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_common-1.0.2/ -flutter_image_compress_web=/Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_web-0.1.3+1/ -flutter_local_notifications=/Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications-14.1.4/ -flutter_native_image=/Users/kima/.pub-cache/hosted/pub.dev/flutter_native_image-0.0.6+1/ -flutter_plugin_android_lifecycle=/Users/kima/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.16/ -home_widget=/Users/kima/.pub-cache/hosted/pub.dev/home_widget-0.1.6/ -image_crop=/Users/kima/.pub-cache/git/image_crop-5e98cdd539a47861c1f81e230344b7fd338dde4f/ -image_gallery_saver=/Users/kima/.pub-cache/hosted/pub.dev/image_gallery_saver-2.0.3/ -image_picker=/Users/kima/.pub-cache/hosted/pub.dev/image_picker-0.8.9/ -image_picker_android=/Users/kima/.pub-cache/hosted/pub.dev/image_picker_android-0.8.8+1/ -image_picker_for_web=/Users/kima/.pub-cache/hosted/pub.dev/image_picker_for_web-2.2.0/ -image_picker_ios=/Users/kima/.pub-cache/hosted/pub.dev/image_picker_ios-0.8.8+2/ -image_picker_linux=/Users/kima/.pub-cache/hosted/pub.dev/image_picker_linux-0.2.1+1/ -image_picker_macos=/Users/kima/.pub-cache/hosted/pub.dev/image_picker_macos-0.2.1+1/ -image_picker_windows=/Users/kima/.pub-cache/hosted/pub.dev/image_picker_windows-0.2.1+1/ -live_activities=/Users/kima/.pub-cache/hosted/pub.dev/live_activities-1.7.5/ -macos_window_utils=/Users/kima/.pub-cache/hosted/pub.dev/macos_window_utils-1.4.0/ -open_file=/Users/kima/.pub-cache/git/open_file-69268cb6e3ce422cc493788088317cb82313ecea/ -package_info_plus=/Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/ -path_provider=/Users/kima/.pub-cache/hosted/pub.dev/path_provider-2.1.1/ -path_provider_android=/Users/kima/.pub-cache/hosted/pub.dev/path_provider_android-2.2.0/ -path_provider_foundation=/Users/kima/.pub-cache/hosted/pub.dev/path_provider_foundation-2.3.1/ -path_provider_linux=/Users/kima/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/ -path_provider_windows=/Users/kima/.pub-cache/hosted/pub.dev/path_provider_windows-2.2.1/ -permission_handler=/Users/kima/.pub-cache/hosted/pub.dev/permission_handler-10.4.5/ -permission_handler_android=/Users/kima/.pub-cache/hosted/pub.dev/permission_handler_android-10.3.6/ -permission_handler_apple=/Users/kima/.pub-cache/hosted/pub.dev/permission_handler_apple-9.1.4/ -permission_handler_windows=/Users/kima/.pub-cache/hosted/pub.dev/permission_handler_windows-0.1.3/ -quick_actions=/Users/kima/.pub-cache/hosted/pub.dev/quick_actions-1.0.6/ -quick_actions_android=/Users/kima/.pub-cache/hosted/pub.dev/quick_actions_android-1.0.8/ -quick_actions_ios=/Users/kima/.pub-cache/hosted/pub.dev/quick_actions_ios-1.0.7/ -share_plus=/Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/ -sqflite=/Users/kima/.pub-cache/hosted/pub.dev/sqflite-2.3.0/ -uni_links=/Users/kima/.pub-cache/hosted/pub.dev/uni_links-0.5.1/ -uni_links_web=/Users/kima/.pub-cache/hosted/pub.dev/uni_links_web-0.1.0/ -url_launcher=/Users/kima/.pub-cache/hosted/pub.dev/url_launcher-6.1.14/ -url_launcher_android=/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_android-6.1.0/ -url_launcher_ios=/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_ios-6.1.5/ -url_launcher_linux=/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_linux-3.0.6/ -url_launcher_macos=/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_macos-3.0.7/ -url_launcher_web=/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_web-2.0.20/ -url_launcher_windows=/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_windows-3.0.8/ -workmanager=/Users/kima/.pub-cache/hosted/pub.dev/workmanager-0.5.2/ diff --git a/filcnaplo_premium_old/.flutter-plugins-dependencies b/filcnaplo_premium_old/.flutter-plugins-dependencies deleted file mode 100644 index 9de477a..0000000 --- a/filcnaplo_premium_old/.flutter-plugins-dependencies +++ /dev/null @@ -1 +0,0 @@ -{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"app_group_directory","path":"/Users/kima/.pub-cache/hosted/pub.dev/app_group_directory-2.0.0/","native_build":true,"dependencies":[]},{"name":"background_fetch","path":"/Users/kima/.pub-cache/hosted/pub.dev/background_fetch-1.2.1/","native_build":true,"dependencies":[]},{"name":"connectivity_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/","native_build":true,"dependencies":[]},{"name":"file_picker","path":"/Users/kima/.pub-cache/hosted/pub.dev/file_picker-5.5.0/","native_build":true,"dependencies":[]},{"name":"flutter_custom_tabs","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs-1.2.1/","native_build":true,"dependencies":[]},{"name":"flutter_image_compress_common","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_common-1.0.2/","native_build":true,"dependencies":[]},{"name":"flutter_local_notifications","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications-14.1.4/","native_build":true,"dependencies":[]},{"name":"flutter_native_image","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_native_image-0.0.6+1/","native_build":true,"dependencies":[]},{"name":"home_widget","path":"/Users/kima/.pub-cache/hosted/pub.dev/home_widget-0.1.6/","native_build":true,"dependencies":[]},{"name":"image_crop","path":"/Users/kima/.pub-cache/git/image_crop-5e98cdd539a47861c1f81e230344b7fd338dde4f/","native_build":true,"dependencies":[]},{"name":"image_gallery_saver","path":"/Users/kima/.pub-cache/hosted/pub.dev/image_gallery_saver-2.0.3/","native_build":true,"dependencies":[]},{"name":"image_picker_ios","path":"/Users/kima/.pub-cache/hosted/pub.dev/image_picker_ios-0.8.8+2/","native_build":true,"dependencies":[]},{"name":"live_activities","path":"/Users/kima/.pub-cache/hosted/pub.dev/live_activities-1.7.5/","native_build":true,"dependencies":["app_group_directory","flutter_native_image"]},{"name":"open_file","path":"/Users/kima/.pub-cache/git/open_file-69268cb6e3ce422cc493788088317cb82313ecea/","native_build":true,"dependencies":[]},{"name":"package_info_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/","native_build":true,"dependencies":[]},{"name":"path_provider_foundation","path":"/Users/kima/.pub-cache/hosted/pub.dev/path_provider_foundation-2.3.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"permission_handler_apple","path":"/Users/kima/.pub-cache/hosted/pub.dev/permission_handler_apple-9.1.4/","native_build":true,"dependencies":[]},{"name":"quick_actions_ios","path":"/Users/kima/.pub-cache/hosted/pub.dev/quick_actions_ios-1.0.7/","native_build":true,"dependencies":[]},{"name":"share_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/","native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/kima/.pub-cache/hosted/pub.dev/sqflite-2.3.0/","native_build":true,"dependencies":[]},{"name":"uni_links","path":"/Users/kima/.pub-cache/hosted/pub.dev/uni_links-0.5.1/","native_build":true,"dependencies":[]},{"name":"url_launcher_ios","path":"/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_ios-6.1.5/","native_build":true,"dependencies":[]},{"name":"workmanager","path":"/Users/kima/.pub-cache/hosted/pub.dev/workmanager-0.5.2/","native_build":true,"dependencies":[]}],"android":[{"name":"app_group_directory","path":"/Users/kima/.pub-cache/hosted/pub.dev/app_group_directory-2.0.0/","native_build":true,"dependencies":[]},{"name":"background_fetch","path":"/Users/kima/.pub-cache/hosted/pub.dev/background_fetch-1.2.1/","native_build":true,"dependencies":[]},{"name":"connectivity_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/","native_build":true,"dependencies":[]},{"name":"dynamic_color","path":"/Users/kima/.pub-cache/hosted/pub.dev/dynamic_color-1.6.7/","native_build":true,"dependencies":[]},{"name":"file_picker","path":"/Users/kima/.pub-cache/hosted/pub.dev/file_picker-5.5.0/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"]},{"name":"flutter_custom_tabs","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs-1.2.1/","native_build":true,"dependencies":[]},{"name":"flutter_displaymode","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_displaymode-0.6.0/","native_build":true,"dependencies":[]},{"name":"flutter_image_compress_common","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_common-1.0.2/","native_build":true,"dependencies":[]},{"name":"flutter_local_notifications","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications-14.1.4/","native_build":true,"dependencies":[]},{"name":"flutter_native_image","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_native_image-0.0.6+1/","native_build":true,"dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.16/","native_build":true,"dependencies":[]},{"name":"home_widget","path":"/Users/kima/.pub-cache/hosted/pub.dev/home_widget-0.1.6/","native_build":true,"dependencies":[]},{"name":"image_crop","path":"/Users/kima/.pub-cache/git/image_crop-5e98cdd539a47861c1f81e230344b7fd338dde4f/","native_build":true,"dependencies":[]},{"name":"image_gallery_saver","path":"/Users/kima/.pub-cache/hosted/pub.dev/image_gallery_saver-2.0.3/","native_build":true,"dependencies":[]},{"name":"image_picker_android","path":"/Users/kima/.pub-cache/hosted/pub.dev/image_picker_android-0.8.8+1/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"]},{"name":"open_file","path":"/Users/kima/.pub-cache/git/open_file-69268cb6e3ce422cc493788088317cb82313ecea/","native_build":true,"dependencies":[]},{"name":"package_info_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/","native_build":true,"dependencies":[]},{"name":"path_provider_android","path":"/Users/kima/.pub-cache/hosted/pub.dev/path_provider_android-2.2.0/","native_build":true,"dependencies":[]},{"name":"permission_handler_android","path":"/Users/kima/.pub-cache/hosted/pub.dev/permission_handler_android-10.3.6/","native_build":true,"dependencies":[]},{"name":"quick_actions_android","path":"/Users/kima/.pub-cache/hosted/pub.dev/quick_actions_android-1.0.8/","native_build":true,"dependencies":[]},{"name":"share_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/","native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/kima/.pub-cache/hosted/pub.dev/sqflite-2.3.0/","native_build":true,"dependencies":[]},{"name":"uni_links","path":"/Users/kima/.pub-cache/hosted/pub.dev/uni_links-0.5.1/","native_build":true,"dependencies":[]},{"name":"url_launcher_android","path":"/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_android-6.1.0/","native_build":true,"dependencies":[]},{"name":"workmanager","path":"/Users/kima/.pub-cache/hosted/pub.dev/workmanager-0.5.2/","native_build":true,"dependencies":[]}],"macos":[{"name":"connectivity_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/","native_build":true,"dependencies":[]},{"name":"dynamic_color","path":"/Users/kima/.pub-cache/hosted/pub.dev/dynamic_color-1.6.7/","native_build":true,"dependencies":[]},{"name":"file_selector_macos","path":"/Users/kima/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.3+3/","native_build":true,"dependencies":[]},{"name":"flutter_local_notifications","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_local_notifications-14.1.4/","native_build":true,"dependencies":[]},{"name":"image_picker_macos","path":"/Users/kima/.pub-cache/hosted/pub.dev/image_picker_macos-0.2.1+1/","native_build":false,"dependencies":["file_selector_macos"]},{"name":"macos_window_utils","path":"/Users/kima/.pub-cache/hosted/pub.dev/macos_window_utils-1.4.0/","native_build":true,"dependencies":[]},{"name":"open_file","path":"/Users/kima/.pub-cache/git/open_file-69268cb6e3ce422cc493788088317cb82313ecea/","native_build":true,"dependencies":[]},{"name":"package_info_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/","native_build":true,"dependencies":[]},{"name":"path_provider_foundation","path":"/Users/kima/.pub-cache/hosted/pub.dev/path_provider_foundation-2.3.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"share_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/","native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/kima/.pub-cache/hosted/pub.dev/sqflite-2.3.0/","native_build":true,"dependencies":[]},{"name":"url_launcher_macos","path":"/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_macos-3.0.7/","native_build":true,"dependencies":[]}],"linux":[{"name":"connectivity_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/","native_build":false,"dependencies":[]},{"name":"dynamic_color","path":"/Users/kima/.pub-cache/hosted/pub.dev/dynamic_color-1.6.7/","native_build":true,"dependencies":[]},{"name":"file_selector_linux","path":"/Users/kima/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.2+1/","native_build":true,"dependencies":[]},{"name":"flutter_acrylic","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_acrylic-1.1.3/","native_build":true,"dependencies":[]},{"name":"image_picker_linux","path":"/Users/kima/.pub-cache/hosted/pub.dev/image_picker_linux-0.2.1+1/","native_build":false,"dependencies":["file_selector_linux"]},{"name":"package_info_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/","native_build":false,"dependencies":[]},{"name":"path_provider_linux","path":"/Users/kima/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/","native_build":false,"dependencies":[]},{"name":"share_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/","native_build":false,"dependencies":["url_launcher_linux"]},{"name":"url_launcher_linux","path":"/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_linux-3.0.6/","native_build":true,"dependencies":[]}],"windows":[{"name":"connectivity_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/","native_build":true,"dependencies":[]},{"name":"dynamic_color","path":"/Users/kima/.pub-cache/hosted/pub.dev/dynamic_color-1.6.7/","native_build":true,"dependencies":[]},{"name":"file_selector_windows","path":"/Users/kima/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+1/","native_build":true,"dependencies":[]},{"name":"flutter_acrylic","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_acrylic-1.1.3/","native_build":true,"dependencies":[]},{"name":"image_picker_windows","path":"/Users/kima/.pub-cache/hosted/pub.dev/image_picker_windows-0.2.1+1/","native_build":false,"dependencies":["file_selector_windows"]},{"name":"package_info_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/","native_build":false,"dependencies":[]},{"name":"path_provider_windows","path":"/Users/kima/.pub-cache/hosted/pub.dev/path_provider_windows-2.2.1/","native_build":false,"dependencies":[]},{"name":"permission_handler_windows","path":"/Users/kima/.pub-cache/hosted/pub.dev/permission_handler_windows-0.1.3/","native_build":true,"dependencies":[]},{"name":"share_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/","native_build":true,"dependencies":["url_launcher_windows"]},{"name":"url_launcher_windows","path":"/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_windows-3.0.8/","native_build":true,"dependencies":[]}],"web":[{"name":"connectivity_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/connectivity_plus-4.0.2/","dependencies":[]},{"name":"file_picker","path":"/Users/kima/.pub-cache/hosted/pub.dev/file_picker-5.5.0/","dependencies":[]},{"name":"flutter_custom_tabs_web","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_custom_tabs_web-1.1.0/","dependencies":["url_launcher_web"]},{"name":"flutter_image_compress_web","path":"/Users/kima/.pub-cache/hosted/pub.dev/flutter_image_compress_web-0.1.3+1/","dependencies":[]},{"name":"image_picker_for_web","path":"/Users/kima/.pub-cache/hosted/pub.dev/image_picker_for_web-2.2.0/","dependencies":[]},{"name":"package_info_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/package_info_plus-4.1.0/","dependencies":[]},{"name":"share_plus","path":"/Users/kima/.pub-cache/hosted/pub.dev/share_plus-7.1.0/","dependencies":["url_launcher_web"]},{"name":"uni_links_web","path":"/Users/kima/.pub-cache/hosted/pub.dev/uni_links_web-0.1.0/","dependencies":[]},{"name":"url_launcher_web","path":"/Users/kima/.pub-cache/hosted/pub.dev/url_launcher_web-2.0.20/","dependencies":[]}]},"dependencyGraph":[{"name":"app_group_directory","dependencies":[]},{"name":"background_fetch","dependencies":[]},{"name":"connectivity_plus","dependencies":[]},{"name":"dynamic_color","dependencies":[]},{"name":"file_picker","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"file_selector_linux","dependencies":[]},{"name":"file_selector_macos","dependencies":[]},{"name":"file_selector_windows","dependencies":[]},{"name":"flutter_acrylic","dependencies":["macos_window_utils"]},{"name":"flutter_custom_tabs","dependencies":["flutter_custom_tabs_web"]},{"name":"flutter_custom_tabs_web","dependencies":["url_launcher_web"]},{"name":"flutter_displaymode","dependencies":[]},{"name":"flutter_image_compress","dependencies":["flutter_image_compress_common","flutter_image_compress_web"]},{"name":"flutter_image_compress_common","dependencies":[]},{"name":"flutter_image_compress_web","dependencies":[]},{"name":"flutter_local_notifications","dependencies":[]},{"name":"flutter_native_image","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"home_widget","dependencies":[]},{"name":"image_crop","dependencies":[]},{"name":"image_gallery_saver","dependencies":[]},{"name":"image_picker","dependencies":["image_picker_android","image_picker_for_web","image_picker_ios","image_picker_linux","image_picker_macos","image_picker_windows"]},{"name":"image_picker_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"image_picker_for_web","dependencies":[]},{"name":"image_picker_ios","dependencies":[]},{"name":"image_picker_linux","dependencies":["file_selector_linux"]},{"name":"image_picker_macos","dependencies":["file_selector_macos"]},{"name":"image_picker_windows","dependencies":["file_selector_windows"]},{"name":"live_activities","dependencies":["app_group_directory","flutter_image_compress","path_provider","flutter_native_image"]},{"name":"macos_window_utils","dependencies":[]},{"name":"open_file","dependencies":[]},{"name":"package_info_plus","dependencies":[]},{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"permission_handler","dependencies":["permission_handler_android","permission_handler_apple","permission_handler_windows"]},{"name":"permission_handler_android","dependencies":[]},{"name":"permission_handler_apple","dependencies":[]},{"name":"permission_handler_windows","dependencies":[]},{"name":"quick_actions","dependencies":["quick_actions_android","quick_actions_ios"]},{"name":"quick_actions_android","dependencies":[]},{"name":"quick_actions_ios","dependencies":[]},{"name":"share_plus","dependencies":["url_launcher_web","url_launcher_windows","url_launcher_linux"]},{"name":"sqflite","dependencies":[]},{"name":"uni_links","dependencies":["uni_links_web"]},{"name":"uni_links_web","dependencies":[]},{"name":"url_launcher","dependencies":["url_launcher_android","url_launcher_ios","url_launcher_linux","url_launcher_macos","url_launcher_web","url_launcher_windows"]},{"name":"url_launcher_android","dependencies":[]},{"name":"url_launcher_ios","dependencies":[]},{"name":"url_launcher_linux","dependencies":[]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"url_launcher_windows","dependencies":[]},{"name":"workmanager","dependencies":[]}],"date_created":"2023-10-15 20:32:40.202130","version":"3.13.6"} \ No newline at end of file diff --git a/filcnaplo_premium_old/README.md b/filcnaplo_premium_old/README.md deleted file mode 100644 index c7f8a35..0000000 --- a/filcnaplo_premium_old/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# Premium ✨ - -A collection of features only accessible for premium subscribers. diff --git a/filcnaplo_premium_old/analysis_options.yaml b/filcnaplo_premium_old/analysis_options.yaml deleted file mode 100644 index 16f5f56..0000000 --- a/filcnaplo_premium_old/analysis_options.yaml +++ /dev/null @@ -1,28 +0,0 @@ -# This file configures the analyzer, which statically analyzes Dart code to -# check for errors, warnings, and lints. -# -# The issues identified by the analyzer are surfaced in the UI of Dart-enabled -# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be -# invoked from the command line by running `flutter analyze`. - -# The following line activates a set of recommended lints for Flutter apps, -# packages, and plugins designed to encourage good coding practices. -include: package:flutter_lints/flutter.yaml - -linter: - # The lint rules applied to this project can be customized in the - # section below to disable rules from the `package:flutter_lints/flutter.yaml` - # included above or to enable additional rules. A list of all available lints - # and their documentation is published at - # https://dart-lang.github.io/linter/lints/index.html. - # - # Instead of disabling a lint rule for the entire project in the - # section below, it can also be suppressed for a single line of code - # or a specific dart file by using the `// ignore: name_of_lint` and - # `// ignore_for_file: name_of_lint` syntax on the line or in the file - # producing the lint. - rules: - # avoid_print: false # Uncomment to disable the `avoid_print` rule - # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule -# Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options diff --git a/filcnaplo_premium_old/lib/api/auth.dart b/filcnaplo_premium_old/lib/api/auth.dart deleted file mode 100644 index 45ddf5c..0000000 --- a/filcnaplo_premium_old/lib/api/auth.dart +++ /dev/null @@ -1,124 +0,0 @@ -import 'dart:async'; -import 'dart:developer'; -import 'dart:io'; - -import 'package:filcnaplo/models/settings.dart'; -import 'package:filcnaplo_premium/models/premium_scopes.dart'; -import 'package:flutter/foundation.dart'; -import 'package:flutter/services.dart'; -import 'package:home_widget/home_widget.dart'; - -class PremiumAuth { - final SettingsProvider _settings; - - PremiumAuth({required SettingsProvider settings}) : _settings = settings; - - initAuth() { - finishAuth("igen"); - // try { - // _sub ??= uriLinkStream.listen( - // (Uri? uri) { - // if (uri != null) { - // final accessToken = uri.queryParameters['access_token']; - // if (accessToken != null) { - // finishAuth(accessToken); - // } - // } - // }, - // onError: (err) { - // log("ERROR: initAuth: $err"); - // }, - // ); - - // launchUrl( - // Uri.parse("https://api.filcnaplo.hu/oauth"), - // mode: LaunchMode.externalApplication, - // ); - // } catch (err, sta) { - // log("ERROR: initAuth: $err\n$sta"); - // } - } - - Future finishAuth(String accessToken) async { - try { - // final res = await http.get(Uri.parse("${FilcAPI.premiumScopesApi}?access_token=${Uri.encodeComponent(accessToken)}")); - // final scopes = ((jsonDecode(res.body) as Map)["scopes"] as List).cast(); - // log("[INFO] Premium auth finish: ${scopes.join(',')}"); - await _settings.update(premiumAccessToken: accessToken); - final result = await refreshAuth(); - if (Platform.isAndroid) updateWidget(); - return result; - } catch (err, sta) { - log("[ERROR] Premium auth failed: $err\n$sta"); - } - - await _settings.update(premiumAccessToken: "", premiumScopes: []); - if (Platform.isAndroid) updateWidget(); - return false; - } - - Future updateWidget() async { - try { - return HomeWidget.updateWidget(name: 'widget_timetable.WidgetTimetable'); - } on PlatformException catch (exception) { - if (kDebugMode) { - print('Error Updating Widget After Auth. $exception'); - } - } - return false; - } - - Future refreshAuth({bool removePremium = false}) async { - await _settings.update( - premiumAccessToken: "igen", - premiumScopes: [PremiumScopes.all], - premiumLogin: "igen", - ); - return true; - //if (!removePremium) { - //if (_settings.premiumAccessToken == "") { - // await _settings.update(premiumScopes: [], premiumLogin: ""); - // return false; - //} - - // Skip premium check when disconnected - // try { - // final status = await InternetAddress.lookup('github.com'); - // if (status.isEmpty) return false; - // } on SocketException catch (_) { - // return false; - // } - - //for (int tries = 0; tries < 3; tries++) { - // try { - // final res = await http.post(Uri.parse(FilcAPI.premiumApi), body: { - // "access_token": _settings.premiumAccessToken, - // }); -// - // if (res.body == "") throw "empty body"; - - // final premium = PremiumResult.fromJson(jsonDecode(res.body) as Map); - // Activation succeeded - // log("[INFO] Premium activated: ${premium.scopes.join(',')}"); - // await _settings.update( - // premiumAccessToken: premium.accessToken, - // premiumScopes: premium.scopes, - // premiumLogin: premium.login, - // ); - // return true; - // } catch (err, sta) { - // log("[ERROR] Premium activation failed: $err\n$sta"); - // } - - // await Future.delayed(const Duration(seconds: 1)); - // - //} - - // Activation failed - //await _settings.update( - // premiumAccessToken: "igen", - // premiumScopes: [PremiumScopes.all], - // premiumLogin: "igen"); - //return false; - } -} diff --git a/filcnaplo_premium_old/lib/models/premium_result.dart b/filcnaplo_premium_old/lib/models/premium_result.dart deleted file mode 100644 index 41270ea..0000000 --- a/filcnaplo_premium_old/lib/models/premium_result.dart +++ /dev/null @@ -1,21 +0,0 @@ -import 'package:filcnaplo_premium/models/premium_scopes.dart'; - -class PremiumResult { - final String accessToken; - final List scopes; - final String login; - - PremiumResult({ - required this.accessToken, - required this.scopes, - required this.login, - }); - - factory PremiumResult.fromJson(Map json) { - return PremiumResult( - accessToken: json["access_token"] ?? "igen", - scopes: (json["scopes"] ?? [PremiumScopes.all]).cast(), - login: json["login"] ?? "igen", - ); - } -} diff --git a/filcnaplo_premium_old/lib/models/premium_scopes.dart b/filcnaplo_premium_old/lib/models/premium_scopes.dart deleted file mode 100644 index f793723..0000000 --- a/filcnaplo_premium_old/lib/models/premium_scopes.dart +++ /dev/null @@ -1,33 +0,0 @@ -class PremiumScopes { - /// VIP - static const all = "filc.premium.*"; - - /// Kupak - - /// Custom nickname - static const nickname = "filc.premium.NICKNAME"; - - /// Advanced grade statistics - static const gradeStats = "filc.premium.GRADE_STATS"; - - /// Advanced theme customization - static const customColors = "filc.premium.CUSTOM_COLORS"; - - /// Icon pack customization for subjects - static const customIcons = "filc.premium.CUSTOM_ICONS"; - - /// Modify subject names - static const renameSubjects = "filc.premium.RENAME_SUBJECTS"; - static const renameTeachers = "filc.premium.RENAME_TEACHERS"; - - /// Tinta - - /// Timetable homescreen widget - static const timetableWidget = "filc.premium.TIMETALBE_WIDGET"; - - /// Goal Planner - static const goalPlanner = "filc.premium.GOAL_PLANNER"; - - /// Fullscreen weekly timetable view - static const fsTimetable = "filc.premium.FS_TIMETABLE"; -} diff --git a/filcnaplo_premium_old/lib/providers/goal_provider.dart b/filcnaplo_premium_old/lib/providers/goal_provider.dart deleted file mode 100644 index 1529903..0000000 --- a/filcnaplo_premium_old/lib/providers/goal_provider.dart +++ /dev/null @@ -1,68 +0,0 @@ -import 'package:filcnaplo/api/providers/database_provider.dart'; -import 'package:filcnaplo/api/providers/user_provider.dart'; -import 'package:filcnaplo_kreta_api/models/subject.dart'; -import 'package:filcnaplo_kreta_api/providers/grade_provider.dart'; -import 'package:flutter/widgets.dart'; - -class GoalProvider extends ChangeNotifier { - final DatabaseProvider _db; - final UserProvider _user; - - late bool _done = false; - late GradeSubject? _doneSubject; - - bool get hasDoneGoals => _done; - GradeSubject? get doneSubject => _doneSubject; - - GoalProvider({ - required DatabaseProvider database, - required UserProvider user, - }) : _db = database, - _user = user; - - Future fetchDone({required GradeProvider gradeProvider}) async { - var goalAvgs = await _db.userQuery.subjectGoalAverages(userId: _user.id!); - var beforeAvgs = await _db.userQuery.subjectGoalBefores(userId: _user.id!); - - List subjects = gradeProvider.grades - .map((e) => e.subject) - .toSet() - .toList() - ..sort((a, b) => a.name.compareTo(b.name)); - - goalAvgs.forEach((k, v) { - if (beforeAvgs[k] == v) { - _done = true; - _doneSubject = subjects.where((e) => e.id == k).toList()[0]; - - notifyListeners(); - } - }); - } - - void lock() { - _done = false; - _doneSubject = null; - } - - Future clearGoal(GradeSubject subject) async { - final goalPlans = await _db.userQuery.subjectGoalPlans(userId: _user.id!); - final goalAvgs = await _db.userQuery.subjectGoalAverages(userId: _user.id!); - final goalBeforeGrades = - await _db.userQuery.subjectGoalBefores(userId: _user.id!); - final goalPinDates = - await _db.userQuery.subjectGoalPinDates(userId: _user.id!); - - goalPlans.remove(subject.id); - goalAvgs.remove(subject.id); - goalBeforeGrades.remove(subject.id); - goalPinDates.remove(subject.id); - - await _db.userStore.storeSubjectGoalPlans(goalPlans, userId: _user.id!); - await _db.userStore.storeSubjectGoalAverages(goalAvgs, userId: _user.id!); - await _db.userStore - .storeSubjectGoalBefores(goalBeforeGrades, userId: _user.id!); - await _db.userStore - .storeSubjectGoalPinDates(goalPinDates, userId: _user.id!); - } -} diff --git a/filcnaplo_premium_old/lib/providers/premium_provider.dart b/filcnaplo_premium_old/lib/providers/premium_provider.dart deleted file mode 100644 index 2f5fdfd..0000000 --- a/filcnaplo_premium_old/lib/providers/premium_provider.dart +++ /dev/null @@ -1,27 +0,0 @@ -import 'package:filcnaplo/models/settings.dart'; -import 'package:filcnaplo_premium/api/auth.dart'; -import 'package:flutter/widgets.dart'; - -class PremiumProvider extends ChangeNotifier { - final SettingsProvider _settings; - List get scopes => _settings.premiumScopes; - bool hasScope(String scope) => true; - String get accessToken => _settings.premiumAccessToken; - String get login => _settings.premiumLogin; - bool get hasPremium => true; - - late final PremiumAuth _auth; - PremiumAuth get auth => _auth; - - PremiumProvider({required SettingsProvider settings}) : _settings = settings { - _auth = PremiumAuth(settings: _settings); - _settings.addListener(() { - notifyListeners(); - }); - } - - Future activate({bool removePremium = false}) async { - await _auth.refreshAuth(removePremium: removePremium); - notifyListeners(); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_complete_modal.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_complete_modal.dart deleted file mode 100644 index cce1654..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_complete_modal.dart +++ /dev/null @@ -1,252 +0,0 @@ -import 'package:filcnaplo/api/providers/database_provider.dart'; -import 'package:filcnaplo/api/providers/user_provider.dart'; -import 'package:filcnaplo/theme/colors/colors.dart'; -import 'package:filcnaplo_kreta_api/models/subject.dart'; -import 'package:filcnaplo_mobile_ui/common/average_display.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_state_screen.i18n.dart'; -import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; - -class GoalCompleteModal extends StatelessWidget { - const GoalCompleteModal( - this.subject, { - Key? key, - required this.user, - required this.database, - required this.goalAverage, - required this.beforeAverage, - required this.averageDifference, - }) : super(key: key); - - final UserProvider user; - final DatabaseProvider database; - final GradeSubject subject; - - final double goalAverage; - final double beforeAverage; - final double averageDifference; - - @override - Widget build(BuildContext context) { - return Dialog( - elevation: 0, - backgroundColor: Colors.transparent, - child: Container( - padding: const EdgeInsets.all(16.0), - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, - borderRadius: BorderRadius.circular(20.0), - ), - child: Column( - crossAxisAlignment: CrossAxisAlignment.center, - mainAxisAlignment: MainAxisAlignment.center, - mainAxisSize: MainAxisSize.min, - children: [ - Container( - width: double.infinity, - decoration: BoxDecoration( - image: const DecorationImage( - image: AssetImage('assets/images/static_confetti.png'), - fit: BoxFit.fitWidth, - alignment: Alignment.topCenter, - ), - color: Colors.white, - borderRadius: BorderRadius.circular(10.0), - ), - padding: const EdgeInsets.all(6.0), - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - goalAverage.toStringAsFixed(1), - textAlign: TextAlign.center, - style: const TextStyle( - color: Colors.white, - fontSize: 64.0, - fontWeight: FontWeight.w800, - ), - ), - // const SizedBox(width: 10.0), - // Icon( - // SubjectIcon.resolveVariant( - // subject: subject, context: context), - // color: Colors.white, - // size: 64.0, - // ), - ], - ), - ), - const SizedBox(height: 10.0), - Text( - 'congrats_title'.i18n, - textAlign: TextAlign.center, - style: TextStyle( - fontSize: 27.0, - fontWeight: FontWeight.w700, - height: 1.2, - color: AppColors.of(context).text, - ), - ), - Text( - 'goal_reached'.i18n.fill(['20']), - textAlign: TextAlign.center, - style: TextStyle( - fontSize: 15.0, - fontWeight: FontWeight.w500, - height: 1.1, - color: AppColors.of(context).text, - ), - ), - const SizedBox(height: 18.0), - Column( - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - 'started_at'.i18n, - textAlign: TextAlign.center, - style: TextStyle( - fontSize: 17.0, - fontWeight: FontWeight.w500, - color: AppColors.of(context).text, - ), - ), - const SizedBox(width: 5.0), - AverageDisplay( - average: beforeAverage, - ), - ], - ), - Text( - 'improved_by'.i18n.fill([ - averageDifference.toStringAsFixed(2) + '%', - ]), - textAlign: TextAlign.center, - style: TextStyle( - fontSize: 17.0, - fontWeight: FontWeight.w500, - color: AppColors.of(context).text, - ), - ), - ], - ), - const SizedBox(height: 20.0), - Column( - children: [ - GestureDetector( - onTap: () { - ScaffoldMessenger.of(context).showSnackBar( - const SnackBar(content: Text("Hamarosan...")), - ); - }, - child: Container( - width: double.infinity, - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(10.0), - gradient: const LinearGradient( - colors: [ - Color(0xFFCAECFA), - Color(0xFFF4D9EE), - Color(0xFFF3EFDA), - ], - stops: [0.0, 0.53, 1.0], - begin: Alignment.topLeft, - end: Alignment.bottomRight, - ), - ), - child: Padding( - padding: const EdgeInsets.symmetric(vertical: 8.0), - child: Text( - 'detailed_stats'.i18n, - textAlign: TextAlign.center, - style: const TextStyle( - fontSize: 18.0, - fontWeight: FontWeight.w700, - color: Color(0xFF691A9B), - ), - ), - ), - ), - ), - const SizedBox(height: 10.0), - GestureDetector( - onTap: () { - Navigator.of(context).pop(); - }, - child: Container( - width: double.infinity, - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(10.0), - color: const Color.fromARGB(38, 131, 131, 131), - ), - child: Padding( - padding: const EdgeInsets.symmetric(vertical: 8.0), - child: Text( - 'later'.i18n, - textAlign: TextAlign.center, - style: TextStyle( - fontSize: 18.0, - fontWeight: FontWeight.w700, - color: AppColors.of(context).text, - ), - ), - ), - ), - ), - ], - ), - ], - ), - ), - ); - - // return Padding( - // padding: const EdgeInsets.symmetric(vertical: 100.0, horizontal: 32.0), - // child: Material( - // borderRadius: BorderRadius.circular(12.0), - // child: Padding( - // padding: const EdgeInsets.all(12.0), - // child: Column( - // children: [ - // // content or idk - // ], - // ), - // ), - // ), - // ); - } - - static Future show( - GradeSubject subject, { - required BuildContext context, - }) async { - UserProvider user = Provider.of(context, listen: false); - DatabaseProvider db = Provider.of(context, listen: false); - - var goalAvgRes = await db.userQuery.subjectGoalAverages(userId: user.id!); - var beforeAvgRes = await db.userQuery.subjectGoalBefores(userId: user.id!); - - //DateTime goalPinDate = DateTime.parse((await db.userQuery.subjectGoalPinDates(userId: user.id!))[widget.subject.id]!); - - String? goalAvgStr = goalAvgRes[subject.id]; - String? beforeAvgStr = beforeAvgRes[subject.id]; - double goalAvg = double.parse(goalAvgStr ?? '0.0'); - double beforeAvg = double.parse(beforeAvgStr ?? '0.0'); - - double avgDifference = ((goalAvg - beforeAvg) / beforeAvg.abs()) * 100; - - return showDialog( - context: context, - builder: (context) => GoalCompleteModal( - subject, - user: user, - database: db, - goalAverage: goalAvg, - beforeAverage: beforeAvg, - averageDifference: avgDifference, - ), - barrierDismissible: false, - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_input.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_input.dart deleted file mode 100644 index 6fdfe54..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_input.dart +++ /dev/null @@ -1,180 +0,0 @@ -import 'package:filcnaplo/models/settings.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:provider/provider.dart'; - -class GoalInput extends StatelessWidget { - const GoalInput( - {Key? key, - required this.currentAverage, - required this.value, - required this.onChanged}) - : super(key: key); - - final double currentAverage; - final double value; - final void Function(double value) onChanged; - - void offsetToValue(Offset offset, Size size) { - double v = ((offset.dx / size.width * 4 + 1) * 10).round() / 10; - v = v.clamp(1.5, 5); - v = v.clamp(((currentAverage * 10).round() / 10), 5); - setValue(v); - } - - void setValue(double v) { - if (v != value) { - HapticFeedback.lightImpact(); - } - onChanged(v); - } - - @override - Widget build(BuildContext context) { - SettingsProvider settings = Provider.of(context); - - List presets = [2, 3, 4, 5]; - presets = presets.where((e) => gradeToAvg(e) > currentAverage).toList(); - - return Column( - mainAxisSize: MainAxisSize.min, - children: [ - LayoutBuilder(builder: (context, size) { - return GestureDetector( - onTapDown: (details) { - offsetToValue(details.localPosition, size.biggest); - }, - onHorizontalDragUpdate: (details) { - offsetToValue(details.localPosition, size.biggest); - }, - child: SizedBox( - height: 32.0, - width: double.infinity, - child: Padding( - padding: const EdgeInsets.only(right: 20.0), - child: CustomPaint( - painter: GoalSliderPainter( - value: (value - 1) / 4, settings: settings), - ), - ), - ), - ); - }), - const SizedBox(height: 12.0), - Row( - mainAxisAlignment: MainAxisAlignment.center, - children: presets.map((e) { - final pv = (value * 10).round() / 10; - final selected = gradeToAvg(e) == pv; - return Padding( - padding: const EdgeInsets.symmetric(horizontal: 12.0), - child: Container( - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(99.0), - color: - gradeColor(e, settings).withOpacity(selected ? 1.0 : 0.2), - border: Border.all(color: gradeColor(e, settings), width: 4), - ), - child: Material( - type: MaterialType.transparency, - child: InkWell( - borderRadius: BorderRadius.circular(99.0), - onTap: () => setValue(gradeToAvg(e)), - child: Padding( - padding: const EdgeInsets.symmetric( - vertical: 2.0, horizontal: 24.0), - child: Text( - e.toString(), - style: TextStyle( - color: - selected ? Colors.white : gradeColor(e, settings), - fontWeight: FontWeight.bold, - fontSize: 24.0, - ), - ), - ), - ), - ), - ), - ); - }).toList(), - ) - ], - ); - } -} - -class GoalSliderPainter extends CustomPainter { - final double value; - final SettingsProvider settings; - - GoalSliderPainter({required this.value, required this.settings}); - - @override - void paint(Canvas canvas, Size size) { - final radius = size.height / 2; - const cpadding = 4; - final rect = Rect.fromLTWH(0, 0, size.width + radius, size.height); - final vrect = Rect.fromLTWH(0, 0, size.width * value + radius, size.height); - canvas.drawRRect( - RRect.fromRectAndRadius( - rect, - const Radius.circular(99.0), - ), - Paint()..color = Colors.black.withOpacity(.1), - ); - canvas.drawRRect( - RRect.fromRectAndRadius( - vrect, - const Radius.circular(99.0), - ), - Paint() - ..shader = LinearGradient(colors: [ - settings.gradeColors[0], - settings.gradeColors[1], - settings.gradeColors[2], - settings.gradeColors[3], - settings.gradeColors[4], - ]).createShader(rect), - ); - canvas.drawOval( - Rect.fromCircle( - center: Offset(size.width * value, size.height / 2), - radius: radius - cpadding), - Paint()..color = Colors.white, - ); - for (int i = 1; i < 4; i++) { - canvas.drawOval( - Rect.fromCircle( - center: Offset(size.width / 4 * i, size.height / 2), radius: 4), - Paint()..color = Colors.white.withOpacity(.5), - ); - } - } - - @override - bool shouldRepaint(GoalSliderPainter oldDelegate) { - return oldDelegate.value != value; - } -} - -double gradeToAvg(int grade) { - return grade - 0.5; -} - -Color gradeColor(int grade, SettingsProvider settings) { - // return [ - // const Color(0xffFF3B30), - // const Color(0xffFF9F0A), - // const Color(0xffFFD60A), - // const Color(0xff34C759), - // const Color(0xff247665), - // ].elementAt(grade.clamp(1, 5) - 1); - return [ - settings.gradeColors[0], - settings.gradeColors[1], - settings.gradeColors[2], - settings.gradeColors[3], - settings.gradeColors[4], - ].elementAt(grade.clamp(1, 5) - 1); -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner.dart deleted file mode 100644 index 31e445b..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner.dart +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Maintainer: DarK - * Translated from C version - * Minimal Working Fixed @ 2022.12.25 - * ##Please do NOT modify if you don't know whats going on## - * - * Issue: #59 - * - * Future changes / ideas: - * - `best` should be configurable - */ -import 'dart:math'; -import 'package:filcnaplo_kreta_api/models/category.dart'; -import 'package:filcnaplo_kreta_api/models/grade.dart'; -import 'package:filcnaplo_kreta_api/models/subject.dart'; -import 'package:filcnaplo_kreta_api/models/teacher.dart'; -import 'package:flutter/foundation.dart' show listEquals; - -/// Generate list of grades that achieve the wanted goal. -/// After generating possible options, it (when doing so would NOT result in empty list) filters with two criteria: -/// - Plan should not contain more than 15 grades -/// - Plan should not contain only one type of grade -/// -/// **Usage**: -/// -/// ```dart -/// List GoalPlanner(double goal, List grades).solve().plan -/// ``` -class GoalPlanner { - final double goal; - final List grades; - List plans = []; - GoalPlanner(this.goal, this.grades); - - bool _allowed(int grade) => grade > goal; - - void _generate(Generator g) { - // Exit condition 1: Generator has working plan. - if (g.currentAvg.avg >= goal) { - plans.add(Plan(g.plan)); - return; - } - // Exit condition 2: Generator plan will never work. - if (!_allowed(g.gradeToAdd)) { - return; - } - - for (int i = g.max; i >= 0; i--) { - int newGradeToAdd = g.gradeToAdd - 1; - List newPlan = - GoalPlannerHelper._addToList(g.plan, g.gradeToAdd, i); - - Avg newAvg = GoalPlannerHelper._addToAvg(g.currentAvg, g.gradeToAdd, i); - int newN = GoalPlannerHelper.howManyNeeded( - newGradeToAdd, - grades + - newPlan - .map((e) => Grade( - id: '', - date: DateTime(0), - value: GradeValue(e, '', '', 100), - teacher: Teacher.fromString(''), - description: '', - form: '', - groupId: '', - type: GradeType.midYear, - subject: GradeSubject.fromJson({}), - mode: Category.fromJson({}), - seenDate: DateTime(0), - writeDate: DateTime(0), - )) - .toList(), - goal); - - _generate(Generator(newGradeToAdd, newN, newAvg, newPlan)); - } - } - - List solve() { - _generate( - Generator( - 5, - GoalPlannerHelper.howManyNeeded( - 5, - grades, - goal, - ), - Avg(GoalPlannerHelper.averageEvals(grades), - GoalPlannerHelper.weightSum(grades)), - [], - ), - ); - - // Calculate Statistics - for (var e in plans) { - e.sum = e.plan.fold(0, (int a, b) => a + b); - e.avg = e.sum / e.plan.length; - e.sigma = sqrt( - e.plan.map((i) => pow(i - e.avg, 2)).fold(0, (num a, b) => a + b) / - e.plan.length); - } - - // filter without aggression - if (plans.where((e) => e.plan.length < 30).isNotEmpty) { - plans.removeWhere((e) => !(e.plan.length < 30)); - } - if (plans.where((e) => e.sigma > 1).isNotEmpty) { - plans.removeWhere((e) => !(e.sigma > 1)); - } - - return plans; - } -} - -class Avg { - final double avg; - final double n; - - Avg(this.avg, this.n); -} - -class Generator { - final int gradeToAdd; - final int max; - final Avg currentAvg; - final List plan; - - Generator(this.gradeToAdd, this.max, this.currentAvg, this.plan); -} - -class Plan { - final List plan; - int sum = 0; - double avg = 0; - int med = 0; // currently - int mod = 0; // unused - double sigma = 0; - - Plan(this.plan); - - String get dbString { - var finalString = ''; - for (var i in plan) { - finalString += "$i,"; - } - return finalString; - } - - @override - bool operator ==(other) => other is Plan && listEquals(plan, other.plan); - - @override - int get hashCode => Object.hashAll(plan); -} - -class GoalPlannerHelper { - static Avg _addToAvg(Avg base, int grade, int n) => - Avg((base.avg * base.n + grade * n) / (base.n + n), base.n + n); - - static List _addToList(List l, T e, int n) { - if (n == 0) return l; - List tmp = l; - for (int i = 0; i < n; i++) { - tmp = tmp + [e]; - } - return tmp; - } - - static int howManyNeeded(int grade, List base, double goal) { - double avg = averageEvals(base); - double wsum = weightSum(base); - if (avg >= goal) return 0; - if (grade * 1.0 == goal) return -1; - int candidate = (wsum * (avg - goal) / (goal - grade)).floor(); - return (candidate * grade + avg * wsum) / (candidate + wsum) < goal - ? candidate + 1 - : candidate; - } - - static double averageEvals(List grades, {bool finalAvg = false}) { - double average = grades - .map((e) => e.value.value * e.value.weight / 100.0) - .fold(0.0, (double a, double b) => a + b) / - weightSum(grades, finalAvg: finalAvg); - return average.isNaN ? 0.0 : average; - } - - static double weightSum(List grades, {bool finalAvg = false}) => grades - .map((e) => finalAvg ? 1 : e.value.weight / 100) - .fold(0, (a, b) => a + b); -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner_screen.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner_screen.dart deleted file mode 100644 index 258a0f1..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner_screen.dart +++ /dev/null @@ -1,429 +0,0 @@ -import 'package:filcnaplo/api/providers/database_provider.dart'; -import 'package:filcnaplo/api/providers/user_provider.dart'; -import 'package:filcnaplo/helpers/average_helper.dart'; -import 'package:filcnaplo/helpers/subject.dart'; -import 'package:filcnaplo/models/settings.dart'; -import 'package:filcnaplo_kreta_api/models/grade.dart'; -import 'package:filcnaplo_kreta_api/models/group_average.dart'; -import 'package:filcnaplo_kreta_api/models/subject.dart'; -import 'package:filcnaplo_kreta_api/providers/grade_provider.dart'; -import 'package:filcnaplo_mobile_ui/common/average_display.dart'; -import 'package:filcnaplo_mobile_ui/common/round_border_icon.dart'; -import 'package:filcnaplo_mobile_ui/pages/grades/calculator/grade_calculator_provider.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_input.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_planner.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_planner_screen.i18n.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/route_option.dart'; -import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; - -enum PlanResult { - available, // There are possible solutions - unreachable, // The solutions are too hard don't even try - unsolvable, // There are no solutions - reached, // Goal already reached -} - -class GoalPlannerScreen extends StatefulWidget { - final GradeSubject subject; - - const GoalPlannerScreen({Key? key, required this.subject}) : super(key: key); - - @override - State createState() => _GoalPlannerScreenState(); -} - -class _GoalPlannerScreenState extends State { - late GradeProvider gradeProvider; - late GradeCalculatorProvider calculatorProvider; - late SettingsProvider settingsProvider; - late DatabaseProvider dbProvider; - late UserProvider user; - - bool gradeCalcMode = false; - - List getSubjectGrades(GradeSubject subject) => !gradeCalcMode - ? gradeProvider.grades.where((e) => e.subject == subject).toList() - : calculatorProvider.grades.where((e) => e.subject == subject).toList(); - - double goalValue = 4.0; - List grades = []; - - Plan? recommended; - Plan? fastest; - Plan? selectedRoute; - List otherPlans = []; - - @override - void initState() { - super.initState(); - user = Provider.of(context, listen: false); - dbProvider = Provider.of(context, listen: false); - } - - Future> fetchGoalPlans() async { - return await dbProvider.userQuery.subjectGoalPlans(userId: user.id!); - } - - Future> fetchGoalAverages() async { - return await dbProvider.userQuery.subjectGoalAverages(userId: user.id!); - } - - // haha bees lol - Future> fetchGoalBees() async { - return await dbProvider.userQuery.subjectGoalBefores(userId: user.id!); - } - - Future> fetchGoalPinDates() async { - return await dbProvider.userQuery.subjectGoalPinDates(userId: user.id!); - } - - PlanResult getResult() { - final currentAvg = GoalPlannerHelper.averageEvals(grades); - - recommended = null; - fastest = null; - otherPlans = []; - - if (currentAvg >= goalValue) return PlanResult.reached; - - final planner = GoalPlanner(goalValue, grades); - final plans = planner.solve(); - - plans.sort((a, b) => (a.avg - (2 * goalValue + 5) / 3) - .abs() - .compareTo(b.avg - (2 * goalValue + 5) / 3)); - - try { - final singleSolution = plans.every((e) => e.sigma == 0); - recommended = - plans.where((e) => singleSolution ? true : e.sigma > 0).first; - plans.removeWhere((e) => e == recommended); - } catch (_) {} - - plans.sort((a, b) => a.plan.length.compareTo(b.plan.length)); - - try { - fastest = plans.removeAt(0); - } catch (_) {} - - if ((recommended?.plan.length ?? 0) - (fastest?.plan.length ?? 0) >= 3) { - recommended = fastest; - } - - if (recommended == null) { - recommended = null; - fastest = null; - otherPlans = []; - selectedRoute = null; - return PlanResult.unsolvable; - } - - if (recommended!.plan.length > 10) { - recommended = null; - fastest = null; - otherPlans = []; - selectedRoute = null; - return PlanResult.unreachable; - } - - otherPlans = List.from(plans); - - return PlanResult.available; - } - - void getGrades() { - grades = getSubjectGrades(widget.subject).toList(); - } - - @override - Widget build(BuildContext context) { - gradeProvider = Provider.of(context); - calculatorProvider = Provider.of(context); - settingsProvider = Provider.of(context); - - getGrades(); - - final currentAvg = GoalPlannerHelper.averageEvals(grades); - - final result = getResult(); - - List subjectGrades = getSubjectGrades(widget.subject); - - double avg = AverageHelper.averageEvals(subjectGrades); - - var nullavg = GroupAverage(average: 0.0, subject: widget.subject, uid: "0"); - double groupAverage = gradeProvider.groupAverages - .firstWhere((e) => e.subject == widget.subject, orElse: () => nullavg) - .average; - - return Scaffold( - body: SafeArea( - child: ListView( - padding: const EdgeInsets.only( - top: 5.0, - bottom: 220.0, - right: 15.0, - left: 2.0, - ), - children: [ - // Row( - // mainAxisAlignment: MainAxisAlignment.spaceBetween, - // children: [ - // const BackButton(), - // Padding( - // padding: const EdgeInsets.only(right: 15.0), - // child: Row( - // children: [ - // Text( - // 'goal_planner_title'.i18n, - // style: const TextStyle( - // fontWeight: FontWeight.w500, fontSize: 18.0), - // ), - // const SizedBox( - // width: 5, - // ), - // const BetaChip(), - // ], - // ), - // ), - // ], - // ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Row( - children: [ - const BackButton(), - RoundBorderIcon( - icon: Icon( - SubjectIcon.resolveVariant( - context: context, - subject: widget.subject, - ), - size: 18, - weight: 1.5, - ), - ), - const SizedBox( - width: 5.0, - ), - Text( - (widget.subject.isRenamed - ? widget.subject.renamedTo - : widget.subject.name) ?? - 'goal_planner_title'.i18n, - style: const TextStyle( - fontSize: 20.0, - fontWeight: FontWeight.w700, - ), - ), - ], - ), - Row( - children: [ - if (groupAverage != 0) - AverageDisplay(average: groupAverage, border: true), - const SizedBox(width: 6.0), - AverageDisplay(average: avg), - ], - ), - ], - ), - const SizedBox(height: 12.0), - Padding( - padding: const EdgeInsets.only(left: 22.0, right: 22.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - "set_a_goal".i18n, - style: const TextStyle( - fontWeight: FontWeight.bold, - fontSize: 20.0, - ), - ), - const SizedBox(height: 4.0), - Text( - goalValue.toString(), - style: TextStyle( - fontWeight: FontWeight.w900, - fontSize: 48.0, - color: gradeColor(goalValue.round(), settingsProvider), - ), - ), - // Column( - // mainAxisAlignment: MainAxisAlignment.center, - // children: [ - // Text( - // "select_subject".i18n, - // style: const TextStyle( - // fontWeight: FontWeight.bold, - // fontSize: 20.0, - // ), - // ), - // const SizedBox(height: 4.0), - // Column( - // children: [ - // Icon( - // SubjectIcon.resolveVariant( - // context: context, - // subject: widget.subject, - // ), - // size: 48.0, - // ), - // Text( - // (widget.subject.isRenamed - // ? widget.subject.renamedTo - // : widget.subject.name) ?? - // '', - // style: const TextStyle( - // fontSize: 17.0, - // fontWeight: FontWeight.w500, - // ), - // ) - // ], - // ) - // ], - // ) - const SizedBox(height: 24.0), - Text( - "pick_route".i18n, - style: const TextStyle( - fontWeight: FontWeight.bold, - fontSize: 20.0, - ), - ), - const SizedBox(height: 12.0), - if (recommended != null) - RouteOption( - plan: recommended!, - mark: RouteMark.recommended, - selected: selectedRoute == recommended!, - onSelected: () => setState(() { - selectedRoute = recommended; - }), - ), - if (fastest != null && fastest != recommended) - RouteOption( - plan: fastest!, - mark: RouteMark.fastest, - selected: selectedRoute == fastest!, - onSelected: () => setState(() { - selectedRoute = fastest; - }), - ), - ...otherPlans.map((e) => RouteOption( - plan: e, - selected: selectedRoute == e, - onSelected: () => setState(() { - selectedRoute = e; - }), - )), - if (result != PlanResult.available) Text(result.name.i18n), - ], - ), - ), - ], - ), - ), - bottomSheet: MediaQuery.removePadding( - context: context, - removeBottom: false, - removeTop: true, - child: Container( - color: Theme.of(context).scaffoldBackgroundColor, - child: Container( - padding: const EdgeInsets.only(top: 24.0), - decoration: BoxDecoration( - color: Theme.of(context).colorScheme.background, - borderRadius: - const BorderRadius.vertical(top: Radius.circular(24.0)), - boxShadow: [ - BoxShadow( - color: Colors.black.withOpacity(.1), - blurRadius: 8.0, - ) - ]), - child: SafeArea( - child: Padding( - padding: const EdgeInsets.symmetric(horizontal: 20.0), - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - GoalInput( - value: goalValue, - currentAverage: currentAvg, - onChanged: (v) => setState(() { - selectedRoute = null; - goalValue = v; - }), - ), - const SizedBox(height: 24.0), - SizedBox( - width: double.infinity, - child: RawMaterialButton( - onPressed: () async { - if (selectedRoute == null) { - ScaffoldMessenger.of(context).showSnackBar(SnackBar( - content: Text('${"pick_route".i18n}...'))); - } - - final goalPlans = await fetchGoalPlans(); - final goalAvgs = await fetchGoalAverages(); - final goalBeforeGrades = await fetchGoalBees(); - final goalPinDates = await fetchGoalPinDates(); - - goalPlans[widget.subject.id] = - selectedRoute!.dbString; - goalAvgs[widget.subject.id] = - goalValue.toStringAsFixed(2); - goalBeforeGrades[widget.subject.id] = - avg.toStringAsFixed(2); - goalPinDates[widget.subject.id] = - DateTime.now().toIso8601String(); - // goalPlans[widget.subject.id] = '1,2,3,4,5,'; - // goalAvgs[widget.subject.id] = '3.69'; - // goalBeforeGrades[widget.subject.id] = '3.69'; - // goalPinDates[widget.subject.id] = - // DateTime.now().toIso8601String(); - - await dbProvider.userStore.storeSubjectGoalPlans( - goalPlans, - userId: user.id!); - await dbProvider.userStore.storeSubjectGoalAverages( - goalAvgs, - userId: user.id!); - await dbProvider.userStore.storeSubjectGoalBefores( - goalBeforeGrades, - userId: user.id!); - await dbProvider.userStore.storeSubjectGoalPinDates( - goalPinDates, - userId: user.id!); - - Navigator.of(context).pop(); - }, - fillColor: Theme.of(context).colorScheme.primary, - shape: const StadiumBorder(), - padding: const EdgeInsets.symmetric(vertical: 8.0), - child: Text( - "track_it".i18n, - style: const TextStyle( - color: Colors.white, - fontSize: 20.0, - fontWeight: FontWeight.w600, - ), - ), - ), - ) - ], - ), - ), - ), - ), - ), - ), - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner_screen.i18n.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner_screen.i18n.dart deleted file mode 100644 index 0e99214..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_planner_screen.i18n.dart +++ /dev/null @@ -1,45 +0,0 @@ -import 'package:i18n_extension/i18n_extension.dart'; - -extension Localization on String { - static final _t = Translations.byLocale("hu_hu") + - { - "en_en": { - "goal_planner_title": "Goal Planning", - "set_a_goal": "Your Goal", - "select_subject": "Subject", - "pick_route": "Pick a Route", - "track_it": "Track it!", - "recommended": "Recommended", - "fastest": "Fastest", - "unsolvable": "Unsolvable :(", - "unreachable": "Unreachable :(", - }, - "hu_hu": { - "goal_planner_title": "Cél követés", - "set_a_goal": "Kitűzött cél", - "select_subject": "Tantárgy", - "pick_route": "Válassz egy utat", - "track_it": "Követés!", - "recommended": "Ajánlott", - "fastest": "Leggyorsabb", - "unsolvable": "Megoldhatatlan :(", - "unreachable": "Elérhetetlen :(", - }, - "de_de": { - "goal_planner_title": "Zielplanung", - "set_a_goal": "Dein Ziel", - "select_subject": "Thema", - "pick_route": "Wähle einen Weg", - "track_it": "Verfolge es!", - "recommended": "Empfohlen", - "fastest": "Am schnellsten", - "unsolvable": "Unlösbar :(", - "unreachable": "Unerreichbar :(", - }, - }; - - String get i18n => localize(this, _t); - String fill(List params) => localizeFill(this, params); - String plural(int value) => localizePlural(value, this, _t); - String version(Object modifier) => localizeVersion(modifier, this, _t); -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_state_screen.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_state_screen.dart deleted file mode 100644 index ba577c8..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_state_screen.dart +++ /dev/null @@ -1,469 +0,0 @@ -import 'package:filcnaplo/api/providers/database_provider.dart'; -import 'package:filcnaplo/api/providers/user_provider.dart'; -import 'package:filcnaplo/helpers/average_helper.dart'; -import 'package:filcnaplo/helpers/subject.dart'; -import 'package:filcnaplo/models/settings.dart'; -import 'package:filcnaplo_kreta_api/models/grade.dart'; -import 'package:filcnaplo_kreta_api/models/subject.dart'; -import 'package:filcnaplo_kreta_api/providers/grade_provider.dart'; -import 'package:filcnaplo_mobile_ui/common/action_button.dart'; -import 'package:filcnaplo_mobile_ui/common/average_display.dart'; -import 'package:filcnaplo_mobile_ui/common/panel/panel.dart'; -import 'package:filcnaplo_mobile_ui/common/progress_bar.dart'; -import 'package:filcnaplo_mobile_ui/common/round_border_icon.dart'; -import 'package:filcnaplo_premium/providers/goal_provider.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_planner.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_state_screen.i18n.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/route_option.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_feather_icons/flutter_feather_icons.dart'; -import 'package:provider/provider.dart'; - -import 'goal_planner_screen.dart'; -import 'graph.dart'; - -class GoalStateScreen extends StatefulWidget { - final GradeSubject subject; - - const GoalStateScreen({Key? key, required this.subject}) : super(key: key); - - @override - State createState() => _GoalStateScreenState(); -} - -class _GoalStateScreenState extends State { - late UserProvider user; - late DatabaseProvider db; - late GradeProvider gradeProvider; - late SettingsProvider settingsProvider; - - double currAvg = 0.0; - double goalAvg = 0.0; - double beforeAvg = 0.0; - double afterAvg = 0.0; - double avgDifference = 0; - - Plan? plan; - - late Widget gradeGraph; - - DateTime goalPinDate = DateTime.now(); - - void fetchGoalAverages() async { - var goalAvgRes = await db.userQuery.subjectGoalAverages(userId: user.id!); - var beforeAvgRes = await db.userQuery.subjectGoalBefores(userId: user.id!); - - goalPinDate = DateTime.parse((await db.userQuery - .subjectGoalPinDates(userId: user.id!))[widget.subject.id]!); - - String? goalAvgStr = goalAvgRes[widget.subject.id]; - String? beforeAvgStr = beforeAvgRes[widget.subject.id]; - goalAvg = double.parse(goalAvgStr ?? '0.0'); - beforeAvg = double.parse(beforeAvgStr ?? '0.0'); - - avgDifference = ((goalAvg - beforeAvg) / beforeAvg.abs()) * 100; - - setState(() {}); - } - - void fetchGoalPlan() async { - var planRes = await db.userQuery.subjectGoalPlans(userId: user.id!); - List prePlan = planRes[widget.subject.id]!.split(','); - prePlan.removeLast(); - - plan = Plan( - prePlan.map((e) => int.parse(e)).toList(), - ); - - setState(() {}); - } - - List getSubjectGrades(GradeSubject subject) => - gradeProvider.grades.where((e) => (e.subject == subject)).toList(); - - List getAfterGoalGrades(GradeSubject subject) => gradeProvider.grades - .where((e) => (e.subject == subject && e.date.isAfter(goalPinDate))) - .toList(); - - @override - void initState() { - super.initState(); - user = Provider.of(context, listen: false); - db = Provider.of(context, listen: false); - - WidgetsBinding.instance.addPostFrameCallback((_) { - fetchGoalAverages(); - fetchGoalPlan(); - }); - } - - @override - Widget build(BuildContext context) { - gradeProvider = Provider.of(context); - settingsProvider = Provider.of(context); - - var subjectGrades = getSubjectGrades(widget.subject).toList(); - currAvg = AverageHelper.averageEvals(subjectGrades); - - var afterGoalGrades = getAfterGoalGrades(widget.subject).toList(); - afterAvg = AverageHelper.averageEvals(afterGoalGrades); - - Color averageColor = currAvg >= 1 && currAvg <= 5 - ? ColorTween( - begin: settingsProvider.gradeColors[currAvg.floor() - 1], - end: settingsProvider.gradeColors[currAvg.ceil() - 1]) - .transform(currAvg - currAvg.floor())! - : Theme.of(context).colorScheme.secondary; - - gradeGraph = Padding( - padding: const EdgeInsets.only( - top: 12.0, - bottom: 8.0, - ), - child: Panel( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Container( - padding: const EdgeInsets.only(top: 16.0, right: 12.0), - child: GoalGraph(afterGoalGrades, - dayThreshold: 5, classAvg: goalAvg), - ), - const SizedBox(height: 5.0), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 8.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'look_at_graph'.i18n, - style: const TextStyle( - fontWeight: FontWeight.w700, - fontSize: 23.0, - ), - ), - Text( - 'thats_progress'.i18n, - style: const TextStyle( - fontWeight: FontWeight.w400, - fontSize: 20.0, - ), - ), - const SizedBox(height: 15.0), - ProgressBar( - value: currAvg / goalAvg, - backgroundColor: averageColor, - height: 16.0, - ), - const SizedBox(height: 8.0), - ], - ), - ), - ], - ), - ), - ); - - return Scaffold( - body: ListView( - padding: EdgeInsets.zero, - children: [ - Container( - decoration: const BoxDecoration( - // image: DecorationImage( - // image: - // AssetImage('assets/images/subject_covers/math_light.png'), - // fit: BoxFit.fitWidth, - // alignment: Alignment.topCenter, - // ), - ), - child: Container( - decoration: BoxDecoration( - gradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - Theme.of(context).scaffoldBackgroundColor.withOpacity(0.2), - Theme.of(context).scaffoldBackgroundColor, - ], - stops: const [ - 0.1, - 0.22, - ], - ), - ), - child: Padding( - padding: const EdgeInsets.only( - top: 60.0, - left: 2.0, - right: 2.0, - ), - child: Column( - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - const BackButton(), - IconButton( - onPressed: () { - showDialog( - context: context, - builder: (context) => AlertDialog( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(12.0)), - title: Text("attention".i18n), - content: Text("attention_body".i18n), - actions: [ - ActionButton( - label: "delete".i18n, - onTap: () async { - // clear the goal - await Provider.of(context, - listen: false) - .clearGoal(widget.subject); - // close the modal and the goal page - Navigator.of(context).pop(); - Navigator.of(context).pop(); - }, - ), - ], - ), - ); - }, - icon: const Icon(FeatherIcons.x), - ), - ], - ), - const SizedBox(height: 22.0), - Column( - children: [ - RoundBorderIcon( - icon: Icon( - SubjectIcon.resolveVariant( - context: context, - subject: widget.subject, - ), - size: 26.0, - weight: 2.5, - ), - padding: 8.0, - width: 2.5, - ), - const SizedBox( - height: 10.0, - ), - Text( - (widget.subject.isRenamed - ? widget.subject.renamedTo - : widget.subject.name) ?? - 'goal_planner_title'.i18n, - style: const TextStyle( - fontSize: 30.0, - fontWeight: FontWeight.w700, - ), - ), - Text( - 'almost_there'.i18n, - style: const TextStyle( - fontSize: 22.0, - fontWeight: FontWeight.w400, - height: 1.0, - ), - ), - ], - ), - const SizedBox(height: 28.0), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 24.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Text( - 'started_with'.i18n, - style: const TextStyle( - fontWeight: FontWeight.w700, - fontSize: 20.0, - ), - ), - const SizedBox(width: 5.0), - AverageDisplay(average: beforeAvg), - ], - ), - Row( - children: [ - Text( - 'current'.i18n, - style: const TextStyle( - fontWeight: FontWeight.w700, - fontSize: 20.0, - ), - ), - const SizedBox(width: 5.0), - AverageDisplay(average: currAvg), - const SizedBox(width: 5.0), - // ide majd kell average difference - ], - ), - ], - ), - ), - const SizedBox(height: 10.0), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 12.0), - child: Panel( - padding: const EdgeInsets.all(18.0), - child: Column( - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'your_goal'.i18n, - style: const TextStyle( - fontSize: 23.0, - fontWeight: FontWeight.w700, - ), - ), - RawMaterialButton( - onPressed: () async { - Navigator.of(context).push( - CupertinoPageRoute( - builder: (context) => - GoalPlannerScreen( - subject: widget.subject))); - }, - fillColor: Colors.black, - shape: const StadiumBorder(), - padding: const EdgeInsets.symmetric( - horizontal: 18.0), - child: Text( - "change_it".i18n, - style: const TextStyle( - height: 1.0, - color: Colors.white, - fontSize: 14.0, - fontWeight: FontWeight.w600, - ), - ), - ), - ], - ), - Row( - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Text( - goalAvg.toString(), - style: const TextStyle( - height: 1.1, - fontSize: 42.0, - fontWeight: FontWeight.w800, - ), - ), - const SizedBox(width: 10.0), - Center( - child: Container( - padding: const EdgeInsets.symmetric( - vertical: 5.0, - horizontal: 8.0, - ), - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(45.0), - color: avgDifference.isNegative - ? Colors.redAccent.shade400 - .withOpacity(.15) - : Colors.greenAccent.shade700 - .withOpacity(.15), - ), - child: Row( - crossAxisAlignment: - CrossAxisAlignment.center, - children: [ - Icon( - avgDifference.isNegative - ? FeatherIcons.chevronDown - : FeatherIcons.chevronUp, - color: avgDifference.isNegative - ? Colors.redAccent.shade400 - : Colors.greenAccent.shade700, - size: 18.0, - ), - const SizedBox(width: 5.0), - Text( - avgDifference.toStringAsFixed(2) + - '%', - textAlign: TextAlign.center, - style: TextStyle( - color: avgDifference.isNegative - ? Colors.redAccent.shade400 - : Colors.greenAccent.shade700, - fontSize: 22.0, - height: 0.8, - fontWeight: FontWeight.w500, - ), - ), - ], - ), - ), - ), - ], - ), - ], - ), - ), - ), - const SizedBox(height: 5.0), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 12.0), - child: gradeGraph, - ), - const SizedBox(height: 5.0), - Padding( - padding: const EdgeInsets.only( - left: 12.0, - right: 12.0, - top: 5.0, - bottom: 8.0, - ), - child: Panel( - padding: const EdgeInsets.all(18.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'you_need'.i18n, - style: const TextStyle( - fontSize: 23.0, - fontWeight: FontWeight.w700, - ), - ), - ], - ), - const SizedBox(height: 8.0), - plan != null - ? RouteOptionRow( - plan: plan!, - ) - : const Text(''), - ], - ), - ), - ), - ], - ), - ), - ), - ), - ], - ), - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_state_screen.i18n.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_state_screen.i18n.dart deleted file mode 100644 index 19c56ed..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/goal_state_screen.i18n.dart +++ /dev/null @@ -1,87 +0,0 @@ -import 'package:i18n_extension/i18n_extension.dart'; - -extension Localization on String { - static final _t = Translations.byLocale("hu_hu") + - { - "en_en": { - // base page - "goal_planner_title": "Goal Planning", - "almost_there": "Almost there! Keep going!", - "started_with": "Started with:", - "current": "Current:", - "your_goal": "Your goal:", - "change_it": "Change it", - "look_at_graph": "Look at this graph!", - "thats_progress": - "Now that's what I call progress! Push a little more, you're almost there..", - "you_need": "You need:", - // done modal - "congrats_title": "🎉 Congratulations!", - "goal_reached": "You reached your goal after %s days!", - "started_at": "You started at", - "improved_by": "and improved your grade by %s", - "detailed_stats": "See my detailed stats", - "later": "Yay! I'll see my stats later.", - // sure delete modal - "delete": "Delete", - "attention": "Attention!", - "attention_body": - "Your goal and progress will be lost forever and cannot be restored.", - }, - "hu_hu": { - // base page - "goal_planner_title": "Cél követés", - "almost_there": "Majdnem megvan! Így tovább!", - "started_with": "Így kezdődött:", - "current": "Jelenlegi:", - "your_goal": "Célod:", - "change_it": "Megváltoztatás", - "look_at_graph": "Nézd meg ezt a grafikont!", - "thats_progress": - "Ezt nevezem haladásnak! Hajts még egy kicsit, már majdnem kész..", - "you_need": "Szükséges:", - // done modal - "congrats_title": "🎉 Gratulálunk!", - "goal_reached": "%s nap után érted el a célod!", - "started_at": "Átlagod kezdéskor:", - "improved_by": "%s-os javulást értél el!", - "detailed_stats": "Részletes statisztikám", - "later": "Hurrá! Megnézem máskor.", - // sure delete modal - "delete": "Törlés", - "attention": "Figyelem!", - "attention_body": - "A kitűzött célod és haladásod örökre elveszik és nem lesz visszaállítható.", - }, - "de_de": { - // base page - "goal_planner_title": "Zielplanung", - "almost_there": "Fast dort! Weitermachen!", - "started_with": "Begann mit:", - "current": "Aktuell:", - "your_goal": "Dein Ziel:", - "change_it": "Ändern Sie es", - "look_at_graph": "Schauen Sie sich diese Grafik an!", - "thats_progress": - "Das nenne ich Fortschritt! Drücken Sie noch ein wenig, Sie haben es fast geschafft..", - "you_need": "Du brauchst:", - // done modal - "congrats_title": "🎉 Glückwunsch!", - "goal_reached": "Du hast dein Ziel nach %s Tagen erreicht!", - "started_at": "Gesamtbewertung:", - "improved_by": "Sie haben %s Verbesserung erreicht!", - "detailed_stats": "Detaillierte Statistiken", - "later": "Hurra! Ich schaue später nach.", - // sure delete modal - "delete": "Löschen", - "attention": "Achtung!", - "attention_body": - "Ihr Ziel und Ihr Fortschritt gehen für immer verloren und können nicht wiederhergestellt werden.", - }, - }; - - String get i18n => localize(this, _t); - String fill(List params) => localizeFill(this, params); - String plural(int value) => localizePlural(value, this, _t); - String version(Object modifier) => localizeVersion(modifier, this, _t); -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/grade_display.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/grade_display.dart deleted file mode 100644 index 1a1142a..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/grade_display.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'package:filcnaplo/models/settings.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_input.dart'; -import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; - -class GradeDisplay extends StatelessWidget { - const GradeDisplay({Key? key, required this.grade}) : super(key: key); - - final int grade; - - @override - Widget build(BuildContext context) { - SettingsProvider settings = Provider.of(context); - - return Container( - width: 36, - height: 36, - decoration: BoxDecoration( - shape: BoxShape.circle, - color: gradeColor(grade, settings).withOpacity(.3), - ), - child: Center( - child: Text( - grade.toInt().toString(), - style: TextStyle( - fontWeight: FontWeight.bold, - fontSize: 22.0, - color: gradeColor(grade, settings), - ), - ), - ), - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/graph.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/graph.dart deleted file mode 100644 index 724b84a..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/graph.dart +++ /dev/null @@ -1,249 +0,0 @@ -import 'dart:math'; - -import 'package:filcnaplo/helpers/average_helper.dart'; -import 'package:filcnaplo/models/settings.dart'; -import 'package:filcnaplo/theme/colors/colors.dart'; -import 'package:filcnaplo_kreta_api/models/grade.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/graph.i18n.dart'; -import 'package:flutter/material.dart'; -import 'package:fl_chart/fl_chart.dart'; -import 'package:provider/provider.dart'; - -class GoalGraph extends StatefulWidget { - const GoalGraph(this.data, {Key? key, this.dayThreshold = 7, this.classAvg}) - : super(key: key); - - final List data; - final int dayThreshold; - final double? classAvg; - - @override - _GoalGraphState createState() => _GoalGraphState(); -} - -class _GoalGraphState extends State { - late SettingsProvider settings; - - List getSpots(List data) { - List subjectData = []; - List> sortedData = [[]]; - - // Sort by date descending - data.sort((a, b) => -a.writeDate.compareTo(b.writeDate)); - - // Sort data to points by treshold - for (var element in data) { - if (sortedData.last.isNotEmpty && - sortedData.last.last.writeDate.difference(element.writeDate).inDays > - widget.dayThreshold) { - sortedData.add([]); - } - for (var dataList in sortedData) { - dataList.add(element); - } - } - - // Create FlSpots from points - for (var dataList in sortedData) { - double average = AverageHelper.averageEvals(dataList); - - if (dataList.isNotEmpty) { - subjectData.add(FlSpot( - dataList[0].writeDate.month + - (dataList[0].writeDate.day / 31) + - ((dataList[0].writeDate.year - data.last.writeDate.year) * 12), - double.parse(average.toStringAsFixed(2)), - )); - } - } - - return subjectData; - } - - @override - Widget build(BuildContext context) { - settings = Provider.of(context); - - List subjectSpots = []; - List ghostSpots = []; - List extraLinesV = []; - List extraLinesH = []; - - // Filter data - List data = widget.data - .where((e) => e.value.weight != 0) - .where((e) => e.type == GradeType.midYear) - .where((e) => e.gradeType?.name == "Osztalyzat") - .toList(); - - // Filter ghost data - List ghostData = widget.data - .where((e) => e.value.weight != 0) - .where((e) => e.type == GradeType.ghost) - .toList(); - - // Calculate average - double average = AverageHelper.averageEvals(data); - - // Calculate graph color - Color averageColor = average >= 1 && average <= 5 - ? ColorTween( - begin: settings.gradeColors[average.floor() - 1], - end: settings.gradeColors[average.ceil() - 1]) - .transform(average - average.floor())! - : Theme.of(context).colorScheme.secondary; - - subjectSpots = getSpots(data); - - // naplo/#73 - if (subjectSpots.isNotEmpty) { - ghostSpots = getSpots(data + ghostData); - - // hax - ghostSpots = ghostSpots - .where((e) => e.x >= subjectSpots.map((f) => f.x).reduce(max)) - .toList(); - ghostSpots = ghostSpots.map((e) => FlSpot(e.x + 0.1, e.y)).toList(); - ghostSpots.add(subjectSpots.firstWhere( - (e) => e.x >= subjectSpots.map((f) => f.x).reduce(max), - orElse: () => const FlSpot(-1, -1))); - ghostSpots.removeWhere( - (element) => element.x == -1 && element.y == -1); // naplo/#74 - } - - // Horizontal line displaying the class average - if (widget.classAvg != null && - widget.classAvg! > 0.0 && - settings.graphClassAvg) { - extraLinesH.add(HorizontalLine( - y: widget.classAvg!, - color: AppColors.of(context).text.withOpacity(.75), - )); - } - - // LineChart is really cute because it tries to render it's contents outside of it's rect. - return widget.data.length <= 2 - ? SizedBox( - height: 150, - child: Center( - child: Text( - "not_enough_grades".i18n, - textAlign: TextAlign.center, - style: const TextStyle(fontWeight: FontWeight.bold), - ), - ), - ) - : ClipRect( - child: SizedBox( - child: subjectSpots.length > 1 - ? Padding( - padding: const EdgeInsets.only(top: 8.0, right: 8.0), - child: LineChart( - LineChartData( - extraLinesData: ExtraLinesData( - verticalLines: extraLinesV, - horizontalLines: extraLinesH), - lineBarsData: [ - LineChartBarData( - preventCurveOverShooting: true, - spots: subjectSpots, - isCurved: true, - colors: [averageColor], - barWidth: 8, - isStrokeCapRound: true, - dotData: FlDotData(show: false), - belowBarData: BarAreaData( - show: true, - colors: [ - averageColor.withOpacity(0.7), - averageColor.withOpacity(0.3), - averageColor.withOpacity(0.2), - averageColor.withOpacity(0.1), - ], - gradientColorStops: [0.1, 0.6, 0.8, 1], - gradientFrom: const Offset(0, 0), - gradientTo: const Offset(0, 1), - ), - ), - if (ghostData.isNotEmpty && ghostSpots.isNotEmpty) - LineChartBarData( - preventCurveOverShooting: true, - spots: ghostSpots, - isCurved: true, - colors: [AppColors.of(context).text], - barWidth: 8, - isStrokeCapRound: true, - dotData: FlDotData(show: false), - belowBarData: BarAreaData( - show: true, - colors: [ - AppColors.of(context).text.withOpacity(0.7), - AppColors.of(context).text.withOpacity(0.3), - AppColors.of(context).text.withOpacity(0.2), - AppColors.of(context).text.withOpacity(0.1), - ], - gradientColorStops: [0.1, 0.6, 0.8, 1], - gradientFrom: const Offset(0, 0), - gradientTo: const Offset(0, 1), - ), - ), - ], - minY: 1, - maxY: 5, - gridData: FlGridData( - show: true, - horizontalInterval: 1, - // checkToShowVerticalLine: (_) => false, - // getDrawingHorizontalLine: (_) => FlLine( - // color: AppColors.of(context).text.withOpacity(.15), - // strokeWidth: 2, - // ), - // getDrawingVerticalLine: (_) => FlLine( - // color: AppColors.of(context).text.withOpacity(.25), - // strokeWidth: 2, - // ), - ), - lineTouchData: LineTouchData( - touchTooltipData: LineTouchTooltipData( - tooltipBgColor: Colors.grey.shade800, - fitInsideVertically: true, - fitInsideHorizontally: true, - ), - handleBuiltInTouches: true, - touchSpotThreshold: 20.0, - getTouchedSpotIndicator: (_, spots) { - return List.generate( - spots.length, - (index) => TouchedSpotIndicatorData( - FlLine( - color: Colors.grey.shade900, - strokeWidth: 3.5, - ), - FlDotData( - getDotPainter: (a, b, c, d) => - FlDotCirclePainter( - strokeWidth: 0, - color: Colors.grey.shade900, - radius: 10.0, - ), - ), - ), - ); - }, - ), - borderData: FlBorderData( - show: false, - border: Border.all( - color: Theme.of(context).scaffoldBackgroundColor, - width: 4, - ), - ), - ), - ), - ) - : null, - height: 158, - ), - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/graph.i18n.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/graph.i18n.dart deleted file mode 100644 index 50e2ea8..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/graph.i18n.dart +++ /dev/null @@ -1,21 +0,0 @@ -import 'package:i18n_extension/i18n_extension.dart'; - -extension Localization on String { - static final _t = Translations.byLocale("hu_hu") + - { - "en_en": { - "not_enough_grades": "Not enough data to show a graph here.", - }, - "hu_hu": { - "not_enough_grades": "Nem szereztél még elég jegyet grafikon mutatáshoz.", - }, - "de_de": { - "not_enough_grades": "Noch nicht genug Noten, um die Grafik zu zeigen.", - }, - }; - - String get i18n => localize(this, _t); - String fill(List params) => localizeFill(this, params); - String plural(int value) => localizePlural(value, this, _t); - String version(Object modifier) => localizeVersion(modifier, this, _t); -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/route_option.dart b/filcnaplo_premium_old/lib/ui/mobile/goal_planner/route_option.dart deleted file mode 100644 index dfc4b8b..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/goal_planner/route_option.dart +++ /dev/null @@ -1,202 +0,0 @@ -import 'package:filcnaplo/theme/colors/colors.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_planner.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/goal_planner_screen.i18n.dart'; -import 'package:filcnaplo_premium/ui/mobile/goal_planner/grade_display.dart'; -import 'package:flutter/material.dart'; - -enum RouteMark { recommended, fastest } - -class RouteOption extends StatelessWidget { - const RouteOption( - {Key? key, - required this.plan, - this.mark, - this.selected = false, - required this.onSelected}) - : super(key: key); - - final Plan plan; - final RouteMark? mark; - final bool selected; - final void Function() onSelected; - - Widget markLabel() { - const style = TextStyle(fontWeight: FontWeight.bold); - - switch (mark!) { - case RouteMark.recommended: - return Text("recommended".i18n, style: style); - case RouteMark.fastest: - return Text("fastest".i18n, style: style); - } - } - - Color markColor(BuildContext context) { - switch (mark) { - case RouteMark.recommended: - return const Color.fromARGB(255, 104, 93, 255); - case RouteMark.fastest: - return const Color.fromARGB(255, 255, 91, 146); - default: - return Theme.of(context).colorScheme.primary; - } - } - - @override - Widget build(BuildContext context) { - List gradeWidgets = []; - - for (int i = 5; i > 1; i--) { - final count = plan.plan.where((e) => e == i).length; - - if (count > 4) { - gradeWidgets.add(Row( - mainAxisSize: MainAxisSize.min, - children: [ - Text( - "${count}x", - style: TextStyle( - fontSize: 22.0, - fontWeight: FontWeight.w500, - color: AppColors.of(context).text.withOpacity(.7), - ), - ), - const SizedBox(width: 4.0), - GradeDisplay(grade: i), - ], - )); - } else { - gradeWidgets - .addAll(List.generate(count, (_) => GradeDisplay(grade: i))); - } - - if (count > 0) { - gradeWidgets.add(SizedBox( - height: 36.0, - width: 32.0, - child: Center( - child: Icon(Icons.add, - color: AppColors.of(context).text.withOpacity(.5))), - )); - } - } - - gradeWidgets.removeLast(); - - return Padding( - padding: const EdgeInsets.only(bottom: 12.0), - child: SizedBox( - width: double.infinity, - child: Card( - surfaceTintColor: - selected ? markColor(context).withOpacity(.2) : Colors.white, - margin: EdgeInsets.zero, - elevation: 5, - shadowColor: Colors.transparent, - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(16.0), - side: selected - ? BorderSide(color: markColor(context), width: 4.0) - : BorderSide.none, - ), - child: InkWell( - borderRadius: BorderRadius.circular(16.0), - onTap: onSelected, - child: Padding( - padding: const EdgeInsets.only( - top: 16.0, bottom: 16.0, left: 20.0, right: 12.0), - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - if (mark != null) ...[ - Chip( - label: markLabel(), - visualDensity: VisualDensity.compact, - backgroundColor: - selected ? markColor(context) : Colors.transparent, - labelPadding: const EdgeInsets.symmetric(horizontal: 8.0), - labelStyle: - TextStyle(color: selected ? Colors.white : null), - shape: StadiumBorder( - side: BorderSide( - color: markColor(context), - width: 3.0, - ), - ), - ), - const SizedBox(height: 6.0), - ], - Wrap( - spacing: 4.0, - runSpacing: 8.0, - children: gradeWidgets, - ), - ], - ), - ), - ), - ), - ), - ); - } -} - -class RouteOptionRow extends StatelessWidget { - const RouteOptionRow({ - Key? key, - required this.plan, - this.mark, - }) : super(key: key); - - final Plan plan; - final RouteMark? mark; - - @override - Widget build(BuildContext context) { - List gradeWidgets = []; - - for (int i = 5; i > 1; i--) { - final count = plan.plan.where((e) => e == i).length; - - if (count > 4) { - gradeWidgets.add(Row( - mainAxisSize: MainAxisSize.min, - children: [ - Text( - "${count}x", - style: TextStyle( - fontSize: 22.0, - fontWeight: FontWeight.w500, - color: AppColors.of(context).text.withOpacity(.7), - ), - ), - const SizedBox(width: 4.0), - GradeDisplay(grade: i), - ], - )); - } else { - gradeWidgets - .addAll(List.generate(count, (_) => GradeDisplay(grade: i))); - } - - if (count > 0) { - gradeWidgets.add(SizedBox( - height: 36.0, - width: 32.0, - child: Center( - child: Icon(Icons.add, - color: AppColors.of(context).text.withOpacity(.5))), - )); - } - } - - gradeWidgets.removeLast(); - - return Wrap( - spacing: 4.0, - runSpacing: 8.0, - children: gradeWidgets, - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/premium/activation_view/activation_dashboard.dart b/filcnaplo_premium_old/lib/ui/mobile/premium/activation_view/activation_dashboard.dart deleted file mode 100644 index 7d6448f..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/premium/activation_view/activation_dashboard.dart +++ /dev/null @@ -1,197 +0,0 @@ -import 'package:filcnaplo/theme/colors/colors.dart'; -import 'package:filcnaplo_premium/providers/premium_provider.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_feather_icons/flutter_feather_icons.dart'; -import 'package:flutter_svg/svg.dart'; -import 'package:flutter/services.dart'; -import 'package:provider/provider.dart'; - -class ActivationDashboard extends StatefulWidget { - const ActivationDashboard({super.key}); - - @override - State createState() => _ActivationDashboardState(); -} - -class _ActivationDashboardState extends State { - bool manualActivationLoading = false; - - Future onManualActivation() async { - final data = await Clipboard.getData("text/plain"); - if (data == null || data.text == null || data.text == "") { - return; - } - setState(() { - manualActivationLoading = true; - }); - final result = - await context.read().auth.finishAuth(data.text!); - setState(() { - manualActivationLoading = false; - }); - - if (!result && mounted) { - ScaffoldMessenger.of(context).showSnackBar(const SnackBar( - content: Text( - "Sikertelen aktiválás. Kérlek próbáld újra később!", - style: TextStyle(color: Colors.white, fontWeight: FontWeight.bold), - ), - backgroundColor: Colors.red, - )); - } - } - - @override - Widget build(BuildContext context) { - return Padding( - padding: const EdgeInsets.symmetric(horizontal: 24.0), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const Spacer(), - Center( - child: SvgPicture.asset( - "assets/images/github.svg", - height: 64.0, - ), - ), - const SizedBox(height: 32.0), - const Text( - "Jelentkezz be a GitHub felületén és adj hozzáférést a Filcnek, hogy aktiváld a Premiumot.", - textAlign: TextAlign.center, - style: TextStyle(fontWeight: FontWeight.w700, fontSize: 18.0), - ), - const SizedBox(height: 12.0), - Card( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(14.0)), - child: const Padding( - padding: EdgeInsets.all(20.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Icon(FeatherIcons.alertTriangle, - size: 20.0, color: Colors.orange), - SizedBox(width: 12.0), - Text( - "Figyelem!", - style: TextStyle( - fontSize: 18.0, fontWeight: FontWeight.bold), - ), - ], - ), - SizedBox(height: 6.0), - Text( - "Csak akkor érzékeli a Filc a támogatói státuszod, ha nem állítod privátra!", - style: TextStyle(fontSize: 16.0), - ), - ], - ), - ), - ), - const SizedBox(height: 12.0), - Card( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(14.0)), - child: const Padding( - padding: EdgeInsets.all(20.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Icon(FeatherIcons.alertTriangle, - size: 20.0, color: Colors.orange), - SizedBox(width: 12.0), - Text( - "Figyelem!", - style: TextStyle( - fontSize: 18.0, fontWeight: FontWeight.bold), - ), - ], - ), - SizedBox(height: 6.0), - Text( - "Ha friss támogató vagy, 5-10 percbe telhet az aktiválás. Kérlek gyere vissza később, és próbáld újra!", - style: TextStyle(fontSize: 16.0), - ), - ], - ), - ), - ), - const SizedBox(height: 12.0), - Card( - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(14.0)), - child: Padding( - padding: const EdgeInsets.all(20.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - const Text( - "Ha bejelentkezés után nem lép vissza az alkalmazásba automatikusan, aktiváld a támogatásod manuálisan", - style: - TextStyle(fontSize: 15.0, fontWeight: FontWeight.w500), - ), - const SizedBox(height: 6.0), - Center( - child: TextButton.icon( - onPressed: onManualActivation, - style: ButtonStyle( - foregroundColor: MaterialStatePropertyAll( - Theme.of(context).colorScheme.secondary), - overlayColor: MaterialStatePropertyAll(Theme.of(context) - .colorScheme - .secondary - .withOpacity(.1)), - ), - icon: manualActivationLoading - ? const SizedBox( - child: CircularProgressIndicator(), - height: 16.0, - width: 16.0, - ) - : const Icon(FeatherIcons.key, size: 20.0), - label: const Padding( - padding: EdgeInsets.only(left: 8.0), - child: Text( - "Aktiválás tokennel", - style: TextStyle(fontSize: 16.0), - ), - ), - ), - ), - ], - ), - ), - ), - const Spacer(), - Padding( - padding: const EdgeInsets.only(bottom: 24.0), - child: Center( - child: TextButton.icon( - onPressed: () { - Navigator.of(context).pop(); - }, - style: ButtonStyle( - foregroundColor: - MaterialStatePropertyAll(AppColors.of(context).text), - overlayColor: MaterialStatePropertyAll( - AppColors.of(context).text.withOpacity(.1)), - ), - icon: const Icon(FeatherIcons.arrowLeft, size: 20.0), - label: const Text( - "Vissza", - style: TextStyle(fontSize: 16.0), - ), - ), - ), - ), - ], - ), - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/premium/activation_view/activation_view.dart b/filcnaplo_premium_old/lib/ui/mobile/premium/activation_view/activation_view.dart deleted file mode 100644 index c0ee3fa..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/premium/activation_view/activation_view.dart +++ /dev/null @@ -1,67 +0,0 @@ -import 'package:animations/animations.dart'; -import 'package:filcnaplo_premium/providers/premium_provider.dart'; -import 'package:filcnaplo_premium/ui/mobile/premium/activation_view/activation_dashboard.dart'; -import 'package:flutter/material.dart'; -import 'package:lottie/lottie.dart'; -import 'package:provider/provider.dart'; - -class PremiumActivationView extends StatefulWidget { - const PremiumActivationView({super.key}); - - @override - State createState() => _PremiumActivationViewState(); -} - -class _PremiumActivationViewState extends State with SingleTickerProviderStateMixin { - late AnimationController animation; - bool activated = false; - - @override - void initState() { - super.initState(); - context.read().auth.initAuth(); - - animation = AnimationController(vsync: this, duration: const Duration(seconds: 2)); - } - - @override - void dispose() { - animation.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - final premium = context.watch(); - - if (premium.hasPremium && !activated) { - activated = true; - animation.forward(); - WidgetsBinding.instance.addPostFrameCallback((timeStamp) { - Future.delayed(const Duration(seconds: 2)).then((value) { - if (mounted) Navigator.of(context).pop(); - }); - }); - } - - return Scaffold( - body: PageTransitionSwitcher( - transitionBuilder: (child, primaryAnimation, secondaryAnimation) => SharedAxisTransition( - animation: primaryAnimation, - secondaryAnimation: secondaryAnimation, - transitionType: SharedAxisTransitionType.horizontal, - fillColor: Colors.transparent, - child: child, - ), - child: premium.hasPremium - ? Center( - child: SizedBox( - width: 400, - child: Lottie.network("https://assets2.lottiefiles.com/packages/lf20_wkebwzpz.json", controller: animation), - ), - ) - : const SafeArea(child: ActivationDashboard()), - ), - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/premium/premium_inline.dart b/filcnaplo_premium_old/lib/ui/mobile/premium/premium_inline.dart deleted file mode 100644 index 07d0285..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/premium/premium_inline.dart +++ /dev/null @@ -1,66 +0,0 @@ -import 'package:filcnaplo_premium/ui/mobile/premium/upsell.dart'; -import 'package:flutter/material.dart'; - -enum PremiumInlineFeature { nickname, theme, widget, goal, stats } - -const Map _featureAssets = { - PremiumInlineFeature.nickname: "assets/images/premium_nickname_inline_showcase.png", - PremiumInlineFeature.theme: "assets/images/premium_theme_inline_showcase.png", - PremiumInlineFeature.widget: "assets/images/premium_widget_inline_showcase.png", - PremiumInlineFeature.goal: "assets/images/premium_goal_inline_showcase.png", - PremiumInlineFeature.stats: "assets/images/premium_stats_inline_showcase.png", -}; - -const Map _featuresInline = { - PremiumInlineFeature.nickname: PremiumFeature.profile, - PremiumInlineFeature.theme: PremiumFeature.customcolors, - PremiumInlineFeature.widget: PremiumFeature.widget, - PremiumInlineFeature.goal: PremiumFeature.goalplanner, - PremiumInlineFeature.stats: PremiumFeature.gradestats, -}; - -class PremiumInline extends StatelessWidget { - const PremiumInline({super.key, required this.features}); - - final List features; - - String _getAsset() { - for (int i = 0; i < features.length; i++) { - if (DateTime.now().day % features.length == i) { - return _featureAssets[features[i]]!; - } - } - - return _featureAssets[features[0]]!; - } - - PremiumFeature _getFeature() { - for (int i = 0; i < features.length; i++) { - if (DateTime.now().day % features.length == i) { - return _featuresInline[features[i]]!; - } - } - - return _featuresInline[features[0]]!; - } - - @override - Widget build(BuildContext context) { - return Stack( - children: [ - Image.asset(_getAsset()), - Positioned.fill( - child: Material( - type: MaterialType.transparency, - child: InkWell( - borderRadius: BorderRadius.circular(16.0), - onTap: () { - PremiumLockedFeatureUpsell.show(context: context, feature: _getFeature()); - }, - ), - ), - ), - ], - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/premium/upsell.dart b/filcnaplo_premium_old/lib/ui/mobile/premium/upsell.dart deleted file mode 100644 index 701791d..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/premium/upsell.dart +++ /dev/null @@ -1,183 +0,0 @@ -import 'package:filcnaplo/icons/filc_icons.dart'; -import 'package:filcnaplo_mobile_ui/premium/premium_screen.dart'; -import 'package:flutter/material.dart'; - -enum PremiumFeature { - gradestats, - customcolors, - profile, - iconpack, - subjectrename, - teacherrename, - weeklytimetable, - goalplanner, - widget, -} - -enum PremiumFeatureLevel { kupak, tinta } - -const Map _featureLevels = { - PremiumFeature.gradestats: PremiumFeatureLevel.kupak, - PremiumFeature.customcolors: PremiumFeatureLevel.kupak, - PremiumFeature.profile: PremiumFeatureLevel.kupak, - PremiumFeature.iconpack: PremiumFeatureLevel.kupak, - PremiumFeature.subjectrename: PremiumFeatureLevel.kupak, - PremiumFeature.weeklytimetable: PremiumFeatureLevel.tinta, - PremiumFeature.goalplanner: PremiumFeatureLevel.tinta, - PremiumFeature.widget: PremiumFeatureLevel.tinta, -}; - -const Map _featureAssets = { - PremiumFeature.gradestats: "assets/images/premium_stats_showcase.png", - PremiumFeature.customcolors: "assets/images/premium_theme_showcase.png", - PremiumFeature.profile: "assets/images/premium_nickname_showcase.png", - PremiumFeature.weeklytimetable: - "assets/images/premium_timetable_showcase.png", - PremiumFeature.goalplanner: "assets/images/premium_goal_showcase.png", - PremiumFeature.widget: "assets/images/premium_widget_showcase.png", -}; - -const Map _featureTitles = { - PremiumFeature.gradestats: "Találtál egy prémium funkciót.", - PremiumFeature.customcolors: "Több személyre szabás kell?", - PremiumFeature.profile: "Nem tetszik a neved?", - PremiumFeature.iconpack: "Jobban tetszettek a régi ikonok?", - PremiumFeature.subjectrename: - "Sokáig tart elolvasni, hogy \"Földrajz természettudomány\"?", - PremiumFeature.weeklytimetable: "Szeretnéd egyszerre az egész hetet látni?", - PremiumFeature.goalplanner: "Kövesd a céljaidat, sok-sok statisztikával.", - PremiumFeature.widget: "Órák a kezdőképernyőd kényelméből.", -}; - -const Map _featureDescriptions = { - PremiumFeature.gradestats: - "Támogass Kupak szinten, hogy több statisztikát láthass. ", - PremiumFeature.customcolors: - "Támogass Kupak szinten, és szabd személyre az elemek, a háttér, és a panelek színeit.", - PremiumFeature.profile: - "Kupak szinten változtathatod a nevedet, sőt, akár a profilképedet is.", - PremiumFeature.iconpack: - "Támogass Kupak szinten, hogy ikon témát választhass.", - PremiumFeature.subjectrename: - "Támogass Kupak szinten, hogy átnevezhesd Föcire.", - PremiumFeature.weeklytimetable: - "Támogass Tinta szinten a heti órarend funkcióért.", - PremiumFeature.goalplanner: "A célkövetéshez támogass Tinta szinten.", - PremiumFeature.widget: - "Támogass Tinta szinten, és helyezz egy widgetet a kezdőképernyődre.", -}; - -class PremiumLockedFeatureUpsell extends StatelessWidget { - const PremiumLockedFeatureUpsell({super.key, required this.feature}); - - static void show( - {required BuildContext context, required PremiumFeature feature}) => - showDialog( - context: context, - builder: (context) => PremiumLockedFeatureUpsell(feature: feature)); - - final PremiumFeature feature; - - IconData _getIcon() => _featureLevels[feature] == PremiumFeatureLevel.kupak - ? FilcIcons.kupak - : FilcIcons.tinta; - Color _getColor(BuildContext context) => - _featureLevels[feature] == PremiumFeatureLevel.kupak - ? const Color(0xffC8A708) - : Theme.of(context).brightness == Brightness.light - ? const Color(0xff691A9B) - : const Color(0xffA66FC8); - String? _getAsset() => _featureAssets[feature]; - String _getTitle() => _featureTitles[feature]!; - String _getDescription() => _featureDescriptions[feature]!; - - @override - Widget build(BuildContext context) { - final Color color = _getColor(context); - - return Dialog( - child: Padding( - padding: const EdgeInsets.symmetric(horizontal: 20.0, vertical: 16.0), - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - // Title Bar - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Padding( - padding: const EdgeInsets.only(left: 8.0), - child: Icon(_getIcon()), - ), - IconButton( - onPressed: () => Navigator.of(context).pop(), - icon: const Icon(Icons.close), - ), - ], - ), - - // Image showcase - if (_getAsset() != null) - Padding( - padding: const EdgeInsets.only(top: 8.0), - child: Image.asset(_getAsset()!), - ), - - // Dialog title - Padding( - padding: const EdgeInsets.only(top: 12.0), - child: Text( - _getTitle(), - style: const TextStyle( - fontWeight: FontWeight.bold, - fontSize: 20.0, - ), - ), - ), - - // Dialog description - Padding( - padding: const EdgeInsets.only(top: 8.0), - child: Text( - _getDescription(), - style: const TextStyle( - fontSize: 16.0, - ), - ), - ), - - // CTA button - Padding( - padding: const EdgeInsets.only(top: 8.0), - child: SizedBox( - width: double.infinity, - child: TextButton( - style: ButtonStyle( - backgroundColor: - MaterialStatePropertyAll(color.withOpacity(.25)), - foregroundColor: MaterialStatePropertyAll(color), - overlayColor: - MaterialStatePropertyAll(color.withOpacity(.1))), - onPressed: () { - Navigator.of(context, rootNavigator: true) - .push(MaterialPageRoute(builder: (context) { - return const PremiumScreen(); - })); - }, - child: const Text( - "Vigyél oda!", - style: TextStyle( - fontWeight: FontWeight.bold, - fontSize: 18.0, - ), - ), - ), - ), - ), - ], - ), - ), - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/settings/modify_teacher_names.dart b/filcnaplo_premium_old/lib/ui/mobile/settings/modify_teacher_names.dart deleted file mode 100644 index b9e8a28..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/settings/modify_teacher_names.dart +++ /dev/null @@ -1,436 +0,0 @@ -import 'package:dropdown_button2/dropdown_button2.dart'; -import 'package:filcnaplo/api/providers/database_provider.dart'; -import 'package:filcnaplo/api/providers/user_provider.dart'; -import 'package:filcnaplo/models/settings.dart'; -import 'package:filcnaplo/theme/colors/colors.dart'; -import 'package:filcnaplo/utils/format.dart'; -import 'package:filcnaplo_kreta_api/models/teacher.dart'; -import 'package:filcnaplo_kreta_api/providers/absence_provider.dart'; -import 'package:filcnaplo_kreta_api/providers/grade_provider.dart'; -import 'package:filcnaplo_kreta_api/providers/timetable_provider.dart'; -import 'package:filcnaplo_mobile_ui/common/panel/panel.dart'; -import 'package:filcnaplo_mobile_ui/common/panel/panel_button.dart'; -import 'package:filcnaplo_premium/models/premium_scopes.dart'; -import 'package:filcnaplo_premium/providers/premium_provider.dart'; -import 'package:filcnaplo_premium/ui/mobile/premium/upsell.dart'; -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_feather_icons/flutter_feather_icons.dart'; -import 'package:provider/provider.dart'; -import 'package:filcnaplo_mobile_ui/screens/settings/modify_names.i18n.dart'; - -class MenuRenamedTeachers extends StatelessWidget { - const MenuRenamedTeachers({Key? key, required this.settings}) - : super(key: key); - - final SettingsProvider settings; - - @override - Widget build(BuildContext context) { - return PanelButton( - padding: const EdgeInsets.only(left: 14.0), - onPressed: () { - if (!Provider.of(context, listen: false) - .hasScope(PremiumScopes.renameTeachers)) { - PremiumLockedFeatureUpsell.show( - context: context, feature: PremiumFeature.teacherrename); - return; - } - - Navigator.of(context, rootNavigator: true).push( - CupertinoPageRoute(builder: (context) => const ModifyTeacherNames()), - ); - }, - title: Text( - "rename_teachers".i18n, - style: TextStyle( - color: AppColors.of(context) - .text - .withOpacity(settings.renamedTeachersEnabled ? 1.0 : .5)), - ), - leading: settings.renamedTeachersEnabled - ? const Icon(FeatherIcons.users) - : Icon(FeatherIcons.users, - color: AppColors.of(context).text.withOpacity(.25)), - trailingDivider: true, - trailing: Switch( - onChanged: (v) async { - if (!Provider.of(context, listen: false) - .hasScope(PremiumScopes.renameTeachers)) { - PremiumLockedFeatureUpsell.show( - context: context, feature: PremiumFeature.teacherrename); - return; - } - - settings.update(renamedTeachersEnabled: v); - await Provider.of(context, listen: false) - .convertBySettings(); - await Provider.of(context, listen: false) - .convertBySettings(); - await Provider.of(context, listen: false) - .convertBySettings(); - }, - value: settings.renamedTeachersEnabled, - activeColor: Theme.of(context).colorScheme.secondary, - ), - ); - } -} - -class ModifyTeacherNames extends StatefulWidget { - const ModifyTeacherNames({Key? key}) : super(key: key); - - @override - State createState() => _ModifyTeacherNamesState(); -} - -class _ModifyTeacherNamesState extends State { - final GlobalKey _scaffoldKey = GlobalKey(); - final _teacherName = TextEditingController(); - String? selectedTeacherId; - - late List teachers; - late UserProvider user; - late DatabaseProvider dbProvider; - late SettingsProvider settings; - - @override - void initState() { - super.initState(); - teachers = (Provider.of(context, listen: false) - .grades - .map((e) => e.teacher) - .toSet() - .toList() - ..sort((a, b) => a.name.compareTo(b.name))); - user = Provider.of(context, listen: false); - dbProvider = Provider.of(context, listen: false); - } - - Future> fetchRenamedTeachers() async { - return await dbProvider.userQuery.renamedTeachers(userId: user.id!); - } - - void showRenameDialog() { - showDialog( - context: context, - builder: (context) => StatefulBuilder(builder: (context, setS) { - return AlertDialog( - shape: const RoundedRectangleBorder( - borderRadius: BorderRadius.all(Radius.circular(14.0))), - title: Text("rename_teacher".i18n), - content: Column( - mainAxisSize: MainAxisSize.min, - children: [ - DropdownButton2( - items: teachers - .map((item) => DropdownMenuItem( - value: item.id, - child: Text( - item.name, - style: TextStyle( - fontSize: 14, - fontWeight: FontWeight.bold, - color: AppColors.of(context).text, - ), - overflow: TextOverflow.ellipsis, - ), - )) - .toList(), - onChanged: (String? v) async { - final renamedSubs = await fetchRenamedTeachers(); - - setS(() { - selectedTeacherId = v; - - if (renamedSubs.containsKey(selectedTeacherId)) { - _teacherName.text = renamedSubs[selectedTeacherId]!; - } else { - _teacherName.text = ""; - } - }); - }, - iconSize: 14, - iconEnabledColor: AppColors.of(context).text, - iconDisabledColor: AppColors.of(context).text, - underline: const SizedBox(), - itemHeight: 40, - itemPadding: const EdgeInsets.only(left: 14, right: 14), - buttonWidth: 50, - dropdownWidth: 300, - dropdownPadding: null, - buttonDecoration: BoxDecoration( - borderRadius: BorderRadius.circular(8), - ), - dropdownDecoration: BoxDecoration( - borderRadius: BorderRadius.circular(14), - ), - dropdownElevation: 8, - scrollbarRadius: const Radius.circular(40), - scrollbarThickness: 6, - scrollbarAlwaysShow: true, - offset: const Offset(-10, -10), - buttonSplashColor: Colors.transparent, - customButton: Container( - width: double.infinity, - decoration: BoxDecoration( - border: Border.all(color: Colors.grey, width: 2), - borderRadius: BorderRadius.circular(12.0), - ), - padding: const EdgeInsets.symmetric( - vertical: 12.0, horizontal: 8.0), - child: Text( - selectedTeacherId == null - ? "select_teacher".i18n - : teachers - .firstWhere( - (element) => element.id == selectedTeacherId) - .name, - style: Theme.of(context).textTheme.titleSmall!.copyWith( - fontWeight: FontWeight.w700, - color: AppColors.of(context).text.withOpacity(0.75)), - overflow: TextOverflow.ellipsis, - maxLines: 2, - textAlign: TextAlign.center, - ), - ), - ), - const Padding( - padding: EdgeInsets.symmetric(vertical: 8.0), - child: Icon(FeatherIcons.arrowDown, size: 32), - ), - TextField( - controller: _teacherName, - decoration: InputDecoration( - border: OutlineInputBorder( - borderSide: - const BorderSide(color: Colors.grey, width: 1.5), - borderRadius: BorderRadius.circular(12.0), - ), - focusedBorder: OutlineInputBorder( - borderSide: - const BorderSide(color: Colors.grey, width: 1.5), - borderRadius: BorderRadius.circular(12.0), - ), - contentPadding: const EdgeInsets.symmetric(horizontal: 12.0), - hintText: "modified_name".i18n, - suffixIcon: IconButton( - icon: const Icon( - FeatherIcons.x, - color: Colors.grey, - ), - onPressed: () { - setState(() { - _teacherName.text = ""; - }); - }, - ), - ), - ), - ], - ), - actions: [ - TextButton( - child: Text( - "cancel".i18n, - style: const TextStyle(fontWeight: FontWeight.w500), - ), - onPressed: () { - Navigator.of(context).maybePop(); - }, - ), - TextButton( - child: Text( - "done".i18n, - style: const TextStyle(fontWeight: FontWeight.w500), - ), - onPressed: () async { - if (selectedTeacherId != null) { - final renamedSubs = await fetchRenamedTeachers(); - - renamedSubs[selectedTeacherId!] = _teacherName.text; - await dbProvider.userStore - .storeRenamedTeachers(renamedSubs, userId: user.id!); - await Provider.of(context, listen: false) - .convertBySettings(); - await Provider.of(context, listen: false) - .convertBySettings(); - await Provider.of(context, listen: false) - .convertBySettings(); - } - Navigator.of(context).pop(true); - setState(() {}); - }, - ), - ], - ); - }), - ).then((val) { - _teacherName.text = ""; - selectedTeacherId = null; - }); - } - - @override - Widget build(BuildContext context) { - settings = Provider.of(context); - return Scaffold( - key: _scaffoldKey, - appBar: AppBar( - surfaceTintColor: Theme.of(context).scaffoldBackgroundColor, - leading: BackButton(color: AppColors.of(context).text), - title: Text( - "modify_teachers".i18n, - style: TextStyle(color: AppColors.of(context).text), - ), - ), - body: Padding( - padding: const EdgeInsets.symmetric(vertical: 16.0, horizontal: 24.0), - child: SingleChildScrollView( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - // Panel( - // child: SwitchListTile( - - // title: Text("italics_toggle".i18n), - // onChanged: (value) => - // settings.update(renamedTeachersItalics: value), - // value: settings.renamedTeachersItalics, - // ), - // ), - // const SizedBox( - // height: 20, - // ), - InkWell( - onTap: showRenameDialog, - borderRadius: BorderRadius.circular(12.0), - child: Container( - width: double.infinity, - decoration: BoxDecoration( - border: Border.all(color: Colors.grey, width: 2), - borderRadius: BorderRadius.circular(12.0), - ), - padding: const EdgeInsets.symmetric( - vertical: 18.0, horizontal: 12.0), - child: Center( - child: Text( - "rename_new_teacher".i18n, - style: TextStyle( - fontWeight: FontWeight.w600, - fontSize: 18, - color: AppColors.of(context).text.withOpacity(.85), - ), - ), - ), - ), - ), - const SizedBox( - height: 30, - ), - FutureBuilder>( - future: fetchRenamedTeachers(), - builder: (context, snapshot) { - if (!snapshot.hasData || snapshot.data!.isEmpty) { - return Container(); - } - - return Panel( - title: Text("renamed_teachers".i18n), - child: Column( - children: snapshot.data!.keys.map( - (key) { - Teacher? teacher = teachers - .firstWhere((element) => key == element.id); - String renameTo = snapshot.data![key]!; - return RenamedTeacherItem( - teacher: teacher, - renamedTo: renameTo, - modifyCallback: () { - setState(() { - selectedTeacherId = teacher.id; - _teacherName.text = renameTo; - }); - showRenameDialog(); - }, - removeCallback: () { - setState(() { - Map subs = - Map.from(snapshot.data!); - subs.remove(key); - dbProvider.userStore.storeRenamedTeachers( - subs, - userId: user.id!); - }); - }, - ); - }, - ).toList(), - ), - ); - }, - ), - ], - ), - ), - )); - } -} - -class RenamedTeacherItem extends StatelessWidget { - const RenamedTeacherItem({ - Key? key, - required this.teacher, - required this.renamedTo, - required this.modifyCallback, - required this.removeCallback, - }) : super(key: key); - - final Teacher teacher; - final String renamedTo; - final void Function() modifyCallback; - final void Function() removeCallback; - - @override - Widget build(BuildContext context) { - return ListTile( - minLeadingWidth: 32.0, - dense: true, - contentPadding: - const EdgeInsets.symmetric(horizontal: 16.0, vertical: 6.0), - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(8.0)), - visualDensity: VisualDensity.compact, - onTap: () {}, - leading: Icon(FeatherIcons.user, - color: AppColors.of(context).text.withOpacity(.75)), - title: InkWell( - onTap: modifyCallback, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - teacher.name.capital(), - style: TextStyle( - fontWeight: FontWeight.w500, - fontSize: 14, - color: AppColors.of(context).text.withOpacity(.75)), - maxLines: 1, - overflow: TextOverflow.ellipsis, - ), - Text( - renamedTo, - style: const TextStyle(fontWeight: FontWeight.w500, fontSize: 16), - maxLines: 2, - overflow: TextOverflow.ellipsis, - ), - ], - ), - ), - trailing: InkWell( - onTap: removeCallback, - child: Icon(FeatherIcons.trash, - color: AppColors.of(context).red.withOpacity(.75)), - ), - ); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/settings/share_theme.dart b/filcnaplo_premium_old/lib/ui/mobile/settings/share_theme.dart deleted file mode 100644 index cbbe917..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/settings/share_theme.dart +++ /dev/null @@ -1,26 +0,0 @@ -import 'package:filcnaplo/models/settings.dart'; -import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; - -class PremiumShareTheme extends StatefulWidget { - const PremiumShareTheme({Key? key}) : super(key: key); - - @override - State createState() => _PremiumShareThemeState(); -} - -class _PremiumShareThemeState extends State - with TickerProviderStateMixin { - late final SettingsProvider settingsProvider; - - @override - void initState() { - super.initState(); - settingsProvider = Provider.of(context, listen: false); - } - - @override - Widget build(BuildContext context) { - return const Scaffold(); - } -} diff --git a/filcnaplo_premium_old/lib/ui/mobile/settings/welcome_message.dart b/filcnaplo_premium_old/lib/ui/mobile/settings/welcome_message.dart deleted file mode 100644 index 456510d..0000000 --- a/filcnaplo_premium_old/lib/ui/mobile/settings/welcome_message.dart +++ /dev/null @@ -1,146 +0,0 @@ -import 'package:filcnaplo/api/providers/user_provider.dart'; -import 'package:filcnaplo/models/settings.dart'; -import 'package:filcnaplo_mobile_ui/common/panel/panel_button.dart'; -import 'package:filcnaplo_premium/models/premium_scopes.dart'; -import 'package:filcnaplo_premium/providers/premium_provider.dart'; -import 'package:filcnaplo_premium/ui/mobile/premium/upsell.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_feather_icons/flutter_feather_icons.dart'; -import 'package:filcnaplo_mobile_ui/screens/settings/settings_screen.i18n.dart'; -import 'package:provider/provider.dart'; -import 'package:i18n_extension/i18n_extension.dart'; - -// ignore: must_be_immutable -class WelcomeMessagePanelButton extends StatelessWidget { - late SettingsProvider settingsProvider; - late UserProvider user; - - WelcomeMessagePanelButton(this.settingsProvider, this.user, {Key? key}) - : super(key: key); - - @override - Widget build(BuildContext context) { - String finalName = ((user.nickname ?? '') != '' - ? user.nickname - : (user.displayName ?? '') != '' - ? user.displayName - : 'János') ?? - 'János'; - - return PanelButton( - onPressed: () { - if (!Provider.of(context, listen: false) - .hasScope(PremiumScopes.all)) { - PremiumLockedFeatureUpsell.show( - context: context, feature: PremiumFeature.profile); - return; - } - showDialog( - context: context, - builder: (context) => WelcomeMessageEditor(settingsProvider)); - }, - title: Text("welcome_msg".i18n), - leading: const Icon(FeatherIcons.smile), - trailing: Container( - constraints: const BoxConstraints(maxWidth: 100), - child: Text( - settingsProvider.welcomeMessage.replaceAll(' ', '') != '' - ? localizeFill( - settingsProvider.welcomeMessage, - [finalName], - ) - : 'default'.i18n, - style: const TextStyle(fontSize: 14.0), - textAlign: TextAlign.end, - softWrap: true, - overflow: TextOverflow.ellipsis, - ), - ), - ); - } -} - -// ignore: must_be_immutable -class WelcomeMessageEditor extends StatefulWidget { - late SettingsProvider settingsProvider; - - WelcomeMessageEditor(this.settingsProvider, {Key? key}) : super(key: key); - - @override - State createState() => _WelcomeMessageEditorState(); -} - -class _WelcomeMessageEditorState extends State { - final _welcomeMsg = TextEditingController(); - - @override - void initState() { - super.initState(); - _welcomeMsg.text = - widget.settingsProvider.welcomeMessage.replaceAll('%s', '%name%'); - } - - @override - Widget build(BuildContext context) { - return AlertDialog( - title: Text("edit_welcome_msg".i18n), - content: TextField( - controller: _welcomeMsg, - autofocus: true, - decoration: InputDecoration( - border: const OutlineInputBorder(), - label: Text('welcome_msg'.i18n), - suffixIcon: IconButton( - icon: const Icon(FeatherIcons.x), - onPressed: () { - setState(() { - _welcomeMsg.text = ""; - }); - }, - ), - ), - ), - actions: [ - TextButton( - child: Text( - "cancel".i18n, - style: const TextStyle(fontWeight: FontWeight.w500), - ), - onPressed: () { - Navigator.of(context).maybePop(); - }, - ), - TextButton( - child: Text( - "done".i18n, - style: const TextStyle(fontWeight: FontWeight.w500), - ), - onPressed: () { - // var trimmed = _welcomeMsg.text.trim(); - - // var defLen = trimmed.length; - // var replacedLen = trimmed.replaceAll('%s', '').length; - - // if (defLen - 2 > replacedLen) { - // print('fuck yourself rn'); - // } - var finalText = _welcomeMsg.text - .trim() - .replaceFirst('%name%', '\$s') - .replaceFirst('%user%', '\$s') - .replaceFirst('%username%', '\$s') - .replaceFirst('%me%', '\$s') - .replaceFirst('%profile%', '\$s') - .replaceAll('%', '') - .replaceFirst('\$s', '%s'); - // .replaceAll('\$s', 's'); - - widget.settingsProvider - .update(welcomeMessage: finalText, store: true); - Navigator.of(context).pop(true); - }, - ), - ], - ); - } -} diff --git a/filcnaplo_premium_old/pubspec.lock b/filcnaplo_premium_old/pubspec.lock deleted file mode 100644 index 2f248d5..0000000 --- a/filcnaplo_premium_old/pubspec.lock +++ /dev/null @@ -1,1534 +0,0 @@ -# Generated by pub -# See https://dart.dev/tools/pub/glossary#lockfile -packages: - _fe_analyzer_shared: - dependency: transitive - description: - name: _fe_analyzer_shared - sha256: ae92f5d747aee634b87f89d9946000c2de774be1d6ac3e58268224348cd0101a - url: "https://pub.dev" - source: hosted - version: "61.0.0" - analyzer: - dependency: transitive - description: - name: analyzer - sha256: ea3d8652bda62982addfd92fdc2d0214e5f82e43325104990d4f4c4a2a313562 - url: "https://pub.dev" - source: hosted - version: "5.13.0" - animated_background: - dependency: transitive - description: - name: animated_background - sha256: "24b05a6dca2cb0231b011f9e8fd2e9d8060faac08a78cf0643915bb7d6e9b03b" - url: "https://pub.dev" - source: hosted - version: "2.0.0" - animated_flip_counter: - dependency: transitive - description: - name: animated_flip_counter - sha256: "2c25ace054ac3932a3f203875a90ddae760ba7016cb9233573067a12ae51e3c6" - url: "https://pub.dev" - source: hosted - version: "0.2.6" - animated_list_plus: - dependency: transitive - description: - name: animated_list_plus - sha256: fb3d7f1fbaf5af84907f3c739236bacda8bf32cbe1f118dd51510752883ff50c - url: "https://pub.dev" - source: hosted - version: "0.5.2" - animations: - dependency: "direct main" - description: - name: animations - sha256: ef57563eed3620bd5d75ad96189846aca1e033c0c45fc9a7d26e80ab02b88a70 - url: "https://pub.dev" - source: hosted - version: "2.0.8" - app_group_directory: - dependency: transitive - description: - name: app_group_directory - sha256: ad89800fd55133b46e1f6940ac6b974562f7fb6394c662c0f4422b90167f2416 - url: "https://pub.dev" - source: hosted - version: "2.0.0" - archive: - dependency: transitive - description: - name: archive - sha256: "7e0d52067d05f2e0324268097ba723b71cb41ac8a6a2b24d1edf9c536b987b03" - url: "https://pub.dev" - source: hosted - version: "3.4.6" - args: - dependency: transitive - description: - name: args - sha256: eef6c46b622e0494a36c5a12d10d77fb4e855501a91c1b9ef9339326e58f0596 - url: "https://pub.dev" - source: hosted - version: "2.4.2" - async: - dependency: transitive - description: - name: async - sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" - url: "https://pub.dev" - source: hosted - version: "2.11.0" - auto_size_text: - dependency: transitive - description: - name: auto_size_text - sha256: "3f5261cd3fb5f2a9ab4e2fc3fba84fd9fcaac8821f20a1d4e71f557521b22599" - url: "https://pub.dev" - source: hosted - version: "3.0.0" - background_fetch: - dependency: transitive - description: - name: background_fetch - sha256: f70b28a0f7a3156195e9742229696f004ea3bf10f74039b7bf4c78a74fbda8a4 - url: "https://pub.dev" - source: hosted - version: "1.2.1" - boolean_selector: - dependency: transitive - description: - name: boolean_selector - sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" - url: "https://pub.dev" - source: hosted - version: "2.1.1" - characters: - dependency: transitive - description: - name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" - url: "https://pub.dev" - source: hosted - version: "1.3.0" - charcode: - dependency: transitive - description: - name: charcode - sha256: fb98c0f6d12c920a02ee2d998da788bca066ca5f148492b7085ee23372b12306 - url: "https://pub.dev" - source: hosted - version: "1.3.1" - clock: - dependency: transitive - description: - name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf - url: "https://pub.dev" - source: hosted - version: "1.1.1" - collection: - dependency: transitive - description: - name: collection - sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687 - url: "https://pub.dev" - source: hosted - version: "1.17.2" - confetti: - dependency: transitive - description: - name: confetti - sha256: "8690fb3f138ff42958d419ef7dd0f0bb192895bea3c921214cb5c3fa82e597b1" - url: "https://pub.dev" - source: hosted - version: "0.6.0" - connectivity_plus: - dependency: transitive - description: - name: connectivity_plus - sha256: "77a180d6938f78ca7d2382d2240eb626c0f6a735d0bfdce227d8ffb80f95c48b" - url: "https://pub.dev" - source: hosted - version: "4.0.2" - connectivity_plus_platform_interface: - dependency: transitive - description: - name: connectivity_plus_platform_interface - sha256: cf1d1c28f4416f8c654d7dc3cd638ec586076255d407cef3ddbdaf178272a71a - url: "https://pub.dev" - source: hosted - version: "1.2.4" - convert: - dependency: transitive - description: - name: convert - sha256: "0f08b14755d163f6e2134cb58222dd25ea2a2ee8a195e53983d57c075324d592" - url: "https://pub.dev" - source: hosted - version: "3.1.1" - coverage: - dependency: transitive - description: - name: coverage - sha256: "595a29b55ce82d53398e1bcc2cba525d7bd7c59faeb2d2540e9d42c390cfeeeb" - url: "https://pub.dev" - source: hosted - version: "1.6.4" - cross_file: - dependency: transitive - description: - name: cross_file - sha256: "445db18de832dba8d851e287aff8ccf169bed30d2e94243cb54c7d2f1ed2142c" - url: "https://pub.dev" - source: hosted - version: "0.3.3+6" - crypto: - dependency: transitive - description: - name: crypto - sha256: ff625774173754681d66daaf4a448684fb04b78f902da9cb3d308c19cc5e8bab - url: "https://pub.dev" - source: hosted - version: "3.0.3" - csslib: - dependency: transitive - description: - name: csslib - sha256: "706b5707578e0c1b4b7550f64078f0a0f19dec3f50a178ffae7006b0a9ca58fb" - url: "https://pub.dev" - source: hosted - version: "1.0.0" - cupertino_icons: - dependency: "direct main" - description: - name: cupertino_icons - sha256: d57953e10f9f8327ce64a508a355f0b1ec902193f66288e8cb5070e7c47eeb2d - url: "https://pub.dev" - source: hosted - version: "1.0.6" - dbus: - dependency: transitive - description: - name: dbus - sha256: "6f07cba3f7b3448d42d015bfd3d53fe12e5b36da2423f23838efc1d5fb31a263" - url: "https://pub.dev" - source: hosted - version: "0.7.8" - dev_test: - dependency: transitive - description: - name: dev_test - sha256: "0d49b920844062a518edb79fc1dbf9ff6d9bf3c9ab600e3847b7502c27c0caab" - url: "https://pub.dev" - source: hosted - version: "0.16.1+4" - dotted_border: - dependency: transitive - description: - name: dotted_border - sha256: "108837e11848ca776c53b30bc870086f84b62ed6e01c503ed976e8f8c7df9c04" - url: "https://pub.dev" - source: hosted - version: "2.1.0" - dropdown_button2: - dependency: "direct main" - description: - name: dropdown_button2 - sha256: "604b87283e251e0e4a0cb1d0fdfa91fd527702b06e80999c4054cecc603e10e7" - url: "https://pub.dev" - source: hosted - version: "1.9.4" - dynamic_color: - dependency: transitive - description: - name: dynamic_color - sha256: "96bff3df72e3d428bda2b874c7a521e8c86f592cae626ea594922fcc8d166e0c" - url: "https://pub.dev" - source: hosted - version: "1.6.7" - elegant_notification: - dependency: transitive - description: - name: elegant_notification - sha256: f3b8aad4f8eb0df10d06deceb9a2b64b8c450ec7a1f896281d3563b6434f0574 - url: "https://pub.dev" - source: hosted - version: "1.11.2" - equatable: - dependency: transitive - description: - name: equatable - sha256: c2b87cb7756efdf69892005af546c56c0b5037f54d2a88269b4f347a505e3ca2 - url: "https://pub.dev" - source: hosted - version: "2.0.5" - fake_async: - dependency: transitive - description: - name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" - url: "https://pub.dev" - source: hosted - version: "1.3.1" - ffi: - dependency: transitive - description: - name: ffi - sha256: "7bf0adc28a23d395f19f3f1eb21dd7cfd1dd9f8e1c50051c069122e6853bc878" - url: "https://pub.dev" - source: hosted - version: "2.1.0" - filcnaplo: - dependency: "direct main" - description: - path: "../filcnaplo" - relative: true - source: path - version: "4.4.0+232" - filcnaplo_desktop_ui: - dependency: transitive - description: - path: "../filcnaplo_desktop_ui" - relative: true - source: path - version: "0.0.0" - filcnaplo_kreta_api: - dependency: "direct main" - description: - path: "../filcnaplo_kreta_api" - relative: true - source: path - version: "0.0.0" - filcnaplo_mobile_ui: - dependency: "direct main" - description: - path: "../filcnaplo_mobile_ui" - relative: true - source: path - version: "0.0.0" - file: - dependency: transitive - description: - name: file - sha256: "5fc22d7c25582e38ad9a8515372cd9a93834027aacf1801cf01164dac0ffa08c" - url: "https://pub.dev" - source: hosted - version: "7.0.0" - file_picker: - dependency: transitive - description: - name: file_picker - sha256: be325344c1f3070354a1d84a231a1ba75ea85d413774ec4bdf444c023342e030 - url: "https://pub.dev" - source: hosted - version: "5.5.0" - file_selector_linux: - dependency: transitive - description: - name: file_selector_linux - sha256: "045d372bf19b02aeb69cacf8b4009555fb5f6f0b7ad8016e5f46dd1387ddd492" - url: "https://pub.dev" - source: hosted - version: "0.9.2+1" - file_selector_macos: - dependency: transitive - description: - name: file_selector_macos - sha256: b15c3da8bd4908b9918111fa486903f5808e388b8d1c559949f584725a6594d6 - url: "https://pub.dev" - source: hosted - version: "0.9.3+3" - file_selector_platform_interface: - dependency: transitive - description: - name: file_selector_platform_interface - sha256: "0aa47a725c346825a2bd396343ce63ac00bda6eff2fbc43eabe99737dede8262" - url: "https://pub.dev" - source: hosted - version: "2.6.1" - file_selector_windows: - dependency: transitive - description: - name: file_selector_windows - sha256: d3547240c20cabf205c7c7f01a50ecdbc413755814d6677f3cb366f04abcead0 - url: "https://pub.dev" - source: hosted - version: "0.9.3+1" - fl_chart: - dependency: transitive - description: - name: fl_chart - sha256: "23dde7308d28c535d653a37d532dde5ee36e977abe1def370416f90eb69c1f57" - url: "https://pub.dev" - source: hosted - version: "0.45.1" - flutter: - dependency: "direct main" - description: flutter - source: sdk - version: "0.0.0" - flutter_acrylic: - dependency: transitive - description: - name: flutter_acrylic - sha256: a9a1fdf91ff1fb47858fd82507f57e255a132a5d355056694fdb9fd303633b18 - url: "https://pub.dev" - source: hosted - version: "1.1.3" - flutter_custom_tabs: - dependency: transitive - description: - name: flutter_custom_tabs - sha256: e90e5b7cad5648aeb0e1ed04aa3c0cada62d86f3b5d4aaef488ab7de61ec2a9f - url: "https://pub.dev" - source: hosted - version: "1.2.1" - flutter_custom_tabs_platform_interface: - dependency: transitive - description: - name: flutter_custom_tabs_platform_interface - sha256: "1d6b9eb6c5671b21511fdb47babf18aa65982784373986c003aaf67ca78798ad" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - flutter_custom_tabs_web: - dependency: transitive - description: - name: flutter_custom_tabs_web - sha256: dbb5689a97c2398aa5dbcfc9cd59cffea5518ec815e9d23def448dc143cb02be - url: "https://pub.dev" - source: hosted - version: "1.1.0" - flutter_displaymode: - dependency: transitive - description: - name: flutter_displaymode - sha256: "42c5e9abd13d28ed74f701b60529d7f8416947e58256e6659c5550db719c57ef" - url: "https://pub.dev" - source: hosted - version: "0.6.0" - flutter_expandable_fab: - dependency: transitive - description: - name: flutter_expandable_fab - sha256: "43147571b147e80511d7f9bd143300f4b1b881e2beaf7f83f0eccb5d88a4112b" - url: "https://pub.dev" - source: hosted - version: "1.8.1" - flutter_feather_icons: - dependency: "direct main" - description: - name: flutter_feather_icons - sha256: b33b9c276fc8108254632da6644cf01f71af6c17fbfb26e136a86945f5ff9b67 - url: "https://pub.dev" - source: hosted - version: "2.0.0+1" - flutter_image_compress: - dependency: transitive - description: - name: flutter_image_compress - sha256: "2725cce5c58fdeaf1db8f4203688228bb67e3523a66305ccaa6f99071beb6dc2" - url: "https://pub.dev" - source: hosted - version: "2.0.4" - flutter_image_compress_common: - dependency: transitive - description: - name: flutter_image_compress_common - sha256: "8e7299afe109dc4b97fda34bf0f4967cc1fc10bc8050c374d449cab262d095b3" - url: "https://pub.dev" - source: hosted - version: "1.0.2" - flutter_image_compress_platform_interface: - dependency: transitive - description: - name: flutter_image_compress_platform_interface - sha256: "3c7e86da7540b1adfa919b461885a41a018d4a26544d0fcbeaa769f6542e603d" - url: "https://pub.dev" - source: hosted - version: "1.0.2" - flutter_image_compress_web: - dependency: transitive - description: - name: flutter_image_compress_web - sha256: e879189dc7f246dcf8f06c07ee849231341508bf51e8ed7d5dcbe778ddde0e81 - url: "https://pub.dev" - source: hosted - version: "0.1.3+1" - flutter_linkify: - dependency: transitive - description: - name: flutter_linkify - sha256: c89fe74de985ec22f23d3538d2249add085a4f37ac1c29fd79e1a207efb81d63 - url: "https://pub.dev" - source: hosted - version: "5.0.2" - flutter_lints: - dependency: "direct dev" - description: - name: flutter_lints - sha256: b543301ad291598523947dc534aaddc5aaad597b709d2426d3a0e0d44c5cb493 - url: "https://pub.dev" - source: hosted - version: "1.0.4" - flutter_local_notifications: - dependency: transitive - description: - name: flutter_local_notifications - sha256: "53c332ecee8e4d723269c1c2d0cdf7cbbff0a66cc0554d230a6f38cae81760d1" - url: "https://pub.dev" - source: hosted - version: "14.1.4" - flutter_local_notifications_linux: - dependency: transitive - description: - name: flutter_local_notifications_linux - sha256: "33f741ef47b5f63cc7f78fe75eeeac7e19f171ff3c3df054d84c1e38bedb6a03" - url: "https://pub.dev" - source: hosted - version: "4.0.0+1" - flutter_local_notifications_platform_interface: - dependency: transitive - description: - name: flutter_local_notifications_platform_interface - sha256: "7cf643d6d5022f3baed0be777b0662cce5919c0a7b86e700299f22dc4ae660ef" - url: "https://pub.dev" - source: hosted - version: "7.0.0+1" - flutter_localizations: - dependency: transitive - description: flutter - source: sdk - version: "0.0.0" - flutter_markdown: - dependency: transitive - description: - name: flutter_markdown - sha256: "8afc9a6aa6d8e8063523192ba837149dbf3d377a37c0b0fc579149a1fbd4a619" - url: "https://pub.dev" - source: hosted - version: "0.6.18" - flutter_material_color_picker: - dependency: transitive - description: - name: flutter_material_color_picker - sha256: ca1e7749d228c9155ea24bce98e647cdbffa350e6f334f6c001f841cd3d9c987 - url: "https://pub.dev" - source: hosted - version: "1.2.0" - flutter_native_image: - dependency: transitive - description: - name: flutter_native_image - sha256: "0ff23d6222064259df8f85ea56925627ea1ec8658814672c5b6c23fc9174c65e" - url: "https://pub.dev" - source: hosted - version: "0.0.6+1" - flutter_plugin_android_lifecycle: - dependency: transitive - description: - name: flutter_plugin_android_lifecycle - sha256: f185ac890306b5779ecbd611f52502d8d4d63d27703ef73161ca0407e815f02c - url: "https://pub.dev" - source: hosted - version: "2.0.16" - flutter_staggered_grid_view: - dependency: transitive - description: - name: flutter_staggered_grid_view - sha256: "19e7abb550c96fbfeb546b23f3ff356ee7c59a019a651f8f102a4ba9b7349395" - url: "https://pub.dev" - source: hosted - version: "0.7.0" - flutter_svg: - dependency: "direct main" - description: - name: flutter_svg - sha256: "6ff9fa12892ae074092de2fa6a9938fb21dbabfdaa2ff57dc697ff912fc8d4b2" - url: "https://pub.dev" - source: hosted - version: "1.1.6" - flutter_test: - dependency: transitive - description: flutter - source: sdk - version: "0.0.0" - flutter_web_plugins: - dependency: transitive - description: flutter - source: sdk - version: "0.0.0" - frontend_server_client: - dependency: transitive - description: - name: frontend_server_client - sha256: "408e3ca148b31c20282ad6f37ebfa6f4bdc8fede5b74bc2f08d9d92b55db3612" - url: "https://pub.dev" - source: hosted - version: "3.2.0" - glob: - dependency: transitive - description: - name: glob - sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" - url: "https://pub.dev" - source: hosted - version: "2.1.2" - go_router: - dependency: transitive - description: - name: go_router - sha256: e1a30a66d734f9e498b1b6522d6a75ded28242bad2359a9158df38a1c30bcf1f - url: "https://pub.dev" - source: hosted - version: "10.2.0" - graphs: - dependency: transitive - description: - name: graphs - sha256: aedc5a15e78fc65a6e23bcd927f24c64dd995062bcd1ca6eda65a3cff92a4d19 - url: "https://pub.dev" - source: hosted - version: "2.3.1" - home_widget: - dependency: "direct main" - description: - name: home_widget - sha256: "9514c47422d511e87a3923ffed3fc4eb82540e168d7715d1560ceb1f02d5ec80" - url: "https://pub.dev" - source: hosted - version: "0.1.6" - html: - dependency: transitive - description: - name: html - sha256: "3a7812d5bcd2894edf53dfaf8cd640876cf6cef50a8f238745c8b8120ea74d3a" - url: "https://pub.dev" - source: hosted - version: "0.15.4" - http: - dependency: transitive - description: - name: http - sha256: "5895291c13fa8a3bd82e76d5627f69e0d85ca6a30dcac95c4ea19a5d555879c2" - url: "https://pub.dev" - source: hosted - version: "0.13.6" - http_multi_server: - dependency: transitive - description: - name: http_multi_server - sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" - url: "https://pub.dev" - source: hosted - version: "3.2.1" - http_parser: - dependency: transitive - description: - name: http_parser - sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" - url: "https://pub.dev" - source: hosted - version: "4.0.2" - i18n_extension: - dependency: transitive - description: - name: i18n_extension - sha256: db45cd88cf3114f5b9368d975aebebe4ac37fa634fbc5643634289cdfd4d3631 - url: "https://pub.dev" - source: hosted - version: "9.0.2" - image_crop: - dependency: "direct main" - description: - path: "." - ref: HEAD - resolved-ref: "5e98cdd539a47861c1f81e230344b7fd338dde4f" - url: "https://github.com/kimaah/image_crop.git" - source: git - version: "0.4.1" - image_gallery_saver: - dependency: transitive - description: - name: image_gallery_saver - sha256: "0aba74216a4d9b0561510cb968015d56b701ba1bd94aace26aacdd8ae5761816" - url: "https://pub.dev" - source: hosted - version: "2.0.3" - image_picker: - dependency: "direct main" - description: - name: image_picker - sha256: b6951e25b795d053a6ba03af5f710069c99349de9341af95155d52665cb4607c - url: "https://pub.dev" - source: hosted - version: "0.8.9" - image_picker_android: - dependency: transitive - description: - name: image_picker_android - sha256: "0c7b83bbe2980c8a8e36e974f055e11e51675784e13a4762889feed0f3937ff2" - url: "https://pub.dev" - source: hosted - version: "0.8.8+1" - image_picker_for_web: - dependency: transitive - description: - name: image_picker_for_web - sha256: "869fe8a64771b7afbc99fc433a5f7be2fea4d1cb3d7c11a48b6b579eb9c797f0" - url: "https://pub.dev" - source: hosted - version: "2.2.0" - image_picker_ios: - dependency: transitive - description: - name: image_picker_ios - sha256: c5538cacefacac733c724be7484377923b476216ad1ead35a0d2eadcdc0fc497 - url: "https://pub.dev" - source: hosted - version: "0.8.8+2" - image_picker_linux: - dependency: transitive - description: - name: image_picker_linux - sha256: "4ed1d9bb36f7cd60aa6e6cd479779cc56a4cb4e4de8f49d487b1aaad831300fa" - url: "https://pub.dev" - source: hosted - version: "0.2.1+1" - image_picker_macos: - dependency: transitive - description: - name: image_picker_macos - sha256: "3f5ad1e8112a9a6111c46d0b57a7be2286a9a07fc6e1976fdf5be2bd31d4ff62" - url: "https://pub.dev" - source: hosted - version: "0.2.1+1" - image_picker_platform_interface: - dependency: transitive - description: - name: image_picker_platform_interface - sha256: ed9b00e63977c93b0d2d2b343685bed9c324534ba5abafbb3dfbd6a780b1b514 - url: "https://pub.dev" - source: hosted - version: "2.9.1" - image_picker_windows: - dependency: transitive - description: - name: image_picker_windows - sha256: "6ad07afc4eb1bc25f3a01084d28520496c4a3bb0cb13685435838167c9dcedeb" - url: "https://pub.dev" - source: hosted - version: "0.2.1+1" - intl: - dependency: transitive - description: - name: intl - sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" - url: "https://pub.dev" - source: hosted - version: "0.18.1" - io: - dependency: transitive - description: - name: io - sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" - url: "https://pub.dev" - source: hosted - version: "1.0.4" - js: - dependency: transitive - description: - name: js - sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 - url: "https://pub.dev" - source: hosted - version: "0.6.7" - linkify: - dependency: transitive - description: - name: linkify - sha256: bdfbdafec6cdc9cd0ebb333a868cafc046714ad508e48be8095208c54691d959 - url: "https://pub.dev" - source: hosted - version: "4.1.0" - lints: - dependency: transitive - description: - name: lints - sha256: a2c3d198cb5ea2e179926622d433331d8b58374ab8f29cdda6e863bd62fd369c - url: "https://pub.dev" - source: hosted - version: "1.0.1" - live_activities: - dependency: transitive - description: - name: live_activities - sha256: acc8f7817d2a2db2da58ff662dad15e8bd638f946d7f6748d2615727cfc4d71e - url: "https://pub.dev" - source: hosted - version: "1.7.5" - logging: - dependency: transitive - description: - name: logging - sha256: "623a88c9594aa774443aa3eb2d41807a48486b5613e67599fb4c41c0ad47c340" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - lottie: - dependency: "direct main" - description: - name: lottie - sha256: "893da7a0022ec2fcaa616f34529a081f617e86cc501105b856e5a3184c58c7c2" - url: "https://pub.dev" - source: hosted - version: "1.4.3" - macos_window_utils: - dependency: transitive - description: - name: macos_window_utils - sha256: b3dfd47bbc605f0e315af684b50370a8f84932267aaa542098063fa384d593bd - url: "https://pub.dev" - source: hosted - version: "1.4.0" - markdown: - dependency: transitive - description: - name: markdown - sha256: acf35edccc0463a9d7384e437c015a3535772e09714cf60e07eeef3a15870dcd - url: "https://pub.dev" - source: hosted - version: "7.1.1" - matcher: - dependency: transitive - description: - name: matcher - sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" - url: "https://pub.dev" - source: hosted - version: "0.12.16" - material_color_utilities: - dependency: transitive - description: - name: material_color_utilities - sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" - url: "https://pub.dev" - source: hosted - version: "0.5.0" - meta: - dependency: transitive - description: - name: meta - sha256: "3c74dbf8763d36539f114c799d8a2d87343b5067e9d796ca22b5eb8437090ee3" - url: "https://pub.dev" - source: hosted - version: "1.9.1" - mime: - dependency: transitive - description: - name: mime - sha256: e4ff8e8564c03f255408decd16e7899da1733852a9110a58fe6d1b817684a63e - url: "https://pub.dev" - source: hosted - version: "1.0.4" - nested: - dependency: transitive - description: - name: nested - sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" - url: "https://pub.dev" - source: hosted - version: "1.0.0" - nm: - dependency: transitive - description: - name: nm - sha256: "2c9aae4127bdc8993206464fcc063611e0e36e72018696cd9631023a31b24254" - url: "https://pub.dev" - source: hosted - version: "0.5.0" - node_preamble: - dependency: transitive - description: - name: node_preamble - sha256: "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db" - url: "https://pub.dev" - source: hosted - version: "2.0.2" - open_file: - dependency: transitive - description: - path: "." - ref: master - resolved-ref: "69268cb6e3ce422cc493788088317cb82313ecea" - url: "https://github.com/crazecoder/open_file" - source: git - version: "3.3.2" - package_config: - dependency: transitive - description: - name: package_config - sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" - url: "https://pub.dev" - source: hosted - version: "2.1.0" - package_info_plus: - dependency: transitive - description: - name: package_info_plus - sha256: "6ff267fcd9d48cb61c8df74a82680e8b82e940231bb5f68356672fde0397334a" - url: "https://pub.dev" - source: hosted - version: "4.1.0" - package_info_plus_platform_interface: - dependency: transitive - description: - name: package_info_plus_platform_interface - sha256: "9bc8ba46813a4cc42c66ab781470711781940780fd8beddd0c3da62506d3a6c6" - url: "https://pub.dev" - source: hosted - version: "2.0.1" - path: - dependency: transitive - description: - name: path - sha256: "8829d8a55c13fc0e37127c29fedf290c102f4e40ae94ada574091fe0ff96c917" - url: "https://pub.dev" - source: hosted - version: "1.8.3" - path_drawing: - dependency: transitive - description: - name: path_drawing - sha256: bbb1934c0cbb03091af082a6389ca2080345291ef07a5fa6d6e078ba8682f977 - url: "https://pub.dev" - source: hosted - version: "1.0.1" - path_parsing: - dependency: transitive - description: - name: path_parsing - sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf - url: "https://pub.dev" - source: hosted - version: "1.0.1" - path_provider: - dependency: transitive - description: - name: path_provider - sha256: a1aa8aaa2542a6bc57e381f132af822420216c80d4781f7aa085ca3229208aaa - url: "https://pub.dev" - source: hosted - version: "2.1.1" - path_provider_android: - dependency: transitive - description: - name: path_provider_android - sha256: "6b8b19bd80da4f11ce91b2d1fb931f3006911477cec227cce23d3253d80df3f1" - url: "https://pub.dev" - source: hosted - version: "2.2.0" - path_provider_foundation: - dependency: transitive - description: - name: path_provider_foundation - sha256: "19314d595120f82aca0ba62787d58dde2cc6b5df7d2f0daf72489e38d1b57f2d" - url: "https://pub.dev" - source: hosted - version: "2.3.1" - path_provider_linux: - dependency: transitive - description: - name: path_provider_linux - sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 - url: "https://pub.dev" - source: hosted - version: "2.2.1" - path_provider_platform_interface: - dependency: transitive - description: - name: path_provider_platform_interface - sha256: "94b1e0dd80970c1ce43d5d4e050a9918fce4f4a775e6142424c30a29a363265c" - url: "https://pub.dev" - source: hosted - version: "2.1.1" - path_provider_windows: - dependency: transitive - description: - name: path_provider_windows - sha256: "8bc9f22eee8690981c22aa7fc602f5c85b497a6fb2ceb35ee5a5e5ed85ad8170" - url: "https://pub.dev" - source: hosted - version: "2.2.1" - permission_handler: - dependency: transitive - description: - name: permission_handler - sha256: bc56bfe9d3f44c3c612d8d393bd9b174eb796d706759f9b495ac254e4294baa5 - url: "https://pub.dev" - source: hosted - version: "10.4.5" - permission_handler_android: - dependency: transitive - description: - name: permission_handler_android - sha256: "59c6322171c29df93a22d150ad95f3aa19ed86542eaec409ab2691b8f35f9a47" - url: "https://pub.dev" - source: hosted - version: "10.3.6" - permission_handler_apple: - dependency: transitive - description: - name: permission_handler_apple - sha256: "99e220bce3f8877c78e4ace901082fb29fa1b4ebde529ad0932d8d664b34f3f5" - url: "https://pub.dev" - source: hosted - version: "9.1.4" - permission_handler_platform_interface: - dependency: transitive - description: - name: permission_handler_platform_interface - sha256: "6760eb5ef34589224771010805bea6054ad28453906936f843a8cc4d3a55c4a4" - url: "https://pub.dev" - source: hosted - version: "3.12.0" - permission_handler_windows: - dependency: transitive - description: - name: permission_handler_windows - sha256: cc074aace208760f1eee6aa4fae766b45d947df85bc831cde77009cdb4720098 - url: "https://pub.dev" - source: hosted - version: "0.1.3" - petitparser: - dependency: transitive - description: - name: petitparser - sha256: cb3798bef7fc021ac45b308f4b51208a152792445cce0448c9a4ba5879dd8750 - url: "https://pub.dev" - source: hosted - version: "5.4.0" - photo_view: - dependency: transitive - description: - name: photo_view - sha256: "8036802a00bae2a78fc197af8a158e3e2f7b500561ed23b4c458107685e645bb" - url: "https://pub.dev" - source: hosted - version: "0.14.0" - platform: - dependency: transitive - description: - name: platform - sha256: "0a279f0707af40c890e80b1e9df8bb761694c074ba7e1d4ab1bc4b728e200b59" - url: "https://pub.dev" - source: hosted - version: "3.1.3" - plugin_platform_interface: - dependency: transitive - description: - name: plugin_platform_interface - sha256: da3fdfeccc4d4ff2da8f8c556704c08f912542c5fb3cf2233ed75372384a034d - url: "https://pub.dev" - source: hosted - version: "2.1.6" - pointycastle: - dependency: transitive - description: - name: pointycastle - sha256: "7c1e5f0d23c9016c5bbd8b1473d0d3fb3fc851b876046039509e18e0c7485f2c" - url: "https://pub.dev" - source: hosted - version: "3.7.3" - pool: - dependency: transitive - description: - name: pool - sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" - url: "https://pub.dev" - source: hosted - version: "1.5.1" - process_run: - dependency: transitive - description: - name: process_run - sha256: ceacfac6d566a36c895d64edc7e429efb2d6b6303b5e28d5c13bc59fe6e8974e - url: "https://pub.dev" - source: hosted - version: "0.13.1" - provider: - dependency: "direct main" - description: - name: provider - sha256: "59471e0a4595e264625d3496af567ac85bdae1148ec985aff1e0555786f53ecf" - url: "https://pub.dev" - source: hosted - version: "5.0.0" - pub_semver: - dependency: transitive - description: - name: pub_semver - sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" - url: "https://pub.dev" - source: hosted - version: "2.1.4" - quick_actions: - dependency: transitive - description: - name: quick_actions - sha256: "3930e1cf78a0574495b4ea741ee197323c4a9081321d6ae384b3bfcd84c7ea83" - url: "https://pub.dev" - source: hosted - version: "1.0.6" - quick_actions_android: - dependency: transitive - description: - name: quick_actions_android - sha256: f2ddc2c0cc5c001e87e62f6de06da18ebc75c6a06d26750f6f12276841c1585c - url: "https://pub.dev" - source: hosted - version: "1.0.8" - quick_actions_ios: - dependency: transitive - description: - name: quick_actions_ios - sha256: f086cf98884421188c7c5c13f61b62aeb5b6fb88f197a0601db45108b1444ea6 - url: "https://pub.dev" - source: hosted - version: "1.0.7" - quick_actions_platform_interface: - dependency: transitive - description: - name: quick_actions_platform_interface - sha256: d2a8566b56eec49f93934528b62033906199c60f4ffaef0cba9ef02fcfed8a81 - url: "https://pub.dev" - source: hosted - version: "1.0.5" - rive: - dependency: transitive - description: - name: rive - sha256: "22e3755b75f4ea4492d2fecf4fc2acf1c8d0073df39781d290a20cbfe74c3760" - url: "https://pub.dev" - source: hosted - version: "0.9.1" - rounded_expansion_tile: - dependency: transitive - description: - path: "." - ref: HEAD - resolved-ref: aa1074fde76312befe9618ee958e5b9a1aad66d0 - url: "https://github.com/kimaah/rounded_expansion_tile.git" - source: git - version: "0.0.13" - screenshot: - dependency: transitive - description: - name: screenshot - sha256: "455284ff1f5b911d94a43c25e1385485cf6b4f288293eba68f15dad711c7b81c" - url: "https://pub.dev" - source: hosted - version: "2.1.0" - share_plus: - dependency: transitive - description: - name: share_plus - sha256: "6cec740fa0943a826951223e76218df002804adb588235a8910dc3d6b0654e11" - url: "https://pub.dev" - source: hosted - version: "7.1.0" - share_plus_platform_interface: - dependency: transitive - description: - name: share_plus_platform_interface - sha256: "357412af4178d8e11d14f41723f80f12caea54cf0d5cd29af9dcdab85d58aea7" - url: "https://pub.dev" - source: hosted - version: "3.3.0" - shelf: - dependency: transitive - description: - name: shelf - sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 - url: "https://pub.dev" - source: hosted - version: "1.4.1" - shelf_packages_handler: - dependency: transitive - description: - name: shelf_packages_handler - sha256: "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e" - url: "https://pub.dev" - source: hosted - version: "3.0.2" - shelf_static: - dependency: transitive - description: - name: shelf_static - sha256: a41d3f53c4adf0f57480578c1d61d90342cd617de7fc8077b1304643c2d85c1e - url: "https://pub.dev" - source: hosted - version: "1.1.2" - shelf_web_socket: - dependency: transitive - description: - name: shelf_web_socket - sha256: "9ca081be41c60190ebcb4766b2486a7d50261db7bd0f5d9615f2d653637a84c1" - url: "https://pub.dev" - source: hosted - version: "1.0.4" - sky_engine: - dependency: transitive - description: flutter - source: sdk - version: "0.0.99" - source_map_stack_trace: - dependency: transitive - description: - name: source_map_stack_trace - sha256: "84cf769ad83aa6bb61e0aa5a18e53aea683395f196a6f39c4c881fb90ed4f7ae" - url: "https://pub.dev" - source: hosted - version: "2.1.1" - source_maps: - dependency: transitive - description: - name: source_maps - sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703" - url: "https://pub.dev" - source: hosted - version: "0.10.12" - source_span: - dependency: transitive - description: - name: source_span - sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" - url: "https://pub.dev" - source: hosted - version: "1.10.0" - sprintf: - dependency: transitive - description: - name: sprintf - sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" - url: "https://pub.dev" - source: hosted - version: "7.0.0" - sqflite: - dependency: transitive - description: - name: sqflite - sha256: "591f1602816e9c31377d5f008c2d9ef7b8aca8941c3f89cc5fd9d84da0c38a9a" - url: "https://pub.dev" - source: hosted - version: "2.3.0" - sqflite_common: - dependency: transitive - description: - name: sqflite_common - sha256: "1b92f368f44b0dee2425bb861cfa17b6f6cf3961f762ff6f941d20b33355660a" - url: "https://pub.dev" - source: hosted - version: "2.5.0" - sqflite_common_ffi: - dependency: transitive - description: - name: sqflite_common_ffi - sha256: "0d5cc1be2eb18400ac6701c31211d44164393aa75886093002ecdd947be04f93" - url: "https://pub.dev" - source: hosted - version: "2.3.0+2" - sqflite_common_ffi_web: - dependency: transitive - description: - name: sqflite_common_ffi_web - sha256: db9a7ef6adcfb6c9b4115f628c1d3efe3774b385309a80e75c1bafb97da2c9d1 - url: "https://pub.dev" - source: hosted - version: "0.4.0" - sqlite3: - dependency: transitive - description: - name: sqlite3 - sha256: db65233e6b99e99b2548932f55a987961bc06d82a31a0665451fa0b4fff4c3fb - url: "https://pub.dev" - source: hosted - version: "2.1.0" - stack_trace: - dependency: transitive - description: - name: stack_trace - sha256: c3c7d8edb15bee7f0f74debd4b9c5f3c2ea86766fe4178eb2a18eb30a0bdaed5 - url: "https://pub.dev" - source: hosted - version: "1.11.0" - stream_channel: - dependency: transitive - description: - name: stream_channel - sha256: "83615bee9045c1d322bbbd1ba209b7a749c2cbcdcb3fdd1df8eb488b3279c1c8" - url: "https://pub.dev" - source: hosted - version: "2.1.1" - string_scanner: - dependency: transitive - description: - name: string_scanner - sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" - url: "https://pub.dev" - source: hosted - version: "1.2.0" - synchronized: - dependency: transitive - description: - name: synchronized - sha256: "5fcbd27688af6082f5abd611af56ee575342c30e87541d0245f7ff99faa02c60" - url: "https://pub.dev" - source: hosted - version: "3.1.0" - term_glyph: - dependency: transitive - description: - name: term_glyph - sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 - url: "https://pub.dev" - source: hosted - version: "1.2.1" - test: - dependency: transitive - description: - name: test - sha256: "13b41f318e2a5751c3169137103b60c584297353d4b1761b66029bae6411fe46" - url: "https://pub.dev" - source: hosted - version: "1.24.3" - test_api: - dependency: transitive - description: - name: test_api - sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" - url: "https://pub.dev" - source: hosted - version: "0.6.0" - test_core: - dependency: transitive - description: - name: test_core - sha256: "99806e9e6d95c7b059b7a0fc08f07fc53fabe54a829497f0d9676299f1e8637e" - url: "https://pub.dev" - source: hosted - version: "0.5.3" - timezone: - dependency: transitive - description: - name: timezone - sha256: "1cfd8ddc2d1cfd836bc93e67b9be88c3adaeca6f40a00ca999104c30693cdca0" - url: "https://pub.dev" - source: hosted - version: "0.9.2" - typed_data: - dependency: transitive - description: - name: typed_data - sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c - url: "https://pub.dev" - source: hosted - version: "1.3.2" - uni_links: - dependency: "direct main" - description: - name: uni_links - sha256: "051098acfc9e26a9fde03b487bef5d3d228ca8f67693480c6f33fd4fbb8e2b6e" - url: "https://pub.dev" - source: hosted - version: "0.5.1" - uni_links_platform_interface: - dependency: transitive - description: - name: uni_links_platform_interface - sha256: "929cf1a71b59e3b7c2d8a2605a9cf7e0b125b13bc858e55083d88c62722d4507" - url: "https://pub.dev" - source: hosted - version: "1.0.0" - uni_links_web: - dependency: transitive - description: - name: uni_links_web - sha256: "7539db908e25f67de2438e33cc1020b30ab94e66720b5677ba6763b25f6394df" - url: "https://pub.dev" - source: hosted - version: "0.1.0" - url_launcher: - dependency: "direct main" - description: - name: url_launcher - sha256: "47e208a6711459d813ba18af120d9663c20bdf6985d6ad39fe165d2538378d27" - url: "https://pub.dev" - source: hosted - version: "6.1.14" - url_launcher_android: - dependency: transitive - description: - name: url_launcher_android - sha256: b04af59516ab45762b2ca6da40fa830d72d0f6045cd97744450b73493fa76330 - url: "https://pub.dev" - source: hosted - version: "6.1.0" - url_launcher_ios: - dependency: transitive - description: - name: url_launcher_ios - sha256: "7c65021d5dee51813d652357bc65b8dd4a6177082a9966bc8ba6ee477baa795f" - url: "https://pub.dev" - source: hosted - version: "6.1.5" - url_launcher_linux: - dependency: transitive - description: - name: url_launcher_linux - sha256: b651aad005e0cb06a01dbd84b428a301916dc75f0e7ea6165f80057fee2d8e8e - url: "https://pub.dev" - source: hosted - version: "3.0.6" - url_launcher_macos: - dependency: transitive - description: - name: url_launcher_macos - sha256: b55486791f666e62e0e8ff825e58a023fd6b1f71c49926483f1128d3bbd8fe88 - url: "https://pub.dev" - source: hosted - version: "3.0.7" - url_launcher_platform_interface: - dependency: transitive - description: - name: url_launcher_platform_interface - sha256: "95465b39f83bfe95fcb9d174829d6476216f2d548b79c38ab2506e0458787618" - url: "https://pub.dev" - source: hosted - version: "2.1.5" - url_launcher_web: - dependency: transitive - description: - name: url_launcher_web - sha256: "2942294a500b4fa0b918685aff406773ba0a4cd34b7f42198742a94083020ce5" - url: "https://pub.dev" - source: hosted - version: "2.0.20" - url_launcher_windows: - dependency: transitive - description: - name: url_launcher_windows - sha256: "95fef3129dc7cfaba2bc3d5ba2e16063bb561fc6d78e63eee16162bc70029069" - url: "https://pub.dev" - source: hosted - version: "3.0.8" - uuid: - dependency: transitive - description: - name: uuid - sha256: "648e103079f7c64a36dc7d39369cabb358d377078a051d6ae2ad3aa539519313" - url: "https://pub.dev" - source: hosted - version: "3.0.7" - vector_math: - dependency: transitive - description: - name: vector_math - sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" - url: "https://pub.dev" - source: hosted - version: "2.1.4" - vm_service: - dependency: transitive - description: - name: vm_service - sha256: c538be99af830f478718b51630ec1b6bee5e74e52c8a802d328d9e71d35d2583 - url: "https://pub.dev" - source: hosted - version: "11.10.0" - watcher: - dependency: transitive - description: - name: watcher - sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" - url: "https://pub.dev" - source: hosted - version: "1.1.0" - web: - dependency: transitive - description: - name: web - sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 - url: "https://pub.dev" - source: hosted - version: "0.1.4-beta" - web_socket_channel: - dependency: transitive - description: - name: web_socket_channel - sha256: d88238e5eac9a42bb43ca4e721edba3c08c6354d4a53063afaa568516217621b - url: "https://pub.dev" - source: hosted - version: "2.4.0" - webkit_inspection_protocol: - dependency: transitive - description: - name: webkit_inspection_protocol - sha256: "87d3f2333bb240704cd3f1c6b5b7acd8a10e7f0bc28c28dcf14e782014f4a572" - url: "https://pub.dev" - source: hosted - version: "1.2.1" - win32: - dependency: transitive - description: - name: win32 - sha256: "350a11abd2d1d97e0cc7a28a81b781c08002aa2864d9e3f192ca0ffa18b06ed3" - url: "https://pub.dev" - source: hosted - version: "5.0.9" - workmanager: - dependency: transitive - description: - name: workmanager - sha256: ed13530cccd28c5c9959ad42d657cd0666274ca74c56dea0ca183ddd527d3a00 - url: "https://pub.dev" - source: hosted - version: "0.5.2" - wtf_sliding_sheet: - dependency: transitive - description: - name: wtf_sliding_sheet - sha256: fbce1d6b08bb8c5f6c4381346120b2e476600a236e0501552adfa47751f9ac61 - url: "https://pub.dev" - source: hosted - version: "1.1.2" - xdg_directories: - dependency: transitive - description: - name: xdg_directories - sha256: "589ada45ba9e39405c198fe34eb0f607cddb2108527e658136120892beac46d2" - url: "https://pub.dev" - source: hosted - version: "1.0.3" - xml: - dependency: transitive - description: - name: xml - sha256: "5bc72e1e45e941d825fd7468b9b4cc3b9327942649aeb6fc5cdbf135f0a86e84" - url: "https://pub.dev" - source: hosted - version: "6.3.0" - yaml: - dependency: transitive - description: - name: yaml - sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" - url: "https://pub.dev" - source: hosted - version: "3.1.2" -sdks: - dart: ">=3.1.2 <4.0.0" - flutter: ">=3.13.0" diff --git a/filcnaplo_premium_old/pubspec.yaml b/filcnaplo_premium_old/pubspec.yaml deleted file mode 100644 index 1244ef7..0000000 --- a/filcnaplo_premium_old/pubspec.yaml +++ /dev/null @@ -1,38 +0,0 @@ -name: filcnaplo_premium -publish_to: "none" - -environment: - sdk: ">=2.17.0 <3.0.0" - -dependencies: - flutter: - sdk: flutter - cupertino_icons: ^1.0.2 - - # Filcnaplo main dep - filcnaplo: - path: ../filcnaplo/ - filcnaplo_kreta_api: - path: ../filcnaplo_kreta_api/ - filcnaplo_mobile_ui: - path: "../filcnaplo_mobile_ui/" - - provider: ^5.0.0 - flutter_feather_icons: ^2.0.0+1 - uni_links: ^0.5.1 - url_launcher: ^6.1.6 - dropdown_button2: ^1.8.9 - home_widget: ^0.1.6 - image_picker: ^0.8.6 - image_crop: - git: - url: https://github.com/kimaah/image_crop.git - lottie: ^1.4.3 - animations: ^2.0.1 - flutter_svg: ^1.1.6 - -dev_dependencies: - flutter_lints: ^1.0.0 - -flutter: - uses-material-design: true