From e3ea8335d1f7fc4ab970870a93641a1b73c02257 Mon Sep 17 00:00:00 2001 From: Abdullah Salah Date: Thu, 26 Dec 2024 09:05:13 +0300 Subject: [PATCH] First Commit --- .gitignore | 43 ++ .metadata | 30 + README.md | 3 + analysis_options.yaml | 1 + android/.gitignore | 13 + android/app/build.gradle | 74 +++ android/app/google-services.json | 29 + android/app/src/debug/AndroidManifest.xml | 7 + android/app/src/main/AndroidManifest.xml | 52 ++ .../kotlin/com/example/baligh/MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../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-night/styles.xml | 18 + android/app/src/main/res/values/styles.xml | 18 + android/app/src/profile/AndroidManifest.xml | 7 + android/build.gradle | 18 + android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 5 + android/settings.gradle | 28 + assets/fonts/Cairo-Bold.ttf | Bin 0 -> 94656 bytes assets/fonts/Cairo-Light.ttf | Bin 0 -> 92804 bytes assets/fonts/Cairo-Medium.ttf | Bin 0 -> 94648 bytes assets/fonts/Cairo-Regular.ttf | Bin 0 -> 94484 bytes assets/fonts/Cairo-SemiBold.ttf | Bin 0 -> 94692 bytes debug-keystore.jks | Bin 0 -> 2246 bytes firebase.json | 1 + ios/.gitignore | 34 + ios/Flutter/AppFrameworkInfo.plist | 26 + ios/Flutter/Debug.xcconfig | 1 + ios/Flutter/Release.xcconfig | 1 + ios/Runner.xcodeproj/project.pbxproj | 616 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 98 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + 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 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 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 + ios/Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ ios/Runner/Base.lproj/Main.storyboard | 26 + ios/Runner/Info.plist | 49 ++ ios/Runner/Runner-Bridging-Header.h | 1 + ios/RunnerTests/RunnerTests.swift | 12 + lib/constants/theme.dart | 66 ++ lib/firebase_options.dart | 69 ++ lib/main.dart | 38 ++ lib/screens/home_screen.dart | 81 +++ lib/screens/login_screen.dart | 112 ++++ lib/screens/otp_screen.dart | 140 ++++ lib/screens/profile_screen.dart | 144 ++++ lib/screens/register_screen.dart | 173 +++++ lib/screens/report_screen.dart | 384 +++++++++++ lib/screens/success_screen.dart | 46 ++ lib/widgets/app_toast.dart | 42 ++ lib/widgets/baligh_card.dart | 73 +++ lib/widgets/custom_button.dart | 86 +++ lib/widgets/custom_text_field.dart | 77 +++ lib/widgets/small_spinner.dart | 19 + pubspec.lock | 442 +++++++++++++ pubspec.yaml | 51 ++ test/widget_test.dart | 30 + upload-keystore.jks | Bin 0 -> 2247 bytes 89 files changed, 3562 insertions(+) create mode 100644 .gitignore create mode 100644 .metadata create mode 100644 README.md create mode 100644 analysis_options.yaml create mode 100644 android/.gitignore create mode 100644 android/app/build.gradle create mode 100644 android/app/google-services.json create mode 100644 android/app/src/debug/AndroidManifest.xml create mode 100644 android/app/src/main/AndroidManifest.xml create mode 100644 android/app/src/main/kotlin/com/example/baligh/MainActivity.kt create mode 100644 android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 android/app/src/main/res/drawable/launch_background.xml create mode 100644 android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 android/app/src/main/res/values-night/styles.xml create mode 100644 android/app/src/main/res/values/styles.xml create mode 100644 android/app/src/profile/AndroidManifest.xml create mode 100644 android/build.gradle create mode 100644 android/gradle.properties create mode 100644 android/gradle/wrapper/gradle-wrapper.properties create mode 100644 android/settings.gradle create mode 100644 assets/fonts/Cairo-Bold.ttf create mode 100644 assets/fonts/Cairo-Light.ttf create mode 100644 assets/fonts/Cairo-Medium.ttf create mode 100644 assets/fonts/Cairo-Regular.ttf create mode 100644 assets/fonts/Cairo-SemiBold.ttf create mode 100644 debug-keystore.jks create mode 100644 firebase.json create mode 100644 ios/.gitignore create mode 100644 ios/Flutter/AppFrameworkInfo.plist create mode 100644 ios/Flutter/Debug.xcconfig create mode 100644 ios/Flutter/Release.xcconfig create mode 100644 ios/Runner.xcodeproj/project.pbxproj create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 ios/Runner/AppDelegate.swift create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 ios/Runner/Base.lproj/Main.storyboard create mode 100644 ios/Runner/Info.plist create mode 100644 ios/Runner/Runner-Bridging-Header.h create mode 100644 ios/RunnerTests/RunnerTests.swift create mode 100644 lib/constants/theme.dart create mode 100644 lib/firebase_options.dart create mode 100644 lib/main.dart create mode 100644 lib/screens/home_screen.dart create mode 100644 lib/screens/login_screen.dart create mode 100644 lib/screens/otp_screen.dart create mode 100644 lib/screens/profile_screen.dart create mode 100644 lib/screens/register_screen.dart create mode 100644 lib/screens/report_screen.dart create mode 100644 lib/screens/success_screen.dart create mode 100644 lib/widgets/app_toast.dart create mode 100644 lib/widgets/baligh_card.dart create mode 100644 lib/widgets/custom_button.dart create mode 100644 lib/widgets/custom_text_field.dart create mode 100644 lib/widgets/small_spinner.dart create mode 100644 pubspec.lock create mode 100644 pubspec.yaml create mode 100644 test/widget_test.dart create mode 100644 upload-keystore.jks diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..29a3a50 --- /dev/null +++ b/.gitignore @@ -0,0 +1,43 @@ +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.buildlog/ +.history +.svn/ +migrate_working_dir/ + +# 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/ +**/ios/Flutter/.last_build_id +.dart_tool/ +.flutter-plugins +.flutter-plugins-dependencies +.pub-cache/ +.pub/ +/build/ + +# Symbolication related +app.*.symbols + +# Obfuscation related +app.*.map.json + +# Android Studio will place build artifacts here +/android/app/debug +/android/app/profile +/android/app/release diff --git a/.metadata b/.metadata new file mode 100644 index 0000000..ce66da9 --- /dev/null +++ b/.metadata @@ -0,0 +1,30 @@ +# 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: "4cf269e36de2573851eaef3c763994f8f9be494d" + channel: "stable" + +project_type: app + +# Tracks metadata for the flutter migrate command +migration: + platforms: + - platform: root + create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d + base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d + - platform: android + create_revision: 4cf269e36de2573851eaef3c763994f8f9be494d + base_revision: 4cf269e36de2573851eaef3c763994f8f9be494d + + # User provided section + + # List of Local paths (relative to this file) that should be + # ignored by the migrate tool. + # + # Files that are not part of the templates will be ignored by default. + unmanaged_files: + - 'lib/main.dart' + - 'ios/Runner.xcodeproj/project.pbxproj' diff --git a/README.md b/README.md new file mode 100644 index 0000000..9f7ecd9 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# baligh + +A new Flutter project. diff --git a/analysis_options.yaml b/analysis_options.yaml new file mode 100644 index 0000000..f9b3034 --- /dev/null +++ b/analysis_options.yaml @@ -0,0 +1 @@ +include: package:flutter_lints/flutter.yaml diff --git a/android/.gitignore b/android/.gitignore new file mode 100644 index 0000000..55afd91 --- /dev/null +++ b/android/.gitignore @@ -0,0 +1,13 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java + +# Remember to never publicly share your keystore. +# See https://flutter.dev/to/reference-keystore +key.properties +**/*.keystore +**/*.jks diff --git a/android/app/build.gradle b/android/app/build.gradle new file mode 100644 index 0000000..c3b55d1 --- /dev/null +++ b/android/app/build.gradle @@ -0,0 +1,74 @@ +plugins { + id "com.android.application" + // START: FlutterFire Configuration + id 'com.google.gms.google-services' + // END: FlutterFire Configuration + id "kotlin-android" + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id "dev.flutter.flutter-gradle-plugin" +} + +def keystoreProperties = new Properties() +def keystorePropertiesFile = rootProject.file('key.properties') +if (keystorePropertiesFile.exists()) { + keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) +} + +android { + namespace = "iq.go.baligh" + compileSdk = flutter.compileSdkVersion + ndkVersion = flutter.ndkVersion + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_1_8 + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId = "iq.go.baligh" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = 23 + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + signingConfigs { + debug { + storeFile file('../../debug-keystore.jks') + storePassword 'debug1234' + keyAlias 'debug' + keyPassword 'debug1234' + } + + release { + keyAlias = keystoreProperties['keyAlias'] + keyPassword = keystoreProperties['keyPassword'] + storeFile = keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null + storePassword = keystoreProperties['storePassword'] + } + } + + buildTypes { + debug { + signingConfig = signingConfigs.debug + } + + 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 + signingConfig = signingConfigs.release + } + } +} + +flutter { + source = "../.." +} diff --git a/android/app/google-services.json b/android/app/google-services.json new file mode 100644 index 0000000..62b50d1 --- /dev/null +++ b/android/app/google-services.json @@ -0,0 +1,29 @@ +{ + "project_info": { + "project_number": "580708075572", + "project_id": "baligh-fbef7", + "storage_bucket": "baligh-fbef7.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:580708075572:android:5ea21c31d74dd8df702261", + "android_client_info": { + "package_name": "iq.go.baligh" + } + }, + "oauth_client": [], + "api_key": [ + { + "current_key": "AIzaSyARwxtYXHm4VrZBrXzKbE7NZd2B_l7xVnY" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [] + } + } + } + ], + "configuration_version": "1" +} \ No newline at end of file diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..b20afa3 --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/kotlin/com/example/baligh/MainActivity.kt b/android/app/src/main/kotlin/com/example/baligh/MainActivity.kt new file mode 100644 index 0000000..f52ccff --- /dev/null +++ b/android/app/src/main/kotlin/com/example/baligh/MainActivity.kt @@ -0,0 +1,5 @@ +package iq.go.baligh + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity: FlutterActivity() diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 0000000..f74085f --- /dev/null +++ b/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000..304732f --- /dev/null +++ b/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/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/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/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/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/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/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/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/android/app/src/main/res/values-night/styles.xml b/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 0000000..06952be --- /dev/null +++ b/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..cb1ef88 --- /dev/null +++ b/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/android/app/src/profile/AndroidManifest.xml b/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000..399f698 --- /dev/null +++ b/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/android/build.gradle b/android/build.gradle new file mode 100644 index 0000000..d2ffbff --- /dev/null +++ b/android/build.gradle @@ -0,0 +1,18 @@ +allprojects { + repositories { + google() + mavenCentral() + } +} + +rootProject.buildDir = "../build" +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(":app") +} + +tasks.register("clean", Delete) { + delete rootProject.buildDir +} diff --git a/android/gradle.properties b/android/gradle.properties new file mode 100644 index 0000000..2597170 --- /dev/null +++ b/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx4G -XX:MaxMetaspaceSize=2G -XX:+HeapDumpOnOutOfMemoryError +android.useAndroidX=true +android.enableJetifier=true diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..7bb2df6 --- /dev/null +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip diff --git a/android/settings.gradle b/android/settings.gradle new file mode 100644 index 0000000..9759a22 --- /dev/null +++ b/android/settings.gradle @@ -0,0 +1,28 @@ +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file("local.properties").withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty("flutter.sdk") + assert flutterSdkPath != null, "flutter.sdk not set in local.properties" + return flutterSdkPath + }() + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id "dev.flutter.flutter-plugin-loader" version "1.0.0" + id "com.android.application" version "8.1.0" apply false + // START: FlutterFire Configuration + id "com.google.gms.google-services" version "4.3.15" apply false + // END: FlutterFire Configuration + id "org.jetbrains.kotlin.android" version "1.8.22" apply false +} + +include ":app" diff --git a/assets/fonts/Cairo-Bold.ttf b/assets/fonts/Cairo-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..098d2fb5851c92236b72f68263cd91886db729b6 GIT binary patch literal 94656 zcmb@v2Ygh;`u{&OXLr*fgg_ub2qAO~AqgRLNLgtr(m}5hAT%Mt&=eK1qhePCMZvC! z9T62l(Q83e>>Uv!2I+xNlCb-K&z!T_C8GC!|G%4keWv&4nP=uaGv`D|Aw(>OONg`c z3%sjt+4Q>*DhD(_d)Rp+d?iJzg&0*P#KawEj~JD^q}_Q@LUedqi26C_jp&lG=8@a3 z6GDDRDHBGF95C|Wm*02BzZ`%6NwW%PmtFPBXdxOd5h7yX)WSKl36CW{9y@&M%*&^o z-}9qxLTq>s)J!WXoZM#f!-I*RKz#Nz0-`SWJdVFN{?uu+=3e&ZwlS2|e7g|Q-^?tT zRCr?J)&v?qQV37+tisD?Tf=1->6?>2xwvpvQJ)qgZWAJs^24{xE}1j;x5+!xgvi+` zL<=>$v}pD;&(a%6A5HqO4bp$Zi!PE&A^m<)A6r=2Vz!7D_W?ap!9Po<62hHu>fdA) z{vp0+!s6?s5mq-7VznCh)svf6TwK3*rLe4WUC7SFhpsSor2->jhQOcoSDUQC3P;CI&ChNWF%df+8L%ck`I?qGRc(SQZos26L5l?q*_>;!pH!g2{JRvM0E}=z2hlFkk0~4kslqM`nxFum(!gC4l zCVZOkeL`8n!6sIddQF-(No_K{$sJ9$H96kYYMRnCt!dAu-loHwUet6()A>!WZTfW6 zU5RmtxrrAgUXgfH;ysD05}!?cE%DvNPZPgS{55e;Vr4VgEV@}jv)0YJH0#-{pxOD& z{?%-Hvw6+dH4kqd-#oebjOJULf8Bg%ixw?PTD;Wamlk_l98a>6>L+zf8kaOVsU+!& zq??kSNcuKuSJM8ZlP%pXV_PX)g%r0z{U-o|QE zzfH3?9l!5%R;Oj14tCD!+`seC&SN@H?0iS(`#Z1d{OeiaXZ1eoy|lQr z#I%8Fcc#6X_D9RZVpeI^qO9ApR%AVq^=j6?vp&z-nYAzL zM7Qv6O}bs$?dR;G?xK5i_a@z2cTelyv%9zZ^En-JvU75C&dnL0Gd<_BoFzHSa~{um zG3V`^?KwMh4)y5Q-|t`jX7;9i2kekKh=L-|F`>Z>;LnB<^!e-SUupS z0Ur$bIX5h~er`f;%iMOkvvN1*p3IYZ5qS;rdgcwyyCH8`-j@96{I>ZM@}J1xP|&bo zOu>YL=>??)R}@@da9hE$f>i}i7ra#Pdcivd9~FFF@O{Cr1$zn(7o7A;Z+&k|Zx?Sr z??CVQ-tpc^-kIKc-bLPsn@zXbyq4_rEM z#lSTKUm3V{;I9Ku43dLl1~nVhWzZ#q<_x-G(8Gh?9`x~`?+5K2`~4kfuZ04e354Z^(H=E*LU($eba|hHMxbGqiAM>Co$j-Zk{`p&N#NJoLMv zzn`PdX?afiIRnlaby^eVeb#~ zoj?5iwdemlTn?{4y!G%d!v_wZFnrGN+lQ|n{>t!e!*`DmBZiMyG~)IVt4Ew1dDh4o zBd-~G|HySCKOOnQsKil=N5_rsJbL8ld84lxee>v-N547xgVA4({$=#R(bZ$Z$21+2 zI%fEoi^p6t=C(1*#=Jk~>oGgW92!$S)-yJ4Y|_}lV`q$AHumYU>&9*wyM65LvB$@S zk83yX{BaA%-863PxG%<)jXN~XH$HlN%J|Ij`Qs;!UpoHP@mt1!JpOxr732LE#9c7r zf|VB>y|CMbi&$-hI7_9l?nqYz?&Y3v$IV{C?Q`5pgu9P9ZcB7@Z*$x(5%1pMxZR?s zdy(Vz5I)0khl^=$<+vln1lOaEJ4&>7Ep*(`A?_HNY>juq>xnF@t>bPQY!6$tXe-eU zXHOSt#X4>!;#G~~w%7|*IBu7yr^+0+TSTkx9Jfcrst+A^Sg?;WT*RsMPIv_6taaRx zl)v0@M~TjArsIwlDQd9ejuDMjmgBA`QdOXB^+kJG?u5sRWErTpf#@h7cEaOCioDWs zHx!-aFvlHF8fP5XWh6_F6W*A;LZFWcB1LR>!kdV;VvXZ&Dw5bg82ZXY(Oyh;+|5L? z$amb$MMn`B&lc>G>N(*_xCE(+*gqADd15BJkp=jsi>YR3QXnoPq?EW^;tItiaS5f4 zFz#YvlEqMyckX|T4=t&L{FDE-oPUZPL2a{WU9R}2ROgUtGO6Z~_ROt4QxAsL_WI0u zf<5@}Q~uqk4X>^1Kc@)Rd*)t;mUX643C92P=mpdL{rCmbgpOb^^zTL{m?GGl|4Z87 zCW&bU3;?VN((iTLt1uvy@A#g ziutrp_o+}!#MJFvfM2&GnJ``N0CB!?&t*)KjlB53j!$4r=QyJ})zqeYoMw8iTRxSR zpF{hn5jTr==#e?QHl6O}0D3)%5It5}I_TEv`JarOD5C9l>jzNkToY=?jlw?>e=%hb z!PYWRkIUs|WbJXaDNst-|E8Wi+BThfOLzhdaBW>0Wf~e~igeM7zH3e?;WrbmxPY)U zo*dIehR72C62a1RPwlxMn!79g8VQ|xg`^DD8^{qXC66*@(^t*cw){_~rgVNi%*far z7)+nc6Rhsb490E}?bMW*XE;R90?qa9Yq=swVVj5MG4^TXDuH5Mpyxcw$Rte9i9$kx zwRF&17^6M0pPgCh@W%^RL>6k5G(2IH6ic2SVv+1ByUV`l6Bfz4rC&8u-PK0*f%@5c z+Y{qy#1n2yPfyQi&sd&wFZEpRS>(CVv&3_kXSwGQ&*PqFJTG|O@NDwD>)Gb{%5yU5 zhNNecUQGHo&qzm-PA11ECnhH)rzE#cPEYQcoS!^9`SRqOlh?LNY1KAGrFc^6r^KZ+ zN=ZyfO6im`Fl9nYQJbyDHXVDn`uyr~)zhnIRbN$obM>v&w^iR&eP8ve>SwB-tA3&S z_3BO4d#e34`87o~m(*NZv!LdRnwx5Ft+}J-?wWgRmeu%9g`bK&m3S)kROeIuPF47> z^zWR>wigw1U zm8U=BHNi9EZ^!E$#_J2up`^vN<5iJ#BDrC5ljP>f$!5HInDLsMy!f>7YH-?kO|BiU zG1XJ6FR8x58LvC4?_s>2s(zO7da3%Y>hkJSHF-6YYo^xBs+m)BdCiSAx76HLbC(&f z>QnAhF{ctvwK~<|RNs*Cx`pw&lkr;Sd%*Xw?@`~Awd3`&Z@upg-zMJ{-}}C;zE6E$ z_`dP|;M?Kb<=gH1(~MVz-*2^m0o!Oc4E)JV?eZlVqdlE z-Cav|b=lQmSA$=V?`rq!v%mg(=fR!3ckVzd`rgj3cYeHc^UjBMUM)%w&4-)3#6tS_u@ zFm+A4t#WH0_CD*VRfFa{pl>F*Rpk;ck1N_0=V}rtP1`Q?yDl{LuEwrJSCT8m)iw~T z-L8(VH1u%UuAZ*Gu3VSbHQ05oYdBiD@g^^(x>Y@{-bI`D4WsoTWB7_%r`D(+)N1v- zTBX*iN7SS0SG7a!R8K1OjqKR#i$MtiE-j$);}%F z=dp@kpF;OjQq*Sk}&(wOg8?ECL>MQlF`dWRbwyUjHL-nzAtIg;kUr^hu7V1+~rmj=h zTaDEr^^tnoN>bNKk9u3pLuWZ(J!SOwE)j*^J%VSDI3!S_Xu;D<2CHEgq)}s@M24^y z3}RgwtbP*bnpIh^L<@N4*ePxl*NW@Kt>Ol8GfzBsqlbS$JR}|#FN^2Ji{d4*O#EAH z6Ca{S{ak#keiomJz2XnCNBk*HiLZp8b>b$Td#*!Ayaf4or)VhdVI8?wG!S=*1aZG; zB9@C*;t|nIJSbXZNw9-W>1TD;wjNdJj?Uc8qrO>%9`~GtIrFp z$LrWxJtw-04Xi_Nu;y+QeZ(fwTf8Ouip{KyTUgWHW1W5%&F}l{Xg(DK#YgPrK4BO2 z1v|BG#aQvZ7$d$DTGqg60LZvnbp#2ZY40U zSEAdlFQeouGDf~BBhYR?CtJ&QvI}czFWHaPp+KH3&ynZLQF5I8mn@V;a=QFL&XQN4 z1HVn)CGV3D$(Q7-@-=gM;WFnJVVq!aYQfn?6(<$%t3Il)dJz5gARm!W$QR_h z^55!yb_`YGQgNIe!%49a@v&GOR&S|I>UGwljp_~cx%xsqqYkJa)o*H-Op?j6rR>bg zf0itjbLAXXux!~)-YA#Io8&EWsk~J_Dj%1R$u)AVd{(}XCjNHLTJGkoWf>?($amzoDw!28NA-}O%P-`Y@+TiJ#al8&+iCnp)~ zPjX~WR@~m~Qu@eqIr}(I4wob42(HDeXqSG0%gt(=Y8L->o|8EdYy6K|BU+^H|kBcaU zEh7w?$O!*l8Rq{IyWE6@Y1_bu{iQrhGyqZ!BJV)*>;k`mO2_?&-)Egm+%spu8p4*- zj{k%eb{gw8(VjEIe(FMSKVj3bL(v(X(3ucLpJGIe(slsXiC!vzYaDmL4ul8nbI^%h zD;m`Wr_tdmjlS1K8+2Bom;{YF`u)`1;=hH}MzqjSEk(B6EZUw4sulfhA)3>VRO61q z{x2X$i>9iPX#E#-5ZzS=rW-c0uDeVWLqHR8)V~va56Zy~PzH{HufWFv$Qtqh)~;Tn z+J9J%*S2UWb3_w zP6uBB?FP^(;~$}E7R|WQKKd3LnpRee`j$r|)P?+A#OSnt!FRMR6!S$pIY+dGXX8~a zH0~kB%kx1G(wz@#ZT~5GKIkDD6W-YJiuP71I?u8Geew~I17`X6ofb}5t^aB}-lPu= z*Lg$pY5%1m`E>a+{QJ}-=G~oOHtyX2yI&q6Z#&vs*Um$>Ob4O%rT!xUzuOY+-JR*{ zOSI`W|Gv6@*W2i}%k)?ff3AODUBA^{#9Ko_3i0uvj$ienUCY2qr(bpau4W?Jl_j#( z3gYKe{(taWjFGhtICdZ(yl?0gu+{67cOUJUNcfG^U)Ntn{I}pu;(lS=CP0Ti_*dY6 zE114EUegJ>YJY$qbUrl)Tmqh_u2kZ+e=?vy@}j@`t&X(k956T}z0M!VcQ$VAcWi4t zX`cj+ZR*ziw4Sx=NfBAgZ*}6;G0M>GI|lFn!X8ie_Z9qKf`78#@$Xf@l>^`Ttf&euSKK|s|^py`*-24y_8Yu-|P8FwCCbZ`+!{=UP#ytAYlI_B1sn+ zh!5By@u!tTd3O3ospnbX*q$bo*&77xdvL!7f_5bS$Uypl{U6giW5ifRGFFj#9M3eC zCR~qIV4U?h>hWSMPa7-k|C=)0e==_mvu8iaQ^q!t$o^oMEEL5m6&w)L$!E&a8c%#rdEY$O6gWETH!Rxu6MXiN+uf zGy|=H_QyMRQ|uI=2EKYbr96#5)75;O=wQ@N67 zpcC{hiaS&v(!WRTvFA2hJZQ)>N|vETrRYYQ6tn_a?B#m%Y?e*>7VGCy^#?xUM{Lq2@++gcB(yWJ;LjZiQu1DtD7)V=g zpq+hqzUm{75Z{o!aA(dCJBxEb2GI2G%U&#Aw;6XP=nuL99pBf%NbEc?2=oIwowf&n z4r-|BqvoekpfhL#;#DSXpU9r5r75d5?QLQ$glDx@TJQvIBa}t~cMswM?z(pSzsC7b z2yrIxyl%pIhUapi&L_u+`rL&YCcCl6NP`Y&u$T|$8Keo1947k8A^sZKThxPwkEu~& zlgz}QAkHUG0_i%*ul@Vgh2nCV=C7a(7kPR*c_Iz3oD@yP@6`6E|7%Q_$UsKxeY)O@ z>oI3P#E*(Wq}U4Gt$gp$kz#paY2ieXKeKRdF}+_RXJP1Zb%?h|bk=`Big(;H5O z36G+GG3Zrd;puv4BIKyy`G1$5^Wr+`b*c3!RiA|%K=Zdx5^PDN3H0J7AMU$tC z2a4y-Di!yZluj-dx0mX?HbRXiy-Mk|s*Ze4=D@fj=JR#z*- z%CfpynS{B~5}k*pXS@1_c5(a9V5w;6n&?WmeAXK4GOMrULW8hcO;MeBcK;B)N@qFI z`bqYe^+?@Oq%wn=$SaY*^Lf7B&Mnb6`6*^BYlM>ZhZk zGt5}|31&U{F=jMR+d4fXf<~p8Y>5`21JC-yc+wxqbN*PK@-O7c{Z5|PU*$>tEoW49 z4;nkYaB;8EWuEUJCPX4FU1-is53SopLu;{huGJjv%7^GRE>tP<5PFB}(d0Kld$$d( z*kW`(o#FA$>~6HKEuLEv*|ch)>WR5g^}yVqx?y@%cg$tTFD2JgOLN)~%le#wf1t|3 z+@QK*dXYq=t5aqhlZt0H%50Ch0hy}Pw#8h=o?Dk`>DqZxO~JR3=O$9gZ%>P9ZDLxP znD0!?=`C+e*g$5y&fi?8Qr!KemL{0XR3hg3I_*jzY#=gI=V*bsfoDyfqbcSx)eLhz z+@Hld(4IBI^jX1U;4IPe3})K1{DXhPhH6#at#2VE(0Ftam!+Nz9G%Fy;oiAJZ$3W3EKQ zqH`X^tlO_Y2pcH(Vs4awVs4PTF}>W8(K+^D*3I!NVFP(?)j7&AH^`lsUbHzn$8VUS zyxAH5Kz;X?F+NMDP+d%l)3}DGa9!pvm>cB|%nkAfOt1V2bD8`Zvu-QCAZ(!g26LnQ z8gm0HmCo@c<}#kzbq-`8&uziE8JOd({$ZBuIUbZ_Z}5a2iIk{^)QFSuXbY3j6}CsO znJ%-?5%xwp<;r~O9mtFxil%Tl8p82t1}CBsoPj2=6lt{(UEsB7K5sz}csH$EiT3YN z`6Qap=jDs?Ww}nSr~MnzcD^Uymmi@C`~;2Q_wqZrUu!Sr5m_mZ%adp>PjOnRb(wB7 zm=Ow1mC>Ss{YS%aVlOl<}?#+tx7`2n-VhePqS}qR4b9s zLL=J^eQY0O^9bbf1?XKTp>MqeJ?k8~06pthAPqe(lkoRMe^%KzMPD6`38=duKXmGDbU%eFRelJ?v2hrI+ zE}uqUor2zWliWhNZO%Blb+z#Jc>djJI-?lU%6f3ETY5AI<@P(LM%QriqgQ^#N*IZx zmf{;=ul4$*Sg+k)(&(6te~FRg5Ad}VebLC-Wwmw6(r+#BR*6Z2v6_Zom)0Bv z>OoEtH(iyQw36rjV5uIzKKYW|(+h^BQ-08w!uk^Q#k1xGeIBH{E_;-^$Z3bYmx$(O z{s`{Xk0h<7&Qa&7VYRswtCfrOa}uW}zZ2?W*D#Uum@-`UUPQ_`5hcSpr`g7N&(mTV zXH%tO0&A`Al}jOw)ycZ+i^V#?8yk#+6=tzwa9+a7!g&cR3-5g}2E6&fDxr|B?5I2@ zWjI?crC1eAh)xr(koc5thv*W*6{|vRh^{5vf^N0Bbot?mwWcK0pi=MrV!WvQxr3Iwg4F%y$T7d2Sr zs-7xCbyO+L&^TtTVkTF}KRI{#fpeIxoXxy}^jd=~djPq13o>pY@@@vQZ#;5vFp{w+ z^Q$9stuZoG@!WX;%KRX0(Dr^c%b*k%0-9&)K^s+6}dZoxHG zU8=5DH{+V3W~)V}u@GJ^dSqw}of-YU}mDfu+^ zqe!O5u^&c8t;T);sj?D#8FGs|t&HP6@?PxQ^{x~97Ni>YMp->>l1s3!Mbcf5eI+uF zd%mnL3*=?krO3g#*u_Z1+1N9XjWe;QASI_^Pefi$#=Z#2IRSgT-q~W0*1KHn;d;l5 zeXid9V)sVY_QlRY>h{FWLjGoBrz43ousd_EmxkS*{c=a_RMu4P#B8Fe@qe@~+HwTyO@OKsq4s3BU<%wZ&B(DK zw9{)Oh?ccTk&rc1pRWej%gbw5!2i+8XUjFXY6jdk6D}-eSrASl#JjS1YCC^xA z_~ZRP-YgU!F~dGU`aLHt>C&UidHbELA8n9zr#M%iEW?n4?Zh5>70F(@i2XsdK8Kev z;$wC=^+gAsvQDtmX@Jb^#O&1ac^fyKKj9R-N_@sFPT;BKEZJ0~an{pCQ&_eTyLb}s z>d<|PY(*Ql%M{M`r;0CSYndwUl5IG7e^F#|9-f6(sV!&L?a?N6Ko(RZ9XfH^Vz^0m z;f};tGF^Nvrtyvye8ye{zT>36C#!UK&5N88^%i^K$Twv#v^>4VZq28%A9oU_%l@3X z&lEGDRIVtNd7QkjmieLpn)+bC5_UUYakluAQ*tQ=irMVh2C){*k%Psh?16@IqhYW( z$zF�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 HM%@1Zyr5Kj literal 0 HcmV?d00001 diff --git a/assets/fonts/Cairo-Regular.ttf b/assets/fonts/Cairo-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..fb9e6cc6ba56b5af11c5360d62d5557eb245ae61 GIT binary patch literal 94484 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 )qVx=Uj+evOH^HOAo97>-+G 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 vFX+!q_dH&0KU7o-0J*eDu{ literal 0 HcmV?d00001 diff --git a/assets/fonts/Cairo-SemiBold.ttf b/assets/fonts/Cairo-SemiBold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..e2b82ba387bf70fe312423bf37085a73a2603e0c GIT binary patch literal 94692 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 literal 0 HcmV?d00001 diff --git a/debug-keystore.jks b/debug-keystore.jks new file mode 100644 index 0000000000000000000000000000000000000000..8e44c3ec89143965dd27d6436d559024a06a3b92 GIT binary patch literal 2246 zcmchXX*AS}AI4`h48vGvkg^Q2Mn7ZhWXX0#We=fWiX63#-31&YYExu z#-J=?k6V&5wvw&C^WV-rr}y{8^Wyt?^_JGbbBYyngRK>G}HZPYLT!M!OAuQ~pGe@>Lpd<+wul<2cVcP2VM> zoYhW3$5QN?HD)*IhW z#F$g=PD|7t>Py%ab;U^4B@LQEecSl{vB`A>(~Xr(So!xAfZPAJDE6mgNY5 z;{wcqOB)YxMS^whpJSrZeGRJNez5_{PyYPSN*i?x%qgtr!8ql4|JEgmSJbkK61-$m zB0j)nHk0Z)-zt=Z& z%HzYFsNHKw2)ef_QH~K~^#*<|N#GHxzrk;zm`71Mt!jO{XE^!+i-vsEBE{n6W&J2# zP$r_+F$i0|5b)wct>|KysI0@4kbaCNr2yw=%TNp(?khQf)==y5;~sH&meh_dgUzXY zxgGaN=cdc3vn zjL>v29x>!zlKF%wg7>NH?z;|V(_cqiIbRjKlO@hXMRWRMsJBS(`cHUpB;{f?uRap! zyiWCY;_1udjrq21-XnUc!TG5`rF2hR5bnXZ-w64BwdX3eY2>bmQt>M5;Vtb zN!`%vfY*gJ*{bqYs5Df6j)|YD$ul$%Z}dUOg!0W3wwJRotq%LS6xh;9yU|;1h43Iz zH{5Pr0K&Lqf*+Pa!WY-Tl-)O-#nF+_2Brv8%OL{&oie;*asPB{< zFNkrM=9nlWOxQ>bHGg1@$4%J3@Yk9nrOhM`nwhF3NKMrtogEje%|Aza*}=O9r?Iik zqwlWhM>WA*YQ6_tYpLp*AuJ2iGA5IIW-g{sqUTivo{j_}@2NgB3-GFm*2wp8Y3xPz z6)l#T>DFBOKDH@turqr7HIGC~$5d)Dtcbk-_78eJo~h-_al>CSu|h4iOC~%2VL&Oz znm^;GNb;_HfsW@XecxiV=@Zv|Bk8eJ<)O%Ja@iM@`hg{^J9;H#eJRU-(}qit)L?h& z@=&(X?G}~YbG*V>ta|EC@WUwH{QIJNmA$qJbo&%i|Vqq_oAI?auJ)%>Ex=4d7c>QcW;uV+E_!>0lCPy{1-HOQXhq3?>4yW z3uxIQ3a=d$d2eH#fB0NBl81d~NHg#*GWFTKZ{$9g|K}-QQd9vnKp-d)AVMPmBE<7C z6at1o5TMpH`E-kR@dAJoj*yEtjsMOG1|wNOfUgoazy*ie!r*+Ywgex-%@D%>2-`1& z^%uha3*q>MK>tqwF#%2-UI_ry05ug2oRXs;3J0j*031&Fzu+J4Lj;TeT?m-v$Q&32 z0*GLC2oVehrK+!L3RBtZk;XPwUk8nhQ8oC%CO%Q|xiqN0)ksu3AivrrbPAjM)_ zx}%paYl%7e$oFO<)R`!8KK~?VW^M`ljYXi7YLU9)Ist`u^-Cqo7Nil(tJIPR{9AmU zMjMQZyhgXT5OU}w@#?8w{nh~ipIM6SObrXX0@SaCx( zv|PAP=2-eOVlmHR9M|lqSSqhocv#Lf{Q$`~Y*YPOGcFh)h3M;j65g7L%9S%$jfN;)j)c{^6vN+4l)O~MX7Mz>_hltK{J;&(yt&C{J6y z9w&!@Qs8ns6Bhz2k}6L#rF;1q-`*DLSfM(by<4R{NIlINSv>kHYjJ{tGRU0Ri_coQ z!+DLm3qAU^`7HO0FNP?p-cM2}Wi5JD_A}qS*oQ;9k#ssqeY1z1E*iEh*t!Dw_)zr( z*BQIPkSD6&dwrWvkgF?$y##m{|DofYttNEr+E9tUy&32MHuaZ?A*; zN!4sxkg+Esna3HL++M^6npaRk1W65#mWn)=do9_*bbdCcir4;7*DAz^+%t+bU$GuO Q+W>XWrfk0xe^9>rFDk##umAu6 literal 0 HcmV?d00001 diff --git a/firebase.json b/firebase.json new file mode 100644 index 0000000..0692d69 --- /dev/null +++ b/firebase.json @@ -0,0 +1 @@ +{"flutter":{"platforms":{"android":{"default":{"projectId":"baligh-fbef7","appId":"1:580708075572:android:5ea21c31d74dd8df702261","fileOutput":"android/app/google-services.json"}},"dart":{"lib/firebase_options.dart":{"projectId":"baligh-fbef7","configurations":{"android":"1:580708075572:android:5ea21c31d74dd8df702261","ios":"1:580708075572:ios:943aa5f67d6d3c13702261"}}}}}} \ No newline at end of file diff --git a/ios/.gitignore b/ios/.gitignore new file mode 100644 index 0000000..7a7f987 --- /dev/null +++ b/ios/.gitignore @@ -0,0 +1,34 @@ +**/dgph +*.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/ephemeral/ +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/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 0000000..7c56964 --- /dev/null +++ b/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 12.0 + + diff --git a/ios/Flutter/Debug.xcconfig b/ios/Flutter/Debug.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/ios/Flutter/Debug.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/ios/Flutter/Release.xcconfig b/ios/Flutter/Release.xcconfig new file mode 100644 index 0000000..592ceee --- /dev/null +++ b/ios/Flutter/Release.xcconfig @@ -0,0 +1 @@ +#include "Generated.xcconfig" diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000..1b3a1de --- /dev/null +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,616 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 54; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; + 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 PBXContainerItemProxy section */ + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 97C146E61CF9000F007C117D /* Project object */; + proxyType = 1; + remoteGlobalIDString = 97C146ED1CF9000F007C117D; + remoteInfo = Runner; + }; +/* End PBXContainerItemProxy 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 = ""; }; + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 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 */ + 331C8082294A63A400263BE5 /* RunnerTests */ = { + isa = PBXGroup; + children = ( + 331C807B294A618700263BE5 /* RunnerTests.swift */, + ); + path = RunnerTests; + sourceTree = ""; + }; + 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 */, + 331C8082294A63A400263BE5 /* RunnerTests */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 331C8080294A63A400263BE5 /* RunnerTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; + buildPhases = ( + 331C807D294A63A400263BE5 /* Sources */, + 331C807F294A63A400263BE5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 331C8086294A63A400263BE5 /* PBXTargetDependency */, + ); + name = RunnerTests; + productName = RunnerTests; + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 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 = { + BuildIndependentTargetsInParallel = YES; + LastUpgradeCheck = 1510; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 331C8080294A63A400263BE5 = { + CreatedOnToolsVersion = 14.0; + TestTargetID = 97C146ED1CF9000F007C117D; + }; + 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 */, + 331C8080294A63A400263BE5 /* RunnerTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 331C807F294A63A400263BE5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 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; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", + ); + 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; + alwaysOutOfDate = 1; + 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 */ + 331C807D294A63A400263BE5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 97C146ED1CF9000F007C117D /* Runner */; + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency 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; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + 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; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + 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 = 12.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; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.baligh; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 331C8088294A63A400263BE5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.baligh.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Debug; + }; + 331C8089294A63A400263BE5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.baligh.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Release; + }; + 331C808A294A63A400263BE5 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + GENERATE_INFOPLIST_FILE = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = com.example.baligh.RunnerTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + 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; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + 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 = 12.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + 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; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + 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 = 12.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + 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; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.baligh; + 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; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.example.baligh; + 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 */ + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 331C8088294A63A400263BE5 /* Debug */, + 331C8089294A63A400263BE5 /* Release */, + 331C808A294A63A400263BE5 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 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/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000..8e3ca5d --- /dev/null +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..1d526a1 --- /dev/null +++ b/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000..f9b0d7c --- /dev/null +++ b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift new file mode 100644 index 0000000..6266644 --- /dev/null +++ b/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import Flutter +import UIKit + +@main +@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/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..d36b1fa --- /dev/null +++ b/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/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/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/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..797d452e458972bab9d994556c8305db4c827017 GIT binary patch literal 406 zcmV;H0crk;P))>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed2d933e1120817fe9182483a228007b18ab6ae GIT binary patch literal 450 zcmV;z0X_bSP)iGWQ_5NJQ_~rNh*z)}eT%KUb z`7gNk0#AwF^#0T0?hIa^`~Ck;!}#m+_uT050aTR(J!bU#|IzRL%^UsMS#KsYnTF*!YeDOytlP4VhV?b} z%rz_<=#CPc)tU1MZTq~*2=8~iZ!lSa<{9b@2Jl;?IEV8)=fG217*|@)CCYgFze-x? zIFODUIA>nWKpE+bn~n7;-89sa>#DR>TSlqWk*!2hSN6D~Qb#VqbP~4Fk&m`@1$JGr zXPIdeRE&b2Thd#{MtDK$px*d3-Wx``>!oimf%|A-&-q*6KAH)e$3|6JV%HX{Hig)k suLT-RhftRq8b9;(V=235Wa|I=027H2wCDra;{X5v07*qoM6N<$f;9x^2LJ#7 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd7b0099ca80c806f8fe495613e8d6c69460d76 GIT binary patch literal 282 zcmV+#0p(^bcu7P-R4C8Q z&e;xxFbF_Vrezo%_kH*OKhshZ6BFpG-Y1e10`QXJKbND7AMQ&cMj60B5TNObaZxYybcN07*qoM6N<$g3m;S%K!iX literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fe730945a01f64a61e2235dbe3f45b08f7729182 GIT binary patch literal 462 zcmV;<0WtoGP)-}iV`2<;=$?g5M=KQbZ{F&YRNy7Nn@%_*5{gvDM0aKI4?ESmw z{NnZg)A0R`+4?NF_RZexyVB&^^ZvN!{I28tr{Vje;QNTz`dG&Jz0~Ek&f2;*Z7>B|cg}xYpxEFY+0YrKLF;^Q+-HreN0P{&i zK~zY`?b7ECf-n?@;d<&orQ*Q7KoR%4|C>{W^h6@&01>0SKS`dn{Q}GT%Qj_{PLZ_& zs`MFI#j-(>?bvdZ!8^xTwlY{qA)T4QLbY@j(!YJ7aXJervHy6HaG_2SB`6CC{He}f zHVw(fJWApwPq!6VY7r1w-Fs)@ox~N+q|w~e;JI~C4Vf^@d>Wvj=fl`^u9x9wd9 zR%3*Q+)t%S!MU_`id^@&Y{y7-r98lZX0?YrHlfmwb?#}^1b{8g&KzmkE(L>Z&)179 zp<)v6Y}pRl100G2FL_t(o!|l{-Q-VMg#&MKg7c{O0 z2wJImOS3Gy*Z2Qifdv~JYOp;v+U)a|nLoc7hNH;I$;lzDt$}rkaFw1mYK5_0Q(Sut zvbEloxON7$+HSOgC9Z8ltuC&0OSF!-mXv5caV>#bc3@hBPX@I$58-z}(ZZE!t-aOG zpjNkbau@>yEzH(5Yj4kZiMH32XI!4~gVXNnjAvRx;Sdg^`>2DpUEwoMhTs_st8pKG z(%SHyHdU&v%f36~uERh!bd`!T2dw;z6PrOTQ7Vt*#9F2uHlUVnb#ev_o^fh}Dzmq} zWtlk35}k=?xj28uO|5>>$yXadTUE@@IPpgH`gJ~Ro4>jd1IF|(+IX>8M4Ps{PNvmI zNj4D+XgN83gPt_Gm}`Ybv{;+&yu-C(Grdiahmo~BjG-l&mWM+{e5M1sm&=xduwgM9 z`8OEh`=F3r`^E{n_;%9weN{cf2%7=VzC@cYj+lg>+3|D|_1C@{hcU(DyQG_BvBWe? zvTv``=%b1zrol#=R`JB)>cdjpWt&rLJgVp-t?DREyuq1A%0Z4)6_WsQ7{nzjN zo!X zGXV)2i3kcZIL~_j>uIKPK_zib+3T+Nt3Mb&Br)s)UIaA}@p{wDda>7=Q|mGRp7pqY zkJ!7E{MNz$9nOwoVqpFb)}$IP24Wn2JJ=Cw(!`OXJBr45rP>>AQr$6c7slJWvbpNW z@KTwna6d?PP>hvXCcp=4F;=GR@R4E7{4VU^0p4F>v^#A|>07*qoM6N<$f*5nx ACIA2c literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..502f463a9bc882b461c96aadf492d1729e49e725 GIT binary patch literal 586 zcmV-Q0=4~#P)+}#`wDE{8-2Mebf5<{{PqV{TgVcv*r8?UZ3{-|G?_}T*&y;@cqf{ z{Q*~+qr%%p!1pS*_Uicl#q9lc(D`!D`LN62sNwq{oYw(Wmhk)k<@f$!$@ng~_5)Ru z0Z)trIA5^j{DIW^c+vT2%lW+2<(RtE2wR;4O@)Tm`Xr*?A(qYoM}7i5Yxw>D(&6ou zxz!_Xr~yNF+waPe00049Nkl*;a!v6h%{rlvIH#gW3s8p;bFr=l}mRqpW2h zw=OA%hdyL~z+UHOzl0eKhEr$YYOL-c-%Y<)=j?(bzDweB7{b+%_ypvm_cG{SvM=DK zhv{K@m>#Bw>2W$eUI#iU)Wdgs8Y3U+A$Gd&{+j)d)BmGKx+43U_!tik_YlN)>$7G! zhkE!s;%oku3;IwG3U^2kw?z+HM)jB{@zFhK8P#KMSytSthr+4!c(5c%+^UBn`0X*2 zy3(k600_CSZj?O$Qu%&$;|TGUJrptR(HzyIx>5E(2r{eA(<6t3e3I0B)7d6s7?Z5J zZ!rtKvA{MiEBm&KFtoifx>5P^Z=vl)95XJn()aS5%ad(s?4-=Tkis9IGu{`Fy8r+H07*qoM6N<$f20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0ec303439225b78712f49115768196d8d76f6790 GIT binary patch literal 862 zcmV-k1EKthP)20Z)wqMt%V?S?~D#06};F zA3KcL`Wb+>5ObvgQIG&ig8(;V04hz?@cqy3{mSh8o!|U|)cI!1_+!fWH@o*8vh^CU z^ws0;(c$gI+2~q^tO#GDHf@=;DncUw00J^eL_t(&-tE|HQ`%4vfZ;WsBqu-$0nu1R zq^Vj;p$clf^?twn|KHO+IGt^q#a3X?w9dXC@*yxhv&l}F322(8Y1&=P&I}~G@#h6; z1CV9ecD9ZEe87{{NtI*)_aJ<`kJa z?5=RBtFF50s;jQLFil-`)m2wrb=6h(&brpj%nG_U&ut~$?8Rokzxi8zJoWr#2dto5 zOX_URcc<1`Iky+jc;A%Vzx}1QU{2$|cKPom2Vf1{8m`vja4{F>HS?^Nc^rp}xo+Nh zxd}eOm`fm3@MQC1< zIk&aCjb~Yh%5+Yq0`)D;q{#-Uqlv*o+Oor zE!I71Z@ASH3grl8&P^L0WpavHoP|UX4e?!igT`4?AZk$hu*@%6WJ;zDOGlw7kj@ zY5!B-0ft0f?Lgb>C;$Ke07*qoM6N<$f~t1N9smFU literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e9f5fea27c705180eb716271f41b582e76dcbd90 GIT binary patch literal 1674 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 literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0467bf12aa4d28f374bb26596605a46dcbb3e7c8 GIT binary patch literal 1418 zcmV;51$Fv~P)q zKfU)WzW*n(@|xWGCA9ScMt*e9`2kdxPQ&&>|-UCa7_51w+ zLUsW@ZzZSW0y$)Hp~e9%PvP|a03ks1`~K?q{u;6NC8*{AOqIUq{CL&;p56Lf$oQGq z^={4hPQv)y=I|4n+?>7Fim=dxt1 z2H+Dm+1+fh+IF>G0SjJMkQQre1x4|G*Z==(Ot&kCnUrL4I(rf(ucITwmuHf^hXiJT zkdTm&kdTm&kdTm&kdP`esgWG0BcWCVkVZ&2dUwN`cgM8QJb`Z7Z~e<&Yj2(}>Tmf` zm1{eLgw!b{bXkjWbF%dTkTZEJWyWOb##Lfw4EK2}<0d6%>AGS{po>WCOy&f$Tay_> z?NBlkpo@s-O;0V%Y_Xa-G#_O08q5LR*~F%&)}{}r&L%Sbs8AS4t7Y0NEx*{soY=0MZExqA5XHQkqi#4gW3 zqODM^iyZl;dvf)-bOXtOru(s)Uc7~BFx{w-FK;2{`VA?(g&@3z&bfLFyctOH!cVsF z7IL=fo-qBndRUm;kAdXR4e6>k-z|21AaN%ubeVrHl*<|s&Ax@W-t?LR(P-24A5=>a z*R9#QvjzF8n%@1Nw@?CG@6(%>+-0ASK~jEmCV|&a*7-GKT72W<(TbSjf)&Eme6nGE z>Gkj4Sq&2e+-G%|+NM8OOm5zVl9{Z8Dd8A5z3y8mZ=4Bv4%>as_{9cN#bm~;h>62( zdqY93Zy}v&c4n($Vv!UybR8ocs7#zbfX1IY-*w~)p}XyZ-SFC~4w>BvMVr`dFbelV{lLL0bx7@*ZZdebr3`sP;? zVImji)kG)(6Juv0lz@q`F!k1FE;CQ(D0iG$wchPbKZQELlsZ#~rt8#90Y_Xh&3U-< z{s<&cCV_1`^TD^ia9!*mQDq& zn2{r`j};V|uV%_wsP!zB?m%;FeaRe+X47K0e+KE!8C{gAWF8)lCd1u1%~|M!XNRvw zvtqy3iz0WSpWdhn6$hP8PaRBmp)q`#PCA`Vd#Tc$@f1tAcM>f_I@bC)hkI9|o(Iqv zo}Piadq!j76}004RBio<`)70k^`K1NK)q>w?p^C6J2ZC!+UppiK6&y3Kmbv&O!oYF z34$0Z;QO!JOY#!`qyGH<3Pd}Pt@q*A0V=3SVtWKRR8d8Z&@)3qLPA19LPA19LPEUC YUoZo%k(ykuW&i*H07*qoM6N<$f+CH{y8r+H literal 0 HcmV?d00001 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json new file mode 100644 index 0000000..0bedcf2 --- /dev/null +++ b/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "idiom" : "universal", + "filename" : "LaunchImage.png", + "scale" : "1x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@2x.png", + "scale" : "2x" + }, + { + "idiom" : "universal", + "filename" : "LaunchImage@3x.png", + "scale" : "3x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.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/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/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/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/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/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 0000000..89c2725 --- /dev/null +++ b/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/ios/Runner/Base.lproj/LaunchScreen.storyboard b/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..f2e259c --- /dev/null +++ b/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner/Base.lproj/Main.storyboard b/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 0000000..f3c2851 --- /dev/null +++ b/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist new file mode 100644 index 0000000..1f8780c --- /dev/null +++ b/ios/Runner/Info.plist @@ -0,0 +1,49 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Baligh + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + baligh + 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 + + CADisableMinimumFrameDurationOnPhone + + UIApplicationSupportsIndirectInputEvents + + + diff --git a/ios/Runner/Runner-Bridging-Header.h b/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 0000000..308a2a5 --- /dev/null +++ b/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/ios/RunnerTests/RunnerTests.swift b/ios/RunnerTests/RunnerTests.swift new file mode 100644 index 0000000..86a7c3b --- /dev/null +++ b/ios/RunnerTests/RunnerTests.swift @@ -0,0 +1,12 @@ +import Flutter +import UIKit +import XCTest + +class RunnerTests: XCTestCase { + + func testExample() { + // If you add code to the Runner application, consider adding tests here. + // See https://developer.apple.com/documentation/xctest for more information about using XCTest. + } + +} diff --git a/lib/constants/theme.dart b/lib/constants/theme.dart new file mode 100644 index 0000000..784fb6a --- /dev/null +++ b/lib/constants/theme.dart @@ -0,0 +1,66 @@ +import 'package:flutter/material.dart'; + +class MyCustomTheme { + static Color primaryColor = const Color.fromARGB(255, 42, 61, 171); + static Color cardColor = const Color(0xFFECECEC); + static Color textColor = const Color(0xFF181818); + static Color bgColor = const Color(0xFFF8FAFC); + static Color dividerColor = const Color(0xFF4C4C4C); + + static ThemeData theme = ThemeData( + primaryColor: primaryColor, + useMaterial3: true, + cardColor: cardColor, + scaffoldBackgroundColor: bgColor, + dividerColor: dividerColor, + textTheme: TextTheme( + headlineLarge: TextStyle( + fontSize: 28, + fontWeight: FontWeight.bold, + fontFamily: "Cairo", + color: textColor, + ), + titleLarge: TextStyle( + fontSize: 22, + fontWeight: FontWeight.w500, + fontFamily: "Cairo", + color: textColor, + ), + bodyLarge: TextStyle( + fontSize: 18, + fontWeight: FontWeight.normal, + fontFamily: "Cairo", + color: textColor, + ), + bodyMedium: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + fontFamily: "Cairo", + color: textColor, + ), + bodySmall: TextStyle( + fontSize: 14, + fontWeight: FontWeight.normal, + fontFamily: "Cairo", + color: textColor, + ), + ), + elevatedButtonTheme: ElevatedButtonThemeData( + style: ButtonStyle( + elevation: const WidgetStatePropertyAll(0), + backgroundColor: WidgetStatePropertyAll(primaryColor), + shape: WidgetStatePropertyAll( + RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + ), + ), + )), + outlinedButtonTheme: OutlinedButtonThemeData( + style: ButtonStyle( + elevation: const WidgetStatePropertyAll(0), + shape: WidgetStatePropertyAll(RoundedRectangleBorder( + borderRadius: BorderRadius.circular(10), + )), + )), + ); +} diff --git a/lib/firebase_options.dart b/lib/firebase_options.dart new file mode 100644 index 0000000..6d5cb55 --- /dev/null +++ b/lib/firebase_options.dart @@ -0,0 +1,69 @@ +// File generated by FlutterFire CLI. +// ignore_for_file: type=lint +import 'package:firebase_core/firebase_core.dart' show FirebaseOptions; +import 'package:flutter/foundation.dart' + show defaultTargetPlatform, kIsWeb, TargetPlatform; + +/// Default [FirebaseOptions] for use with your Firebase apps. +/// +/// Example: +/// ```dart +/// import 'firebase_options.dart'; +/// // ... +/// await Firebase.initializeApp( +/// options: DefaultFirebaseOptions.currentPlatform, +/// ); +/// ``` +class DefaultFirebaseOptions { + static FirebaseOptions get currentPlatform { + if (kIsWeb) { + throw UnsupportedError( + 'DefaultFirebaseOptions have not been configured for web - ' + 'you can reconfigure this by running the FlutterFire CLI again.', + ); + } + switch (defaultTargetPlatform) { + case TargetPlatform.android: + return android; + case TargetPlatform.iOS: + return ios; + case TargetPlatform.macOS: + throw UnsupportedError( + 'DefaultFirebaseOptions have not been configured for macos - ' + 'you can reconfigure this by running the FlutterFire CLI again.', + ); + case TargetPlatform.windows: + throw UnsupportedError( + 'DefaultFirebaseOptions have not been configured for windows - ' + 'you can reconfigure this by running the FlutterFire CLI again.', + ); + case TargetPlatform.linux: + throw UnsupportedError( + 'DefaultFirebaseOptions have not been configured for linux - ' + 'you can reconfigure this by running the FlutterFire CLI again.', + ); + default: + throw UnsupportedError( + 'DefaultFirebaseOptions are not supported for this platform.', + ); + } + } + + static const FirebaseOptions android = FirebaseOptions( + apiKey: 'AIzaSyARwxtYXHm4VrZBrXzKbE7NZd2B_l7xVnY', + appId: '1:580708075572:android:5ea21c31d74dd8df702261', + messagingSenderId: '580708075572', + projectId: 'baligh-fbef7', + storageBucket: 'baligh-fbef7.appspot.com', + ); + + static const FirebaseOptions ios = FirebaseOptions( + apiKey: 'AIzaSyAFcUZ2wYeY6R9o5WaqFzKDcYVUmICjRPE', + appId: '1:580708075572:ios:943aa5f67d6d3c13702261', + messagingSenderId: '580708075572', + projectId: 'baligh-fbef7', + storageBucket: 'baligh-fbef7.appspot.com', + iosBundleId: 'com.example.baligh', + ); + +} \ No newline at end of file diff --git a/lib/main.dart b/lib/main.dart new file mode 100644 index 0000000..44b4718 --- /dev/null +++ b/lib/main.dart @@ -0,0 +1,38 @@ +import 'package:baligh/constants/theme.dart'; +import 'package:baligh/screens/home_screen.dart'; +import 'package:baligh/screens/login_screen.dart'; +import 'package:bot_toast/bot_toast.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:firebase_core/firebase_core.dart'; +import 'package:flutter/material.dart'; + +import 'firebase_options.dart'; + +void main() async { + WidgetsFlutterBinding.ensureInitialized(); + + await Firebase.initializeApp( + options: DefaultFirebaseOptions.currentPlatform, + ); + + + runApp(const MainApp()); +} + +class MainApp extends StatelessWidget { + const MainApp({super.key}); + + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'بلغ', + debugShowCheckedModeBanner: false, + theme: MyCustomTheme.theme, + locale: const Locale("ar"), + builder: BotToastInit(), + home: FirebaseAuth.instance.currentUser == null + ? const LoginScreen() + : const HomeScreen(), + ); + } +} diff --git a/lib/screens/home_screen.dart b/lib/screens/home_screen.dart new file mode 100644 index 0000000..20f2246 --- /dev/null +++ b/lib/screens/home_screen.dart @@ -0,0 +1,81 @@ +import 'package:baligh/screens/profile_screen.dart'; +import 'package:baligh/widgets/baligh_card.dart'; +import 'package:flutter/material.dart'; +import 'package:font_awesome_flutter/font_awesome_flutter.dart'; + +class HomeScreen extends StatefulWidget { + const HomeScreen({super.key}); + + @override + State createState() => _HomeScreenState(); +} + +class _HomeScreenState extends State { + @override + Widget build(BuildContext context) { + return Directionality( + textDirection: TextDirection.rtl, + child: Scaffold( + appBar: AppBar( + centerTitle: true, + title: Text( + "البلاغات", + style: Theme.of(context).textTheme.headlineLarge, + ), + backgroundColor: Colors.transparent, + actions: [ + Padding( + padding: const EdgeInsets.only(left: 6), + child: IconButton( + onPressed: () { + Navigator.push(context, (MaterialPageRoute(builder: (context) { + return const ProfileScreen(); + }))); + }, + icon: const Icon(FontAwesomeIcons.user), + ), + ), + ], + ), + body: SafeArea( + child: GridView( + padding: const EdgeInsets.all(15), + gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 2, + mainAxisSpacing: 10, + crossAxisSpacing: 10, + childAspectRatio: 1, + ), + children: [ + BlighCard( + icon: FontAwesomeIcons.unlock, + label: "الابتزاز", + iconColor: Colors.grey[700] ?? Colors.grey, + ), + const BlighCard( + icon: FontAwesomeIcons.pills, + label: "المخدرات", + iconColor: Colors.pink, + ), + const BlighCard( + icon: FontAwesomeIcons.person, + label: "التحرش", + iconColor: Colors.purple, + ), + BlighCard( + icon: FontAwesomeIcons.moneyBill, + label: "الرشوة", + iconColor: Colors.green[700] ?? Colors.green, + ), + BlighCard( + icon: FontAwesomeIcons.handFist, + label: "التعنيف", + iconColor: Colors.yellow[700] ?? Colors.yellow, + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/screens/login_screen.dart b/lib/screens/login_screen.dart new file mode 100644 index 0000000..47e2c22 --- /dev/null +++ b/lib/screens/login_screen.dart @@ -0,0 +1,112 @@ +import 'package:baligh/screens/otp_screen.dart'; +import 'package:baligh/widgets/app_toast.dart'; +import 'package:baligh/widgets/custom_button.dart'; +import 'package:baligh/widgets/custom_text_field.dart'; +import 'package:bot_toast/bot_toast.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:flutter/material.dart'; + +class LoginScreen extends StatefulWidget { + const LoginScreen({super.key}); + + @override + State createState() => _LoginScreenState(); +} + +class _LoginScreenState extends State { + TextEditingController phoneNumberController = TextEditingController(); + + bool isLoading = false; + + @override + void dispose() { + phoneNumberController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return Directionality( + textDirection: TextDirection.rtl, + child: Scaffold( + body: SafeArea( + child: ListView( + padding: const EdgeInsets.all(15), + children: [ + const SizedBox( + height: 150, + ), + Text( + "تسجيل الدخول", + style: Theme.of(context).textTheme.headlineLarge, + ), + const SizedBox( + height: 50, + ), + CustomTextField( + controller: phoneNumberController, + labelText: "رقم الهاتف", + inputType: TextInputType.phone), + const SizedBox( + height: 15, + ), + CustomButton( + label: "تسجيل الدخول", + isElevated: true, + onPressed: handleLogIn, + isLoading: isLoading, + ), + ], + ), + ), + ), + ); + } + + Future handleLogIn() async { + if (phoneNumberController.text.isEmpty) { + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "يجب ملئ جميع الحقول"); + }); + } + + setState(() { + isLoading = true; + }); + + try { + await FirebaseAuth.instance.verifyPhoneNumber( + phoneNumber: "+964${phoneNumberController.text.trim()}", + verificationCompleted: (PhoneAuthCredential credential) {}, + verificationFailed: (FirebaseAuthException e) { + setState(() { + isLoading = false; + }); + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "حدث خطأ ما"); + }); + }, + codeSent: (String verificationId, int? resendToken) { + setState(() { + isLoading = false; + }); + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => OtpScreen( + verificationId: verificationId, + )), + ); + }, + codeAutoRetrievalTimeout: (String verificationId) {}, + ); + } catch (e) { + setState(() { + isLoading = false; + }); + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "حدث خطأ ما"); + }); + } + } +} diff --git a/lib/screens/otp_screen.dart b/lib/screens/otp_screen.dart new file mode 100644 index 0000000..d12f54c --- /dev/null +++ b/lib/screens/otp_screen.dart @@ -0,0 +1,140 @@ +import 'package:baligh/screens/home_screen.dart'; +import 'package:baligh/screens/register_screen.dart'; +import 'package:baligh/widgets/app_toast.dart'; +import 'package:baligh/widgets/custom_button.dart'; +import 'package:bot_toast/bot_toast.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:flutter/material.dart'; +import 'package:pinput/pinput.dart'; + +class OtpScreen extends StatefulWidget { + const OtpScreen({ + super.key, + required this.verificationId, + }); + + final String verificationId; + + @override + State createState() => _OtpScreenState(); +} + +class _OtpScreenState extends State { + TextEditingController otpController = TextEditingController(); + + bool isLoading = false; + + @override + void dispose() { + otpController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return Directionality( + textDirection: TextDirection.rtl, + child: Scaffold( + appBar: AppBar(), + body: ListView( + padding: const EdgeInsets.all(15), + children: [ + const SizedBox( + height: 80, + ), + Text( + "تأكيد رقم الهاتف", + style: Theme.of(context).textTheme.headlineLarge, + ), + const SizedBox( + height: 10, + ), + Text( + "قمنا بإرسال رمز التحقق اليك ادخل رمز التحقق لتأكيد رقم هاتفك", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox( + height: 50, + ), + Directionality( + textDirection: TextDirection.ltr, + child: Pinput( + controller: otpController, + length: 6, + autofocus: true, + defaultPinTheme: PinTheme( + width: 56, + height: 56, + textStyle: Theme.of(context) + .textTheme + .bodyLarge + ?.copyWith(fontSize: 20), + decoration: BoxDecoration( + color: const Color(0xFFECECEC), + borderRadius: BorderRadius.circular(10), + ), + ), + separatorBuilder: (index) => const SizedBox(width: 5), + ), + ), + const SizedBox( + height: 20, + ), + CustomButton( + label: "تأكيد رثم الهاتف", + isElevated: true, + onPressed: handleSendOtp, + isLoading: isLoading, + ), + ], + ), + )); + } + + Future handleSendOtp() async { + if (otpController.text.isEmpty) { + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "يجب ملئ جميع الحقول"); + }); + } + + setState(() { + isLoading = true; + }); + + try { + // Create a PhoneAuthCredential with the code + PhoneAuthCredential credential = PhoneAuthProvider.credential( + verificationId: widget.verificationId, + smsCode: otpController.text.trim()); + + // Sign the user in (or link) with the credential + UserCredential userCredential = + await FirebaseAuth.instance.signInWithCredential(credential); + + setState(() { + isLoading = false; + }); + + if (!mounted) return; + if (userCredential.additionalUserInfo?.isNewUser != true) { + Navigator.push( + context, + MaterialPageRoute(builder: (context) => const HomeScreen()), + ); + } else { + Navigator.push( + context, + MaterialPageRoute(builder: (context) => const RegisterScreen()), + ); + } + } catch (e) { + setState(() { + isLoading = false; + }); + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "حدث خطأ ما"); + }); + } + } +} diff --git a/lib/screens/profile_screen.dart b/lib/screens/profile_screen.dart new file mode 100644 index 0000000..55ec33b --- /dev/null +++ b/lib/screens/profile_screen.dart @@ -0,0 +1,144 @@ +import 'package:baligh/screens/login_screen.dart'; +import 'package:baligh/widgets/app_toast.dart'; +import 'package:baligh/widgets/custom_button.dart'; +import 'package:bot_toast/bot_toast.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:flutter/material.dart'; + +enum ProfileState { loading, error, loaded } + +class ProfileScreen extends StatefulWidget { + const ProfileScreen({super.key}); + + @override + State createState() => _ProfileScreenState(); +} + +class _ProfileScreenState extends State { + ProfileState _profileState = ProfileState.loading; + Map? _userData; + + bool isLogOutLoading = false; + + @override + void initState() { + super.initState(); + _loadUserData(); + } + + @override + Widget build(BuildContext context) { + return Directionality( + textDirection: TextDirection.rtl, + child: Scaffold( + appBar: AppBar( + centerTitle: true, + title: Text( + "المعلومات الشخصية", + style: Theme.of(context).textTheme.headlineLarge, + ), + backgroundColor: Colors.transparent, + ), + body: SafeArea( + child: Padding( + padding: const EdgeInsets.all(15), + child: _buildContent(), + ), + ), + ), + ); + } + + Future _loadUserData() async { + setState(() { + _profileState = ProfileState.loading; + }); + try { + final user = FirebaseAuth.instance.currentUser; + if (user == null) { + Navigator.pushAndRemoveUntil( + context, + MaterialPageRoute(builder: (context) => const LoginScreen()), + (x) => false); + } + + // get user data from firestore in a coolection called 'users' + final userData = await FirebaseFirestore.instance + .collection('users') + .doc(user!.uid) + .get(); + + setState(() { + _userData = userData.data(); + _profileState = ProfileState.loaded; + }); + } catch (e) { + setState(() { + _profileState = ProfileState.error; + }); + } + } + + Future logOut() async { + setState(() { + isLogOutLoading = true; + }); + try { + await FirebaseAuth.instance.signOut(); + + setState(() { + isLogOutLoading = false; + }); + + if (!mounted) return; + Navigator.pushAndRemoveUntil( + context, + MaterialPageRoute(builder: (context) => const LoginScreen()), + (x) => false); + } catch (e) { + setState(() { + isLogOutLoading = false; + }); + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "حدث خطأ ما"); + }); + } + } + + Widget _buildContent() { + switch (_profileState) { + case ProfileState.loading: + return const CircularProgressIndicator(); + case ProfileState.error: + return const Text("حدث خطأ ما"); + case ProfileState.loaded: + return ListView( + children: [ + Text('الاسم: ${_userData!['name']}'), + const SizedBox(height: 5), + Text('رقم الهاتف: 0${_userData!['phone'].toString().split("+964").last}'), + const SizedBox(height: 5), + Text('العمر: ${_userData!['age']}'), + const SizedBox(height: 5), + Text('رقم البطاقة الوطنية: ${_userData!['nationalIdNumber']}'), + const SizedBox(height: 5), + Text('المدرسة: ${_userData!['schoolName']}'), + const SizedBox(height: 5), + Text('المرحلة الدراسية: ${_userData!['stage']}'), + const SizedBox(height: 5), + Text('العنوان: ${_userData!['address']}'), + const SizedBox(height: 20), + CustomButton( + label: "تسجيل الخروج", + isElevated: true, + onPressed: logOut, + isLoading: isLogOutLoading, + ), + ], + ); + default: + return const SizedBox.shrink(); + } + } +} diff --git a/lib/screens/register_screen.dart b/lib/screens/register_screen.dart new file mode 100644 index 0000000..02cd2cb --- /dev/null +++ b/lib/screens/register_screen.dart @@ -0,0 +1,173 @@ +import 'package:baligh/screens/home_screen.dart'; +import 'package:baligh/widgets/app_toast.dart'; +import 'package:baligh/widgets/custom_button.dart'; +import 'package:baligh/widgets/custom_text_field.dart'; +import 'package:bot_toast/bot_toast.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:flutter/material.dart'; + +class RegisterScreen extends StatefulWidget { + const RegisterScreen({super.key}); + + @override + State createState() => _RegisterScreenState(); +} + +class _RegisterScreenState extends State { + TextEditingController fullNameController = TextEditingController(); + TextEditingController ageController = TextEditingController(); + TextEditingController schoolNameController = TextEditingController(); + TextEditingController stageController = TextEditingController(); + TextEditingController addressController = TextEditingController(); + TextEditingController nationalIdNumberController = TextEditingController(); + + bool isLoading = false; + + @override + void dispose() { + fullNameController.dispose(); + ageController.dispose(); + schoolNameController.dispose(); + stageController.dispose(); + addressController.dispose(); + nationalIdNumberController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return Directionality( + textDirection: TextDirection.rtl, + child: Scaffold( + appBar: AppBar(), + body: SafeArea( + child: ListView( + padding: const EdgeInsets.all(15), + children: [ + const SizedBox( + height: 30, + ), + Text( + "انشاء حساب", + style: Theme.of(context).textTheme.headlineLarge, + ), + const SizedBox( + height: 30, + ), + CustomTextField( + controller: fullNameController, + labelText: "الاسم الثلاثي", + inputType: TextInputType.text), + const SizedBox( + height: 10, + ), + CustomTextField( + controller: ageController, + labelText: "العمر", + inputType: TextInputType.number), + const SizedBox( + height: 10, + ), + CustomTextField( + controller: schoolNameController, + labelText: "اسم المدرسة", + inputType: TextInputType.text), + const SizedBox( + height: 10, + ), + CustomTextField( + controller: stageController, + labelText: "المرحلة الدراسية", + inputType: TextInputType.text), + const SizedBox( + height: 10, + ), + CustomTextField( + controller: addressController, + labelText: "عنوان السكن", + inputType: TextInputType.text), + const SizedBox( + height: 10, + ), + CustomTextField( + controller: nationalIdNumberController, + labelText: "رقم البطاقة الوطنية الموحدة", + inputType: TextInputType.number), + const SizedBox( + height: 10, + ), + CustomButton( + label: "انشاء حساب", + isElevated: true, + onPressed: handleRegister, + isLoading: isLoading, + ), + ], + ), + ), + ), + ); + } + + Future handleRegister() async { + if (fullNameController.text.trim().isEmpty || + ageController.text.trim().isEmpty || + schoolNameController.text.trim().isEmpty || + stageController.text.trim().isEmpty || + addressController.text.trim().isEmpty || + nationalIdNumberController.text.trim().isEmpty) { + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "يجب ملئ جميع الحقول"); + }); + } + + setState(() { + isLoading = true; + }); + + try { + final auth = FirebaseAuth.instance; + + await auth.currentUser?.updateDisplayName(fullNameController.text.trim()); + + if (FirebaseAuth.instance.currentUser?.uid == null) { + setState(() { + isLoading = false; + }); + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "حدث خطأ ما"); + }); + } + + await FirebaseFirestore.instance + .collection('users').doc(FirebaseAuth.instance.currentUser?.uid ?? "").set({ + 'uid': FirebaseAuth.instance.currentUser?.uid ?? "", + 'name': fullNameController.text.trim(), + 'phone': FirebaseAuth.instance.currentUser?.phoneNumber ?? "", + 'age': int.parse(ageController.text.trim()), + 'schoolName': schoolNameController.text.trim(), + 'stage': stageController.text.trim(), + 'address': addressController.text.trim(), + 'nationalIdNumber': int.parse(nationalIdNumberController.text.trim()), + 'createdAt': FieldValue.serverTimestamp(), + }); + + setState(() { + isLoading = false; + }); + if (!mounted) return; + Navigator.pushAndRemoveUntil( + context, + MaterialPageRoute(builder: (context) => const HomeScreen()), + (x) => false); + } catch (e) { + setState(() { + isLoading = false; + }); + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "حدث خطأ ما"); + }); + } + } +} diff --git a/lib/screens/report_screen.dart b/lib/screens/report_screen.dart new file mode 100644 index 0000000..85d7ec0 --- /dev/null +++ b/lib/screens/report_screen.dart @@ -0,0 +1,384 @@ +import 'dart:io'; +import 'dart:math'; + +import 'package:badges/badges.dart' as badges; +import 'package:baligh/screens/success_screen.dart'; +import 'package:baligh/widgets/app_toast.dart'; +import 'package:baligh/widgets/custom_button.dart'; +import 'package:baligh/widgets/custom_text_field.dart'; +import 'package:bot_toast/bot_toast.dart'; +import 'package:cloud_firestore/cloud_firestore.dart'; +import 'package:file_picker/file_picker.dart'; +import 'package:firebase_auth/firebase_auth.dart'; +import 'package:firebase_storage/firebase_storage.dart'; +import 'package:flutter/material.dart'; +import 'package:font_awesome_flutter/font_awesome_flutter.dart'; + +class ReportScreen extends StatefulWidget { + const ReportScreen({ + super.key, + required this.headerText, + }); + + final String headerText; + + @override + State createState() => _ReportScreenState(); +} + +class _ReportScreenState extends State { + TextEditingController descriptionController = TextEditingController(); + + bool isLoading = false; + + bool isExpanded = false; + + List images = []; + List videos = []; + List audios = []; + + String explnationText() { + return widget.headerText == "التحرش" + ? """ +التحرش هو أي تصرف أو قول غير مرغوب فيه يتعلق بالجنس أو الجنسية، ويهدف إلى إزعاج الشخص الآخر أو تهديده. يمكن أن يحدث التحرش في أماكن العمل، المدارس، الأماكن العامة، أو عبر وسائل التواصل الاجتماعي. يمكن أن يكون التحرش لفظيًا (مثل التعليقات الجنسية)، جسديًا (مثل اللمس غير المناسب)، أو بصريًا (مثل عرض صور غير لائقة). + +حقوق المبلغ عن حالة تحرش: + الحماية: على المبلغ أن يشعر بالأمان خلال وبعد تقديم البلاغ. لا يتعرض لأي تهديدات أو انتقادات بسبب تقديمه للبلاغ. + + السرية: يتم التعامل مع المعلومات بسرية، إلا إذا كانت هناك حاجة للكشف عنها في إطار التحقيق أو الإجراءات القانونية. + + التحقق العادل: يتم التحقيق في البلاغ بموضوعية وبدون تحيز. للشخص المبلغ الحق في معرفة نتائج التحقيق. + عدم الانتقام: الشخص الذي يبلغ عن التحرش محميًا من أي شكل من أشكال الانتقام أو التمييز بسبب البلاغ. + +التوجيه والمساعدة: يحق للمبلغ الحصول على استشارات قانونية، نفسية، أو أي نوع من المساعدة يحتاجها خلال هذه العملية. + """ + : widget.headerText == "التعنيف" + ? """ +التعنيف هو مصطلح يشير إلى استخدام القوة أو العنف ضد شخص آخر بشكل يتسبب له في أذى جسدي أو نفسي أو عاطفي. يمكن أن يحدث التعنيف في عدة سياقات، مثل العلاقات الشخصية، الأسرة، مكان العمل، أو المجتمع بشكل عام يتمتع الشخص المبلغ ضد التعنيف بما يلي 1. الحماية: للشخص المعنف الحق في الحصول على حماية فورية من الجاني، سواء عبر الأوامر القانونية مثل أوامر الحماية، أو من خلال الدعم من الشرطة والجهات المعنية. + +2. الأمان: يحق للشخص المعنف العيش في بيئة آمنة خالية من التهديدات والعنف. يمكن أن يتضمن ذلك توفير أماكن إيواء أو دعم لتغيير مكان الإقامة إذا لزم الأمر. + +3. الرعاية الصحية: يجب أن يحصل الشخص المعنف على الرعاية الطبية اللازمة لعلاج الإصابات الجسدية والنفسية الناتجة عن العنف. + +4. الدعم النفسي: يحق للأشخاص المعنفين الحصول على مشورة ودعم نفسي للتعامل مع الصدمات النفسية والعاطفية التي قد يواجهونها. + +5. المشورة القانونية: يجب أن يكون الشخص المعنف قادرًا على الحصول على مشورة قانونية حول حقوقه، الخيارات القانونية المتاحة، وكيفية تقديم الشكاوى. + +6. عدم التمييز: لا يتعرض الشخص المعنف للتمييز أو الانتقاص من حقوقه بسبب تعرضه للعنف، ويجب أن يتم التعامل معه بكرامة واحترام. + +7.الخصوصية: يجب الحفاظ على سرية المعلومات الشخصية للشخص المعنف، وعدم الكشف عنها دون إذنه. + """ + : widget.headerText == "المخدرات" + ? """ + المخدرات هي مواد كيميائية تؤثر على الجهاز العصبي المركزي، وقد تؤدي إلى تغييرات في السلوك، المزاج، والإدراك. الكوكايين، الهيروين، والماريجوانا. + +الأضرار المحتملة للمخدرات: +1. الصحة الجسدية: يمكن أن تؤدي إلى مشكلات صحية خطيرة مثل أمراض القلب، الكبد، والمشاكل التنفسية. +2. الصحة النفسية: قد تسبب اضطرابات مثل الاكتئاب، القلق، أو الاضطرابات النفسية الأخرى. +3. الاعتبارات الاجتماعية: يمكن أن تؤدي إلى مشكلات في العلاقات الشخصية، العمل، والمجتمع بشكل عام. +حقوق الشخص المبلغ عن المخدرات +إذا كنتَ أو كنتِ تبلغون عن مشكلة تتعلق بالمخدرات، لديكَ حقوق يجب أن تُحترم: + +1. الحماية: تكون محميًا من أي شكل من أشكال الانتقام أو الضرر نتيجة تقديم البلاغ. +يمكن أن يشمل ذلك حماية من الجاني أو من أي طرف آخر قد يسعى للإضرار بك. +2. السرية: الحفاظ على سرية هويتك ومعلوماتك الشخصية خلال عملية التحقيق. +لا ينبغي الكشف عن تفاصيل البلاغ دون موافقتك، إلا في حال كانت هناك ضرورة قانونية لذلك. +3. التحقق العادل: يتم التحقيق في البلاغ بموضوعية ونزاهة، مع ضمان أن يتم التعامل مع كل الأطراف بشكل عادل. +4. التوجيه والمساعدة: +الحصول على المشورة القانونية والمساعدة في حال كنت تحتاجين إليها خلال عملية البلاغ. +يمكن أن يتضمن ذلك مشورة حول كيفية حماية نفسك وضمان حقوقك القانونية. +5. عدم التمييز: +لا تتعرض للتمييز أو العقوبات بسبب تقديمك للبلاغ. + يُعامل كل من يقدم البلاغ بكرامة واحترام. + """ + : widget.headerText == "الرشوة" + ? """ +الرشوة هي جريمة تحدث عندما يقدم شخص ما أو يستلم مكافأة أو مالًا بشكل غير قانوني مقابل تأثيره على سلوك أو قرار معين في إطار عمله أو منصبه. تُعتبر الرشوة جريمة جنائية في معظم القوانين حول العالم. + +إذا قام شخص بتقديم بلاغ عن جريمة رشوة، فإن هناك حقوقاً معينة يتمتع بها، +حماية هوية المبلغ: الشخص الذي يقدم البلاغ قد يتمتع بحماية هويته للحفاظ على أمانه وسلامته، خاصة إذا كان هناك خطر من الانتقام. + +1. الحماية من الانتقام: توجد قوانين تحمي المبلغين عن الفساد والرشوة من أي انتقام قد يتعرضون له في مكان العمل أو من قبل المتورطين في الرشوة. + +2. السرية: البلاغات عن الرشوة يتم التعامل معها بسرية تامة، ولا يتم الكشف عن التفاصيل إلا للجهات المختصة. + +3. التعويض: في بعض الحالات، يكون للمبلغ الحق في الحصول على تعويض مالي أو مكافأة إذا ساهم بلاغه في كشف جريمة رشوة أو فساد كبير. + +4. الحماية القانونية: إذا تم تقديم البلاغ بحسن نية وثبتت صحة الاتهامات، فإن المبلغ يتمتع بحماية قانونية من الملاحقة القضائية أو الاتهام الزائف. + """ + : widget.headerText == "الابتزاز" + ? """ +الابتزاز : جريمة تنطوي على تهديد شخص ما بهدف إجباره على تقديم مال أو خدمات أو القيام بشيء ما ضد إرادته. يعتبر الابتزاز من الجرائم الخطيرة التي يعاقب عليها القانون، سواء كان الابتزاز مادياً أو معنوياً. + +الشخص الذي يقدم بلاغًا عن حالة ابتزاز يتمتع بحقوق معينة لحمايته وضمان عدم تعرضه للضرر. : + +1. حماية الهوية: +يتمتع الشخص المبلغ بحقه في الحفاظ على سرية هويته، خاصة في الحالات التي قد يتعرض فيها للخطر أو الانتقام من الجاني. +2. الحماية من الانتقام: +القوانين تحمي المبلغين عن الابتزاز من أي نوع من الانتقام أو الأذى الذي قد يتعرضون له بسبب تقديمهم للبلاغ. . +3. السرية: +، يتم التعامل مع بلاغات الابتزاز بسرية تامة. السلطات تحافظ على سرية المعلومات لضمان حماية المبلغ وسلامة التحقيق. +4. التعويض: + قد يكون للمبلغ الحق في الحصول على تعويض إذا تسبب الابتزاز في خسائر مادية أو معنوية. كما يمكن أن تفرض المحكمة على الجاني دفع تعويضات للضحايا. +5. الحماية القانونية: +الشخص الذي يبلغ عن الابتزاز يكون محمياً قانونيًا إذا تم البلاغ بحسن نية. لا يمكن ملاحقته قانونياً أو توجيه تهم ضده بسبب تقديم البلاغ. +6. المساعدة النفسية والاجتماعية: + تقدم خدمات دعم نفسي واجتماعي للمبلغين عن الابتزاز، خاصة إذا كانت الجريمة قد تسببت في صدمة نفسية أو توتر عاطفي. +8. الإبلاغ عن الابتزاز الرقمي: +في حالة الابتزاز الإلكتروني (مثل التهديد بنشر صور أو معلومات شخصية)، يتمتع المبلغ بحقوق مماثلة ويجب أن تكون السلطات قادرة على تعقب الجناة واتخاذ الإجراءات القانونية ضدهم. + """ + : ""; + } + + @override + void dispose() { + descriptionController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return Directionality( + textDirection: TextDirection.rtl, + child: Scaffold( + appBar: AppBar( + centerTitle: true, + title: Text( + widget.headerText, + style: Theme.of(context).textTheme.headlineLarge, + ), + backgroundColor: Colors.transparent, + ), + body: SafeArea( + child: ListView( + padding: const EdgeInsets.all(15), + children: [ + const SizedBox( + height: 50, + ), + ExpansionPanelList( + elevation: 0, + expandedHeaderPadding: EdgeInsets.zero, + expansionCallback: (index, isOpen) { + setState(() { + isExpanded = isOpen; + }); + }, + children: [ + ExpansionPanel( + backgroundColor: Colors.transparent, + isExpanded: isExpanded, + canTapOnHeader: true, + headerBuilder: (context, isOpen) => Row( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Text( + "شرح توضيحي البلاغ", + style: Theme.of(context).textTheme.bodyLarge, + ), + ], + ), + body: Column( + children: [ + Text( + explnationText(), + style: Theme.of(context).textTheme.bodyMedium, + ), + ], + )), + ], + ), + const SizedBox( + height: 30, + ), + CustomTextField( + controller: descriptionController, + labelText: "قم بوصف الحالة", + inputType: TextInputType.text), + const SizedBox( + height: 15, + ), + Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + IconButton( + onPressed: handleAddImage, + icon: images.isEmpty + ? Icon(FontAwesomeIcons.image, color: Colors.blue[800]) + : badges.Badge( + badgeContent: Text( + images.length.toString(), + style: Theme.of(context) + .textTheme + .bodySmall + ?.copyWith(color: Colors.white), + ), + child: Icon(FontAwesomeIcons.image, + color: Colors.blue[800]), + ), + ), + IconButton( + onPressed: handleAddVideo, + icon: videos.isEmpty + ? const Icon( + FontAwesomeIcons.video, + color: Colors.red, + ) + : badges.Badge( + badgeContent: Text( + videos.length.toString(), + style: Theme.of(context) + .textTheme + .bodySmall + ?.copyWith(color: Colors.white), + ), + child: const Icon( + FontAwesomeIcons.video, + color: Colors.red, + ), + ), + ), + IconButton( + onPressed: handleAddAudio, + icon: audios.isEmpty + ? Icon( + FontAwesomeIcons.microphone, + color: Colors.purple[300], + ) + : badges.Badge( + badgeContent: Text( + audios.length.toString(), + style: Theme.of(context) + .textTheme + .bodySmall + ?.copyWith(color: Colors.white), + ), + child: Icon( + FontAwesomeIcons.microphone, + color: Colors.purple[300], + ), + ), + ), + ], + ), + const SizedBox( + height: 15, + ), + CustomButton( + label: "ارسال", + isElevated: true, + onPressed: handleSendReport, + isLoading: isLoading, + ), + const SizedBox( + height: 20, + ), + ], + ), + ), + ), + ); + } + + Future handleAddImage() async { + FilePickerResult? result = await FilePicker.platform.pickFiles( + allowMultiple: true, + type: FileType.image, + ); + + if (result != null) { + for (var el in result.files) { + setState(() { + images.add(File(el.path ?? "")); + }); + } + } + } + + Future handleAddVideo() async { + FilePickerResult? result = await FilePicker.platform + .pickFiles(allowMultiple: true, type: FileType.video); + + if (result != null) { + for (var el in result.files) { + setState(() { + videos.add(File(el.path ?? "")); + }); + } + } + } + + Future handleAddAudio() async { + FilePickerResult? result = await FilePicker.platform + .pickFiles(allowMultiple: true, type: FileType.video); + + if (result != null) { + for (var el in result.files) { + setState(() { + audios.add(File(el.path ?? "")); + }); + } + } + } + + Future handleSendReport() async { + setState(() { + isLoading = true; + }); + try { + final storageRef = FirebaseStorage.instance.ref(); + List attachments = []; + + Future uploadImage(List files, String folder) async { + for (var el in files) { + final filePath = + '${el.path.split('.').first}_${Random().nextInt(99999)}.${el.path.split('.').last}'; + + final ref = storageRef.child("$folder/$filePath"); + final uploadTask = ref.putFile(el); // Upload the file + + final snapshot = await uploadTask + .whenComplete(() {}); // Wait for upload completion + + final downloadUrl = + await snapshot.ref.getDownloadURL(); // Get download URL + + attachments.add(downloadUrl); + } + } + + await uploadImage(images, "images"); + await uploadImage(videos, "videos"); + await uploadImage(audios, "audios"); + + DocumentReference userRef = FirebaseFirestore.instance + .collection('users') + .doc(FirebaseAuth.instance.currentUser?.uid); + + await FirebaseFirestore.instance.collection('reports').add({ + 'userRef': userRef, + 'userId': FirebaseAuth.instance.currentUser?.uid, + 'type': widget.headerText, + 'description': descriptionController.text.trim(), + 'attachments': attachments, + 'status': "قيد الانتظار", + 'createdAt': FieldValue.serverTimestamp(), + }); + + setState(() { + isLoading = false; + }); + + if (!mounted) return; + Navigator.push(context, + MaterialPageRoute(builder: (context) => const SuccessScreen())); + } catch (e) { + setState(() { + isLoading = false; + }); + BotToast.showCustomText(toastBuilder: (_) { + return const AppToast(text: "حدث خطأ ما"); + }); + } + } +} diff --git a/lib/screens/success_screen.dart b/lib/screens/success_screen.dart new file mode 100644 index 0000000..6382338 --- /dev/null +++ b/lib/screens/success_screen.dart @@ -0,0 +1,46 @@ +import 'package:baligh/screens/home_screen.dart'; +import 'package:flutter/material.dart'; + +class SuccessScreen extends StatelessWidget { + const SuccessScreen({super.key}); + + @override + Widget build(BuildContext context) { + return Directionality( + textDirection: TextDirection.rtl, + child: Scaffold( + body: SafeArea( + child: ListView( + padding: const EdgeInsets.all(15), + children: [ + const SizedBox(height: 100,), + Icon(Icons.done_outline_rounded, size: 85, color: Colors.blue[600],), + const SizedBox(height: 50,), + Text( + "تم ارسال البلاغ", + style: Theme.of(context).textTheme.titleLarge, + ), + const SizedBox(height: 20,), + Text( + "تم ارسال بلاغك بنجاح و ستتم مراجعته من قبل الجهات المعنية باقرب وقت", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 40,), + ElevatedButton( + onPressed: () { + Navigator.pushAndRemoveUntil(context, MaterialPageRoute(builder: (context) => const HomeScreen()), (x) => false); + }, + child: Text( + "العودة الى صفحة البلاغات", + style: Theme.of(context) + .textTheme + .bodyLarge + ?.copyWith(color: Colors.white), + )), + ], + ), + ), + ) + ); + } +} diff --git a/lib/widgets/app_toast.dart b/lib/widgets/app_toast.dart new file mode 100644 index 0000000..a7cbf8f --- /dev/null +++ b/lib/widgets/app_toast.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; + +class AppToast extends StatelessWidget { + const AppToast({ + super.key, + required this.text, + this.bottomPadding, + this.color, + this.textStyle, + }); + + final String text; + final double? bottomPadding; + final Color? color; + final TextStyle? textStyle; + + @override + Widget build(BuildContext context) { + return Padding( + padding: EdgeInsets.only(bottom: bottomPadding ?? 100), + child: Container( + padding: const EdgeInsets.symmetric(horizontal: 15, vertical: 10), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(12), + color: color ?? Theme.of(context).scaffoldBackgroundColor, + boxShadow: [ + BoxShadow( + color: Colors.grey.withOpacity(0.4), + offset: const Offset(2, 2), + blurRadius: 5, + spreadRadius: 1 + ) + ] + ), + child: Text( + text, + style: textStyle ?? Theme.of(context).textTheme.bodyMedium, + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/widgets/baligh_card.dart b/lib/widgets/baligh_card.dart new file mode 100644 index 0000000..7074e6e --- /dev/null +++ b/lib/widgets/baligh_card.dart @@ -0,0 +1,73 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:baligh/screens/report_screen.dart'; +import 'package:flutter/material.dart'; + +class BlighCard extends StatelessWidget { + const BlighCard({ + super.key, + required this.icon, + required this.label, + required this.iconColor, + }); + + final IconData icon; + final String label; + final Color iconColor; + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => ReportScreen( + headerText: label, + ))); + }, + child: Column( + children: [ + Expanded( + child: Container( + width: double.infinity, + clipBehavior: Clip.hardEdge, + decoration: BoxDecoration( + color: Theme.of(context).cardColor, + borderRadius: const BorderRadius.all(Radius.circular(12)), + ), + child: Padding( + padding: + const EdgeInsets.symmetric(horizontal: 10, vertical: 20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Center( + child: SizedBox( + height: MediaQuery.sizeOf(context).width * 0.2, + child: Icon( + icon, + size: 45, + color: iconColor, + ), + ), + ), + AutoSizeText( + label, + maxLines: 2, + minFontSize: 10, + maxFontSize: 18, + overflow: TextOverflow.ellipsis, + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.bodyLarge, + ), + ], + ), + ), + ), + ), + ], + ), + ); + } +} diff --git a/lib/widgets/custom_button.dart b/lib/widgets/custom_button.dart new file mode 100644 index 0000000..e465cf9 --- /dev/null +++ b/lib/widgets/custom_button.dart @@ -0,0 +1,86 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:baligh/constants/theme.dart'; +import 'package:baligh/widgets/small_spinner.dart'; +import 'package:flutter/material.dart'; + +class CustomButton extends StatelessWidget { + const CustomButton({ + super.key, + required this.onPressed, + required this.label, + required this.isElevated, + this.isLoading = false, + this.textStyle, + this.color, + }); + + final void Function() onPressed; + final String label; + final bool isLoading; + final bool isElevated; + final TextStyle? textStyle; + final Color? color; + + @override + Widget build(BuildContext context) { + return isElevated + ? ElevatedButton( + onPressed: isLoading ? null : onPressed, + style: Theme.of(context).elevatedButtonTheme.style?.copyWith( + backgroundColor: WidgetStatePropertyAll(color ?? MyCustomTheme.primaryColor) + ), + child: isLoading + ? const SmallSpinner() + : Padding( + padding: const EdgeInsets.symmetric(horizontal: 3), + child: Row( + children: [ + Expanded( + child: AutoSizeText( + label, + minFontSize: 8, + maxFontSize: 14, + maxLines: 1, + textAlign: TextAlign.center, + style: textStyle ?? Theme.of(context).textTheme.bodyLarge?.copyWith( + color: MyCustomTheme.bgColor, + ) + ), + ), + ], + ), + ), + ) + : OutlinedButton( + onPressed: isLoading ? null : onPressed, + style: Theme.of(context).elevatedButtonTheme.style?.copyWith( + backgroundColor: WidgetStatePropertyAll(Theme.of(context).scaffoldBackgroundColor), + side: WidgetStatePropertyAll(BorderSide( + width: 1.5, + color: color ?? MyCustomTheme.primaryColor, + )) + ), + child: isLoading + ? SmallSpinner(color: MyCustomTheme.primaryColor,) + : Padding( + padding: const EdgeInsets.symmetric(horizontal: 3), + child: Row( + children: [ + Expanded( + child: AutoSizeText( + label, + minFontSize: 8, + maxFontSize: 14, + maxLines: 1, + textAlign: TextAlign.center, + style: textStyle ?? Theme.of(context).textTheme.bodyLarge?.copyWith( + color: color ?? MyCustomTheme.primaryColor, + ) + ), + ), + ], + ), + ), + ); + } +} diff --git a/lib/widgets/custom_text_field.dart b/lib/widgets/custom_text_field.dart new file mode 100644 index 0000000..a247340 --- /dev/null +++ b/lib/widgets/custom_text_field.dart @@ -0,0 +1,77 @@ +import 'package:flutter/material.dart'; + +class CustomTextField extends StatefulWidget { + const CustomTextField({ + super.key, + required this.controller, + required this.labelText, + required this.inputType, + this.errorText, + this.isPassword = false, + this.maxLines = 1, + this.focusNode, + }); + + final TextEditingController controller; + final String labelText; + final TextInputType inputType; + final String? errorText; + final bool isPassword; + final int maxLines; + final FocusNode? focusNode; + + @override + State createState() => _CustomTextFieldState(); +} + +class _CustomTextFieldState extends State { + + @override + void initState() { + super.initState(); + } + + @override + Widget build(BuildContext context) { + return TextField( + controller: widget.controller, + focusNode: widget.focusNode, + keyboardType: widget.inputType, + obscureText: widget.isPassword, + enableSuggestions: !widget.isPassword, + autocorrect: false, + maxLines: widget.maxLines, + textDirection: TextDirection.rtl, + style: Theme.of(context).textTheme.bodyMedium, + decoration: InputDecoration( + contentPadding: const EdgeInsets.symmetric(vertical: 5, horizontal: 20), + labelText: widget.labelText, + alignLabelWithHint: true, + labelStyle: Theme.of(context).textTheme.bodySmall?.copyWith(color: Theme.of(context).dividerColor), + floatingLabelStyle: Theme.of(context).textTheme.bodySmall?.copyWith(color: Theme.of(context).dividerColor), + enabledBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: BorderSide(color: Theme.of(context).cardColor, width: 1.5) + ), + focusedBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: BorderSide(color: Theme.of(context).dividerColor, width: 1) + ), + filled: true, + fillColor: Theme.of(context).cardColor, + errorText: widget.errorText, + errorStyle: Theme.of(context).textTheme.bodyMedium?.copyWith( + color: Colors.red + ), + errorBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: const BorderSide(color: Colors.red, width: 1.5) + ), + focusedErrorBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(10), + borderSide: const BorderSide(color: Colors.red, width: 1.5) + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/widgets/small_spinner.dart b/lib/widgets/small_spinner.dart new file mode 100644 index 0000000..0b48ab4 --- /dev/null +++ b/lib/widgets/small_spinner.dart @@ -0,0 +1,19 @@ +import 'package:flutter/material.dart'; + +class SmallSpinner extends StatelessWidget { + final Color? color; + + const SmallSpinner({super.key, this.color}); + + @override + Widget build(BuildContext context) { + return SizedBox( + width: 20, + height: 20, + child: CircularProgressIndicator( + strokeWidth: 3, + color: color ?? Colors.white, + ), + ); + } +} diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..f8fffa1 --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,442 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _flutterfire_internals: + dependency: transitive + description: + name: _flutterfire_internals + sha256: "5534e701a2c505fed1f0799e652dd6ae23bd4d2c4cf797220e5ced5764a7c1c2" + url: "https://pub.dev" + source: hosted + version: "1.3.44" + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + auto_size_text: + dependency: "direct main" + description: + name: auto_size_text + sha256: "3f5261cd3fb5f2a9ab4e2fc3fba84fd9fcaac8821f20a1d4e71f557521b22599" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + badges: + dependency: "direct main" + description: + name: badges + sha256: a7b6bbd60dce418df0db3058b53f9d083c22cdb5132a052145dc267494df0b84 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + bot_toast: + dependency: "direct main" + description: + name: bot_toast + sha256: "6b93030a99a98335b8827ecd83021e92e885ffc61d261d3825ffdecdd17f3bdf" + url: "https://pub.dev" + source: hosted + version: "4.1.3" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + cloud_firestore: + dependency: "direct main" + description: + name: cloud_firestore + sha256: a08d0f4aae40e63e7a57102de890d5d3c93d719ce38985b2a36c2672283af7d2 + url: "https://pub.dev" + source: hosted + version: "5.4.3" + cloud_firestore_platform_interface: + dependency: transitive + description: + name: cloud_firestore_platform_interface + sha256: "884fa34c6be2d9c7c1f4af86f90f36c0a3b3afef585a12b350a5d15368e7ec7a" + url: "https://pub.dev" + source: hosted + version: "6.4.3" + cloud_firestore_web: + dependency: transitive + description: + name: cloud_firestore_web + sha256: "6e621bbcc999f32db0bc6bfcb18d9991617ec20f8d6bf51b6a1571f5c324fafd" + url: "https://pub.dev" + source: hosted + version: "4.3.2" + collection: + dependency: transitive + description: + name: collection + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" + source: hosted + version: "1.18.0" + cross_file: + dependency: transitive + description: + name: cross_file + sha256: "7caf6a750a0c04effbb52a676dce9a4a592e10ad35c34d6d2d0e4811160d5670" + url: "https://pub.dev" + source: hosted + version: "0.3.4+2" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + ffi: + dependency: transitive + description: + name: ffi + sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6" + url: "https://pub.dev" + source: hosted + version: "2.1.3" + file_picker: + dependency: "direct main" + description: + name: file_picker + sha256: "167bb619cdddaa10ef2907609feb8a79c16dfa479d3afaf960f8e223f754bf12" + url: "https://pub.dev" + source: hosted + version: "8.1.2" + firebase_auth: + dependency: "direct main" + description: + name: firebase_auth + sha256: d453acec0d958ba0e25d41a9901b32cb77d1535766903dea7a61b2788c304596 + url: "https://pub.dev" + source: hosted + version: "5.3.1" + firebase_auth_platform_interface: + dependency: transitive + description: + name: firebase_auth_platform_interface + sha256: "78966c2ef774f5bf2a8381a307222867e9ece3509110500f7a138c115926aa65" + url: "https://pub.dev" + source: hosted + version: "7.4.7" + firebase_auth_web: + dependency: transitive + description: + name: firebase_auth_web + sha256: "77ad3b252badedd3f08dfa21a4c7fe244be96c6da3a4067f253b13ea5d32424c" + url: "https://pub.dev" + source: hosted + version: "5.13.2" + firebase_core: + dependency: "direct main" + description: + name: firebase_core + sha256: "51dfe2fbf3a984787a2e7b8592f2f05c986bfedd6fdacea3f9e0a7beb334de96" + url: "https://pub.dev" + source: hosted + version: "3.6.0" + firebase_core_platform_interface: + dependency: transitive + description: + name: firebase_core_platform_interface + sha256: e30da58198a6d4b49d5bce4e852f985c32cb10db329ebef9473db2b9f09ce810 + url: "https://pub.dev" + source: hosted + version: "5.3.0" + firebase_core_web: + dependency: transitive + description: + name: firebase_core_web + sha256: f967a7138f5d2ffb1ce15950e2a382924239eaa521150a8f144af34e68b3b3e5 + url: "https://pub.dev" + source: hosted + version: "2.18.1" + firebase_storage: + dependency: "direct main" + description: + name: firebase_storage + sha256: "8a8a21f3a359129a1257e2e77ece1de9678f40e43876635b3d411388ee388729" + url: "https://pub.dev" + source: hosted + version: "12.3.2" + firebase_storage_platform_interface: + dependency: transitive + description: + name: firebase_storage_platform_interface + sha256: "462621bbdb5ab496518aa0f4785cb6db87763d5f1063aa228e1f65562937af1d" + url: "https://pub.dev" + source: hosted + version: "5.1.31" + firebase_storage_web: + dependency: transitive + description: + name: firebase_storage_web + sha256: "40c52d5585ce63659b4b698fee0d47412ce499392ae3edf69c8e6141c22daf9a" + url: "https://pub.dev" + source: hosted + version: "3.10.2" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "3f41d009ba7172d5ff9be5f6e6e6abb4300e263aab8866d2a0842ed2a70f8f0c" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + flutter_plugin_android_lifecycle: + dependency: transitive + description: + name: flutter_plugin_android_lifecycle + sha256: "9ee02950848f61c4129af3d6ec84a1cfc0e47931abc746b03e7a3bc3e8ff6eda" + url: "https://pub.dev" + source: hosted + version: "2.0.22" + 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 + sha256: "275ff26905134bcb59417cf60ad979136f1f8257f2f449914b2c3e05bbb4cd6f" + url: "https://pub.dev" + source: hosted + version: "10.7.0" + http: + dependency: transitive + description: + name: http + sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010 + url: "https://pub.dev" + source: hosted + version: "1.2.2" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + url: "https://pub.dev" + source: hosted + version: "3.0.5" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + lints: + dependency: transitive + description: + name: lints + sha256: "976c774dd944a42e83e2467f4cc670daef7eed6295b10b36ae8c85bcbf828235" + url: "https://pub.dev" + source: hosted + version: "4.0.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + pinput: + dependency: "direct main" + description: + name: pinput + sha256: "7bf9aa7d0eeb3da9f7d49d2087c7bc7d36cd277d2e94cc31c6da52e1ebb048d0" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test_api: + dependency: transitive + description: + name: test_api + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + url: "https://pub.dev" + source: hosted + version: "0.7.2" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: facc8d6582f16042dd49f2463ff1bd6e2c9ef9f3d5da3d9b087e244a7b564b3c + url: "https://pub.dev" + source: hosted + version: "1.3.2" + universal_platform: + dependency: transitive + description: + name: universal_platform + sha256: "64e16458a0ea9b99260ceb5467a214c1f298d647c659af1bff6d3bf82536b1ec" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" + web: + dependency: transitive + description: + name: web + sha256: d43c1d6b787bf0afad444700ae7f4db8827f701bc61c255ac8d328c6f4d52062 + url: "https://pub.dev" + source: hosted + version: "1.0.0" + win32: + dependency: transitive + description: + name: win32 + sha256: "68d1e89a91ed61ad9c370f9f8b6effed9ae5e0ede22a270bdfa6daf79fc2290a" + url: "https://pub.dev" + source: hosted + version: "5.5.4" +sdks: + dart: ">=3.5.2 <4.0.0" + flutter: ">=3.22.0" diff --git a/pubspec.yaml b/pubspec.yaml new file mode 100644 index 0000000..fe27d82 --- /dev/null +++ b/pubspec.yaml @@ -0,0 +1,51 @@ +name: baligh +description: "A new Flutter project." +publish_to: 'none' +version: 0.1.0 + +environment: + sdk: ^3.5.2 + +dependencies: + flutter: + sdk: flutter + auto_size_text: ^3.0.0 + file_picker: ^8.1.2 + badges: ^3.1.2 + font_awesome_flutter: ^10.7.0 + pinput: ^5.0.0 + firebase_core: ^3.6.0 + firebase_auth: ^5.3.1 + cloud_firestore: ^5.4.3 + bot_toast: ^4.1.3 + firebase_storage: ^12.3.2 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^4.0.0 + +flutter: + uses-material-design: true + + fonts: + - family: Cairo + fonts: + - asset: assets/fonts/Cairo-Light.ttf + weight: 300 + - family: Cairo + fonts: + - asset: assets/fonts/Cairo-Regular.ttf + weight: 400 + - family: Cairo + fonts: + - asset: assets/fonts/Cairo-Medium.ttf + weight: 500 + - family: Cairo + fonts: + - asset: assets/fonts/Cairo-SemiBold.ttf + weight: 600 + - family: Cairo + fonts: + - asset: assets/fonts/Cairo-Bold.ttf + weight: 700 diff --git a/test/widget_test.dart b/test/widget_test.dart new file mode 100644 index 0000000..cc84fb5 --- /dev/null +++ b/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 in the flutter_test package. 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:baligh/main.dart'; + +void main() { + testWidgets('Counter increments smoke test', (WidgetTester tester) async { + // Build our app and trigger a frame. + await tester.pumpWidget(const 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/upload-keystore.jks b/upload-keystore.jks new file mode 100644 index 0000000000000000000000000000000000000000..bf027bfc22574e42f923d7293478a2fa65f0385c GIT binary patch literal 2247 zcmchXc{CIX8^&iJy9{C~BT34L8D@|zZq^75qZ$!DOJx`-S;{sTYj&wzj$K4qE=~B* zAR4Bg1v>`M&SmbNc@~?|J@sfB(GidCqg59rg|z004mY1pHgD;6O6P z!)tHN^6r;L005933>C745rc`KVL%8_4I~8wLa2~0Vf1Gv&vJTf-5cHSW-}m_@sZ`9 z^Rp%njreIap|4k#R{GT+NY;Tbgu9%VpK$!ZyfSBk>{xp_R8fp(J_vG)5y?F^oJ#Sn zo~su#`5~oM`hsG@JGhK2NZ#^?ubCx>N%!OmeKBm+} z;P+P}CJ_R~!I^zjYA~XzisF_K&@DYwxvLhNU`5P#rfp~tz=Mm%FL=YKta*Ep*|?OW zhf)$9+R7`2)=V{EX)V9|*EPq~u9pq68lAoEtx-%R>}t2$cdTF|c}_p~%u132g2Zdp z|Crg4jh4%7PIzy+)buvRFK5US%jO?E*Z(m>I{L=eMdKr5lrA;>y3Z{*9S8KQ@@qlq zh2!dS$hH>LHd+5zdY7?ViENaSmW5^-qS378Cs$JbEUvG-UoW;vr1SHL1-ze!YtB=! znH61oYrsj}`D3#kYRy7FSrEF&wo{aldCqe_*+dJKUacZU*T!l7X{wBWX`Xx~Hqbc# zOo4`Q#&g1AIK{|4lApc2xOlD+{n}WH*0W(A7#gJ#T1j62G41M4L-qP#xa2M~JoMXW zLHUDgd7ec%q2w;+fMhv+{TraK>tXsl%NR%jsW8=x74W5x?qQF+7)W^>whRfeVD%y- z&Tch|JdA|dP^MD{u8vv}G+v4E^!?K2v#sSvlmVVhr_-~(+#I7X?oE&khDS6SCrBJ8 z9DU+&%WyL9CMzNFj0dAhweG$|NZXcEt((k8#vQn9iR*F$1*+YRT=Ca}OJgD_6NXPw zP2nZ$9-Q$VeX>Wa2 zVgn3v{N3j6IL%?y(2m3Y_geL`Fl$LAh*Nys+nF4B!x2H74VzLk?3ML#@laWFc%YNcH~v}hJk4o7;WB3m}qcm@790?khMEF-qU zk|&HN>~boXHP&(htVTtyPqqlv94`!AYB0A1jB-hY>`}#zZq}3vk!zY(3-^L#p*JfP2!^rc?gYK)d3 z-ym_=* z7z6}?gaHFvKM8%uJ?${!Fkv;C6>UQt2o!??Fl6jLj06l!gutZX!~nklN=U$eiO??u z{tFTLg^2z_!2ctd!*b$UI4lOEyEizj9!XwO3xn6fXlZHx2mGJ^p#qQm(-0tZ&pDtZ z07C_efT%zqpy_zf4Rfr>@*rbfYPGDqx+}1re<1+4`08q}d|IOhXUT`lXCP))=Bcb0nXGA+EUHK8AxG4!;x|ma3?Nq^b!$9$Q?XjgY z`QP?Sg1|rkuv7`7h*8+fh=K%UKSZY88rjDsLb6l^N+22b%!Qn0L-s#S+)LG-i9kTc zQa9vbQl!oKD(KKsq|9?}crm?$y)D4^7(m8~m@|o}yEd|0Qj?$%sY?pep(d8iIxDu? z_Obp*F+ueT$FQMJ=_?$L_BwZd_*RCJ(Mo)6SX+u{StGo@$^e%5p<-%;Z57n5b9lE- zwv1!Lw3Z&4sDdR6))bcX` literal 0 HcmV?d00001