LoginPage #36

Merged
maen0574 merged 4 commits from LoginPage into master 2022-05-24 13:28:56 +02:00
14 changed files with 891 additions and 517 deletions
Showing only changes of commit 87159d7532 - Show all commits

View File

@ -1,437 +1,445 @@
flutter_applicationdemo
2.16
file:///C:/Users/morte/OneDrive/Documents/Skola/PVT/pvt-project-google-maps/
file:///C:/Users/morte/OneDrive/Documents/Skola/PVT/pvt-project-google-maps/lib/
file:///C:/Users/S1j4/AndroidStudioProjects/pvt-project-google-maps/
file:///C:/Users/S1j4/AndroidStudioProjects/pvt-project-google-maps/lib/
archive
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/archive-3.3.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/archive-3.3.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/archive-3.3.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/archive-3.3.0/lib/
args
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/args-2.3.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/args-2.3.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/args-2.3.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/args-2.3.1/lib/
async
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/async-2.8.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/async-2.8.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/async-2.8.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/async-2.8.2/lib/
boolean_selector
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/boolean_selector-2.1.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/boolean_selector-2.1.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/boolean_selector-2.1.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/boolean_selector-2.1.0/lib/
characters
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/characters-1.2.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/characters-1.2.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/characters-1.2.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/characters-1.2.0/lib/
charcode
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/charcode-1.3.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/charcode-1.3.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/charcode-1.3.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/charcode-1.3.1/lib/
clock
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/clock-1.1.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/clock-1.1.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/clock-1.1.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/clock-1.1.0/lib/
collection
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/collection-1.15.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/collection-1.15.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/collection-1.15.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/collection-1.15.0/lib/
crypto
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/crypto-3.0.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/crypto-3.0.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/crypto-3.0.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/crypto-3.0.2/lib/
csslib
2.12
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/csslib-0.17.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/csslib-0.17.1/lib/
cupertino_icons
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/cupertino_icons-1.0.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/cupertino_icons-1.0.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/cupertino_icons-1.0.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/cupertino_icons-1.0.4/lib/
dio
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/dio-4.0.6/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/dio-4.0.6/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/dio-4.0.6/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/dio-4.0.6/lib/
fake_async
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fake_async-1.2.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/fake_async-1.2.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/fake_async-1.2.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/fake_async-1.2.0/lib/
ffi
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/ffi-1.2.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/ffi-1.2.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/ffi-1.2.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/ffi-1.2.1/lib/
file
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/file-6.1.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/file-6.1.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/file-6.1.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/file-6.1.2/lib/
firebase_auth
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-1.4.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-1.4.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-1.4.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-1.4.1/lib/
firebase_auth_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth_platform_interface-4.3.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth_platform_interface-4.3.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth_platform_interface-4.3.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth_platform_interface-4.3.1/lib/
firebase_auth_web
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth_web-1.3.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth_web-1.3.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth_web-1.3.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth_web-1.3.1/lib/
firebase_core
2.16
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core-1.17.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core-1.17.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core-1.17.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core-1.17.0/lib/
firebase_core_platform_interface
2.16
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core_platform_interface-4.4.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core_platform_interface-4.4.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core_platform_interface-4.4.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core_platform_interface-4.4.0/lib/
firebase_core_web
2.16
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core_web-1.6.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core_web-1.6.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core_web-1.6.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core_web-1.6.4/lib/
flutter_google_places
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_google_places-0.3.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_google_places-0.3.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_google_places-0.3.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_google_places-0.3.0/lib/
flutter_lints
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_lints-1.0.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_lints-1.0.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_lints-1.0.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_lints-1.0.4/lib/
flutter_native_splash
2.15
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_native_splash-2.1.6/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_native_splash-2.1.6/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_native_splash-2.1.6/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_native_splash-2.1.6/lib/
flutter_plugin_android_lifecycle
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_plugin_android_lifecycle-2.0.6/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_plugin_android_lifecycle-2.0.6/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_plugin_android_lifecycle-2.0.6/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_plugin_android_lifecycle-2.0.6/lib/
flutter_polyline_points
2.1
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_polyline_points-0.2.6/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_polyline_points-0.2.6/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_polyline_points-0.2.6/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_polyline_points-0.2.6/lib/
flutter_signin_button
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_signin_button-2.0.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_signin_button-2.0.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_signin_button-2.0.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_signin_button-2.0.0/lib/
font_awesome_flutter
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/font_awesome_flutter-9.2.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/font_awesome_flutter-9.2.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/font_awesome_flutter-9.2.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/font_awesome_flutter-9.2.0/lib/
geocoding
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geocoding-2.0.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geocoding-2.0.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geocoding-2.0.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geocoding-2.0.4/lib/
geocoding_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geocoding_platform_interface-2.0.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geocoding_platform_interface-2.0.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geocoding_platform_interface-2.0.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geocoding_platform_interface-2.0.1/lib/
geolocator
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator-8.2.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator-8.2.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator-8.2.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator-8.2.1/lib/
geolocator_android
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_android-3.1.8/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_android-3.1.8/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_android-3.1.8/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_android-3.1.8/lib/
geolocator_apple
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_apple-2.1.3/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_apple-2.1.3/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_apple-2.1.3/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_apple-2.1.3/lib/
geolocator_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_platform_interface-4.0.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_platform_interface-4.0.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_platform_interface-4.0.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_platform_interface-4.0.5/lib/
geolocator_web
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_web-2.1.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_web-2.1.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_web-2.1.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_web-2.1.5/lib/
geolocator_windows
2.15
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_windows-0.1.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_windows-0.1.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_windows-0.1.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/geolocator_windows-0.1.1/lib/
get
2.16
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/get-4.6.3/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/get-4.6.3/lib/
2.15
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/get-4.6.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/get-4.6.5/lib/
google_api_headers
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_api_headers-1.3.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_api_headers-1.3.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_api_headers-1.3.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_api_headers-1.3.0/lib/
google_fonts
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_fonts-2.3.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_fonts-2.3.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_fonts-2.3.3/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_fonts-2.3.3/lib/
google_maps_flutter
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_flutter-2.1.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_flutter-2.1.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_flutter-2.1.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_flutter-2.1.5/lib/
google_maps_flutter_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_flutter_platform_interface-2.1.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_flutter_platform_interface-2.1.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_flutter_platform_interface-2.1.6/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_flutter_platform_interface-2.1.6/lib/
google_maps_webservice
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_webservice-0.0.20-nullsafety.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_webservice-0.0.20-nullsafety.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_webservice-0.0.20-nullsafety.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_maps_webservice-0.0.20-nullsafety.5/lib/
google_sign_in
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in-5.3.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in-5.3.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in-5.3.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in-5.3.1/lib/
google_sign_in_android
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_android-5.2.7/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_android-5.2.7/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_android-5.2.8/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_android-5.2.8/lib/
google_sign_in_ios
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_ios-5.2.7/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_ios-5.2.7/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_ios-5.3.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_ios-5.3.1/lib/
google_sign_in_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_platform_interface-2.1.3/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_platform_interface-2.1.3/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_platform_interface-2.1.3/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_platform_interface-2.1.3/lib/
google_sign_in_web
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_web-0.10.1+2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_web-0.10.1+2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_web-0.10.1+2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in_web-0.10.1+2/lib/
html
2.12
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/html-0.15.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/html-0.15.0/lib/
http
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/http-0.13.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/http-0.13.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/http-0.13.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/http-0.13.4/lib/
http_parser
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/http_parser-4.0.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/http_parser-4.0.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/http_parser-4.0.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/http_parser-4.0.1/lib/
image
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/image-3.1.3/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/image-3.1.3/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/image-3.1.3/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/image-3.1.3/lib/
intl
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/intl-0.17.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/intl-0.17.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/intl-0.17.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/intl-0.17.0/lib/
js
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/js-0.6.3/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/js-0.6.3/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/js-0.6.3/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/js-0.6.3/lib/
json_annotation
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/json_annotation-4.5.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/json_annotation-4.5.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/json_annotation-4.5.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/json_annotation-4.5.0/lib/
lint
2.15
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/lint-1.8.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/lint-1.8.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/lint-1.8.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/lint-1.8.2/lib/
lints
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/lints-1.0.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/lints-1.0.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/lints-1.0.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/lints-1.0.1/lib/
location
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/location-4.4.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/location-4.4.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/location-4.4.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/location-4.4.0/lib/
location_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/location_platform_interface-2.3.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/location_platform_interface-2.3.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/location_platform_interface-2.3.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/location_platform_interface-2.3.0/lib/
location_web
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/location_web-3.1.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/location_web-3.1.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/location_web-3.1.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/location_web-3.1.1/lib/
logging
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/logging-1.0.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/logging-1.0.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/logging-1.0.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/logging-1.0.2/lib/
matcher
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/matcher-0.12.11/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/matcher-0.12.11/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/matcher-0.12.11/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/matcher-0.12.11/lib/
material_color_utilities
2.13
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/material_color_utilities-0.1.3/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/material_color_utilities-0.1.3/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/material_color_utilities-0.1.3/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/material_color_utilities-0.1.3/lib/
meta
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/meta-1.7.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/meta-1.7.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/meta-1.7.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/meta-1.7.0/lib/
mysql1
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/mysql1-0.19.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/mysql1-0.19.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/mysql1-0.19.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/mysql1-0.19.2/lib/
nested
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/nested-1.0.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/nested-1.0.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/nested-1.0.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/nested-1.0.0/lib/
package_info_plus
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus-1.4.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus-1.4.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus-1.4.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus-1.4.2/lib/
package_info_plus_linux
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_linux-1.0.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_linux-1.0.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_linux-1.0.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_linux-1.0.5/lib/
package_info_plus_macos
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_macos-1.3.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_macos-1.3.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_macos-1.3.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_macos-1.3.0/lib/
package_info_plus_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_platform_interface-1.0.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_platform_interface-1.0.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_platform_interface-1.0.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_platform_interface-1.0.2/lib/
package_info_plus_web
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_web-1.0.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_web-1.0.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_web-1.0.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_web-1.0.5/lib/
package_info_plus_windows
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_windows-1.0.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_windows-1.0.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_windows-1.0.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/package_info_plus_windows-1.0.5/lib/
path
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path-1.8.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path-1.8.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path-1.8.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path-1.8.0/lib/
path_provider
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.10/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.10/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.10/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider-2.0.10/lib/
path_provider_android
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_android-2.0.14/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_android-2.0.14/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_android-2.0.14/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_android-2.0.14/lib/
path_provider_ios
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_ios-2.0.9/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_ios-2.0.9/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_ios-2.0.9/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_ios-2.0.9/lib/
path_provider_linux
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.1.6/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.1.6/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.1.6/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_linux-2.1.6/lib/
path_provider_macos
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.6/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.6/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.6/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_macos-2.0.6/lib/
path_provider_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_platform_interface-2.0.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_platform_interface-2.0.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_platform_interface-2.0.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_platform_interface-2.0.4/lib/
path_provider_windows
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.6/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.6/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.6/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/path_provider_windows-2.0.6/lib/
petitparser
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/petitparser-4.4.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/petitparser-4.4.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/petitparser-4.4.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/petitparser-4.4.0/lib/
platform
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/platform-3.1.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/platform-3.1.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/platform-3.1.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/platform-3.1.0/lib/
plugin_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/plugin_platform_interface-2.1.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/plugin_platform_interface-2.1.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/plugin_platform_interface-2.1.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/plugin_platform_interface-2.1.2/lib/
pool
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/pool-1.5.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/pool-1.5.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/pool-1.5.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/pool-1.5.0/lib/
process
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/process-4.2.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/process-4.2.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/process-4.2.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/process-4.2.4/lib/
provider
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/provider-5.0.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/provider-5.0.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/provider-5.0.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/provider-5.0.0/lib/
quiver
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/quiver-3.1.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/quiver-3.1.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/quiver-3.1.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/quiver-3.1.0/lib/
rxdart
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/rxdart-0.26.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/rxdart-0.26.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/rxdart-0.26.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/rxdart-0.26.0/lib/
settings_ui
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/settings_ui-2.0.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/settings_ui-2.0.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/settings_ui-2.0.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/settings_ui-2.0.2/lib/
source_span
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/source_span-1.8.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/source_span-1.8.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/source_span-1.8.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/source_span-1.8.1/lib/
stack_trace
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/stack_trace-1.10.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/stack_trace-1.10.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/stack_trace-1.10.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/stack_trace-1.10.0/lib/
stream_channel
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/stream_channel-2.1.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/stream_channel-2.1.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/stream_channel-2.1.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/stream_channel-2.1.0/lib/
stream_transform
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/stream_transform-2.0.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/stream_transform-2.0.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/stream_transform-2.0.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/stream_transform-2.0.0/lib/
string_scanner
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/string_scanner-1.1.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/string_scanner-1.1.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/string_scanner-1.1.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/string_scanner-1.1.0/lib/
term_glyph
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/term_glyph-1.2.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/term_glyph-1.2.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/term_glyph-1.2.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/term_glyph-1.2.0/lib/
test_api
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/test_api-0.4.8/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/test_api-0.4.8/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/test_api-0.4.8/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/test_api-0.4.8/lib/
typed_data
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/typed_data-1.3.0/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/typed_data-1.3.0/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/typed_data-1.3.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/typed_data-1.3.0/lib/
universal_io
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/universal_io-2.0.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/universal_io-2.0.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/universal_io-2.0.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/universal_io-2.0.4/lib/
vector_math
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/vector_math-2.1.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/vector_math-2.1.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/vector_math-2.1.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/vector_math-2.1.1/lib/
webview_flutter
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter-3.0.4/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter-3.0.4/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter-3.0.4/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter-3.0.4/lib/
webview_flutter_android
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_android-2.8.8/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_android-2.8.8/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_android-2.8.8/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_android-2.8.8/lib/
webview_flutter_platform_interface
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_platform_interface-1.8.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_platform_interface-1.8.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_platform_interface-1.9.0/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_platform_interface-1.9.0/lib/
webview_flutter_wkwebview
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_wkwebview-2.7.5/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_wkwebview-2.7.5/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_wkwebview-2.7.5/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/webview_flutter_wkwebview-2.7.5/lib/
win32
2.15
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/win32-2.5.2/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/win32-2.5.2/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/win32-2.5.2/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/win32-2.5.2/lib/
xdg_directories
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/xdg_directories-0.2.0+1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/xdg_directories-0.2.0+1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/xdg_directories-0.2.0+1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/xdg_directories-0.2.0+1/lib/
xml
2.14
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/xml-5.3.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/xml-5.3.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/xml-5.3.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/xml-5.3.1/lib/
yaml
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/yaml-3.1.1/
file:///C:/Users/morte/OneDrive/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/yaml-3.1.1/lib/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/yaml-3.1.1/
file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/yaml-3.1.1/lib/
sky_engine
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/bin/cache/pkg/sky_engine/
file:///C:/Users/morte/OneDrive/Documents/flutter/bin/cache/pkg/sky_engine/lib/
file:///C:/flutter/bin/cache/pkg/sky_engine/
file:///C:/flutter/bin/cache/pkg/sky_engine/lib/
flutter
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/packages/flutter/
file:///C:/Users/morte/OneDrive/Documents/flutter/packages/flutter/lib/
file:///C:/flutter/packages/flutter/
file:///C:/flutter/packages/flutter/lib/
flutter_test
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/packages/flutter_test/
file:///C:/Users/morte/OneDrive/Documents/flutter/packages/flutter_test/lib/
file:///C:/flutter/packages/flutter_test/
file:///C:/flutter/packages/flutter_test/lib/
flutter_web_plugins
2.12
file:///C:/Users/morte/OneDrive/Documents/flutter/packages/flutter_web_plugins/
file:///C:/Users/morte/OneDrive/Documents/flutter/packages/flutter_web_plugins/lib/
file:///C:/flutter/packages/flutter_web_plugins/
file:///C:/flutter/packages/flutter_web_plugins/lib/
2

View File

@ -1,35 +1,35 @@
# This is a generated file; do not edit or check into version control.
firebase_auth=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\firebase_auth-1.4.1\\
firebase_auth_web=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\firebase_auth_web-1.3.1\\
firebase_core=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\firebase_core-1.17.0\\
firebase_core_web=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\firebase_core_web-1.6.4\\
flutter_native_splash=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\flutter_native_splash-2.1.6\\
flutter_plugin_android_lifecycle=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\flutter_plugin_android_lifecycle-2.0.6\\
geocoding=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geocoding-2.0.4\\
geolocator=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator-8.2.1\\
geolocator_android=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator_android-3.1.8\\
geolocator_apple=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator_apple-2.1.3\\
geolocator_web=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator_web-2.1.5\\
geolocator_windows=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator_windows-0.1.1\\
google_api_headers=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_api_headers-1.3.0\\
google_maps_flutter=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_maps_flutter-2.1.5\\
google_sign_in=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_sign_in-5.3.1\\
google_sign_in_android=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_sign_in_android-5.2.7\\
google_sign_in_ios=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_sign_in_ios-5.2.7\\
google_sign_in_web=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_sign_in_web-0.10.1+2\\
location=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\location-4.4.0\\
location_web=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\location_web-3.1.1\\
package_info_plus=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus-1.4.2\\
package_info_plus_linux=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus_linux-1.0.5\\
package_info_plus_macos=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus_macos-1.3.0\\
package_info_plus_web=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus_web-1.0.5\\
package_info_plus_windows=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus_windows-1.0.5\\
path_provider=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider-2.0.10\\
path_provider_android=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_android-2.0.14\\
path_provider_ios=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_ios-2.0.9\\
path_provider_linux=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_linux-2.1.6\\
path_provider_macos=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_macos-2.0.6\\
path_provider_windows=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_windows-2.0.6\\
webview_flutter=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\webview_flutter-3.0.4\\
webview_flutter_android=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\webview_flutter_android-2.8.8\\
webview_flutter_wkwebview=C:\\Users\\morte\\OneDrive\\Documents\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\webview_flutter_wkwebview-2.7.5\\
firebase_auth=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\firebase_auth-1.4.1\\
firebase_auth_web=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\firebase_auth_web-1.3.1\\
firebase_core=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\firebase_core-1.17.0\\
firebase_core_web=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\firebase_core_web-1.6.4\\
flutter_native_splash=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\flutter_native_splash-2.1.6\\
flutter_plugin_android_lifecycle=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\flutter_plugin_android_lifecycle-2.0.6\\
geocoding=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geocoding-2.0.4\\
geolocator=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator-8.2.1\\
geolocator_android=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator_android-3.1.8\\
geolocator_apple=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator_apple-2.1.3\\
geolocator_web=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator_web-2.1.5\\
geolocator_windows=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\geolocator_windows-0.1.1\\
google_api_headers=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_api_headers-1.3.0\\
google_maps_flutter=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_maps_flutter-2.1.5\\
google_sign_in=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_sign_in-5.3.1\\
google_sign_in_android=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_sign_in_android-5.2.8\\
google_sign_in_ios=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_sign_in_ios-5.3.1\\
google_sign_in_web=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\google_sign_in_web-0.10.1+2\\
location=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\location-4.4.0\\
location_web=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\location_web-3.1.1\\
package_info_plus=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus-1.4.2\\
package_info_plus_linux=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus_linux-1.0.5\\
package_info_plus_macos=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus_macos-1.3.0\\
package_info_plus_web=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus_web-1.0.5\\
package_info_plus_windows=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\package_info_plus_windows-1.0.5\\
path_provider=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider-2.0.10\\
path_provider_android=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_android-2.0.14\\
path_provider_ios=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_ios-2.0.9\\
path_provider_linux=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_linux-2.1.6\\
path_provider_macos=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_macos-2.0.6\\
path_provider_windows=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_windows-2.0.6\\
webview_flutter=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\webview_flutter-3.0.4\\
webview_flutter_android=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\webview_flutter_android-2.8.8\\
webview_flutter_wkwebview=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\webview_flutter_wkwebview-2.7.5\\

View File

@ -1,6 +1,8 @@
import 'dart:io';
import 'package:flutter/cupertino.dart';
import 'package:flutter_applicationdemo/mysql.dart';
import 'BottomNavPage.dart';
import 'package:flutter/material.dart';
import 'Form.dart';
Color _backgroundColor = const Color.fromARGB(255, 190, 146, 160);
@ -10,14 +12,33 @@ Color _colorContainerHappy = _backgroundColor;
Color _colorContainerMediumHappy = _backgroundColor;
Color _colorContainerUpset = _backgroundColor;
// Logic status of priceRange
Map<String, bool> _satisfactionBoolean = {
"VeryHappy": true,
"VeryHappy": false,
"Happy": false,
"MediumHappy": false,
"Upset": false
};
Map<String, bool> _typeOfFeedback = {
"Compliment": false,
"Complaint": false,
"Bug": false,
"Mistake in sun accuracy": false,
};
bool check1 = false;
bool check2 = false;
bool check3 = false;
bool check4 = false;
TextEditingController satisfaction =new TextEditingController();
TextEditingController typeOfFeedback =new TextEditingController();
TextEditingController writtenFeedback =new TextEditingController();
class FormForFeedback extends StatefulWidget {
@override
State<StatefulWidget> createState() {
@ -28,15 +49,20 @@ class FormForFeedback extends StatefulWidget {
class FormForFeedbackState extends State<FormForFeedback> {
final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
var dataBase = mysql();
String? value = stdin.readLineSync();
late Map<String, bool> _satisfactionBoolean;
late String feedback;
bool check1 = false;
bool check2 = false;
bool check3 = false;
bool check4 = false;
Future<void> feedbackVerification(String satisfaction, String typeOfFeedback, String writtenFeedback) async {
await dataBase.getConnection().then((conn) async {
String sql = "INSERT INTO maen0574.User_feedback (Satisfaction, Type_of_feedback, Written_feedback) VALUES ('$satisfaction', '$typeOfFeedback', '$writtenFeedback');";
await conn.query(sql).then((results) {
for(var row in results) {
setState(() {});
form(row[0].toString(), row[1].toString(), row[2].toString(), row[3].toString());
}
});
});
}
@override
Widget build(BuildContext context) {
@ -47,18 +73,19 @@ class FormForFeedbackState extends State<FormForFeedback> {
return Scaffold(
backgroundColor: pinkBackgroundColor,
resizeToAvoidBottomInset: false, //för att undvika RenderFlex overflow när man får upp skrivbordet
resizeToAvoidBottomInset: true, //för att undvika RenderFlex overflow när man får upp skrivbordet
appBar: AppBar(
backgroundColor: buttonColor,
title: Row(
children: <Widget>[
FlatButton(
textColor: Colors.white,
onPressed: () => Navigator.push(
context,
MaterialPageRoute(builder: (context) => BottomNavPage()),
),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => BottomNavPage()),
);
},
child: Text("Close",
style: TextStyle(
@ -68,31 +95,9 @@ class FormForFeedbackState extends State<FormForFeedback> {
),
],
),
actions: <Widget>[
FlatButton(
textColor: Colors.white,
child: Text("Send feedback",
style: TextStyle(
fontSize: 25,
color: appBarColor),
),
onPressed: () {
if (_formKey.currentState!.validate()) {
return;
} else {
/*print(Map<String, bool> _satisfactionBoolean);
print(String feedback);*/
BottomNavPage();
//Send to API
}
},
),
],
),
body: SafeArea(
body: SingleChildScrollView(
child: Center(
child: Column(children: <Widget>[
Container(
@ -102,15 +107,14 @@ class FormForFeedbackState extends State<FormForFeedback> {
style: TextStyle(
fontSize: 26,
color: textColor,
),
),
),
const SizedBox(height: 20),
const SizedBox(height: 30),
Text(
'What do you think about our app?',
'Tell us what you think',
style: TextStyle(
fontSize: 20,
color: textColor,
@ -126,9 +130,11 @@ class FormForFeedbackState extends State<FormForFeedback> {
child: InkWell(
onTap: () {
setState(() {
pressedEmojiColor("VeryHappy");
satisfaction.text = "VeryHappy";
pressedEmojiColor(satisfaction.text);
});
print("Very happy");
print(satisfaction.text);
},
child: Container(
color: _colorContainerVeryHappy,
@ -153,9 +159,10 @@ class FormForFeedbackState extends State<FormForFeedback> {
child: InkWell(
onTap: () {
setState(() {
pressedEmojiColor("Happy");
satisfaction.text = "Happy";
pressedEmojiColor(satisfaction.text);
});
print("Happy");
print(satisfaction.text);
},
child: Container(
color: _colorContainerHappy,
@ -181,9 +188,11 @@ class FormForFeedbackState extends State<FormForFeedback> {
child: InkWell(
onTap: () {
setState(() {
pressedEmojiColor("MediumHappy");
satisfaction.text = "MediumHappy";
pressedEmojiColor(satisfaction.text);
});
print("MediumHappy");
print(satisfaction.text);
},
child: Container(
color: _colorContainerMediumHappy,
@ -210,9 +219,10 @@ class FormForFeedbackState extends State<FormForFeedback> {
child: InkWell(
onTap: () {
setState(() {
pressedEmojiColor("Upset");
satisfaction.text = "Upset";
pressedEmojiColor(satisfaction.text);
});
print("Upset");
print(satisfaction.text);
},
child: Container(
color: _colorContainerUpset,
@ -238,35 +248,20 @@ class FormForFeedbackState extends State<FormForFeedback> {
const SizedBox(height: 20),
Text(
'What is on your mind? 💕',
style: TextStyle(
fontSize: 20,
color: textColor,
),
),
const SizedBox(height: 20),
CheckboxListTile(
title: const Text("Compliment"),
value: check1,
onChanged: (newValue) {
setState(() {
typeOfFeedback.text = "Compliment";
pressedTypeOfFeedback(typeOfFeedback.text);
print(typeOfFeedback.text);
check1 = newValue!;
print("Compliment");
if(check4 || check2 || check3){
check4 = false;
check2 = false;
check3 = false;
}
});
},
controlAffinity: ListTileControlAffinity.leading, //lägger checkboxen vänster sida om texten
),
Column(children: <Widget>[
@ -276,18 +271,14 @@ class FormForFeedbackState extends State<FormForFeedback> {
onChanged: (newValue) {
setState(() {
check2 = newValue!;
print("Complaint");
typeOfFeedback.text = "Complaint";
pressedTypeOfFeedback(typeOfFeedback.text);
print(typeOfFeedback.text);
if(check1 || check4 || check3){
check1 = false;
check4 = false;
check3 = false;
}
});
},
controlAffinity: ListTileControlAffinity.leading, //lägger checkboxen vänster sida om texten
),
CheckboxListTile(
@ -296,18 +287,14 @@ class FormForFeedbackState extends State<FormForFeedback> {
onChanged: (newValue) {
setState(() {
check3 = newValue!;
print("Bug");
typeOfFeedback.text = "Bug";
pressedTypeOfFeedback(typeOfFeedback.text);
print(typeOfFeedback.text);
if(check1 || check2 || check4){
check1 = false;
check2 = false;
check4 = false;
}
});
},
controlAffinity: ListTileControlAffinity.leading, //lägger checkboxen vänster sida om texten
),
CheckboxListTile(
@ -316,18 +303,14 @@ class FormForFeedbackState extends State<FormForFeedback> {
onChanged: (newValue) {
setState(() {
check4 = newValue!;
print("Mistake in sun accuracy");
typeOfFeedback.text = "Mistake in sun accuracy";
pressedTypeOfFeedback(typeOfFeedback.text);
print(typeOfFeedback.text);
if(check1 || check2 || check3){
check1 = false;
check2 = false;
check3 = false;
}
});
},
controlAffinity: ListTileControlAffinity.leading, //lägger checkboxen vänster sida om texten
),
const SizedBox(height: 10),
@ -335,6 +318,8 @@ class FormForFeedbackState extends State<FormForFeedback> {
Padding(
padding: const EdgeInsets.all(40.0),
child: TextFormField(
keyboardType: TextInputType.text,
controller: writtenFeedback,
decoration: InputDecoration(
contentPadding: const EdgeInsets.all(20.0),
labelText: "Write feedback here...",
@ -345,89 +330,193 @@ class FormForFeedbackState extends State<FormForFeedback> {
),
), //fillColor: Colors.green
),
keyboardType: TextInputType.text,
style: const TextStyle(
),
),
InkWell(
onTap: () async {
print(writtenFeedback.text);
if (writtenFeedback.text.contains("'")) {
print('not allowed to use atrophies');
return;
}
await feedbackVerification(satisfaction.text, typeOfFeedback.text, writtenFeedback.text);
print(satisfaction.text);
print(typeOfFeedback.text);
print(writtenFeedback.text);
//pop-up thank you for answering
showDialog<String>(
context: context,
builder: (BuildContext context) =>
AlertDialog(
title: const Text('Thank you'),
content: const Text('Thank you for your feedback, '
'you will now be sent back to the map'),
actions: <Widget>[
TextButton(
child: const Text('Ok'),
onPressed: () =>
Navigator.push(
context,
MaterialPageRoute(builder: (context) =>
BottomNavPage()),
//Replace Container() with call to account-page.
),
),
],
),
);
pressedEmojiColor("clear");
pressedTypeOfFeedback("clear");
writtenFeedback.text = '';
},
child: Container(
color: Colors.purple,
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: const <Widget>[
Text("Send feedback",
style: TextStyle(
fontSize: 25,
color: Colors.white),
),
],
),
),
),
]
],
),
],
),
const SizedBox(height: 30),
],
),
),
),
);
);
}
}
void pressedEmojiColor (String satisfactionLevel) {
if (satisfactionLevel == "Upset") {
if (_satisfactionBoolean["Upset"] == true) {
_satisfactionBoolean["Upset"] = false;
_colorContainerUpset = _backgroundColor;
} else {
_satisfactionBoolean["Upset"] = true;
_colorContainerUpset = Colors.purple;
void pressedEmojiColor (String s) {
if (s == "Upset") {
_colorContainerUpset = Colors.purple;
_satisfactionBoolean["Upset"] == true;
if(_satisfactionBoolean["MediumHappy"] == true || _satisfactionBoolean["Happy"] == true || _satisfactionBoolean["VeryHappy"] == true) {
_satisfactionBoolean["MediumHappy"] == false;
_colorContainerMediumHappy = _backgroundColor;
_satisfactionBoolean["Happy"] == false;
_colorContainerHappy = _backgroundColor;
_satisfactionBoolean["VeryHappy"] == false;
_colorContainerVeryHappy = _backgroundColor;
}
}
} else if (satisfactionLevel == "MediumHappy") {
if (_satisfactionBoolean["MediumHappy"] == true) {
_satisfactionBoolean["MediumHappy"] = false;
_colorContainerMediumHappy = _backgroundColor;
} else {
_satisfactionBoolean["MediumHappy"] = true;
_colorContainerMediumHappy = Colors.purple;
_satisfactionBoolean["MediumHappy"] == false;
_colorContainerMediumHappy = _backgroundColor;
_satisfactionBoolean["Happy"] == false;
_colorContainerHappy = _backgroundColor;
_satisfactionBoolean["VeryHappy"] == false;
_colorContainerVeryHappy = _backgroundColor;
}
if(_satisfactionBoolean["Upset"] == true || _satisfactionBoolean["Happy"] == true || _satisfactionBoolean["VeryHappy"] == true) {
_satisfactionBoolean["Upset"] == false;
_colorContainerUpset = _backgroundColor;
_satisfactionBoolean["Happy"] == false;
_colorContainerHappy = _backgroundColor;
_satisfactionBoolean["VeryHappy"] == false;
_colorContainerVeryHappy = _backgroundColor;
}
}
} else if (satisfactionLevel == "Happy") {
if (_satisfactionBoolean["Happy"] == true) {
_satisfactionBoolean["Happy"] = false;
_colorContainerHappy = _backgroundColor;
} else {
_satisfactionBoolean["Happy"] = true;
_colorContainerHappy = Colors.purple;
if (s == "MediumHappy") {
_colorContainerMediumHappy = Colors.purple;
_satisfactionBoolean["MediumHappy"] = true;
if(_satisfactionBoolean["MediumHappy"] == true || _satisfactionBoolean["Upset"] == true || _satisfactionBoolean["VeryHappy"] == true) {
_satisfactionBoolean["MediumHappy"] == false;
_colorContainerMediumHappy = _backgroundColor;
_satisfactionBoolean["Upset"] == false;
_colorContainerUpset = _backgroundColor;
_satisfactionBoolean["VeryHappy"] == false;
_colorContainerVeryHappy = _backgroundColor;
}
}
} else if(satisfactionLevel == "VeryHappy") {
if (_satisfactionBoolean["VeryHappy"] == true) {
_satisfactionBoolean["VeryHappy"] = false;
_colorContainerVeryHappy = _backgroundColor;
} else {
_satisfactionBoolean["VeryHappy"] = true;
_colorContainerVeryHappy = Colors.purple;
_satisfactionBoolean["Upset"] == false;
_colorContainerUpset = _backgroundColor;
_satisfactionBoolean["Happy"] == false;
_colorContainerHappy = _backgroundColor;
_satisfactionBoolean["VeryHappy"] == false;
_colorContainerVeryHappy = _backgroundColor;
}
if(_satisfactionBoolean["MediumHappy"] == true || _satisfactionBoolean["Happy"] == true || _satisfactionBoolean["Upset"] == true) {
_satisfactionBoolean["MediumHappy"] == false;
_colorContainerMediumHappy = _backgroundColor;
_satisfactionBoolean["Happy"] == false;
_colorContainerHappy = _backgroundColor;
_satisfactionBoolean["Upset"] == false;
_colorContainerUpset = _backgroundColor;
}
}
if (s == "Happy") {
_colorContainerHappy = Colors.purple;
_satisfactionBoolean["Happy"] = true;
_satisfactionBoolean["MediumHappy"] == false;
_colorContainerMediumHappy = _backgroundColor;
_satisfactionBoolean["Upset"] == false;
_colorContainerUpset = _backgroundColor;
_satisfactionBoolean["VeryHappy"] == false;
_colorContainerVeryHappy = _backgroundColor;
}
if(s == "VeryHappy") {
_colorContainerVeryHappy = Colors.purple;
_satisfactionBoolean["VeryHappy"] = true;
_satisfactionBoolean["MediumHappy"] == false;
_colorContainerMediumHappy = _backgroundColor;
_satisfactionBoolean["Happy"] == false;
_colorContainerHappy = _backgroundColor;
_satisfactionBoolean["Upset"] == false;
_colorContainerUpset = _backgroundColor;
}
if(s == "clear"){
_satisfactionBoolean["VeryHappy"] = false;
_colorContainerVeryHappy = _backgroundColor;
_satisfactionBoolean["MediumHappy"] == false;
_colorContainerMediumHappy = _backgroundColor;
_satisfactionBoolean["Happy"] == false;
_colorContainerHappy = _backgroundColor;
_satisfactionBoolean["Upset"] == false;
_colorContainerUpset = _backgroundColor;
}
}
void pressedTypeOfFeedback(String s) {
if (s == "Compliment") {
_typeOfFeedback["Compliment"] == true;
check1 = true;
_typeOfFeedback["Complaint"] == false;
check2 = false;
_typeOfFeedback["Bug"] == false;
check3 = false;
_typeOfFeedback["Mistake in sun accuracy"] == false;
check4 = false;
}
if (s == "Complaint") {
_typeOfFeedback["Complaint"] == true;
check2 = true;
_typeOfFeedback["Compliment"] == false;
check1 = false;
_typeOfFeedback["Bug"] == false;
check3 = false;
_typeOfFeedback["Mistake in sun accuracy"] == false;
check4 = false;
}
if (s == "Bug") {
_typeOfFeedback["Bug"] == true;
check3 = true;
_typeOfFeedback["Complaint"] == false;
check2 = false;
_typeOfFeedback["Compliment"] == false;
check1 = false;
_typeOfFeedback["Mistake in sun accuracy"] == false;
check4 = false;
}
if (s == "Mistake in sun accuracy") {
_typeOfFeedback["Mistake in sun accuracy"] == true;
check4 = true;
_typeOfFeedback["Complaint"] == false;
check2 = false;
_typeOfFeedback["Bug"] == false;
check3 = false;
_typeOfFeedback["Compliment"] == false;
check1 = false;
}
if (s == "clear") {
_typeOfFeedback["Mistake in sun accuracy"] == false;
check4 = false;
_typeOfFeedback["Complaint"] == false;
check2 = false;
_typeOfFeedback["Bug"] == false;
check3 = false;
_typeOfFeedback["Compliment"] == false;
check1 = false;
}
}

11
lib/Form.dart Normal file
View File

@ -0,0 +1,11 @@
class form {
late String satisfaction;
late String typeOfFeedback;
late String writtenFeedback;
form(String satisfaction, String typeOfFeedback, String writtenFeedback, String timestamp){
this.satisfaction = satisfaction;
this.typeOfFeedback = typeOfFeedback;
this.writtenFeedback = writtenFeedback;
}
}

View File

@ -1,14 +1,13 @@
import 'package:flutter/material.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:google_fonts/google_fonts.dart';
import 'BottomNavPage.dart';
import 'package:flutter_applicationdemo/login/CreateAccountPage.dart';
import 'package:flutter_applicationdemo/login/CreateAccountPage.dart';
import 'Venue.dart';
import 'login/CreateAccountPage.dart';
import 'globals.dart';
import 'login/signInPage.dart';
import '../login/User.dart';
import 'mysql.dart';
import 'package:flutter_applicationdemo/login/User.dart';
import 'login/user.dart';
import 'globals.dart' as globals;
@ -31,33 +30,22 @@ class _HomePageState extends State<HomePage> {
padding: EdgeInsets.fromLTRB(80, 80, 80, 0),
child: Text(
'Sun Chasers',
style: TextStyle(
fontSize: 50,
style: GoogleFonts.libreBaskerville(
fontSize: 35,
color: globals.TEXTCOLOR,
fontFamily: 'Sacramento',
shadows: <Shadow>[
Shadow(
offset: Offset(2, 2),
blurRadius: 10.0,
color: Color.fromARGB(255, 0, 0, 0),
),
],
),
),
),
),
const SizedBox(height: 10),
Text(
'The #1 Sunny Spot Finder',
style: TextStyle(
fontSize: 32,
fontFamily: 'Sacramento',
color: globals.TEXTCOLOR,
shadows: <Shadow>[
Shadow(
offset: Offset(2, 2),
blurRadius: 12.5,
color: globals.SHADOWCOLOR,
),
]
style: GoogleFonts.libreBaskerville(
fontSize: 20,
fontWeight: FontWeight. bold,
color: globals.TEXTCOLOR,
),
),
Container(
@ -76,8 +64,9 @@ class _HomePageState extends State<HomePage> {
);
},
child: Text(
'FIND SPOT BY LOCATION',
textAlign: TextAlign.center,
(globals.LOGGED_IN_USER.userID == 0 ? 'FIND SPOT BY LOCATION \n \n without signing in' : 'FIND SPOT BY LOCATION'),
textAlign: TextAlign.center,
style: TextStyle(
fontSize: 18,
color: Colors.white,

View File

@ -1,6 +1,7 @@
import 'dart:convert';
import 'package:flutter/material.dart';
import 'package:flutter_applicationdemo/WebScraper.dart';
import 'dart:async';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:flutter_google_places/flutter_google_places.dart';
@ -10,16 +11,17 @@ import 'package:location/location.dart';
import 'package:geolocator/geolocator.dart';
import 'package:flutter_applicationdemo/login/User.dart';
import 'SettingsPage.dart';
import 'Venue.dart';
import 'globals.dart' as globals;
import 'globals.dart' as globals;
class Map extends StatefulWidget {
@override
State<Map> createState() => MapState();
}
const kGoogleApiKey = "AIzaSyAUmhd6Xxud8SwgDxJ4LlYlcntm01FGoSk";
@ -32,7 +34,33 @@ class MapState extends State<Map> {
Future getMerkerData() async {
var url = Uri.parse('https://openstreetgs.stockholm.se/geoservice/api/b8e20fd7-5654-465e-8976-35b4de902b41/wfs?service=wfs&version=1.1.0&request=GetFeature&typeNames=od_gis:Markupplatelse&srsName=EPSG:4326&outputFormat=json');
var response = await http.get(url);
print('Response status: ${response.statusCode}');
// print('Response body: ${response.body.toString()}');
var jsonData = jsonDecode(response.body);
/* print(jsonData['features'][0]);
print(jsonData['features'][1]['properties']['Plats_1']);
print(jsonData['features'][0]['properties']['Gatunr_1']);
print(jsonData['features'][0]['properties']['Kategorityp']);
/*String data = jsonData['features'][0]['properties']['Kategorityp'];
print(data.contains('Tillfälliga bostäder'));*/
print(jsonData['features'][1]['geometry']['coordinates']);*/
//print(jsonData['features'][0]['properties']['MAIN_ATTRIBUTE_VALUE']);
// List<_Marker> markers = [];
//print(m['properties']['Kategorityp']);
}
}
final Completer<GoogleMapController> _controller = Completer();
@ -50,12 +78,14 @@ class MapState extends State<Map> {
@override
void initState() {
intilize();
_getUserLocation();
initialize();
//_getUserLocation();
super.initState();
}
void createBottomSheet() {
void createBottomSheet(String venueName) async {
var webScraper = WebScraper();
await webScraper.getWebsiteData(venueName);
Scaffold.of(context).showBottomSheet<void>(
((context) {
return Container(
@ -65,12 +95,14 @@ class MapState extends State<Map> {
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
mainAxisSize: MainAxisSize.min,
children: const <Widget>[
children: <Widget>[
/*const Text('BottomSheet'),
ElevatedButton(
child: const Text('Close BottomSheet'),
onPressed: () {Navigator.pop(context);})*/
Image(image: AssetImage('assets/images/bild.png'))
Container(
child: Text(webScraper.openingHoursThisWeek.length.toString()),
),
],
)
@ -80,16 +112,15 @@ class MapState extends State<Map> {
);
}
intilize() {
List<Venue> venues = globals.VENUES;
for(Venue venue in venues){
initialize() {
List<Venue> allVenues = globals.VENUES;
for(var venue in allVenues) {
Marker marker = Marker(
markerId: MarkerId(venue.toString()),
onTap: createBottomSheet,
position: venue.position,
icon: BitmapDescriptor.defaultMarkerWithHue(BitmapDescriptor.hueGreen),
);
markerId: MarkerId(venue.venueID.toString()),
position: venue.position,
onTap: () => createBottomSheet(venue.venueName),
icon: venue.drawIconColor(),
);
markersList.add(marker);
}
}
@ -131,7 +162,7 @@ class MapState extends State<Map> {
late GoogleMapController googleMapController;
//final Mode _mode = Mode.fullscreen;
final Mode _mode = Mode.fullscreen;
int currentIndex = 0;
final screens =[
@ -152,7 +183,7 @@ class MapState extends State<Map> {
textCapitalization: TextCapitalization.words,
decoration: const InputDecoration(hintText: 'Find your place'),
onChanged: (value) {
//print(value);
print(value);
},
),
backgroundColor: const Color.fromARGB(255, 190, 146, 160),
@ -170,7 +201,65 @@ class MapState extends State<Map> {
// ElevatedButton(onPressed: () {} //_handelPressButton
// ,child: const Text("Search Placses"))
],
)
),
floatingActionButton: Padding(
padding: const EdgeInsets.only(top: 100.0),
child: FloatingActionButton(
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => const SettingsPage()));
},
backgroundColor: Colors.purple,
child: const Icon(Icons.filter_alt),
),
),
floatingActionButtonLocation: FloatingActionButtonLocation.endTop,
);
}
Future<void> _gotoLocation(double lat, double lng) async {
final GoogleMapController controller = await _controller.future;
controller.animateCamera(CameraUpdate.newCameraPosition(CameraPosition(target: LatLng(lat,lng), zoom: 15)));
}
Widget _boxes(double lat, double lng, String resturantName) {
return GestureDetector(
onTap: () { _gotoLocation(lat, lng);},
child: Container(
child: FittedBox(
child: Material(
color: Colors.white,
elevation: 14.0,
borderRadius: BorderRadius.circular(24.0),
shadowColor: Color(0x802196F3),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Container(
width: 250,
height: 200,
child: ClipRRect(
borderRadius: new BorderRadius.circular(24.0),
child: const Image(
image: AssetImage('assets/images/bild.png')
),
),
),
Container(
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Text(resturantName),
),
)
],
),
),
)
),
);
}
@ -183,4 +272,43 @@ class MapState extends State<Map> {
zoom: 14.4746)));
}
/* Future<void> _handelPressButton() async {
Prediction? p = await PlacesAutocomplete.show(
context: context,
apiKey: kGoogleApiKey,
mode: _mode, // Mode.fullscreen
language: "en",
strictbounds: false,
decoration: InputDecoration(
hintText:'serach',
focusedBorder: OutlineInputBorder(borderRadius: BorderRadius.circular(20), borderSide: BorderSide(color: Colors.white))
),
types: [""],
components: [Component(Component.country, "se")]);
if (p != null) {
displayPrediction(p,homeSacffoldKey.currentState);
}
}
Future<void> displayPrediction(Prediction p, ScaffoldState? currentState) async {
GoogleMapsPlaces places = GoogleMapsPlaces(
apiKey: kGoogleApiKey,
apiHeaders: await const GoogleApiHeaders().getHeaders()
);
PlacesDetailsResponse detail = await places.getDetailsByPlaceId(p.placeId!);
final lat = detail.result.geometry!.location.lat;
final lng = detail.result.geometry!.location.lng;
markersList.clear();
markersList.add(Marker(markerId: const MarkerId("0"), position: LatLng(lat, lng), infoWindow: InfoWindow(title: detail.result.name)));
setState(() {});
googleMapController.animateCamera(CameraUpdate.newLatLngZoom(LatLng(lat,lng), 14.0));
}*/
}

View File

@ -8,12 +8,13 @@ import 'package:settings_ui/settings_ui.dart';
import 'ManageAccountPage.dart';
import 'login/GoogleSignInProvider.dart';
import 'package:provider/provider.dart';
import 'FeedbackPage.dart';
// Standard color of app
Color _backgroundColor = const Color.fromARGB(255, 190, 146, 160);
// Color status of priceRange
Color _colorContainerLow = Colors.yellow;
Color _colorContainerLow = Colors.purple;
Color _colorContainerMedium = _backgroundColor;
Color _colorContainerHigh = _backgroundColor;
@ -112,6 +113,21 @@ class _SettingsPageState extends State<SettingsPage> {
onTap: () {
setState(() {
onClickPriceColor("LowPriceRange");
if (_priceRangeBool["LowPriceRange"] == true) {
ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
duration: Duration(milliseconds: 1000),
behavior: SnackBarBehavior.floating,
content: Text('Selected £'),
));
}else{
ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
duration: Duration(milliseconds: 1000),
content: Text('Unselected £'),
behavior: SnackBarBehavior.floating,
));
}
});
print("Tapped single dollarSign");
},
@ -138,6 +154,21 @@ class _SettingsPageState extends State<SettingsPage> {
onTap: () {
setState(() {
onClickPriceColor("MediumPriceRange");
if (_priceRangeBool["MediumPriceRange"] == true) {
ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
duration: Duration(milliseconds: 1000),
behavior: SnackBarBehavior.floating,
content: Text('Selected ££'),
));
}else{
ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
duration: Duration(milliseconds: 1000),
content: Text('Unselected ££'),
behavior: SnackBarBehavior.floating,
));
}
});
print("Tapped double dollarSign");
},
@ -168,6 +199,21 @@ class _SettingsPageState extends State<SettingsPage> {
onTap: () {
setState(() {
onClickPriceColor("HighPriceRange");
if (_priceRangeBool["HighPriceRange"] == true) {
ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
duration: Duration(milliseconds: 1000),
behavior: SnackBarBehavior.floating,
content: Text('Selected £££'),
));
}else{
ScaffoldMessenger.of(context).showSnackBar(const SnackBar(
duration: Duration(milliseconds: 1000),
content: Text('Unselected £££'),
behavior: SnackBarBehavior.floating,
));
}
});
print("Tapped Tripple dollarSign");
},
@ -238,16 +284,9 @@ class _SettingsPageState extends State<SettingsPage> {
child: Text(
'Manage account',
style: TextStyle(
fontSize: 25,
fontFamily: 'Sacramento',
fontSize: 20,
fontWeight: FontWeight. bold,
color: Colors.black,
shadows: <Shadow>[
Shadow(
offset: Offset(2, 2),
blurRadius: 12.5,
color: Color.fromARGB(255, 0, 0, 0),
),
],
),
),
),
@ -258,7 +297,7 @@ class _SettingsPageState extends State<SettingsPage> {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => BottomNavPage()),
builder: (context) => FormForFeedback()),
);
},
child: Container(
@ -270,16 +309,9 @@ class _SettingsPageState extends State<SettingsPage> {
child: Text(
'Leave feedback',
style: TextStyle(
fontSize: 32,
fontFamily: 'Sacramento',
fontSize: 20,
fontWeight: FontWeight. bold,
color: Colors.black,
shadows: <Shadow>[
Shadow(
offset: Offset(2, 2),
blurRadius: 12.5,
color: Color.fromARGB(255, 0, 0, 0),
),
],
),
),
),
@ -302,16 +334,9 @@ class _SettingsPageState extends State<SettingsPage> {
child: Text(
'Log out',
style: TextStyle(
fontSize: 32,
fontFamily: 'Sacramento',
fontSize: 20,
fontWeight: FontWeight. bold,
color: Colors.black,
shadows: <Shadow>[
Shadow(
offset: Offset(2, 2),
blurRadius: 12.5,
color: Color.fromARGB(255, 0, 0, 0),
),
],
),
),
),
@ -333,7 +358,7 @@ void onClickPriceColor(String priceRange) {
_colorContainerLow = _backgroundColor;
} else {
_priceRangeBool["LowPriceRange"] = true;
_colorContainerLow = Colors.yellow;
_colorContainerLow = Colors.purple;
}
} else if (priceRange == "MediumPriceRange") {
if (_priceRangeBool["MediumPriceRange"] == true) {
@ -341,7 +366,7 @@ void onClickPriceColor(String priceRange) {
_colorContainerMedium = _backgroundColor;
} else {
_priceRangeBool["MediumPriceRange"] = true;
_colorContainerMedium = Colors.yellow;
_colorContainerMedium = Colors.purple;
}
} else {
if (_priceRangeBool["HighPriceRange"] == true) {
@ -349,7 +374,7 @@ void onClickPriceColor(String priceRange) {
_colorContainerHigh = _backgroundColor;
} else {
_priceRangeBool["HighPriceRange"] = true;
_colorContainerHigh = Colors.yellow;
_colorContainerHigh = Colors.purple;
}
}
}

View File

@ -1,28 +1,57 @@
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:http/http.dart';
import 'dart:async';
import 'globals.dart' as globals;
import 'Venue.dart';
class ShadowDetector {
bool inShade = false;
List<Venue> venuesInShade = [];
ShadowDetector(double latitude, double longitude) {
evaluateShadowSituation(latitude, longitude);
ShadowDetector() {
}
//Called like "new ShadowDetector.fromShadowDetector(List of venues here);"
ShadowDetector.fromShadowDetector(venues) {
evaluateShadowsForAllVenues(venues);
}
void evaluateShadowSituation (double latitude, double longitude) async {
var lat = latitude.toString();
var lng = longitude.toString();
var dateInMilliseconds = DateTime.now().millisecondsSinceEpoch.toString() + 't';
final response = await get(Uri.parse('https://node.sacalerts.com/og-image/loc@$lat,$lng,14.82137z,$dateInMilliseconds'));
var responseAsString = response.body.toString();
print(response);
print(responseAsString);
if(responseAsString[responseAsString.length - 2] == 1) {
this.inShade = true;
Future evaluateShadowsForAllVenues (List<Venue> venues) async {
final dateInMilliseconds = DateTime.now().millisecondsSinceEpoch.toString() + 't';
for(var venue in venues) {
LatLng pos = venue.position;
final lat = pos.latitude.toString();
final lng = pos.longitude.toString();
final response = await get(Uri.parse('https://node.sacalerts.com/og-image/loc@$lat,$lng,14.82137z,$dateInMilliseconds'));
var responseAsString = response.body.toString();
//print(response);
//print(responseAsString);
//print(responseAsString[responseAsString.length - 2]);
if(responseAsString[responseAsString.length - 2] == 1) {
venue.inShade = true;
}
venuesInShade.add(venue);
}
}
List<Venue> get listWithVenuesInShade => venuesInShade; //Get all venues with their shadow status updated.
void evaluateShadowsForOneVenue (Venue venue) async {
LatLng pos= venue.position;
final lat = pos.latitude.toString();
final lng = pos.longitude.toString();
final dateInMilliseconds = DateTime.now().millisecondsSinceEpoch.toString() + 't';
final response = await get(Uri.parse('https://node.sacalerts.com/og-image/loc@$lat,$lng,14.82137z,$dateInMilliseconds'));
var responseAsString = response.body.toString();
//print(response);
//print(responseAsString);
//print(responseAsString[responseAsString.length - 2]);
if(responseAsString[responseAsString.length - 2] == 1) {
venue.inShade = true;
}
else {
venue.inShade = false;
}
}
bool get isInShade =>inShade;
}

View File

@ -6,11 +6,26 @@ class Venue {
late VenueType typeOfVenue;
late LatLng position;
late InfoWindow infoWindow;
bool inShade = false;
Venue(this.venueName,
this.venueID, this.typeOfVenue, this.position);
BitmapDescriptor drawIconColor() {
if(inShade) {
return BitmapDescriptor.defaultMarkerWithHue(BitmapDescriptor.hueAzure);
}
else {
return BitmapDescriptor.defaultMarkerWithHue(BitmapDescriptor.hueYellow);
}
}
}
enum VenueType{
cafe, restaurant, bar
}

60
lib/WebScraper.dart Normal file
View File

@ -0,0 +1,60 @@
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
import 'package:html/dom.dart' as dom;
class WebScraper {
late List<String> openingHoursThisWeek;
late String openingHoursToday;
late String reviewScore;
//late String priceClass;
WebScraper() { //Must provide an URL from bing search engine.
}
Future getWebsiteData(String venueName) async {
final bingURL = Uri.parse('https://www.bing.com/search?q=$venueName');
final bingResponse = await http.get(bingURL);
dom.Document htmlBing = dom.Document.html(bingResponse.body);
openingHoursToday = htmlBing
.getElementsByClassName('opHr_Exp')
.map((e) => e.text)
.toList()[0]
.toString();
openingHoursThisWeek = htmlBing
.getElementsByClassName('hrRange')
.map((e) => e.text)
.toList();
reviewScore = htmlBing.getElementsByClassName('csrc sc_rc1')
.map((e) => e.attributes['aria-label'])
.toList()[0]
.toString();
/* final tripAdvisorURL = htmlBing.querySelectorAll('div.infoModule.b_divsec.topBleed.noSeparator > div > a')
.map((e) => e.attributes['href'])
.toList()[0]
.toString();
final tripAdvisorResponse = await http.get(Uri.parse(tripAdvisorURL));
dom.Document htmlTripAdvisor = dom.Document.html(tripAdvisorResponse.body);
priceClass = htmlTripAdvisor
.getElementsByClassName('drUyy')
.map((e) => e.text)
.toList()[0]
.toString();*/
}
List<String> get getOpeningHoursThisWeek => openingHoursThisWeek; //First item is monday, last item is sunday.
// Output example: "[11:00 - 01:00, 11:00 - 01:00, 11:00 - 01:00, 11:00 - 01:00, 11:00 - 01:00, 11:00 - 01:00, 11:00 - 01:00]"
String get getOpeningHoursToday => openingHoursToday; //Output example: "Open · Closes 01:00" (Gets automatically updated).
String get getReviewScore => reviewScore; // Output example: "Star Rating: 4 out of 5.".
//String get getPriceClass => priceClass; // Output example: "$$ - $$$".
}

View File

@ -18,7 +18,7 @@ Color PINKBACKGROUND = const Color.fromARGB(255, 240, 229, 229);
Color TEXTCOLOR = const Color.fromARGB(255, 79, 98, 114);
Color SHADOWCOLOR = const Color.fromARGB(255, 0, 0, 0);
Color TEXTWHITE = const Color.fromARGB(0, 0, 0, 0);
late List<Venue> VENUES;
late List<Venue> VENUES = [];
Venue? getVenueByID(int searchedVenueID){
for(var V in VENUES){

View File

@ -3,6 +3,7 @@ import 'dart:async';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:flutter_applicationdemo/ShadowDetector.dart';
import 'package:flutter_applicationdemo/login/GoogleSignInProvider.dart';
import 'package:google_maps_flutter/google_maps_flutter.dart';
import 'package:flutter_applicationdemo/login/GoogleSignInProvider.dart';
@ -51,4 +52,8 @@ Future<void> loadAllVenues() async{
}
});
});
var sd = ShadowDetector();
await sd.evaluateShadowsForAllVenues(globals.VENUES);
}

View File

@ -64,6 +64,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "3.0.2"
csslib:
dependency: transitive
description:
name: csslib
url: "https://pub.dartlang.org"
source: hosted
version: "0.17.1"
cupertino_icons:
dependency: "direct main"
description:
@ -267,7 +274,7 @@ packages:
name: get
url: "https://pub.dartlang.org"
source: hosted
version: "4.6.3"
version: "4.6.5"
google_api_headers:
dependency: transitive
description:
@ -281,7 +288,7 @@ packages:
name: google_fonts
url: "https://pub.dartlang.org"
source: hosted
version: "2.3.2"
version: "2.3.3"
google_maps_flutter:
dependency: "direct main"
description:
@ -295,7 +302,7 @@ packages:
name: google_maps_flutter_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "2.1.5"
version: "2.1.6"
google_maps_webservice:
dependency: transitive
description:
@ -316,14 +323,14 @@ packages:
name: google_sign_in_android
url: "https://pub.dartlang.org"
source: hosted
version: "5.2.7"
version: "5.2.8"
google_sign_in_ios:
dependency: transitive
description:
name: google_sign_in_ios
url: "https://pub.dartlang.org"
source: hosted
version: "5.2.7"
version: "5.3.1"
google_sign_in_platform_interface:
dependency: transitive
description:
@ -338,6 +345,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "0.10.1+2"
html:
dependency: "direct main"
description:
name: html
url: "https://pub.dartlang.org"
source: hosted
version: "0.15.0"
http:
dependency: "direct main"
description:
@ -713,7 +727,7 @@ packages:
name: webview_flutter_platform_interface
url: "https://pub.dartlang.org"
source: hosted
version: "1.8.1"
version: "1.9.0"
webview_flutter_wkwebview:
dependency: transitive
description:

View File

@ -55,6 +55,7 @@ dependencies:
google_sign_in: ^5.0.3
get: ^4.6.1
mysql1: ^0.19.0
html: ^0.15.0
flutter_native_splash:
background_image: assets/images/outdoor.png