From d254b807a825b44f16544192b7fe59ce1b2acda4 Mon Sep 17 00:00:00 2001 From: BharathRoshan Date: Mon, 21 Sep 2020 17:08:58 +0530 Subject: [PATCH 1/5] Uploaded both modules --- medicare/.gitignore | 43 ++ medicare/.metadata | 10 + medicare/README.md | 16 + medicare/android/.gitignore | 7 + medicare/android/app/build.gradle | 54 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 49 ++ .../com/example/medicare/MainActivity.java | 6 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + medicare/android/build.gradle | 29 + medicare/android/gradle.properties | 4 + .../gradle/wrapper/gradle-wrapper.properties | 6 + medicare/android/settings.gradle | 15 + medicare/assets/cn_flag.png | Bin 0 -> 22165 bytes medicare/assets/distance.png | Bin 0 -> 32480 bytes medicare/assets/fr_flag.png | Bin 0 -> 10333 bytes medicare/assets/getstartedback.jpg | Bin 0 -> 454972 bytes medicare/assets/in_flag.png | Bin 0 -> 31064 bytes medicare/assets/it_flag.png | Bin 0 -> 10333 bytes medicare/assets/mask.png | Bin 0 -> 22797 bytes medicare/assets/own_test.png | Bin 0 -> 31720 bytes medicare/assets/uk_flag.png | Bin 0 -> 14411 bytes medicare/assets/usa_flag.png | Bin 0 -> 27837 bytes medicare/assets/userImage.png | Bin 0 -> 12464 bytes medicare/assets/wash_hands.png | Bin 0 -> 29669 bytes medicare/ios/.gitignore | 32 ++ medicare/ios/Flutter/AppFrameworkInfo.plist | 26 + medicare/ios/Flutter/Debug.xcconfig | 1 + medicare/ios/Flutter/Release.xcconfig | 1 + medicare/ios/Runner.xcodeproj/project.pbxproj | 506 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 91 ++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + medicare/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 +++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 564 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 1283 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 1588 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 1025 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 1716 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 1920 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 1283 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 1895 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 2665 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 2665 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 3831 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 1888 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 3294 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 3612 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + medicare/ios/Runner/Info.plist | 45 ++ medicare/ios/Runner/Runner-Bridging-Header.h | 1 + medicare/lib/components/bottom_button.dart | 28 + medicare/lib/components/icon_content.dart | 31 ++ medicare/lib/components/reusable_card.dart | 23 + medicare/lib/components/rounded_button.dart | 25 + medicare/lib/config/palette.dart | 5 + medicare/lib/config/styles.dart | 19 + medicare/lib/constants.dart | 36 ++ medicare/lib/data/data.dart | 7 + medicare/lib/login/auth.dart | 34 ++ medicare/lib/login/home_page.dart | 36 ++ medicare/lib/login/root_page.dart | 53 ++ medicare/lib/main.dart | 25 + medicare/lib/screens/appointment.dart | 292 ++++++++++ medicare/lib/screens/calculator_brain.dart | 35 ++ medicare/lib/screens/category.dart | 46 ++ medicare/lib/screens/chat.dart | 201 +++++++ medicare/lib/screens/constants.dart | 70 +++ medicare/lib/screens/home.dart | 58 ++ medicare/lib/screens/input_page.dart | 262 +++++++++ medicare/lib/screens/login_page.dart | 171 ++++++ medicare/lib/screens/medi_home.dart | 39 ++ medicare/lib/screens/ordermedicine.dart | 53 ++ medicare/lib/screens/popular_list_view.dart | 288 ++++++++++ medicare/lib/screens/precautions.dart | 227 ++++++++ medicare/lib/screens/results_page.dart | 106 ++++ medicare/lib/screens/stats_screen.dart | 111 ++++ medicare/lib/screens/video_call.dart | 139 +++++ medicare/lib/video_call/call.dart | 324 +++++++++++ medicare/lib/video_call/settings.dart | 2 + medicare/lib/widgets/country_dropdown.dart | 54 ++ medicare/lib/widgets/covid_bar_chart.dart | 114 ++++ medicare/lib/widgets/custom_app_bar.dart | 27 + medicare/lib/widgets/stats_grid.dart | 66 +++ medicare/lib/widgets/widgets.dart | 4 + medicare/pubspec.lock | 418 +++++++++++++++ medicare/pubspec.yaml | 86 +++ medicare/test/widget_test.dart | 30 ++ medicare_doctor/.gitignore | 43 ++ medicare_doctor/.metadata | 10 + medicare_doctor/README.md | 16 + medicare_doctor/android/.gitignore | 7 + medicare_doctor/android/app/build.gradle | 54 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 47 ++ .../example/medicare_doctor/MainActivity.java | 6 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + medicare_doctor/android/build.gradle | 29 + medicare_doctor/android/gradle.properties | 4 + .../gradle/wrapper/gradle-wrapper.properties | 6 + medicare_doctor/android/settings.gradle | 15 + medicare_doctor/ios/.gitignore | 32 ++ .../ios/Flutter/AppFrameworkInfo.plist | 26 + medicare_doctor/ios/Flutter/Debug.xcconfig | 1 + medicare_doctor/ios/Flutter/Release.xcconfig | 1 + .../ios/Runner.xcodeproj/project.pbxproj | 506 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 91 ++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + medicare_doctor/ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 +++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 564 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 1283 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 1588 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 1025 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 1716 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 1920 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 1283 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 1895 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 2665 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 2665 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 3831 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 1888 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 3294 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 3612 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + medicare_doctor/ios/Runner/Info.plist | 45 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + medicare_doctor/lib/constants.dart | 36 ++ medicare_doctor/lib/login/auth.dart | 34 ++ medicare_doctor/lib/login/home_page.dart | 36 ++ medicare_doctor/lib/login/root_page.dart | 53 ++ medicare_doctor/lib/main.dart | 22 + medicare_doctor/lib/screens/chat.dart | 201 +++++++ .../lib/screens/doctor_appointments.dart | 162 ++++++ medicare_doctor/lib/screens/home.dart | 58 ++ medicare_doctor/lib/screens/login_page.dart | 171 ++++++ medicare_doctor/lib/video_call/call.dart | 324 +++++++++++ medicare_doctor/lib/video_call/settings.dart | 2 + medicare_doctor/pubspec.lock | 327 +++++++++++ medicare_doctor/pubspec.yaml | 81 +++ medicare_doctor/test/widget_test.dart | 30 ++ 179 files changed, 7596 insertions(+) create mode 100644 medicare/.gitignore create mode 100644 medicare/.metadata create mode 100644 medicare/README.md create mode 100644 medicare/android/.gitignore create mode 100644 medicare/android/app/build.gradle create mode 100644 medicare/android/app/src/debug/AndroidManifest.xml create mode 100644 medicare/android/app/src/main/AndroidManifest.xml create mode 100644 medicare/android/app/src/main/java/com/example/medicare/MainActivity.java create mode 100644 medicare/android/app/src/main/res/drawable/launch_background.xml create mode 100644 medicare/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 medicare/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 medicare/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 medicare/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 medicare/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 medicare/android/app/src/main/res/values/styles.xml create mode 100644 medicare/android/app/src/profile/AndroidManifest.xml create mode 100644 medicare/android/build.gradle create mode 100644 medicare/android/gradle.properties create mode 100644 medicare/android/gradle/wrapper/gradle-wrapper.properties create mode 100644 medicare/android/settings.gradle create mode 100644 medicare/assets/cn_flag.png create mode 100644 medicare/assets/distance.png create mode 100644 medicare/assets/fr_flag.png create mode 100644 medicare/assets/getstartedback.jpg create mode 100644 medicare/assets/in_flag.png create mode 100644 medicare/assets/it_flag.png create mode 100644 medicare/assets/mask.png create mode 100644 medicare/assets/own_test.png create mode 100644 medicare/assets/uk_flag.png create mode 100644 medicare/assets/usa_flag.png create mode 100644 medicare/assets/userImage.png create mode 100644 medicare/assets/wash_hands.png create mode 100644 medicare/ios/.gitignore create mode 100644 medicare/ios/Flutter/AppFrameworkInfo.plist create mode 100644 medicare/ios/Flutter/Debug.xcconfig create mode 100644 medicare/ios/Flutter/Release.xcconfig create mode 100644 medicare/ios/Runner.xcodeproj/project.pbxproj create mode 100644 medicare/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 medicare/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 medicare/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 medicare/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 medicare/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 medicare/ios/Runner/AppDelegate.swift create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 medicare/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 medicare/ios/Runner/Base.lproj/Main.storyboard create mode 100644 medicare/ios/Runner/Info.plist create mode 100644 medicare/ios/Runner/Runner-Bridging-Header.h create mode 100644 medicare/lib/components/bottom_button.dart create mode 100644 medicare/lib/components/icon_content.dart create mode 100644 medicare/lib/components/reusable_card.dart create mode 100644 medicare/lib/components/rounded_button.dart create mode 100644 medicare/lib/config/palette.dart create mode 100644 medicare/lib/config/styles.dart create mode 100644 medicare/lib/constants.dart create mode 100644 medicare/lib/data/data.dart create mode 100644 medicare/lib/login/auth.dart create mode 100644 medicare/lib/login/home_page.dart create mode 100644 medicare/lib/login/root_page.dart create mode 100644 medicare/lib/main.dart create mode 100644 medicare/lib/screens/appointment.dart create mode 100644 medicare/lib/screens/calculator_brain.dart create mode 100644 medicare/lib/screens/category.dart create mode 100644 medicare/lib/screens/chat.dart create mode 100644 medicare/lib/screens/constants.dart create mode 100644 medicare/lib/screens/home.dart create mode 100644 medicare/lib/screens/input_page.dart create mode 100644 medicare/lib/screens/login_page.dart create mode 100644 medicare/lib/screens/medi_home.dart create mode 100644 medicare/lib/screens/ordermedicine.dart create mode 100644 medicare/lib/screens/popular_list_view.dart create mode 100644 medicare/lib/screens/precautions.dart create mode 100644 medicare/lib/screens/results_page.dart create mode 100644 medicare/lib/screens/stats_screen.dart create mode 100644 medicare/lib/screens/video_call.dart create mode 100644 medicare/lib/video_call/call.dart create mode 100644 medicare/lib/video_call/settings.dart create mode 100644 medicare/lib/widgets/country_dropdown.dart create mode 100644 medicare/lib/widgets/covid_bar_chart.dart create mode 100644 medicare/lib/widgets/custom_app_bar.dart create mode 100644 medicare/lib/widgets/stats_grid.dart create mode 100644 medicare/lib/widgets/widgets.dart create mode 100644 medicare/pubspec.lock create mode 100644 medicare/pubspec.yaml create mode 100644 medicare/test/widget_test.dart create mode 100644 medicare_doctor/.gitignore create mode 100644 medicare_doctor/.metadata create mode 100644 medicare_doctor/README.md create mode 100644 medicare_doctor/android/.gitignore create mode 100644 medicare_doctor/android/app/build.gradle create mode 100644 medicare_doctor/android/app/src/debug/AndroidManifest.xml create mode 100644 medicare_doctor/android/app/src/main/AndroidManifest.xml create mode 100644 medicare_doctor/android/app/src/main/java/com/example/medicare_doctor/MainActivity.java create mode 100644 medicare_doctor/android/app/src/main/res/drawable/launch_background.xml create mode 100644 medicare_doctor/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 medicare_doctor/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 medicare_doctor/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 medicare_doctor/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 medicare_doctor/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 medicare_doctor/android/app/src/main/res/values/styles.xml create mode 100644 medicare_doctor/android/app/src/profile/AndroidManifest.xml create mode 100644 medicare_doctor/android/build.gradle create mode 100644 medicare_doctor/android/gradle.properties create mode 100644 medicare_doctor/android/gradle/wrapper/gradle-wrapper.properties create mode 100644 medicare_doctor/android/settings.gradle create mode 100644 medicare_doctor/ios/.gitignore create mode 100644 medicare_doctor/ios/Flutter/AppFrameworkInfo.plist create mode 100644 medicare_doctor/ios/Flutter/Debug.xcconfig create mode 100644 medicare_doctor/ios/Flutter/Release.xcconfig create mode 100644 medicare_doctor/ios/Runner.xcodeproj/project.pbxproj create mode 100644 medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 medicare_doctor/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 medicare_doctor/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 medicare_doctor/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 medicare_doctor/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 medicare_doctor/ios/Runner/AppDelegate.swift create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 medicare_doctor/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 medicare_doctor/ios/Runner/Base.lproj/Main.storyboard create mode 100644 medicare_doctor/ios/Runner/Info.plist create mode 100644 medicare_doctor/ios/Runner/Runner-Bridging-Header.h create mode 100644 medicare_doctor/lib/constants.dart create mode 100644 medicare_doctor/lib/login/auth.dart create mode 100644 medicare_doctor/lib/login/home_page.dart create mode 100644 medicare_doctor/lib/login/root_page.dart create mode 100644 medicare_doctor/lib/main.dart create mode 100644 medicare_doctor/lib/screens/chat.dart create mode 100644 medicare_doctor/lib/screens/doctor_appointments.dart create mode 100644 medicare_doctor/lib/screens/home.dart create mode 100644 medicare_doctor/lib/screens/login_page.dart create mode 100644 medicare_doctor/lib/video_call/call.dart create mode 100644 medicare_doctor/lib/video_call/settings.dart create mode 100644 medicare_doctor/pubspec.lock create mode 100644 medicare_doctor/pubspec.yaml create mode 100644 medicare_doctor/test/widget_test.dart diff --git a/medicare/.gitignore b/medicare/.gitignore new file mode 100644 index 0000000..1ba9c33 --- /dev/null +++ b/medicare/.gitignore @@ -0,0 +1,43 @@ +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.buildlog/ +.history +.svn/ + +# IntelliJ related +*.iml +*.ipr +*.iws +.idea/ + +# The .vscode folder contains launch configuration and tasks you configure in +# VS Code which you may wish to be included in version control, so this line +# is commented out by default. +#.vscode/ + +# Flutter/Dart/Pub related +**/doc/api/ +.dart_tool/ +.flutter-plugins +.flutter-plugins-dependencies +.packages +.pub-cache/ +.pub/ +/build/ + +# Web related +lib/generated_plugin_registrant.dart + +# Symbolication related +app.*.symbols + +# Obfuscation related +app.*.map.json + +# Exceptions to above rules. +!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages diff --git a/medicare/.metadata b/medicare/.metadata new file mode 100644 index 0000000..7c361dd --- /dev/null +++ b/medicare/.metadata @@ -0,0 +1,10 @@ +# This file tracks properties of this Flutter project. +# Used by Flutter tool to assess capabilities and perform upgrades etc. +# +# This file should be version controlled and should not be manually edited. + +version: + revision: b041144f833e05cf463b8887fa12efdec9493488 + channel: stable + +project_type: app diff --git a/medicare/README.md b/medicare/README.md new file mode 100644 index 0000000..01e22c3 --- /dev/null +++ b/medicare/README.md @@ -0,0 +1,16 @@ +# medicare + +A new Flutter application. + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://flutter.dev/docs/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://flutter.dev/docs/cookbook) + +For help getting started with Flutter, view our +[online documentation](https://flutter.dev/docs), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/medicare/android/.gitignore b/medicare/android/.gitignore new file mode 100644 index 0000000..bc2100d --- /dev/null +++ b/medicare/android/.gitignore @@ -0,0 +1,7 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java diff --git a/medicare/android/app/build.gradle b/medicare/android/app/build.gradle new file mode 100644 index 0000000..4c506e3 --- /dev/null +++ b/medicare/android/app/build.gradle @@ -0,0 +1,54 @@ +def localProperties = new Properties() +def localPropertiesFile = rootProject.file('local.properties') +if (localPropertiesFile.exists()) { + localPropertiesFile.withReader('UTF-8') { reader -> + localProperties.load(reader) + } +} + +def flutterRoot = localProperties.getProperty('flutter.sdk') +if (flutterRoot == null) { + throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") +} + +def flutterVersionCode = localProperties.getProperty('flutter.versionCode') +if (flutterVersionCode == null) { + flutterVersionCode = '1' +} + +def flutterVersionName = localProperties.getProperty('flutter.versionName') +if (flutterVersionName == null) { + flutterVersionName = '1.0' +} + +apply plugin: 'com.android.application' +apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" + +android { + compileSdkVersion 28 + + lintOptions { + disable 'InvalidPackage' + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId "com.example.medicare" + minSdkVersion 16 + targetSdkVersion 28 + versionCode flutterVersionCode.toInteger() + versionName flutterVersionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig signingConfigs.debug + } + } +} + +flutter { + source '../..' +} diff --git a/medicare/android/app/src/debug/AndroidManifest.xml b/medicare/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..914af39 --- /dev/null +++ b/medicare/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/medicare/android/app/src/main/AndroidManifest.xml b/medicare/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..b714565 --- /dev/null +++ b/medicare/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + diff --git a/medicare/android/app/src/main/java/com/example/medicare/MainActivity.java b/medicare/android/app/src/main/java/com/example/medicare/MainActivity.java new file mode 100644 index 0000000..4514b8a --- /dev/null +++ b/medicare/android/app/src/main/java/com/example/medicare/MainActivity.java @@ -0,0 +1,6 @@ +package com.example.medicare; + +import io.flutter.embedding.android.FlutterActivity; + +public class MainActivity extends FlutterActivity { +} diff --git a/medicare/android/app/src/main/res/drawable/launch_background.xml b/medicare/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000..304732f --- /dev/null +++ b/medicare/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/medicare/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/medicare/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/medicare/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/medicare/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/medicare/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/medicare/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/medicare/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/medicare/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/medicare/android/app/src/main/res/values/styles.xml b/medicare/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..1f83a33 --- /dev/null +++ b/medicare/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/medicare/android/app/src/profile/AndroidManifest.xml b/medicare/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..914af39 --- /dev/null +++ b/medicare/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/medicare/android/build.gradle b/medicare/android/build.gradle new file mode 100644 index 0000000..e0d7ae2 --- /dev/null +++ b/medicare/android/build.gradle @@ -0,0 +1,29 @@ +buildscript { + repositories { + google() + jcenter() + } + + dependencies { + classpath 'com.android.tools.build:gradle:3.5.0' + } +} + +allprojects { + repositories { + google() + jcenter() + } +} + +rootProject.buildDir = '../build' +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(':app') +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/medicare/android/gradle.properties b/medicare/android/gradle.properties new file mode 100644 index 0000000..38c8d45 --- /dev/null +++ b/medicare/android/gradle.properties @@ -0,0 +1,4 @@ +org.gradle.jvmargs=-Xmx1536M +android.enableR8=true +android.useAndroidX=true +android.enableJetifier=true diff --git a/medicare/android/gradle/wrapper/gradle-wrapper.properties b/medicare/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..296b146 --- /dev/null +++ b/medicare/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Fri Jun 23 08:50:38 CEST 2017 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip diff --git a/medicare/android/settings.gradle b/medicare/android/settings.gradle new file mode 100644 index 0000000..d3b6a40 --- /dev/null +++ b/medicare/android/settings.gradle @@ -0,0 +1,15 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +include ':app' + +def localPropertiesFile = new File(rootProject.projectDir, "local.properties") +def properties = new Properties() + +assert localPropertiesFile.exists() +localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } + +def flutterSdkPath = properties.getProperty("flutter.sdk") +assert flutterSdkPath != null, "flutter.sdk not set in local.properties" +apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" diff --git a/medicare/assets/cn_flag.png b/medicare/assets/cn_flag.png new file mode 100644 index 0000000000000000000000000000000000000000..afde686b228f0d1a5970679a74c2cadaeb3c0bc4 GIT binary patch literal 22165 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 U5YL?lcGS5C6My^7*3stw01)osO8@`> literal 0 HcmV?d00001 diff --git a/medicare/assets/distance.png b/medicare/assets/distance.png new file mode 100644 index 0000000000000000000000000000000000000000..58d9d2dc00a22f3f5f113e534ee6e9080ed72f1c GIT binary patch literal 32480 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 literal 0 HcmV?d00001 diff --git a/medicare/assets/fr_flag.png b/medicare/assets/fr_flag.png new file mode 100644 index 0000000000000000000000000000000000000000..c1a0a35f5d6b6648909bcc6935b9e35497829547 GIT binary patch literal 10333 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%0ARX!l}Pslt%-#(P?p(h2~Z`%3HS z{w7(bFeAOSMQ$-&gV=RvLhZBX<*jtMs%cBjxH|!0sk~02Np>dzM{$c|DdOxz{3 zpRODWs1iHaG*Bb^fSCeiJEwa*FEs5sK5MZec87{uZYmpg+bMAc1b+Uq^vW^6FfSe< zE+M4zlSMo+?PYc8X#yL(47J+Q;Qw*O)`Xb$!kAC{^iH2-d0al9Yq6@A4PIUj)^xU% z#_Zl_@*&i=pEyB>h{BC?+A9IztW`5o_vopP8xN`jTrKBp6<2e7H8V3hi1QmwEqhPk zNUk>h8QKfHAjMpNL$0)+4wC`&*8ZfiZRK`h#a{OQGSqkKz~lI9oFuYOHj2{nZUgGf zS5^b_$1QFH)PDC;_t)U_D?e<8+Cjb=36ICcUR!nDz18KH(5!F0ISjCp$OM?$F5ZLG zGF`8HvuSmrPC;G8;t^q$tGWQb;m(O8Co1kmW^6xvU*kr}`z`g>N(DLGK2}#M@Zh9e z(nZcavSN-kC9f#YMnzfJ?h3#b`e=WWTXyFcT4}SUMYqNQ54qK}={F755(Gz1Yz#H_ zTV~E4g%f4D=K9!NP)r=wnqyMo9r$tI3}704jw4I9hNT-ykt}PmzmQUmR(u}H(OQNJVBC6>_omO(|ya{VQKe z!$B(GR12S@{8*j?ueD9PhMqRCr|9J@7jSh)Dzo=QkP$X(H&VfydQ-hbC(a)g}IahiquO_vLb*z#Vm0y@lTpKn}4x! za-Ya?#)T)i0H6HIWmW$bk{4fImUgk|ofhu--FeVTL#o0-k^idM+{tc;;Jr9ZT4P$< zi+Aw#15pXC7P;;|10;WFW3}b3wXw|aWTC=|U@K^JVp@(mW=u4pCHArd7=6x2u+i~V zE4%Hb{)B8A+nDJ6-5ag)f^dct3CeDKC4GKH|BEJU^r$#8XY%7W`fBxN$nJo%e}a`R zpGb@AhB$tFbeSVOwgBCQ`*gIVUFDo3OJ<9y(*I|7FB6O_r2cK8vQ6^dY!+@YSV29M^6WLj-3tkjICkI%+)hGJDezuxR%(a7G_@pF$=JFwhA-RVn-n|8s+PsP(|FOI z1+yOxfH7RS>iF@c^$KrI%k&{pE3LPJx-K>IrIq{&YGx;u=Ns{ppvYlK;BGmLb9Cxh zE0BC=4zIuY7P+rBTgj`)4~&9asPK@@CqE;MEFYKFaI8<){-_g~reI>qC(&ki?djp? zSLB5)fP1dI2G@H{c7{~{gd^CLJheKM4fa!Cls2iVB!P?V&ndO~+_y{!73%~4?X7jzw3bu?FvHLEJUsTn6@DtOC?n)WNIoKbZva#*2O zy?NaIN^A3ZDIxt7zvfE3wT$UOx~+k|?T9wLbuqa;DM-T%xj* zwYqXLrj7k&uz;H0y-`c9l9v4z>jl%}H@eq~JK9pg&Zc-p68x3hYjr&DM%%jZS&{GS zuqKwdW8s_9b#|hO9py$1Hd%0mZ#^}ejC+TfI z+G#I?ILfA3o4&_rJ=eTkUvq3WHcq8^zV2j&x9S#)<$FK2nw4uc^kO1&FA{GYPh3O40dv$y@phhU1fo;uCmz2VAO`}$PEf>->Ad?ELo zVDn)L8~l_5!FSuL>)%NaFkx_wYQhD@@9Npl3pPat&+-Ba9-1%1xb<7@?2IR#E%f#3|NgQ_YhmR)u4?m^ zXlKQ7Lpt8hUtWwPRf6|HFA3q*;Sc&n@pqj^>tx4_>(8L&dcC9EM(SqE(zOvAa}`@{ zd7ap;mHbH0>h$}U1{s=&ctq9S)<N!l!QZ$K7xJ&e>kDsYM0;s)N+iHU1yfhujDN literal 0 HcmV?d00001 diff --git a/medicare/assets/getstartedback.jpg b/medicare/assets/getstartedback.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ec9ee6892f63d0945276c57cfdbb036634183a91 GIT binary patch literal 454972 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 z%0D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 z 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

noR0f`zZg6qmt1Ago!Lf6i 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

x4JIY|YrP!I~K+G!4ouf|| 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


t`Kv(=Xv^m2s-@ve;LZ85^zJ4S%;!zTvQc+R|8r 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 z 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 literal 0 HcmV?d00001 diff --git a/medicare/assets/it_flag.png b/medicare/assets/it_flag.png new file mode 100644 index 0000000000000000000000000000000000000000..7f212f6cd0a3c10c47cb48eb763d90c46b4059b5 GIT binary patch literal 10333 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 literal 0 HcmV?d00001 diff --git a/medicare/assets/mask.png b/medicare/assets/mask.png new file mode 100644 index 0000000000000000000000000000000000000000..dddda61c01ac466ecec4f879ff2630fee0a29b5b GIT binary patch literal 22797 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≫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 literal 0 HcmV?d00001 diff --git a/medicare/assets/own_test.png b/medicare/assets/own_test.png new file mode 100644 index 0000000000000000000000000000000000000000..ca4663d4474c1e8053dd20381d0253b0db8f7553 GIT binary patch literal 31720 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 m0kh8%nsomt)}SrQ2>b`HsWIv~G5~b|00003Rw literal 0 HcmV?d00001 diff --git a/medicare/assets/uk_flag.png b/medicare/assets/uk_flag.png new file mode 100644 index 0000000000000000000000000000000000000000..f5ac53bb3a4ac17c8f6b35808a6a29e8e60bc596 GIT binary patch literal 14411 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 V{LQ{=dZxOS+Rh0w^77J({|8?(4jljh literal 0 HcmV?d00001 diff --git a/medicare/assets/usa_flag.png b/medicare/assets/usa_flag.png new file mode 100644 index 0000000000000000000000000000000000000000..67be323221f1a43d5e12a126a2581dcf2ec46d1b GIT binary patch literal 27837 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 M`n8xe_^)374@aLINB{r; literal 0 HcmV?d00001 diff --git a/medicare/assets/userImage.png b/medicare/assets/userImage.png new file mode 100644 index 0000000000000000000000000000000000000000..42b8c77af11134fb018c2b31e67ddfbe8482c61b GIT binary patch literal 12464 zcmcJ0WmH_twk{#Khv4oGjk~+M6SNx|YiKlBa6)i*3!dQa8iIx34hin=E{~kO&%SrO zao-*1&+D;PSFNg9-~8sRS+lEqREMdn%AunWp}@evpex8rYrd2oe{Lj%mv;dW@5D=i z43#%S5X!OIzrgYL5>!dY#tEki!=<3u$Twb9B60h zN?~CMws8=lI&STxqObvpQ0eigu&Y3&EUj(iy__wzyi~P;UUonM5S5rHg|LU<3joB@ z)ttfuV(;K0=pjP&FI>Tw`k!V16~(_qTpI*&{t8XkaBdkq~KxWWd(9@^HA^! zuyOEmaSI5rP;jzy@B`TS0UTVc9K3?u?1G$}6o0>{UbH!btOPZsW&hUo@+3lK?dl2@ z1OVQ@f6w-wi_Os)4B!wD5CE`q0ysHYUnE#vJRMxkJy;!FsQ-;1ZRrAZwt>3ZI66@L zK{U5;baNGHfzWsGyXyrMau4v$mt7{l6zl{og1QQc`~=Mu37r&&C1d_}+!_ z52?S$SW26_T8dEp>1Snsxj3~s_yxJR1vv$n*?9!H*#8n$c?kuOxvTkqChQ2ZvGV*+ zL{(G-6&ze#%^iT23eqA}FQnLPY(RoQbD%i~HxR_i$uGdp%E!yi#cE;2XUWRN&%w{m zWyQs92?YI%*UNZmN1)pu5B?edSLA{mfiD>UI7yI;i<{qySHPT=kB^I&)smN+mzAH# zf}a%#HNWe~Gy`TDiVAcea!O zzf8%05{Q8R7k?LX_y3*!e-V9;!2dmK|LXg1 z3GCnEFIn+V^`CV7^6*bWw{&=cc793MI9IdcFfdH-6r?4zJr)kL<`Y2kA7;hC%|=J{ z?$>p)$=tF;Rjf9$4R08_K2ofN#4dNCJ-`#d1|pr3pMdTMSCO7ziJ{_f7=bI@1P2uM zK|mT*V%7#L78_X+uJ)<;q_p=!sF>ToewOW(?3El<>=Ai7e2?0z_|cYj?K|pt|CCJK zcJ1T(a6)#LFL&~$i=34F)x)@x7UpB_!;IgRTfp@Si3h-ZIOfDe__s`m9L)Dd)Kx6l zg5b`JX3X+@Du={`%VJafIo*jV>azK+x}5Lxv(O{_Q?`{IV?+?YUYBTSvD2EE1@cvx zmM?svum9AtY_VVT1ZsTU>h$b`988XI$0d)15$@DuAhl!DGa$6TYVyD~@}X%?Fh| z8JO|ZlQF@|MTJtaTeH!r!dcfFu8xoTuiNe$(K>aJ3kX5IdIYMzAvre|k3GmIjZ4~z z=f+#1*IyK^nXEICNO9@O#tbIBCNVnMPJe&9DD8B^uF%@Kq&#l#hCUEKB<1jmk-+%v ztMs})gVWUVi5vp&+;}~@Vg$G?Xfw&_`~`aF_kB^SYi2d2lBLogncBNMSL-`(mqPJZ z#GW3>LSuZh<}Ze(Hl4~_;EttW*3J!)ely}SzwP-r_sdce!DUv)y$Ldfbzrtozk>+`>E$K99`ZulQ-Qb;xTW z@c3X4l)~x?J1!ooRo9LV30>P^qz6A?^%+&3gyej<--3Pc^Q-J%UCP`QO+|Q@XjoXO ziyJYCgv^F@^sbB9RIhwgXR>!+0G}$1J2a16`%3NUuyRS*fBAvDlIyo$LQ8Oq@aaiq z{E^9P7ZKIN?40ZIlyeQOJFQ$?$zYeq<+TFdlkLj5;)Wr%vD{CeYx<2GtE$hBZ!WfT zhQhtv+3rd^y+ecK95qK~>?7MGb$kK^;WF#>fi^}`i-tr%o5*fKIXlvkTd0>>$%=r??$Q2nXj<}TZ57Mnw_9}X*#$=aWpNk|`HH(5$>-P|Z+^(~#s+(?F%uE4b92Wp;B==Uf4 z?k9T*AX-$lKJh_Wlxk#X(r*#>$~6ub1|$qT|M+e?J6ghPXW915tW*E2!PsGqoR>>j zWh@NCQFPEuq@G3yYIgzggIj#hd;2Tps?%xbfn|1) zn`R9wOFb0L$0F%9V(3@y3U(d=ZEF+V(W)5H={+vW;tUpVpXD2?wwelWRs|Yg5g$?GTKa7YK#0Aj-Xj z9{K6h5@k%0iy=5gHL-2WUi@lC0xF5w>*=kXLgB$Id2H}a|(VTXAauQ z!3i(qL*QKJTI?4aPY?d}cDc|O`d=6Dwndnn`vD|N^05Oq;%%WVJc%l(T>VS-s$!$5 z%BXaY7Rb;%T&9Vv8G(|b+!7vyDU0eU?F8gNK83}QmpqvS$!sk)5LqBh^YGIhq86KPr z7FHOjg)4_0-fi!f3mx_zEsuJWZxYah$bNV?J zbd#E{Be2UME?MJ_xjbQ*-4?L$aDk|#H$%K}j8Y^-#`- zTl7?JX*8JRGP-)#=LSQZd9HT-)eh63Y%@p=_Ivsdku<=ST{#2u^ucWK@5(~@$L8jI z3^Q7IgY?+#T}>lKcte{Snvd%EZwiihW)K)1_Vq?1_7WiaqmFH2e~qtPsZ_IkqUhg@Zdvf2Zi>G^BbsTM z3%{Ra_$<5ODf? z^eG7o_Nz3stPX?Q^4<4x4spdeTLe$phlTkKAsNT(Hr3@E<{L9V{{hX;x z=$g5Ec11Pb+d+i4K+X4(u)WA`M>7mP{rQb2GN6NNT>8P}`qUd5LMlsn+#;Kk)LNEq zZwX_g5~e9fC7MSTOMMW?klfT0e+2_8&iLU<4?aiWLtfW9%=7N73_*^WfqSj#>j6^K z;sX5;G&Qe9L$7guB|CIF#VTXH_I*$g|5GHWOnLXl{CKt?(}7K?EH`*Qf(H!u_>AvSju#~Mrrl# z%e{K<7x~0+iRZT<{)KT>FC)AB;Y%l*@Y-X_kMuU_v2?Fs>{$C2Qjzo(+^tWO;=0V5 zksb^)e(q)5nYkp#*bs2TK-4RV@d-r%KeqI8awHo`$HLXAKtqLw{OPQu~KIuNXUuQBH?rhx7a# zpR_>_`DyM%OPR^KM4cWB4fxnaykkzjQrPZc^xmoiRCQyrR_p&pDBz$X<8i5KI^e!f*6MIkG^(PtJnftNGmNU z?rd0`GqT9_$us)O+S|3afwyfN-Aj}ZyR?*P&dCDK!7l^NJY+Q@2U-QYT(Jsk9_tJ6 zv^PzpO?|>ydn9jJfrr>&RlwfCIj2KM*NIB>%8`xMDGf?;R8m{W*2V5y_#qo> zj4-V}n}f!3sT(QP5y|l^;{}HK8${KD4rnl4 zJu5c1Y+s6QXyK*0V?aoo>zQMOI_d^oYFP5$O>G!_jG?0(57&ruvg6!1nhAc{G_xqM zkrRm&xsB=`7Gsfi@YD6q`a7y;n4f@?cl5PL_EPM9Z1+tI^KV+|xQ=s_Z{Bi=FL}pH za}i?B&o7zrALMIqce_WK3R6lOQGZE73p#2GPvcVn2pY;{!xw8XhO?OeIzFA)3T|B_ z{$NOM3BRxO2__-DUkzG zrDG6Z(=M<&a!5*-ps|C6b~?FEcy_+!S|&%>9R@@DM!_2Im}uzUK#`a1Y+@#uyuEhl z_aS;;5E+dizx?RNSav3whdHrNl*xs2S1}yv1Xu>IkG`p|vRZL1)p2#!xnAuowGgL3 zBb~QT%3*n7Yor{~moFhd>2_ee9VM16(&R7KDwyRWZx&nlD;rJW(O>P?(w3a*f~B1> zg~}9Hw7>qdGI>7}(6IroKMvO>Z^x4HQP|iW(`$QHkleyj#?CrjTox*;ksTSI2)41_ zJHq!lIAT3onm4!Oq*8lpzi5_0G}+Ki7+46WSU6@#O-=1q^11;d(FMs)T^yh?Pa3l$ zAZMx|+R!?9Sbmb$K@9KI8|a!2r{CV`+cDnZaH?0qJ6`@3kC_jT`*B(gD370^-PB6c@iGV9T{)pQwq$#&SvOsN~z`; zNYitJnG^6y`4k(ktl(O*J82Y;z69T(@Ldp8i1X+x(YXxtb_q&3vUjlqCoHxap&@=a ziMFjabLTG19IY-lP^_9DnwL+Uk@$_GkWRyld{jbL-do2CnKX+;Ugj#fSN8AwnrzG!<~BMfJg6K7mOGM(tNwDL^w_Ub+pES**AsIXr+^ed-J{6XfbN$V>`df)(D*kHc{K3SOQ+ zs!}FLdv>TO;g&)cin^=%kB;!j@8?+E-!~4NN9NCG*1YB)&pqN-QJC1c`66}fG(Mup zs4$7c2&a(FNr1t4*UpYUv!FgvGNtL_y4g-&%9}V*U=zN787SgF^iC(YP0p1XHELZ3 z`oM>_vUAI%Pz2i*M1@&fn)qEXbRyihvLD2mC$^Vx;S7r7h>mB?+h(c55O+J6BJ!jL zRh8Q$=N5dsh5qIq>e&aL=8Pftnh~TjlP-d1P~Wu6G0EuS$kXl`5sT(QoHk+Sxj~X} zCXev6P>0V6xa;P)k{Rr!O!P|JmcIkRyM*+Ll=h&UMCk;Q&Saj_fw9VJEB|n6)WI07 z?DKp=#7Ra=gE&jVgz;40&PL^{oC3DOM38}OJWXk88zjy%y39^`lImaq=EBb5b8Ff? zoeUZObhvpO2O*9y6DJWcT2F$E*t@<@G7G;r8Oy8Q`5lvm9&uk^P~=JMOpVC39o6$YzPYDM^A+2!tG-MH$QPm{Fcy0Gf_iZl6B6vEzSwfA?^|e9D8{wOV z9~H2V(cLE5b4KTLRMUp>X}Ze0{o9tkS6M6hT(`M8VVef#2{D_+GS60^BY8X|q{DN| zVj!T)PY=%UX{@7zgGtXVGf34JIBk|>rFERv&uO!5rudp6ng}EF>tFZM+aF&qHD8lq zUR~`l%6MJVy4T{=3A$)J_9mNc$7-@4Z0hgNk)eB5@)ZhaI&mAHtaOVe41S7=dgIy2 z-+|m`nMv5mG(R0?#Z7c}nsPjGe4QHEj~3da??cfoWWPAkz^cipStyC!L-3=<;u-qm z5fPJ+4mo0wz!5?c-G`d6L5u<|3&VkRWnj%h>!BD6l2I_875*h;cGK;@`h|RvgDYOU z(l!Ke>-k&1=oC6YZ{nL~BqRhf==0!y=QJk%n>+E`lK?<6n@7X%+b#?q+n<~am)^yf zwD*zMzHo{$q)#9JYzF4sFf%zjf#O+Nw_m?v(($02d--f~;lyY-d1_k=y7z9X-y6*v*zJYNvaBx;eRww@Yzg)w-LB&G__bt!0%Y*|z{|%w z_v=>ygy@UiM2l=4L|&>xTyDST6?>pbcC`>8dlrD7-|*#^5P{4QYlu=j-G#RR@w&Nv zmFi5(CLrKsa9HGF-GwfJhH})!ei6a82BM)L=_f3U2cK45rQhXBR505t-t;aME2qIs zt$8qrm}j_8s4K2Geb_wb_i5~*Q;u);TIA*lv^z*HRCpnSGi&(kKAkJcKrzFdSmph) zP%swAbHt3FW|(uY$VxCva|Hi}O={!7&~X-b!Nf0TNU)-@l3zc4mnwV8-0(brnrhGikB+-xg$d-3z=?LivB`AA> z{tvM2+vhYlR)@+BXnr)-GMyxg&Y~`R6FS0 ztyfIC;FMrB8`%l~$1Q7>F!+`@@vzSPr zbZ%jnP(&@la@_qBW0wfn$pEPT(~5+YtR{6>a)$Xh;qr_f?w2<^Z>Anw_kL@J;s{at zBY&6Xi9X_$O4qE=NiK+f7`v~BOele}v6$MBq*-@`r2$e6QL^~yG}hJ``_bcPhKUgj znkfF=W+)f;o>exzk1c;zP!C}CT9-mDMi$;n_vHvU|rM_`*W#Qv!s9gMNRPU zC`!vob;F*f9O}~mMSI(LZW+2kTdC-CPDOtnD+6e8y=?I=P&3y8DS6Z2Cpq{6@pZT_ zIV~?}Ko>4y)FOCVD)~Tp>3Kx*dcSEXjW# zre6wUgHOG$bQeM%w^{|M9F9~E#tF4eazo?{PI%F@?G_OTQa-c06P`T@G5U>Hf1omsZ-{i9^)(mF>e8a+{j8$aaFME^wG+)PB z1aUIX+@D^+xx$OCww`r6$JTZpG)NLe|F~$p&QMsatHFX8;O^2OESkK+{mJmVJe6X} zObq%ZLd;aSGDx0wFe0$Q#yTCrF6ccZQi8Ew`N@0KP@zmd;yycsxH-ECdjc)Xz52;EzJ15gB0l)%+m9s#K^&|qzk@G6 zU%za8j<~zAfAK0-wUZ&6B-06G*D=rS!W8c+S$~L;{l!mz$AX}U6e>;8MiHG5_3)_> zqNfFJeGJlxr)b@E&ZOX9)4p2yY*VLNWq_AHQD;)0OF-PVJyT&}>XZe`B3{Cm4ZHFn zF$be0yae#h?=s$AXk~O|##1bVymIs*ZNadI24bfqth});x7yp7lcK~@48fb=HdZY5 zr)Y){bIKbp%~nSFHARO+!F}!gP(kjs=lFc4Mi}pUSoDZ4tIu-%i0cHG_o;ks-$+?- zJ8)e`k9#w)ArtrmdzO29aYWt~sr-$g#DJ=o3QVJeg@>zgZk*}qsG(GR+j~!B1o;U) zthI6_6_Zx??H}tQNFl_MRKYQe{mpNqwdJgWe@k{#XUZ5xR3XF_d~(2Caf{zh)vkD~-fgeTdt>XzWOU`XKa zC~uFA z!vXEpG5V)r{51Th?Y?s9T&Eb9}hi+nV**ewB>VX{fA#;Q4$kyh{px z{jj$ma58px6J=suC>rrSLaBY~eZ8B72oF=N>I%gXXM?ly_q%vEjH>U(ycUy-Z((?g zp(C?0_8z)98CGM&50&)sAGV)(jyolEgNZw0YcGXKY9dU4=+kW4@lLKmk@6tZ;8P2(B#hUnCI!cc^I-tzn~=wEOIc$-HGt*hy5H$ z=hkz7;dE_>&QB>w_W3J%h9Q$^squAFd;HKZvU`l&SM?oOPRW?n$i0 zE#)HRW5N}W{=8m0)neiM^rqVHU9KB}=MIz}A$bX8dqg6tt2jo8^Jpp(F z`@Djl_`su_IK%KzKE|!7^&_}h`Rm#_4&uRQi7K7pM3o|Q86rW_$#9& zOyNea7#L5!tfU|X)JtHi@zHTKw0+HNtyLn+%EJsA?CjVv0?f2b>_79J!Ipe3VF}bN zJlGZWF6sX;y&cDt8WF5%d$OjvxXMpMq_jp#ZF-JeJ4!!HmSz(O8{MP!si1EUr@x>v z!mUS%)(}B;2qhE;ZxwDt=sU8K%X*0CZx=F%Z@}o&W$!usO|9ty*!=>x?V+~_B5)S| zT4d#Z7vcKi)BDR<#FBnVnnX^Co1ugEG*w90EDJ)s?_`*1rHC4Qke4dl_1?hJ$CU1# ze_5zfQcN{u4iW$UAu$*#PtG`8`V0To^K3*?a_0WEY=&v;Pb0uDA1hwR$Fn!Pj$)}g zj!#{MzeeeO0KYc^_RiIDNd_Wi8HlC|^9;y!>Y^95qI`P9rw;A}gnUN^lCYA>@nPxN zWViasdiX(dY<`S|;{1dyw<47H7u+&uvv07Q>q`c?gPu;v&v!>}nP2I5-lZ@5S3Vst z-&1#3axM+?dg#TZqN-5i)PK4N(}FAr^32*4j{iB>vAEl$VI z5br+%$QoX426^`^Z5wJ*4)~bGYv>K19iyh4`?+Ztc>{P$w3j zrhgp}z=99mm}1}r&()ze97JY2s`JC`4@1`G*h)qV;#-%B3j9yE^lsLc?+d}r8(LA& zn==Hza_*aukVd7O&jAZ!_oA%y%Z*s+?=O&Og+DB_yP^Y4DS^?3vX~FeH(bBLOvB!` z1MjC1t~Wk~%x*N8H;Qbm(;T$G1D82ZST&m{F6kRme9yA7dUTPI!vdFfFz0?fZi3qz zi?hd1G2dgA_b^L#JV+4xHjLAWMHnZa`Wn%AQ_0ECspA5TxlUe`#oyzF<)eS!;;L#b zJv_<8`Ux5l5!uQZWLr)GD&pip2<`$GE6g(DS&1C(ZL59 z6utV^DreDM@ri_qQ7|VLH(b~HX#dsnByeeh*heqgx~N)^E9Fc1Mbxtj#t-EEfai>|op3kr0`BR?O4vWPUG@G#|tWY;N*;)P~?G*7F zA>{_Y3^l)}W(4pkM0I9)d2QQQ?wpa;v(ywp9jq}((5b7##HNb>sU9$glA3oDKoomN zLAr8FfOx>)sLb~fy>v1zT+aPjv@p^go?hs>16NQi08p&}=Kp`m+^@>_Xl0>}1m_`X+= ziWQHFpfO*opNmAijXd5)L`O0TzSfddC6}ubv>YZK^1oPS4wBwL#eck?Mhc7JHKat3 zG?rPFx?&7g4@?kZNAa;%kARt_GB?F*%ct{^IzCBWSottt9J#D0_cr$xY2{8zurfO` zSD^MW@~D)vulUeC6?k&?mpiRc1t=jsh69)ZPoBW@zRr?*w%~Dz7^mm?dyHT8R(SNb z=GxVFO5;sr0 z)Yn0um;i!_gk(zA${oVWImSv_T2FJn(4Gy3$FLmUcc)I4`DlJt-xj5!4w&DWhOqDX zq80}AN!SEQXVgEPC5+4|=u~|FQR^!okPv9dctUCA5NvT^hwV6+AC>InxVo|>j}}jz z#(~ecJo~oe>-*b=rB!d+pYOf^4`pI5DYBL2Goi_Ch!JK1R+QZLoG)L5!Y(4UV}$ZT zM-@#z9KOAumGLs!E&DNxcr%OmX<1}tq$ing`D^p}7j!c*Yjaz3y!9Q+;ioWBc2!EX zwooDu8ZIKrYRMV^Du#47srUEfjM_~+kf>L+M$)V#7e3?lRP6Ppf8!;cUj?s+DaIWB z-4tsAAjRa<*M9!53`%A~At_qjr7|O6&A}L)#|=RP$Z92r%oUuVOi9C9^S`5b~61@1f)q|mL@G8Sn-dQL|ANc2(hL=yo34vg78 znHR0qa~AW0Fg#$gcI}Ic+23Mn^`wy3v%5e+W~+f*4ONuUNB(@imy>0zfpoAGA~Z|2 ztF{dffe=1$KO4c#$Dc;RftoZd(%<5gU##_D@D`4Tzf3PtC&Ap6rZI|U5w;c4ddtMc z^~U2`xm#R<68-}+5M2tr6+V1t(DF!CWuOT2d9-eew1YM=U zLksuncy+ZCe2l1K*MR3EMgpcC=DDfWW#X_ERTQDGE2@1;z~TFx{mvWCIO10)cc=HE z7Z|M1b*>MkA)BhC66KF5D;1_?N=pXcj!8;Agt`+v@fp>^B+RI6R%f+OIf#jScqw)L zq@;_-JR?z2KgVh~<0?~i0f+S*3Lnn45!Ylz#)uJ5Jo{&@kd!j(vAeX%5`$P4hR_k; zA`-)1C2fntS*r7=ez&See|10MLXjJ}qH7`ZZR+&BE(_2k@zj^3uw4-@LVN68qsU_} o;!XbgZUW<92RTp8g`dPiHDP({Yl-as{HH)cMpe2((k$@*0H^S0jQ{`u literal 0 HcmV?d00001 diff --git a/medicare/assets/wash_hands.png b/medicare/assets/wash_hands.png new file mode 100644 index 0000000000000000000000000000000000000000..9193c0ec9a62f56ef1fcb3509d2b82fdfbb1d373 GIT binary patch literal 29669 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�QrM)(!MFAAW&v_Y~6JK9d+NmJv5y{Uft|W=|{b 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 b+z|K=2`zAyNqw9g00000NkvXXu0mjfptJ2I literal 0 HcmV?d00001 diff --git a/medicare/ios/.gitignore b/medicare/ios/.gitignore new file mode 100644 index 0000000..e96ef60 --- /dev/null +++ b/medicare/ios/.gitignore @@ -0,0 +1,32 @@ +*.mode1v3 +*.mode2v3 +*.moved-aside +*.pbxuser +*.perspectivev3 +**/*sync/ +.sconsign.dblite +.tags* +**/.vagrant/ +**/DerivedData/ +Icon? +**/Pods/ +**/.symlinks/ +profile +xcuserdata +**/.generated/ +Flutter/App.framework +Flutter/Flutter.framework +Flutter/Flutter.podspec +Flutter/Generated.xcconfig +Flutter/app.flx +Flutter/app.zip +Flutter/flutter_assets/ +Flutter/flutter_export_environment.sh +ServiceDefinitions.json +Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!default.mode1v3 +!default.mode2v3 +!default.pbxuser +!default.perspectivev3 diff --git a/medicare/ios/Flutter/AppFrameworkInfo.plist b/medicare/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 0000000..6b4c0f7 --- /dev/null +++ b/medicare/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 8.0 + + diff --git a/medicare/ios/Flutter/Debug.xcconfig b/medicare/ios/Flutter/Debug.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/medicare/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/medicare/ios/Flutter/Release.xcconfig b/medicare/ios/Flutter/Release.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/medicare/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/medicare/ios/Runner.xcodeproj/project.pbxproj b/medicare/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..86e9959 --- /dev/null +++ b/medicare/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,506 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 97C146F11CF9000F007C117D /* Supporting Files */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; + 97C146F11CF9000F007C117D /* Supporting Files */ = { + isa = PBXGroup; + children = ( + ); + name = "Supporting Files"; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1020; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.medicare; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.medicare; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.medicare; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/medicare/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/medicare/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/medicare/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/medicare/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/medicare/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..a28140c --- /dev/null +++ b/medicare/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/medicare/ios/Runner.xcworkspace/contents.xcworkspacedata b/medicare/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/medicare/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/medicare/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/medicare/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/medicare/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/medicare/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/medicare/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/medicare/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/medicare/ios/Runner/AppDelegate.swift b/medicare/ios/Runner/AppDelegate.swift new file mode 100644 index 0000000..70693e4 --- /dev/null +++ b/medicare/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import UIKit +import Flutter + +@UIApplicationMain +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d36b1fa --- /dev/null +++ b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 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 literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..f091b6b0bca859a3f474b03065bef75ba58a9e4c GIT binary patch literal 1588 zcmV-42Fv-0P)C1SqPt}wig>|5Crh^=oyX$BK<}M8eLU3e2hGT;=G|!_SP)7zNI6fqUMB=)y zRAZ>eDe#*r`yDAVgB_R*LB*MAc)8(b{g{9McCXW!lq7r(btRoB9!8B-#AI6JMb~YFBEvdsV)`mEQO^&#eRKx@b&x- z5lZm*!WfD8oCLzfHGz#u7sT0^VLMI1MqGxF^v+`4YYnVYgk*=kU?HsSz{v({E3lb9 z>+xILjBN)t6`=g~IBOelGQ(O990@BfXf(DRI5I$qN$0Gkz-FSc$3a+2fX$AedL4u{ z4V+5Ong(9LiGcIKW?_352sR;LtDPmPJXI{YtT=O8=76o9;*n%_m|xo!i>7$IrZ-{l z-x3`7M}qzHsPV@$v#>H-TpjDh2UE$9g6sysUREDy_R(a)>=eHw-WAyfIN z*qb!_hW>G)Tu8nSw9yn#3wFMiLcfc4pY0ek1}8(NqkBR@t4{~oC>ryc-h_ByH(Cg5 z>ao-}771+xE3um9lWAY1FeQFxowa1(!J(;Jg*wrg!=6FdRX+t_<%z&d&?|Bn){>zm zZQj(aA_HeBY&OC^jj*)N`8fa^ePOU72VpInJoI1?`ty#lvlNzs(&MZX+R%2xS~5Kh zX*|AU4QE#~SgPzOXe9>tRj>hjU@c1k5Y_mW*Jp3fI;)1&g3j|zDgC+}2Q_v%YfDax z!?umcN^n}KYQ|a$Lr+51Nf9dkkYFSjZZjkma$0KOj+;aQ&721~t7QUKx61J3(P4P1 zstI~7-wOACnWP4=8oGOwz%vNDqD8w&Q`qcNGGrbbf&0s9L0De{4{mRS?o0MU+nR_! zrvshUau0G^DeMhM_v{5BuLjb#Hh@r23lDAk8oF(C+P0rsBpv85EP>4CVMx#04MOfG z;P%vktHcXwTj~+IE(~px)3*MY77e}p#|c>TD?sMatC0Tu4iKKJ0(X8jxQY*gYtxsC z(zYC$g|@+I+kY;dg_dE>scBf&bP1Nc@Hz<3R)V`=AGkc;8CXqdi=B4l2k|g;2%#m& z*jfX^%b!A8#bI!j9-0Fi0bOXl(-c^AB9|nQaE`*)Hw+o&jS9@7&Gov#HbD~#d{twV zXd^Tr^mWLfFh$@Dr$e;PBEz4(-2q1FF0}c;~B5sA}+Q>TOoP+t>wf)V9Iy=5ruQa;z)y zI9C9*oUga6=hxw6QasLPnee@3^Rr*M{CdaL5=R41nLs(AHk_=Y+A9$2&H(B7!_pURs&8aNw7?`&Z&xY_Ye z)~D5Bog^td-^QbUtkTirdyK^mTHAOuptDflut!#^lnKqU md>ggs(5nOWAqO?umG&QVYK#ibz}*4>0000U6E9hRK9^#O7(mu>ETqrXGsduA8$)?`v2seloOCza43C{NQ$$gAOH**MCn0Q?+L7dl7qnbRdqZ8LSVp1ItDxhxD?t@5_yHg6A8yI zC*%Wgg22K|8E#!~cTNYR~@Y9KepMPrrB8cABapAFa=`H+UGhkXUZV1GnwR1*lPyZ;*K(i~2gp|@bzp8}og7e*#% zEnr|^CWdVV!-4*Y_7rFvlww2Ze+>j*!Z!pQ?2l->4q#nqRu9`ELo6RMS5=br47g_X zRw}P9a7RRYQ%2Vsd0Me{_(EggTnuN6j=-?uFS6j^u69elMypu?t>op*wBx<=Wx8?( ztpe^(fwM6jJX7M-l*k3kEpWOl_Vk3@(_w4oc}4YF4|Rt=2V^XU?#Yz`8(e?aZ@#li0n*=g^qOcVpd-Wbok=@b#Yw zqn8u9a)z>l(1kEaPYZ6hwubN6i<8QHgsu0oE) ziJ(p;Wxm>sf!K+cw>R-(^Y2_bahB+&KI9y^);#0qt}t-$C|Bo71lHi{_+lg#f%RFy z0um=e3$K3i6K{U_4K!EX?F&rExl^W|G8Z8;`5z-k}OGNZ0#WVb$WCpQu-_YsiqKP?BB# vzVHS-CTUF4Ozn5G+mq_~Qqto~ahA+K`|lyv3(-e}00000NkvXXu0mjfd`9t{ literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..d0ef06e7edb86cdfe0d15b4b0d98334a86163658 GIT binary patch literal 1716 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 literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c8f9ed8f5cee1c98386d13b17e89f719e83555b2 GIT binary patch literal 1895 zcmV-t2blPYP)FQtfgmafE#=YDCq`qUBt#QpG%*H6QHY765~R=q zZ6iudfM}q!Pz#~9JgOi8QJ|DSu?1-*(kSi1K4#~5?#|rh?sS)(-JQqX*}ciXJ56_H zdw=^s_srbAdqxlvGyrgGet#6T7_|j;95sL%MtM;q86vOxKM$f#puR)Bjv9Zvz9-di zXOTSsZkM83)E9PYBXC<$6(|>lNLVBb&&6y{NByFCp%6+^ALR@NCTse_wqvNmSWI-m z!$%KlHFH2omF!>#%1l3LTZg(s7eof$7*xB)ZQ0h?ejh?Ta9fDv59+u#MokW+1t8Zb zgHv%K(u9G^Lv`lh#f3<6!JVTL3(dCpxHbnbA;kKqQyd1~^Xe0VIaYBSWm6nsr;dFj z4;G-RyL?cYgsN1{L4ZFFNa;8)Rv0fM0C(~Tkit94 zz#~A)59?QjD&pAPSEQ)p8gP|DS{ng)j=2ux)_EzzJ773GmQ_Cic%3JJhC0t2cx>|v zJcVusIB!%F90{+}8hG3QU4KNeKmK%T>mN57NnCZ^56=0?&3@!j>a>B43pi{!u z7JyDj7`6d)qVp^R=%j>UIY6f+3`+qzIc!Y_=+uN^3BYV|o+$vGo-j-Wm<10%A=(Yk^beI{t%ld@yhKjq0iNjqN4XMGgQtbKubPM$JWBz}YA65k%dm*awtC^+f;a-x4+ddbH^7iDWGg&N0n#MW{kA|=8iMUiFYvMoDY@sPC#t$55gn6ykUTPAr`a@!(;np824>2xJthS z*ZdmT`g5-`BuJs`0LVhz+D9NNa3<=6m;cQLaF?tCv8)zcRSh66*Z|vXhG@$I%U~2l z?`Q zykI#*+rQ=z6Jm=Bui-SfpDYLA=|vzGE(dYm=OC8XM&MDo7ux4UF1~0J1+i%aCUpRe zt3L_uNyQ*cE(38Uy03H%I*)*Bh=Lb^Xj3?I^Hnbeq72(EOK^Y93CNp*uAA{5Lc=ky zx=~RKa4{iTm{_>_vSCm?$Ej=i6@=m%@VvAITnigVg{&@!7CDgs908761meDK5azA} z4?=NOH|PdvabgJ&fW2{Mo$Q0CcD8Qc84%{JPYt5EiG{MdLIAeX%T=D7NIP4%Hw}p9 zg)==!2Lbp#j{u_}hMiao9=!VSyx0gHbeCS`;q&vzeq|fs`y&^X-lso(Ls@-706qmA z7u*T5PMo_w3{se1t2`zWeO^hOvTsohG_;>J0wVqVe+n)AbQCx)yh9;w+J6?NF5Lmo zecS@ieAKL8%bVd@+-KT{yI|S}O>pYckUFs;ry9Ow$CD@ztz5K-*D$^{i(_1llhSh^ zEkL$}tsQt5>QA^;QgjgIfBDmcOgi5YDyu?t6vSnbp=1+@6D& z5MJ}B8q;bRlVoxasyhcUF1+)o`&3r0colr}QJ3hcSdLu;9;td>kf@Tcn<@9sIx&=m z;AD;SCh95=&p;$r{Xz3iWCO^MX83AGJ(yH&eTXgv|0=34#-&WAmw{)U7OU9!Wz^!7 zZ%jZFi@JR;>Mhi7S>V7wQ176|FdW2m?&`qa(ScO^CFPR80HucLHOTy%5s*HR0^8)i h0WYBP*#0Ks^FNSabJA*5${_#%002ovPDHLkV1oKhTl@e3 literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..a6d6b8609df07bf62e5100a53a01510388bd2b22 GIT binary patch literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a6d6b8609df07bf62e5100a53a01510388bd2b22 GIT binary patch literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..75b2d164a5a98e212cca15ea7bf2ab5de5108680 GIT binary patch literal 3831 zcmVjJBgitF5mAp-i>4+KS_oR{|13AP->1TD4=w)g|)JHOx|a2Wk1Va z!k)vP$UcQ#mdj%wNQoaJ!w>jv_6&JPyutpQps?s5dmDQ>`%?Bvj>o<%kYG!YW6H-z zu`g$@mp`;qDR!51QaS}|ZToSuAGcJ7$2HF0z`ln4t!#Yg46>;vGG9N9{V@9z#}6v* zfP?}r6b{*-C*)(S>NECI_E~{QYzN5SXRmVnP<=gzP+_Sp(Aza_hKlZ{C1D&l*(7IKXxQC1Z9#6wx}YrGcn~g%;icdw>T0Rf^w0{ z$_wn1J+C0@!jCV<%Go5LA45e{5gY9PvZp8uM$=1}XDI+9m7!A95L>q>>oe0$nC->i zeexUIvq%Uk<-$>DiDb?!In)lAmtuMWxvWlk`2>4lNuhSsjAf2*2tjT`y;@d}($o)S zn(+W&hJ1p0xy@oxP%AM15->wPLp{H!k)BdBD$toBpJh+crWdsNV)qsHaqLg2_s|Ih z`8E9z{E3sA!}5aKu?T!#enD(wLw?IT?k-yWVHZ8Akz4k5(TZJN^zZgm&zM28sfTD2BYJ|Fde3Xzh;;S` z=GXTnY4Xc)8nYoz6&vF;P7{xRF-{|2Xs5>a5)@BrnQ}I(_x7Cgpx#5&Td^4Q9_FnQ zX5so*;#8-J8#c$OlA&JyPp$LKUhC~-e~Ij!L%uSMu!-VZG7Hx-L{m2DVR2i=GR(_% zCVD!4N`I)&Q5S`?P&fQZ=4#Dgt_v2-DzkT}K(9gF0L(owe-Id$Rc2qZVLqI_M_DyO z9@LC#U28_LU{;wGZ&))}0R2P4MhajKCd^K#D+JJ&JIXZ_p#@+7J9A&P<0kdRujtQ_ zOy>3=C$kgi6$0pW06KaLz!21oOryKM3ZUOWqppndxfH}QpgjEJ`j7Tzn5bk6K&@RA?vl##y z$?V~1E(!wB5rH`>3nc&@)|#<1dN2cMzzm=PGhQ|Yppne(C-Vlt450IXc`J4R0W@I7 zd1e5uW6juvO%ni(WX7BsKx3MLngO7rHO;^R5I~0^nE^9^E_eYLgiR9&KnJ)pBbfno zSVnW$0R+&6jOOsZ82}nJ126+c|%svPo;TeUku<2G7%?$oft zyaO;tVo}(W)VsTUhq^XmFi#2z%-W9a{7mXn{uzivYQ_d6b7VJG{77naW(vHt-uhnY zVN#d!JTqVh(7r-lhtXVU6o})aZbDt_;&wJVGl2FKYFBFpU-#9U)z#(A%=IVnqytR$SY-sO( z($oNE09{D^@OuYPz&w~?9>Fl5`g9u&ecFGhqX=^#fmR=we0CJw+5xna*@oHnkahk+ z9aWeE3v|An+O5%?4fA&$Fgu~H_YmqR!yIU!bFCk4!#pAj%(lI(A5n)n@Id#M)O9Yx zJU9oKy{sRAIV3=5>(s8n{8ryJ!;ho}%pn6hZKTKbqk=&m=f*UnK$zW3YQP*)pw$O* zIfLA^!-bmBl6%d_n$#tP8Zd_(XdA*z*WH|E_yILwjtI~;jK#v-6jMl^?<%Y%`gvpwv&cFb$||^v4D&V=aNy?NGo620jL3VZnA%s zH~I|qPzB~e(;p;b^gJr7Ure#7?8%F0m4vzzPy^^(q4q1OdthF}Fi*RmVZN1OwTsAP zn9CZP`FazX3^kG(KodIZ=Kty8DLTy--UKfa1$6XugS zk%6v$Kmxt6U!YMx0JQ)0qX*{CXwZZk$vEROidEc7=J-1;peNat!vS<3P-FT5po>iE z!l3R+<`#x|+_hw!HjQGV=8!q|76y8L7N8gP3$%0kfush|u0uU^?dKBaeRSBUpOZ0c z62;D&Mdn2}N}xHRFTRI?zRv=>=AjHgH}`2k4WK=#AHB)UFrR-J87GgX*x5fL^W2#d z=(%K8-oZfMO=i{aWRDg=FX}UubM4eotRDcn;OR#{3q=*?3mE3_oJ-~prjhxh%PgQT zyn)Qozaq0@o&|LEgS{Ind4Swsr;b`u185hZPOBLL<`d2%^Yp1?oL)=jnLi;Zo0ZDliTtQ^b5SmfIMe{T==zZkbvn$KTQGlbG8w}s@M3TZnde;1Am46P3juKb zl9GU&3F=q`>j!`?SyH#r@O59%@aMX^rx}Nxe<>NqpUp5=lX1ojGDIR*-D^SDuvCKF z?3$xG(gVUsBERef_YjPFl^rU9EtD{pt z0CXwpN7BN3!8>hajGaTVk-wl=9rxmfWtIhC{mheHgStLi^+Nz12a?4r(fz)?3A%at zMlvQmL<2-R)-@G1wJ0^zQK%mR=r4d{Y3fHp){nWXUL#|CqXl(+v+qDh>FkF9`eWrW zfr^D%LNfOcTNvtx0JXR35J0~Jpi2#P3Q&80w+nqNfc}&G0A~*)lGHKv=^FE+b(37|)zL;KLF>oiGfb(?&1 zV3XRu!Sw>@quKiab%g6jun#oZ%!>V#A%+lNc?q>6+VvyAn=kf_6z^(TZUa4Eelh{{ zqFX-#dY(EV@7l$NE&kv9u9BR8&Ojd#ZGJ6l8_BW}^r?DIS_rU2(XaGOK z225E@kH5Opf+CgD^{y29jD4gHbGf{1MD6ggQ&%>UG4WyPh5q_tb`{@_34B?xfSO*| zZv8!)q;^o-bz`MuxXk*G^}(6)ACb@=Lfs`Hxoh>`Y0NE8QRQ!*p|SH@{r8=%RKd4p z+#Ty^-0kb=-H-O`nAA3_6>2z(D=~Tbs(n8LHxD0`R0_ATFqp-SdY3(bZ3;VUM?J=O zKCNsxsgt@|&nKMC=*+ZqmLHhX1KHbAJs{nGVMs6~TiF%Q)P@>!koa$%oS zjXa=!5>P`vC-a}ln!uH1ooeI&v?=?v7?1n~P(wZ~0>xWxd_Aw;+}9#eULM7M8&E?Y zC-ZLhi3RoM92SXUb-5i-Lmt5_rfjE{6y^+24`y$1lywLyHO!)Boa7438K4#iLe?rh z2O~YGSgFUBH?og*6=r9rme=peP~ah`(8Zt7V)j5!V0KPFf_mebo3z95U8(up$-+EA^9dTRLq>Yl)YMBuch9%=e5B`Vnb>o zt03=kq;k2TgGe4|lGne&zJa~h(UGutjP_zr?a7~#b)@15XNA>Dj(m=gg2Q5V4-$)D|Q9}R#002ovPDHLkV1o7DH3k3x literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..c4df70d39da7941ef3f6dcb7f06a192d8dcb308d GIT binary patch literal 1888 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 iW8Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 0000000..89c2725 --- /dev/null +++ b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/medicare/ios/Runner/Base.lproj/LaunchScreen.storyboard b/medicare/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..f2e259c --- /dev/null +++ b/medicare/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/medicare/ios/Runner/Base.lproj/Main.storyboard b/medicare/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 0000000..f3c2851 --- /dev/null +++ b/medicare/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/medicare/ios/Runner/Info.plist b/medicare/ios/Runner/Info.plist new file mode 100644 index 0000000..e73ba3e --- /dev/null +++ b/medicare/ios/Runner/Info.plist @@ -0,0 +1,45 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + medicare + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UIViewControllerBasedStatusBarAppearance + + + diff --git a/medicare/ios/Runner/Runner-Bridging-Header.h b/medicare/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 0000000..308a2a5 --- /dev/null +++ b/medicare/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/medicare/lib/components/bottom_button.dart b/medicare/lib/components/bottom_button.dart new file mode 100644 index 0000000..88c497e --- /dev/null +++ b/medicare/lib/components/bottom_button.dart @@ -0,0 +1,28 @@ +import 'package:flutter/material.dart'; + +import 'package:medicare/screens/constants.dart'; + +class BottomButton extends StatelessWidget { + BottomButton({@required this.onTap, @required this.buttonTitle}); + + final Function onTap; + final String buttonTitle; + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: onTap, + child: Container( + child: Center( + child: Text( + buttonTitle, + style: kLargeButtonTextStyle, + ), + ), + color: kBottomContainerColor, + width: double.infinity, + height: kBottomContainerHeight, + ), + ); + } +} diff --git a/medicare/lib/components/icon_content.dart b/medicare/lib/components/icon_content.dart new file mode 100644 index 0000000..727c822 --- /dev/null +++ b/medicare/lib/components/icon_content.dart @@ -0,0 +1,31 @@ +import 'package:medicare/screens/constants.dart'; +import 'package:flutter/material.dart'; + +class IconContent extends StatelessWidget { + IconContent({this.icon, this.label, this.labelColor}); + + final IconData icon; + final String label; + final Color labelColor; + + @override + Widget build(BuildContext context) { + return Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Icon( + icon, + size: 80.0, + color: Colors.white, + ), + SizedBox( + height: 15.0, + ), + Text( + label, + style: kLabelTextStyle.copyWith(color: labelColor), + ) + ], + ); + } +} diff --git a/medicare/lib/components/reusable_card.dart b/medicare/lib/components/reusable_card.dart new file mode 100644 index 0000000..d620611 --- /dev/null +++ b/medicare/lib/components/reusable_card.dart @@ -0,0 +1,23 @@ +import 'package:flutter/material.dart'; + +class ReusableCard extends StatelessWidget { + ReusableCard({@required this.color, this.cardChild, this.onPress}); + + final Color color; + final Widget cardChild; + final Function onPress; + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: onPress, + child: Card( + child: Padding( + padding: EdgeInsets.all(16.0), + child: cardChild, + ), + color: color, + ), + ); + } +} diff --git a/medicare/lib/components/rounded_button.dart b/medicare/lib/components/rounded_button.dart new file mode 100644 index 0000000..f311d54 --- /dev/null +++ b/medicare/lib/components/rounded_button.dart @@ -0,0 +1,25 @@ +import 'package:flutter/material.dart'; + +import 'package:medicare/screens/constants.dart'; + +class RoundIconButton extends StatelessWidget { + RoundIconButton({@required this.icon, @required this.onPressed}); + + final IconData icon; + final Function onPressed; + + @override + Widget build(BuildContext context) { + return RawMaterialButton( + elevation: 0.0, + child: Icon(icon,color: Colors.white,), + onPressed: onPressed, + constraints: BoxConstraints.tightFor( + width: 56.0, + height: 56.0, + ), + shape: CircleBorder(), + fillColor: kRoundedButtonBackgroundColor, + ); + } +} diff --git a/medicare/lib/config/palette.dart b/medicare/lib/config/palette.dart new file mode 100644 index 0000000..decb6e0 --- /dev/null +++ b/medicare/lib/config/palette.dart @@ -0,0 +1,5 @@ +import 'package:flutter/material.dart'; + +class Palette { + static const Color primaryColor = Color(0xFF473F97); +} \ No newline at end of file diff --git a/medicare/lib/config/styles.dart b/medicare/lib/config/styles.dart new file mode 100644 index 0000000..4282e1f --- /dev/null +++ b/medicare/lib/config/styles.dart @@ -0,0 +1,19 @@ +import 'package:flutter/material.dart'; + +class Styles { + static const buttonTextStyle = TextStyle( + fontSize: 16.0, + fontWeight: FontWeight.w600, + ); + + static const chartLabelsTextStyle = TextStyle( + color: Colors.grey, + fontSize: 14.0, + fontWeight: FontWeight.w500, + ); + + static const tabTextStyle = TextStyle( + fontSize: 16.0, + fontWeight: FontWeight.w600, + ); +} diff --git a/medicare/lib/constants.dart b/medicare/lib/constants.dart new file mode 100644 index 0000000..4f6585a --- /dev/null +++ b/medicare/lib/constants.dart @@ -0,0 +1,36 @@ +import 'package:flutter/material.dart'; + +const kSendButtonTextStyle = TextStyle( + color: Colors.lightBlueAccent, + fontWeight: FontWeight.bold, + fontSize: 18.0, +); + +const kMessageTextFieldDecoration = InputDecoration( + contentPadding: EdgeInsets.symmetric(vertical: 10.0, horizontal: 20.0), + hintText: 'Type your message here...', + border: InputBorder.none, +); + +const kMessageContainerDecoration = BoxDecoration( + border: Border( + top: BorderSide(color: Colors.lightBlueAccent, width: 2.0), + ), +); + +const kTextFieldDecoration = InputDecoration( + hintText: 'Enter a value', + contentPadding: + EdgeInsets.symmetric(vertical: 10.0, horizontal: 20.0), + border: OutlineInputBorder( + borderRadius: BorderRadius.all(Radius.circular(32.0)), + ), + enabledBorder: OutlineInputBorder( + borderSide: BorderSide(color: Colors.blueAccent, width: 1.0), + borderRadius: BorderRadius.all(Radius.circular(32.0)), + ), + focusedBorder: OutlineInputBorder( + borderSide: BorderSide(color: Colors.blueAccent, width: 2.0), + borderRadius: BorderRadius.all(Radius.circular(32.0)), + ), +); \ No newline at end of file diff --git a/medicare/lib/data/data.dart b/medicare/lib/data/data.dart new file mode 100644 index 0000000..96b445d --- /dev/null +++ b/medicare/lib/data/data.dart @@ -0,0 +1,7 @@ +final prevention = [ + {'assets/images/distance.png': 'Avoid close\ncontact'}, + {'assets/images/wash_hands.png': 'Clean your\nhands often'}, + {'assets/images/mask.png': 'Wear a\nfacemask'}, +]; + +final covidUSADailyNewCases = [12.17, 11.15, 10.02, 11.21, 13.83, 14.16, 14.30]; diff --git a/medicare/lib/login/auth.dart b/medicare/lib/login/auth.dart new file mode 100644 index 0000000..cb80ab7 --- /dev/null +++ b/medicare/lib/login/auth.dart @@ -0,0 +1,34 @@ +import 'dart:async'; +import 'package:firebase_auth/firebase_auth.dart'; + +abstract class BaseAuth { + Future currentUser(); + Future signIn(String email, String password); + Future createUser(String email, String password); + Future signOut(); +} + +class Auth implements BaseAuth { + final FirebaseAuth _firebaseAuth = FirebaseAuth.instance; + + Future signIn(String email, String password) async { + FirebaseUser user = (await _firebaseAuth.signInWithEmailAndPassword( + email: email, password: password)) as FirebaseUser; + return user.uid; + } + + Future createUser(String email, String password) async { + FirebaseUser user = (await _firebaseAuth.createUserWithEmailAndPassword( + email: email, password: password)) as FirebaseUser; + return user.uid; + } + + Future currentUser() async { + FirebaseUser user = await _firebaseAuth.currentUser(); + return user != null ? user.uid : null; + } + + Future signOut() async { + return _firebaseAuth.signOut(); + } +} diff --git a/medicare/lib/login/home_page.dart b/medicare/lib/login/home_page.dart new file mode 100644 index 0000000..11b19b6 --- /dev/null +++ b/medicare/lib/login/home_page.dart @@ -0,0 +1,36 @@ +import 'package:flutter/material.dart'; +import 'package:medicare/login/auth.dart'; + +class HomePage extends StatelessWidget { + HomePage({this.auth, this.onSignOut}); + final BaseAuth auth; + final VoidCallback onSignOut; + + @override + Widget build(BuildContext context) { + void _signOut() async { + try { + await auth.signOut(); + onSignOut(); + } catch (e) { + print(e); + } + } + + return new Scaffold( + appBar: new AppBar( + actions: [ + new FlatButton( + onPressed: _signOut, + child: new Text('Logout', + style: new TextStyle(fontSize: 17.0, color: Colors.white))) + ], + ), + body: new Center( + child: new Text( + 'Welcome', + style: new TextStyle(fontSize: 32.0), + ), + )); + } +} diff --git a/medicare/lib/login/root_page.dart b/medicare/lib/login/root_page.dart new file mode 100644 index 0000000..7e85909 --- /dev/null +++ b/medicare/lib/login/root_page.dart @@ -0,0 +1,53 @@ +import 'package:flutter/material.dart'; +import 'package:medicare/login/auth.dart'; +import 'package:medicare/screens/login_page.dart'; +import 'package:medicare/login/home_page.dart'; + +class RootPage extends StatefulWidget { + RootPage({Key key, this.auth}) : super(key: key); + final BaseAuth auth; + + @override + State createState() => new _RootPageState(); +} + +enum AuthStatus { + notSignedIn, + signedIn, +} + +class _RootPageState extends State { + AuthStatus authStatus = AuthStatus.notSignedIn; + + initState() { + super.initState(); + widget.auth.currentUser().then((userId) { + setState(() { + authStatus = + userId != null ? AuthStatus.signedIn : AuthStatus.notSignedIn; + }); + }); + } + + void _updateAuthStatus(AuthStatus status) { + setState(() { + authStatus = status; + }); + } + + @override + Widget build(BuildContext context) { + switch (authStatus) { + case AuthStatus.notSignedIn: + return new LoginPage( + title: 'Flutter Login', + auth: widget.auth, + onSignIn: () => _updateAuthStatus(AuthStatus.signedIn), + ); + case AuthStatus.signedIn: + return new HomePage( + auth: widget.auth, + onSignOut: () => _updateAuthStatus(AuthStatus.notSignedIn)); + } + } +} diff --git a/medicare/lib/main.dart b/medicare/lib/main.dart new file mode 100644 index 0000000..9d41cf4 --- /dev/null +++ b/medicare/lib/main.dart @@ -0,0 +1,25 @@ +import 'package:flutter/material.dart'; +import 'package:medicare/screens/home.dart'; +import 'package:medicare/screens/medi_home.dart'; +import 'package:medicare/screens/ordermedicine.dart'; + + + + +void main() { + runApp(MyApp()); +} + +class MyApp extends StatelessWidget { + @override + Widget build(BuildContext context) { + return MaterialApp( + theme: ThemeData( + primarySwatch: Colors.blue, + primaryColor: Colors.blue, + visualDensity: VisualDensity.adaptivePlatformDensity, + ), + home: Home(), + ); + } +} diff --git a/medicare/lib/screens/appointment.dart b/medicare/lib/screens/appointment.dart new file mode 100644 index 0000000..2e64b93 --- /dev/null +++ b/medicare/lib/screens/appointment.dart @@ -0,0 +1,292 @@ +import 'package:flutter/material.dart'; +import 'package:medicare/screens/input_page.dart'; +import 'package:medicare/screens/ordermedicine.dart'; +import 'package:medicare/screens/popular_list_view.dart'; +import 'package:medicare/screens/precautions.dart'; +import 'package:medicare/screens/stats_screen.dart'; + + +class Appointments extends StatefulWidget { + @override + _AppointmentsState createState() => _AppointmentsState(); +} + +class _AppointmentsState extends State { + CategoryType categoryType = CategoryType.BMI; + + bool isBmi = true; + + @override + Widget build(BuildContext context) { + return Container( + color: Colors.white70, + child: Scaffold( + backgroundColor: Colors.transparent, + body: Column( + children: [ + SizedBox( + height: MediaQuery + .of(context) + .padding + .top, + ), + getAppBarUI(), + Expanded( + child: SingleChildScrollView( + child: Container( + height: MediaQuery + .of(context) + .size + .height, + child: Column( + children: [ + getSearchBarUI(), + getCategoryUI(), + Flexible( + child: getDoctorsUI(), + ), + ], + ), + ), + ), + ), + ], + ), + ), + ); + } + + getAppBarUI() { + return Padding( + padding: const EdgeInsets.only(top: 8.0, left: 18, right: 18), + child: Row( + children: [ + Expanded( + child: Column( + mainAxisAlignment: MainAxisAlignment.end, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'MEDICURE', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 22, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + ], + ), + ), + Container( + width: 60, + height: 60, + child: Image.asset('assets/images/userImage.png'), + ) + ], + ), + ); + } + + getSearchBarUI() { + return Padding( + padding: const EdgeInsets.only(top: 8.0, left: 18), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Container( + width: MediaQuery + .of(context) + .size + .width * 0.75, + height: 64, + child: Padding( + padding: const EdgeInsets.only(top: 8, bottom: 8), + child: Container( + decoration: BoxDecoration( + color: Color(0xFFF8FAFB), + borderRadius: const BorderRadius.only( + bottomRight: Radius.circular(13.0), + bottomLeft: Radius.circular(13.0), + topLeft: Radius.circular(13.0), + topRight: Radius.circular(13.0), + ), + ), + child: Row( + children: [ + Expanded( + child: Container( + padding: const EdgeInsets.only(left: 16, right: 16), + child: TextFormField( + style: TextStyle( + fontFamily: 'WorkSans', + fontWeight: FontWeight.bold, + fontSize: 16, + color: Colors.blueAccent, + ), + keyboardType: TextInputType.text, + decoration: InputDecoration( + labelText: 'Search for Doctor', + border: InputBorder.none, + helperStyle: TextStyle( + fontWeight: FontWeight.bold, + fontSize: 16, + color: Color(0xFFB9BABC), + ), + labelStyle: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 16, + letterSpacing: 0.2, + color: Color(0xFFB9BABC), + ), + ), + onEditingComplete: () {}, + ), + ), + ), + SizedBox( + width: 60, + height: 60, + child: Icon(Icons.search, color: Color(0xFFB9BABC)), + ) + ], + ), + ), + ), + ), + const Expanded( + child: SizedBox(), + ) + ], + ), + ); + } + + getCategoryUI() { + return Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Padding( + padding: const EdgeInsets.only(top: 8.0, left: 18, right: 16), + child: Text( + 'Category', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 22, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + ), + const SizedBox( + height: 16, + ), + Padding( + padding: const EdgeInsets.only(left: 16, right: 16), + child: Row( + children: [ + getButtonUI(CategoryType.BMI, categoryType == CategoryType.BMI), + const SizedBox( + width: 16, + ), + getButtonUI(CategoryType.Medicines, + categoryType == CategoryType.Medicines), + ], + ), + ), + const SizedBox( + height: 16, + ), + // CategoryListView( + // callBack: () { + // //moveTo(); + // }, + // ), + ], + ); + } + + Widget getButtonUI(CategoryType categoryTypeData, bool isSelected) { + String txt = ''; + if (CategoryType.BMI == categoryTypeData) { + txt = 'Check your BMI'; + } else if (CategoryType.Medicines == categoryTypeData) { + txt = 'Order Medicines'; + } + return Expanded( + child: Container( + decoration: BoxDecoration( + color: isSelected ? Colors.blueAccent : Colors.white70, + borderRadius: const BorderRadius.all(Radius.circular(24.0)), + border: Border.all(color: Colors.blueAccent)), + child: Material( + color: Colors.transparent, + child: InkWell( + splashColor: Colors.white24, + borderRadius: const BorderRadius.all(Radius.circular(24.0)), + onTap: () { + setState(() { + categoryType = categoryTypeData; + isBmi = !isBmi; + }); + + Navigator.of(context).push(MaterialPageRoute( + builder: (context) => isBmi ? OrderMedicine() : InputPage() )); + }, + child: Padding( + padding: const EdgeInsets.only( + top: 12, bottom: 12, left: 18, right: 18), + child: Center( + child: Text( + txt, + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 12, + letterSpacing: 0.27, + color: isSelected ? Colors.white70 : Colors.blueAccent, + ), + ), + ), + ), + ), + ), + ), + ); + } + + getDoctorsUI() { + return Padding( + padding: const EdgeInsets.only(top: 8.0, left: 18, right: 16), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Specialists', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 22, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + Flexible( + child: PopularListView( + callBack: () { + + }, + ), + ) + ], + ), + ); + } +} + +enum CategoryType { BMI, Medicines } diff --git a/medicare/lib/screens/calculator_brain.dart b/medicare/lib/screens/calculator_brain.dart new file mode 100644 index 0000000..5783edd --- /dev/null +++ b/medicare/lib/screens/calculator_brain.dart @@ -0,0 +1,35 @@ +import 'dart:math'; + +class CalculatorBrain { + CalculatorBrain({this.height, this.weight}); + + final int height; + final int weight; + + double _bmi; + + String calculateBMI() { + _bmi = weight / pow(height / 100, 2); + return _bmi.toStringAsFixed(1); + } + + String getResult() { + if (_bmi >= 25) { + return 'Overweight'; + } else if (_bmi > 18.5) { + return 'Normal'; + } else { + return 'Underweight'; + } + } + + String getInterpretation() { + if (_bmi >= 25) { + return 'You have a higher than normal body weight. Try to exercise more.'; + } else if (_bmi >= 18.5) { + return 'You have a normal body weight. Good job!'; + } else { + return 'You have a lower than normal body weight. You can eat a bit more.'; + } + } +} diff --git a/medicare/lib/screens/category.dart b/medicare/lib/screens/category.dart new file mode 100644 index 0000000..e4ca35f --- /dev/null +++ b/medicare/lib/screens/category.dart @@ -0,0 +1,46 @@ +class Category { + Category({ + this.name = '', + this.specialist = '', + this.experience = 0, + this.rating = 0.0, + }); + + String name; + String specialist; + int experience; + double rating; + + + + + static List popularList = [ + Category( + name: 'ABC', + specialist: 'General', + experience: 25, + rating: 4.8, + ), + Category( + + name: 'BCD', + specialist: 'Heart', + experience: 30, + rating: 4.9, + ), + Category( + + name: 'DRE', + specialist: 'Dental', + experience: 18, + rating: 4.8, + ), + Category( + + name: 'GRT', + specialist:'Orthopedist', + experience: 21, + rating: 4.9, + ), + ]; +} diff --git a/medicare/lib/screens/chat.dart b/medicare/lib/screens/chat.dart new file mode 100644 index 0000000..b476437 --- /dev/null +++ b/medicare/lib/screens/chat.dart @@ -0,0 +1,201 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:medicare/constants.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:medicare/video_call/call.dart'; + + + +final _firestore = Firestore.instance; +FirebaseUser loggedInUser; + +class ChatScreen extends StatefulWidget { + static const String id = 'chat_screen'; + @override + _ChatScreenState createState() => _ChatScreenState(); +} + +class _ChatScreenState extends State { + final messageTextController = new TextEditingController(); + final _auth = FirebaseAuth.instance; + + String messageText; + @override + void initState(){ + super.initState(); + getCurrentUser(); + } + + + + void getCurrentUser() async{ + try { + final user = await _auth.currentUser(); + if (user != null) { + loggedInUser = user; + print(loggedInUser.email); + } + } + catch (e){ + print(e); + } + } + + + void messagesStream() async { + await for (var snapshot in _firestore.collection('messages').snapshots()) { + for (var message in snapshot.documents) { + print(message.data); + } + } + } + + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + leading: null, + actions: [ + IconButton( + icon: Icon(Icons.video_call), + onPressed: () { + Navigator.of(context).push(MaterialPageRoute(builder: (context) => CallPage())); + + }), + ], + title: Text('Chat'), + backgroundColor: Colors.lightBlueAccent, + ), + body: SafeArea( + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + MessagesStream(), + Container( + decoration: kMessageContainerDecoration, + child: Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Expanded( + child: TextField( + controller: messageTextController, + onChanged: (value) { + + //Do something with the user input. + messageText = value; + }, + decoration: kMessageTextFieldDecoration, + ), + ), + FlatButton( + onPressed: () { + messageTextController.clear(); + //Implement send functionality. + _firestore.collection('messages').add({ + 'text': messageText, + 'sender': loggedInUser.email, + }); + + }, + child: Text( + 'Send', + style: kSendButtonTextStyle, + ), + ), + ], + ), + ), + ], + ), + ), + ); + } +} + + +class MessagesStream extends StatelessWidget { + @override + Widget build(BuildContext context) { + return StreamBuilder( + stream: _firestore.collection('messages').snapshots(), + // ignore: missing_return + builder: (context,snapshot){ + if(!snapshot.hasData){ + return Center( + child: CircularProgressIndicator( + backgroundColor: Colors.lightBlueAccent, + ), + + ); + } + final messages = snapshot.data.documents.reversed; + List messageBubbles = []; + for(var message in messages){ + final messageText = message.data['text']; + final messageSender = message.data['sender']; + + final currentUser = loggedInUser.email; + + + final messageBubble = MessageBubble(sender: messageSender,text: messageText,isMe: currentUser == messageSender,); + + messageBubbles.add(messageBubble); + + } + return Expanded( + child: ListView( + reverse: true, + padding: EdgeInsets.symmetric(horizontal: 10.0, vertical: 20.0), + children: messageBubbles, + ), + ); + + }, + ); + } +} + + +class MessageBubble extends StatelessWidget { + + MessageBubble({this.sender,this.text,this.isMe}); + + final String sender; + final String text; + final bool isMe; + + @override + Widget build(BuildContext context) { + return Padding( + padding: EdgeInsets.all(10.0), + child: Column( + crossAxisAlignment: isMe ? CrossAxisAlignment.end : CrossAxisAlignment.start, + children: [ + Text(sender, style: TextStyle( + fontSize: 12.0, + color: Colors.black54, + ), + ), + Material( + elevation: 5.0, + borderRadius: isMe ? BorderRadius.only(topLeft: Radius.circular(30.0),bottomLeft: Radius.circular(30.0),bottomRight: Radius.circular(30.0)) : BorderRadius.only(topRight: Radius.circular(30.0),bottomLeft: Radius.circular(30.0),bottomRight: Radius.circular(30.0)), + color: isMe ? Colors.lightBlueAccent : Colors.white, + child: Padding( + padding: EdgeInsets.symmetric(vertical: 10.0,horizontal: 20.0), + child: Text('$text', + style: TextStyle( + color: isMe ? Colors.white : Colors.black54, + fontSize: 15.0, + ), + ), + ), + + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/medicare/lib/screens/constants.dart b/medicare/lib/screens/constants.dart new file mode 100644 index 0000000..976192e --- /dev/null +++ b/medicare/lib/screens/constants.dart @@ -0,0 +1,70 @@ +import 'package:flutter/material.dart'; + +const kBottomContainerHeight = 72.0; +const kPrimaryColor = Color(0xFF0A0E21); +const kAccentColor = Color(0xFFEB1555); +const kWindowBackgroundColor = Color(0xFF0A0E21); +const kActiveCardColor = Color(0xFF1D1E33); +const kInactiveCardColor = Color(0xFF111328); +const kBottomContainerColor = kAccentColor; +const kInactiveTrackColor = Color(0xFF8D8E98); +const kActiveTrackColor = Colors.white; +const kThumbColor = kAccentColor; +const kOverlayColor = Color(0x29EB1555); +const kRoundedButtonBackgroundColor = Color(0xFF1C1F32); +const kSaveButtonBackgroundColor = Color(0xFF181A2E); +const kResultTextColor = Color(0xFF24D876); +const kLabelTextColor = Color(0xFF8D8E98); +const kActiveLabelTextColor = Colors.white; +const kInactiveLabelTextColor = kLabelTextColor; + +const kAppBarTextStyle = TextStyle( + fontSize: 16.0, + fontWeight: FontWeight.w600, + fontFamily: 'NunitoBold', +); + +const kLabelTextStyle = TextStyle( + fontSize: 16.0, + color: kLabelTextColor, + fontWeight: FontWeight.w900, + fontFamily: 'NunitoExtraBold', +); + +const kLargeButtonTextStyle = TextStyle( + fontSize: 18.0, + letterSpacing: 2.0, + fontWeight: FontWeight.w800, + fontFamily: 'NunitoSemiBold', +); + +const kNumberTextStyle = TextStyle( + fontSize: 50.0, + fontWeight: FontWeight.w900, + fontFamily: 'NunitoExtraBold', + color: Colors.white, +); + +const kTitleTextStyle = TextStyle( + fontSize: 36.0, + fontWeight: FontWeight.bold, +); + +const kResultTextStyle = TextStyle( + color: kResultTextColor, + fontSize: 18.0, + fontWeight: FontWeight.w900, + fontFamily: 'NunitoExtraBold', +); + +const kBMITextStyle = TextStyle( + fontSize: 100.0, + fontFamily: 'NunitoBold', + color: Colors.white, +); + +const kBodyTextStyle = TextStyle( + fontSize: 22.0, + fontFamily: 'NunitoSemiBold', + color: Colors.white, +); diff --git a/medicare/lib/screens/home.dart b/medicare/lib/screens/home.dart new file mode 100644 index 0000000..1c57249 --- /dev/null +++ b/medicare/lib/screens/home.dart @@ -0,0 +1,58 @@ +import 'package:animated_text_kit/animated_text_kit.dart'; +import 'package:flutter/material.dart'; +import 'package:medicare/screens/login_page.dart'; + +class Home extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + body: Container( + decoration: BoxDecoration( + gradient: LinearGradient(colors: [Colors.blueAccent,Colors.white]), + ), + padding: EdgeInsets.only(top: 200.0, left: 100.0), + child: Column( + children: [ + Row( + children: [ + SizedBox( + width: 250.0, + child: ColorizeAnimatedTextKit( + + text: [ + "Medicure", + ], + textStyle: + TextStyle(fontSize: 50.0, fontFamily: "Horizon"), + colors: [ + Colors.purple, + Colors.blue, + Colors.yellow, + Colors.red, + ], + textAlign: TextAlign.start, + alignment: + AlignmentDirectional.topStart // or Alignment.topLeft + ), + ), + ], + ), + SizedBox(height: 400.0), + FlatButton( + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular( + 10.0), + ), + onPressed: () { + Navigator.of(context).push(MaterialPageRoute(builder: (context) => LoginPage())); + }, + child: Text('Get Started'), + color: Colors.blue, + textColor: Colors.white), + ], + ), + ), + ); + } +} diff --git a/medicare/lib/screens/input_page.dart b/medicare/lib/screens/input_page.dart new file mode 100644 index 0000000..b1de249 --- /dev/null +++ b/medicare/lib/screens/input_page.dart @@ -0,0 +1,262 @@ +import 'package:medicare/components/bottom_button.dart'; +import 'package:medicare/components/icon_content.dart'; +import 'package:medicare/components/reusable_card.dart'; +import 'package:medicare/components/rounded_button.dart'; +import 'package:medicare/screens/results_page.dart'; +import 'package:flutter/material.dart'; +import 'package:font_awesome_flutter/font_awesome_flutter.dart'; + +import 'calculator_brain.dart'; +import 'constants.dart'; + +enum Gender { + male, + female, +} + +class InputPage extends StatefulWidget { + @override + _InputPageState createState() => _InputPageState(); +} + +class _InputPageState extends State { + Gender selectedGender = Gender.male; + int height = 180; + int weight = 60; + int age = 20; + + @override + Widget build(BuildContext context) { + const defaultPadding = EdgeInsets.fromLTRB(16.0, 0.0, 16.0, 16.0); + + return Scaffold( + appBar: AppBar( + centerTitle: true, + title: Text( + 'BMI CALCULATOR', + style: kAppBarTextStyle, + ), + ), + body: new SingleChildScrollView( + padding: EdgeInsets.only(bottom: 16.0), + child: Column( + children: [ + Padding( + padding: EdgeInsets.all(16.0), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Expanded( + flex: 1, + child: ReusableCard( + onPress: () { + setState(() { + selectedGender = Gender.male; + }); + }, + color: selectedGender == Gender.male + ? kActiveCardColor + : kInactiveCardColor, + cardChild: IconContent( + icon: FontAwesomeIcons.mars, + label: 'MALE', + labelColor: selectedGender == Gender.male + ? kActiveLabelTextColor + : kInactiveLabelTextColor, + ), + ), + ), + Expanded( + flex: 1, + child: ReusableCard( + onPress: () { + setState(() { + selectedGender = Gender.female; + }); + }, + color: selectedGender == Gender.female + ? kActiveCardColor + : kInactiveCardColor, + cardChild: IconContent( + icon: FontAwesomeIcons.venus, + + label: 'FEMALE', + labelColor: selectedGender == Gender.female + ? kActiveLabelTextColor + : kInactiveLabelTextColor, + ), + ), + ), + ], + ), + ), + Padding( + padding: defaultPadding, + child: ReusableCard( + color: kInactiveCardColor, + cardChild: Padding( + padding: EdgeInsets.all(10.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'HEIGHT', + style: kLabelTextStyle, + ), + Row( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.baseline, + textBaseline: TextBaseline.alphabetic, + children: [ + Text( + height.toString(), + style: kNumberTextStyle, + + ), + Text( + 'cm', + style: kLabelTextStyle, + ), + ], + ), + SliderTheme( + data: SliderTheme.of(context).copyWith( + inactiveTrackColor: kInactiveTrackColor, + activeTrackColor: kActiveTrackColor, + thumbColor: kThumbColor, + overlayColor: kOverlayColor, + thumbShape: + RoundSliderThumbShape(enabledThumbRadius: 15.0), + overlayShape: + RoundSliderOverlayShape(overlayRadius: 30.0), + ), + child: Slider( + value: height.toDouble(), + min: 120.0, + max: 220.0, + onChanged: (double newValue) { + setState(() { + height = newValue.toInt(); + }); + }, + ), + ), + ]), + ), + ), + ), + Padding( + padding: defaultPadding, + child: Row( + children: [ + Expanded( + child: ReusableCard( + color: kInactiveCardColor, + cardChild: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'WEIGHT', + style: kLabelTextStyle, + ), + Text( + weight.toString(), + style: kNumberTextStyle, + ), + SizedBox(height: 10.0), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + RoundIconButton( + icon: FontAwesomeIcons.minus, + + onPressed: () { + setState(() { + weight -= 1; + }); + }, + ), + SizedBox(width: 10.0), + RoundIconButton( + icon: FontAwesomeIcons.plus, + onPressed: () { + setState(() { + weight += 1; + }); + }, + ), + ], + ) + ], + ), + ), + ), + Expanded( + child: ReusableCard( + color: kInactiveCardColor, + cardChild: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'AGE', + style: kLabelTextStyle, + ), + Text( + age.toString(), + style: kNumberTextStyle, + ), + SizedBox(height: 10.0), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + RoundIconButton( + icon: FontAwesomeIcons.minus, + onPressed: () { + setState(() { + age -= 1; + }); + }, + ), + SizedBox(width: 10.0), + RoundIconButton( + icon: FontAwesomeIcons.plus, + onPressed: () { + setState(() { + age += 1; + }); + }, + ), + ], + ) + ], + ), + ), + ), + ], + ), + ), + ], + ), + ), + bottomNavigationBar: BottomButton( + buttonTitle: 'CALCULATE YOUR BMI', + onTap: () { + CalculatorBrain calc = + CalculatorBrain(height: height, weight: weight); + + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => ResultsPage( + bmiResult: calc.calculateBMI(), + resultText: calc.getResult(), + interpretation: calc.getInterpretation(), + ), + ), + ); + }, + ), + ); + } +} diff --git a/medicare/lib/screens/login_page.dart b/medicare/lib/screens/login_page.dart new file mode 100644 index 0000000..b62d1b4 --- /dev/null +++ b/medicare/lib/screens/login_page.dart @@ -0,0 +1,171 @@ +import 'package:flutter/material.dart'; +//import 'package:medicare/login/primary_button.dart'; +import 'package:medicare/login/auth.dart'; +import 'package:medicare/screens/medi_home.dart'; + +class LoginPage extends StatefulWidget { + LoginPage({Key key, this.title, this.auth, this.onSignIn}) : super(key: key); + + final String title; + final BaseAuth auth; + final VoidCallback onSignIn; + + @override + _LoginPageState createState() => new _LoginPageState(); +} + +enum FormType { login, register } + +class _LoginPageState extends State { + static final formKey = new GlobalKey(); + + String _email; + String _password; + FormType _formType = FormType.login; + String _authHint = ''; + + bool validateAndSave() { + final form = formKey.currentState; + if (form.validate()) { + form.save(); + return true; + } + return false; + } + + void validateAndSubmit() async { + if (validateAndSave()) { + try { + String userId = _formType == FormType.login + ? await widget.auth.signIn(_email, _password) + : await widget.auth.createUser(_email, _password); + setState(() { + _authHint = 'Signed In\n\nUser id: $userId'; + Navigator.of(context).push(MaterialPageRoute(builder: (context) => MediHome())); + }); + widget.onSignIn(); + } catch (e) { + setState(() { + _authHint = 'Sign In Error\n\n${e.toString()}'; + }); + print(e); + } + } else { + setState(() { + _authHint = ''; + }); + } + } + + void moveToRegister() { + formKey.currentState.reset(); + setState(() { + _formType = FormType.register; + _authHint = ''; + }); + } + + void moveToLogin() { + formKey.currentState.reset(); + setState(() { + _formType = FormType.login; + _authHint = ''; + }); + } + + List usernameAndPassword() { + return [ + padded( + child: new TextFormField( + key: new Key('email'), + decoration: new InputDecoration(labelText: 'Email'), + autocorrect: false, + validator: (val) => val.isEmpty ? 'Email can\'t be empty.' : null, + onSaved: (val) => _email = val, + )), + padded( + child: new TextFormField( + key: new Key('password'), + decoration: new InputDecoration(labelText: 'Password'), + obscureText: true, + autocorrect: false, + validator: (val) => val.isEmpty ? 'Password can\'t be empty.' : null, + onSaved: (val) => _password = val, + )), + ]; + } + + List submitWidgets() { + switch (_formType) { + case FormType.login: + return [ + new FlatButton( + key: new Key('login'), + child:Text('Login'), + + onPressed: validateAndSubmit,), + new FlatButton( + key: new Key('need-account'), + child: new Text("Need an account? Register"), + onPressed: moveToRegister,), + ]; + case FormType.register: + return [ + new FlatButton( + key: new Key('register'), + child: Text('Create an account'), + + onPressed: validateAndSubmit), + new FlatButton( + key: new Key('need-login'), + child: new Text("Have an account? Login"), + onPressed: moveToLogin), + ]; + } + return null; + } + + Widget hintText() { + return new Container( + //height: 80.0, + padding: const EdgeInsets.all(32.0), + child: new Text(_authHint, + key: new Key('hint'), + style: new TextStyle(fontSize: 18.0, color: Colors.grey), + textAlign: TextAlign.center)); + } + + @override + Widget build(BuildContext context) { + return new Scaffold( + + backgroundColor: Colors.grey[300], + body: new Container( + padding: const EdgeInsets.only(top: 220.0,left: 16.0,right: 16.0), + child: new Column(children: [ + new Card( + child: new Column( + mainAxisSize: MainAxisSize.min, + children: [ + new Container( + padding: const EdgeInsets.all(16.0), + child: new Form( + key: formKey, + child: new Column( + crossAxisAlignment: + CrossAxisAlignment.stretch, + children: + usernameAndPassword() + submitWidgets(), + ))), + ])), + hintText() + ]))); + } + + Widget padded({Widget child}) { + return new Padding( + padding: EdgeInsets.symmetric(vertical: 8.0), + child: child, + ); + } +} diff --git a/medicare/lib/screens/medi_home.dart b/medicare/lib/screens/medi_home.dart new file mode 100644 index 0000000..75b2551 --- /dev/null +++ b/medicare/lib/screens/medi_home.dart @@ -0,0 +1,39 @@ +import 'package:flutter/material.dart'; +import 'package:liquid_swipe/liquid_swipe.dart'; +import 'package:medicare/screens/appointment.dart'; +import 'package:medicare/screens/precautions.dart'; +import 'package:medicare/screens/stats_screen.dart'; + + + +class MediHome extends StatelessWidget { + + final pages = [ + Container( + child: Appointments(), + ), + + Container( + child: Precautions(), + ), + Container( + child: StatsScreen(), + ), + ]; + + @override + Widget build(BuildContext context) { + return MaterialApp( + home: Scaffold( + body: LiquidSwipe( + pages:pages, + enableLoop: true, + fullTransitionValue: 300, + enableSlideIcon: true, + waveType: WaveType.liquidReveal, + positionSlideIcon: 0.5, + ), + ), + ); + } +} diff --git a/medicare/lib/screens/ordermedicine.dart b/medicare/lib/screens/ordermedicine.dart new file mode 100644 index 0000000..3a3ea8a --- /dev/null +++ b/medicare/lib/screens/ordermedicine.dart @@ -0,0 +1,53 @@ +import 'dart:math'; + +import 'package:flutter/material.dart'; +import 'package:google_maps_flutter/google_maps_flutter.dart'; + +class OrderMedicine extends StatefulWidget { + OrderMedicine({Key key, this.title}) : super(key:key); + + final String title; + + @override + _OrderMedicineState createState() => _OrderMedicineState(); +} + +class _OrderMedicineState extends State { + GoogleMapController _controller; + + final CameraPosition _initialPosition = CameraPosition(target: LatLng(24.903623,67.198367)); + final List markers = []; + + addMarker(cordinate){ + setState(() { + int id = Random().nextInt(100); + markers.add((Marker(position: cordinate, markerId: MarkerId(id.toString()) ))); + }); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + body: GoogleMap( + initialCameraPosition: _initialPosition, + mapType: MapType.normal, + onMapCreated: (controller){ + setState(() { + _controller = controller; + }); + }, + markers: markers.toSet(), + onTap: (cordinate){ + _controller.animateCamera(CameraUpdate.newLatLng(cordinate)); + addMarker((cordinate)); + }, + ), + floatingActionButton: FloatingActionButton( + onPressed: (){ + _controller.animateCamera(CameraUpdate.zoomOut()); + }, + child: Icon(Icons.zoom_out), + ), + ); + } +} \ No newline at end of file diff --git a/medicare/lib/screens/popular_list_view.dart b/medicare/lib/screens/popular_list_view.dart new file mode 100644 index 0000000..0d44817 --- /dev/null +++ b/medicare/lib/screens/popular_list_view.dart @@ -0,0 +1,288 @@ +import 'category.dart'; + +import 'package:flutter/material.dart'; + +class PopularListView extends StatefulWidget { + const PopularListView({Key key, this.callBack}) : super(key: key); + + final Function callBack; + @override + _PopularListViewState createState() => _PopularListViewState(); +} + +class _PopularListViewState extends State + with TickerProviderStateMixin { + AnimationController animationController; + @override + void initState() { + animationController = AnimationController( + duration: const Duration(milliseconds: 2000), vsync: this); + super.initState(); + } + + Future getData() async { + await Future.delayed(const Duration(milliseconds: 200)); + return true; + } + + @override + Widget build(BuildContext context) { + return Padding( + padding: const EdgeInsets.only(top: 8), + child: FutureBuilder( + future: getData(), + builder: (BuildContext context, AsyncSnapshot snapshot) { + if (!snapshot.hasData) { + return const SizedBox(); + } else { + return GridView( + padding: const EdgeInsets.all(8), + physics: const BouncingScrollPhysics(), + scrollDirection: Axis.vertical, + children: List.generate( + Category.popularList.length, + (int index) { + final int count = Category.popularList.length; + final Animation animation = + Tween(begin: 0.0, end: 1.0).animate( + CurvedAnimation( + parent: animationController, + curve: Interval((1 / count) * index, 1.0, + curve: Curves.fastOutSlowIn), + ), + ); + animationController.forward(); + return CategoryView( + callback: () { + widget.callBack(); + }, + category: Category.popularList[index], + animation: animation, + animationController: animationController, + ); + }, + ), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 2, + mainAxisSpacing: 32.0, + crossAxisSpacing: 32.0, + childAspectRatio: 0.8, + ), + ); + } + }, + ), + ); + } +} + +class CategoryView extends StatelessWidget { + const CategoryView( + {Key key, + this.category, + this.animationController, + this.animation, + this.callback}) + : super(key: key); + + final VoidCallback callback; + final Category category; + final AnimationController animationController; + final Animation animation; + + @override + Widget build(BuildContext context) { + return AnimatedBuilder( + animation: animationController, + builder: (BuildContext context, Widget child) { + return FadeTransition( + opacity: animation, + child: Transform( + transform: Matrix4.translationValues( + 0.0, 50 * (1.0 - animation.value), 0.0), + child: InkWell( + splashColor: Colors.transparent, + onTap: () { + callback(); + }, + child: SizedBox( + height: 200, + child: Stack( + alignment: AlignmentDirectional.bottomCenter, + children: [ + Container( + child: Column( + children: [ + Expanded( + child: Container( + decoration: BoxDecoration( + color: Color(0xFFF8FAFB), + borderRadius: const BorderRadius.all( + Radius.circular(16.0)), + // border: new Border.all( + // color: DesignCourseAppTheme.notWhite), + ), + child: Column( + children: [ + Expanded( + child: Container( + child: Column( + children: [ + Padding( + padding: const EdgeInsets.only( + top: 16, left: 16, right: 16), + child: Text( + category.name, + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 16, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + ), + Padding( + padding: const EdgeInsets.only( + top: 8, + left: 16, + right: 16, + bottom: 8), + child: Row( + mainAxisAlignment: + MainAxisAlignment + .spaceBetween, + crossAxisAlignment: + CrossAxisAlignment.center, + children: [ + Text( + '${category.experience} years', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w200, + fontSize: 12, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + Container( + child: Row( + children: [ + Text( + '${category.rating}', + textAlign: + TextAlign.left, + style: TextStyle( + fontWeight: + FontWeight.w200, + fontSize: 18, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + Icon( + Icons.star, + color: + Colors.blueAccent, + size: 20, + ), + ], + ), + ), + ], + ), + ), + Padding( + padding: const EdgeInsets.only( + top: 8, + left: 16, + right: 16, + bottom: 8), + child: Row( + children: [ + Text( + '${category.specialist}', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w200, + fontSize: 12, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + ], + ), + ), + Padding( + padding: const EdgeInsets.only( + left: 16, + right: 16, + ), + child: Row( + children: [ + FlatButton( + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular( + 10.0), + ), + onPressed: () {}, + child: Text( + 'Appointment', + style: TextStyle( + color: Colors.white), + ), + color: Colors.blueAccent, + ) + ], + ), + ), + ], + ), + ), + ), + const SizedBox( + width: 48, + ), + ], + ), + ), + ), + const SizedBox( + height: 28, + ), + ], + ), + ), + Container( + child: Padding( + padding: + const EdgeInsets.only(top: 24, right: 16, left: 16), + child: Container( + decoration: BoxDecoration( + borderRadius: + const BorderRadius.all(Radius.circular(16.0)), + boxShadow: [ + BoxShadow( + color: Colors.grey.withOpacity(0.2), + offset: const Offset(0.0, 0.0), + blurRadius: 6.0), + ], + ), + child: ClipRRect( + borderRadius: + const BorderRadius.all(Radius.circular(16.0)), + ), + ), + ), + ), + ], + ), + ), + ), + ), + ); + }, + ); + } +} diff --git a/medicare/lib/screens/precautions.dart b/medicare/lib/screens/precautions.dart new file mode 100644 index 0000000..972b8a1 --- /dev/null +++ b/medicare/lib/screens/precautions.dart @@ -0,0 +1,227 @@ +import 'package:flutter/material.dart'; +import 'package:medicare/config/palette.dart'; +import 'package:medicare/config/styles.dart'; +import 'package:medicare/data/data.dart'; +import 'package:medicare/widgets/widgets.dart'; + +class Precautions extends StatefulWidget { + @override + _PrecautionsState createState() => _PrecautionsState(); +} + +class _PrecautionsState extends State { + String _country = 'USA'; + + @override + Widget build(BuildContext context) { + final screenHeight = MediaQuery.of(context).size.height; + return Scaffold( + appBar: CustomAppBar(), + body: CustomScrollView( + physics: ClampingScrollPhysics(), + slivers: [ + _buildHeader(screenHeight), + _buildPreventionTips(screenHeight), + _buildYourOwnTest(screenHeight), + ], + ), + ); + } + + SliverToBoxAdapter _buildHeader(double screenHeight) { + return SliverToBoxAdapter( + child: Container( + padding: const EdgeInsets.all(20.0), + decoration: BoxDecoration( + color: Palette.primaryColor, + borderRadius: BorderRadius.only( + bottomLeft: Radius.circular(40.0), + bottomRight: Radius.circular(40.0), + ), + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text( + 'COVID-19', + style: const TextStyle( + color: Colors.white, + fontSize: 25.0, + fontWeight: FontWeight.bold, + ), + ), + CountryDropdown( + countries: ['CN', 'FR', 'IN', 'IT', 'UK', 'USA'], + country: _country, + onChanged: (val) => setState(() => _country = val), + ), + ], + ), + SizedBox(height: screenHeight * 0.03), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Are you feeling sick?', + style: const TextStyle( + color: Colors.white, + fontSize: 22.0, + fontWeight: FontWeight.w600, + ), + ), + SizedBox(height: screenHeight * 0.01), + Text( + 'If you feel sick with any COVID-19 symptoms, please call or text us immediately for help', + style: const TextStyle( + color: Colors.white70, + fontSize: 15.0, + ), + ), + SizedBox(height: screenHeight * 0.03), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + FlatButton.icon( + padding: const EdgeInsets.symmetric( + vertical: 10.0, + horizontal: 20.0, + ), + onPressed: () {}, + color: Colors.red, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(30.0), + ), + icon: const Icon( + Icons.phone, + color: Colors.white, + ), + label: Text( + 'Call Now', + style: Styles.buttonTextStyle, + ), + textColor: Colors.white, + ), + FlatButton.icon( + padding: const EdgeInsets.symmetric( + vertical: 10.0, + horizontal: 20.0, + ), + onPressed: () {}, + color: Colors.blue, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(30.0), + ), + icon: const Icon( + Icons.chat_bubble, + color: Colors.white, + ), + label: Text( + 'Send SMS', + style: Styles.buttonTextStyle, + ), + textColor: Colors.white, + ), + ], + ), + ], + ) + ], + ), + ), + ); + } + + SliverToBoxAdapter _buildPreventionTips(double screenHeight) { + return SliverToBoxAdapter( + child: Container( + padding: const EdgeInsets.all(20.0), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Prevention Tips', + style: const TextStyle( + fontSize: 22.0, + fontWeight: FontWeight.w600, + ), + ), + const SizedBox(height: 20.0), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: prevention + .map((e) => Column( + children: [ + Image.asset( + e.keys.first, + height: screenHeight * 0.12, + ), + SizedBox(height: screenHeight * 0.015), + Text( + e.values.first, + style: const TextStyle( + fontSize: 16.0, + fontWeight: FontWeight.w500, + ), + textAlign: TextAlign.center, + ) + ], + )) + .toList(), + ), + ], + ), + ), + ); + } + + SliverToBoxAdapter _buildYourOwnTest(double screenHeight) { + return SliverToBoxAdapter( + child: Container( + margin: const EdgeInsets.symmetric( + vertical: 10.0, + horizontal: 20.0, + ), + padding: const EdgeInsets.all(10.0), + height: screenHeight * 0.15, + decoration: BoxDecoration( + gradient: LinearGradient( + colors: [Color(0xFFAD9FE4), Palette.primaryColor], + ), + borderRadius: BorderRadius.circular(20.0), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + Image.asset('assets/images/own_test.png'), + Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Do your own test!', + style: const TextStyle( + color: Colors.white, + fontSize: 18.0, + fontWeight: FontWeight.bold, + ), + ), + SizedBox(height: screenHeight * 0.01), + Text( + 'Follow the instructions\nto do your own test.', + style: const TextStyle( + color: Colors.white, + fontSize: 16.0, + ), + maxLines: 2, + ), + ], + ) + ], + ), + ), + ); + } +} diff --git a/medicare/lib/screens/results_page.dart b/medicare/lib/screens/results_page.dart new file mode 100644 index 0000000..04c3eb9 --- /dev/null +++ b/medicare/lib/screens/results_page.dart @@ -0,0 +1,106 @@ +import 'package:medicare/components/bottom_button.dart'; +import 'package:medicare/components/reusable_card.dart'; +import 'package:flutter/material.dart'; + +import 'constants.dart'; + +class ResultsPage extends StatelessWidget { + ResultsPage( + {@required this.interpretation, + @required this.bmiResult, + @required this.resultText}); + + final String bmiResult; + final String resultText; + final String interpretation; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: Text( + 'BMI CALCULATOR', + style: kAppBarTextStyle, + ), + ), + body: SingleChildScrollView( + child: Column( + children: [ + Container( + padding: EdgeInsets.all(16.0), + alignment: Alignment.bottomLeft, + child: Padding( + padding: EdgeInsets.symmetric(vertical: 8.0), + child: Text( + 'Your Result', + style: kTitleTextStyle, + ), + ), + ), + Padding( + padding: EdgeInsets.fromLTRB(16.0, 0.0, 16.0, 32.0), + child: ReusableCard( + color: kActiveCardColor, + cardChild: Padding( + padding: EdgeInsets.all(16.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Text( + resultText.toUpperCase(), + style: kResultTextStyle, + + ), + Text( + bmiResult, + style: kBMITextStyle, + ), + Text( + 'Normal BMI range:', + style: kLabelTextStyle.copyWith( + fontSize: 20.0, + fontFamily: 'NunitoSemiBold', + ), + ), + SizedBox(height: 4.0), + Text('18,5 - 25 kg/m2', + style: kNumberTextStyle.copyWith( + fontSize: 20.0, + fontFamily: 'NunitoSemiBold', + )), + SizedBox(height: 32.0), + Text( + interpretation, + textAlign: TextAlign.center, + style: kBodyTextStyle, + ), + SizedBox(height: 32.0), + FlatButton( + color: kSaveButtonBackgroundColor, + padding: EdgeInsets.fromLTRB(50.0, 20.0, 50.0, 20.0), + child: Text('SAVE RESULT', + style: TextStyle( + color: Colors.white, + fontWeight: FontWeight.w800, + letterSpacing: 1.2, + fontFamily: 'Nunito')), + onPressed: () {}, + ) + ], + ), + ), + ), + ), + ], + ), + ), + bottomNavigationBar: BottomButton( + buttonTitle: 'RE-CALCULATE', + onTap: () { + Navigator.pop(context); + }, + ), + ); + } +} diff --git a/medicare/lib/screens/stats_screen.dart b/medicare/lib/screens/stats_screen.dart new file mode 100644 index 0000000..92966a2 --- /dev/null +++ b/medicare/lib/screens/stats_screen.dart @@ -0,0 +1,111 @@ +import 'package:bubble_tab_indicator/bubble_tab_indicator.dart'; +import 'package:flutter/material.dart'; +import 'package:medicare/config/palette.dart'; +import 'package:medicare/config/styles.dart'; +import 'package:medicare/data/data.dart'; +import 'package:medicare/widgets/widgets.dart'; + +class StatsScreen extends StatefulWidget { + @override + _StatsScreenState createState() => _StatsScreenState(); +} + +class _StatsScreenState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: Palette.primaryColor, + appBar: CustomAppBar(), + body: CustomScrollView( + physics: ClampingScrollPhysics(), + slivers: [ + _buildHeader(), + _buildRegionTabBar(), + _buildStatsTabBar(), + SliverPadding( + padding: const EdgeInsets.symmetric(horizontal: 10.0), + sliver: SliverToBoxAdapter( + child: StatsGrid(), + ), + ), + SliverPadding( + padding: const EdgeInsets.only(top: 20.0), + sliver: SliverToBoxAdapter( + child: CovidBarChart(covidCases: covidUSADailyNewCases), + ), + ), + ], + ), + ); + } + + SliverPadding _buildHeader() { + return SliverPadding( + padding: const EdgeInsets.all(20.0), + sliver: SliverToBoxAdapter( + child: Text( + 'Statistics', + style: const TextStyle( + color: Colors.white, + fontSize: 25.0, + fontWeight: FontWeight.bold, + ), + ), + ), + ); + } + + SliverToBoxAdapter _buildRegionTabBar() { + return SliverToBoxAdapter( + child: DefaultTabController( + length: 2, + child: Container( + margin: const EdgeInsets.symmetric(horizontal: 20.0), + height: 50.0, + decoration: BoxDecoration( + color: Colors.white24, + borderRadius: BorderRadius.circular(25.0), + ), + child: TabBar( + indicator: BubbleTabIndicator( + tabBarIndicatorSize: TabBarIndicatorSize.tab, + indicatorHeight: 40.0, + indicatorColor: Colors.white, + ), + labelStyle: Styles.tabTextStyle, + labelColor: Colors.black, + unselectedLabelColor: Colors.white, + tabs: [ + Text('My Country'), + Text('Global'), + ], + onTap: (index) {}, + ), + ), + ), + ); + } + + SliverPadding _buildStatsTabBar() { + return SliverPadding( + padding: const EdgeInsets.all(20.0), + sliver: SliverToBoxAdapter( + child: DefaultTabController( + length: 3, + child: TabBar( + indicatorColor: Colors.transparent, + labelStyle: Styles.tabTextStyle, + labelColor: Colors.white, + unselectedLabelColor: Colors.white60, + tabs: [ + Text('Total'), + Text('Today'), + Text('Yesterday'), + ], + onTap: (index) {}, + ), + ), + ), + ); + } +} diff --git a/medicare/lib/screens/video_call.dart b/medicare/lib/screens/video_call.dart new file mode 100644 index 0000000..465295d --- /dev/null +++ b/medicare/lib/screens/video_call.dart @@ -0,0 +1,139 @@ +import 'dart:async'; + +import 'package:agora_rtc_engine/agora_rtc_engine.dart'; +import 'package:flutter/material.dart'; +import 'package:permission_handler/permission_handler.dart'; + +import 'package:medicare/video_call/call.dart'; + +class IndexPage extends StatefulWidget { + @override + State createState() => IndexState(); +} + +class IndexState extends State { + /// create a channelController to retrieve text value + final _channelController = TextEditingController(); + + /// if channel textField is validated to have error + bool _validateError = true; + + ClientRole _role = ClientRole.Broadcaster; + + @override + void dispose() { + // dispose input controller + _channelController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: Text('Medicare '), + ), + body: Center( + child: Container( + padding: const EdgeInsets.symmetric(horizontal: 20), + height: 400, + child: Column( + children: [ + Row( + children: [ + Expanded( + child: TextField( + controller: _channelController, + decoration: InputDecoration( + errorText: + _validateError ? 'Channel name is mandatory' : null, + border: UnderlineInputBorder( + borderSide: BorderSide(width: 1), + ), + hintText: 'Channel name', + ), + )) + ], + ), + Column( + children: [ + ListTile( + title: Text(ClientRole.Broadcaster.toString()), + leading: Radio( + value: ClientRole.Broadcaster, + groupValue: _role, + onChanged: (ClientRole value) { + setState(() { + _role = value; + }); + }, + ), + ), + ListTile( + title: Text(ClientRole.Audience.toString()), + leading: Radio( + value: ClientRole.Audience, + groupValue: _role, + onChanged: (ClientRole value) { + setState(() { + _role = value; + }); + }, + ), + ) + ], + ), + Padding( + padding: const EdgeInsets.symmetric(vertical: 20), + child: Row( + children: [ + Expanded( + child: RaisedButton( + onPressed: onJoin, + child: Text('Join'), + color: Colors.blueAccent, + textColor: Colors.white, + ), + ) + ], + ), + ) + ], + ), + ), + ), + ); + } + + Future onJoin() async { + // update input validation + setState(() { + _channelController.text.isEmpty + ? _validateError = true + : _validateError = false; + }); + if (_channelController.text.isNotEmpty) { + // await for camera and mic permissions before pushing video page + await _handleCameraAndMic(); + // push video page with given channel name + await Navigator.push( + context, + MaterialPageRoute( + builder: (context) => CallPage( + channelName: _channelController.text, + role: _role, + ), + ), + ); + } + } + + Future _handleCameraAndMic() async { + await PermissionHandler().requestPermissions( + [PermissionGroup.camera, PermissionGroup.microphone], + ); + } +} +class Permissiongroup { + static var microphone; +} \ No newline at end of file diff --git a/medicare/lib/video_call/call.dart b/medicare/lib/video_call/call.dart new file mode 100644 index 0000000..420efbc --- /dev/null +++ b/medicare/lib/video_call/call.dart @@ -0,0 +1,324 @@ +import 'dart:async'; + +import 'package:agora_rtc_engine/agora_rtc_engine.dart'; +import 'package:flutter/material.dart'; + +import 'package:medicare/video_call/settings.dart'; + +class CallPage extends StatefulWidget { + /// non-modifiable channel name of the page + final String channelName; + + /// non-modifiable client role of the page + final ClientRole role; + + /// Creates a call page with given channel name. + const CallPage({Key key, this.channelName, this.role}) : super(key: key); + + @override + _CallPageState createState() => _CallPageState(); +} + +class _CallPageState extends State { + static final _users = []; + final _infoStrings = []; + bool muted = false; + + @override + void dispose() { + // clear users + _users.clear(); + // destroy sdk + AgoraRtcEngine.leaveChannel(); + AgoraRtcEngine.destroy(); + super.dispose(); + } + + @override + void initState() { + super.initState(); + // initialize agora sdk + initialize(); + } + + Future initialize() async { + if (APP_ID.isEmpty) { + setState(() { + _infoStrings.add( + 'APP_ID missing, please provide your APP_ID in settings.dart', + ); + _infoStrings.add('Agora Engine is not starting'); + }); + return; + } + + await _initAgoraRtcEngine(); + _addAgoraEventHandlers(); + await AgoraRtcEngine.enableWebSdkInteroperability(true); + VideoEncoderConfiguration configuration = VideoEncoderConfiguration(); + configuration.dimensions = Size(1920, 1080); + await AgoraRtcEngine.setVideoEncoderConfiguration(configuration); + await AgoraRtcEngine.joinChannel(null, widget.channelName, null, 0); + } + + /// Create agora sdk instance and initialize + Future _initAgoraRtcEngine() async { + await AgoraRtcEngine.create(APP_ID); + await AgoraRtcEngine.enableVideo(); + await AgoraRtcEngine.setChannelProfile(ChannelProfile.LiveBroadcasting); + await AgoraRtcEngine.setClientRole(widget.role); + } + + /// Add agora event handlers + void _addAgoraEventHandlers() { + AgoraRtcEngine.onError = (dynamic code) { + setState(() { + final info = 'onError: $code'; + _infoStrings.add(info); + }); + }; + + AgoraRtcEngine.onJoinChannelSuccess = ( + String channel, + int uid, + int elapsed, + ) { + setState(() { + final info = 'onJoinChannel: $channel, uid: $uid'; + _infoStrings.add(info); + }); + }; + + AgoraRtcEngine.onLeaveChannel = () { + setState(() { + _infoStrings.add('onLeaveChannel'); + _users.clear(); + }); + }; + + AgoraRtcEngine.onUserJoined = (int uid, int elapsed) { + setState(() { + final info = 'userJoined: $uid'; + _infoStrings.add(info); + _users.add(uid); + }); + }; + + AgoraRtcEngine.onUserOffline = (int uid, int reason) { + setState(() { + final info = 'userOffline: $uid'; + _infoStrings.add(info); + _users.remove(uid); + }); + }; + + AgoraRtcEngine.onFirstRemoteVideoFrame = ( + int uid, + int width, + int height, + int elapsed, + ) { + setState(() { + final info = 'firstRemoteVideo: $uid ${width}x $height'; + _infoStrings.add(info); + }); + }; + } + + /// Helper function to get list of native views + List _getRenderViews() { + final List list = []; + if (widget.role == ClientRole.Broadcaster) { + list.add(AgoraRenderWidget(0, local: true, preview: true)); + } + _users.forEach((int uid) => list.add(AgoraRenderWidget(uid))); + return list; + } + + /// Video view wrapper + Widget _videoView(view) { + return Expanded(child: Container(child: view)); + } + + /// Video view row wrapper + Widget _expandedVideoRow(List views) { + final wrappedViews = views.map(_videoView).toList(); + return Expanded( + child: Row( + children: wrappedViews, + ), + ); + } + + /// Video layout wrapper + Widget _viewRows() { + final views = _getRenderViews(); + switch (views.length) { + case 1: + return Container( + child: Column( + children: [_videoView(views[0])], + )); + case 2: + return Container( + child: Column( + children: [ + _expandedVideoRow([views[0]]), + _expandedVideoRow([views[1]]) + ], + )); + case 3: + return Container( + child: Column( + children: [ + _expandedVideoRow(views.sublist(0, 2)), + _expandedVideoRow(views.sublist(2, 3)) + ], + )); + case 4: + return Container( + child: Column( + children: [ + _expandedVideoRow(views.sublist(0, 2)), + _expandedVideoRow(views.sublist(2, 4)) + ], + )); + default: + } + return Container(); + } + + /// Toolbar layout + Widget _toolbar() { + if (widget.role == ClientRole.Audience) return Container(); + return Container( + alignment: Alignment.bottomCenter, + padding: const EdgeInsets.symmetric(vertical: 48), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + RawMaterialButton( + onPressed: _onToggleMute, + child: Icon( + muted ? Icons.mic_off : Icons.mic, + color: muted ? Colors.white : Colors.blueAccent, + size: 20.0, + ), + shape: CircleBorder(), + elevation: 2.0, + fillColor: muted ? Colors.blueAccent : Colors.white, + padding: const EdgeInsets.all(12.0), + ), + RawMaterialButton( + onPressed: () => _onCallEnd(context), + child: Icon( + Icons.call_end, + color: Colors.white, + size: 35.0, + ), + shape: CircleBorder(), + elevation: 2.0, + fillColor: Colors.redAccent, + padding: const EdgeInsets.all(15.0), + ), + RawMaterialButton( + onPressed: _onSwitchCamera, + child: Icon( + Icons.switch_camera, + color: Colors.blueAccent, + size: 20.0, + ), + shape: CircleBorder(), + elevation: 2.0, + fillColor: Colors.white, + padding: const EdgeInsets.all(12.0), + ) + ], + ), + ); + } + + /// Info panel to show logs + Widget _panel() { + return Container( + padding: const EdgeInsets.symmetric(vertical: 48), + alignment: Alignment.bottomCenter, + child: FractionallySizedBox( + heightFactor: 0.5, + child: Container( + padding: const EdgeInsets.symmetric(vertical: 48), + child: ListView.builder( + reverse: true, + itemCount: _infoStrings.length, + itemBuilder: (BuildContext context, int index) { + if (_infoStrings.isEmpty) { + return null; + } + return Padding( + padding: const EdgeInsets.symmetric( + vertical: 3, + horizontal: 10, + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + Flexible( + child: Container( + padding: const EdgeInsets.symmetric( + vertical: 2, + horizontal: 5, + ), + decoration: BoxDecoration( + color: Colors.yellowAccent, + borderRadius: BorderRadius.circular(5), + ), + child: Text( + _infoStrings[index], + style: TextStyle(color: Colors.blueGrey), + ), + ), + ) + ], + ), + ); + }, + ), + ), + ), + ); + } + + void _onCallEnd(BuildContext context) { + Navigator.pop(context); + } + + void _onToggleMute() { + setState(() { + muted = !muted; + }); + AgoraRtcEngine.muteLocalAudioStream(muted); + } + + void _onSwitchCamera() { + AgoraRtcEngine.switchCamera(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: Text('Agora Flutter QuickStart'), + ), + backgroundColor: Colors.black, + body: Center( + child: Stack( + children: [ + _viewRows(), + _panel(), + _toolbar(), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/medicare/lib/video_call/settings.dart b/medicare/lib/video_call/settings.dart new file mode 100644 index 0000000..ba8b1b3 --- /dev/null +++ b/medicare/lib/video_call/settings.dart @@ -0,0 +1,2 @@ +// Agora AppId +const APP_ID = "c0c3bbe6cf5b4771ad8019c8dc192631"; \ No newline at end of file diff --git a/medicare/lib/widgets/country_dropdown.dart b/medicare/lib/widgets/country_dropdown.dart new file mode 100644 index 0000000..91d35da --- /dev/null +++ b/medicare/lib/widgets/country_dropdown.dart @@ -0,0 +1,54 @@ +import 'package:flutter/material.dart'; + +class CountryDropdown extends StatelessWidget { + final List countries; + final String country; + final Function(String) onChanged; + + const CountryDropdown({ + @required this.countries, + @required this.country, + @required this.onChanged, + }); + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 12.0), + height: 40.0, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(30.0), + ), + child: DropdownButtonHideUnderline( + child: DropdownButton( + value: country, + items: countries + .map((e) => DropdownMenuItem( + child: Row( + children: [ + CircleAvatar( + radius: 12.0, + child: Image.asset( + 'assets/images/${e.toLowerCase()}_flag.png', + ), + ), + const SizedBox(width: 8.0), + Text( + e, + style: const TextStyle( + fontSize: 16.0, + fontWeight: FontWeight.bold, + ), + ) + ], + ), + value: e, + )) + .toList(), + onChanged: onChanged, + ), + ), + ); + } +} diff --git a/medicare/lib/widgets/covid_bar_chart.dart b/medicare/lib/widgets/covid_bar_chart.dart new file mode 100644 index 0000000..368521a --- /dev/null +++ b/medicare/lib/widgets/covid_bar_chart.dart @@ -0,0 +1,114 @@ +import 'package:fl_chart/fl_chart.dart'; +import 'package:flutter/material.dart'; +import 'package:medicare/config/styles.dart'; + +class CovidBarChart extends StatelessWidget { + final List covidCases; + + const CovidBarChart({@required this.covidCases}); + + @override + Widget build(BuildContext context) { + return Container( + height: 350.0, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.only( + topLeft: Radius.circular(20.0), + topRight: Radius.circular(20.0), + ), + ), + child: Column( + children: [ + Container( + padding: const EdgeInsets.all(20.0), + alignment: Alignment.centerLeft, + child: Text( + 'Daily New Cases', + style: const TextStyle( + fontSize: 22.0, + fontWeight: FontWeight.bold, + ), + ), + ), + Container( + width: MediaQuery.of(context).size.width * 0.85, + child: BarChart( + BarChartData( + alignment: BarChartAlignment.spaceAround, + maxY: 16.0, + barTouchData: BarTouchData(enabled: false), + titlesData: FlTitlesData( + show: true, + bottomTitles: SideTitles( + margin: 10.0, + showTitles: true, + textStyle: Styles.chartLabelsTextStyle, + rotateAngle: 35.0, + getTitles: (double value) { + switch (value.toInt()) { + case 0: + return 'May 24'; + case 1: + return 'May 25'; + case 2: + return 'May 26'; + case 3: + return 'May 27'; + case 4: + return 'May 28'; + case 5: + return 'May 29'; + case 6: + return 'May 30'; + default: + return ''; + } + }, + ), + leftTitles: SideTitles( + margin: 10.0, + showTitles: true, + textStyle: Styles.chartLabelsTextStyle, + getTitles: (value) { + if (value == 0) { + return '0'; + } else if (value % 3 == 0) { + return '${value ~/ 3 * 5}K'; + } + return ''; + }), + ), + gridData: FlGridData( + show: true, + checkToShowHorizontalLine: (value) => value % 3 == 0, + getDrawingHorizontalLine: (value) => FlLine( + color: Colors.black12, + strokeWidth: 1.0, + dashArray: [5], + ), + ), + borderData: FlBorderData(show: false), + barGroups: covidCases + .asMap() + .map((key, value) => MapEntry( + key, + BarChartGroupData( + x: key, + barRods: [ + BarChartRodData( + y: value, + color: Colors.red, + ), + ], + ))) + .values + .toList(), + ), + ), + ), + ], + ), + ); + } +} diff --git a/medicare/lib/widgets/custom_app_bar.dart b/medicare/lib/widgets/custom_app_bar.dart new file mode 100644 index 0000000..669b441 --- /dev/null +++ b/medicare/lib/widgets/custom_app_bar.dart @@ -0,0 +1,27 @@ +import 'package:flutter/material.dart'; +import 'package:medicare/config/palette.dart'; + +class CustomAppBar extends StatelessWidget with PreferredSizeWidget { + @override + Widget build(BuildContext context) { + return AppBar( + backgroundColor: Palette.primaryColor, + elevation: 0.0, + leading: IconButton( + icon: const Icon(Icons.menu), + iconSize: 28.0, + onPressed: () {}, + ), + actions: [ + IconButton( + icon: const Icon(Icons.notifications_none), + iconSize: 28.0, + onPressed: () {}, + ), + ], + ); + } + + @override + Size get preferredSize => Size.fromHeight(kToolbarHeight); +} diff --git a/medicare/lib/widgets/stats_grid.dart b/medicare/lib/widgets/stats_grid.dart new file mode 100644 index 0000000..4736fe5 --- /dev/null +++ b/medicare/lib/widgets/stats_grid.dart @@ -0,0 +1,66 @@ +import 'package:flutter/material.dart'; + +class StatsGrid extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Container( + height: MediaQuery.of(context).size.height * 0.25, + child: Column( + children: [ + Flexible( + child: Row( + children: [ + _buildStatCard('Total Cases', '1.81 M', Colors.orange), + _buildStatCard('Deaths', '105 K', Colors.red), + ], + ), + ), + Flexible( + child: Row( + children: [ + _buildStatCard('Recovered', '391 K', Colors.green), + _buildStatCard('Active', '1.31 M', Colors.lightBlue), + _buildStatCard('Critical', 'N/A', Colors.purple), + ], + ), + ), + ], + ), + ); + } + + Expanded _buildStatCard(String title, String count, MaterialColor color) { + return Expanded( + child: Container( + margin: const EdgeInsets.all(8.0), + padding: const EdgeInsets.all(10.0), + decoration: BoxDecoration( + color: color, + borderRadius: BorderRadius.circular(10.0), + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + title, + style: const TextStyle( + color: Colors.white, + fontSize: 15.0, + fontWeight: FontWeight.w600, + ), + ), + Text( + count, + style: const TextStyle( + color: Colors.white, + fontSize: 20.0, + fontWeight: FontWeight.bold, + ), + ), + ], + ), + ), + ); + } +} diff --git a/medicare/lib/widgets/widgets.dart b/medicare/lib/widgets/widgets.dart new file mode 100644 index 0000000..f5d7f5b --- /dev/null +++ b/medicare/lib/widgets/widgets.dart @@ -0,0 +1,4 @@ +export 'custom_app_bar.dart'; +export 'country_dropdown.dart'; +export 'stats_grid.dart'; +export 'covid_bar_chart.dart'; diff --git a/medicare/pubspec.lock b/medicare/pubspec.lock new file mode 100644 index 0000000..c8ab936 --- /dev/null +++ b/medicare/pubspec.lock @@ -0,0 +1,418 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + agora_rtc_engine: + dependency: "direct main" + description: + name: agora_rtc_engine + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.15" + animated_text_kit: + dependency: "direct main" + description: + name: animated_text_kit + url: "https://pub.dartlang.org" + source: hosted + version: "2.2.0" + archive: + dependency: transitive + description: + name: archive + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.13" + args: + dependency: transitive + description: + name: args + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.0" + async: + dependency: transitive + description: + name: async + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.1" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.0" + bubble_tab_indicator: + dependency: "direct main" + description: + name: bubble_tab_indicator + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.4" + charcode: + dependency: transitive + description: + name: charcode + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.3" + cloud_firestore: + dependency: "direct main" + description: + name: cloud_firestore + url: "https://pub.dartlang.org" + source: hosted + version: "0.13.7" + cloud_firestore_platform_interface: + dependency: transitive + description: + name: cloud_firestore_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.2" + cloud_firestore_web: + dependency: transitive + description: + name: cloud_firestore_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.1+2" + collection: + dependency: transitive + description: + name: collection + url: "https://pub.dartlang.org" + source: hosted + version: "1.14.12" + convert: + dependency: transitive + description: + name: convert + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.1" + crypto: + dependency: transitive + description: + name: crypto + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.4" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.3" + equatable: + dependency: transitive + description: + name: equatable + url: "https://pub.dartlang.org" + source: hosted + version: "1.2.5" + firebase: + dependency: transitive + description: + name: firebase + url: "https://pub.dartlang.org" + source: hosted + version: "7.3.0" + firebase_auth: + dependency: "direct main" + description: + name: firebase_auth + url: "https://pub.dartlang.org" + source: hosted + version: "0.15.5+3" + firebase_auth_platform_interface: + dependency: transitive + description: + name: firebase_auth_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.8" + firebase_auth_web: + dependency: transitive + description: + name: firebase_auth_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.3+1" + firebase_core: + dependency: transitive + description: + name: firebase_core + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.5" + firebase_core_platform_interface: + dependency: transitive + description: + name: firebase_core_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.4" + firebase_core_web: + dependency: transitive + description: + name: firebase_core_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.1+2" + fl_chart: + dependency: "direct main" + description: + name: fl_chart + url: "https://pub.dartlang.org" + source: hosted + version: "0.9.4" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_plugin_android_lifecycle: + dependency: transitive + description: + name: flutter_plugin_android_lifecycle + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.8" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + font_awesome_flutter: + dependency: "direct main" + description: + name: font_awesome_flutter + url: "https://pub.dartlang.org" + source: hosted + version: "8.8.1" + google_maps_flutter: + dependency: "direct main" + description: + name: google_maps_flutter + url: "https://pub.dartlang.org" + source: hosted + version: "0.5.31" + google_maps_flutter_platform_interface: + dependency: transitive + description: + name: google_maps_flutter_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.4" + http: + dependency: transitive + description: + name: http + url: "https://pub.dartlang.org" + source: hosted + version: "0.12.2" + http_parser: + dependency: transitive + description: + name: http_parser + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.4" + image: + dependency: transitive + description: + name: image + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.12" + js: + dependency: transitive + description: + name: js + url: "https://pub.dartlang.org" + source: hosted + version: "0.6.2" + liquid_swipe: + dependency: "direct main" + description: + name: liquid_swipe + url: "https://pub.dartlang.org" + source: hosted + version: "1.5.0" + matcher: + dependency: transitive + description: + name: matcher + url: "https://pub.dartlang.org" + source: hosted + version: "0.12.6" + meta: + dependency: transitive + description: + name: meta + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.8" + nested: + dependency: transitive + description: + name: nested + url: "https://pub.dartlang.org" + source: hosted + version: "0.0.4" + path: + dependency: transitive + description: + name: path + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.4" + path_drawing: + dependency: transitive + description: + name: path_drawing + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.1+1" + path_parsing: + dependency: transitive + description: + name: path_parsing + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.4" + pedantic: + dependency: transitive + description: + name: pedantic + url: "https://pub.dartlang.org" + source: hosted + version: "1.9.0" + permission_handler: + dependency: "direct main" + description: + name: permission_handler + url: "https://pub.dartlang.org" + source: hosted + version: "4.4.0+hotfix.4" + permission_handler_platform_interface: + dependency: transitive + description: + name: permission_handler_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + petitparser: + dependency: transitive + description: + name: petitparser + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.0" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.2" + provider: + dependency: transitive + description: + name: provider + url: "https://pub.dartlang.org" + source: hosted + version: "4.3.2+2" + quiver: + dependency: transitive + description: + name: quiver + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.3" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + url: "https://pub.dartlang.org" + source: hosted + version: "1.7.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + url: "https://pub.dartlang.org" + source: hosted + version: "1.9.3" + stream_channel: + dependency: transitive + description: + name: stream_channel + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.0" + stream_transform: + dependency: transitive + description: + name: stream_transform + url: "https://pub.dartlang.org" + source: hosted + version: "1.2.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.5" + term_glyph: + dependency: transitive + description: + name: term_glyph + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + test_api: + dependency: transitive + description: + name: test_api + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.15" + typed_data: + dependency: transitive + description: + name: typed_data + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.6" + vector_math: + dependency: transitive + description: + name: vector_math + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.8" + xml: + dependency: transitive + description: + name: xml + url: "https://pub.dartlang.org" + source: hosted + version: "3.6.1" +sdks: + dart: ">=2.7.0 <3.0.0" + flutter: ">=1.16.3 <2.0.0" diff --git a/medicare/pubspec.yaml b/medicare/pubspec.yaml new file mode 100644 index 0000000..8854412 --- /dev/null +++ b/medicare/pubspec.yaml @@ -0,0 +1,86 @@ +name: medicare +description: A new Flutter application. + +# The following line prevents the package from being accidentally published to +# pub.dev using `pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.7.0 <3.0.0" + +dependencies: + flutter: + sdk: flutter + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^0.1.3 + animated_text_kit: ^2.2.0 + firebase_auth: ^0.15.3 + agora_rtc_engine: ^1.0.13 + permission_handler: ^4.4.0 + google_maps_flutter: ^0.5.30 + font_awesome_flutter: ^8.4.0 + liquid_swipe: ^1.5.0 + fl_chart: ^0.9.4 + bubble_tab_indicator: ^0.1.4 + cloud_firestore: ^0.13.6 + +dev_dependencies: + flutter_test: + sdk: flutter + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + assets: + - assets/getstartedback.jpg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages diff --git a/medicare/test/widget_test.dart b/medicare/test/widget_test.dart new file mode 100644 index 0000000..3d8679f --- /dev/null +++ b/medicare/test/widget_test.dart @@ -0,0 +1,30 @@ +// This is a basic Flutter widget test. +// +// To perform an interaction with a widget in your test, use the WidgetTester +// utility that Flutter provides. For example, you can send tap and scroll +// gestures. You can also use WidgetTester to find child widgets in the widget +// tree, read text, and verify that the values of widget properties are correct. + +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + +import 'package:medicare/main.dart'; + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget(MyApp()); + + // Verify that our counter starts at 0. + expect(find.text('0'), findsOneWidget); + expect(find.text('1'), findsNothing); + + // Tap the '+' icon and trigger a frame. + await tester.tap(find.byIcon(Icons.add)); + await tester.pump(); + + // Verify that our counter has incremented. + expect(find.text('0'), findsNothing); + expect(find.text('1'), findsOneWidget); + }); +} diff --git a/medicare_doctor/.gitignore b/medicare_doctor/.gitignore new file mode 100644 index 0000000..1ba9c33 --- /dev/null +++ b/medicare_doctor/.gitignore @@ -0,0 +1,43 @@ +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.buildlog/ +.history +.svn/ + +# IntelliJ related +*.iml +*.ipr +*.iws +.idea/ + +# The .vscode folder contains launch configuration and tasks you configure in +# VS Code which you may wish to be included in version control, so this line +# is commented out by default. +#.vscode/ + +# Flutter/Dart/Pub related +**/doc/api/ +.dart_tool/ +.flutter-plugins +.flutter-plugins-dependencies +.packages +.pub-cache/ +.pub/ +/build/ + +# Web related +lib/generated_plugin_registrant.dart + +# Symbolication related +app.*.symbols + +# Obfuscation related +app.*.map.json + +# Exceptions to above rules. +!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages diff --git a/medicare_doctor/.metadata b/medicare_doctor/.metadata new file mode 100644 index 0000000..7c361dd --- /dev/null +++ b/medicare_doctor/.metadata @@ -0,0 +1,10 @@ +# This file tracks properties of this Flutter project. +# Used by Flutter tool to assess capabilities and perform upgrades etc. +# +# This file should be version controlled and should not be manually edited. + +version: + revision: b041144f833e05cf463b8887fa12efdec9493488 + channel: stable + +project_type: app diff --git a/medicare_doctor/README.md b/medicare_doctor/README.md new file mode 100644 index 0000000..ed43b46 --- /dev/null +++ b/medicare_doctor/README.md @@ -0,0 +1,16 @@ +# medicare_doctor + +A new Flutter application. + +## Getting Started + +This project is a starting point for a Flutter application. + +A few resources to get you started if this is your first Flutter project: + +- [Lab: Write your first Flutter app](https://flutter.dev/docs/get-started/codelab) +- [Cookbook: Useful Flutter samples](https://flutter.dev/docs/cookbook) + +For help getting started with Flutter, view our +[online documentation](https://flutter.dev/docs), which offers tutorials, +samples, guidance on mobile development, and a full API reference. diff --git a/medicare_doctor/android/.gitignore b/medicare_doctor/android/.gitignore new file mode 100644 index 0000000..bc2100d --- /dev/null +++ b/medicare_doctor/android/.gitignore @@ -0,0 +1,7 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java diff --git a/medicare_doctor/android/app/build.gradle b/medicare_doctor/android/app/build.gradle new file mode 100644 index 0000000..1f58146 --- /dev/null +++ b/medicare_doctor/android/app/build.gradle @@ -0,0 +1,54 @@ +def localProperties = new Properties() +def localPropertiesFile = rootProject.file('local.properties') +if (localPropertiesFile.exists()) { + localPropertiesFile.withReader('UTF-8') { reader -> + localProperties.load(reader) + } +} + +def flutterRoot = localProperties.getProperty('flutter.sdk') +if (flutterRoot == null) { + throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") +} + +def flutterVersionCode = localProperties.getProperty('flutter.versionCode') +if (flutterVersionCode == null) { + flutterVersionCode = '1' +} + +def flutterVersionName = localProperties.getProperty('flutter.versionName') +if (flutterVersionName == null) { + flutterVersionName = '1.0' +} + +apply plugin: 'com.android.application' +apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" + +android { + compileSdkVersion 28 + + lintOptions { + disable 'InvalidPackage' + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId "com.example.medicare_doctor" + minSdkVersion 16 + targetSdkVersion 28 + versionCode flutterVersionCode.toInteger() + versionName flutterVersionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig signingConfigs.debug + } + } +} + +flutter { + source '../..' +} diff --git a/medicare_doctor/android/app/src/debug/AndroidManifest.xml b/medicare_doctor/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..b451a2d --- /dev/null +++ b/medicare_doctor/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/medicare_doctor/android/app/src/main/AndroidManifest.xml b/medicare_doctor/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..6117539 --- /dev/null +++ b/medicare_doctor/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + diff --git a/medicare_doctor/android/app/src/main/java/com/example/medicare_doctor/MainActivity.java b/medicare_doctor/android/app/src/main/java/com/example/medicare_doctor/MainActivity.java new file mode 100644 index 0000000..e3d2e7d --- /dev/null +++ b/medicare_doctor/android/app/src/main/java/com/example/medicare_doctor/MainActivity.java @@ -0,0 +1,6 @@ +package com.example.medicare_doctor; + +import io.flutter.embedding.android.FlutterActivity; + +public class MainActivity extends FlutterActivity { +} diff --git a/medicare_doctor/android/app/src/main/res/drawable/launch_background.xml b/medicare_doctor/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000..304732f --- /dev/null +++ b/medicare_doctor/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/medicare_doctor/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/medicare_doctor/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/medicare_doctor/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/medicare_doctor/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/medicare_doctor/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/medicare_doctor/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/medicare_doctor/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/medicare_doctor/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/medicare_doctor/android/app/src/main/res/values/styles.xml b/medicare_doctor/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..1f83a33 --- /dev/null +++ b/medicare_doctor/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/medicare_doctor/android/app/src/profile/AndroidManifest.xml b/medicare_doctor/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..b451a2d --- /dev/null +++ b/medicare_doctor/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/medicare_doctor/android/build.gradle b/medicare_doctor/android/build.gradle new file mode 100644 index 0000000..e0d7ae2 --- /dev/null +++ b/medicare_doctor/android/build.gradle @@ -0,0 +1,29 @@ +buildscript { + repositories { + google() + jcenter() + } + + dependencies { + classpath 'com.android.tools.build:gradle:3.5.0' + } +} + +allprojects { + repositories { + google() + jcenter() + } +} + +rootProject.buildDir = '../build' +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(':app') +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/medicare_doctor/android/gradle.properties b/medicare_doctor/android/gradle.properties new file mode 100644 index 0000000..38c8d45 --- /dev/null +++ b/medicare_doctor/android/gradle.properties @@ -0,0 +1,4 @@ +org.gradle.jvmargs=-Xmx1536M +android.enableR8=true +android.useAndroidX=true +android.enableJetifier=true diff --git a/medicare_doctor/android/gradle/wrapper/gradle-wrapper.properties b/medicare_doctor/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..296b146 --- /dev/null +++ b/medicare_doctor/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Fri Jun 23 08:50:38 CEST 2017 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip diff --git a/medicare_doctor/android/settings.gradle b/medicare_doctor/android/settings.gradle new file mode 100644 index 0000000..d3b6a40 --- /dev/null +++ b/medicare_doctor/android/settings.gradle @@ -0,0 +1,15 @@ +// Copyright 2014 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +include ':app' + +def localPropertiesFile = new File(rootProject.projectDir, "local.properties") +def properties = new Properties() + +assert localPropertiesFile.exists() +localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } + +def flutterSdkPath = properties.getProperty("flutter.sdk") +assert flutterSdkPath != null, "flutter.sdk not set in local.properties" +apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" diff --git a/medicare_doctor/ios/.gitignore b/medicare_doctor/ios/.gitignore new file mode 100644 index 0000000..e96ef60 --- /dev/null +++ b/medicare_doctor/ios/.gitignore @@ -0,0 +1,32 @@ +*.mode1v3 +*.mode2v3 +*.moved-aside +*.pbxuser +*.perspectivev3 +**/*sync/ +.sconsign.dblite +.tags* +**/.vagrant/ +**/DerivedData/ +Icon? +**/Pods/ +**/.symlinks/ +profile +xcuserdata +**/.generated/ +Flutter/App.framework +Flutter/Flutter.framework +Flutter/Flutter.podspec +Flutter/Generated.xcconfig +Flutter/app.flx +Flutter/app.zip +Flutter/flutter_assets/ +Flutter/flutter_export_environment.sh +ServiceDefinitions.json +Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!default.mode1v3 +!default.mode2v3 +!default.pbxuser +!default.perspectivev3 diff --git a/medicare_doctor/ios/Flutter/AppFrameworkInfo.plist b/medicare_doctor/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 0000000..6b4c0f7 --- /dev/null +++ b/medicare_doctor/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 8.0 + + diff --git a/medicare_doctor/ios/Flutter/Debug.xcconfig b/medicare_doctor/ios/Flutter/Debug.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/medicare_doctor/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/medicare_doctor/ios/Flutter/Release.xcconfig b/medicare_doctor/ios/Flutter/Release.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/medicare_doctor/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/medicare_doctor/ios/Runner.xcodeproj/project.pbxproj b/medicare_doctor/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..c0f22a7 --- /dev/null +++ b/medicare_doctor/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,506 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 97C146F11CF9000F007C117D /* Supporting Files */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; + 97C146F11CF9000F007C117D /* Supporting Files */ = { + isa = PBXGroup; + children = ( + ); + name = "Supporting Files"; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1020; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.medicareDoctor; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.medicareDoctor; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.medicareDoctor; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/medicare_doctor/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/medicare_doctor/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/medicare_doctor/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..a28140c --- /dev/null +++ b/medicare_doctor/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/medicare_doctor/ios/Runner.xcworkspace/contents.xcworkspacedata b/medicare_doctor/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/medicare_doctor/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/medicare_doctor/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/medicare_doctor/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/medicare_doctor/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/medicare_doctor/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/medicare_doctor/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/medicare_doctor/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/medicare_doctor/ios/Runner/AppDelegate.swift b/medicare_doctor/ios/Runner/AppDelegate.swift new file mode 100644 index 0000000..70693e4 --- /dev/null +++ b/medicare_doctor/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import UIKit +import Flutter + +@UIApplicationMain +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d36b1fa --- /dev/null +++ b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 zcmeHN2~<R zh`|8`A_PQ1nSu(UMFx?8j8PC!!VDphaL#`F42fd#7Vlc`zIE4n%Y~eiz4y1j|NDpi z?<@|pSJ-HM`qifhf@m%MamgwK83`XpBA<+azdF#2QsT{X@z0A9Bq>~TVErigKH1~P zRX-!h-f0NJ4Mh++{D}J+K>~~rq}d%o%+4dogzXp7RxX4C>Km5XEI|PAFDmo;DFm6G zzjVoB`@qW98Yl0Kvc-9w09^PrsobmG*Eju^=3f?0o-t$U)TL1B3;sZ^!++3&bGZ!o-*6w?;oOhf z=A+Qb$scV5!RbG+&2S}BQ6YH!FKb0``VVX~T$dzzeSZ$&9=X$3)_7Z{SspSYJ!lGE z7yig_41zpQ)%5dr4ff0rh$@ky3-JLRk&DK)NEIHecf9c*?Z1bUB4%pZjQ7hD!A0r-@NF(^WKdr(LXj|=UE7?gBYGgGQV zidf2`ZT@pzXf7}!NH4q(0IMcxsUGDih(0{kRSez&z?CFA0RVXsVFw3^u=^KMtt95q z43q$b*6#uQDLoiCAF_{RFc{!H^moH_cmll#Fc^KXi{9GDl{>%+3qyfOE5;Zq|6#Hb zp^#1G+z^AXfRKaa9HK;%b3Ux~U@q?xg<2DXP%6k!3E)PA<#4$ui8eDy5|9hA5&{?v z(-;*1%(1~-NTQ`Is1_MGdQ{+i*ccd96ab$R$T3=% zw_KuNF@vI!A>>Y_2pl9L{9h1-C6H8<)J4gKI6{WzGBi<@u3P6hNsXG=bRq5c+z;Gc3VUCe;LIIFDmQAGy+=mRyF++u=drBWV8-^>0yE9N&*05XHZpPlE zxu@?8(ZNy7rm?|<+UNe0Vs6&o?l`Pt>P&WaL~M&#Eh%`rg@Mbb)J&@DA-wheQ>hRV z<(XhigZAT z>=M;URcdCaiO3d^?H<^EiEMDV+7HsTiOhoaMX%P65E<(5xMPJKxf!0u>U~uVqnPN7T!X!o@_gs3Ct1 zlZ_$5QXP4{Aj645wG_SNT&6m|O6~Tsl$q?nK*)(`{J4b=(yb^nOATtF1_aS978$x3 zx>Q@s4i3~IT*+l{@dx~Hst21fR*+5}S1@cf>&8*uLw-0^zK(+OpW?cS-YG1QBZ5q! zgTAgivzoF#`cSz&HL>Ti!!v#?36I1*l^mkrx7Y|K6L#n!-~5=d3;K<;Zqi|gpNUn_ z_^GaQDEQ*jfzh;`j&KXb66fWEk1K7vxQIMQ_#Wu_%3 z4Oeb7FJ`8I>Px;^S?)}2+4D_83gHEq>8qSQY0PVP?o)zAv3K~;R$fnwTmI-=ZLK`= zTm+0h*e+Yfr(IlH3i7gUclNH^!MU>id$Jw>O?2i0Cila#v|twub21@e{S2v}8Z13( zNDrTXZVgris|qYm<0NU(tAPouG!QF4ZNpZPkX~{tVf8xY690JqY1NVdiTtW+NqyRP zZ&;T0ikb8V{wxmFhlLTQ&?OP7 z;(z*<+?J2~z*6asSe7h`$8~Se(@t(#%?BGLVs$p``;CyvcT?7Y!{tIPva$LxCQ&4W z6v#F*);|RXvI%qnoOY&i4S*EL&h%hP3O zLsrFZhv&Hu5tF$Lx!8(hs&?!Kx5&L(fdu}UI5d*wn~A`nPUhG&Rv z2#ixiJdhSF-K2tpVL=)5UkXRuPAFrEW}7mW=uAmtVQ&pGE-&az6@#-(Te^n*lrH^m@X-ftVcwO_#7{WI)5v(?>uC9GG{lcGXYJ~Q8q zbMFl7;t+kV;|;KkBW2!P_o%Czhw&Q(nXlxK9ak&6r5t_KH8#1Mr-*0}2h8R9XNkr zto5-b7P_auqTJb(TJlmJ9xreA=6d=d)CVbYP-r4$hDn5|TIhB>SReMfh&OVLkMk-T zYf%$taLF0OqYF?V{+6Xkn>iX@TuqQ?&cN6UjC9YF&%q{Ut3zv{U2)~$>-3;Dp)*(? zg*$mu8^i=-e#acaj*T$pNowo{xiGEk$%DusaQiS!KjJH96XZ-hXv+jk%ard#fu=@Q z$AM)YWvE^{%tDfK%nD49=PI|wYu}lYVbB#a7wtN^Nml@CE@{Gv7+jo{_V?I*jkdLD zJE|jfdrmVbkfS>rN*+`#l%ZUi5_bMS<>=MBDNlpiSb_tAF|Zy`K7kcp@|d?yaTmB^ zo?(vg;B$vxS|SszusORgDg-*Uitzdi{dUV+glA~R8V(?`3GZIl^egW{a919!j#>f` znL1o_^-b`}xnU0+~KIFLQ)$Q6#ym%)(GYC`^XM*{g zv3AM5$+TtDRs%`2TyR^$(hqE7Y1b&`Jd6dS6B#hDVbJlUXcG3y*439D8MrK!2D~6gn>UD4Imctb z+IvAt0iaW73Iq$K?4}H`7wq6YkTMm`tcktXgK0lKPmh=>h+l}Y+pDtvHnG>uqBA)l zAH6BV4F}v$(o$8Gfo*PB>IuaY1*^*`OTx4|hM8jZ?B6HY;F6p4{`OcZZ(us-RVwDx zUzJrCQlp@mz1ZFiSZ*$yX3c_#h9J;yBE$2g%xjmGF4ca z&yL`nGVs!Zxsh^j6i%$a*I3ZD2SoNT`{D%mU=LKaEwbN(_J5%i-6Va?@*>=3(dQy` zOv%$_9lcy9+(t>qohkuU4r_P=R^6ME+wFu&LA9tw9RA?azGhjrVJKy&8=*qZT5Dr8g--d+S8zAyJ$1HlW3Olryt`yE zFIph~Z6oF&o64rw{>lgZISC6p^CBer9C5G6yq%?8tC+)7*d+ib^?fU!JRFxynRLEZ zj;?PwtS}Ao#9whV@KEmwQgM0TVP{hs>dg(1*DiMUOKHdQGIqa0`yZnHk9mtbPfoLx zo;^V6pKUJ!5#n`w2D&381#5#_t}AlTGEgDz$^;u;-vxDN?^#5!zN9ngytY@oTv!nc zp1Xn8uR$1Z;7vY`-<*?DfPHB;x|GUi_fI9@I9SVRv1)qETbNU_8{5U|(>Du84qP#7 z*l9Y$SgA&wGbj>R1YeT9vYjZuC@|{rajTL0f%N@>3$DFU=`lSPl=Iv;EjuGjBa$Gw zHD-;%YOE@<-!7-Mn`0WuO3oWuL6tB2cpPw~Nvuj|KM@))ixuDK`9;jGMe2d)7gHin zS<>k@!x;!TJEc#HdL#RF(`|4W+H88d4V%zlh(7#{q2d0OQX9*FW^`^_<3r$kabWAB z$9BONo5}*(%kx zOXi-yM_cmB3>inPpI~)duvZykJ@^^aWzQ=eQ&STUa}2uT@lV&WoRzkUoE`rR0)`=l zFT%f|LA9fCw>`enm$p7W^E@U7RNBtsh{_-7vVz3DtB*y#*~(L9+x9*wn8VjWw|Q~q zKFsj1Yl>;}%MG3=PY`$g$_mnyhuV&~O~u~)968$0b2!Jkd;2MtAP#ZDYw9hmK_+M$ zb3pxyYC&|CuAbtiG8HZjj?MZJBFbt`ryf+c1dXFuC z0*ZQhBzNBd*}s6K_G}(|Z_9NDV162#y%WSNe|FTDDhx)K!c(mMJh@h87@8(^YdK$&d*^WQe8Z53 z(|@MRJ$Lk-&ii74MPIs80WsOFZ(NX23oR-?As+*aq6b?~62@fSVmM-_*cb1RzZ)`5$agEiL`-E9s7{GM2?(KNPgK1(+c*|-FKoy}X(D_b#etO|YR z(BGZ)0Ntfv-7R4GHoXp?l5g#*={S1{u-QzxCGng*oWr~@X-5f~RA14b8~B+pLKvr4 zfgL|7I>jlak9>D4=(i(cqYf7#318!OSR=^`xxvI!bBlS??`xxWeg?+|>MxaIdH1U~#1tHu zB{QMR?EGRmQ_l4p6YXJ{o(hh-7Tdm>TAX380TZZZyVkqHNzjUn*_|cb?T? zt;d2s-?B#Mc>T-gvBmQZx(y_cfkXZO~{N zT6rP7SD6g~n9QJ)8F*8uHxTLCAZ{l1Y&?6v)BOJZ)=R-pY=Y=&1}jE7fQ>USS}xP#exo57uND0i*rEk@$;nLvRB@u~s^dwRf?G?_enN@$t* zbL%JO=rV(3Ju8#GqUpeE3l_Wu1lN9Y{D4uaUe`g>zlj$1ER$6S6@{m1!~V|bYkhZA z%CvrDRTkHuajMU8;&RZ&itnC~iYLW4DVkP<$}>#&(`UO>!n)Po;Mt(SY8Yb`AS9lt znbX^i?Oe9r_o=?})IHKHoQGKXsps_SE{hwrg?6dMI|^+$CeC&z@*LuF+P`7LfZ*yr+KN8B4{Nzv<`A(wyR@!|gw{zB6Ha ziwPAYh)oJ(nlqSknu(8g9N&1hu0$vFK$W#mp%>X~AU1ay+EKWcFdif{% z#4!4aoVVJ;ULmkQf!ke2}3hqxLK>eq|-d7Ly7-J9zMpT`?dxo6HdfJA|t)?qPEVBDv z{y_b?4^|YA4%WW0VZd8C(ZgQzRI5(I^)=Ub`Y#MHc@nv0w-DaJAqsbEHDWG8Ia6ju zo-iyr*sq((gEwCC&^TYBWt4_@|81?=B-?#P6NMff(*^re zYqvDuO`K@`mjm_Jd;mW_tP`3$cS?R$jR1ZN09$YO%_iBqh5ftzSpMQQtxKFU=FYmP zeY^jph+g<4>YO;U^O>-NFLn~-RqlHvnZl2yd2A{Yc1G@Ga$d+Q&(f^tnPf+Z7serIU};17+2DU_f4Z z@GaPFut27d?!YiD+QP@)T=77cR9~MK@bd~pY%X(h%L={{OIb8IQmf-!xmZkm8A0Ga zQSWONI17_ru5wpHg3jI@i9D+_Y|pCqVuHJNdHUauTD=R$JcD2K_liQisqG$(sm=k9;L* z!L?*4B~ql7uioSX$zWJ?;q-SWXRFhz2Jt4%fOHA=Bwf|RzhwqdXGr78y$J)LR7&3T zE1WWz*>GPWKZ0%|@%6=fyx)5rzUpI;bCj>3RKzNG_1w$fIFCZ&UR0(7S?g}`&Pg$M zf`SLsz8wK82Vyj7;RyKmY{a8G{2BHG%w!^T|Njr!h9TO2LaP^_f22Q1=l$QiU84ao zHe_#{S6;qrC6w~7{y(hs-?-j?lbOfgH^E=XcSgnwW*eEz{_Z<_Px$?ny*JR5%f>l)FnDQ543{x%ZCiu33$Wg!pQFfT_}?5Q|_VSlIbLC`dpoMXL}9 zHfd9&47Mo(7D231gb+kjFxZHS4-m~7WurTH&doVX2KI5sU4v(sJ1@T9eCIKPjsqSr z)C01LsCxk=72-vXmX}CQD#BD;Cthymh&~=f$Q8nn0J<}ZrusBy4PvRNE}+1ceuj8u z0mW5k8fmgeLnTbWHGwfKA3@PdZxhn|PypR&^p?weGftrtCbjF#+zk_5BJh7;0`#Wr zgDpM_;Ax{jO##IrT`Oz;MvfwGfV$zD#c2xckpcXC6oou4ML~ezCc2EtnsQTB4tWNg z?4bkf;hG7IMfhgNI(FV5Gs4|*GyMTIY0$B=_*mso9Ityq$m^S>15>-?0(zQ<8Qy<_TjHE33(?_M8oaM zyc;NxzRVK@DL6RJnX%U^xW0Gpg(lXp(!uK1v0YgHjs^ZXSQ|m#lV7ip7{`C_J2TxPmfw%h$|%acrYHt)Re^PB%O&&=~a zhS(%I#+V>J-vjIib^<+s%ludY7y^C(P8nmqn9fp!i+?vr`bziDE=bx`%2W#Xyrj|i z!XQ4v1%L`m{7KT7q+LZNB^h8Ha2e=`Wp65^0;J00)_^G=au=8Yo;1b`CV&@#=jIBo zjN^JNVfYSs)+kDdGe7`1&8!?MQYKS?DuHZf3iogk_%#9E|5S zWeHrmAo>P;ejX7mwq#*}W25m^ZI+{(Z8fI?4jM_fffY0nok=+88^|*_DwcW>mR#e+ zX$F_KMdb6sRz!~7KkyN0G(3XQ+;z3X%PZ4gh;n-%62U<*VUKNv(D&Q->Na@Xb&u5Q3`3DGf+a8O5x7c#7+R+EAYl@R5us)CIw z7sT@_y~Ao@uL#&^LIh&QceqiT^+lb0YbFZt_SHOtWA%mgPEKVNvVgCsXy{5+zl*X8 zCJe)Q@y>wH^>l4;h1l^Y*9%-23TSmE>q5nI@?mt%n;Sj4Qq`Z+ib)a*a^cJc%E9^J zB;4s+K@rARbcBLT5P=@r;IVnBMKvT*)ew*R;&8vu%?Z&S>s?8?)3*YawM0P4!q$Kv zMmKh3lgE~&w&v%wVzH3Oe=jeNT=n@Y6J6TdHWTjXfX~-=1A1Bw`EW8rn}MqeI34nh zexFeA?&C3B2(E?0{drE@DA2pu(A#ElY&6el60Rn|Qpn-FkfQ8M93AfWIr)drgDFEU zghdWK)^71EWCP(@(=c4kfH1Y(4iugD4fve6;nSUpLT%!)MUHs1!zJYy4y||C+SwQ! z)KM&$7_tyM`sljP2fz6&Z;jxRn{Wup8IOUx8D4uh&(=O zx-7$a;U><*5L^!%xRlw)vAbh;sdlR||& ze}8_8%)c2Fwy=F&H|LM+p{pZB5DKTx>Y?F1N%BlZkXf!}JeGuMZk~LPi7{cidvUGB zAJ4LVeNV%XO>LTrklB#^-;8nb;}6l;1oW&WS=Mz*Az!4cqqQzbOSFq`$Q%PfD7srM zpKgP-D_0XPTRX*hAqeq0TDkJ;5HB1%$3Np)99#16c{ zJImlNL(npL!W|Gr_kxl1GVmF5&^$^YherS7+~q$p zt}{a=*RiD2Ikv6o=IM1kgc7zqpaZ;OB)P!1zz*i3{U()Dq#jG)egvK}@uFLa`oyWZ zf~=MV)|yJn`M^$N%ul5);JuQvaU1r2wt(}J_Qgyy`qWQI`hEeRX0uC@c1(dQ2}=U$ tNIIaX+dr)NRWXcxoR{>fqI{SF_dm1Ylv~=3YHI)h002ovPDHLkV1g(pWS;;4 literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..f091b6b0bca859a3f474b03065bef75ba58a9e4c GIT binary patch literal 1588 zcmV-42Fv-0P)C1SqPt}wig>|5Crh^=oyX$BK<}M8eLU3e2hGT;=G|!_SP)7zNI6fqUMB=)y zRAZ>eDe#*r`yDAVgB_R*LB*MAc)8(b{g{9McCXW!lq7r(btRoB9!8B-#AI6JMb~YFBEvdsV)`mEQO^&#eRKx@b&x- z5lZm*!WfD8oCLzfHGz#u7sT0^VLMI1MqGxF^v+`4YYnVYgk*=kU?HsSz{v({E3lb9 z>+xILjBN)t6`=g~IBOelGQ(O990@BfXf(DRI5I$qN$0Gkz-FSc$3a+2fX$AedL4u{ z4V+5Ong(9LiGcIKW?_352sR;LtDPmPJXI{YtT=O8=76o9;*n%_m|xo!i>7$IrZ-{l z-x3`7M}qzHsPV@$v#>H-TpjDh2UE$9g6sysUREDy_R(a)>=eHw-WAyfIN z*qb!_hW>G)Tu8nSw9yn#3wFMiLcfc4pY0ek1}8(NqkBR@t4{~oC>ryc-h_ByH(Cg5 z>ao-}771+xE3um9lWAY1FeQFxowa1(!J(;Jg*wrg!=6FdRX+t_<%z&d&?|Bn){>zm zZQj(aA_HeBY&OC^jj*)N`8fa^ePOU72VpInJoI1?`ty#lvlNzs(&MZX+R%2xS~5Kh zX*|AU4QE#~SgPzOXe9>tRj>hjU@c1k5Y_mW*Jp3fI;)1&g3j|zDgC+}2Q_v%YfDax z!?umcN^n}KYQ|a$Lr+51Nf9dkkYFSjZZjkma$0KOj+;aQ&721~t7QUKx61J3(P4P1 zstI~7-wOACnWP4=8oGOwz%vNDqD8w&Q`qcNGGrbbf&0s9L0De{4{mRS?o0MU+nR_! zrvshUau0G^DeMhM_v{5BuLjb#Hh@r23lDAk8oF(C+P0rsBpv85EP>4CVMx#04MOfG z;P%vktHcXwTj~+IE(~px)3*MY77e}p#|c>TD?sMatC0Tu4iKKJ0(X8jxQY*gYtxsC z(zYC$g|@+I+kY;dg_dE>scBf&bP1Nc@Hz<3R)V`=AGkc;8CXqdi=B4l2k|g;2%#m& z*jfX^%b!A8#bI!j9-0Fi0bOXl(-c^AB9|nQaE`*)Hw+o&jS9@7&Gov#HbD~#d{twV zXd^Tr^mWLfFh$@Dr$e;PBEz4(-2q1FF0}c;~B5sA}+Q>TOoP+t>wf)V9Iy=5ruQa;z)y zI9C9*oUga6=hxw6QasLPnee@3^Rr*M{CdaL5=R41nLs(AHk_=Y+A9$2&H(B7!_pURs&8aNw7?`&Z&xY_Ye z)~D5Bog^td-^QbUtkTirdyK^mTHAOuptDflut!#^lnKqU md>ggs(5nOWAqO?umG&QVYK#ibz}*4>0000U6E9hRK9^#O7(mu>ETqrXGsduA8$)?`v2seloOCza43C{NQ$$gAOH**MCn0Q?+L7dl7qnbRdqZ8LSVp1ItDxhxD?t@5_yHg6A8yI zC*%Wgg22K|8E#!~cTNYR~@Y9KepMPrrB8cABapAFa=`H+UGhkXUZV1GnwR1*lPyZ;*K(i~2gp|@bzp8}og7e*#% zEnr|^CWdVV!-4*Y_7rFvlww2Ze+>j*!Z!pQ?2l->4q#nqRu9`ELo6RMS5=br47g_X zRw}P9a7RRYQ%2Vsd0Me{_(EggTnuN6j=-?uFS6j^u69elMypu?t>op*wBx<=Wx8?( ztpe^(fwM6jJX7M-l*k3kEpWOl_Vk3@(_w4oc}4YF4|Rt=2V^XU?#Yz`8(e?aZ@#li0n*=g^qOcVpd-Wbok=@b#Yw zqn8u9a)z>l(1kEaPYZ6hwubN6i<8QHgsu0oE) ziJ(p;Wxm>sf!K+cw>R-(^Y2_bahB+&KI9y^);#0qt}t-$C|Bo71lHi{_+lg#f%RFy z0um=e3$K3i6K{U_4K!EX?F&rExl^W|G8Z8;`5z-k}OGNZ0#WVb$WCpQu-_YsiqKP?BB# vzVHS-CTUF4Ozn5G+mq_~Qqto~ahA+K`|lyv3(-e}00000NkvXXu0mjfd`9t{ literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..d0ef06e7edb86cdfe0d15b4b0d98334a86163658 GIT binary patch literal 1716 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 literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c8f9ed8f5cee1c98386d13b17e89f719e83555b2 GIT binary patch literal 1895 zcmV-t2blPYP)FQtfgmafE#=YDCq`qUBt#QpG%*H6QHY765~R=q zZ6iudfM}q!Pz#~9JgOi8QJ|DSu?1-*(kSi1K4#~5?#|rh?sS)(-JQqX*}ciXJ56_H zdw=^s_srbAdqxlvGyrgGet#6T7_|j;95sL%MtM;q86vOxKM$f#puR)Bjv9Zvz9-di zXOTSsZkM83)E9PYBXC<$6(|>lNLVBb&&6y{NByFCp%6+^ALR@NCTse_wqvNmSWI-m z!$%KlHFH2omF!>#%1l3LTZg(s7eof$7*xB)ZQ0h?ejh?Ta9fDv59+u#MokW+1t8Zb zgHv%K(u9G^Lv`lh#f3<6!JVTL3(dCpxHbnbA;kKqQyd1~^Xe0VIaYBSWm6nsr;dFj z4;G-RyL?cYgsN1{L4ZFFNa;8)Rv0fM0C(~Tkit94 zz#~A)59?QjD&pAPSEQ)p8gP|DS{ng)j=2ux)_EzzJ773GmQ_Cic%3JJhC0t2cx>|v zJcVusIB!%F90{+}8hG3QU4KNeKmK%T>mN57NnCZ^56=0?&3@!j>a>B43pi{!u z7JyDj7`6d)qVp^R=%j>UIY6f+3`+qzIc!Y_=+uN^3BYV|o+$vGo-j-Wm<10%A=(Yk^beI{t%ld@yhKjq0iNjqN4XMGgQtbKubPM$JWBz}YA65k%dm*awtC^+f;a-x4+ddbH^7iDWGg&N0n#MW{kA|=8iMUiFYvMoDY@sPC#t$55gn6ykUTPAr`a@!(;np824>2xJthS z*ZdmT`g5-`BuJs`0LVhz+D9NNa3<=6m;cQLaF?tCv8)zcRSh66*Z|vXhG@$I%U~2l z?`Q zykI#*+rQ=z6Jm=Bui-SfpDYLA=|vzGE(dYm=OC8XM&MDo7ux4UF1~0J1+i%aCUpRe zt3L_uNyQ*cE(38Uy03H%I*)*Bh=Lb^Xj3?I^Hnbeq72(EOK^Y93CNp*uAA{5Lc=ky zx=~RKa4{iTm{_>_vSCm?$Ej=i6@=m%@VvAITnigVg{&@!7CDgs908761meDK5azA} z4?=NOH|PdvabgJ&fW2{Mo$Q0CcD8Qc84%{JPYt5EiG{MdLIAeX%T=D7NIP4%Hw}p9 zg)==!2Lbp#j{u_}hMiao9=!VSyx0gHbeCS`;q&vzeq|fs`y&^X-lso(Ls@-706qmA z7u*T5PMo_w3{se1t2`zWeO^hOvTsohG_;>J0wVqVe+n)AbQCx)yh9;w+J6?NF5Lmo zecS@ieAKL8%bVd@+-KT{yI|S}O>pYckUFs;ry9Ow$CD@ztz5K-*D$^{i(_1llhSh^ zEkL$}tsQt5>QA^;QgjgIfBDmcOgi5YDyu?t6vSnbp=1+@6D& z5MJ}B8q;bRlVoxasyhcUF1+)o`&3r0colr}QJ3hcSdLu;9;td>kf@Tcn<@9sIx&=m z;AD;SCh95=&p;$r{Xz3iWCO^MX83AGJ(yH&eTXgv|0=34#-&WAmw{)U7OU9!Wz^!7 zZ%jZFi@JR;>Mhi7S>V7wQ176|FdW2m?&`qa(ScO^CFPR80HucLHOTy%5s*HR0^8)i h0WYBP*#0Ks^FNSabJA*5${_#%002ovPDHLkV1oKhTl@e3 literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..a6d6b8609df07bf62e5100a53a01510388bd2b22 GIT binary patch literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a6d6b8609df07bf62e5100a53a01510388bd2b22 GIT binary patch literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..75b2d164a5a98e212cca15ea7bf2ab5de5108680 GIT binary patch literal 3831 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 literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/medicare_doctor/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..c4df70d39da7941ef3f6dcb7f06a192d8dcb308d GIT binary patch literal 1888 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 iW8Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 0000000..89c2725 --- /dev/null +++ b/medicare_doctor/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/medicare_doctor/ios/Runner/Base.lproj/LaunchScreen.storyboard b/medicare_doctor/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..f2e259c --- /dev/null +++ b/medicare_doctor/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/medicare_doctor/ios/Runner/Base.lproj/Main.storyboard b/medicare_doctor/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 0000000..f3c2851 --- /dev/null +++ b/medicare_doctor/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/medicare_doctor/ios/Runner/Info.plist b/medicare_doctor/ios/Runner/Info.plist new file mode 100644 index 0000000..33e5b6e --- /dev/null +++ b/medicare_doctor/ios/Runner/Info.plist @@ -0,0 +1,45 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + medicare_doctor + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UIViewControllerBasedStatusBarAppearance + + + diff --git a/medicare_doctor/ios/Runner/Runner-Bridging-Header.h b/medicare_doctor/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 0000000..308a2a5 --- /dev/null +++ b/medicare_doctor/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/medicare_doctor/lib/constants.dart b/medicare_doctor/lib/constants.dart new file mode 100644 index 0000000..4f6585a --- /dev/null +++ b/medicare_doctor/lib/constants.dart @@ -0,0 +1,36 @@ +import 'package:flutter/material.dart'; + +const kSendButtonTextStyle = TextStyle( + color: Colors.lightBlueAccent, + fontWeight: FontWeight.bold, + fontSize: 18.0, +); + +const kMessageTextFieldDecoration = InputDecoration( + contentPadding: EdgeInsets.symmetric(vertical: 10.0, horizontal: 20.0), + hintText: 'Type your message here...', + border: InputBorder.none, +); + +const kMessageContainerDecoration = BoxDecoration( + border: Border( + top: BorderSide(color: Colors.lightBlueAccent, width: 2.0), + ), +); + +const kTextFieldDecoration = InputDecoration( + hintText: 'Enter a value', + contentPadding: + EdgeInsets.symmetric(vertical: 10.0, horizontal: 20.0), + border: OutlineInputBorder( + borderRadius: BorderRadius.all(Radius.circular(32.0)), + ), + enabledBorder: OutlineInputBorder( + borderSide: BorderSide(color: Colors.blueAccent, width: 1.0), + borderRadius: BorderRadius.all(Radius.circular(32.0)), + ), + focusedBorder: OutlineInputBorder( + borderSide: BorderSide(color: Colors.blueAccent, width: 2.0), + borderRadius: BorderRadius.all(Radius.circular(32.0)), + ), +); \ No newline at end of file diff --git a/medicare_doctor/lib/login/auth.dart b/medicare_doctor/lib/login/auth.dart new file mode 100644 index 0000000..cb80ab7 --- /dev/null +++ b/medicare_doctor/lib/login/auth.dart @@ -0,0 +1,34 @@ +import 'dart:async'; +import 'package:firebase_auth/firebase_auth.dart'; + +abstract class BaseAuth { + Future currentUser(); + Future signIn(String email, String password); + Future createUser(String email, String password); + Future signOut(); +} + +class Auth implements BaseAuth { + final FirebaseAuth _firebaseAuth = FirebaseAuth.instance; + + Future signIn(String email, String password) async { + FirebaseUser user = (await _firebaseAuth.signInWithEmailAndPassword( + email: email, password: password)) as FirebaseUser; + return user.uid; + } + + Future createUser(String email, String password) async { + FirebaseUser user = (await _firebaseAuth.createUserWithEmailAndPassword( + email: email, password: password)) as FirebaseUser; + return user.uid; + } + + Future currentUser() async { + FirebaseUser user = await _firebaseAuth.currentUser(); + return user != null ? user.uid : null; + } + + Future signOut() async { + return _firebaseAuth.signOut(); + } +} diff --git a/medicare_doctor/lib/login/home_page.dart b/medicare_doctor/lib/login/home_page.dart new file mode 100644 index 0000000..ee8ae0e --- /dev/null +++ b/medicare_doctor/lib/login/home_page.dart @@ -0,0 +1,36 @@ +import 'package:flutter/material.dart'; +import 'package:medicare_doctor/login/auth.dart'; + +class HomePage extends StatelessWidget { + HomePage({this.auth, this.onSignOut}); + final BaseAuth auth; + final VoidCallback onSignOut; + + @override + Widget build(BuildContext context) { + void _signOut() async { + try { + await auth.signOut(); + onSignOut(); + } catch (e) { + print(e); + } + } + + return new Scaffold( + appBar: new AppBar( + actions: [ + new FlatButton( + onPressed: _signOut, + child: new Text('Logout', + style: new TextStyle(fontSize: 17.0, color: Colors.white))) + ], + ), + body: new Center( + child: new Text( + 'Welcome', + style: new TextStyle(fontSize: 32.0), + ), + )); + } +} diff --git a/medicare_doctor/lib/login/root_page.dart b/medicare_doctor/lib/login/root_page.dart new file mode 100644 index 0000000..7c11bf0 --- /dev/null +++ b/medicare_doctor/lib/login/root_page.dart @@ -0,0 +1,53 @@ +import 'package:flutter/material.dart'; +import 'package:medicare_doctor/login/auth.dart'; +import 'package:medicare_doctor/screens/login_page.dart'; +import 'package:medicare_doctor/login/home_page.dart'; + +class RootPage extends StatefulWidget { + RootPage({Key key, this.auth}) : super(key: key); + final BaseAuth auth; + + @override + State createState() => new _RootPageState(); +} + +enum AuthStatus { + notSignedIn, + signedIn, +} + +class _RootPageState extends State { + AuthStatus authStatus = AuthStatus.notSignedIn; + + initState() { + super.initState(); + widget.auth.currentUser().then((userId) { + setState(() { + authStatus = + userId != null ? AuthStatus.signedIn : AuthStatus.notSignedIn; + }); + }); + } + + void _updateAuthStatus(AuthStatus status) { + setState(() { + authStatus = status; + }); + } + + @override + Widget build(BuildContext context) { + switch (authStatus) { + case AuthStatus.notSignedIn: + return new LoginPage( + title: 'Flutter Login', + auth: widget.auth, + onSignIn: () => _updateAuthStatus(AuthStatus.signedIn), + ); + case AuthStatus.signedIn: + return new HomePage( + auth: widget.auth, + onSignOut: () => _updateAuthStatus(AuthStatus.notSignedIn)); + } + } +} diff --git a/medicare_doctor/lib/main.dart b/medicare_doctor/lib/main.dart new file mode 100644 index 0000000..abe967a --- /dev/null +++ b/medicare_doctor/lib/main.dart @@ -0,0 +1,22 @@ +import 'package:flutter/material.dart'; +import 'package:medicare_doctor/screens/chat.dart'; +import 'package:medicare_doctor/screens/doctor_appointments.dart'; +import 'package:medicare_doctor/screens/home.dart'; + +void main() { + runApp(MedicareD()); +} + +class MedicareD extends StatelessWidget { + @override + Widget build(BuildContext context) { + return MaterialApp( + theme: ThemeData( + primarySwatch: Colors.blue, + primaryColor: Colors.blue, + visualDensity: VisualDensity.adaptivePlatformDensity, + ), + home: ChatScreen(), + ); + } +} diff --git a/medicare_doctor/lib/screens/chat.dart b/medicare_doctor/lib/screens/chat.dart new file mode 100644 index 0000000..87605f7 --- /dev/null +++ b/medicare_doctor/lib/screens/chat.dart @@ -0,0 +1,201 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:medicare_doctor/constants.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:medicare_doctor/video_call/call.dart'; + + + +final _firestore = Firestore.instance; +FirebaseUser loggedInUser; + +class ChatScreen extends StatefulWidget { + static const String id = 'chat_screen'; + @override + _ChatScreenState createState() => _ChatScreenState(); +} + +class _ChatScreenState extends State { + final messageTextController = new TextEditingController(); + final _auth = FirebaseAuth.instance; + + String messageText; + @override + void initState(){ + super.initState(); + getCurrentUser(); + } + + + + void getCurrentUser() async{ + try { + final user = await _auth.currentUser(); + if (user != null) { + loggedInUser = user; + print(loggedInUser.email); + } + } + catch (e){ + print(e); + } + } + + + void messagesStream() async { + await for (var snapshot in _firestore.collection('messages').snapshots()) { + for (var message in snapshot.documents) { + print(message.data); + } + } + } + + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + leading: null, + actions: [ + IconButton( + icon: Icon(Icons.video_call), + onPressed: () { + Navigator.of(context).push(MaterialPageRoute(builder: (context) => CallPage())); + + }), + ], + title: Text('Chat'), + backgroundColor: Colors.lightBlueAccent, + ), + body: SafeArea( + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + MessagesStream(), + Container( + decoration: kMessageContainerDecoration, + child: Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Expanded( + child: TextField( + controller: messageTextController, + onChanged: (value) { + + //Do something with the user input. + messageText = value; + }, + decoration: kMessageTextFieldDecoration, + ), + ), + FlatButton( + onPressed: () { + messageTextController.clear(); + //Implement send functionality. + _firestore.collection('messages').add({ + 'text': messageText, + 'sender': loggedInUser.email, + }); + + }, + child: Text( + 'Send', + style: kSendButtonTextStyle, + ), + ), + ], + ), + ), + ], + ), + ), + ); + } +} + + +class MessagesStream extends StatelessWidget { + @override + Widget build(BuildContext context) { + return StreamBuilder( + stream: _firestore.collection('messages').snapshots(), + // ignore: missing_return + builder: (context,snapshot){ + if(!snapshot.hasData){ + return Center( + child: CircularProgressIndicator( + backgroundColor: Colors.lightBlueAccent, + ), + + ); + } + final messages = snapshot.data.documents.reversed; + List messageBubbles = []; + for(var message in messages){ + final messageText = message.data['text']; + final messageSender = message.data['sender']; + + final currentUser = loggedInUser.email; + + + final messageBubble = MessageBubble(sender: messageSender,text: messageText,isMe: currentUser == messageSender,); + + messageBubbles.add(messageBubble); + + } + return Expanded( + child: ListView( + reverse: true, + padding: EdgeInsets.symmetric(horizontal: 10.0, vertical: 20.0), + children: messageBubbles, + ), + ); + + }, + ); + } +} + + +class MessageBubble extends StatelessWidget { + + MessageBubble({this.sender,this.text,this.isMe}); + + final String sender; + final String text; + final bool isMe; + + @override + Widget build(BuildContext context) { + return Padding( + padding: EdgeInsets.all(10.0), + child: Column( + crossAxisAlignment: isMe ? CrossAxisAlignment.end : CrossAxisAlignment.start, + children: [ + Text(sender, style: TextStyle( + fontSize: 12.0, + color: Colors.black54, + ), + ), + Material( + elevation: 5.0, + borderRadius: isMe ? BorderRadius.only(topLeft: Radius.circular(30.0),bottomLeft: Radius.circular(30.0),bottomRight: Radius.circular(30.0)) : BorderRadius.only(topRight: Radius.circular(30.0),bottomLeft: Radius.circular(30.0),bottomRight: Radius.circular(30.0)), + color: isMe ? Colors.lightBlueAccent : Colors.white, + child: Padding( + padding: EdgeInsets.symmetric(vertical: 10.0,horizontal: 20.0), + child: Text('$text', + style: TextStyle( + color: isMe ? Colors.white : Colors.black54, + fontSize: 15.0, + ), + ), + ), + + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/medicare_doctor/lib/screens/doctor_appointments.dart b/medicare_doctor/lib/screens/doctor_appointments.dart new file mode 100644 index 0000000..ee0c4ca --- /dev/null +++ b/medicare_doctor/lib/screens/doctor_appointments.dart @@ -0,0 +1,162 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +//import 'package:flutter/services.dart'; + + + +class DoctorAppointment extends StatelessWidget { + @override + Widget build(BuildContext context) { + return MaterialApp( + title: "Doctor Appointment", + theme: ThemeData( + primarySwatch: Colors.blue, + ), + home: MainPage(), + debugShowCheckedModeBanner: false, + ); + } +} + +class MainPage extends StatefulWidget { + @override + _MainPageState createState() => _MainPageState(); +} + +class _MainPageState extends State { + List names = [ + "Name", + "Name", + "Ali Alshaibani", + "Rohini", + ]; + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: Text("MEDICURE"), + ), + backgroundColor: Colors.white, + body: Center( + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + "Appointments", + style: TextStyle( + color: Colors.black, + fontSize: 30.0, + + fontWeight: FontWeight.bold), + ), + Container( + margin: EdgeInsets.only(top: 50.0, left: 10.0, right: 10.0), + padding: EdgeInsets.symmetric(horizontal: 5.0, vertical: 00.0), + width: MediaQuery.of(context).size.width, + height: MediaQuery.of(context).size.height / 2, + decoration: BoxDecoration( + border: Border.all( + color: Colors.deepPurple, + ), + borderRadius: BorderRadius.circular(10.0), + ), + child: ListView.builder( + itemCount: names.length, + shrinkWrap: true, + itemBuilder: (BuildContext context, int index) => Container( + width: MediaQuery.of(context).size.width, + height: MediaQuery.of(context).size.height / 6, + padding: EdgeInsets.symmetric(horizontal: 5.0, vertical: 5.0), + margin: EdgeInsets.symmetric(horizontal: 5.0, vertical: 00.0), + child: Card( + elevation: 10.0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5.0), + ), + child: Container( + width: MediaQuery.of(context).size.width, + padding: + EdgeInsets.symmetric(horizontal: 5.0, vertical: 5.0), + decoration: BoxDecoration( + border: Border.all( + color: Colors.deepPurple, + ), + borderRadius: BorderRadius.circular(5.0), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + padding: EdgeInsets.symmetric( + horizontal: 2.0, vertical: 00.0), + margin: EdgeInsets.all(00.0), + decoration: BoxDecoration( + border: Border.all( + color: Colors.black, + ), + borderRadius: BorderRadius.circular(30.0), + ), + width: 50.0, + height: 50.0, + child: CircleAvatar( + backgroundColor: Colors.deepPurpleAccent, +// foregroundColor: Colors.white, + backgroundImage: NetworkImage( + "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcSya2MDHt8WIgyWsx5-t2KFF7oFwpqd8d8dZw&usqp=CAU"), +// child: Text( +// names[0], +// style: TextStyle(color: Colors.white), +// textAlign: TextAlign.center, +// ), + ), + ), + SizedBox(width: 5.0), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(names[index], + style: TextStyle( + color: Colors.black, + fontSize: 18.0, + fontWeight: FontWeight.bold)), + ], + ), + ], + ), + Container( + alignment: Alignment.center, + padding: EdgeInsets.symmetric( + horizontal: 5.0, vertical: 10.0), + child: FlatButton( + onPressed: () {}, + color: Colors.deepPurpleAccent, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(20.0), + side: BorderSide(color: Colors.black), + ), + child: Text( + "START", + style: TextStyle(color: Colors.white), + ), + ), + ), + ], + ), + ), + ), + ), + ), + ), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/medicare_doctor/lib/screens/home.dart b/medicare_doctor/lib/screens/home.dart new file mode 100644 index 0000000..da9cbec --- /dev/null +++ b/medicare_doctor/lib/screens/home.dart @@ -0,0 +1,58 @@ +import 'package:animated_text_kit/animated_text_kit.dart'; +import 'package:flutter/material.dart'; +import 'package:medicare_doctor/screens/login_page.dart'; + +class Home extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Scaffold( + body: Container( + decoration: BoxDecoration( + gradient: LinearGradient(colors: [Colors.blueAccent,Colors.white]), + ), + padding: EdgeInsets.only(top: 200.0, left: 100.0), + child: Column( + children: [ + Row( + children: [ + SizedBox( + width: 250.0, + child: ColorizeAnimatedTextKit( + + text: [ + "Medicure", + ], + textStyle: + TextStyle(fontSize: 50.0, fontFamily: "Horizon"), + colors: [ + Colors.purple, + Colors.blue, + Colors.yellow, + Colors.red, + ], + textAlign: TextAlign.start, + alignment: + AlignmentDirectional.topStart // or Alignment.topLeft + ), + ), + ], + ), + SizedBox(height: 400.0), + FlatButton( + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular( + 10.0), + ), + onPressed: () { + Navigator.of(context).push(MaterialPageRoute(builder: (context) => LoginPage())); + }, + child: Text('Get Started'), + color: Colors.blue, + textColor: Colors.white), + ], + ), + ), + ); + } +} diff --git a/medicare_doctor/lib/screens/login_page.dart b/medicare_doctor/lib/screens/login_page.dart new file mode 100644 index 0000000..970249d --- /dev/null +++ b/medicare_doctor/lib/screens/login_page.dart @@ -0,0 +1,171 @@ +import 'package:flutter/material.dart'; + +import 'package:medicare_doctor/login/auth.dart'; + + +class LoginPage extends StatefulWidget { + LoginPage({Key key, this.title, this.auth, this.onSignIn}) : super(key: key); + + final String title; + final BaseAuth auth; + final VoidCallback onSignIn; + + @override + _LoginPageState createState() => new _LoginPageState(); +} + +enum FormType { login, register } + +class _LoginPageState extends State { + static final formKey = new GlobalKey(); + + String _email; + String _password; + FormType _formType = FormType.login; + String _authHint = ''; + + bool validateAndSave() { + final form = formKey.currentState; + if (form.validate()) { + form.save(); + return true; + } + return false; + } + + void validateAndSubmit() async { + if (validateAndSave()) { + try { + String userId = _formType == FormType.login + ? await widget.auth.signIn(_email, _password) + : await widget.auth.createUser(_email, _password); + setState(() { + _authHint = 'Signed In\n\nUser id: $userId'; + //Navigator.of(context).push(MaterialPageRoute(builder: (context) => MediHome())); + }); + widget.onSignIn(); + } catch (e) { + setState(() { + _authHint = 'Sign In Error\n\n${e.toString()}'; + }); + print(e); + } + } else { + setState(() { + _authHint = ''; + }); + } + } + + void moveToRegister() { + formKey.currentState.reset(); + setState(() { + _formType = FormType.register; + _authHint = ''; + }); + } + + void moveToLogin() { + formKey.currentState.reset(); + setState(() { + _formType = FormType.login; + _authHint = ''; + }); + } + + List usernameAndPassword() { + return [ + padded( + child: new TextFormField( + key: new Key('email'), + decoration: new InputDecoration(labelText: 'Email'), + autocorrect: false, + validator: (val) => val.isEmpty ? 'Email can\'t be empty.' : null, + onSaved: (val) => _email = val, + )), + padded( + child: new TextFormField( + key: new Key('password'), + decoration: new InputDecoration(labelText: 'Password'), + obscureText: true, + autocorrect: false, + validator: (val) => val.isEmpty ? 'Password can\'t be empty.' : null, + onSaved: (val) => _password = val, + )), + ]; + } + + List submitWidgets() { + switch (_formType) { + case FormType.login: + return [ + new FlatButton( + key: new Key('login'), + child:Text('Login'), + + onPressed: validateAndSubmit,), + new FlatButton( + key: new Key('need-account'), + child: new Text("Need an account? Register"), + onPressed: moveToRegister,), + ]; + case FormType.register: + return [ + new FlatButton( + key: new Key('register'), + child: Text('Create an account'), + + onPressed: validateAndSubmit), + new FlatButton( + key: new Key('need-login'), + child: new Text("Have an account? Login"), + onPressed: moveToLogin), + ]; + } + return null; + } + + Widget hintText() { + return new Container( + //height: 80.0, + padding: const EdgeInsets.all(32.0), + child: new Text(_authHint, + key: new Key('hint'), + style: new TextStyle(fontSize: 18.0, color: Colors.grey), + textAlign: TextAlign.center)); + } + + @override + Widget build(BuildContext context) { + return new Scaffold( + + backgroundColor: Colors.grey[300], + body: new Container( + padding: const EdgeInsets.only(top: 220.0,left: 16.0,right: 16.0), + child: new Column(children: [ + new Card( + child: new Column( + mainAxisSize: MainAxisSize.min, + children: [ + new Container( + padding: const EdgeInsets.all(16.0), + child: new Form( + key: formKey, + child: new Column( + crossAxisAlignment: + CrossAxisAlignment.stretch, + children: + usernameAndPassword() + submitWidgets(), + ))), + ])), + hintText() + ]))); + } + + Widget padded({Widget child}) { + return new Padding( + padding: EdgeInsets.symmetric(vertical: 8.0), + child: child, + ); + } +} diff --git a/medicare_doctor/lib/video_call/call.dart b/medicare_doctor/lib/video_call/call.dart new file mode 100644 index 0000000..c54b801 --- /dev/null +++ b/medicare_doctor/lib/video_call/call.dart @@ -0,0 +1,324 @@ +import 'dart:async'; + +import 'package:agora_rtc_engine/agora_rtc_engine.dart'; +import 'package:flutter/material.dart'; + +import 'package:medicare_doctor/video_call/settings.dart'; + +class CallPage extends StatefulWidget { + /// non-modifiable channel name of the page + final String channelName; + + /// non-modifiable client role of the page + final ClientRole role; + + /// Creates a call page with given channel name. + const CallPage({Key key, this.channelName, this.role}) : super(key: key); + + @override + _CallPageState createState() => _CallPageState(); +} + +class _CallPageState extends State { + static final _users = []; + final _infoStrings = []; + bool muted = false; + + @override + void dispose() { + // clear users + _users.clear(); + // destroy sdk + AgoraRtcEngine.leaveChannel(); + AgoraRtcEngine.destroy(); + super.dispose(); + } + + @override + void initState() { + super.initState(); + // initialize agora sdk + initialize(); + } + + Future initialize() async { + if (APP_ID.isEmpty) { + setState(() { + _infoStrings.add( + 'APP_ID missing, please provide your APP_ID in settings.dart', + ); + _infoStrings.add('Agora Engine is not starting'); + }); + return; + } + + await _initAgoraRtcEngine(); + _addAgoraEventHandlers(); + await AgoraRtcEngine.enableWebSdkInteroperability(true); + VideoEncoderConfiguration configuration = VideoEncoderConfiguration(); + configuration.dimensions = Size(1920, 1080); + await AgoraRtcEngine.setVideoEncoderConfiguration(configuration); + await AgoraRtcEngine.joinChannel(null, widget.channelName, null, 0); + } + + /// Create agora sdk instance and initialize + Future _initAgoraRtcEngine() async { + await AgoraRtcEngine.create(APP_ID); + await AgoraRtcEngine.enableVideo(); + await AgoraRtcEngine.setChannelProfile(ChannelProfile.LiveBroadcasting); + await AgoraRtcEngine.setClientRole(widget.role); + } + + /// Add agora event handlers + void _addAgoraEventHandlers() { + AgoraRtcEngine.onError = (dynamic code) { + setState(() { + final info = 'onError: $code'; + _infoStrings.add(info); + }); + }; + + AgoraRtcEngine.onJoinChannelSuccess = ( + String channel, + int uid, + int elapsed, + ) { + setState(() { + final info = 'onJoinChannel: $channel, uid: $uid'; + _infoStrings.add(info); + }); + }; + + AgoraRtcEngine.onLeaveChannel = () { + setState(() { + _infoStrings.add('onLeaveChannel'); + _users.clear(); + }); + }; + + AgoraRtcEngine.onUserJoined = (int uid, int elapsed) { + setState(() { + final info = 'userJoined: $uid'; + _infoStrings.add(info); + _users.add(uid); + }); + }; + + AgoraRtcEngine.onUserOffline = (int uid, int reason) { + setState(() { + final info = 'userOffline: $uid'; + _infoStrings.add(info); + _users.remove(uid); + }); + }; + + AgoraRtcEngine.onFirstRemoteVideoFrame = ( + int uid, + int width, + int height, + int elapsed, + ) { + setState(() { + final info = 'firstRemoteVideo: $uid ${width}x $height'; + _infoStrings.add(info); + }); + }; + } + + /// Helper function to get list of native views + List _getRenderViews() { + final List list = []; + if (widget.role == ClientRole.Broadcaster) { + list.add(AgoraRenderWidget(0, local: true, preview: true)); + } + _users.forEach((int uid) => list.add(AgoraRenderWidget(uid))); + return list; + } + + /// Video view wrapper + Widget _videoView(view) { + return Expanded(child: Container(child: view)); + } + + /// Video view row wrapper + Widget _expandedVideoRow(List views) { + final wrappedViews = views.map(_videoView).toList(); + return Expanded( + child: Row( + children: wrappedViews, + ), + ); + } + + /// Video layout wrapper + Widget _viewRows() { + final views = _getRenderViews(); + switch (views.length) { + case 1: + return Container( + child: Column( + children: [_videoView(views[0])], + )); + case 2: + return Container( + child: Column( + children: [ + _expandedVideoRow([views[0]]), + _expandedVideoRow([views[1]]) + ], + )); + case 3: + return Container( + child: Column( + children: [ + _expandedVideoRow(views.sublist(0, 2)), + _expandedVideoRow(views.sublist(2, 3)) + ], + )); + case 4: + return Container( + child: Column( + children: [ + _expandedVideoRow(views.sublist(0, 2)), + _expandedVideoRow(views.sublist(2, 4)) + ], + )); + default: + } + return Container(); + } + + /// Toolbar layout + Widget _toolbar() { + if (widget.role == ClientRole.Audience) return Container(); + return Container( + alignment: Alignment.bottomCenter, + padding: const EdgeInsets.symmetric(vertical: 48), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + RawMaterialButton( + onPressed: _onToggleMute, + child: Icon( + muted ? Icons.mic_off : Icons.mic, + color: muted ? Colors.white : Colors.blueAccent, + size: 20.0, + ), + shape: CircleBorder(), + elevation: 2.0, + fillColor: muted ? Colors.blueAccent : Colors.white, + padding: const EdgeInsets.all(12.0), + ), + RawMaterialButton( + onPressed: () => _onCallEnd(context), + child: Icon( + Icons.call_end, + color: Colors.white, + size: 35.0, + ), + shape: CircleBorder(), + elevation: 2.0, + fillColor: Colors.redAccent, + padding: const EdgeInsets.all(15.0), + ), + RawMaterialButton( + onPressed: _onSwitchCamera, + child: Icon( + Icons.switch_camera, + color: Colors.blueAccent, + size: 20.0, + ), + shape: CircleBorder(), + elevation: 2.0, + fillColor: Colors.white, + padding: const EdgeInsets.all(12.0), + ) + ], + ), + ); + } + + /// Info panel to show logs + Widget _panel() { + return Container( + padding: const EdgeInsets.symmetric(vertical: 48), + alignment: Alignment.bottomCenter, + child: FractionallySizedBox( + heightFactor: 0.5, + child: Container( + padding: const EdgeInsets.symmetric(vertical: 48), + child: ListView.builder( + reverse: true, + itemCount: _infoStrings.length, + itemBuilder: (BuildContext context, int index) { + if (_infoStrings.isEmpty) { + return null; + } + return Padding( + padding: const EdgeInsets.symmetric( + vertical: 3, + horizontal: 10, + ), + child: Row( + mainAxisSize: MainAxisSize.min, + children: [ + Flexible( + child: Container( + padding: const EdgeInsets.symmetric( + vertical: 2, + horizontal: 5, + ), + decoration: BoxDecoration( + color: Colors.yellowAccent, + borderRadius: BorderRadius.circular(5), + ), + child: Text( + _infoStrings[index], + style: TextStyle(color: Colors.blueGrey), + ), + ), + ) + ], + ), + ); + }, + ), + ), + ), + ); + } + + void _onCallEnd(BuildContext context) { + Navigator.pop(context); + } + + void _onToggleMute() { + setState(() { + muted = !muted; + }); + AgoraRtcEngine.muteLocalAudioStream(muted); + } + + void _onSwitchCamera() { + AgoraRtcEngine.switchCamera(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: Text('Agora Flutter QuickStart'), + ), + backgroundColor: Colors.black, + body: Center( + child: Stack( + children: [ + _viewRows(), + _panel(), + _toolbar(), + ], + ), + ), + ); + } +} \ No newline at end of file diff --git a/medicare_doctor/lib/video_call/settings.dart b/medicare_doctor/lib/video_call/settings.dart new file mode 100644 index 0000000..ba8b1b3 --- /dev/null +++ b/medicare_doctor/lib/video_call/settings.dart @@ -0,0 +1,2 @@ +// Agora AppId +const APP_ID = "c0c3bbe6cf5b4771ad8019c8dc192631"; \ No newline at end of file diff --git a/medicare_doctor/pubspec.lock b/medicare_doctor/pubspec.lock new file mode 100644 index 0000000..bd87b70 --- /dev/null +++ b/medicare_doctor/pubspec.lock @@ -0,0 +1,327 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + agora_rtc_engine: + dependency: "direct main" + description: + name: agora_rtc_engine + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.15" + animated_text_kit: + dependency: "direct main" + description: + name: animated_text_kit + url: "https://pub.dartlang.org" + source: hosted + version: "2.2.0" + archive: + dependency: transitive + description: + name: archive + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.13" + args: + dependency: transitive + description: + name: args + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.0" + async: + dependency: transitive + description: + name: async + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.1" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.0" + charcode: + dependency: transitive + description: + name: charcode + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.3" + cloud_firestore: + dependency: "direct main" + description: + name: cloud_firestore + url: "https://pub.dartlang.org" + source: hosted + version: "0.13.7" + cloud_firestore_platform_interface: + dependency: transitive + description: + name: cloud_firestore_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.2" + cloud_firestore_web: + dependency: transitive + description: + name: cloud_firestore_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.1+2" + collection: + dependency: transitive + description: + name: collection + url: "https://pub.dartlang.org" + source: hosted + version: "1.14.12" + convert: + dependency: transitive + description: + name: convert + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.1" + crypto: + dependency: transitive + description: + name: crypto + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.4" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.3" + firebase: + dependency: transitive + description: + name: firebase + url: "https://pub.dartlang.org" + source: hosted + version: "7.3.0" + firebase_auth: + dependency: "direct main" + description: + name: firebase_auth + url: "https://pub.dartlang.org" + source: hosted + version: "0.15.5+3" + firebase_auth_platform_interface: + dependency: transitive + description: + name: firebase_auth_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.8" + firebase_auth_web: + dependency: transitive + description: + name: firebase_auth_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.3+1" + firebase_core: + dependency: transitive + description: + name: firebase_core + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.5" + firebase_core_platform_interface: + dependency: transitive + description: + name: firebase_core_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.4" + firebase_core_web: + dependency: transitive + description: + name: firebase_core_web + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.1+2" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + http: + dependency: transitive + description: + name: http + url: "https://pub.dartlang.org" + source: hosted + version: "0.12.2" + http_parser: + dependency: transitive + description: + name: http_parser + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.4" + image: + dependency: transitive + description: + name: image + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.12" + js: + dependency: transitive + description: + name: js + url: "https://pub.dartlang.org" + source: hosted + version: "0.6.2" + matcher: + dependency: transitive + description: + name: matcher + url: "https://pub.dartlang.org" + source: hosted + version: "0.12.6" + meta: + dependency: transitive + description: + name: meta + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.8" + path: + dependency: transitive + description: + name: path + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.4" + pedantic: + dependency: transitive + description: + name: pedantic + url: "https://pub.dartlang.org" + source: hosted + version: "1.9.0" + permission_handler: + dependency: "direct main" + description: + name: permission_handler + url: "https://pub.dartlang.org" + source: hosted + version: "4.4.0+hotfix.4" + permission_handler_platform_interface: + dependency: transitive + description: + name: permission_handler_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + petitparser: + dependency: transitive + description: + name: petitparser + url: "https://pub.dartlang.org" + source: hosted + version: "2.4.0" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.2" + quiver: + dependency: transitive + description: + name: quiver + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.3" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + url: "https://pub.dartlang.org" + source: hosted + version: "1.7.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + url: "https://pub.dartlang.org" + source: hosted + version: "1.9.3" + stream_channel: + dependency: transitive + description: + name: stream_channel + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.5" + term_glyph: + dependency: transitive + description: + name: term_glyph + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.0" + test_api: + dependency: transitive + description: + name: test_api + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.15" + typed_data: + dependency: transitive + description: + name: typed_data + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.6" + vector_math: + dependency: transitive + description: + name: vector_math + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.8" + xml: + dependency: transitive + description: + name: xml + url: "https://pub.dartlang.org" + source: hosted + version: "3.6.1" +sdks: + dart: ">=2.7.0 <3.0.0" + flutter: ">=1.12.13+hotfix.6 <2.0.0" diff --git a/medicare_doctor/pubspec.yaml b/medicare_doctor/pubspec.yaml new file mode 100644 index 0000000..6f4a6eb --- /dev/null +++ b/medicare_doctor/pubspec.yaml @@ -0,0 +1,81 @@ +name: medicare_doctor +description: A new Flutter application. + +# The following line prevents the package from being accidentally published to +# pub.dev using `pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.7.0 <3.0.0" + +dependencies: + flutter: + sdk: flutter + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^0.1.3 + animated_text_kit: ^2.2.0 + firebase_auth: ^0.15.3 + agora_rtc_engine: ^1.0.13 + permission_handler: ^4.4.0 + cloud_firestore: ^0.13.6 + +dev_dependencies: + flutter_test: + sdk: flutter + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages diff --git a/medicare_doctor/test/widget_test.dart b/medicare_doctor/test/widget_test.dart new file mode 100644 index 0000000..36d238f --- /dev/null +++ b/medicare_doctor/test/widget_test.dart @@ -0,0 +1,30 @@ +// This is a basic Flutter widget test. +// +// To perform an interaction with a widget in your test, use the WidgetTester +// utility that Flutter provides. For example, you can send tap and scroll +// gestures. You can also use WidgetTester to find child widgets in the widget +// tree, read text, and verify that the values of widget properties are correct. + +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + +import 'package:medicare_doctor/main.dart'; + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget(MedicareD()); + + // Verify that our counter starts at 0. + expect(find.text('0'), findsOneWidget); + expect(find.text('1'), findsNothing); + + // Tap the '+' icon and trigger a frame. + await tester.tap(find.byIcon(Icons.add)); + await tester.pump(); + + // Verify that our counter has incremented. + expect(find.text('0'), findsNothing); + expect(find.text('1'), findsOneWidget); + }); +} From 1756a29465a00be4805fa733b0fe734ea08aae54 Mon Sep 17 00:00:00 2001 From: BharathRoshan Date: Fri, 2 Oct 2020 10:46:41 +0530 Subject: [PATCH 2/5] Modified --- README.md | 20 -- medicare/android/app/build.gradle | 6 + medicare/android/app/google-services.json | 40 +++ medicare/android/build.gradle | 1 + medicare/{ => lib}/ios/.gitignore | 0 .../ios/Flutter/AppFrameworkInfo.plist | 0 medicare/{ => lib}/ios/Flutter/Debug.xcconfig | 0 .../{ => lib}/ios/Flutter/Release.xcconfig | 0 .../ios/Runner.xcodeproj/project.pbxproj | 0 .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcshareddata/WorkspaceSettings.xcsettings | 0 .../xcshareddata/xcschemes/Runner.xcscheme | 0 .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcshareddata/WorkspaceSettings.xcsettings | 0 .../{ => lib}/ios/Runner/AppDelegate.swift | 0 .../AppIcon.appiconset/Contents.json | 0 .../Icon-App-1024x1024@1x.png | Bin .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin .../Icon-App-83.5x83.5@2x.png | Bin .../LaunchImage.imageset/Contents.json | 0 .../LaunchImage.imageset/LaunchImage.png | Bin .../LaunchImage.imageset/LaunchImage@2x.png | Bin .../LaunchImage.imageset/LaunchImage@3x.png | Bin .../LaunchImage.imageset/README.md | 0 .../Runner/Base.lproj/LaunchScreen.storyboard | 0 .../ios/Runner/Base.lproj/Main.storyboard | 0 medicare/{ => lib}/ios/Runner/Info.plist | 0 .../ios/Runner/Runner-Bridging-Header.h | 0 medicare/lib/main.dart | 4 +- medicare/lib/rounded_button.dart | 31 +++ medicare/lib/screens/home.dart | 2 +- medicare/lib/screens/login_page.dart | 255 +++++++---------- medicare/lib/screens/register_screen.dart | 129 +++++++++ medicare/pubspec.lock | 7 + medicare/pubspec.yaml | 1 + medicare_doctor/android/app/build.gradle | 1 + medicare_doctor/lib/rounded_button.dart | 31 +++ medicare_doctor/lib/screens/home.dart | 2 +- medicare_doctor/lib/screens/login_page.dart | 256 +++++++----------- .../lib/screens/register_screen.dart | 141 ++++++++++ medicare_doctor/pubspec.lock | 7 + medicare_doctor/pubspec.yaml | 1 + 56 files changed, 594 insertions(+), 341 deletions(-) delete mode 100644 README.md create mode 100644 medicare/android/app/google-services.json rename medicare/{ => lib}/ios/.gitignore (100%) rename medicare/{ => lib}/ios/Flutter/AppFrameworkInfo.plist (100%) rename medicare/{ => lib}/ios/Flutter/Debug.xcconfig (100%) rename medicare/{ => lib}/ios/Flutter/Release.xcconfig (100%) rename medicare/{ => lib}/ios/Runner.xcodeproj/project.pbxproj (100%) rename medicare/{ => lib}/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata (100%) rename medicare/{ => lib}/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) rename medicare/{ => lib}/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings (100%) rename medicare/{ => lib}/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme (100%) rename medicare/{ => lib}/ios/Runner.xcworkspace/contents.xcworkspacedata (100%) rename medicare/{ => lib}/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) rename medicare/{ => lib}/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings (100%) rename medicare/{ => lib}/ios/Runner/AppDelegate.swift (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png (100%) rename medicare/{ => lib}/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md (100%) rename medicare/{ => lib}/ios/Runner/Base.lproj/LaunchScreen.storyboard (100%) rename medicare/{ => lib}/ios/Runner/Base.lproj/Main.storyboard (100%) rename medicare/{ => lib}/ios/Runner/Info.plist (100%) rename medicare/{ => lib}/ios/Runner/Runner-Bridging-Header.h (100%) create mode 100644 medicare/lib/rounded_button.dart create mode 100644 medicare/lib/screens/register_screen.dart create mode 100644 medicare_doctor/lib/rounded_button.dart create mode 100644 medicare_doctor/lib/screens/register_screen.dart diff --git a/README.md b/README.md deleted file mode 100644 index d95b63d..0000000 --- a/README.md +++ /dev/null @@ -1,20 +0,0 @@ -# **MEDICARE** - -**Project ID: 11** ->## ✍  PROJECT DESCRIPTION -A flutter android application for Easy interaction between patients and doctors. During a pandemic, many of the patients are looking to get regular health check-ups but due lock-down this seems impossible. The app uses YouTube API to call the video player to get indulge in streaming YouTube videos there, nearby locations are also set using Google Map API and incorporating with an ambulance database which provides real-time location of the ambulance nearby. - ->## 📂  RELEVANT TECHNOLOGY -* Flutter -* Firebase - ->## 💻  GETTING STARTED - -=> **Fork this repository to start contributing.** - -=> Open your Git Bash command window and in the root directory type the following commands : -```bash - 1) git init -initializes the git repository from the GitHub. - 2) git clone -Clone the repository to your local machine - (git clone https://github.com//LetsUpgrade/MEDICARE.git) -``` diff --git a/medicare/android/app/build.gradle b/medicare/android/app/build.gradle index 4c506e3..24d055f 100644 --- a/medicare/android/app/build.gradle +++ b/medicare/android/app/build.gradle @@ -38,6 +38,7 @@ android { targetSdkVersion 28 versionCode flutterVersionCode.toInteger() versionName flutterVersionName + multiDexEnabled true } buildTypes { @@ -46,9 +47,14 @@ android { // Signing with the debug keys for now, so `flutter run --release` works. signingConfig signingConfigs.debug } + dependencies { + // Add this line + implementation 'com.google.firebase:firebase-analytics:17.5.0' + } } } flutter { source '../..' } +apply plugin: 'com.google.gms.google-services' \ No newline at end of file diff --git a/medicare/android/app/google-services.json b/medicare/android/app/google-services.json new file mode 100644 index 0000000..55f03db --- /dev/null +++ b/medicare/android/app/google-services.json @@ -0,0 +1,40 @@ +{ + "project_info": { + "project_number": "154049021886", + "firebase_url": "https://primeval-melody-287418.firebaseio.com", + "project_id": "primeval-melody-287418", + "storage_bucket": "primeval-melody-287418.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:154049021886:android:3379971902da6bbd799bef", + "android_client_info": { + "package_name": "com.example.medicare" + } + }, + "oauth_client": [ + { + "client_id": "154049021886-49ugm75e3sj51qbve9b2qosu00cnj9v8.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyBRYOU4_xfabRubHuD0zzh4TA1vs3bYJDc" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "154049021886-49ugm75e3sj51qbve9b2qosu00cnj9v8.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } + } + ], + "configuration_version": "1" +} \ No newline at end of file diff --git a/medicare/android/build.gradle b/medicare/android/build.gradle index e0d7ae2..846858b 100644 --- a/medicare/android/build.gradle +++ b/medicare/android/build.gradle @@ -6,6 +6,7 @@ buildscript { dependencies { classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.google.gms:google-services:4.3.3' } } diff --git a/medicare/ios/.gitignore b/medicare/lib/ios/.gitignore similarity index 100% rename from medicare/ios/.gitignore rename to medicare/lib/ios/.gitignore diff --git a/medicare/ios/Flutter/AppFrameworkInfo.plist b/medicare/lib/ios/Flutter/AppFrameworkInfo.plist similarity index 100% rename from medicare/ios/Flutter/AppFrameworkInfo.plist rename to medicare/lib/ios/Flutter/AppFrameworkInfo.plist diff --git a/medicare/ios/Flutter/Debug.xcconfig b/medicare/lib/ios/Flutter/Debug.xcconfig similarity index 100% rename from medicare/ios/Flutter/Debug.xcconfig rename to medicare/lib/ios/Flutter/Debug.xcconfig diff --git a/medicare/ios/Flutter/Release.xcconfig b/medicare/lib/ios/Flutter/Release.xcconfig similarity index 100% rename from medicare/ios/Flutter/Release.xcconfig rename to medicare/lib/ios/Flutter/Release.xcconfig diff --git a/medicare/ios/Runner.xcodeproj/project.pbxproj b/medicare/lib/ios/Runner.xcodeproj/project.pbxproj similarity index 100% rename from medicare/ios/Runner.xcodeproj/project.pbxproj rename to medicare/lib/ios/Runner.xcodeproj/project.pbxproj diff --git a/medicare/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from medicare/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/medicare/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/medicare/lib/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme similarity index 100% rename from medicare/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme rename to medicare/lib/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme diff --git a/medicare/ios/Runner.xcworkspace/contents.xcworkspacedata b/medicare/lib/ios/Runner.xcworkspace/contents.xcworkspacedata similarity index 100% rename from medicare/ios/Runner.xcworkspace/contents.xcworkspacedata rename to medicare/lib/ios/Runner.xcworkspace/contents.xcworkspacedata diff --git a/medicare/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/medicare/lib/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from medicare/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to medicare/lib/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/medicare/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/medicare/lib/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from medicare/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to medicare/lib/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/medicare/ios/Runner/AppDelegate.swift b/medicare/lib/ios/Runner/AppDelegate.swift similarity index 100% rename from medicare/ios/Runner/AppDelegate.swift rename to medicare/lib/ios/Runner/AppDelegate.swift diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png diff --git a/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png rename to medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png diff --git a/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json rename to medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json diff --git a/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png rename to medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png diff --git a/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png rename to medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png diff --git a/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png rename to medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png diff --git a/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md similarity index 100% rename from medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md rename to medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md diff --git a/medicare/ios/Runner/Base.lproj/LaunchScreen.storyboard b/medicare/lib/ios/Runner/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from medicare/ios/Runner/Base.lproj/LaunchScreen.storyboard rename to medicare/lib/ios/Runner/Base.lproj/LaunchScreen.storyboard diff --git a/medicare/ios/Runner/Base.lproj/Main.storyboard b/medicare/lib/ios/Runner/Base.lproj/Main.storyboard similarity index 100% rename from medicare/ios/Runner/Base.lproj/Main.storyboard rename to medicare/lib/ios/Runner/Base.lproj/Main.storyboard diff --git a/medicare/ios/Runner/Info.plist b/medicare/lib/ios/Runner/Info.plist similarity index 100% rename from medicare/ios/Runner/Info.plist rename to medicare/lib/ios/Runner/Info.plist diff --git a/medicare/ios/Runner/Runner-Bridging-Header.h b/medicare/lib/ios/Runner/Runner-Bridging-Header.h similarity index 100% rename from medicare/ios/Runner/Runner-Bridging-Header.h rename to medicare/lib/ios/Runner/Runner-Bridging-Header.h diff --git a/medicare/lib/main.dart b/medicare/lib/main.dart index 9d41cf4..b303b6d 100644 --- a/medicare/lib/main.dart +++ b/medicare/lib/main.dart @@ -1,7 +1,9 @@ import 'package:flutter/material.dart'; import 'package:medicare/screens/home.dart'; +import 'package:medicare/screens/login_page.dart'; import 'package:medicare/screens/medi_home.dart'; import 'package:medicare/screens/ordermedicine.dart'; +import 'package:medicare/screens/register_screen.dart'; @@ -19,7 +21,7 @@ class MyApp extends StatelessWidget { primaryColor: Colors.blue, visualDensity: VisualDensity.adaptivePlatformDensity, ), - home: Home(), + home: LoginScreen(), ); } } diff --git a/medicare/lib/rounded_button.dart b/medicare/lib/rounded_button.dart new file mode 100644 index 0000000..fb9ed7d --- /dev/null +++ b/medicare/lib/rounded_button.dart @@ -0,0 +1,31 @@ +import 'package:flutter/material.dart'; + + +class RoundedButton extends StatelessWidget { + RoundedButton({this.color,@required this.onPressed,this.title}); + + + final Color color; + final String title; + final Function onPressed; + + @override + Widget build(BuildContext context) { + return Padding( + padding: EdgeInsets.symmetric(vertical: 16.0), + child: Material( + elevation: 5.0, + color: color, + borderRadius: BorderRadius.circular(30.0), + child: MaterialButton( + onPressed: onPressed, + minWidth: 200.0, + height: 42.0, + child: Text( + title, + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/medicare/lib/screens/home.dart b/medicare/lib/screens/home.dart index 1c57249..8dd911d 100644 --- a/medicare/lib/screens/home.dart +++ b/medicare/lib/screens/home.dart @@ -45,7 +45,7 @@ class Home extends StatelessWidget { 10.0), ), onPressed: () { - Navigator.of(context).push(MaterialPageRoute(builder: (context) => LoginPage())); + Navigator.of(context).push(MaterialPageRoute(builder: (context) => LoginScreen())); }, child: Text('Get Started'), color: Colors.blue, diff --git a/medicare/lib/screens/login_page.dart b/medicare/lib/screens/login_page.dart index b62d1b4..78fc924 100644 --- a/medicare/lib/screens/login_page.dart +++ b/medicare/lib/screens/login_page.dart @@ -1,171 +1,108 @@ import 'package:flutter/material.dart'; -//import 'package:medicare/login/primary_button.dart'; -import 'package:medicare/login/auth.dart'; import 'package:medicare/screens/medi_home.dart'; +import 'package:medicare/screens/register_screen.dart'; +import 'package:medicare/rounded_button.dart'; +import 'package:medicare/constants.dart'; +import 'package:firebase_auth/firebase_auth.dart'; -class LoginPage extends StatefulWidget { - LoginPage({Key key, this.title, this.auth, this.onSignIn}) : super(key: key); - - final String title; - final BaseAuth auth; - final VoidCallback onSignIn; +import 'package:modal_progress_hud/modal_progress_hud.dart'; +class LoginScreen extends StatefulWidget { + static const String id = 'login_screen'; @override - _LoginPageState createState() => new _LoginPageState(); + _LoginScreenState createState() => _LoginScreenState(); } -enum FormType { login, register } - -class _LoginPageState extends State { - static final formKey = new GlobalKey(); - - String _email; - String _password; - FormType _formType = FormType.login; - String _authHint = ''; - - bool validateAndSave() { - final form = formKey.currentState; - if (form.validate()) { - form.save(); - return true; - } - return false; - } - - void validateAndSubmit() async { - if (validateAndSave()) { - try { - String userId = _formType == FormType.login - ? await widget.auth.signIn(_email, _password) - : await widget.auth.createUser(_email, _password); - setState(() { - _authHint = 'Signed In\n\nUser id: $userId'; - Navigator.of(context).push(MaterialPageRoute(builder: (context) => MediHome())); - }); - widget.onSignIn(); - } catch (e) { - setState(() { - _authHint = 'Sign In Error\n\n${e.toString()}'; - }); - print(e); - } - } else { - setState(() { - _authHint = ''; - }); - } - } - - void moveToRegister() { - formKey.currentState.reset(); - setState(() { - _formType = FormType.register; - _authHint = ''; - }); - } - - void moveToLogin() { - formKey.currentState.reset(); - setState(() { - _formType = FormType.login; - _authHint = ''; - }); - } - - List usernameAndPassword() { - return [ - padded( - child: new TextFormField( - key: new Key('email'), - decoration: new InputDecoration(labelText: 'Email'), - autocorrect: false, - validator: (val) => val.isEmpty ? 'Email can\'t be empty.' : null, - onSaved: (val) => _email = val, - )), - padded( - child: new TextFormField( - key: new Key('password'), - decoration: new InputDecoration(labelText: 'Password'), - obscureText: true, - autocorrect: false, - validator: (val) => val.isEmpty ? 'Password can\'t be empty.' : null, - onSaved: (val) => _password = val, - )), - ]; - } - - List submitWidgets() { - switch (_formType) { - case FormType.login: - return [ - new FlatButton( - key: new Key('login'), - child:Text('Login'), - - onPressed: validateAndSubmit,), - new FlatButton( - key: new Key('need-account'), - child: new Text("Need an account? Register"), - onPressed: moveToRegister,), - ]; - case FormType.register: - return [ - new FlatButton( - key: new Key('register'), - child: Text('Create an account'), - - onPressed: validateAndSubmit), - new FlatButton( - key: new Key('need-login'), - child: new Text("Have an account? Login"), - onPressed: moveToLogin), - ]; - } - return null; - } - - Widget hintText() { - return new Container( - //height: 80.0, - padding: const EdgeInsets.all(32.0), - child: new Text(_authHint, - key: new Key('hint'), - style: new TextStyle(fontSize: 18.0, color: Colors.grey), - textAlign: TextAlign.center)); - } +class _LoginScreenState extends State { + final _auth = FirebaseAuth.instance; + bool showSpinner = false; + String email; + String password; @override Widget build(BuildContext context) { - return new Scaffold( - - backgroundColor: Colors.grey[300], - body: new Container( - padding: const EdgeInsets.only(top: 220.0,left: 16.0,right: 16.0), - child: new Column(children: [ - new Card( - child: new Column( - mainAxisSize: MainAxisSize.min, - children: [ - new Container( - padding: const EdgeInsets.all(16.0), - child: new Form( - key: formKey, - child: new Column( - crossAxisAlignment: - CrossAxisAlignment.stretch, - children: - usernameAndPassword() + submitWidgets(), - ))), - ])), - hintText() - ]))); - } - - Widget padded({Widget child}) { - return new Padding( - padding: EdgeInsets.symmetric(vertical: 8.0), - child: child, + return Scaffold( + backgroundColor: Colors.white, + body: ModalProgressHUD( + inAsyncCall: showSpinner, + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 24.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + // Flexible( + // child: Hero( + // tag: 'logo', + // child:Container( + // height: 200.0, + // child: Image.asset('images/logo.png'), + // ), + // ), + // ), + SizedBox( + height: 48.0, + ), + TextField( + keyboardType: TextInputType.emailAddress, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + email = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your email"), + ), + SizedBox( + height: 8.0, + ), + TextField( + obscureText: true, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + password = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your password") + ), + SizedBox( + height: 24.0, + ), + RoundedButton( + title: "Log In", + onPressed: () async { + setState(() { + showSpinner = true; + }); + try{ + final user =await _auth.signInWithEmailAndPassword(email: email, password: password); + if(user != null){ + Navigator.of(context).push(MaterialPageRoute(builder: (context) => MediHome())); + } + setState(() { + showSpinner = false; + }); + } + catch (e){ + print(e); + } + }, + color: Colors.lightBlueAccent, + + + ), + RoundedButton( + title: "Register", + onPressed: (){ + Navigator.of(context).push(MaterialPageRoute(builder: (context) => RegistrationScreen())); + }, + color: Colors.lightBlueAccent, + + + ), + ], + ), + ), + ), ); } -} +} \ No newline at end of file diff --git a/medicare/lib/screens/register_screen.dart b/medicare/lib/screens/register_screen.dart new file mode 100644 index 0000000..fc95ec5 --- /dev/null +++ b/medicare/lib/screens/register_screen.dart @@ -0,0 +1,129 @@ +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:medicare/constants.dart'; +import 'package:medicare/rounded_button.dart'; + +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:medicare/screens/medi_home.dart'; + + +import 'package:modal_progress_hud/modal_progress_hud.dart'; + +class RegistrationScreen extends StatefulWidget { + static const String id = 'registration_screen'; + @override + _RegistrationScreenState createState() => _RegistrationScreenState(); +} + +class _RegistrationScreenState extends State { + final _auth = FirebaseAuth.instance ; + bool showSpinner = false; + String email; + String password; + String name; + String age; + + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: Colors.white, + body: ModalProgressHUD( + inAsyncCall: showSpinner, + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 24.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + // Flexible( + // child: Hero( + // tag: 'logo', + // child: Container( + // height: 200.0, + // child: Image.asset('images/logo.png'), + // ), + // ), + // ), + SizedBox( + height: 48.0, + ), + TextField( + + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + name = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your Name"), + ), + SizedBox( + height: 8.0, + ), + TextField( + + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + age = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your Age"), + ), + SizedBox( + height: 8.0, + ), + TextField( + keyboardType: TextInputType.emailAddress, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + email = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your email"), + ), + SizedBox( + height: 8.0, + ), + TextField( + obscureText: true, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + password = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your password"), + ), + SizedBox( + height: 24.0, + ), + RoundedButton( + title: "Register", + onPressed: () async{ + setState(() { + showSpinner = true; + }); + try { + final newUser = await _auth.createUserWithEmailAndPassword( + email: email, password: password); + if(newUser != null){ + Navigator.of(context).push(MaterialPageRoute(builder: (context) => MediHome())); + } + setState(() { + showSpinner = false; + }); + } + catch (e){ + print(e); + } + + }, + color: Colors.lightBlueAccent, + + + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/medicare/pubspec.lock b/medicare/pubspec.lock index c8ab936..462fc6d 100644 --- a/medicare/pubspec.lock +++ b/medicare/pubspec.lock @@ -261,6 +261,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.1.8" + modal_progress_hud: + dependency: "direct main" + description: + name: modal_progress_hud + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.3" nested: dependency: transitive description: diff --git a/medicare/pubspec.yaml b/medicare/pubspec.yaml index 8854412..d04e7c9 100644 --- a/medicare/pubspec.yaml +++ b/medicare/pubspec.yaml @@ -38,6 +38,7 @@ dependencies: fl_chart: ^0.9.4 bubble_tab_indicator: ^0.1.4 cloud_firestore: ^0.13.6 + modal_progress_hud: ^0.1.3 dev_dependencies: flutter_test: diff --git a/medicare_doctor/android/app/build.gradle b/medicare_doctor/android/app/build.gradle index 1f58146..b59f9f9 100644 --- a/medicare_doctor/android/app/build.gradle +++ b/medicare_doctor/android/app/build.gradle @@ -38,6 +38,7 @@ android { targetSdkVersion 28 versionCode flutterVersionCode.toInteger() versionName flutterVersionName + multiDexEnabled true } buildTypes { diff --git a/medicare_doctor/lib/rounded_button.dart b/medicare_doctor/lib/rounded_button.dart new file mode 100644 index 0000000..fb9ed7d --- /dev/null +++ b/medicare_doctor/lib/rounded_button.dart @@ -0,0 +1,31 @@ +import 'package:flutter/material.dart'; + + +class RoundedButton extends StatelessWidget { + RoundedButton({this.color,@required this.onPressed,this.title}); + + + final Color color; + final String title; + final Function onPressed; + + @override + Widget build(BuildContext context) { + return Padding( + padding: EdgeInsets.symmetric(vertical: 16.0), + child: Material( + elevation: 5.0, + color: color, + borderRadius: BorderRadius.circular(30.0), + child: MaterialButton( + onPressed: onPressed, + minWidth: 200.0, + height: 42.0, + child: Text( + title, + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/medicare_doctor/lib/screens/home.dart b/medicare_doctor/lib/screens/home.dart index da9cbec..d580d53 100644 --- a/medicare_doctor/lib/screens/home.dart +++ b/medicare_doctor/lib/screens/home.dart @@ -45,7 +45,7 @@ class Home extends StatelessWidget { 10.0), ), onPressed: () { - Navigator.of(context).push(MaterialPageRoute(builder: (context) => LoginPage())); + Navigator.of(context).push(MaterialPageRoute(builder: (context) => LoginScreen())); }, child: Text('Get Started'), color: Colors.blue, diff --git a/medicare_doctor/lib/screens/login_page.dart b/medicare_doctor/lib/screens/login_page.dart index 970249d..094e53c 100644 --- a/medicare_doctor/lib/screens/login_page.dart +++ b/medicare_doctor/lib/screens/login_page.dart @@ -1,171 +1,109 @@ import 'package:flutter/material.dart'; +import 'package:medicare_doctor/screens/register_screen.dart'; +import 'package:medicare_doctor/rounded_button.dart'; +import 'package:medicare_doctor/constants.dart'; +import 'package:firebase_auth/firebase_auth.dart'; -import 'package:medicare_doctor/login/auth.dart'; +import 'package:modal_progress_hud/modal_progress_hud.dart'; +import 'doctor_appointments.dart'; -class LoginPage extends StatefulWidget { - LoginPage({Key key, this.title, this.auth, this.onSignIn}) : super(key: key); - - final String title; - final BaseAuth auth; - final VoidCallback onSignIn; - +class LoginScreen extends StatefulWidget { + static const String id = 'login_screen'; @override - _LoginPageState createState() => new _LoginPageState(); + _LoginScreenState createState() => _LoginScreenState(); } -enum FormType { login, register } - -class _LoginPageState extends State { - static final formKey = new GlobalKey(); - - String _email; - String _password; - FormType _formType = FormType.login; - String _authHint = ''; - - bool validateAndSave() { - final form = formKey.currentState; - if (form.validate()) { - form.save(); - return true; - } - return false; - } - - void validateAndSubmit() async { - if (validateAndSave()) { - try { - String userId = _formType == FormType.login - ? await widget.auth.signIn(_email, _password) - : await widget.auth.createUser(_email, _password); - setState(() { - _authHint = 'Signed In\n\nUser id: $userId'; - //Navigator.of(context).push(MaterialPageRoute(builder: (context) => MediHome())); - }); - widget.onSignIn(); - } catch (e) { - setState(() { - _authHint = 'Sign In Error\n\n${e.toString()}'; - }); - print(e); - } - } else { - setState(() { - _authHint = ''; - }); - } - } - - void moveToRegister() { - formKey.currentState.reset(); - setState(() { - _formType = FormType.register; - _authHint = ''; - }); - } - - void moveToLogin() { - formKey.currentState.reset(); - setState(() { - _formType = FormType.login; - _authHint = ''; - }); - } - - List usernameAndPassword() { - return [ - padded( - child: new TextFormField( - key: new Key('email'), - decoration: new InputDecoration(labelText: 'Email'), - autocorrect: false, - validator: (val) => val.isEmpty ? 'Email can\'t be empty.' : null, - onSaved: (val) => _email = val, - )), - padded( - child: new TextFormField( - key: new Key('password'), - decoration: new InputDecoration(labelText: 'Password'), - obscureText: true, - autocorrect: false, - validator: (val) => val.isEmpty ? 'Password can\'t be empty.' : null, - onSaved: (val) => _password = val, - )), - ]; - } - - List submitWidgets() { - switch (_formType) { - case FormType.login: - return [ - new FlatButton( - key: new Key('login'), - child:Text('Login'), - - onPressed: validateAndSubmit,), - new FlatButton( - key: new Key('need-account'), - child: new Text("Need an account? Register"), - onPressed: moveToRegister,), - ]; - case FormType.register: - return [ - new FlatButton( - key: new Key('register'), - child: Text('Create an account'), - - onPressed: validateAndSubmit), - new FlatButton( - key: new Key('need-login'), - child: new Text("Have an account? Login"), - onPressed: moveToLogin), - ]; - } - return null; - } - - Widget hintText() { - return new Container( - //height: 80.0, - padding: const EdgeInsets.all(32.0), - child: new Text(_authHint, - key: new Key('hint'), - style: new TextStyle(fontSize: 18.0, color: Colors.grey), - textAlign: TextAlign.center)); - } +class _LoginScreenState extends State { + final _auth = FirebaseAuth.instance; + bool showSpinner = false; + String email; + String password; @override Widget build(BuildContext context) { - return new Scaffold( - - backgroundColor: Colors.grey[300], - body: new Container( - padding: const EdgeInsets.only(top: 220.0,left: 16.0,right: 16.0), - child: new Column(children: [ - new Card( - child: new Column( - mainAxisSize: MainAxisSize.min, - children: [ - new Container( - padding: const EdgeInsets.all(16.0), - child: new Form( - key: formKey, - child: new Column( - crossAxisAlignment: - CrossAxisAlignment.stretch, - children: - usernameAndPassword() + submitWidgets(), - ))), - ])), - hintText() - ]))); - } - - Widget padded({Widget child}) { - return new Padding( - padding: EdgeInsets.symmetric(vertical: 8.0), - child: child, + return Scaffold( + backgroundColor: Colors.white, + body: ModalProgressHUD( + inAsyncCall: showSpinner, + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 24.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + // Flexible( + // child: Hero( + // tag: 'logo', + // child:Container( + // height: 200.0, + // child: Image.asset('images/logo.png'), + // ), + // ), + // ), + SizedBox( + height: 48.0, + ), + TextField( + keyboardType: TextInputType.emailAddress, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + email = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your email"), + ), + SizedBox( + height: 8.0, + ), + TextField( + obscureText: true, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + password = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your password") + ), + SizedBox( + height: 24.0, + ), + RoundedButton( + title: "Log In", + onPressed: () async { + setState(() { + showSpinner = true; + }); + try{ + final user =await _auth.signInWithEmailAndPassword(email: email, password: password); + if(user != null){ + Navigator.of(context).push(MaterialPageRoute(builder: (context) => DoctorAppointment())); + } + setState(() { + showSpinner = false; + }); + } + catch (e){ + print(e); + } + }, + color: Colors.lightBlueAccent, + + + ), + RoundedButton( + title: "Register", + onPressed: (){ + Navigator.of(context).push(MaterialPageRoute(builder: (context) => RegistrationScreen())); + }, + color: Colors.lightBlueAccent, + + + ), + ], + ), + ), + ), ); } -} +} \ No newline at end of file diff --git a/medicare_doctor/lib/screens/register_screen.dart b/medicare_doctor/lib/screens/register_screen.dart new file mode 100644 index 0000000..3409bf4 --- /dev/null +++ b/medicare_doctor/lib/screens/register_screen.dart @@ -0,0 +1,141 @@ +import 'package:flutter/material.dart'; +import 'package:medicare_doctor/constants.dart'; +import 'package:medicare_doctor/rounded_button.dart'; +import 'package:medicare_doctor/constants.dart'; +import 'package:firebase_auth/firebase_auth.dart'; + + +import 'package:modal_progress_hud/modal_progress_hud.dart'; + +import 'doctor_appointments.dart'; + +class RegistrationScreen extends StatefulWidget { + static const String id = 'registration_screen'; + @override + _RegistrationScreenState createState() => _RegistrationScreenState(); +} + +class _RegistrationScreenState extends State { + final _auth = FirebaseAuth.instance ; + bool showSpinner = false; + String email; + String password; + String name; + String age; + + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: Colors.white, + body: ModalProgressHUD( + inAsyncCall: showSpinner, + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 24.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + // Flexible( + // child: Hero( + // tag: 'logo', + // child: Container( + // height: 200.0, + // child: Image.asset('images/logo.png'), + // ), + // ), + // ), + SizedBox( + height: 48.0, + ), + TextField( + keyboardType: TextInputType.emailAddress, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + email = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your Name"), + ), + SizedBox( + height: 8.0, + ), + TextField( + obscureText: true, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + password = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your Specialist"), + ), + SizedBox( + height: 8.0, + ), + TextField( + obscureText: true, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + password = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your Experience"), + ), + SizedBox( + height: 8.0, + ), + TextField( + obscureText: true, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + password = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your email"), + ), + SizedBox( + height: 8.0, + ), + TextField( + obscureText: true, + textAlign: TextAlign.center, + onChanged: (value) { + //Do something with the user input. + password = value; + }, + decoration: kTextFieldDecoration.copyWith(hintText: "Enter your password"), + ), + SizedBox( + height: 24.0, + ), + RoundedButton( + title: "Register", + onPressed: () async{ + setState(() { + showSpinner = true; + }); + try { + final newUser = await _auth.createUserWithEmailAndPassword( + email: email, password: password); + if(newUser != null){ + Navigator.of(context).push(MaterialPageRoute(builder: (context) => DoctorAppointment())); + } + setState(() { + showSpinner = false; + }); + } + catch (e){ + print(e); + } + + }, + color: Colors.lightBlueAccent, + + + ), + ], + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/medicare_doctor/pubspec.lock b/medicare_doctor/pubspec.lock index bd87b70..0d22a03 100644 --- a/medicare_doctor/pubspec.lock +++ b/medicare_doctor/pubspec.lock @@ -205,6 +205,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.1.8" + modal_progress_hud: + dependency: "direct main" + description: + name: modal_progress_hud + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.3" path: dependency: transitive description: diff --git a/medicare_doctor/pubspec.yaml b/medicare_doctor/pubspec.yaml index 6f4a6eb..8d16892 100644 --- a/medicare_doctor/pubspec.yaml +++ b/medicare_doctor/pubspec.yaml @@ -33,6 +33,7 @@ dependencies: agora_rtc_engine: ^1.0.13 permission_handler: ^4.4.0 cloud_firestore: ^0.13.6 + modal_progress_hud: ^0.1.3 dev_dependencies: flutter_test: From 8864671e08fbec01ad6088858a7647ccee64cf5c Mon Sep 17 00:00:00 2001 From: nasirbashak Date: Fri, 2 Oct 2020 19:26:34 +0530 Subject: [PATCH 3/5] medicare part with appointment booking --- medicare/{lib => }/ios/.gitignore | 0 .../ios/Flutter/AppFrameworkInfo.plist | 0 medicare/{lib => }/ios/Flutter/Debug.xcconfig | 0 .../{lib => }/ios/Flutter/Release.xcconfig | 0 .../ios/Runner.xcodeproj/project.pbxproj | 0 .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcshareddata/WorkspaceSettings.xcsettings | 0 .../xcshareddata/xcschemes/Runner.xcscheme | 0 .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../xcshareddata/WorkspaceSettings.xcsettings | 0 .../{lib => }/ios/Runner/AppDelegate.swift | 0 .../AppIcon.appiconset/Contents.json | 0 .../Icon-App-1024x1024@1x.png | Bin .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin .../Icon-App-83.5x83.5@2x.png | Bin .../LaunchImage.imageset/Contents.json | 0 .../LaunchImage.imageset/LaunchImage.png | Bin .../LaunchImage.imageset/LaunchImage@2x.png | Bin .../LaunchImage.imageset/LaunchImage@3x.png | Bin .../LaunchImage.imageset/README.md | 0 .../Runner/Base.lproj/LaunchScreen.storyboard | 0 .../ios/Runner/Base.lproj/Main.storyboard | 0 medicare/{lib => }/ios/Runner/Info.plist | 0 .../ios/Runner/Runner-Bridging-Header.h | 0 medicare/lib/login/auth.dart | 34 -- medicare/lib/login/home_page.dart | 36 -- medicare/lib/login/root_page.dart | 53 --- medicare/lib/models/appointment.dart | 14 + medicare/lib/models/doctor.dart | 13 + medicare/lib/models/user.dart | 10 + medicare/lib/screens/appointment.dart | 2 +- .../lib/screens/design_course_app_theme.dart | 94 ++++ medicare/lib/screens/doctor_info_screen.dart | 410 ++++++++++++++++++ medicare/lib/screens/medi_home.dart | 11 +- medicare/lib/screens/popular_list_view.dart | 195 +++++++++ medicare/lib/screens/register_screen.dart | 67 ++- medicare/lib/services/auth.dart | 34 ++ medicare/lib/services/database.dart | 86 ++++ medicare/pubspec.lock | 8 +- medicare/pubspec.yaml | 3 +- medicare_doctor/android/app/build.gradle | 11 + .../android/app/google-services.json | 69 +++ medicare_doctor/android/build.gradle | 1 + medicare_doctor/lib/main.dart | 5 +- 58 files changed, 1017 insertions(+), 139 deletions(-) rename medicare/{lib => }/ios/.gitignore (100%) rename medicare/{lib => }/ios/Flutter/AppFrameworkInfo.plist (100%) rename medicare/{lib => }/ios/Flutter/Debug.xcconfig (100%) rename medicare/{lib => }/ios/Flutter/Release.xcconfig (100%) rename medicare/{lib => }/ios/Runner.xcodeproj/project.pbxproj (100%) rename medicare/{lib => }/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata (100%) rename medicare/{lib => }/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) rename medicare/{lib => }/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings (100%) rename medicare/{lib => }/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme (100%) rename medicare/{lib => }/ios/Runner.xcworkspace/contents.xcworkspacedata (100%) rename medicare/{lib => }/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist (100%) rename medicare/{lib => }/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings (100%) rename medicare/{lib => }/ios/Runner/AppDelegate.swift (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png (100%) rename medicare/{lib => }/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md (100%) rename medicare/{lib => }/ios/Runner/Base.lproj/LaunchScreen.storyboard (100%) rename medicare/{lib => }/ios/Runner/Base.lproj/Main.storyboard (100%) rename medicare/{lib => }/ios/Runner/Info.plist (100%) rename medicare/{lib => }/ios/Runner/Runner-Bridging-Header.h (100%) delete mode 100644 medicare/lib/login/auth.dart delete mode 100644 medicare/lib/login/home_page.dart delete mode 100644 medicare/lib/login/root_page.dart create mode 100644 medicare/lib/models/appointment.dart create mode 100644 medicare/lib/models/doctor.dart create mode 100644 medicare/lib/models/user.dart create mode 100644 medicare/lib/screens/design_course_app_theme.dart create mode 100644 medicare/lib/screens/doctor_info_screen.dart create mode 100644 medicare/lib/services/auth.dart create mode 100644 medicare/lib/services/database.dart create mode 100644 medicare_doctor/android/app/google-services.json diff --git a/medicare/lib/ios/.gitignore b/medicare/ios/.gitignore similarity index 100% rename from medicare/lib/ios/.gitignore rename to medicare/ios/.gitignore diff --git a/medicare/lib/ios/Flutter/AppFrameworkInfo.plist b/medicare/ios/Flutter/AppFrameworkInfo.plist similarity index 100% rename from medicare/lib/ios/Flutter/AppFrameworkInfo.plist rename to medicare/ios/Flutter/AppFrameworkInfo.plist diff --git a/medicare/lib/ios/Flutter/Debug.xcconfig b/medicare/ios/Flutter/Debug.xcconfig similarity index 100% rename from medicare/lib/ios/Flutter/Debug.xcconfig rename to medicare/ios/Flutter/Debug.xcconfig diff --git a/medicare/lib/ios/Flutter/Release.xcconfig b/medicare/ios/Flutter/Release.xcconfig similarity index 100% rename from medicare/lib/ios/Flutter/Release.xcconfig rename to medicare/ios/Flutter/Release.xcconfig diff --git a/medicare/lib/ios/Runner.xcodeproj/project.pbxproj b/medicare/ios/Runner.xcodeproj/project.pbxproj similarity index 100% rename from medicare/lib/ios/Runner.xcodeproj/project.pbxproj rename to medicare/ios/Runner.xcodeproj/project.pbxproj diff --git a/medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/medicare/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to medicare/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from medicare/lib/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to medicare/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/medicare/lib/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/medicare/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme similarity index 100% rename from medicare/lib/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme rename to medicare/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme diff --git a/medicare/lib/ios/Runner.xcworkspace/contents.xcworkspacedata b/medicare/ios/Runner.xcworkspace/contents.xcworkspacedata similarity index 100% rename from medicare/lib/ios/Runner.xcworkspace/contents.xcworkspacedata rename to medicare/ios/Runner.xcworkspace/contents.xcworkspacedata diff --git a/medicare/lib/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/medicare/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from medicare/lib/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to medicare/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/medicare/lib/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/medicare/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from medicare/lib/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to medicare/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/medicare/lib/ios/Runner/AppDelegate.swift b/medicare/ios/Runner/AppDelegate.swift similarity index 100% rename from medicare/lib/ios/Runner/AppDelegate.swift rename to medicare/ios/Runner/AppDelegate.swift diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png rename to medicare/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json rename to medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json diff --git a/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png rename to medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png rename to medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png rename to medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png diff --git a/medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md similarity index 100% rename from medicare/lib/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md rename to medicare/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md diff --git a/medicare/lib/ios/Runner/Base.lproj/LaunchScreen.storyboard b/medicare/ios/Runner/Base.lproj/LaunchScreen.storyboard similarity index 100% rename from medicare/lib/ios/Runner/Base.lproj/LaunchScreen.storyboard rename to medicare/ios/Runner/Base.lproj/LaunchScreen.storyboard diff --git a/medicare/lib/ios/Runner/Base.lproj/Main.storyboard b/medicare/ios/Runner/Base.lproj/Main.storyboard similarity index 100% rename from medicare/lib/ios/Runner/Base.lproj/Main.storyboard rename to medicare/ios/Runner/Base.lproj/Main.storyboard diff --git a/medicare/lib/ios/Runner/Info.plist b/medicare/ios/Runner/Info.plist similarity index 100% rename from medicare/lib/ios/Runner/Info.plist rename to medicare/ios/Runner/Info.plist diff --git a/medicare/lib/ios/Runner/Runner-Bridging-Header.h b/medicare/ios/Runner/Runner-Bridging-Header.h similarity index 100% rename from medicare/lib/ios/Runner/Runner-Bridging-Header.h rename to medicare/ios/Runner/Runner-Bridging-Header.h diff --git a/medicare/lib/login/auth.dart b/medicare/lib/login/auth.dart deleted file mode 100644 index cb80ab7..0000000 --- a/medicare/lib/login/auth.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'dart:async'; -import 'package:firebase_auth/firebase_auth.dart'; - -abstract class BaseAuth { - Future currentUser(); - Future signIn(String email, String password); - Future createUser(String email, String password); - Future signOut(); -} - -class Auth implements BaseAuth { - final FirebaseAuth _firebaseAuth = FirebaseAuth.instance; - - Future signIn(String email, String password) async { - FirebaseUser user = (await _firebaseAuth.signInWithEmailAndPassword( - email: email, password: password)) as FirebaseUser; - return user.uid; - } - - Future createUser(String email, String password) async { - FirebaseUser user = (await _firebaseAuth.createUserWithEmailAndPassword( - email: email, password: password)) as FirebaseUser; - return user.uid; - } - - Future currentUser() async { - FirebaseUser user = await _firebaseAuth.currentUser(); - return user != null ? user.uid : null; - } - - Future signOut() async { - return _firebaseAuth.signOut(); - } -} diff --git a/medicare/lib/login/home_page.dart b/medicare/lib/login/home_page.dart deleted file mode 100644 index 11b19b6..0000000 --- a/medicare/lib/login/home_page.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:medicare/login/auth.dart'; - -class HomePage extends StatelessWidget { - HomePage({this.auth, this.onSignOut}); - final BaseAuth auth; - final VoidCallback onSignOut; - - @override - Widget build(BuildContext context) { - void _signOut() async { - try { - await auth.signOut(); - onSignOut(); - } catch (e) { - print(e); - } - } - - return new Scaffold( - appBar: new AppBar( - actions: [ - new FlatButton( - onPressed: _signOut, - child: new Text('Logout', - style: new TextStyle(fontSize: 17.0, color: Colors.white))) - ], - ), - body: new Center( - child: new Text( - 'Welcome', - style: new TextStyle(fontSize: 32.0), - ), - )); - } -} diff --git a/medicare/lib/login/root_page.dart b/medicare/lib/login/root_page.dart deleted file mode 100644 index 7e85909..0000000 --- a/medicare/lib/login/root_page.dart +++ /dev/null @@ -1,53 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:medicare/login/auth.dart'; -import 'package:medicare/screens/login_page.dart'; -import 'package:medicare/login/home_page.dart'; - -class RootPage extends StatefulWidget { - RootPage({Key key, this.auth}) : super(key: key); - final BaseAuth auth; - - @override - State createState() => new _RootPageState(); -} - -enum AuthStatus { - notSignedIn, - signedIn, -} - -class _RootPageState extends State { - AuthStatus authStatus = AuthStatus.notSignedIn; - - initState() { - super.initState(); - widget.auth.currentUser().then((userId) { - setState(() { - authStatus = - userId != null ? AuthStatus.signedIn : AuthStatus.notSignedIn; - }); - }); - } - - void _updateAuthStatus(AuthStatus status) { - setState(() { - authStatus = status; - }); - } - - @override - Widget build(BuildContext context) { - switch (authStatus) { - case AuthStatus.notSignedIn: - return new LoginPage( - title: 'Flutter Login', - auth: widget.auth, - onSignIn: () => _updateAuthStatus(AuthStatus.signedIn), - ); - case AuthStatus.signedIn: - return new HomePage( - auth: widget.auth, - onSignOut: () => _updateAuthStatus(AuthStatus.notSignedIn)); - } - } -} diff --git a/medicare/lib/models/appointment.dart b/medicare/lib/models/appointment.dart new file mode 100644 index 0000000..e3a8901 --- /dev/null +++ b/medicare/lib/models/appointment.dart @@ -0,0 +1,14 @@ +import 'package:medicare/models/doctor.dart'; +import 'package:medicare/models/user.dart'; + +class Appointment{ + final String aId; + final User user; + final Doctor doctor; + final String time; + + + + Appointment({this.aId,this.user,this.doctor,this.time}); + +} \ No newline at end of file diff --git a/medicare/lib/models/doctor.dart b/medicare/lib/models/doctor.dart new file mode 100644 index 0000000..20ec3ae --- /dev/null +++ b/medicare/lib/models/doctor.dart @@ -0,0 +1,13 @@ + +class Doctor{ + final String dId; + final String name; + final String email; + final String specialist; + final int experience; + final int rating; + + + Doctor({this.dId,this.name,this.email,this.specialist,this.experience,this.rating}); + +} \ No newline at end of file diff --git a/medicare/lib/models/user.dart b/medicare/lib/models/user.dart new file mode 100644 index 0000000..ec10777 --- /dev/null +++ b/medicare/lib/models/user.dart @@ -0,0 +1,10 @@ + +class User{ + final String uId; + final String name; + final String email; + final int age; + + User({this.uId,this.name,this.email,this.age}); + +} \ No newline at end of file diff --git a/medicare/lib/screens/appointment.dart b/medicare/lib/screens/appointment.dart index 2e64b93..8d13d3d 100644 --- a/medicare/lib/screens/appointment.dart +++ b/medicare/lib/screens/appointment.dart @@ -82,7 +82,7 @@ class _AppointmentsState extends State { Container( width: 60, height: 60, - child: Image.asset('assets/images/userImage.png'), + child: Image.asset('assets/userImage.png'), ) ], ), diff --git a/medicare/lib/screens/design_course_app_theme.dart b/medicare/lib/screens/design_course_app_theme.dart new file mode 100644 index 0000000..3604e50 --- /dev/null +++ b/medicare/lib/screens/design_course_app_theme.dart @@ -0,0 +1,94 @@ +import 'package:flutter/material.dart'; + +class DesignCourseAppTheme { + DesignCourseAppTheme._(); + + static const Color notWhite = Color(0xFFEDF0F2); + static const Color nearlyWhite = Color(0xFFFFFFFF); + static const Color nearlyBlue = Color(0xFF00B6F0); + static const Color nearlyBlack = Color(0xFF213333); + static const Color grey = Color(0xFF3A5160); + static const Color dark_grey = Color(0xFF313A44); + + static const Color darkText = Color(0xFF253840); + static const Color darkerText = Color(0xFF17262A); + static const Color lightText = Color(0xFF4A6572); + static const Color deactivatedText = Color(0xFF767676); + static const Color dismissibleBackground = Color(0xFF364A54); + static const Color chipBackground = Color(0xFFEEF1F3); + static const Color spacer = Color(0xFFF2F2F2); + + static const TextTheme textTheme = TextTheme( + headline4: display1, + headline5: headline, + headline6: title, + subtitle2: subtitle, + bodyText1: body2, + bodyText2: body1, + caption: caption, + ); + + static const TextStyle display1 = TextStyle( + // h4 -> display1 + fontFamily: 'WorkSans', + fontWeight: FontWeight.bold, + fontSize: 36, + letterSpacing: 0.4, + height: 0.9, + color: darkerText, + ); + + static const TextStyle headline = TextStyle( + // h5 -> headline + fontFamily: 'WorkSans', + fontWeight: FontWeight.bold, + fontSize: 24, + letterSpacing: 0.27, + color: darkerText, + ); + + static const TextStyle title = TextStyle( + // h6 -> title + fontFamily: 'WorkSans', + fontWeight: FontWeight.bold, + fontSize: 16, + letterSpacing: 0.18, + color: darkerText, + ); + + static const TextStyle subtitle = TextStyle( + // subtitle2 -> subtitle + fontFamily: 'WorkSans', + fontWeight: FontWeight.w400, + fontSize: 14, + letterSpacing: -0.04, + color: darkText, + ); + + static const TextStyle body2 = TextStyle( + // body1 -> body2 + fontFamily: 'WorkSans', + fontWeight: FontWeight.w400, + fontSize: 14, + letterSpacing: 0.2, + color: darkText, + ); + + static const TextStyle body1 = TextStyle( + // body2 -> body1 + fontFamily: 'WorkSans', + fontWeight: FontWeight.w400, + fontSize: 16, + letterSpacing: -0.05, + color: darkText, + ); + + static const TextStyle caption = TextStyle( + // Caption -> caption + fontFamily: 'WorkSans', + fontWeight: FontWeight.w400, + fontSize: 12, + letterSpacing: 0.2, + color: lightText, // was lightText + ); +} diff --git a/medicare/lib/screens/doctor_info_screen.dart b/medicare/lib/screens/doctor_info_screen.dart new file mode 100644 index 0000000..b7f5e13 --- /dev/null +++ b/medicare/lib/screens/doctor_info_screen.dart @@ -0,0 +1,410 @@ +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:flutter/material.dart'; +import 'package:medicare/models/doctor.dart'; +import 'chat.dart'; +import 'design_course_app_theme.dart'; + + + +class DoctorInfoScreen extends StatefulWidget { + @override + _DoctorInfoScreenState createState() => _DoctorInfoScreenState(); + + Doctor doctor; + + DoctorInfoScreen({this.doctor}); + +} + + class _DoctorInfoScreenState extends State + with TickerProviderStateMixin { + + + + + + + + String _value = "10am to 12pm"; + final double infoHeight = 364.0; + AnimationController animationController; + Animation animation; + double opacity1 = 0.0; + double opacity2 = 0.0; + double opacity3 = 0.0; + @override + void initState() { + animationController = AnimationController( + duration: const Duration(milliseconds: 1000), vsync: this); + animation = Tween(begin: 0.0, end: 1.0).animate(CurvedAnimation( + parent: animationController, + curve: Interval(0, 1.0, curve: Curves.fastOutSlowIn))); + setData(); + super.initState(); + } + + Future setData() async { + animationController.forward(); + await Future.delayed(const Duration(milliseconds: 200)); + setState(() { + opacity1 = 1.0; + }); + await Future.delayed(const Duration(milliseconds: 200)); + setState(() { + opacity2 = 1.0; + }); + await Future.delayed(const Duration(milliseconds: 200)); + setState(() { + opacity3 = 1.0; + }); + } + + @override + Widget build(BuildContext context) { + + Doctor doctor = widget.doctor; + + + final double tempHeight = MediaQuery.of(context).size.height - + (MediaQuery.of(context).size.width / 1.2) + + 24.0; + return Container( + color: DesignCourseAppTheme.nearlyWhite, + child: Scaffold( + backgroundColor: Colors.transparent, + body: Stack( + children: [ + Column( + children: [ + AspectRatio( + aspectRatio: 1.2, + child: Image.asset('assets/userImage.png'), + ), + ], + ), + Positioned( + top: (MediaQuery.of(context).size.width / 1.2) - 24.0, + bottom: 0, + left: 0, + right: 0, + child: Container( + decoration: BoxDecoration( + color: DesignCourseAppTheme.nearlyWhite, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(32.0), + topRight: Radius.circular(32.0)), + boxShadow: [ + BoxShadow( + color: DesignCourseAppTheme.grey.withOpacity(0.2), + offset: const Offset(1.1, 1.1), + blurRadius: 10.0), + ], + ), + child: Padding( + padding: const EdgeInsets.only(left: 8, right: 8), + child: SingleChildScrollView( + child: Container( + constraints: BoxConstraints( + minHeight: infoHeight, + maxHeight: tempHeight > infoHeight + ? tempHeight + : infoHeight), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Padding( + padding: const EdgeInsets.only( + top: 32.0, left: 18, right: 16), + child: Text( + doctor.name ?? 'No name found', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 22, + letterSpacing: 0.27, + color: DesignCourseAppTheme.darkerText, + ), + ), + ), + Padding( + padding: const EdgeInsets.only( + left: 16, right: 16, bottom: 8, top: 16), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Text( + doctor.specialist ?? 'No specialization found', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w200, + fontSize: 22, + letterSpacing: 0.27, + color: DesignCourseAppTheme.nearlyBlue, + ), + ), + Container( + child: Row( + children: [ + Text( + doctor.rating.toString() ?? 'No rating found', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w200, + fontSize: 22, + letterSpacing: 0.27, + color: DesignCourseAppTheme.grey, + ), + ), + Icon( + Icons.star, + color: DesignCourseAppTheme.nearlyBlue, + size: 24, + ), + ], + ), + ) + ], + ), + ), + DropdownButton( + value: _value, + items: [ + DropdownMenuItem( + child: Text("10am to 12pm"), + value: "10am to 12pm", + ), + DropdownMenuItem( + child: Text("12pm to 2pm"), + value: "12pm to 2pm", + ), + DropdownMenuItem( + child: Text("5pm to 7pm"), + value: "5pm to 7pm", + ), + DropdownMenuItem( + child: Text("9pm to 10pm"), + value: "9pm to 10pm" + ) + ], + onChanged: (value) { + setState(() { + _value = value; + }); + }), + Expanded( + child: AnimatedOpacity( + duration: const Duration(milliseconds: 500), + opacity: opacity2, + child: Padding( + padding: const EdgeInsets.only( + left: 16, right: 16, top: 8, bottom: 8), + child: Text( + 'Lorem ipsum is simply dummy text of printing & typesetting industry, Lorem ipsum is simply dummy text of printing & typesetting industry.', + textAlign: TextAlign.justify, + style: TextStyle( + fontWeight: FontWeight.w200, + fontSize: 14, + letterSpacing: 0.27, + color: DesignCourseAppTheme.grey, + ), + maxLines: 3, + overflow: TextOverflow.ellipsis, + ), + ), + ), + ), + AnimatedOpacity( + duration: const Duration(milliseconds: 500), + opacity: opacity3, + child: Padding( + padding: const EdgeInsets.only( + left: 16, bottom: 16, right: 16), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + + + Expanded( + child: Container( + height: 48, + decoration: BoxDecoration( + color: DesignCourseAppTheme.nearlyBlue, + borderRadius: const BorderRadius.all( + Radius.circular(16.0), + ), + boxShadow: [ + BoxShadow( + color: DesignCourseAppTheme + .nearlyBlue + .withOpacity(0.5), + offset: const Offset(1.1, 1.1), + blurRadius: 10.0), + ], + ), + child: Center( + child: FlatButton( + child: Text( + 'Take Appointment', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 18, + letterSpacing: 0.0, + color: DesignCourseAppTheme + .nearlyWhite, + ), + ), + color: Colors.blueAccent, + textColor: Colors.white, + onPressed: () async { + + // store in the firestore + final FirebaseUser user = await FirebaseAuth.instance.currentUser(); + final userid = user.uid; + + final CollectionReference _collectionReference = Firestore.instance + .collection('appointments'); + + _collectionReference.document(user.uid).setData({ + //doctor details + 'docName' : doctor.name, + 'docSpecialization' : doctor.specialist, + + //patient details + 'patUid' : userid, + //timings + 'time': _value, + + }).then((value) { + print("Successful"); + + + Navigator.of(context).push(MaterialPageRoute(builder: (context) => ChatScreen())); + + }); + + + } + ), + ), + ), + ) + ], + ), + ), + ), + SizedBox( + height: MediaQuery.of(context).padding.bottom, + ) + ], + ), + ), + ), + ), + ), + ), + Positioned( + top: (MediaQuery.of(context).size.width / 1.2) - 24.0 - 35, + right: 35, + child: ScaleTransition( + alignment: Alignment.center, + scale: CurvedAnimation( + parent: animationController, curve: Curves.fastOutSlowIn), + child: Card( + color: DesignCourseAppTheme.nearlyBlue, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(50.0)), + elevation: 10.0, + child: Container( + width: 60, + height: 60, + child: Center( + child: Icon( + Icons.favorite, + color: DesignCourseAppTheme.nearlyWhite, + size: 30, + ), + ), + ), + ), + ), + ), + Padding( + padding: EdgeInsets.only(top: MediaQuery.of(context).padding.top), + child: SizedBox( + width: AppBar().preferredSize.height, + height: AppBar().preferredSize.height, + child: Material( + color: Colors.transparent, + child: InkWell( + borderRadius: + BorderRadius.circular(AppBar().preferredSize.height), + child: Icon( + Icons.arrow_back_ios, + color: DesignCourseAppTheme.nearlyBlack, + ), + onTap: () { + Navigator.pop(context); + }, + ), + ), + ), + ) + ], + ), + ), + ); + } + + Widget getTimeBoxUI(String text1, String txt2) { + return Padding( + padding: const EdgeInsets.all(8.0), + child: Container( + decoration: BoxDecoration( + color: DesignCourseAppTheme.nearlyWhite, + borderRadius: const BorderRadius.all(Radius.circular(16.0)), + boxShadow: [ + BoxShadow( + color: DesignCourseAppTheme.grey.withOpacity(0.2), + offset: const Offset(1.1, 1.1), + blurRadius: 8.0), + ], + ), + child: Padding( + padding: const EdgeInsets.only( + left: 18.0, right: 18.0, top: 12.0, bottom: 12.0), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Text( + text1, + textAlign: TextAlign.center, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 14, + letterSpacing: 0.27, + color: DesignCourseAppTheme.nearlyBlue, + ), + ), + Text( + txt2, + textAlign: TextAlign.center, + style: TextStyle( + fontWeight: FontWeight.w200, + fontSize: 14, + letterSpacing: 0.27, + color: DesignCourseAppTheme.grey, + ), + ), + ], + ), + ), + ), + ); + } +} diff --git a/medicare/lib/screens/medi_home.dart b/medicare/lib/screens/medi_home.dart index 75b2551..684e5ee 100644 --- a/medicare/lib/screens/medi_home.dart +++ b/medicare/lib/screens/medi_home.dart @@ -1,8 +1,11 @@ import 'package:flutter/material.dart'; import 'package:liquid_swipe/liquid_swipe.dart'; +import 'package:medicare/models/doctor.dart'; import 'package:medicare/screens/appointment.dart'; import 'package:medicare/screens/precautions.dart'; import 'package:medicare/screens/stats_screen.dart'; +import 'package:medicare/services/database.dart'; +import 'package:provider/provider.dart'; @@ -21,9 +24,14 @@ class MediHome extends StatelessWidget { ), ]; + final DatabaseService _databaseService = DatabaseService(); + + @override Widget build(BuildContext context) { - return MaterialApp( + return StreamProvider>.value( + value: _databaseService.doctors, + child:MaterialApp( home: Scaffold( body: LiquidSwipe( pages:pages, @@ -34,6 +42,7 @@ class MediHome extends StatelessWidget { positionSlideIcon: 0.5, ), ), + ) ); } } diff --git a/medicare/lib/screens/popular_list_view.dart b/medicare/lib/screens/popular_list_view.dart index 0d44817..c6e5a81 100644 --- a/medicare/lib/screens/popular_list_view.dart +++ b/medicare/lib/screens/popular_list_view.dart @@ -1,3 +1,8 @@ +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:medicare/models/doctor.dart'; +import 'package:medicare/screens/doctor_info_screen.dart'; +import 'package:provider/provider.dart'; + import 'category.dart'; import 'package:flutter/material.dart'; @@ -25,6 +30,36 @@ class _PopularListViewState extends State return true; } + + + //class UserInformation extends StatelessWidget { + @override + Widget build(BuildContext context) { + CollectionReference users = Firestore.instance.collection('doctors'); + final doctors = Provider.of>(context) ?? []; + + return ListView.builder( + itemCount: doctors.length, + itemBuilder : (context,index){ + return BrewListTile(doctor:doctors[index]); + } + ); + } + + + + + + + +//} + + + + + + +/* @override Widget build(BuildContext context) { return Padding( @@ -39,6 +74,8 @@ class _PopularListViewState extends State padding: const EdgeInsets.all(8), physics: const BouncingScrollPhysics(), scrollDirection: Axis.vertical, + //starting of the list view + children: List.generate( Category.popularList.length, (int index) { @@ -74,8 +111,166 @@ class _PopularListViewState extends State ), ); } + + */ + +} + +class BrewListTile extends StatelessWidget { + + final Doctor doctor; + BrewListTile({this.doctor}); + + @override + Widget build(BuildContext context) { + return + /* + Padding( + padding: EdgeInsets.only(top:16.0), + + child: Card( + margin: EdgeInsets.fromLTRB(20.0, 6.0, 20.0, 0.0), + child: ListTile( + leading: CircleAvatar( + radius: 25.0, + //backgroundColor: Colors.brown[doctor.strength], + //backgroundImage: AssetImage('assets/coffee_icon.png'), + ), + title: Text(doctor.name), + subtitle: Text('Takes ${doctor.experience} sugar(s)'), + ), + ), + */ + Column( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Padding( + padding: const EdgeInsets.only( + top: 16, left: 16, right: 16), + child: Text( + doctor.name, + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w600, + fontSize: 16, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + ), + Padding( + padding: const EdgeInsets.only( + top: 8, + left: 16, + right: 16, + bottom: 8), + child: Row( + mainAxisAlignment: + MainAxisAlignment + .spaceBetween, + crossAxisAlignment: + CrossAxisAlignment.center, + children: [ + Text( + '${doctor.experience} years', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w200, + fontSize: 12, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + Container( + child: Row( + children: [ + Text( + '${doctor.rating}', + textAlign: + TextAlign.left, + style: TextStyle( + fontWeight: + FontWeight.w200, + fontSize: 18, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + Icon( + Icons.star, + color: + Colors.blueAccent, + size: 20, + ), + ], + ), + ), + ], + ), + ), + Padding( + padding: const EdgeInsets.only( + top: 8, + left: 16, + right: 16, + bottom: 8), + child: Row( + children: [ + Text( + '${doctor.specialist}', + textAlign: TextAlign.left, + style: TextStyle( + fontWeight: FontWeight.w200, + fontSize: 12, + letterSpacing: 0.27, + color: Colors.black, + ), + ), + ], + ), + ), + Padding( + padding: const EdgeInsets.only( + left: 16, + right: 16, + ), + child: Row( + children: [ + FlatButton( + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular( + 10.0), + ), + onPressed: () { + Navigator.push(context, new MaterialPageRoute(builder: (context) => DoctorInfoScreen(doctor: doctor))); + //Navigator.of(context).push(MaterialPageRoute(builder: (context) => DoctorInfoScreen())); + + }, + child: Text( + 'Appointment', + style: TextStyle( + color: Colors.white), + ), + color: Colors.blueAccent, + ) + ], + ), + ), + ], + ); + + + } } + + + + + + + class CategoryView extends StatelessWidget { const CategoryView( {Key key, diff --git a/medicare/lib/screens/register_screen.dart b/medicare/lib/screens/register_screen.dart index fc95ec5..328e73b 100644 --- a/medicare/lib/screens/register_screen.dart +++ b/medicare/lib/screens/register_screen.dart @@ -5,6 +5,9 @@ import 'package:medicare/rounded_button.dart'; import 'package:firebase_auth/firebase_auth.dart'; import 'package:medicare/screens/medi_home.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:medicare/services/auth.dart'; +import 'package:medicare/services/database.dart'; import 'package:modal_progress_hud/modal_progress_hud.dart'; @@ -17,11 +20,19 @@ class RegistrationScreen extends StatefulWidget { class _RegistrationScreenState extends State { final _auth = FirebaseAuth.instance ; + + final CollectionReference _collectionReference = Firestore.instance + .collection('users'); + final AuthService _authService = AuthService(); + bool showSpinner = false; String email; String password; String name; - String age; + int age; + + + @override Widget build(BuildContext context) { @@ -62,9 +73,10 @@ class _RegistrationScreenState extends State { TextField( textAlign: TextAlign.center, + keyboardType: TextInputType.number, onChanged: (value) { //Do something with the user input. - age = value; + age = int.parse(value); }, decoration: kTextFieldDecoration.copyWith(hintText: "Enter your Age"), ), @@ -102,14 +114,53 @@ class _RegistrationScreenState extends State { showSpinner = true; }); try { - final newUser = await _auth.createUserWithEmailAndPassword( - email: email, password: password); - if(newUser != null){ + + AuthResult result = await _auth.createUserWithEmailAndPassword(email: email, password: password); + FirebaseUser user = result.user; + + + _collectionReference.document(user.uid).setData({ + 'name': name, + 'email': email, + 'age': age + }).then((value){ + print("Successful"); + setState(() { + showSpinner = false; + }); Navigator.of(context).push(MaterialPageRoute(builder: (context) => MediHome())); - } - setState(() { - showSpinner = false; + }).catchError((error) { + print("Failed to add user: $error"); + }); + + + + + + /* + dynamic result = _authService.registerWithEmaillAndPassword(email, password); + + if(result != null){ + print("RESULT"+result); + + DatabaseService _database = DatabaseService(uid:result.uid); + + dynamic response = _database.updateUserData(name, email, age); + + + print(result); + + + Navigator.of(context).push(MaterialPageRoute(builder: (context) => MediHome())); + } + + else{ + print("result null"); + } + */ + + } catch (e){ print(e); diff --git a/medicare/lib/services/auth.dart b/medicare/lib/services/auth.dart new file mode 100644 index 0000000..a1892f1 --- /dev/null +++ b/medicare/lib/services/auth.dart @@ -0,0 +1,34 @@ +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:medicare/models/user.dart'; +import 'package:medicare/services/database.dart'; + +class AuthService { + + final FirebaseAuth _auth = FirebaseAuth.instance; + + User _createUserFromFB(FirebaseUser user) { + return user != null ? User(uId: user.uid) : null; + } + + + //register + Future registerWithEmaillAndPassword(String email, String password) async{ + + try{ + AuthResult result = await _auth.createUserWithEmailAndPassword(email: email, password: password); + FirebaseUser user = result.user; + return user; + + // DatabaseService _database = DatabaseService(uid:user.uid); + + //_database.updateUserData('0', 'New Brew Crew Member', 100); + + //return _createUserFromFB(user); + }catch(e){ + print(e.toString()); + return null; + } + } + + +} \ No newline at end of file diff --git a/medicare/lib/services/database.dart b/medicare/lib/services/database.dart new file mode 100644 index 0000000..9f81cc9 --- /dev/null +++ b/medicare/lib/services/database.dart @@ -0,0 +1,86 @@ + +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:medicare/models/doctor.dart'; + + +class DatabaseService { + + final String uid; + + DatabaseService({this.uid}); + + final CollectionReference _collectionReference = Firestore.instance + .collection('users'); + + final CollectionReference _doctorsReference = Firestore.instance + .collection('doctors'); + + Future updateUserData(String name, String email, int age) async { + print("inside updateUserData"); + return await _collectionReference.document(uid).setData({ + 'name': name, + 'email': email, + 'age': age + }).then((value){ + print("Successful"); + }).catchError((error) => print("Failed to add user: $error")); + } + + //get users and data + Stream> get doctors { + + return _doctorsReference.snapshots().map(_convertToBrewList); + } + + List _convertToBrewList(QuerySnapshot snapshot){ + + return snapshot.documents.map((doc) { + return Doctor( + + /* + final String name; + final String email; + final String specialist; + final int experience; + final int rating; + */ + name: doc.data['name'] ?? '', + experience: doc.data['experience'] ?? 0, + specialist: doc.data['specialist'] ?? '0', + rating: doc.data['rating'] ?? 0 + ); + }).toList(); + } + +} +/* + + + + +//convert user data to user model + UserData convertToUserDataFromDocumentSnapshot(DocumentSnapshot snapshot){ + + return UserData( + uid: uid, + name: snapshot.data['name'], + sugar: snapshot.data['sugar'], + strength: snapshot.data['strength'] + ); + } +//get users and data + Stream> get brew { + + return _collectionReference.snapshots().map(_convertToBrewList); + } + + +//get user data stream + Stream get userData { + return _collectionReference.document(uid).snapshots().map(convertToUserDataFromDocumentSnapshot); + } + + + +} +*/ \ No newline at end of file diff --git a/medicare/pubspec.lock b/medicare/pubspec.lock index 462fc6d..01b0f6d 100644 --- a/medicare/pubspec.lock +++ b/medicare/pubspec.lock @@ -180,7 +180,7 @@ packages: name: flutter_plugin_android_lifecycle url: "https://pub.dartlang.org" source: hosted - version: "1.0.8" + version: "1.0.11" flutter_test: dependency: "direct dev" description: flutter @@ -204,7 +204,7 @@ packages: name: google_maps_flutter url: "https://pub.dartlang.org" source: hosted - version: "0.5.31" + version: "0.5.33" google_maps_flutter_platform_interface: dependency: transitive description: @@ -330,9 +330,9 @@ packages: name: plugin_platform_interface url: "https://pub.dartlang.org" source: hosted - version: "1.0.2" + version: "1.0.3" provider: - dependency: transitive + dependency: "direct main" description: name: provider url: "https://pub.dartlang.org" diff --git a/medicare/pubspec.yaml b/medicare/pubspec.yaml index d04e7c9..5017433 100644 --- a/medicare/pubspec.yaml +++ b/medicare/pubspec.yaml @@ -39,6 +39,7 @@ dependencies: bubble_tab_indicator: ^0.1.4 cloud_firestore: ^0.13.6 modal_progress_hud: ^0.1.3 + provider: ^4.1.3 dev_dependencies: flutter_test: @@ -57,7 +58,7 @@ flutter: # To add assets to your application, add an assets section, like this: assets: - - assets/getstartedback.jpg + - assets/ # - images/a_dot_ham.jpeg # An image asset can refer to one or more resolution-specific "variants", see diff --git a/medicare_doctor/android/app/build.gradle b/medicare_doctor/android/app/build.gradle index b59f9f9..b4fcb94 100644 --- a/medicare_doctor/android/app/build.gradle +++ b/medicare_doctor/android/app/build.gradle @@ -24,6 +24,8 @@ if (flutterVersionName == null) { apply plugin: 'com.android.application' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" +apply plugin: 'com.google.gms.google-services' + android { compileSdkVersion 28 @@ -47,9 +49,18 @@ android { // Signing with the debug keys for now, so `flutter run --release` works. signingConfig signingConfigs.debug } + + dependencies { + // add the Firebase SDK for Google Analytics + implementation 'com.google.firebase:firebase-analytics:17.5.0' + // add SDKs for any other desired Firebase products + // https://firebase.google.com/docs/android/setup#available-libraries + } } } + + flutter { source '../..' } diff --git a/medicare_doctor/android/app/google-services.json b/medicare_doctor/android/app/google-services.json new file mode 100644 index 0000000..dde4e4b --- /dev/null +++ b/medicare_doctor/android/app/google-services.json @@ -0,0 +1,69 @@ +{ + "project_info": { + "project_number": "154049021886", + "firebase_url": "https://primeval-melody-287418.firebaseio.com", + "project_id": "primeval-melody-287418", + "storage_bucket": "primeval-melody-287418.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:154049021886:android:3379971902da6bbd799bef", + "android_client_info": { + "package_name": "com.example.medicare" + } + }, + "oauth_client": [ + { + "client_id": "154049021886-49ugm75e3sj51qbve9b2qosu00cnj9v8.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyBRYOU4_xfabRubHuD0zzh4TA1vs3bYJDc" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "154049021886-49ugm75e3sj51qbve9b2qosu00cnj9v8.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } + }, + { + "client_info": { + "mobilesdk_app_id": "1:154049021886:android:0dcb2021456e7a05799bef", + "android_client_info": { + "package_name": "com.example.medicare_doctor" + } + }, + "oauth_client": [ + { + "client_id": "154049021886-49ugm75e3sj51qbve9b2qosu00cnj9v8.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "AIzaSyBRYOU4_xfabRubHuD0zzh4TA1vs3bYJDc" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [ + { + "client_id": "154049021886-49ugm75e3sj51qbve9b2qosu00cnj9v8.apps.googleusercontent.com", + "client_type": 3 + } + ] + } + } + } + ], + "configuration_version": "1" +} \ No newline at end of file diff --git a/medicare_doctor/android/build.gradle b/medicare_doctor/android/build.gradle index e0d7ae2..92e0e4a 100644 --- a/medicare_doctor/android/build.gradle +++ b/medicare_doctor/android/build.gradle @@ -6,6 +6,7 @@ buildscript { dependencies { classpath 'com.android.tools.build:gradle:3.5.0' + classpath 'com.google.gms:google-services:4.3.4' } } diff --git a/medicare_doctor/lib/main.dart b/medicare_doctor/lib/main.dart index abe967a..a482d55 100644 --- a/medicare_doctor/lib/main.dart +++ b/medicare_doctor/lib/main.dart @@ -3,6 +3,9 @@ import 'package:medicare_doctor/screens/chat.dart'; import 'package:medicare_doctor/screens/doctor_appointments.dart'; import 'package:medicare_doctor/screens/home.dart'; +import 'screens/home.dart'; +import 'screens/login_page.dart'; + void main() { runApp(MedicareD()); } @@ -16,7 +19,7 @@ class MedicareD extends StatelessWidget { primaryColor: Colors.blue, visualDensity: VisualDensity.adaptivePlatformDensity, ), - home: ChatScreen(), + home: LoginScreen(), ); } } From c08f80e35858660ad920ff2ce718e9656e3bc20c Mon Sep 17 00:00:00 2001 From: nasirbashak Date: Sat, 3 Oct 2020 17:03:00 +0530 Subject: [PATCH 4/5] patient name in appointment --- medicare/lib/screens/doctor_info_screen.dart | 36 ++- medicare_doctor/lib/login/auth.dart | 34 -- medicare_doctor/lib/login/home_page.dart | 36 --- medicare_doctor/lib/login/root_page.dart | 53 --- medicare_doctor/lib/models/appointment.dart | 30 ++ medicare_doctor/lib/models/doctor.dart | 13 + medicare_doctor/lib/models/user.dart | 10 + .../lib/screens/doctor_appointments.dart | 301 +++++++++++++++++- medicare_doctor/lib/screens/login_page.dart | 18 +- .../lib/screens/register_screen.dart | 53 ++- medicare_doctor/lib/services/auth.dart | 34 ++ medicare_doctor/lib/services/database.dart | 123 +++++++ medicare_doctor/pubspec.lock | 18 +- medicare_doctor/pubspec.yaml | 1 + 14 files changed, 603 insertions(+), 157 deletions(-) delete mode 100644 medicare_doctor/lib/login/auth.dart delete mode 100644 medicare_doctor/lib/login/home_page.dart delete mode 100644 medicare_doctor/lib/login/root_page.dart create mode 100644 medicare_doctor/lib/models/appointment.dart create mode 100644 medicare_doctor/lib/models/doctor.dart create mode 100644 medicare_doctor/lib/models/user.dart create mode 100644 medicare_doctor/lib/services/auth.dart create mode 100644 medicare_doctor/lib/services/database.dart diff --git a/medicare/lib/screens/doctor_info_screen.dart b/medicare/lib/screens/doctor_info_screen.dart index b7f5e13..d930a55 100644 --- a/medicare/lib/screens/doctor_info_screen.dart +++ b/medicare/lib/screens/doctor_info_screen.dart @@ -266,28 +266,38 @@ class DoctorInfoScreen extends StatefulWidget { final FirebaseUser user = await FirebaseAuth.instance.currentUser(); final userid = user.uid; - final CollectionReference _collectionReference = Firestore.instance - .collection('appointments'); + final DocumentReference document = Firestore.instance.collection("users").document(userid); - _collectionReference.document(user.uid).setData({ - //doctor details - 'docName' : doctor.name, - 'docSpecialization' : doctor.specialist, + await document.get().then(( DocumentSnapshot snapshot) async{ + print("User name "+snapshot.data['name']); - //patient details - 'patUid' : userid, - //timings - 'time': _value, + final CollectionReference _collectionReference = Firestore.instance + .collection('appointments'); - }).then((value) { - print("Successful"); + _collectionReference.document(user.uid).setData({ + //doctor details + 'docName' : doctor.name, + 'docSpecialization' : doctor.specialist, + //patient details + 'patUid' : userid, + 'patName' : snapshot.data['name'], + //timings + 'time': _value, - Navigator.of(context).push(MaterialPageRoute(builder: (context) => ChatScreen())); + }).then((value) { + print("Successful"); + + + Navigator.of(context).push(MaterialPageRoute(builder: (context) => ChatScreen())); + + }); }); + + } ), ), diff --git a/medicare_doctor/lib/login/auth.dart b/medicare_doctor/lib/login/auth.dart deleted file mode 100644 index cb80ab7..0000000 --- a/medicare_doctor/lib/login/auth.dart +++ /dev/null @@ -1,34 +0,0 @@ -import 'dart:async'; -import 'package:firebase_auth/firebase_auth.dart'; - -abstract class BaseAuth { - Future currentUser(); - Future signIn(String email, String password); - Future createUser(String email, String password); - Future signOut(); -} - -class Auth implements BaseAuth { - final FirebaseAuth _firebaseAuth = FirebaseAuth.instance; - - Future signIn(String email, String password) async { - FirebaseUser user = (await _firebaseAuth.signInWithEmailAndPassword( - email: email, password: password)) as FirebaseUser; - return user.uid; - } - - Future createUser(String email, String password) async { - FirebaseUser user = (await _firebaseAuth.createUserWithEmailAndPassword( - email: email, password: password)) as FirebaseUser; - return user.uid; - } - - Future currentUser() async { - FirebaseUser user = await _firebaseAuth.currentUser(); - return user != null ? user.uid : null; - } - - Future signOut() async { - return _firebaseAuth.signOut(); - } -} diff --git a/medicare_doctor/lib/login/home_page.dart b/medicare_doctor/lib/login/home_page.dart deleted file mode 100644 index ee8ae0e..0000000 --- a/medicare_doctor/lib/login/home_page.dart +++ /dev/null @@ -1,36 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:medicare_doctor/login/auth.dart'; - -class HomePage extends StatelessWidget { - HomePage({this.auth, this.onSignOut}); - final BaseAuth auth; - final VoidCallback onSignOut; - - @override - Widget build(BuildContext context) { - void _signOut() async { - try { - await auth.signOut(); - onSignOut(); - } catch (e) { - print(e); - } - } - - return new Scaffold( - appBar: new AppBar( - actions: [ - new FlatButton( - onPressed: _signOut, - child: new Text('Logout', - style: new TextStyle(fontSize: 17.0, color: Colors.white))) - ], - ), - body: new Center( - child: new Text( - 'Welcome', - style: new TextStyle(fontSize: 32.0), - ), - )); - } -} diff --git a/medicare_doctor/lib/login/root_page.dart b/medicare_doctor/lib/login/root_page.dart deleted file mode 100644 index 7c11bf0..0000000 --- a/medicare_doctor/lib/login/root_page.dart +++ /dev/null @@ -1,53 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:medicare_doctor/login/auth.dart'; -import 'package:medicare_doctor/screens/login_page.dart'; -import 'package:medicare_doctor/login/home_page.dart'; - -class RootPage extends StatefulWidget { - RootPage({Key key, this.auth}) : super(key: key); - final BaseAuth auth; - - @override - State createState() => new _RootPageState(); -} - -enum AuthStatus { - notSignedIn, - signedIn, -} - -class _RootPageState extends State { - AuthStatus authStatus = AuthStatus.notSignedIn; - - initState() { - super.initState(); - widget.auth.currentUser().then((userId) { - setState(() { - authStatus = - userId != null ? AuthStatus.signedIn : AuthStatus.notSignedIn; - }); - }); - } - - void _updateAuthStatus(AuthStatus status) { - setState(() { - authStatus = status; - }); - } - - @override - Widget build(BuildContext context) { - switch (authStatus) { - case AuthStatus.notSignedIn: - return new LoginPage( - title: 'Flutter Login', - auth: widget.auth, - onSignIn: () => _updateAuthStatus(AuthStatus.signedIn), - ); - case AuthStatus.signedIn: - return new HomePage( - auth: widget.auth, - onSignOut: () => _updateAuthStatus(AuthStatus.notSignedIn)); - } - } -} diff --git a/medicare_doctor/lib/models/appointment.dart b/medicare_doctor/lib/models/appointment.dart new file mode 100644 index 0000000..78f0a85 --- /dev/null +++ b/medicare_doctor/lib/models/appointment.dart @@ -0,0 +1,30 @@ + +import 'package:medicare_doctor/models/doctor.dart'; +import 'package:medicare_doctor/models/user.dart'; + + +class Appointment{ + final String aId; + final User user; + final Doctor doctor; + final String time; + + + + Appointment({this.aId,this.user,this.doctor,this.time, name}); + +} + + +class AppointmentBooking{ + final String docName; + final String docSpecialization; + final String patUid; + final String patName; + final String time; + + + + AppointmentBooking({this.docName,this.docSpecialization,this.patUid,this.patName,this.time}); + +} \ No newline at end of file diff --git a/medicare_doctor/lib/models/doctor.dart b/medicare_doctor/lib/models/doctor.dart new file mode 100644 index 0000000..20ec3ae --- /dev/null +++ b/medicare_doctor/lib/models/doctor.dart @@ -0,0 +1,13 @@ + +class Doctor{ + final String dId; + final String name; + final String email; + final String specialist; + final int experience; + final int rating; + + + Doctor({this.dId,this.name,this.email,this.specialist,this.experience,this.rating}); + +} \ No newline at end of file diff --git a/medicare_doctor/lib/models/user.dart b/medicare_doctor/lib/models/user.dart new file mode 100644 index 0000000..ec10777 --- /dev/null +++ b/medicare_doctor/lib/models/user.dart @@ -0,0 +1,10 @@ + +class User{ + final String uId; + final String name; + final String email; + final int age; + + User({this.uId,this.name,this.email,this.age}); + +} \ No newline at end of file diff --git a/medicare_doctor/lib/screens/doctor_appointments.dart b/medicare_doctor/lib/screens/doctor_appointments.dart index ee0c4ca..8a723f4 100644 --- a/medicare_doctor/lib/screens/doctor_appointments.dart +++ b/medicare_doctor/lib/screens/doctor_appointments.dart @@ -1,5 +1,8 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:medicare_doctor/models/appointment.dart'; +import 'package:medicare_doctor/services/database.dart'; +import 'package:provider/provider.dart'; //import 'package:flutter/services.dart'; @@ -7,16 +10,194 @@ import 'package:flutter/material.dart'; class DoctorAppointment extends StatelessWidget { @override Widget build(BuildContext context) { + + final DatabaseService _databaseService = DatabaseService(); + + return MaterialApp( title: "Doctor Appointment", theme: ThemeData( primarySwatch: Colors.blue, ), - home: MainPage(), - debugShowCheckedModeBanner: false, + home: StreamProvider>.value( + value: _databaseService.appointmentBookings, + child: Scaffold( + appBar: AppBar( + title: Text("MEDICURE"), + ), + backgroundColor: Colors.white, + body: Center( + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + "Appointments", + style: TextStyle( + color: Colors.black, + fontSize: 30.0, + + fontWeight: FontWeight.bold), + ), + Container( + margin: EdgeInsets.only(top: 50.0, left: 10.0, right: 10.0), + padding: EdgeInsets.symmetric(horizontal: 5.0, vertical: 00.0), + width: MediaQuery.of(context).size.width, + height: MediaQuery.of(context).size.height / 2, + decoration: BoxDecoration( + border: Border.all( + color: Colors.deepPurple, + ), + borderRadius: BorderRadius.circular(10.0), + ), + child: BrewList(), + + + /* + ListView.builder( + itemCount: names.length, + shrinkWrap: true, + itemBuilder: (BuildContext context, int index) => Container( + width: MediaQuery.of(context).size.width, + height: MediaQuery.of(context).size.height / 6, + padding: EdgeInsets.symmetric(horizontal: 5.0, vertical: 5.0), + margin: EdgeInsets.symmetric(horizontal: 5.0, vertical: 00.0), + child: Card( + elevation: 10.0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5.0), + ), + child: Container( + width: MediaQuery.of(context).size.width, + padding: + EdgeInsets.symmetric(horizontal: 5.0, vertical: 5.0), + decoration: BoxDecoration( + border: Border.all( + color: Colors.deepPurple, + ), + borderRadius: BorderRadius.circular(5.0), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + padding: EdgeInsets.symmetric( + horizontal: 2.0, vertical: 00.0), + margin: EdgeInsets.all(00.0), + decoration: BoxDecoration( + border: Border.all( + color: Colors.black, + ), + borderRadius: BorderRadius.circular(30.0), + ), + width: 50.0, + height: 50.0, + child: CircleAvatar( + backgroundColor: Colors.deepPurpleAccent, +// foregroundColor: Colors.white, + backgroundImage: NetworkImage( + "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcSya2MDHt8WIgyWsx5-t2KFF7oFwpqd8d8dZw&usqp=CAU"), +// child: Text( +// names[0], +// style: TextStyle(color: Colors.white), +// textAlign: TextAlign.center, +// ), + ), + ), + SizedBox(width: 5.0), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(names[index], + style: TextStyle( + color: Colors.black, + fontSize: 18.0, + fontWeight: FontWeight.bold)), + ], + ), + ], + ), + Container( + alignment: Alignment.center, + padding: EdgeInsets.symmetric( + horizontal: 5.0, vertical: 10.0), + child: FlatButton( + onPressed: () {}, + color: Colors.deepPurpleAccent, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(20.0), + side: BorderSide(color: Colors.black), + ), + child: Text( + "START", + style: TextStyle(color: Colors.white), + ), + ), + ), + ], + ), + ), + ), + ), + ), + + */ + ), + ], + ), + ), + ), + ), ); } } + +class BrewList extends StatefulWidget { + @override + _BrewListState createState() => _BrewListState(); +} + +class _BrewListState extends State { + @override + Widget build(BuildContext context) { + + final appointments = Provider.of>(context) ?? []; + + return ListView.builder( + itemCount: appointments.length, + itemBuilder : (context,index){ + return BrewListTile(appointmentBooking:appointments[index]); + } + ); + } +} + + + + + + + + + + + + + + + + + + + + + class MainPage extends StatefulWidget { @override @@ -30,8 +211,15 @@ class _MainPageState extends State { "Ali Alshaibani", "Rohini", ]; + + + @override Widget build(BuildContext context) { + + final appointments = Provider.of>(context) ?? []; + + return Scaffold( appBar: AppBar( title: Text("MEDICURE"), @@ -61,7 +249,16 @@ class _MainPageState extends State { ), borderRadius: BorderRadius.circular(10.0), ), - child: ListView.builder( + child: ListView.builder( + itemCount: appointments.length, + itemBuilder : (context,index){ + return BrewListTile(appointmentBooking:appointments[index]); + } + ), + + + /* + ListView.builder( itemCount: names.length, shrinkWrap: true, itemBuilder: (BuildContext context, int index) => Container( @@ -153,10 +350,108 @@ class _MainPageState extends State { ), ), ), + + */ ), ], ), ), ); } +} + +class BrewListTile extends StatelessWidget { + + final AppointmentBooking appointmentBooking; + BrewListTile({this.appointmentBooking}); + + @override + Widget build(BuildContext context) { + return Padding( + padding: EdgeInsets.only(top:16.0), + child: Card( + elevation: 10.0, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(5.0), + ), + child: Container( + width: MediaQuery.of(context).size.width, + padding: + EdgeInsets.symmetric(horizontal: 5.0, vertical: 5.0), + decoration: BoxDecoration( + border: Border.all( + color: Colors.deepPurple, + ), + borderRadius: BorderRadius.circular(5.0), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + padding: EdgeInsets.symmetric( + horizontal: 2.0, vertical: 00.0), + margin: EdgeInsets.all(00.0), + decoration: BoxDecoration( + border: Border.all( + color: Colors.black, + ), + borderRadius: BorderRadius.circular(30.0), + ), + width: 50.0, + height: 50.0, + child: CircleAvatar( + backgroundColor: Colors.deepPurpleAccent, +// foregroundColor: Colors.white, + backgroundImage: NetworkImage( + "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcSya2MDHt8WIgyWsx5-t2KFF7oFwpqd8d8dZw&usqp=CAU"), +// child: Text( +// names[0], +// style: TextStyle(color: Colors.white), +// textAlign: TextAlign.center, +// ), + ), + ), + SizedBox(width: 5.0), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(appointmentBooking.docName, + style: TextStyle( + color: Colors.black, + fontSize: 18.0, + fontWeight: FontWeight.bold)), + ], + ), + ], + ), + Container( + alignment: Alignment.center, + padding: EdgeInsets.symmetric( + horizontal: 5.0, vertical: 10.0), + child: FlatButton( + onPressed: () {}, + color: Colors.deepPurpleAccent, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(20.0), + side: BorderSide(color: Colors.black), + ), + child: Text( + "START", + style: TextStyle(color: Colors.white), + ), + ), + ), + ], + ), + ), + ), + + ); + } } \ No newline at end of file diff --git a/medicare_doctor/lib/screens/login_page.dart b/medicare_doctor/lib/screens/login_page.dart index 094e53c..d3fbcfc 100644 --- a/medicare_doctor/lib/screens/login_page.dart +++ b/medicare_doctor/lib/screens/login_page.dart @@ -1,10 +1,14 @@ +import 'package:cloud_firestore/cloud_firestore.dart'; import 'package:flutter/material.dart'; +import 'package:medicare_doctor/models/appointment.dart'; import 'package:medicare_doctor/screens/register_screen.dart'; import 'package:medicare_doctor/rounded_button.dart'; import 'package:medicare_doctor/constants.dart'; import 'package:firebase_auth/firebase_auth.dart'; +import 'package:medicare_doctor/services/database.dart'; import 'package:modal_progress_hud/modal_progress_hud.dart'; +import 'package:provider/provider.dart'; import 'doctor_appointments.dart'; @@ -16,13 +20,20 @@ class LoginScreen extends StatefulWidget { class _LoginScreenState extends State { final _auth = FirebaseAuth.instance; + + final CollectionReference _collectionReference = Firestore.instance + .collection('doctors'); + final DatabaseService _databaseService = DatabaseService(); + + + bool showSpinner = false; String email; String password; @override Widget build(BuildContext context) { - return Scaffold( + return Scaffold( backgroundColor: Colors.white, body: ModalProgressHUD( inAsyncCall: showSpinner, @@ -93,7 +104,9 @@ class _LoginScreenState extends State { ), RoundedButton( title: "Register", - onPressed: (){ + onPressed: () { + + Navigator.of(context).push(MaterialPageRoute(builder: (context) => RegistrationScreen())); }, color: Colors.lightBlueAccent, @@ -105,5 +118,6 @@ class _LoginScreenState extends State { ), ), ); + } } \ No newline at end of file diff --git a/medicare_doctor/lib/screens/register_screen.dart b/medicare_doctor/lib/screens/register_screen.dart index 3409bf4..06e8ce1 100644 --- a/medicare_doctor/lib/screens/register_screen.dart +++ b/medicare_doctor/lib/screens/register_screen.dart @@ -5,6 +5,11 @@ import 'package:medicare_doctor/constants.dart'; import 'package:firebase_auth/firebase_auth.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:medicare_doctor/services/auth.dart'; +import 'package:medicare_doctor/services/database.dart'; + + import 'package:modal_progress_hud/modal_progress_hud.dart'; import 'doctor_appointments.dart'; @@ -17,11 +22,18 @@ class RegistrationScreen extends StatefulWidget { class _RegistrationScreenState extends State { final _auth = FirebaseAuth.instance ; + + final CollectionReference _collectionReference = Firestore.instance + .collection('doctors'); + final AuthService _authService = AuthService(); + bool showSpinner = false; String email; String password; String name; - String age; + String specialist; + int experience; + int rating = 5; @override Widget build(BuildContext context) { @@ -48,7 +60,7 @@ class _RegistrationScreenState extends State { height: 48.0, ), TextField( - keyboardType: TextInputType.emailAddress, + textAlign: TextAlign.center, onChanged: (value) { //Do something with the user input. @@ -60,11 +72,10 @@ class _RegistrationScreenState extends State { height: 8.0, ), TextField( - obscureText: true, textAlign: TextAlign.center, onChanged: (value) { //Do something with the user input. - password = value; + specialist = value; }, decoration: kTextFieldDecoration.copyWith(hintText: "Enter your Specialist"), ), @@ -72,11 +83,12 @@ class _RegistrationScreenState extends State { height: 8.0, ), TextField( - obscureText: true, + textAlign: TextAlign.center, + keyboardType: TextInputType.number, onChanged: (value) { //Do something with the user input. - password = value; + experience = int.parse(value); }, decoration: kTextFieldDecoration.copyWith(hintText: "Enter your Experience"), ), @@ -84,11 +96,11 @@ class _RegistrationScreenState extends State { height: 8.0, ), TextField( - obscureText: true, + keyboardType: TextInputType.emailAddress, textAlign: TextAlign.center, onChanged: (value) { //Do something with the user input. - password = value; + email = value; }, decoration: kTextFieldDecoration.copyWith(hintText: "Enter your email"), ), @@ -114,14 +126,27 @@ class _RegistrationScreenState extends State { showSpinner = true; }); try { - final newUser = await _auth.createUserWithEmailAndPassword( - email: email, password: password); - if(newUser != null){ + AuthResult result = await _auth.createUserWithEmailAndPassword(email: email, password: password); + FirebaseUser user = result.user; + + + _collectionReference.document(user.uid).setData({ + 'name': name, + + 'experience': experience, + 'specialist': specialist, + 'rating': rating + }).then((value){ + print("Successful"); + setState(() { + showSpinner = false; + }); Navigator.of(context).push(MaterialPageRoute(builder: (context) => DoctorAppointment())); - } - setState(() { - showSpinner = false; + }).catchError((error) { + print("Failed to add user: $error"); + }); + } catch (e){ print(e); diff --git a/medicare_doctor/lib/services/auth.dart b/medicare_doctor/lib/services/auth.dart new file mode 100644 index 0000000..96f64ac --- /dev/null +++ b/medicare_doctor/lib/services/auth.dart @@ -0,0 +1,34 @@ +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:medicare_doctor/models/user.dart'; + + +class AuthService { + + final FirebaseAuth _auth = FirebaseAuth.instance; + + User _createUserFromFB(FirebaseUser user) { + return user != null ? User(uId: user.uid) : null; + } + + + //register + Future registerWithEmaillAndPassword(String email, String password) async{ + + try{ + AuthResult result = await _auth.createUserWithEmailAndPassword(email: email, password: password); + FirebaseUser user = result.user; + return user; + + // DatabaseService _database = DatabaseService(uid:user.uid); + + //_database.updateUserData('0', 'New Brew Crew Member', 100); + + //return _createUserFromFB(user); + }catch(e){ + print(e.toString()); + return null; + } + } + + +} \ No newline at end of file diff --git a/medicare_doctor/lib/services/database.dart b/medicare_doctor/lib/services/database.dart new file mode 100644 index 0000000..8aaaf85 --- /dev/null +++ b/medicare_doctor/lib/services/database.dart @@ -0,0 +1,123 @@ + +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:medicare_doctor/models/appointment.dart'; +import 'package:medicare_doctor/models/doctor.dart'; + + +class DatabaseService { + + final String uid; + + DatabaseService({this.uid}); + + final CollectionReference _collectionReference = Firestore.instance + .collection('users'); + + final CollectionReference _doctorsReference = Firestore.instance + .collection('doctors'); + + final CollectionReference _appointmentsReference = Firestore.instance + .collection('appointments'); + + Future updateUserData(String name, String email, int age) async { + print("inside updateUserData"); + return await _collectionReference.document(uid).setData({ + 'name': name, + 'email': email, + 'age': age + }).then((value){ + print("Successful"); + }).catchError((error) => print("Failed to add user: $error")); + } + + //get users and data + Stream> get doctors { + + return _doctorsReference.snapshots().map(_convertToBrewList); + } + + List _convertToBrewList(QuerySnapshot snapshot){ + + return snapshot.documents.map((doc) { + return Doctor( + + /* + final String name; + final String email; + final String specialist; + final int experience; + final int rating; + */ + name: doc.data['name'] ?? '', + experience: doc.data['experience'] ?? 0, + specialist: doc.data['specialist'] ?? '0', + rating: doc.data['rating'] ?? 0 + ); + }).toList(); + } + + //get users and data + Stream> get appointmentBookings { + + return _appointmentsReference.snapshots().map(_convertToAppointmentList); + } + + List _convertToAppointmentList(QuerySnapshot snapshot) { + + return snapshot.documents.map((doc) { + + return AppointmentBooking( + + /* + final String docName; + final String docSpecialization; + final String patUid; + final String time; + */ + docName: doc.data['docName'] ?? '', + docSpecialization: doc.data['docSpecialization'] ?? '0', + patUid: doc.data['patUid'] ?? '0', + patName: snapshot.toString(), + time: doc.data['time'] ?? '0' + ); + + + + }).toList(); + } + + + + +} +/* + + + + +//convert user data to user model + UserData convertToUserDataFromDocumentSnapshot(DocumentSnapshot snapshot){ + + return UserData( + uid: uid, + name: snapshot.data['name'], + sugar: snapshot.data['sugar'], + strength: snapshot.data['strength'] + ); + } +//get users and data + Stream> get brew { + + return _collectionReference.snapshots().map(_convertToBrewList); + } + + +//get user data stream + Stream get userData { + return _collectionReference.document(uid).snapshots().map(convertToUserDataFromDocumentSnapshot); + } + + + +} +*/ \ No newline at end of file diff --git a/medicare_doctor/pubspec.lock b/medicare_doctor/pubspec.lock index 0d22a03..556db1e 100644 --- a/medicare_doctor/pubspec.lock +++ b/medicare_doctor/pubspec.lock @@ -212,6 +212,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.1.3" + nested: + dependency: transitive + description: + name: nested + url: "https://pub.dartlang.org" + source: hosted + version: "0.0.4" path: dependency: transitive description: @@ -253,7 +260,14 @@ packages: name: plugin_platform_interface url: "https://pub.dartlang.org" source: hosted - version: "1.0.2" + version: "1.0.3" + provider: + dependency: "direct main" + description: + name: provider + url: "https://pub.dartlang.org" + source: hosted + version: "4.3.2+2" quiver: dependency: transitive description: @@ -331,4 +345,4 @@ packages: version: "3.6.1" sdks: dart: ">=2.7.0 <3.0.0" - flutter: ">=1.12.13+hotfix.6 <2.0.0" + flutter: ">=1.16.0 <2.0.0" diff --git a/medicare_doctor/pubspec.yaml b/medicare_doctor/pubspec.yaml index 8d16892..0b37885 100644 --- a/medicare_doctor/pubspec.yaml +++ b/medicare_doctor/pubspec.yaml @@ -34,6 +34,7 @@ dependencies: permission_handler: ^4.4.0 cloud_firestore: ^0.13.6 modal_progress_hud: ^0.1.3 + provider: ^4.1.3 dev_dependencies: flutter_test: From e86c67d4004298a300a47752f6c498242fda290d Mon Sep 17 00:00:00 2001 From: nasirbashak Date: Sat, 3 Oct 2020 17:12:30 +0530 Subject: [PATCH 5/5] appointment lists --- medicare_doctor/lib/screens/doctor_appointments.dart | 2 +- medicare_doctor/lib/services/database.dart | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/medicare_doctor/lib/screens/doctor_appointments.dart b/medicare_doctor/lib/screens/doctor_appointments.dart index 8a723f4..e669cf4 100644 --- a/medicare_doctor/lib/screens/doctor_appointments.dart +++ b/medicare_doctor/lib/screens/doctor_appointments.dart @@ -421,7 +421,7 @@ class BrewListTile extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.center, children: [ - Text(appointmentBooking.docName, + Text(appointmentBooking.patName, style: TextStyle( color: Colors.black, fontSize: 18.0, diff --git a/medicare_doctor/lib/services/database.dart b/medicare_doctor/lib/services/database.dart index 8aaaf85..96701ea 100644 --- a/medicare_doctor/lib/services/database.dart +++ b/medicare_doctor/lib/services/database.dart @@ -77,7 +77,7 @@ class DatabaseService { docName: doc.data['docName'] ?? '', docSpecialization: doc.data['docSpecialization'] ?? '0', patUid: doc.data['patUid'] ?? '0', - patName: snapshot.toString(), + patName: doc.data['patName'] ?? '0', time: doc.data['time'] ?? '0' );