From 216efb8a835be8a5b77c37eaf7f0a83246a90a1a Mon Sep 17 00:00:00 2001 From: Abdullah Salah Date: Wed, 25 Dec 2024 11:09:55 +0300 Subject: [PATCH] first commit --- .gitignore | 43 + .metadata | 33 + .vscode/settings.json | 6 + README.md | 1 + analysis_options.yaml | 28 + android/.gitignore | 13 + android/app/build.gradle | 44 + android/app/src/debug/AndroidManifest.xml | 7 + android/app/src/main/AndroidManifest.xml | 47 ++ .../kotlin/com/example/gascom/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 | 25 + assets/fonts/NotoSansArabic-Bold.ttf | Bin 0 -> 177688 bytes assets/fonts/NotoSansArabic-Light.ttf | Bin 0 -> 177744 bytes assets/fonts/NotoSansArabic-Medium.ttf | Bin 0 -> 177576 bytes assets/fonts/NotoSansArabic-Regular.ttf | Bin 0 -> 177004 bytes assets/fonts/NotoSansArabic-SemiBold.ttf | Bin 0 -> 177924 bytes assets/languages/ar.json | 3 + assets/svgs/arrow_left.svg | 13 + assets/svgs/camera.svg | 9 + assets/svgs/dollar_flag.svg | 23 + assets/svgs/done.svg | 13 + assets/svgs/gas_station.svg | 18 + assets/svgs/generator.svg | 18 + assets/svgs/generator_filled.svg | 15 + assets/svgs/headphone.svg | 16 + assets/svgs/home.svg | 15 + assets/svgs/home_filled.svg | 13 + assets/svgs/location_pin.svg | 22 + assets/svgs/logo.svg | 22 + assets/svgs/notification.svg | 9 + assets/svgs/profile_paper.svg | 20 + assets/svgs/settings.svg | 7 + assets/svgs/user_sync.svg | 32 + assets/svgs/van.svg | 19 + assets/svgs/van_filled.svg | 6 + assets/svgs/x.svg | 7 + 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 | 64 ++ ios/Runner/Runner-Bridging-Header.h | 1 + ios/RunnerTests/RunnerTests.swift | 12 + lib/constants/app_theme.dart | 87 ++ lib/extensions/face_detection_extension.dart | 47 ++ lib/main.dart | 37 + lib/screens/change_engine_screen.dart | 118 +++ lib/screens/change_location.dart | 127 +++ lib/screens/document_camera_screen.dart | 126 +++ lib/screens/face_detection_screen.dart | 276 +++++++ lib/screens/fines_screen.dart | 69 ++ lib/screens/follow_order_screen.dart | 56 ++ lib/screens/generator_info_screen.dart | 195 +++++ lib/screens/home_screen.dart | 175 ++++ lib/screens/log_in_screen.dart | 145 ++++ lib/screens/national_id_camera_screen.dart | 120 +++ lib/screens/new_generator_screen.dart | 112 +++ lib/screens/nfc_screen.dart | 585 +++++++++++++ lib/screens/notifications_screen.dart | 57 ++ lib/screens/order_details_screen.dart | 400 +++++++++ lib/screens/otp_provider_screen.dart | 88 ++ lib/screens/otp_screen.dart | 77 ++ lib/screens/pay_monthly_gas.dart | 136 ++++ lib/screens/payment_screen.dart | 252 ++++++ lib/screens/service_fees_screen.dart | 68 ++ lib/screens/success_screen.dart | 68 ++ lib/utils/text_field_4_space_formatter.dart | 23 + lib/utils/text_field_date_formatter.dart | 23 + lib/widgets/app_button.dart | 100 +++ lib/widgets/app_text_field.dart | 77 ++ lib/widgets/bottom_nav.dart | 104 +++ lib/widgets/custom_app_bar.dart | 40 + lib/widgets/fine_container.dart | 97 +++ lib/widgets/home_grid_item.dart | 55 ++ lib/widgets/order_container.dart | 70 ++ lib/widgets/order_state_badge.dart | 28 + lib/widgets/text_container.dart | 30 + pubspec.lock | 768 ++++++++++++++++++ pubspec.yaml | 116 +++ test/widget_test.dart | 30 + 125 files changed, 6752 insertions(+) create mode 100644 .gitignore create mode 100644 .metadata create mode 100644 .vscode/settings.json 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/src/debug/AndroidManifest.xml create mode 100644 android/app/src/main/AndroidManifest.xml create mode 100644 android/app/src/main/kotlin/com/example/gascom/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/NotoSansArabic-Bold.ttf create mode 100644 assets/fonts/NotoSansArabic-Light.ttf create mode 100644 assets/fonts/NotoSansArabic-Medium.ttf create mode 100644 assets/fonts/NotoSansArabic-Regular.ttf create mode 100644 assets/fonts/NotoSansArabic-SemiBold.ttf create mode 100644 assets/languages/ar.json create mode 100644 assets/svgs/arrow_left.svg create mode 100644 assets/svgs/camera.svg create mode 100644 assets/svgs/dollar_flag.svg create mode 100644 assets/svgs/done.svg create mode 100644 assets/svgs/gas_station.svg create mode 100644 assets/svgs/generator.svg create mode 100644 assets/svgs/generator_filled.svg create mode 100644 assets/svgs/headphone.svg create mode 100644 assets/svgs/home.svg create mode 100644 assets/svgs/home_filled.svg create mode 100644 assets/svgs/location_pin.svg create mode 100644 assets/svgs/logo.svg create mode 100644 assets/svgs/notification.svg create mode 100644 assets/svgs/profile_paper.svg create mode 100644 assets/svgs/settings.svg create mode 100644 assets/svgs/user_sync.svg create mode 100644 assets/svgs/van.svg create mode 100644 assets/svgs/van_filled.svg create mode 100644 assets/svgs/x.svg 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/app_theme.dart create mode 100644 lib/extensions/face_detection_extension.dart create mode 100644 lib/main.dart create mode 100644 lib/screens/change_engine_screen.dart create mode 100644 lib/screens/change_location.dart create mode 100644 lib/screens/document_camera_screen.dart create mode 100644 lib/screens/face_detection_screen.dart create mode 100644 lib/screens/fines_screen.dart create mode 100644 lib/screens/follow_order_screen.dart create mode 100644 lib/screens/generator_info_screen.dart create mode 100644 lib/screens/home_screen.dart create mode 100644 lib/screens/log_in_screen.dart create mode 100644 lib/screens/national_id_camera_screen.dart create mode 100644 lib/screens/new_generator_screen.dart create mode 100644 lib/screens/nfc_screen.dart create mode 100644 lib/screens/notifications_screen.dart create mode 100644 lib/screens/order_details_screen.dart create mode 100644 lib/screens/otp_provider_screen.dart create mode 100644 lib/screens/otp_screen.dart create mode 100644 lib/screens/pay_monthly_gas.dart create mode 100644 lib/screens/payment_screen.dart create mode 100644 lib/screens/service_fees_screen.dart create mode 100644 lib/screens/success_screen.dart create mode 100644 lib/utils/text_field_4_space_formatter.dart create mode 100644 lib/utils/text_field_date_formatter.dart create mode 100644 lib/widgets/app_button.dart create mode 100644 lib/widgets/app_text_field.dart create mode 100644 lib/widgets/bottom_nav.dart create mode 100644 lib/widgets/custom_app_bar.dart create mode 100644 lib/widgets/fine_container.dart create mode 100644 lib/widgets/home_grid_item.dart create mode 100644 lib/widgets/order_container.dart create mode 100644 lib/widgets/order_state_badge.dart create mode 100644 lib/widgets/text_container.dart create mode 100644 pubspec.lock create mode 100644 pubspec.yaml create mode 100644 test/widget_test.dart 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..2e4237d --- /dev/null +++ b/.metadata @@ -0,0 +1,33 @@ +# 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 + - platform: ios + 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/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..db29fb4 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,6 @@ +{ + "cSpell.words": [ + "المحرك", + "المراجعة" + ] +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..7ae17e5 --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# Gascom diff --git a/analysis_options.yaml b/analysis_options.yaml new file mode 100644 index 0000000..0d29021 --- /dev/null +++ b/analysis_options.yaml @@ -0,0 +1,28 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at https://dart.dev/lints. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/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..7efab40 --- /dev/null +++ b/android/app/build.gradle @@ -0,0 +1,44 @@ +plugins { + id "com.android.application" + id "kotlin-android" + // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins. + id "dev.flutter.flutter-gradle-plugin" +} + +android { + namespace = "com.example.gascom" + 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 = "com.example.gascom" + // You can update the following values to match your application needs. + // For more information, see: https://flutter.dev/to/review-gradle-config. + minSdk = 26 + targetSdk = flutter.targetSdkVersion + versionCode = flutter.versionCode + versionName = flutter.versionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig = signingConfigs.debug + } + } +} + +flutter { + source = "../.." +} diff --git a/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..93943a4 --- /dev/null +++ b/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/app/src/main/kotlin/com/example/gascom/MainActivity.kt b/android/app/src/main/kotlin/com/example/gascom/MainActivity.kt new file mode 100644 index 0000000..5f5786c --- /dev/null +++ b/android/app/src/main/kotlin/com/example/gascom/MainActivity.kt @@ -0,0 +1,5 @@ +package com.example.gascom + +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..b9e43bd --- /dev/null +++ b/android/settings.gradle @@ -0,0 +1,25 @@ +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 + id "org.jetbrains.kotlin.android" version "1.8.22" apply false +} + +include ":app" diff --git a/assets/fonts/NotoSansArabic-Bold.ttf b/assets/fonts/NotoSansArabic-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..311ecd77c5807969638ee83298fdd37ebb77e5c1 GIT binary patch literal 177688 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 %<@u*~!zNM( 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/NotoSansArabic-Light.ttf b/assets/fonts/NotoSansArabic-Light.ttf new file mode 100644 index 0000000000000000000000000000000000000000..56ad1920429426b188d4a76489210d4c05ef84ba GIT binary patch literal 177744 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 DdB?A5 literal 0 HcmV?d00001 diff --git a/assets/fonts/NotoSansArabic-Medium.ttf b/assets/fonts/NotoSansArabic-Medium.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b7c178e7da7223ff064e0e5518260ba52b11080e GIT binary patch literal 177576 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 literal 0 HcmV?d00001 diff --git a/assets/fonts/NotoSansArabic-Regular.ttf b/assets/fonts/NotoSansArabic-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..79359c460b13e94945a8700227dabdc790091c0e GIT binary patch literal 177004 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 z�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 literal 0 HcmV?d00001 diff --git a/assets/fonts/NotoSansArabic-SemiBold.ttf b/assets/fonts/NotoSansArabic-SemiBold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..a1a9cf225ce2245a76b5a9e84ae41181bada1b44 GIT binary patch literal 177924 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

T&1Ord_O)P=*^zVVhj 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 literal 0 HcmV?d00001 diff --git a/assets/languages/ar.json b/assets/languages/ar.json new file mode 100644 index 0000000..544b7b4 --- /dev/null +++ b/assets/languages/ar.json @@ -0,0 +1,3 @@ +{ + +} \ No newline at end of file diff --git a/assets/svgs/arrow_left.svg b/assets/svgs/arrow_left.svg new file mode 100644 index 0000000..2fad747 --- /dev/null +++ b/assets/svgs/arrow_left.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/camera.svg b/assets/svgs/camera.svg new file mode 100644 index 0000000..f1a4204 --- /dev/null +++ b/assets/svgs/camera.svg @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/assets/svgs/dollar_flag.svg b/assets/svgs/dollar_flag.svg new file mode 100644 index 0000000..65f4b8c --- /dev/null +++ b/assets/svgs/dollar_flag.svg @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/done.svg b/assets/svgs/done.svg new file mode 100644 index 0000000..2fad747 --- /dev/null +++ b/assets/svgs/done.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/gas_station.svg b/assets/svgs/gas_station.svg new file mode 100644 index 0000000..e6c2e53 --- /dev/null +++ b/assets/svgs/gas_station.svg @@ -0,0 +1,18 @@ + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/generator.svg b/assets/svgs/generator.svg new file mode 100644 index 0000000..edb839b --- /dev/null +++ b/assets/svgs/generator.svg @@ -0,0 +1,18 @@ + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/generator_filled.svg b/assets/svgs/generator_filled.svg new file mode 100644 index 0000000..3f5bf84 --- /dev/null +++ b/assets/svgs/generator_filled.svg @@ -0,0 +1,15 @@ + + + + + + + \ No newline at end of file diff --git a/assets/svgs/headphone.svg b/assets/svgs/headphone.svg new file mode 100644 index 0000000..c59f783 --- /dev/null +++ b/assets/svgs/headphone.svg @@ -0,0 +1,16 @@ + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/home.svg b/assets/svgs/home.svg new file mode 100644 index 0000000..b74ed58 --- /dev/null +++ b/assets/svgs/home.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/home_filled.svg b/assets/svgs/home_filled.svg new file mode 100644 index 0000000..976d7a3 --- /dev/null +++ b/assets/svgs/home_filled.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/location_pin.svg b/assets/svgs/location_pin.svg new file mode 100644 index 0000000..e91e814 --- /dev/null +++ b/assets/svgs/location_pin.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/logo.svg b/assets/svgs/logo.svg new file mode 100644 index 0000000..3792900 --- /dev/null +++ b/assets/svgs/logo.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/notification.svg b/assets/svgs/notification.svg new file mode 100644 index 0000000..b554f99 --- /dev/null +++ b/assets/svgs/notification.svg @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/assets/svgs/profile_paper.svg b/assets/svgs/profile_paper.svg new file mode 100644 index 0000000..253ba76 --- /dev/null +++ b/assets/svgs/profile_paper.svg @@ -0,0 +1,20 @@ + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/settings.svg b/assets/svgs/settings.svg new file mode 100644 index 0000000..f9389c0 --- /dev/null +++ b/assets/svgs/settings.svg @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/assets/svgs/user_sync.svg b/assets/svgs/user_sync.svg new file mode 100644 index 0000000..2c971c8 --- /dev/null +++ b/assets/svgs/user_sync.svg @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/van.svg b/assets/svgs/van.svg new file mode 100644 index 0000000..c6eff57 --- /dev/null +++ b/assets/svgs/van.svg @@ -0,0 +1,19 @@ + + + + + + + + + \ No newline at end of file diff --git a/assets/svgs/van_filled.svg b/assets/svgs/van_filled.svg new file mode 100644 index 0000000..3516a60 --- /dev/null +++ b/assets/svgs/van_filled.svg @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/assets/svgs/x.svg b/assets/svgs/x.svg new file mode 100644 index 0000000..f4b094c --- /dev/null +++ b/assets/svgs/x.svg @@ -0,0 +1,7 @@ + + + + + \ 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..e25838a --- /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.gascom; + 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.gascom.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.gascom.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.gascom.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.gascom; + 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.gascom; + 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..b7caab5 --- /dev/null +++ b/ios/Runner/Info.plist @@ -0,0 +1,64 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleDisplayName + Gascom + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + gascom + 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 + + NSCameraUsageDescription + To detect faces when completing a legal action, to scan national ids + + NSLocationWhenInUseUsageDescription + To enable GPS location access for Exif data + + NFCReaderUsageDescription + Need NFC permission for reading NFC tags + + com.apple.developer.nfc.readersession.formats + + NDEF + TAG + + + + 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/app_theme.dart b/lib/constants/app_theme.dart new file mode 100644 index 0000000..b5240ce --- /dev/null +++ b/lib/constants/app_theme.dart @@ -0,0 +1,87 @@ +import 'package:flutter/material.dart'; + +class AppTheme { + + static const primaryColor = Color(0xFF668D7B); + static const secondaryColor = Color(0xFFBEDDCC); + static const cardColor = Color(0xFF93B5A4); + static const yellowColor = Color(0xFFF1CC83); + static const redColor = Colors.red; + static const brownColor = Color(0xFF6B6148); + static const blackColor = Color(0xFF444444); + static const textColor = Color(0xFFFFFFFF); + + static get theme => ThemeData( + useMaterial3: true, + colorScheme: ColorScheme.fromSeed( + seedColor: primaryColor, + surface: primaryColor, + ), + scaffoldBackgroundColor: primaryColor, + textTheme: const TextTheme( + bodySmall: bodySmall, + bodyMedium: bodyMedium, + bodyLarge: bodyLarge, + titleLarge: titleLarge, + headlineLarge: headlineLarge, + ), + elevatedButtonTheme: ElevatedButtonThemeData( + style: ButtonStyle( + elevation: WidgetStateProperty.all(0), + backgroundColor: WidgetStateProperty.all(textColor), + padding: WidgetStateProperty.all(const EdgeInsets.symmetric(vertical: 0, horizontal: 4)), + foregroundColor: WidgetStateProperty.all(primaryColor), + textStyle: WidgetStateProperty.all( + bodyMedium + ) + ), + ), + outlinedButtonTheme: OutlinedButtonThemeData( + style: ButtonStyle( + elevation: WidgetStateProperty.all(0), + backgroundColor: WidgetStateProperty.all(primaryColor), + padding: WidgetStateProperty.all(const EdgeInsets.symmetric(vertical: 0, horizontal: 4)), + foregroundColor: WidgetStateProperty.all(textColor), + textStyle: WidgetStateProperty.all( + bodyMedium + ) + ), + ), + cardColor: cardColor, + ); + + static const bodySmall = TextStyle( + color: textColor, + fontSize: 14, + fontWeight: FontWeight.w300, + fontFamily: 'NotoSansArabic', + ); + + static const bodyMedium = TextStyle( + color: textColor, + fontSize: 16, + fontWeight: FontWeight.w400, + fontFamily: 'NotoSansArabic', + ); + + static const bodyLarge = TextStyle( + color: textColor, + fontSize: 18, + fontWeight: FontWeight.w400, + fontFamily: 'NotoSansArabic', + ); + + static const titleLarge = TextStyle( + color: textColor, + fontSize: 22, + fontWeight: FontWeight.w600, + fontFamily: 'NotoSansArabic', + ); + + static const headlineLarge = TextStyle( + color: textColor, + fontSize: 32, + fontWeight: FontWeight.w700, + fontFamily: 'NotoSansArabic', + ); +} \ No newline at end of file diff --git a/lib/extensions/face_detection_extension.dart b/lib/extensions/face_detection_extension.dart new file mode 100644 index 0000000..36bac3d --- /dev/null +++ b/lib/extensions/face_detection_extension.dart @@ -0,0 +1,47 @@ + +import 'package:camerawesome/camerawesome_plugin.dart'; +import 'package:google_mlkit_commons/google_mlkit_commons.dart'; + +extension MLKitUtils on AnalysisImage { + InputImage toInputImage() { + + return when( + nv21: (image) { + return InputImage.fromBytes( + bytes: image.bytes, + metadata: InputImageMetadata( + rotation: inputImageRotation, + format: InputImageFormat.nv21, + size: image.size, + bytesPerRow: image.planes.first.bytesPerRow, + ), + ); + }, + bgra8888: (image) { + return InputImage.fromBytes( + bytes: image.bytes, + metadata: InputImageMetadata( + size: size, + rotation: inputImageRotation, + format: InputImageFormat.nv21, + bytesPerRow: image.planes.first.bytesPerRow, + ), + ); + } + )!; + } + + InputImageRotation get inputImageRotation => + InputImageRotation.values.byName(rotation.name); + + InputImageFormat get inputImageFormat { + switch (format) { + case InputAnalysisImageFormat.bgra8888: + return InputImageFormat.bgra8888; + case InputAnalysisImageFormat.nv21: + return InputImageFormat.nv21; + default: + return InputImageFormat.yuv420; + } + } +} diff --git a/lib/main.dart b/lib/main.dart new file mode 100644 index 0000000..b4c43c5 --- /dev/null +++ b/lib/main.dart @@ -0,0 +1,37 @@ +import 'package:easy_localization/easy_localization.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/log_in_screen.dart'; + +void main() async { + WidgetsFlutterBinding.ensureInitialized(); + + await EasyLocalization.ensureInitialized(); + const List supportedLocales = [Locale("ar")]; + + runApp(EasyLocalization( + supportedLocales: supportedLocales, + path: 'assets/languages', + startLocale: const Locale("ar"), + fallbackLocale: const Locale("ar"), + saveLocale: true, + child: const MyApp(), + )); +} + +class MyApp extends StatelessWidget { + const MyApp({super.key}); + + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'Gascom', + debugShowCheckedModeBanner: false, + theme: AppTheme.theme, + localizationsDelegates: context.localizationDelegates, + supportedLocales: context.supportedLocales, + locale: context.locale, + home: const LogInScreen(), + ); + } +} \ No newline at end of file diff --git a/lib/screens/change_engine_screen.dart b/lib/screens/change_engine_screen.dart new file mode 100644 index 0000000..cff6cce --- /dev/null +++ b/lib/screens/change_engine_screen.dart @@ -0,0 +1,118 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/screens/success_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/app_text_field.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; +import 'package:persistent_bottom_nav_bar_v2/persistent_bottom_nav_bar_v2.dart'; + +class ChangeEngineScreen extends StatefulWidget { + const ChangeEngineScreen({super.key}); + + @override + State createState() => _ChangeEngineScreenState(); +} + +class _ChangeEngineScreenState extends State { + TextEditingController reasonController = TextEditingController(); + TextEditingController countryController = TextEditingController(); + TextEditingController engineNumberController = TextEditingController(); + TextEditingController enginePowerController = TextEditingController(); + TextEditingController engineTypeController = TextEditingController(); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const CustomAppBar( + title: "تبديل المحرك", + ), + body: SafeArea( + child: ListView( + padding: const EdgeInsets.all(20.0), + children: [ + AutoSizeText( + "لتبديل المحرك يرجى تزويدنا بمعلومات المحرك الجديد الجديد.", + maxLines: 3, + style: Theme.of(context).textTheme.bodyLarge, + ), + const SizedBox(height: 20.0), + AutoSizeText( + "سبب التبديل", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: reasonController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 15.0), + AutoSizeText( + "منشأ المحرك الجديد", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: countryController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 15.0), + AutoSizeText( + "رقم المحرك", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: engineNumberController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 15.0), + AutoSizeText( + "القدرة التوليدية (KV.A)", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: enginePowerController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 15.0), + AutoSizeText( + "نوع المحرك", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: engineTypeController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 25.0), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 200, + child: AppButton( + onPressed: handleSendRequest, + label: "تاكيد", + isElevated: true), + ), + ], + ) + ], + ), + ), + ); + } + + void handleSendRequest() { + // handle request + + pushScreenWithoutNavBar( + context, + const SuccessScreen( + title: "تم تقديم الطلب بنجاح", + subtitle: "سيتم مراجعة طلبك، واعلامك بالموافقة قريباً" + ) + ); + } +} diff --git a/lib/screens/change_location.dart b/lib/screens/change_location.dart new file mode 100644 index 0000000..43b332c --- /dev/null +++ b/lib/screens/change_location.dart @@ -0,0 +1,127 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/screens/document_camera_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/app_text_field.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; + +class ChangeLocationScreen extends StatefulWidget { + const ChangeLocationScreen({super.key}); + + @override + State createState() => _ChangeLocationScreenState(); +} + +class _ChangeLocationScreenState extends State { + + TextEditingController reasonController = TextEditingController(); + TextEditingController districtController = TextEditingController(); + TextEditingController mahalaController = TextEditingController(); + TextEditingController streetController = TextEditingController(); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const CustomAppBar( + title: "تحويل موقع المولدة", + ), + body: SafeArea( + child: ListView( + padding: const EdgeInsets.all(20.0), + children: [ + AutoSizeText( + "لتحويل الموقع يرجى تزويدنا بمعلومات دقيقة للموقع الجديد بالاضافة الى سند ملكية للارض الجديدة.", + style: Theme.of(context).textTheme.bodyMedium, + maxLines: 2, + ), + const SizedBox(height: 20.0), + + AutoSizeText( + "سبب التحويل", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: reasonController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 15.0), + + AutoSizeText( + "المنطقة", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: districtController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 15.0), + + AutoSizeText( + "المحلة", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: mahalaController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 15.0), + + AutoSizeText( + "الزقاق", + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 5.0), + AppTextField( + controller: streetController, + keyboardType: TextInputType.multiline, + ), + const SizedBox(height: 15.0), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 200, + child: AppButton( + onPressed: handleSetLocationOnMap, + label: "تحديد على الخريطة", + isElevated: false + ), + ), + ], + ), + const SizedBox(height: 25.0), + + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 200, + child: AppButton( + onPressed: handleSendRequest, + label: "تاكيد", + isElevated: true + ), + ), + ], + ) + ], + ), + ), + ); + } + + void handleSendRequest() { + // handle request + + Navigator.push(context, MaterialPageRoute( + fullscreenDialog: true, + builder: (context) => const DocumentCameraScreen(title: "سند ملكية", description: "ضع سند ملكية الارض الجديدة في المربع، وتاكد من وجود اضاءة مناسبة",), + )); + } + + void handleSetLocationOnMap() { + } +} \ No newline at end of file diff --git a/lib/screens/document_camera_screen.dart b/lib/screens/document_camera_screen.dart new file mode 100644 index 0000000..f9665a9 --- /dev/null +++ b/lib/screens/document_camera_screen.dart @@ -0,0 +1,126 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:camerawesome/camerawesome_plugin.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/success_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; + +class DocumentCameraScreen extends StatefulWidget { + const DocumentCameraScreen({ + super.key, + required this.title, + required this.description, + }); + + final String title; + final String description; + + @override + State createState() => _DocumentCameraScreenState(); +} + +class _DocumentCameraScreenState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: CustomAppBar( + title: widget.title, + ), + body: SafeArea( + child: CameraAwesomeBuilder.custom( + sensorConfig: SensorConfig.single( + aspectRatio: CameraAspectRatios.ratio_16_9, + flashMode: FlashMode.none, + sensor: Sensor.position(SensorPosition.back), + zoom: 0.0, + ), + saveConfig: SaveConfig.photo( + + ), + builder: (state, previewSize) { + return Stack( + children: [ + Center( + child: ClipPath( + clipper: HoleClipper(), + child: Container( + color: AppTheme.primaryColor, + ), + ), + ), + Positioned( + bottom: 130, + left: 20, + right: 20, + child: AutoSizeText( + widget.description, + style: Theme.of(context).textTheme.bodySmall, + textAlign: TextAlign.center, + maxLines: 2, + ) + ), + Positioned( + bottom: 70, + left: 20, + right: 20, + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 200, + child: AppButton( + onPressed: () { + // save image as bytes in a variable using the state object + // state.when( + // onPhotoMode:(s) => s.takePhoto( + // onPhoto: (request) => request.when( + // single: (r) => r.path, + // ), + // ), + // ); + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => const SuccessScreen(title: 'تم تقديم الطلب بنجاح', subtitle: 'سيتم مراجعة طلبك، واعلامك بموعد الكشف الموقعي',), + ), + ); + }, + label: "التقاط", + isElevated: true + ), + ), + ], + ), + ) + ], + ); + } + ), + ), + ); + } +} + +class HoleClipper extends CustomClipper { + @override + Path getClip(Size size) { + final path = Path() + ..addRect(Rect.fromLTWH(0, 0, size.width, size.height)) + ..addRRect(RRect.fromRectAndRadius( + Rect.fromCenter( + center: Offset(size.width / 2, size.height * 0.38), + width: size.width - (size.width * 0.2), // Adjust the width of the square + height: size.height - (size.height * 0.3), // Adjust the height of the square to match the width for a square shape + ), + const Radius.circular(20), // Adjust the border radius as needed + )) + ..fillType = PathFillType.evenOdd; + return path; + } + + @override + bool shouldReclip(covariant CustomClipper oldClipper) { + return false; + } +} \ No newline at end of file diff --git a/lib/screens/face_detection_screen.dart b/lib/screens/face_detection_screen.dart new file mode 100644 index 0000000..d10a47f --- /dev/null +++ b/lib/screens/face_detection_screen.dart @@ -0,0 +1,276 @@ +import 'dart:io'; + +import 'package:camerawesome/camerawesome_plugin.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/extensions/face_detection_extension.dart'; +import 'package:gascom/screens/order_details_screen.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; +import 'package:google_mlkit_face_detection/google_mlkit_face_detection.dart'; +import 'package:path_provider/path_provider.dart'; + +class FaceDetectionScreen extends StatefulWidget { + const FaceDetectionScreen({super.key}); + + @override + State createState() => _FaceDetectionScreenState(); +} + +class _FaceDetectionScreenState extends State { + + String message = "ضع وجهك في الدائرة المخصصة وتاكد من وجود اضاءة مناسبة"; + + final options = FaceDetectorOptions( + enableContours: true, + enableClassification: true, + enableLandmarks: true, + performanceMode: FaceDetectorMode.accurate, + minFaceSize: 0.5, + ); + + late final faceDetector = FaceDetector(options: options); + + // Face stability tracking + DateTime? _stableStartTime; + Rect? _lastFacePosition; + + // Constants for stability detection + final double _movementThreshold = 40; + final Duration _requiredStableTime = const Duration(seconds: 2); + + @override + void dispose() { + faceDetector.close(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const CustomAppBar( + title: "تحقق الوجه", + ), + body: SafeArea( + child: Stack( + children: [ + CameraAwesomeBuilder.previewOnly( + builder: (state, preview) => const SizedBox(), + imageAnalysisConfig: AnalysisConfig( + maxFramesPerSecond: 10, + ), + onImageForAnalysis: handleImageAnalysis, + sensorConfig: SensorConfig.single( + aspectRatio: CameraAspectRatios.ratio_4_3, + flashMode: FlashMode.none, + sensor: Sensor.position(SensorPosition.front), + zoom: 0.0, + ), + ), + Center( + child: ClipPath( + clipper: HoleClipper(), + child: Container( + color: AppTheme.primaryColor, + ), + ), + ), + Positioned( + bottom: 50, + left: 20, + right: 20, + child: Text( + message, + style: Theme.of(context).textTheme.bodyMedium, + textAlign: TextAlign.center, + ), + ) + ], + ), + ), + ); + } + + bool _isFaceStable(Rect currentFace) { + if (_lastFacePosition == null) { + _lastFacePosition = currentFace; + return false; + } + + final double movement = + (currentFace.center.dx - _lastFacePosition!.center.dx).abs() + + (currentFace.center.dy - _lastFacePosition!.center.dy).abs(); + + _lastFacePosition = currentFace; + return movement < _movementThreshold; + } + + bool _isFaceCovered(Face face) { + // Check if essential face contours are present and visible + final requiredContours = [ + FaceContourType.face, + FaceContourType.leftEye, + FaceContourType.rightEye, + FaceContourType.noseBridge, + FaceContourType.noseBottom, + FaceContourType.leftCheek, + FaceContourType.rightCheek, + FaceContourType.upperLipTop, + FaceContourType.upperLipBottom, + FaceContourType.lowerLipTop, + FaceContourType.lowerLipBottom, + ]; + + // Count visible contours + int visibleContours = 0; + for (var contourType in requiredContours) { + if (face.contours[contourType]?.points.isNotEmpty ?? false) { + visibleContours++; + } + } + + // Check landmarks visibility + final hasEssentialLandmarks = + face.landmarks[FaceLandmarkType.leftEye] != null && + face.landmarks[FaceLandmarkType.rightEye] != null && + face.landmarks[FaceLandmarkType.noseBase] != null && + face.landmarks[FaceLandmarkType.bottomMouth] != null && + face.landmarks[FaceLandmarkType.leftMouth] != null && + face.landmarks[FaceLandmarkType.rightMouth] != null && + face.landmarks[FaceLandmarkType.leftEar] != null && + face.landmarks[FaceLandmarkType.rightEar] != null; + + // Check if eyes are open (existing check enhanced) + final eyesOpen = (face.rightEyeOpenProbability ?? 0) > 0.7 && (face.leftEyeOpenProbability ?? 0) > 0.7; + + print("@@@@@@@@@@@@@@@@@@"); + print(visibleContours); + print(hasEssentialLandmarks); + print(eyesOpen); + return !hasEssentialLandmarks || + visibleContours != requiredContours.length || + !eyesOpen; + } + + Future handleImageAnalysis(AnalysisImage img) async { + final inputImage = img.toInputImage(); + + try { + final faces = await faceDetector.processImage(inputImage); + + if (!context.mounted || !mounted) return; + if (faces.length == 1) { + + var face = faces.first; + var rect = faces.first.boundingBox; + final bool isStable = _isFaceStable(rect); + + // Check if face is covered + if (_isFaceCovered(face)) { + setState(() { + message = "الرجاء إزالة أي غطاء عن الوجه"; + }); + _stableStartTime = null; + return; + } + + if (!isStable) { + setState(() { + message = "ثبت وجهك في المكان المخصص وتأكد من أنه وجه حقيقي"; + }); + _stableStartTime = null; + return; + } + + if (!( + rect.left > (inputImage.metadata?.size.width ?? 0) * 0.1 + && rect.right < (inputImage.metadata?.size.width ?? 0) * 0.9 + && rect.top > (inputImage.metadata?.size.height ?? 0) * 0.1 + && rect.bottom < (inputImage.metadata?.size.height ?? 0) * 0.9 + && (faces.first.rightEyeOpenProbability ?? 0) > 0.3 + && (faces.first.leftEyeOpenProbability ?? 0) > 0.3 + )) { + setState(() { + message = "ثبت وجهك في المكان المخصص"; + }); + return; + } + + _stableStartTime ??= DateTime.now(); + + final stableDuration = DateTime.now().difference(_stableStartTime!); + if (stableDuration >= _requiredStableTime) { + img.when( + nv21: (image) { + faceDetector.close(); + + Navigator.pop(context); + Navigator.pushReplacement( + context, + MaterialPageRoute(builder: (context) => const OrderDetailsScreen()), + ); + }, + bgra8888: (image) { + faceDetector.close(); + Navigator.pop(context); + Navigator.pushReplacement( + context, + MaterialPageRoute(builder: (context) => const OrderDetailsScreen()), + ); + }, + ); + return; + } else { + setState(() { + message = "ثبت وجهك في المكان المخصص"; + }); + } + } + } catch (error) { + debugPrint("...sending image resulted error $error"); + } + } + + Future handleBuildPath(List sensors) async { + final Directory extDir = await getTemporaryDirectory(); + final Directory testDir = + await Directory('${extDir.path}/camerawesome') + .create(recursive: true); + + if (sensors.length == 1) { + final String filePath = + '${testDir.path}/${DateTime.now().millisecondsSinceEpoch}.jpg'; + return SingleCaptureRequest(filePath, sensors.first); + } else { + return MultipleCaptureRequest( + { + for (final sensor in sensors) + sensor: + '${testDir.path}/${sensor.position == SensorPosition.front ? 'front_' : "back_"}${DateTime.now().millisecondsSinceEpoch}.jpg', + }, + ); + } + } +} + +class HoleClipper extends CustomClipper { + @override + Path getClip(Size size) { + final path = Path() + ..addRect(Rect.fromLTWH(0, 0, size.width, size.height)) + ..addRRect(RRect.fromRectAndRadius( + Rect.fromCenter( + center: Offset(size.width / 2, size.height * 0.45), + width: size.width - (size.width * 0.2), // Adjust the width of the square + height: size.height - (size.height * 0.3), // Adjust the height of the square to match the width for a square shape + ), + const Radius.circular(20), // Adjust the border radius as needed + )) + ..fillType = PathFillType.evenOdd; + return path; + } + + @override + bool shouldReclip(covariant CustomClipper oldClipper) { + return false; + } +} \ No newline at end of file diff --git a/lib/screens/fines_screen.dart b/lib/screens/fines_screen.dart new file mode 100644 index 0000000..cf66723 --- /dev/null +++ b/lib/screens/fines_screen.dart @@ -0,0 +1,69 @@ +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; +import 'package:gascom/widgets/fine_container.dart'; + +class FinesScreen extends StatelessWidget { + const FinesScreen({super.key}); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const CustomAppBar( + title: "غرامات", + ), + body: SafeArea( + child: SingleChildScrollView( + child: Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + const SizedBox(height: 30), + Text( + "غرامات غير مدفوعة", + style: Theme.of(context).textTheme.titleLarge, + ), + const SizedBox(height: 20), + ListView.separated( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + itemCount: 5, + itemBuilder: (context, index) => FineContainer(), + separatorBuilder: (context, index) => const SizedBox(height: 10), + ), + const SizedBox(height: 15), + const Padding( + padding: EdgeInsets.symmetric(horizontal: 30), + child: Row( + children: [ + Divider( + color: AppTheme.textColor, + height: 1, + thickness: 1, + ), + ], + ), + ), + const SizedBox(height: 15), + Text( + "غرامات مدفوعة", + style: Theme.of(context).textTheme.titleLarge, + ), + const SizedBox(height: 20), + ListView.separated( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + itemCount: 5, + itemBuilder: (context, index) => const FineContainer(), + separatorBuilder: (context, index) => const SizedBox(height: 10), + ), + const SizedBox(height: 30), + ], + ), + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/follow_order_screen.dart b/lib/screens/follow_order_screen.dart new file mode 100644 index 0000000..059ddba --- /dev/null +++ b/lib/screens/follow_order_screen.dart @@ -0,0 +1,56 @@ +import 'package:flutter/material.dart'; +import 'package:gascom/widgets/order_container.dart'; + +class FollowOrderScreen extends StatefulWidget { + const FollowOrderScreen({super.key}); + + @override + State createState() => _FollowOrderScreenState(); +} + +class _FollowOrderScreenState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + body: SafeArea( + child: SingleChildScrollView( + child: Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + const SizedBox(height: 30), + Text( + "طلبات حالية", + style: Theme.of(context).textTheme.titleLarge, + ), + const SizedBox(height: 20), + ListView.separated( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + itemCount: 5, + itemBuilder: (context, index) => OrderContainer(), + separatorBuilder: (context, index) => const SizedBox(height: 10), + ), + const SizedBox(height: 30), + Text( + "طلبات سابقة", + style: Theme.of(context).textTheme.titleLarge, + ), + const SizedBox(height: 20), + ListView.separated( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + itemCount: 5, + itemBuilder: (context, index) => OrderContainer(), + separatorBuilder: (context, index) => const SizedBox(height: 10), + ), + const SizedBox(height: 30), + ], + ), + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/generator_info_screen.dart b/lib/screens/generator_info_screen.dart new file mode 100644 index 0000000..6f97873 --- /dev/null +++ b/lib/screens/generator_info_screen.dart @@ -0,0 +1,195 @@ +import 'package:animated_custom_dropdown/custom_dropdown.dart'; +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/app_text_field.dart'; + +class GeneratorInfoScreen extends StatefulWidget { + const GeneratorInfoScreen({super.key}); + + @override + State createState() => _GeneratorInfoScreenState(); +} + +class _GeneratorInfoScreenState extends State { + + final TextEditingController ownerNameController = TextEditingController(); + final TextEditingController phoneController = TextEditingController(); + final TextEditingController areaController = TextEditingController(); + final TextEditingController districtController = TextEditingController(); + final TextEditingController laneController = TextEditingController(); + final TextEditingController generatorBrandController = TextEditingController(); + final TextEditingController generatorPowerController = TextEditingController(); + final TextEditingController authorizedNameController = TextEditingController(); + + String selectedGeneratorType = 'حكومية'; + List availableGeneratorType = ['حكومية', 'اهلية']; + + @override + Widget build(BuildContext context) { + return Scaffold( + resizeToAvoidBottomInset: false, + body: SafeArea( + child: ListView( + padding: const EdgeInsets.symmetric(horizontal: 20), + children: [ + const SizedBox(height: 45,), + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text( + "معلومات المولدة", + style: Theme.of(context).textTheme.titleLarge?.copyWith( + fontWeight: FontWeight.w600, + ), + ), + Text( + "#10023432", + style: Theme.of(context).textTheme.titleLarge?.copyWith( + fontWeight: FontWeight.w600, + ), + textDirection: TextDirection.ltr, + ), + ], + ), + const SizedBox(height: 30,), + Text( + "اسم صاحب المولدة", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + AppTextField( + controller: ownerNameController, + keyboardType: TextInputType.text, + ), + const SizedBox(height: 15,), + Text( + "رقم الهاتف", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + AppTextField( + controller: phoneController, + keyboardType: TextInputType.phone, + ), + const SizedBox(height: 15,), + Text( + "فئة المولدة", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + CustomDropdown( + hintText: "فئة المولدة", + items: availableGeneratorType, + closedHeaderPadding: const EdgeInsets.symmetric(horizontal: 20, vertical: 10), + expandedHeaderPadding: const EdgeInsets.symmetric(horizontal: 20, vertical: 10), + decoration: CustomDropdownDecoration( + closedFillColor: AppTheme.primaryColor, + expandedFillColor: AppTheme.primaryColor, + closedBorder: Border.all( + color: AppTheme.textColor, + width: 1 + ), + expandedBorder: Border.all( + color: AppTheme.textColor, + width: 1 + ), + closedBorderRadius: const BorderRadius.all(Radius.circular(30)), + expandedBorderRadius: const BorderRadius.all(Radius.circular(20)), + hintStyle: Theme.of(context).textTheme.bodySmall, + listItemStyle: Theme.of(context).textTheme.bodySmall?.copyWith( + fontWeight: FontWeight.w400, + ), + headerStyle: Theme.of(context).textTheme.bodySmall?.copyWith( + fontWeight: FontWeight.w400, + ), + expandedSuffixIcon: const Icon(CupertinoIcons.chevron_up, color: AppTheme.textColor, size: 18,), + closedSuffixIcon: const Icon(CupertinoIcons.chevron_down, color: AppTheme.textColor, size: 18,), + ), + onChanged: (value) { + selectedGeneratorType = value ?? ""; + }, + ), + const SizedBox(height: 15,), + Text( + "المنطقة", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + AppTextField( + controller: areaController, + keyboardType: TextInputType.text, + ), + const SizedBox(height: 15,), + Text( + "المحلة", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + AppTextField( + controller: districtController, + keyboardType: TextInputType.text, + ), + const SizedBox(height: 15,), + Text( + "الزقاق", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + AppTextField( + controller: laneController, + keyboardType: TextInputType.text, + ), + const SizedBox(height: 15,), + Text( + "نوع المولدة", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + AppTextField( + controller: generatorBrandController, + keyboardType: TextInputType.text, + ), + const SizedBox(height: 15,), + Text( + "راس التوليد", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + AppTextField( + controller: generatorPowerController, + keyboardType: TextInputType.text, + ), + const SizedBox(height: 15,), + Text( + "مخول استلام الحصة الوقودية", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 6,), + AppTextField( + controller: authorizedNameController, + keyboardType: TextInputType.text, + ), + const SizedBox(height: 40,), + Center( + child: SizedBox( + width: 200, + height: 45, + child: AppButton( + onPressed: handleUpdateInfo, + label: "تحديث المعلومات", + isElevated: false + ) + ), + ), + const SizedBox(height: 50,), + ], + ), + ), + ); + } + + void handleUpdateInfo() { + } +} \ No newline at end of file diff --git a/lib/screens/home_screen.dart b/lib/screens/home_screen.dart new file mode 100644 index 0000000..a281ce2 --- /dev/null +++ b/lib/screens/home_screen.dart @@ -0,0 +1,175 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/change_engine_screen.dart'; +import 'package:gascom/screens/change_location.dart'; +import 'package:gascom/screens/document_camera_screen.dart'; +import 'package:gascom/screens/fines_screen.dart'; +import 'package:gascom/screens/notifications_screen.dart'; +import 'package:gascom/screens/pay_monthly_gas.dart'; +import 'package:gascom/screens/service_fees_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/home_grid_item.dart'; +import 'package:persistent_bottom_nav_bar_v2/persistent_bottom_nav_bar_v2.dart'; + +class HomeScreen extends StatefulWidget { + const HomeScreen({super.key}); + + @override + State createState() => _HomeScreenState(); +} + +class _HomeScreenState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + resizeToAvoidBottomInset: false, + body: SafeArea( + child: Column( + children: [ + const SizedBox(height: 50,), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + SvgPicture.asset( + width: 160, + "assets/svgs/logo.svg", + semanticsLabel: 'Logo', + ), + InkWell( + onTap: () => pushScreenWithoutNavBar(context, const NotificationsScreen()), + child: Padding( + padding: const EdgeInsets.only(left: 10), + child: SvgPicture.asset( + "assets/svgs/notification.svg", + semanticsLabel: 'Menu', + ), + ), + ), + ], + ), + ), + const SizedBox(height: 40,), + Row( + children: [ + SizedBox( + width: MediaQuery.sizeOf(context).width * 0.65, + child: const Divider( + color: AppTheme.yellowColor, + thickness: 3, + height: 0, + ), + ), + SizedBox( + width: MediaQuery.sizeOf(context).width * 0.35, + child: const Divider( + color: AppTheme.secondaryColor, + thickness: 1, + height: 0, + ), + ), + ], + ), + Expanded( + child: SingleChildScrollView( + child: Column( + children: [ + const SizedBox(height: 30,), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Text( + "الخدمات", + style: Theme.of(context).textTheme.bodyLarge, + ), + SizedBox( + width: 140, + height: 32, + child: AppButton( + onPressed: () { + pushScreenWithoutNavBar(context, const ServiceFeesScreen()); + }, + label: "رسوم الخدمات", + isElevated: false + ), + ), + ], + ), + ), + const SizedBox(height: 30,), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: GridView( + shrinkWrap: true, + physics: const NeverScrollableScrollPhysics(), + gridDelegate: SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: 3, + crossAxisSpacing: 20, + mainAxisSpacing: 5, + childAspectRatio: MediaQuery.sizeOf(context).width / (MediaQuery.sizeOf(context).height / 1.3), + ), + children: [ + HomeGridItem( + title: "طلب حصة", + svgPath: "assets/svgs/gas_station.svg", + onPressed: () { + pushScreenWithoutNavBar(context, PayMonthlyGas()); + } + ), + HomeGridItem( + title: "غرامات", + svgPath: "assets/svgs/dollar_flag.svg", + onPressed: () { + pushScreenWithoutNavBar(context, const FinesScreen()); + } + ), + HomeGridItem( + title: "تحويل موقع", + svgPath: "assets/svgs/location_pin.svg", + onPressed: () { + pushScreenWithoutNavBar(context, const ChangeLocationScreen()); + } + ), + HomeGridItem( + title: "تبديل محرك", + svgPath: "assets/svgs/settings.svg", + onPressed: () { + pushScreenWithoutNavBar(context, const ChangeEngineScreen()); + } + ), + HomeGridItem( + title: "تجديد بطاقة الحصة الوقودية", + svgPath: "assets/svgs/profile_paper.svg", + onPressed: () { + pushScreenWithoutNavBar(context, const DocumentCameraScreen(title: "تجديد دفتر", description: "لتجديد الدفتر يرجى ارفاق صورة للدفتر الحالي, ضع الدفتر في المربع، وتاكد من وجود اضاءة جيدة ثم اضغط التقاط.",)); + } + ), + HomeGridItem( + title: "تغيير مخول", + svgPath: "assets/svgs/user_sync.svg", + onPressed: () { + } + ), + HomeGridItem( + title: "الدعم الفني", + svgPath: "assets/svgs/headphone.svg", + onPressed: () {} + ), + ], + ), + ) + ], + ), + ), + ) + ], + ) + ) + ); + } +} \ No newline at end of file diff --git a/lib/screens/log_in_screen.dart b/lib/screens/log_in_screen.dart new file mode 100644 index 0000000..af894e5 --- /dev/null +++ b/lib/screens/log_in_screen.dart @@ -0,0 +1,145 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/nfc_screen.dart'; +import 'package:gascom/screens/otp_provider_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:pinput/pinput.dart'; + +class LogInScreen extends StatefulWidget { + const LogInScreen({super.key}); + + @override + State createState() => _LogInScreenState(); +} + +class _LogInScreenState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + body: SafeArea( + child: ListView( + padding: const EdgeInsets.symmetric(horizontal: 25), + children: [ + const SizedBox(height: 150), + Center( + child: SizedBox( + width: MediaQuery.sizeOf(context).width * 0.6, + child: SvgPicture.asset( + "assets/svgs/logo.svg", + semanticsLabel: 'Home', + ), + ), + ), + const SizedBox(height: 50), + Center( + child: AutoSizeText( + "مرحبا بكم في كازكوم، يرجى ادخال رقم الترخيص الخاص بصاحب المولدة", + style: Theme.of(context).textTheme.bodyLarge, + textAlign: TextAlign.center, + minFontSize: 8, + ), + ), + Center( + child: AutoSizeText( + "أو قم بمسح رمز QR الموجود على البطاقة", + style: Theme.of(context).textTheme.bodyLarge, + textAlign: TextAlign.center, + minFontSize: 8, + ), + ), + const SizedBox(height: 35), + Row( + children: [ + InkWell( + borderRadius: BorderRadius.circular(11), + onTap: () { + // TODO: Implement QR Code Scanner + }, + child: Container( + width: 60, + height: 60, + padding: const EdgeInsets.all(12), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(11), + border: Border.all( + color: AppTheme.textColor, + width: 2, + ), + ), + child: SvgPicture.asset( + "assets/svgs/camera.svg", + semanticsLabel: 'QR Code', + ), + ), + ), + const SizedBox(width: 15), + Expanded( + child: Container( + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 6), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(11), + border: Border.all( + color: AppTheme.textColor, + width: 2, + ), + ), + child: Directionality( + textDirection: TextDirection.ltr, + child: Pinput( + length: 5, + defaultPinTheme: PinTheme( + width: 30, + height: 35, + textStyle: Theme.of(context).textTheme.bodyLarge, + margin: const EdgeInsets.symmetric(horizontal: 5), + decoration: const BoxDecoration( + // color: AppTheme.textColor, + border: Border( + bottom: BorderSide( + color: AppTheme.textColor, + width: 1, + ), + ), + ), + ), + onCompleted: (value) { + Navigator.push(context, MaterialPageRoute(builder: (context) => OtpProviderScreen( + cardNumber: int.parse(value), + ))); + }, + ), + ), + ), + ), + ], + ), + + const SizedBox(height: 50), + + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 180, + child: AppButton( + onPressed: () { + Navigator.push(context, MaterialPageRoute( + fullscreenDialog: true, + // builder: (context) => NewGeneratorScreen(), + builder: (context) => NfcScreen(), + )); + }, + label: "مولـدة جـــديــدة", + isElevated: false + ), + ), + ], + ), + ], + ), + ) + ); + } +} \ No newline at end of file diff --git a/lib/screens/national_id_camera_screen.dart b/lib/screens/national_id_camera_screen.dart new file mode 100644 index 0000000..10dbf53 --- /dev/null +++ b/lib/screens/national_id_camera_screen.dart @@ -0,0 +1,120 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:camerawesome/camerawesome_plugin.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; + +class NationalIdCameraScreen extends StatefulWidget { + const NationalIdCameraScreen({ + super.key, + required this.title, + required this.subtitle, + required this.description, + required this.onScanComplete, + }); + + final String title; + final String subtitle; + final String description; + final void Function() onScanComplete; + + @override + State createState() => _NationalIdCameraScreenState(); +} + +class _NationalIdCameraScreenState extends State { + + String? error; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const CustomAppBar(), + body: SafeArea( + child: CameraAwesomeBuilder.custom( + sensorConfig: SensorConfig.single( + aspectRatio: CameraAspectRatios.ratio_16_9, + flashMode: FlashMode.none, + sensor: Sensor.position(SensorPosition.back), + zoom: 0.0, + ), + saveConfig: SaveConfig.photo( + + ), + builder: (state, previewSize) { + return Stack( + children: [ + Center( + child: ClipPath( + clipper: HoleClipper(), + child: Container( + color: AppTheme.primaryColor, + ), + ), + ), + Positioned( + top: 30, + left: 20, + right: 20, + child: AutoSizeText( + widget.title, + style: Theme.of(context).textTheme.bodyLarge?.copyWith( + fontWeight: FontWeight.w500, + ), + textAlign: TextAlign.center, + maxLines: 2, + ) + ), + Positioned( + top: 100, + left: 20, + right: 20, + child: AutoSizeText( + widget.subtitle, + style: Theme.of(context).textTheme.bodySmall, + textAlign: TextAlign.center, + maxLines: 1, + ) + ), + Positioned( + bottom: 200, + left: 20, + right: 20, + child: AutoSizeText( + error ?? widget.description, + style: Theme.of(context).textTheme.bodySmall, + textAlign: TextAlign.center, + maxLines: 2, + ) + ), + ], + ); + } + ), + ), + ); + } +} + +class HoleClipper extends CustomClipper { + @override + Path getClip(Size size) { + final path = Path() + ..addRect(Rect.fromLTWH(0, 0, size.width, size.height)) + ..addRRect(RRect.fromRectAndRadius( + Rect.fromCenter( + center: Offset(size.width / 2, size.height * 0.38), + width: size.width - (size.width * 0.1), // Adjust the width of the square + height: size.height - (size.height * 0.7), // Adjust the height of the square to match the width for a square shape + ), + const Radius.circular(20), // Adjust the border radius as needed + )) + ..fillType = PathFillType.evenOdd; + return path; + } + + @override + bool shouldReclip(covariant CustomClipper oldClipper) { + return false; + } +} \ No newline at end of file diff --git a/lib/screens/new_generator_screen.dart b/lib/screens/new_generator_screen.dart new file mode 100644 index 0000000..be1ffa0 --- /dev/null +++ b/lib/screens/new_generator_screen.dart @@ -0,0 +1,112 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/screens/national_id_camera_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; + +class NewGeneratorScreen extends StatefulWidget { + const NewGeneratorScreen({super.key}); + + @override + State createState() => _NewGeneratorScreenState(); +} + +class _NewGeneratorScreenState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const CustomAppBar(), + body: SafeArea( + child: ListView( + padding: const EdgeInsets.symmetric(horizontal: 25), + children: [ + const SizedBox(height: 150), + // SizedBox( + // width: 40, + // child: SvgPicture.asset( + // "assets/svgs/x.svg", + // semanticsLabel: 'Cancel', + // ), + // ), + // const SizedBox(height: 50), + Center( + child: AutoSizeText( + "طلب تخصيص حصة كاز للمولدة", + style: Theme.of(context).textTheme.titleLarge, + textAlign: TextAlign.center, + minFontSize: 8, + ), + ), + const SizedBox(height: 50), + Center( + child: AutoSizeText( + "يوفر تطبيق كاز كوم خدمة طلب حصة الكاز للمولدات الاهلية الكترونياً وبسهولة تامة.", + style: Theme.of(context).textTheme.bodySmall, + textAlign: TextAlign.center, + minFontSize: 8, + ), + ), + const SizedBox(height: 25), + Center( + child: AutoSizeText( + "لتسجيل حساب في كازكوم يرجى ملئ المعلومات المطلوبة والتأكد من صحة ودقة المعلومات.", + style: Theme.of(context).textTheme.bodySmall, + textAlign: TextAlign.center, + minFontSize: 8, + ), + ), + const SizedBox(height: 75), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 200, + child: AppButton( + onPressed: () { + Navigator.push( + context, + MaterialPageRoute( + fullscreenDialog: true, + builder: (context) => NationalIdCameraScreen( + title: "الهوية الوطنية", + subtitle: "الوجه الامامي", + description: "ضع البطاقة الموحدة الخاصة بصاحب المولد في المربع وتاكد من وجود اضاءة مناسبة", + onScanComplete: () { + Navigator.push(context, MaterialPageRoute( + fullscreenDialog: true, + builder: (context) => NationalIdCameraScreen( + title: "الهوية الوطنية", + subtitle: "الوجه الخلفي", + description: "ضع البطاقة الموحدة الخاصة بصاحب المولد في المربع وتاكد من وجود اضاءة مناسبة", + onScanComplete: () { + Navigator.push(context, MaterialPageRoute( + fullscreenDialog: true, + builder: (context) => NationalIdCameraScreen( + title: "بطاقة السكن", + subtitle: "", + description: "ضع بطاقة السكن الخاصة بصاحب المولد في المربع وتاكد من وجود اضاءة مناسبة", + onScanComplete: () { + + } + ) + )); + } + ) + )); + }, + ) + ) + ); + }, + label: "التالي", + isElevated: false + ), + ), + ], + ), + ] + ) + ) + ); + } +} \ No newline at end of file diff --git a/lib/screens/nfc_screen.dart b/lib/screens/nfc_screen.dart new file mode 100644 index 0000000..eebc616 --- /dev/null +++ b/lib/screens/nfc_screen.dart @@ -0,0 +1,585 @@ +import 'dart:typed_data'; + +import 'package:dmrtd/dmrtd.dart'; +import 'package:dmrtd/src/proto/can_key.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; + +class NfcScreen extends StatefulWidget { + const NfcScreen({super.key}); + + @override + State createState() => _NfcScreenState(); +} + +class _NfcScreenState extends State { + final NfcProvider _nfc = NfcProvider(); + MrtdData? _mrtdData = MrtdData(); + String _alertMessage = ""; + bool _isReading = false; + + String id = ''; // should change based on user id card (it's the string below the image) + DateTime dateOfBirth = DateTime(2000, 1, 1); // should change based on user id card + DateTime dateOfExpiry = DateTime(2029, 1, 1); // should change based on user id card + + @override + void initState() { + WidgetsBinding.instance.addPostFrameCallback((_) async { + try { + _buttonPressed(); + } catch (e) { + print(e); + } + }); + + super.initState(); + } + + @override + void dispose() { + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return const Scaffold( + appBar: CustomAppBar(), + body: SafeArea( + child: Center( + child: Text("NFC Screen, Nfc has ti be turned on."), + ), + ), + ); + } + + String formatProgressMsg(String message, int percentProgress) { + final p = (percentProgress / 20).round(); + final full = "🟢 " * p; + final empty = "⚪️ " * (5 - p); + return "$message\n\n$full$empty"; + } + + void _readMRTD({required AccessKey accessKey, bool isPace = false}) async { + try { + setState(() { + _mrtdData = null; + _alertMessage = "Waiting for Passport tag ..."; + _isReading = true; + }); + try { + bool demo = false; + print("-------------- FIRST -------------"); + if (!demo) + await _nfc.connect( + iosAlertMessage: "Hold your phone near Biometric Passport"); + + print("-------------- SECOND -------------"); + final passport = Passport(_nfc); + + print("-------------- THIRD -------------"); + setState(() { + _alertMessage = "Reading Passport ..."; + }); + + print("-------------- 4 -------------"); + _nfc.setIosAlertMessage("Trying to read EF.CardAccess ..."); + final mrtdData = MrtdData(); + + print("-------------- 5 -------------"); + try { + mrtdData.cardAccess = await passport.readEfCardAccess(); + } on PassportError { + print("-------------- 6 -------------"); + //if (e.code != StatusWord.fileNotFound) rethrow; + } + + _nfc.setIosAlertMessage("Trying to read EF.CardSecurity ..."); + + try { + //mrtdData.cardSecurity = await passport.readEfCardSecurity(); + } on PassportError { + //if (e.code != StatusWord.fileNotFound) rethrow; + } + + _nfc.setIosAlertMessage("Initiating session with PACE..."); + //set MrtdData + mrtdData.isPACE = isPace; + mrtdData.isDBA = accessKey.PACE_REF_KEY_TAG == 0x01 ? true : false; + + if (isPace) { + //PACE session + print("-------------- 7 -------------"); + await passport.startSessionPACE(accessKey, mrtdData.cardAccess!); + } else { + print("-------------- 8 -------------"); + //BAC session + await passport.startSession(accessKey as DBAKey); + } + + print("-------------- 9 -------------"); + _nfc.setIosAlertMessage(formatProgressMsg("Reading EF.COM ...", 0)); + mrtdData.com = await passport.readEfCOM(); + + _nfc.setIosAlertMessage( + formatProgressMsg("Reading Data Groups ...", 20)); + + print("-------------- 10 -------------"); + if (mrtdData.com!.dgTags.contains(EfDG1.TAG)) { + mrtdData.dg1 = await passport.readEfDG1(); + print("DG1 mrz country: ${mrtdData.dg1?.mrz.country}"); + print("DG1 mrz dateOfBirth: ${mrtdData.dg1?.mrz.dateOfBirth}"); + print("DG1 mrz dateOfExpiry: ${mrtdData.dg1?.mrz.dateOfExpiry}"); + print("DG1 mrz documentCode: ${mrtdData.dg1?.mrz.documentCode}"); + print("DG1 mrz documentNumber: ${mrtdData.dg1?.mrz.documentNumber}"); + print("DG1 mrz firstName: ${mrtdData.dg1?.mrz.firstName}"); + print("DG1 mrz gender: ${mrtdData.dg1?.mrz.gender}"); + print("DG1 mrz lastName: ${mrtdData.dg1?.mrz.lastName}"); + print("DG1 mrz nationality: ${mrtdData.dg1?.mrz.nationality}"); + print("DG1 mrz optionalData: ${mrtdData.dg1?.mrz.optionalData}"); + print("DG1 mrz optionalData2: ${mrtdData.dg1?.mrz.optionalData2}"); + print("DG1 mrz version: ${mrtdData.dg1?.mrz.version}"); + } + + print("-------------- 11 -------------"); + if (mrtdData.com!.dgTags.contains(EfDG2.TAG)) { + mrtdData.dg2 = await passport.readEfDG2(); + print("DG2 deviceType: ${mrtdData.dg2?.deviceType}"); + print("DG2 expression: ${mrtdData.dg2?.expression}"); + print("DG2 eyeColor: ${mrtdData.dg2?.eyeColor}"); + print("DG2 faceImageType: ${mrtdData.dg2?.faceImageType}"); + print("DG2 facialRecordDataLength: ${mrtdData.dg2?.facialRecordDataLength}"); + print("DG2 featureMask: ${mrtdData.dg2?.featureMask}"); + print("DG2 gender: ${mrtdData.dg2?.gender}"); + print("DG2 hairColor: ${mrtdData.dg2?.hairColor}"); + print("DG2 imageColorSpace: ${mrtdData.dg2?.imageColorSpace}"); + print("DG2 imageData: ${mrtdData.dg2?.imageData}"); + print("DG2 imageHeight: ${mrtdData.dg2?.imageHeight}"); + print("DG2 imageType: ${mrtdData.dg2?.imageType}"); + print("DG2 imageWidth: ${mrtdData.dg2?.imageWidth}"); + print("DG2 lengthOfRecord: ${mrtdData.dg2?.lengthOfRecord}"); + print("DG2 nrFeaturePoints: ${mrtdData.dg2?.nrFeaturePoints}"); + print("DG2 numberOfFacialImages: ${mrtdData.dg2?.numberOfFacialImages}"); + print("DG2 poseAngle: ${mrtdData.dg2?.poseAngle}"); + print("DG2 poseAngleUncertainty: ${mrtdData.dg2?.poseAngleUncertainty}"); + print("DG2 quality: ${mrtdData.dg2?.quality}"); + print("DG2 sourceType: ${mrtdData.dg2?.sourceType}"); + print("DG2 versionNumber: ${mrtdData.dg2?.versionNumber}"); + } + + // To read DG3 and DG4 session has to be established with CVCA certificate (not supported). + // if(mrtdData.com!.dgTags.contains(EfDG3.TAG)) { + // mrtdData.dg3 = await passport.readEfDG3(); + // } + + // if(mrtdData.com!.dgTags.contains(EfDG4.TAG)) { + // mrtdData.dg4 = await passport.readEfDG4(); + // } + + if (mrtdData.com!.dgTags.contains(EfDG5.TAG)) { + mrtdData.dg5 = await passport.readEfDG5(); + } + + if (mrtdData.com!.dgTags.contains(EfDG6.TAG)) { + mrtdData.dg6 = await passport.readEfDG6(); + } + + if (mrtdData.com!.dgTags.contains(EfDG7.TAG)) { + mrtdData.dg7 = await passport.readEfDG7(); + } + + if (mrtdData.com!.dgTags.contains(EfDG8.TAG)) { + mrtdData.dg8 = await passport.readEfDG8(); + } + + if (mrtdData.com!.dgTags.contains(EfDG9.TAG)) { + mrtdData.dg9 = await passport.readEfDG9(); + } + + if (mrtdData.com!.dgTags.contains(EfDG10.TAG)) { + mrtdData.dg10 = await passport.readEfDG10(); + } + + if (mrtdData.com!.dgTags.contains(EfDG11.TAG)) { + mrtdData.dg11 = await passport.readEfDG11(); + print("DG11 custodyInformation: ${mrtdData.dg11?.custodyInformation}"); + print("DG11 ersonalSummary: ${mrtdData.dg11?.ersonalSummary}"); + print("DG11 fullDateOfBirth: ${mrtdData.dg11?.fullDateOfBirth}"); + print("DG11 nameOfHolder: ${mrtdData.dg11?.nameOfHolder}"); + print("DG11 otherNames: ${mrtdData.dg11?.otherNames}"); + print("DG11 otherValidTDNumbers: ${mrtdData.dg11?.otherValidTDNumbers}"); + print("DG11 permanentAddress: ${mrtdData.dg11?.permanentAddress}"); + print("DG11 personalNumber: ${mrtdData.dg11?.personalNumber}"); + print("DG11 placeOfBirth: ${mrtdData.dg11?.placeOfBirth}"); + print("DG11 profession: ${mrtdData.dg11?.profession}"); + print("DG11 proofOfCitizenship: ${mrtdData.dg11?.proofOfCitizenship}"); + print("DG11 telephone: ${mrtdData.dg11?.telephone}"); + print("DG11 title: ${mrtdData.dg11?.title}"); + } + + if (mrtdData.com!.dgTags.contains(EfDG12.TAG)) { + mrtdData.dg12 = await passport.readEfDG12(); + print("DG12 dateOfIssue: ${mrtdData.dg12?.dateOfIssue}"); + print("DG12 dateOfIssue: ${mrtdData.dg12?.issuingAuthority}"); + } + + if (mrtdData.com!.dgTags.contains(EfDG13.TAG)) { + mrtdData.dg13 = await passport.readEfDG13(); + } + + if (mrtdData.com!.dgTags.contains(EfDG14.TAG)) { + mrtdData.dg14 = await passport.readEfDG14(); + } + + if (mrtdData.com!.dgTags.contains(EfDG15.TAG)) { + mrtdData.dg15 = await passport.readEfDG15(); + _nfc.setIosAlertMessage(formatProgressMsg("Doing AA ...", 60)); + + print("DG15 aaPublicKey: ${mrtdData.dg15?.aaPublicKey}"); + + mrtdData.aaSig = await passport.activeAuthenticate(Uint8List(8)); + } + + if (mrtdData.com!.dgTags.contains(EfDG16.TAG)) { + mrtdData.dg16 = await passport.readEfDG16(); + } + + print("-------------- 12 -------------"); + _nfc.setIosAlertMessage(formatProgressMsg("Reading EF.SOD ...", 80)); + mrtdData.sod = await passport.readEfSOD(); + + setState(() { + _mrtdData = mrtdData; + }); + + setState(() { + _alertMessage = ""; + }); + } on Exception catch (e) { + final se = e.toString().toLowerCase(); + String alertMsg = "An error has occurred while reading Passport!"; + if (e is PassportError) { + if (se.contains("security status not satisfied")) { + alertMsg = + "Failed to initiate session with passport.\nCheck input data!"; + } + print("PassportError: ${e.message}"); + } else { + print( + "An exception was encountered while trying to read Passport: $e"); + } + + if (se.contains('timeout')) { + alertMsg = "Timeout while waiting for Passport tag"; + } else if (se.contains("tag was lost")) { + alertMsg = "Tag was lost. Please try again!"; + } else if (se.contains("invalidated by user")) { + alertMsg = ""; + } + + setState(() { + _alertMessage = alertMsg; + }); + } finally { + if (_alertMessage.isNotEmpty) { + await _nfc.disconnect(iosErrorMessage: _alertMessage); + } else { + await _nfc.disconnect( + iosAlertMessage: formatProgressMsg("Finished", 100)); + } + setState(() { + _isReading = false; + }); + } + } on Exception catch (e) { + print("Read MRTD error: $e"); + } + } + + void _readMRTDOld() async { + try { + setState(() { + _mrtdData = null; + _alertMessage = "Waiting for Passport tag ..."; + _isReading = true; + }); + + await _nfc.connect( + iosAlertMessage: "Hold your phone near Biometric Passport"); + final passport = Passport(_nfc); + + setState(() { + _alertMessage = "Reading Passport ..."; + }); + + _nfc.setIosAlertMessage("Trying to read EF.CardAccess ..."); + final mrtdData = MrtdData(); + + try { + mrtdData.cardAccess = await passport.readEfCardAccess(); + } on PassportError { + //if (e.code != StatusWord.fileNotFound) rethrow; + } + + _nfc.setIosAlertMessage("Trying to read EF.CardSecurity ..."); + + try { + mrtdData.cardSecurity = await passport.readEfCardSecurity(); + } on PassportError { + //if (e.code != StatusWord.fileNotFound) rethrow; + } + + _nfc.setIosAlertMessage("Initiating session ..."); + final bacKeySeed = DBAKey(id, dateOfBirth, dateOfExpiry); + await passport.startSession(bacKeySeed); + + _nfc.setIosAlertMessage(formatProgressMsg("Reading EF.COM ...", 0)); + mrtdData.com = await passport.readEfCOM(); + + _nfc.setIosAlertMessage(formatProgressMsg("Reading Data Groups ...", 20)); + + if (mrtdData.com!.dgTags.contains(EfDG1.TAG)) { + mrtdData.dg1 = await passport.readEfDG1(); + print(mrtdData.dg1?.mrz); + } + + if (mrtdData.com!.dgTags.contains(EfDG2.TAG)) { + mrtdData.dg2 = await passport.readEfDG2(); + print("DG2 deviceType: ${mrtdData.dg2?.deviceType}"); + print("DG2 expression: ${mrtdData.dg2?.expression}"); + print("DG2 eyeColor: ${mrtdData.dg2?.eyeColor}"); + print("DG2 faceImageType: ${mrtdData.dg2?.faceImageType}"); + print("DG2 facialRecordDataLength: ${mrtdData.dg2?.facialRecordDataLength}"); + print("DG2 featureMask: ${mrtdData.dg2?.featureMask}"); + print("DG2 fid: ${mrtdData.dg2?.fid}"); + print("DG2 gender: ${mrtdData.dg2?.gender}"); + print("DG2 hairColor: ${mrtdData.dg2?.hairColor}"); + print("DG2 imageColorSpace: ${mrtdData.dg2?.imageColorSpace}"); + print("DG2 imageData: ${mrtdData.dg2?.imageData}"); + print("DG2 imageHeight: ${mrtdData.dg2?.imageHeight}"); + print("DG2 imageType: ${mrtdData.dg2?.imageType}"); + print("DG2 imageWidth: ${mrtdData.dg2?.imageWidth}"); + print("DG2 nrFeaturePoints: ${mrtdData.dg2?.nrFeaturePoints}"); + print("DG2 numberOfFacialImages: ${mrtdData.dg2?.numberOfFacialImages}"); + print("DG2 lengthOfRecord: ${mrtdData.dg2?.lengthOfRecord}"); + print("DG2 poseAngle: ${mrtdData.dg2?.poseAngle}"); + print("DG2 poseAngleUncertainty: ${mrtdData.dg2?.poseAngleUncertainty}"); + print("DG2 quality: ${mrtdData.dg2?.quality}"); + print("DG2 sourceType: ${mrtdData.dg2?.sourceType}"); + print("DG2 versionNumber: ${mrtdData.dg2?.versionNumber}"); + print("DG2 tag: ${mrtdData.dg2?.tag}"); + print("DG2 sfi: ${mrtdData.dg2?.sfi}"); + } + + // To read DG3 and DG4 session has to be established with CVCA certificate (not supported). + // if(mrtdData.com!.dgTags.contains(EfDG3.TAG)) { + // mrtdData.dg3 = await passport.readEfDG3(); + // } + + // if(mrtdData.com!.dgTags.contains(EfDG4.TAG)) { + // mrtdData.dg4 = await passport.readEfDG4(); + // } + + if (mrtdData.com!.dgTags.contains(EfDG5.TAG)) { + mrtdData.dg5 = await passport.readEfDG5(); + } + + if (mrtdData.com!.dgTags.contains(EfDG6.TAG)) { + mrtdData.dg6 = await passport.readEfDG6(); + } + + if (mrtdData.com!.dgTags.contains(EfDG7.TAG)) { + mrtdData.dg7 = await passport.readEfDG7(); + } + + if (mrtdData.com!.dgTags.contains(EfDG8.TAG)) { + mrtdData.dg8 = await passport.readEfDG8(); + } + + if (mrtdData.com!.dgTags.contains(EfDG9.TAG)) { + mrtdData.dg9 = await passport.readEfDG9(); + } + + if (mrtdData.com!.dgTags.contains(EfDG10.TAG)) { + mrtdData.dg10 = await passport.readEfDG10(); + } + + if (mrtdData.com!.dgTags.contains(EfDG11.TAG)) { + mrtdData.dg11 = await passport.readEfDG11(); + print("DG11 custodyInformation: ${mrtdData.dg11?.custodyInformation}"); + print("DG11 ersonalSummary: ${mrtdData.dg11?.ersonalSummary}"); + print("DG11 fullDateOfBirth: ${mrtdData.dg11?.fullDateOfBirth}"); + print("DG11 nameOfHolder: ${mrtdData.dg11?.nameOfHolder}"); + print("DG11 otherNames: ${mrtdData.dg11?.otherNames}"); + print("DG11 otherValidTDNumbers: ${mrtdData.dg11?.otherValidTDNumbers}"); + print("DG11 permanentAddress: ${mrtdData.dg11?.permanentAddress}"); + print("DG11 personalNumber: ${mrtdData.dg11?.personalNumber}"); + print("DG11 placeOfBirth: ${mrtdData.dg11?.placeOfBirth}"); + print("DG11 profession: ${mrtdData.dg11?.profession}"); + print("DG11 proofOfCitizenship: ${mrtdData.dg11?.proofOfCitizenship}"); + print("DG11 telephone: ${mrtdData.dg11?.telephone}"); + print("DG11 title: ${mrtdData.dg11?.title}"); + } + + if (mrtdData.com!.dgTags.contains(EfDG12.TAG)) { + mrtdData.dg12 = await passport.readEfDG12(); + print("DG12 dateOfIssue: ${mrtdData.dg12?.dateOfIssue}"); + print("DG12 issuingAuthority: ${mrtdData.dg12?.issuingAuthority}"); + } + + if (mrtdData.com!.dgTags.contains(EfDG13.TAG)) { + mrtdData.dg13 = await passport.readEfDG13(); + } + + if (mrtdData.com!.dgTags.contains(EfDG14.TAG)) { + mrtdData.dg14 = await passport.readEfDG14(); + } + + if (mrtdData.com!.dgTags.contains(EfDG15.TAG)) { + mrtdData.dg15 = await passport.readEfDG15(); + print("DG12 issuingAuthority: ${mrtdData.dg15?.aaPublicKey}"); + _nfc.setIosAlertMessage(formatProgressMsg("Doing AA ...", 60)); + mrtdData.aaSig = await passport.activeAuthenticate(Uint8List(8)); + } + + if (mrtdData.com!.dgTags.contains(EfDG16.TAG)) { + mrtdData.dg16 = await passport.readEfDG16(); + } + + _nfc.setIosAlertMessage(formatProgressMsg("Reading EF.SOD ...", 80)); + mrtdData.sod = await passport.readEfSOD(); + + setState(() { + _mrtdData = mrtdData; + }); + + setState(() { + _alertMessage = ""; + }); + } on Exception catch (e) { + final se = e.toString().toLowerCase(); + String alertMsg = "An error has occurred while reading Passport!"; + if (e is PassportError) { + if (se.contains("security status not satisfied")) { + alertMsg = + "Failed to initiate session with passport.\nCheck input data!"; + } + print("PassportError: ${e.message}"); + } else { + print("An exception was encountered while trying to read Passport: $e"); + } + + if (se.contains('timeout')) { + alertMsg = "Timeout while waiting for Passport tag"; + } else if (se.contains("tag was lost")) { + alertMsg = "Tag was lost. Please try again!"; + } else if (se.contains("invalidated by user")) { + alertMsg = ""; + } + + setState(() { + _alertMessage = alertMsg; + }); + } finally { + if (_alertMessage.isNotEmpty) { + await _nfc.disconnect(iosErrorMessage: _alertMessage); + } else { + await _nfc.disconnect( + iosAlertMessage: formatProgressMsg("Finished", 100)); + } + setState(() { + _isReading = false; + }); + } + } + + void _buttonPressed() async { + String _can = ""; + print("Button pressed"); + //Check on what tab we are + if (true) { + //DBA tab + // String errorText = ""; + // if (_doe.text.isEmpty) { + // errorText += "Please enter date of expiry!\n"; + // } + // if (_dob.text.isEmpty) { + // errorText += "Please enter date of birth!\n"; + // } + // if (_docNumber.text.isEmpty) { + // errorText += "Please enter passport number!"; + // } + + // setState(() { + // _alertMessage = errorText; + // }); + // //If there is an error, just jump out of the function + // if (errorText.isNotEmpty) return; + + final bacKeySeed = DBAKey(id, dateOfBirth, dateOfExpiry, paceMode: true); + _readMRTD(accessKey: bacKeySeed, isPace: true); + } else { + // PACE tab + // String errorText = ""; + // if (_can.isEmpty) { + // errorText = "Please enter CAN number!"; + // } else if (_can.text.length != 6) { + // errorText = "CAN number must be exactly 6 digits long!"; + // } + + // setState(() { + // _alertMessage = errorText; + // }); + // //If there is an error, just jump out of the function + // if (errorText.isNotEmpty) return; + + // final canKeySeed = CanKey(_can.text); + final canKeySeed = CanKey(id); + _readMRTD(accessKey: canKeySeed, isPace: true); + } + } +} + +class MrtdData { + EfCardAccess? cardAccess; + EfCardSecurity? cardSecurity; + EfCOM? com; + EfSOD? sod; + EfDG1? dg1; + EfDG2? dg2; + EfDG3? dg3; + EfDG4? dg4; + EfDG5? dg5; + EfDG6? dg6; + EfDG7? dg7; + EfDG8? dg8; + EfDG9? dg9; + EfDG10? dg10; + EfDG11? dg11; + EfDG12? dg12; + EfDG13? dg13; + EfDG14? dg14; + EfDG15? dg15; + EfDG16? dg16; + Uint8List? aaSig; + bool? isPACE; + bool? isDBA; +} + +final Map dgTagToString = { + EfDG1.TAG: 'EF.DG1', + EfDG2.TAG: 'EF.DG2', + EfDG3.TAG: 'EF.DG3', + EfDG4.TAG: 'EF.DG4', + EfDG5.TAG: 'EF.DG5', + EfDG6.TAG: 'EF.DG6', + EfDG7.TAG: 'EF.DG7', + EfDG8.TAG: 'EF.DG8', + EfDG9.TAG: 'EF.DG9', + EfDG10.TAG: 'EF.DG10', + EfDG11.TAG: 'EF.DG11', + EfDG12.TAG: 'EF.DG12', + EfDG13.TAG: 'EF.DG13', + EfDG14.TAG: 'EF.DG14', + EfDG15.TAG: 'EF.DG15', + EfDG16.TAG: 'EF.DG16' +}; diff --git a/lib/screens/notifications_screen.dart b/lib/screens/notifications_screen.dart new file mode 100644 index 0000000..e539e23 --- /dev/null +++ b/lib/screens/notifications_screen.dart @@ -0,0 +1,57 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; + +class NotificationsScreen extends StatelessWidget { + const NotificationsScreen({super.key}); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const CustomAppBar( + title: "الإشعارات", + ), + body: SafeArea( + child: ListView.separated( + padding: const EdgeInsets.all(20), + itemCount: 5, + separatorBuilder: (context, index) => const SizedBox(height: 10), + itemBuilder: (context, index) => InkWell( + child: Container( + // padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 15), + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(10), + border: Border.all( + color: AppTheme.textColor, + width: 1, + ), + ), + child: ListTile( + title: AutoSizeText( + "تم تحديث حالة الطلب", + style: Theme.of(context).textTheme.bodyLarge, + ), + subtitle: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + AutoSizeText( + "تم تحديث حالة الطلب الخاص بك الى قيد المراجعة", + style: Theme.of(context).textTheme.bodySmall, + textAlign: TextAlign.right, + ), + AutoSizeText( + "2024/12/12", + style: Theme.of(context).textTheme.bodySmall, + textAlign: TextAlign.right, + ), + ], + ), + ) + ), + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/order_details_screen.dart b/lib/screens/order_details_screen.dart new file mode 100644 index 0000000..7c21791 --- /dev/null +++ b/lib/screens/order_details_screen.dart @@ -0,0 +1,400 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/face_detection_screen.dart'; +import 'package:gascom/screens/payment_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; +import 'package:persistent_bottom_nav_bar_v2/persistent_bottom_nav_bar_v2.dart'; + +class OrderDetailsScreen extends StatefulWidget { + const OrderDetailsScreen({super.key}); + + @override + State createState() => _OrderDetailsScreenState(); +} + +class _OrderDetailsScreenState extends State { + + int activeStep = 3; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: CustomAppBar( + title: "رقم الطلب: 67895435", + ), + body: ListView( + padding: const EdgeInsets.symmetric(horizontal: 20), + children: [ + const SizedBox(height: 20), + AutoSizeText( + "حالة الطلب", + minFontSize: 10, + style: Theme.of(context).textTheme.bodyLarge, + ), + const SizedBox(height: 10), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(width: 15), + activeStep > 0 ? const Padding( + padding: EdgeInsets.symmetric(horizontal: 6), + child: Icon( + Icons.check_rounded, + size: 26, + color: AppTheme.yellowColor, + ), + ) : const SizedBox(width: 40,), + Expanded( + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + AutoSizeText( + "مراجعة الطلب من قبل لجنة الطاقة", + minFontSize: 10, + style: Theme.of(context).textTheme.bodyMedium?.copyWith( + color: activeStep == 0 + ? AppTheme.textColor + : activeStep > 0 + ? AppTheme.yellowColor + : AppTheme.textColor.withOpacity(0.6) + ), + ), + if (activeStep > 0) ...[ + const SizedBox(height: 5), + AutoSizeText( + "2024/02/06", + minFontSize: 10, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: AppTheme.yellowColor, + ), + ), + ] + ], + ), + ), + ] + ), + const SizedBox(height: 5), + SizedBox( + height: 40, + child: Row( + children: [ + const SizedBox(width: 40), + VerticalDivider( + color: activeStep > 0 ? AppTheme.textColor : AppTheme.textColor.withOpacity(0.6), + thickness: 1, + width: 20, + ), + ], + ), + ), + const SizedBox(height: 5), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(width: 15), + activeStep > 1 ? const Padding( + padding: EdgeInsets.symmetric(horizontal: 6), + child: Icon( + Icons.check_rounded, + size: 26, + color: AppTheme.yellowColor, + ), + ) : const SizedBox(width: 40,), + Expanded( + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + AutoSizeText( + "مراجعة الطلب من قبل لجنة الطاقة", + minFontSize: 10, + style: Theme.of(context).textTheme.bodyMedium?.copyWith( + color: activeStep == 1 + ? AppTheme.textColor + : activeStep > 1 + ? AppTheme.yellowColor + : AppTheme.textColor.withOpacity(0.6) + ), + ), + if (activeStep > 1) ...[ + const SizedBox(height: 5), + AutoSizeText( + "2024/02/06", + minFontSize: 10, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: AppTheme.yellowColor, + ), + ), + ] + ], + ), + ), + ] + ), + const SizedBox(height: 5), + SizedBox( + height: 40, + child: Row( + children: [ + const SizedBox(width: 40), + VerticalDivider( + color: activeStep > 1 ? AppTheme.textColor : AppTheme.textColor.withOpacity(0.6), + thickness: 1, + width: 20, + ), + ], + ), + ), + const SizedBox(height: 5), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(width: 15), + activeStep > 2 ? const Padding( + padding: EdgeInsets.symmetric(horizontal: 6), + child: Icon( + Icons.check_rounded, + size: 26, + color: AppTheme.yellowColor, + ), + ) : const SizedBox(width: 40,), + Expanded( + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + AutoSizeText( + "مراجعة الطلب من قبل لجنة الطاقة", + minFontSize: 10, + style: Theme.of(context).textTheme.bodyMedium?.copyWith( + color: activeStep == 2 + ? AppTheme.textColor + : activeStep > 2 + ? AppTheme.yellowColor + : AppTheme.textColor.withOpacity(0.6) + ), + ), + if (activeStep > 2) ...[ + const SizedBox(height: 5), + AutoSizeText( + "2024/02/06", + minFontSize: 10, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: AppTheme.yellowColor, + ), + ), + ] + ], + ), + ), + ] + ), + const SizedBox(height: 5), + SizedBox( + height: 40, + child: Row( + children: [ + const SizedBox(width: 40), + VerticalDivider( + color: activeStep > 2 ? AppTheme.textColor : AppTheme.textColor.withOpacity(0.6), + thickness: 1, + width: 20, + ), + ], + ), + ), + const SizedBox(height: 5), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(width: 15), + activeStep > 3 ? const Padding( + padding: EdgeInsets.symmetric(horizontal: 6), + child: Icon( + Icons.check_rounded, + size: 26, + color: AppTheme.yellowColor, + ), + ) : const SizedBox(width: 40,), + Expanded( + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + AutoSizeText( + "الدفع", + minFontSize: 10, + style: Theme.of(context).textTheme.bodyMedium?.copyWith( + color: activeStep == 3 + ? AppTheme.textColor + : activeStep > 3 + ? AppTheme.yellowColor + : AppTheme.textColor.withOpacity(0.6) + ), + ), + const SizedBox(height: 10), + if (activeStep > 3) ...[ + AutoSizeText( + "2024/02/06", + minFontSize: 10, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: AppTheme.yellowColor, + ), + ), + const SizedBox(height: 5), + ], + if (activeStep >= 3) ...[ + AutoSizeText( + "مبلغ الحصة", + minFontSize: 10, + textAlign: TextAlign.start, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: activeStep == 3 + ? AppTheme.textColor + : AppTheme.yellowColor + ), + ), + AutoSizeText( + "5000 لتر / كاز اويل", + minFontSize: 10, + textAlign: TextAlign.start, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: activeStep == 3 + ? AppTheme.textColor + : AppTheme.yellowColor + ), + ), + AutoSizeText( + "5,000,000 د.ع", + minFontSize: 10, + textAlign: TextAlign.start, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + fontWeight: FontWeight.w500, + color: activeStep == 3 + ? AppTheme.textColor + : AppTheme.yellowColor + ), + ), + ], + if (activeStep == 3) ...[ + const SizedBox(height: 10), + SizedBox( + width: 180, + child: AppButton( + onPressed: () { + pushScreenWithoutNavBar(context, PaymentScreen( + title: "دفع مبلغ الحصة", + onPaymentComplete: () { + pushScreenWithoutNavBar(context, FaceDetectionScreen()); + }, + )); + }, + label: "ادفع", + isElevated: true + ), + ) + ] + ], + ), + ), + ] + ), + const SizedBox(height: 10), + SizedBox( + height: 40, + child: Row( + children: [ + const SizedBox(width: 40), + VerticalDivider( + color: activeStep > 3 ? AppTheme.textColor : AppTheme.textColor.withOpacity(0.6), + thickness: 1, + width: 20, + ), + ], + ), + ), + const SizedBox(height: 5), + Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + const SizedBox(width: 15), + activeStep > 4 ? const Padding( + padding: EdgeInsets.symmetric(horizontal: 6), + child: Icon( + Icons.check_rounded, + size: 26, + color: AppTheme.yellowColor, + ), + ) : const SizedBox(width: 40,), + Expanded( + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + AutoSizeText( + "الاستلام", + minFontSize: 10, + style: Theme.of(context).textTheme.bodyMedium?.copyWith( + color: activeStep == 4 + ? AppTheme.textColor + : activeStep > 4 + ? AppTheme.yellowColor + : AppTheme.textColor.withOpacity(0.6) + ), + ), + const SizedBox(height: 5), + if (activeStep == 4) AutoSizeText( + "الطلب قيد التسليم", + minFontSize: 10, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: activeStep == 4 + ? AppTheme.textColor + : AppTheme.yellowColor, + ), + ), + if (activeStep > 4) ...[ + AutoSizeText( + "2024/02/13", + minFontSize: 10, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: activeStep == 4 + ? AppTheme.textColor + : AppTheme.yellowColor, + ), + ), + AutoSizeText( + "تم الاستلام", + minFontSize: 10, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: activeStep == 4 + ? AppTheme.textColor + : AppTheme.yellowColor, + ), + ), + ], + const SizedBox(height: 5), + if (activeStep == 4) ...[ + const SizedBox(height: 5), + SizedBox( + width: 180, + child: AppButton( + onPressed: () {}, + label: "تتبع الطلب", + isElevated: true + ), + ) + ] + ], + ), + ), + ] + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/otp_provider_screen.dart b/lib/screens/otp_provider_screen.dart new file mode 100644 index 0000000..db45af4 --- /dev/null +++ b/lib/screens/otp_provider_screen.dart @@ -0,0 +1,88 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; +import 'package:gascom/screens/otp_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; + +class OtpProviderScreen extends StatelessWidget { + const OtpProviderScreen({ + super.key, + required this.cardNumber, + }); + + final int cardNumber; + + @override + Widget build(BuildContext context) { + return Scaffold( + body: SafeArea( + child: ListView( + padding: const EdgeInsets.symmetric(horizontal: 25), + children: [ + const SizedBox(height: 150), + Center( + child: SizedBox( + width: MediaQuery.sizeOf(context).width * 0.6, + child: SvgPicture.asset( + "assets/svgs/logo.svg", + semanticsLabel: 'Home', + ), + ), + ), + const SizedBox(height: 50), + Center( + child: AutoSizeText( + "طريقة تاكيد الهوية", + style: Theme.of(context).textTheme.bodyLarge, + textAlign: TextAlign.center, + minFontSize: 8, + ), + ), + Center( + child: AutoSizeText( + "اختر طريقة ارسال رمز OTP لتسجيل الدخول", + style: Theme.of(context).textTheme.bodyLarge, + textAlign: TextAlign.center, + minFontSize: 8, + ), + ), + const SizedBox(height: 35), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 200, + child: AppButton( + onPressed: () { + // TODO: Navigate to OTP Screen + Navigator.push(context, MaterialPageRoute(builder: (context) => const OtpScreen(isSms: true,))); + }, + label: "SMS", + isElevated: false + ), + ), + ], + ), + const SizedBox(height: 8), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 200, + child: AppButton( + onPressed: () { + // TODO: Navigate to OTP Screen + Navigator.push(context, MaterialPageRoute(builder: (context) => const OtpScreen(isSms: false,))); + }, + label: "Whatsapp", + isElevated: false + ), + ), + ], + ), + ], + ), + ) + ); + } +} \ No newline at end of file diff --git a/lib/screens/otp_screen.dart b/lib/screens/otp_screen.dart new file mode 100644 index 0000000..b20eb28 --- /dev/null +++ b/lib/screens/otp_screen.dart @@ -0,0 +1,77 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/widgets/bottom_nav.dart'; +import 'package:pinput/pinput.dart'; + +class OtpScreen extends StatelessWidget { + const OtpScreen({ + super.key, + required this.isSms, + }); + + final bool isSms; + + @override + Widget build(BuildContext context) { + return Scaffold( + body: SafeArea( + child: ListView( + padding: const EdgeInsets.symmetric(horizontal: 25), + children: [ + const SizedBox(height: 150), + Center( + child: SizedBox( + width: MediaQuery.sizeOf(context).width * 0.6, + child: SvgPicture.asset( + "assets/svgs/logo.svg", + semanticsLabel: 'Home', + ), + ), + ), + const SizedBox(height: 80), + Center( + child: AutoSizeText( + "يرجى ادخال رمز OTP", + style: Theme.of(context).textTheme.bodyLarge, + textAlign: TextAlign.center, + minFontSize: 8, + ), + ), + const SizedBox(height: 35), + Container( + padding: const EdgeInsets.symmetric(vertical: 10, horizontal: 6), + decoration: BoxDecoration( + // add a rounded border radius to the container + borderRadius: BorderRadius.circular(40), + border: Border.all( + color: AppTheme.textColor, + width: 2, + ), + ), + child: Directionality( + textDirection: TextDirection.ltr, + child: Pinput( + length: 6, + defaultPinTheme: PinTheme( + width: 30, + height: 35, + textStyle: Theme.of(context).textTheme.bodyLarge, + margin: const EdgeInsets.symmetric(horizontal: 5), + decoration: BoxDecoration( + border: Border.all(width: 0, color: Colors.transparent), + ), + ), + onCompleted: (value) { + Navigator.pushAndRemoveUntil(context, + MaterialPageRoute(builder: (context) => const BottomNav()), (_) => false); + }, + ), + ), + ), + ], + ), + )); + } +} diff --git a/lib/screens/pay_monthly_gas.dart b/lib/screens/pay_monthly_gas.dart new file mode 100644 index 0000000..d74092d --- /dev/null +++ b/lib/screens/pay_monthly_gas.dart @@ -0,0 +1,136 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/payment_screen.dart'; +import 'package:gascom/screens/success_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; +import 'package:persistent_bottom_nav_bar_v2/persistent_bottom_nav_bar_v2.dart'; + +class PayMonthlyGas extends StatelessWidget { + const PayMonthlyGas({super.key}); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: CustomAppBar( + title: "دفع رسوم تقديم الطلب", + ), + body: SafeArea( + child: ListView( + padding: const EdgeInsets.all(20), + children: [ + AutoSizeText( + "طلب حصة كاز اويل ", + style: Theme.of(context).textTheme.bodyLarge, + ), + const SizedBox(height: 20), + + Row( + children: [ + Expanded( + child: AutoSizeText( + "حجم الحصة", + style: Theme.of(context).textTheme.bodyMedium, + ), + ), + const SizedBox(width: 5,), + AutoSizeText( + "1000 لتر", + style: Theme.of(context).textTheme.bodyMedium, + ), + ], + ), + const SizedBox(height: 10), + + Row( + children: [ + Expanded( + child: AutoSizeText( + "تاريخ الطلب", + style: Theme.of(context).textTheme.bodyMedium, + ), + ), + const SizedBox(width: 5,), + AutoSizeText( + "03/08/2024", + style: Theme.of(context).textTheme.bodyMedium, + ), + ], + ), + const SizedBox(height: 10), + + Row( + children: [ + Expanded( + child: AutoSizeText( + "رسوم تقديم الطلب", + style: Theme.of(context).textTheme.bodyMedium, + ), + ), + const SizedBox(width: 5,), + AutoSizeText( + "25,000 د.ع", + style: Theme.of(context).textTheme.bodyMedium, + ), + ], + ), + const SizedBox(height: 15), + + Row( + children: [ + SizedBox( + width: MediaQuery.sizeOf(context).width * 0.5, + child: const Divider( + color: AppTheme.yellowColor, + thickness: 1, + height: 15, + ), + ), + ], + ), + const SizedBox(height: 15), + + Row( + children: [ + Expanded( + child: AutoSizeText( + "دفع رسوم تقديم الطلب", + style: Theme.of(context).textTheme.bodyMedium, + ), + ), + const SizedBox(width: 5,), + AutoSizeText( + "25,000 د.ع", + style: Theme.of(context).textTheme.bodyMedium, + ), + ], + ), + const SizedBox(height: 50), + + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: 200, + child: AppButton( + onPressed: () { + pushScreenWithoutNavBar(context, PaymentScreen( + title: "", + onPaymentComplete: () { + pushScreenWithoutNavBar(context, const SuccessScreen(title: "تم تقديم الطلب بنجاح", subtitle: "يمكنك متابعة اجراءات المراجعة والتدقيق من خلال نافذة تتبع الطلبات")); + }, + )); + }, + label: "ادفع", + isElevated: true, + ), + ) + ], + ) + ], + ) + ), + ); + } +} \ No newline at end of file diff --git a/lib/screens/payment_screen.dart b/lib/screens/payment_screen.dart new file mode 100644 index 0000000..ed21918 --- /dev/null +++ b/lib/screens/payment_screen.dart @@ -0,0 +1,252 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/utils/text_field_4_space_formatter.dart'; +import 'package:gascom/utils/text_field_date_formatter.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/app_text_field.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; + +class PaymentScreen extends StatefulWidget { + const PaymentScreen({ + super.key, + required this.title, + required this.onPaymentComplete, + }); + + final String title; + final void Function() onPaymentComplete; + + @override + State createState() => _PaymentScreenState(); +} + +class _PaymentScreenState extends State { + TextEditingController nameController = TextEditingController(); + TextEditingController cardNumberController = TextEditingController(); + TextEditingController expireController = TextEditingController(); + TextEditingController cvvController = TextEditingController(); + + bool checkBoxValue = false; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: const CustomAppBar(), + body: SafeArea( + child: ListView( + padding: const EdgeInsets.all(20), + children: [ + AutoSizeText( + widget.title, + style: Theme.of(context).textTheme.bodyLarge, + ), + const SizedBox(height: 20), + Container( + margin: const EdgeInsets.symmetric(horizontal: 5), + padding: const EdgeInsets.all(15), + // width: double.infinity, + decoration: BoxDecoration( + color: AppTheme.textColor, + borderRadius: BorderRadius.circular(24), + ), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + AutoSizeText( + "5,000,000 د.ع", + style: Theme.of(context).textTheme.bodyLarge?.copyWith( + fontWeight: FontWeight.bold, + color: AppTheme.blackColor), + ), + const SizedBox( + height: 2, + ), + AutoSizeText( + "مبلغ حصة كاز اويل", + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: AppTheme.blackColor, + fontWeight: FontWeight.w400), + ), + const SizedBox(height: 2), + const Divider( + color: Colors.grey, + thickness: 1, + height: 30, + ), + AutoSizeText( + "الاسم على البطاقة", + style: Theme.of(context).textTheme.bodyMedium?.copyWith( + color: AppTheme.blackColor, + ), + ), + const SizedBox(height: 5), + AppTextField( + fillColor: Color(0xFFCBCBCB), + isFilled: true, + controller: nameController, + keyboardType: TextInputType.text, + ), + const SizedBox(height: 10), + AutoSizeText( + "رقم البطاقة", + style: Theme.of(context).textTheme.bodyMedium?.copyWith( + color: AppTheme.blackColor, + ), + ), + const SizedBox(height: 5), + Directionality( + textDirection: TextDirection.ltr, + child: AppTextField( + fillColor: Color(0xFFCBCBCB), + isFilled: true, + controller: cardNumberController, + keyboardType: TextInputType.number, + isCentered: true, + maxCharacters: 19, + inputFormatters: [ + TextField4SpaceFormatter(), + ], + ), + ), + const SizedBox(height: 10), + SizedBox( + height: 80, + width: double.infinity, + child: Row( + children: [ + Expanded( + flex: 4, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + AutoSizeText( + "انتهاء الصلاحية", + style: Theme.of(context) + .textTheme + .bodyMedium + ?.copyWith( + color: AppTheme.blackColor, + ), + ), + const SizedBox(height: 5), + Directionality( + textDirection: TextDirection.ltr, + child: AppTextField( + fillColor: Color(0xFFCBCBCB), + isFilled: true, + controller: expireController, + keyboardType: TextInputType.number, + isCentered: true, + maxCharacters: 5, + inputFormatters: [ + TextFieldDateFormatter(), + ], + ), + ), + ], + ), + ), + const SizedBox( + width: 10, + ), + Expanded( + flex: 3, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + AutoSizeText( + "رقم CVV", + style: Theme.of(context) + .textTheme + .bodyMedium + ?.copyWith( + color: AppTheme.blackColor, + ), + ), + const SizedBox(height: 5), + Directionality( + textDirection: TextDirection.ltr, + child: AppTextField( + fillColor: Color(0xFFCBCBCB), + isFilled: true, + controller: cvvController, + keyboardType: TextInputType.number, + isCentered: true, + maxCharacters: 3, + ), + ), + ], + ), + ), + ], + ), + ), + const SizedBox(height: 10), + Row( + children: [ + Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(6), + border: Border.all( + color: Colors.grey, + width: 1, + ), + ), + child: Container( + margin: const EdgeInsets.all(6), + width: 12, + height: 12, + child: Checkbox( + value: checkBoxValue, + onChanged: handleCheckBoxChange, + checkColor: Colors.grey, + activeColor: Colors.grey, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(4), + ), + side: const BorderSide( + color: Colors.grey, + width: 1, + ), + ), + ), + ), + const SizedBox( + width: 8, + ), + AutoSizeText( + "اوافق على القوانين والاحكام", + style: + Theme.of(context).textTheme.bodyMedium?.copyWith( + color: AppTheme.blackColor, + ), + ), + ], + ), + const SizedBox(height: 15), + Row(children: [ + Expanded( + child: AppButton( + onPressed: widget.onPaymentComplete, + label: "تاكيد", + isElevated: true, + color: AppTheme.yellowColor, + ), + ), + ]), + ], + ), + ) + ], + ), + )); + } + + void handleCheckBoxChange(bool? value) { + setState(() { + checkBoxValue = value!; + }); + } +} diff --git a/lib/screens/service_fees_screen.dart b/lib/screens/service_fees_screen.dart new file mode 100644 index 0000000..d86eab2 --- /dev/null +++ b/lib/screens/service_fees_screen.dart @@ -0,0 +1,68 @@ +import 'package:flutter/material.dart'; +import 'package:gascom/widgets/custom_app_bar.dart'; + +class ServiceFeesScreen extends StatelessWidget { + const ServiceFeesScreen({super.key}); + + final List> fees = const [ + { + "service": "رسوم طلب حصة كاز اويل", + "price": "25,000 د.ع", + }, + { + "service": "رسوم توصيل الحصة", + "price": "60,000 د.ع", + }, + { + "service": "سعر 1000 لتر كاز اويل", + "price": "400,000 د.ع", + }, + { + "service": "رسوم تحويل موقع", + "price": "مجاناً", + }, + { + "service": "رسوم تبديل محرك", + "price": "مجاناً", + }, + { + "service": "رسوم تجديد دفتر", + "price": "مجاناً", + }, + { + "service": "رسوم تغيير مخول", + "price": "مجاناً", + }, + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: CustomAppBar( + title: " رسوم خدمات كازكم", + ), + body: SafeArea( + child: ListView.separated( + itemCount: fees.length, + padding: const EdgeInsets.all(20), + separatorBuilder: (context, index) => const SizedBox(height: 10), + itemBuilder: (context, index) => Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded( + child: Text( + fees[index]["service"]!, + style: Theme.of(context).textTheme.bodyMedium, + ), + ), + Text( + fees[index]["price"]!, + style: Theme.of(context).textTheme.bodyMedium, + ), + ], + ), + ), + ), + ); + } +} diff --git a/lib/screens/success_screen.dart b/lib/screens/success_screen.dart new file mode 100644 index 0000000..17512ec --- /dev/null +++ b/lib/screens/success_screen.dart @@ -0,0 +1,68 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:gascom/widgets/bottom_nav.dart'; + +class SuccessScreen extends StatelessWidget { + const SuccessScreen({ + super.key, + required this.title, + required this.subtitle, + }); + + final String title; + final String subtitle; + + @override + Widget build(BuildContext context) { + return Scaffold( + body: SafeArea( + child: Padding( + padding: const EdgeInsets.all(20), + child: Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Icon( + Icons.check_rounded, + size: 100.0, + color: Theme.of(context).textTheme.bodyLarge?.color, + ), + const SizedBox(height: 20.0), + AutoSizeText( + title, + maxLines: 2, + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.titleLarge, + ), + const SizedBox(height: 10.0), + AutoSizeText( + subtitle, + maxLines: 2, + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.bodyMedium, + ), + const SizedBox(height: 40.0), + SizedBox( + width: 200, + child: AppButton( + onPressed: () { + Navigator.pushAndRemoveUntil( + context, + MaterialPageRoute(builder: (context) => const BottomNav()), + (_) => false + ); + }, + label: "تم", + isElevated: true, + ), + ), + const SizedBox(height: 40.0), + ], + ), + ), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/utils/text_field_4_space_formatter.dart b/lib/utils/text_field_4_space_formatter.dart new file mode 100644 index 0000000..d5ce12c --- /dev/null +++ b/lib/utils/text_field_4_space_formatter.dart @@ -0,0 +1,23 @@ +import 'package:flutter/services.dart'; + +class TextField4SpaceFormatter extends TextInputFormatter { + @override + TextEditingValue formatEditUpdate( + TextEditingValue oldValue, + TextEditingValue newValue, + ) { + final text = newValue.text.replaceAll(' ', ''); + final buffer = StringBuffer(); + for (int i = 0; i < text.length; i++) { + buffer.write(text[i]); + if ((i + 1) % 4 == 0 && i + 1 != text.length) { + buffer.write(' '); + } + } + final formattedText = buffer.toString(); + return newValue.copyWith( + text: formattedText, + selection: TextSelection.collapsed(offset: formattedText.length), + ); + } +} \ No newline at end of file diff --git a/lib/utils/text_field_date_formatter.dart b/lib/utils/text_field_date_formatter.dart new file mode 100644 index 0000000..2c96508 --- /dev/null +++ b/lib/utils/text_field_date_formatter.dart @@ -0,0 +1,23 @@ +import 'package:flutter/services.dart'; + +class TextFieldDateFormatter extends TextInputFormatter { + @override + TextEditingValue formatEditUpdate( + TextEditingValue oldValue, + TextEditingValue newValue, + ) { + final text = newValue.text.replaceAll('/', ''); + final buffer = StringBuffer(); + for (int i = 0; i < text.length; i++) { + buffer.write(text[i]); + if (i == 1 && i + 1 != text.length) { + buffer.write('/'); + } + } + final formattedText = buffer.toString(); + return newValue.copyWith( + text: formattedText, + selection: TextSelection.collapsed(offset: formattedText.length), + ); + } +} \ No newline at end of file diff --git a/lib/widgets/app_button.dart b/lib/widgets/app_button.dart new file mode 100644 index 0000000..afc083f --- /dev/null +++ b/lib/widgets/app_button.dart @@ -0,0 +1,100 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; + +class AppButton extends StatelessWidget { + const AppButton({ + 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 ?? AppTheme.textColor), + ), + child: isLoading + ? const Spinner(color: AppTheme.primaryColor) + : Row( + children: [ + Expanded( + child: AutoSizeText( + label, + minFontSize: 8, + maxFontSize: 14, + maxLines: 1, + textAlign: TextAlign.center, + style: textStyle ?? Theme.of(context).textTheme.bodyLarge?.copyWith( + color: AppTheme.primaryColor, + ) + ), + ), + ], + ), + ) + : 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 ?? AppTheme.textColor, + )) + ), + child: isLoading + ? Spinner(color: color ?? AppTheme.textColor,) + : Row( + children: [ + Expanded( + child: AutoSizeText( + label, + minFontSize: 8, + maxFontSize: 14, + maxLines: 1, + textAlign: TextAlign.center, + style: textStyle ?? Theme.of(context).textTheme.bodyLarge?.copyWith( + color: AppTheme.textColor, + ) + ), + ), + ], + ), + ); + } +} + +class Spinner extends StatelessWidget { + const Spinner({ + super.key, + required this.color, + }); + + final Color? color; + + @override + Widget build(BuildContext context) { + return SizedBox( + width: 20, + height: 20, + child: CircularProgressIndicator( + strokeWidth: 3, + color: color ?? Colors.white, + ), + ); + } +} \ No newline at end of file diff --git a/lib/widgets/app_text_field.dart b/lib/widgets/app_text_field.dart new file mode 100644 index 0000000..8883658 --- /dev/null +++ b/lib/widgets/app_text_field.dart @@ -0,0 +1,77 @@ +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:gascom/constants/app_theme.dart'; + +class AppTextField extends StatelessWidget { + const AppTextField( + {super.key, + required this.controller, + required this.keyboardType, + this.onChanged, + this.errorText, + this.fillColor, + this.textColor, + this.isFilled, + this.isCentered, + this.maxCharacters, + this.inputFormatters,}); + + final TextEditingController controller; + final TextInputType keyboardType; + final void Function(String)? onChanged; + final String? errorText; + final Color? fillColor; + final Color? textColor; + final bool? isFilled; + final bool? isCentered; + final int? maxCharacters; + final List? inputFormatters; + + @override + Widget build(BuildContext context) { + return SizedBox( + height: 40, + child: TextField( + controller: controller, + keyboardType: keyboardType, + onChanged: onChanged, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + fontWeight: FontWeight.w500, + color: textColor ?? const Color.fromARGB(255, 20, 20, 20), + ), + textAlign: isCentered ?? false ? TextAlign.center : TextAlign.start, + autocorrect: false, + inputFormatters: inputFormatters, + cursorColor: textColor ?? const Color.fromARGB(255, 20, 20, 20), + cursorRadius: const Radius.circular(10), + maxLength: maxCharacters, + decoration: InputDecoration( + counterText: "", + fillColor: fillColor ?? const Color.fromARGB(255, 20, 20, 20), + filled: isFilled ?? false, + contentPadding: + const EdgeInsets.symmetric(vertical: 5, horizontal: 20), + enabledBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(30), + borderSide: + const BorderSide(color: AppTheme.textColor, width: 1)), + focusedBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(30), + borderSide: + const BorderSide(color: AppTheme.textColor, width: 1)), + errorText: errorText, + errorStyle: Theme.of(context) + .textTheme + .bodyMedium + ?.copyWith(color: AppTheme.redColor), + errorBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(20), + borderSide: const BorderSide(color: AppTheme.redColor, width: 1)), + focusedErrorBorder: OutlineInputBorder( + borderRadius: BorderRadius.circular(20), + borderSide: const BorderSide(color: AppTheme.redColor, width: 1)), + ), + ), + ); + } +} diff --git a/lib/widgets/bottom_nav.dart b/lib/widgets/bottom_nav.dart new file mode 100644 index 0000000..8532025 --- /dev/null +++ b/lib/widgets/bottom_nav.dart @@ -0,0 +1,104 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/follow_order_screen.dart'; +import 'package:gascom/screens/generator_info_screen.dart'; +import 'package:gascom/screens/home_screen.dart'; +import 'package:persistent_bottom_nav_bar_v2/persistent_bottom_nav_bar_v2.dart'; + +class BottomNav extends StatelessWidget { + const BottomNav({ + super.key, + }); + + @override + Widget build(BuildContext context) { + return PersistentTabView( + controller: PersistentTabController(initialIndex: 0), + resizeToAvoidBottomInset: false, + navBarHeight: 70, + tabs: [ + tabConfig( + context, + const HomeScreen(), + "home", + "assets/svgs/home_filled.svg", + "assets/svgs/home.svg", + "Home Active", + "Home Inactive", + "الرئيسية", + ), + tabConfig( + context, + const GeneratorInfoScreen(), + "generator_info", + "assets/svgs/generator_filled.svg", + "assets/svgs/generator.svg", + "Generator Info Active", + "Generator Info Inactive", + "معلومات المولدة", + ), + tabConfig( + context, + const FollowOrderScreen(), + "follow_order", + "assets/svgs/van_filled.svg", + "assets/svgs/van.svg", + "Follow Order Active", + "Follow Order Inactive", + "تتبع الطلب", + ), + ], + navBarBuilder: (navBarConfig) => Style6BottomNavBar( + navBarConfig: navBarConfig, + navBarDecoration: NavBarDecoration( + color: AppTheme.secondaryColor, + padding: EdgeInsets.all(10), + boxShadow: [ + BoxShadow( + color: Colors.black.withOpacity(0.15), + blurRadius: 10, + spreadRadius: 1, + offset: const Offset(0, 0), + ), + ], + ), + ), + ); + } + + PersistentTabConfig tabConfig( + BuildContext context, + Widget screen, + String initialRoute, + String activeIcon, + String inactiveIcon, + String activeSemanticsLabel, + String inactiveSemanticsLabel, + String title, + ) { + return PersistentTabConfig( + screen: screen, + navigatorConfig: NavigatorConfig( + initialRoute: initialRoute, + ), + item: ItemConfig( + icon: Padding( + padding: const EdgeInsets.only(top: 4, left: 4, right: 4), + child: SvgPicture.asset( + activeIcon, + semanticsLabel: activeSemanticsLabel, + ), + ), + inactiveIcon: SvgPicture.asset( + inactiveIcon, + semanticsLabel: inactiveSemanticsLabel, + ), + activeForegroundColor: AppTheme.primaryColor, + inactiveForegroundColor: AppTheme.primaryColor, + textStyle: Theme.of(context).textTheme.bodySmall ?? TextStyle(), + title: title, + ) + ); + } +} \ No newline at end of file diff --git a/lib/widgets/custom_app_bar.dart b/lib/widgets/custom_app_bar.dart new file mode 100644 index 0000000..20c0b74 --- /dev/null +++ b/lib/widgets/custom_app_bar.dart @@ -0,0 +1,40 @@ +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; + +class CustomAppBar extends StatelessWidget implements PreferredSizeWidget { + const CustomAppBar({super.key, this.title}); + + final String? title; + + @override + Size get preferredSize => const Size.fromHeight(80); + + @override + Widget build(BuildContext context) { + return AppBar( + toolbarHeight: 80, + titleSpacing: 0, + backgroundColor: AppTheme.primaryColor, + surfaceTintColor: AppTheme.primaryColor, + title: Text( + title ?? "", + style: Theme.of(context).textTheme.titleLarge, + ), + leading: IconButton( + icon: const Icon(CupertinoIcons.back, color: AppTheme.textColor,), + onPressed: () { + Navigator.pop(context); + }, + ), + bottom: title == null ? null : PreferredSize( + preferredSize: const Size.fromHeight(1), + child: Container( + color: AppTheme.yellowColor, + height: 1, + margin: const EdgeInsets.symmetric(horizontal: 20), + ), + ), + ); + } +} \ No newline at end of file diff --git a/lib/widgets/fine_container.dart b/lib/widgets/fine_container.dart new file mode 100644 index 0000000..058882e --- /dev/null +++ b/lib/widgets/fine_container.dart @@ -0,0 +1,97 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/payment_screen.dart'; +import 'package:gascom/screens/success_screen.dart'; +import 'package:gascom/widgets/app_button.dart'; +import 'package:persistent_bottom_nav_bar_v2/persistent_bottom_nav_bar_v2.dart'; + +class FineContainer extends StatelessWidget { + const FineContainer({super.key}); + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 20), + decoration: BoxDecoration( + color: Colors.transparent, + borderRadius: BorderRadius.circular(10), + border: Border.all( + color: AppTheme.textColor, + width: 1, + ), + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded( + child: AutoSizeText( + "غرامة", + style: Theme.of(context).textTheme.bodySmall?.copyWith( + fontWeight: FontWeight.w600, + ), + ), + ), + AutoSizeText( + "2024/12/12", + style: Theme.of(context).textTheme.bodySmall, + ), + ], + ), + const SizedBox(height: 10), + AutoSizeText( + "200,000 د.ع", + style: Theme.of(context).textTheme.bodyLarge?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 15), + const Divider( + color: AppTheme.textColor, + height: 1, + thickness: 1, + ), + const SizedBox(height: 15), + AutoSizeText( + "مخالفة ساعات التشغيل والاطفاء", + style: Theme.of(context).textTheme.bodyMedium?.copyWith( + fontWeight: FontWeight.w600, + ), + ), + const SizedBox(height: 4), + AutoSizeText( + "يجب دفع الغرامة قبل تاريخ 01/09/2024 وبخلافه، لن يتم تزويدك باي حصة بعد هذا التاريخ", + style: Theme.of(context).textTheme.bodyMedium, + maxLines: 2, + ), + const SizedBox(height: 15), + Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + width: MediaQuery.of(context).size.width * 0.45, + child: AppButton( + onPressed: () { + pushScreenWithoutNavBar(context, + PaymentScreen( + title: "غرامات", + onPaymentComplete: () { + pushScreenWithoutNavBar(context, const SuccessScreen(title: "تم دفع الغرامة بنجاح", subtitle: "")); + } + ) + ); + }, + label: "دفع الغرامة", + isElevated: true, + ), + ), + ], + ) + ], + ), + ); + } +} \ No newline at end of file diff --git a/lib/widgets/home_grid_item.dart b/lib/widgets/home_grid_item.dart new file mode 100644 index 0000000..11c0b2c --- /dev/null +++ b/lib/widgets/home_grid_item.dart @@ -0,0 +1,55 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/flutter_svg.dart'; +import 'package:gascom/constants/app_theme.dart'; + +class HomeGridItem extends StatelessWidget { + const HomeGridItem({ + super.key, + required this.title, + required this.svgPath, + required this.onPressed, + }); + + final String title; + final String svgPath; + final void Function() onPressed; + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: onPressed, + child: Column( + // mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + AspectRatio( + aspectRatio: 1, + child: Container( + padding: const EdgeInsets.all(25), + decoration: BoxDecoration( + color: Colors.transparent, + borderRadius: BorderRadius.circular(11), + border: Border.all( + color: AppTheme.secondaryColor, + width: 2, + ), + ), + child: SvgPicture.asset( + svgPath, + semanticsLabel: title, + ), + ), + ), + // const SizedBox(height: 10,), + AutoSizeText( + title, + style: Theme.of(context).textTheme.bodyMedium, + minFontSize: 12, + maxLines: 2, + textAlign: TextAlign.center, + ), + ], + ), + ); + } +} diff --git a/lib/widgets/order_container.dart b/lib/widgets/order_container.dart new file mode 100644 index 0000000..6971ebc --- /dev/null +++ b/lib/widgets/order_container.dart @@ -0,0 +1,70 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; +import 'package:gascom/screens/order_details_screen.dart'; +import 'package:gascom/widgets/order_state_badge.dart'; +import 'package:persistent_bottom_nav_bar_v2/persistent_bottom_nav_bar_v2.dart'; + +class OrderContainer extends StatelessWidget { + const OrderContainer({ + super.key, + }); + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 15), + decoration: BoxDecoration( + color: AppTheme.cardColor, + borderRadius: BorderRadius.circular(10), + ), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Expanded( + child: AutoSizeText( + "2024/12/12", + style: Theme.of(context).textTheme.bodySmall, + ), + ), + const OrderStateBadge(state: "قيد المراجعة"), + ], + ), + const SizedBox(height: 8), + AutoSizeText( + "5000 لتر", + style: Theme.of(context).textTheme.bodyLarge?.copyWith( + fontWeight: FontWeight.bold, + ), + ), + const SizedBox(height: 2), + AutoSizeText( + "رقم الطلب: 67895435", + style: Theme.of(context).textTheme.bodySmall, + ), + const SizedBox(height: 4), + const Divider( + color: AppTheme.primaryColor, + thickness: 1, + height: 25, + ), + InkWell( + splashColor: AppTheme.primaryColor, + onTap: () { + pushScreenWithoutNavBar(context, OrderDetailsScreen()); + }, + child: Center( + child: AutoSizeText( + "اظهر التفاصيل", + style: Theme.of(context).textTheme.bodySmall, + ), + ), + ) + ], + ), + ); + } +} diff --git a/lib/widgets/order_state_badge.dart b/lib/widgets/order_state_badge.dart new file mode 100644 index 0000000..e8848cc --- /dev/null +++ b/lib/widgets/order_state_badge.dart @@ -0,0 +1,28 @@ +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; + +class OrderStateBadge extends StatelessWidget { + const OrderStateBadge({ + super.key, + required this.state, + }); + + final String state; + + @override + Widget build(BuildContext context) { + return Container( + padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 2), + decoration: BoxDecoration( + color: state == "قيد المراجعة" ? AppTheme.yellowColor : AppTheme.primaryColor, + borderRadius: BorderRadius.circular(20), + ), + child: Text( + state, + style: Theme.of(context).textTheme.bodySmall?.copyWith( + color: state == "قيد المراجعة" ? AppTheme.brownColor : AppTheme.textColor, + ), + ), + ); + } +} diff --git a/lib/widgets/text_container.dart b/lib/widgets/text_container.dart new file mode 100644 index 0000000..c510bf5 --- /dev/null +++ b/lib/widgets/text_container.dart @@ -0,0 +1,30 @@ +import 'package:auto_size_text/auto_size_text.dart'; +import 'package:flutter/material.dart'; +import 'package:gascom/constants/app_theme.dart'; + +class TextContainer extends StatelessWidget { + const TextContainer({super.key, required this.text}); + + final String text; + + @override + Widget build(BuildContext context) { + return Container( + width: double.infinity, + padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 20), + decoration: BoxDecoration( + color: Colors.transparent, + borderRadius: BorderRadius.circular(20), + border: Border.all( + color: AppTheme.textColor, + width: 1, + ), + ), + child: AutoSizeText( + text, + style: Theme.of(context).textTheme.bodySmall, + minFontSize: 8, + ), + ); + } +} \ No newline at end of file diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..c54ac3e --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,768 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + animated_custom_dropdown: + dependency: "direct main" + description: + name: animated_custom_dropdown + sha256: "5a72dc209041bb53f6c7164bc2e366552d5197cdb032b1c9b2c36e3013024486" + url: "https://pub.dev" + source: hosted + version: "3.1.1" + archive: + dependency: transitive + description: + name: archive + sha256: cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d + url: "https://pub.dev" + source: hosted + version: "3.6.1" + args: + dependency: transitive + description: + name: args + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 + url: "https://pub.dev" + source: hosted + version: "2.6.0" + 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" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + camerawesome: + dependency: "direct main" + description: + name: camerawesome + sha256: "3619d5605fb14ab72c815532c1d9f635512c75df07b5a742b60a9a4b03b6081e" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + carousel_slider: + dependency: transitive + description: + name: carousel_slider + sha256: "7b006ec356205054af5beaef62e2221160ea36b90fb70a35e4deacd49d0349ae" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + 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" + collection: + dependency: transitive + description: + name: collection + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" + source: hosted + version: "1.18.0" + colorfilter_generator: + dependency: transitive + description: + name: colorfilter_generator + sha256: ccc2995e440b1d828d55d99150e7cad64624f3cb4a1e235000de3f93cf10d35c + url: "https://pub.dev" + source: hosted + version: "0.0.8" + convert: + dependency: transitive + description: + name: convert + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + cross_file: + dependency: transitive + description: + name: cross_file + sha256: "7caf6a750a0c04effbb52a676dce9a4a592e10ad35c34d6d2d0e4811160d5670" + url: "https://pub.dev" + source: hosted + version: "0.3.4+2" + crypto: + dependency: transitive + description: + name: crypto + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + crypto_keys_plus: + dependency: transitive + description: + name: crypto_keys_plus + sha256: fbebe8a45c68cd3c8b1ad3145172cfa276a30d9bbe9a4bf4cc03efc32b9b7a00 + url: "https://pub.dev" + source: hosted + version: "0.4.0" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + diffie_hellman: + dependency: transitive + description: + name: diffie_hellman + sha256: cf88adea8d7c56ed145e95db87e61297c52d236c2faace48fbcb425a73ddeba6 + url: "https://pub.dev" + source: hosted + version: "0.1.2" + dmrtd: + dependency: "direct main" + description: + path: "." + ref: master + resolved-ref: "8ced7600fb9fd84f0824bfaddc2fcc7bff655a7f" + url: "https://github.com/ZeroPass/dmrtd.git" + source: git + version: "2.0.0" + easy_localization: + dependency: "direct main" + description: + name: easy_localization + sha256: fa59bcdbbb911a764aa6acf96bbb6fa7a5cf8234354fc45ec1a43a0349ef0201 + url: "https://pub.dev" + source: hosted + version: "3.0.7" + easy_logger: + dependency: transitive + description: + name: easy_logger + sha256: c764a6e024846f33405a2342caf91c62e357c24b02c04dbc712ef232bf30ffb7 + url: "https://pub.dev" + source: hosted + version: "0.0.2" + easy_stepper: + dependency: "direct main" + description: + name: easy_stepper + sha256: "63f66314a509ec690c8152a41288961fd96ba9e92ef184299f068a5e78bd16ad" + url: "https://pub.dev" + source: hosted + version: "0.8.5+1" + expandable: + dependency: transitive + description: + name: expandable + sha256: "9604d612d4d1146dafa96c6d8eec9c2ff0994658d6d09fed720ab788c7f5afc2" + url: "https://pub.dev" + source: hosted + version: "5.0.1" + 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: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + 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_localizations: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + flutter_nfc_kit: + dependency: transitive + description: + name: flutter_nfc_kit + sha256: fe0b86f4883e4a0ebeb6d1fbbc5a86123b95969a4d225bc5a760acda5e3f42e8 + url: "https://pub.dev" + source: hosted + version: "3.5.2" + flutter_svg: + dependency: "direct main" + description: + name: flutter_svg + sha256: "578bd8c508144fdaffd4f77b8ef2d8c523602275cd697cc3db284dbd762ef4ce" + url: "https://pub.dev" + source: hosted + version: "2.0.14" + 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" + go_router: + dependency: transitive + description: + name: go_router + sha256: "8ae664a70174163b9f65ea68dd8673e29db8f9095de7b5cd00e167c621f4fef5" + url: "https://pub.dev" + source: hosted + version: "14.6.0" + google_mlkit_commons: + dependency: "direct main" + description: + name: google_mlkit_commons + sha256: "7e9a6d6e66b44aa8cfe944bda9bc3346c52486dd890ca49e5bc98845cda40d7f" + url: "https://pub.dev" + source: hosted + version: "0.9.0" + google_mlkit_face_detection: + dependency: "direct main" + description: + name: google_mlkit_face_detection + sha256: "65988405c884fd84a4ccc8bded7b5e3e4c33362f6f4eaaa94818bdaaba7bab7d" + url: "https://pub.dev" + source: hosted + version: "0.12.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" + image: + dependency: transitive + description: + name: image + sha256: f31d52537dc417fdcde36088fdf11d191026fd5e4fae742491ebd40e5a8bea7d + url: "https://pub.dev" + source: hosted + version: "4.3.0" + intl: + dependency: transitive + description: + name: intl + sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + url: "https://pub.dev" + source: hosted + version: "0.19.0" + js: + dependency: transitive + description: + name: js + sha256: c1b2e9b5ea78c45e1a0788d29606ba27dc5f71f019f32ca5140f61ef071838cf + url: "https://pub.dev" + source: hosted + version: "0.7.1" + json_annotation: + dependency: transitive + description: + name: json_annotation + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" + url: "https://pub.dev" + source: hosted + version: "4.9.0" + 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" + logging: + dependency: transitive + description: + name: logging + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 + url: "https://pub.dev" + source: hosted + version: "1.3.0" + lottie: + dependency: transitive + description: + name: lottie + sha256: "7afc60865a2429d994144f7d66ced2ae4305fe35d82890b8766e3359872d872c" + url: "https://pub.dev" + source: hosted + version: "3.1.3" + 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" + matrix2d: + dependency: transitive + description: + name: matrix2d + sha256: "188718dd3bc2a31e372cfd0791b0f77f4f13ea76164147342cc378d9132949e7" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + ndef: + dependency: transitive + description: + name: ndef + sha256: "634d2b5c6f2c186e953218bac9905f3f5e1824b15e30bd1ed6e03a91cdbc7293" + url: "https://pub.dev" + source: hosted + version: "0.3.3" + nfc_manager: + dependency: "direct main" + description: + name: nfc_manager + sha256: f5be75e90f8f2bff3ee49fbd7ef65bdd4a86ee679c2412e71ab2846a8cff8c59 + url: "https://pub.dev" + source: hosted + version: "3.5.0" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + path_parsing: + dependency: transitive + description: + name: path_parsing + sha256: "883402936929eac138ee0a45da5b0f2c80f89913e6dc3bf77eb65b84b409c6ca" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + path_provider: + dependency: "direct main" + description: + name: path_provider + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: c464428172cb986b758c6d1724c603097febb8fb855aa265aeecc9280c294d4a + url: "https://pub.dev" + source: hosted + version: "2.2.12" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 + url: "https://pub.dev" + source: hosted + version: "2.4.0" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + persistent_bottom_nav_bar_v2: + dependency: "direct main" + description: + name: persistent_bottom_nav_bar_v2 + sha256: fcbb84757e598791b15321a314604e74719d098c51891b4c7555ae1dd901f582 + url: "https://pub.dev" + source: hosted + version: "5.3.1" + petitparser: + dependency: transitive + description: + name: petitparser + sha256: c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27 + url: "https://pub.dev" + source: hosted + version: "6.0.2" + pinput: + dependency: "direct main" + description: + name: pinput + sha256: "7bf9aa7d0eeb3da9f7d49d2087c7bc7d36cd277d2e94cc31c6da52e1ebb048d0" + url: "https://pub.dev" + source: hosted + version: "5.0.0" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + pointycastle: + dependency: transitive + description: + name: pointycastle + sha256: "4be0097fcf3fd3e8449e53730c631200ebc7b88016acecab2b0da2f0149222fe" + url: "https://pub.dev" + source: hosted + version: "3.9.1" + rxdart: + dependency: transitive + description: + name: rxdart + sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" + url: "https://pub.dev" + source: hosted + version: "0.28.0" + shared_preferences: + dependency: transitive + description: + name: shared_preferences + sha256: "95f9997ca1fb9799d494d0cb2a780fd7be075818d59f00c43832ed112b158a82" + url: "https://pub.dev" + source: hosted + version: "2.3.3" + shared_preferences_android: + dependency: transitive + description: + name: shared_preferences_android + sha256: "3b9febd815c9ca29c9e3520d50ec32f49157711e143b7a4ca039eb87e8ade5ab" + url: "https://pub.dev" + source: hosted + version: "2.3.3" + shared_preferences_foundation: + dependency: transitive + description: + name: shared_preferences_foundation + sha256: "07e050c7cd39bad516f8d64c455f04508d09df104be326d8c02551590a0d513d" + url: "https://pub.dev" + source: hosted + version: "2.5.3" + shared_preferences_linux: + dependency: transitive + description: + name: shared_preferences_linux + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_platform_interface: + dependency: transitive + description: + name: shared_preferences_platform_interface + sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_web: + dependency: transitive + description: + name: shared_preferences_web + sha256: d2ca4132d3946fec2184261726b355836a82c33d7d5b67af32692aff18a4684e + url: "https://pub.dev" + source: hosted + version: "2.4.2" + shared_preferences_windows: + dependency: transitive + description: + name: shared_preferences_windows + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + 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" + sprintf: + dependency: transitive + description: + name: sprintf + sha256: "1fc9ffe69d4df602376b52949af107d8f5703b77cda567c4d7d86a0693120f23" + url: "https://pub.dev" + source: hosted + version: "7.0.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" + tripledes_nullsafety: + dependency: transitive + description: + name: tripledes_nullsafety + sha256: "39589b5271e96f2abc592f046e14c3dbcd87bd140c1e6f10f4005e6fb0c28b68" + url: "https://pub.dev" + source: hosted + version: "1.0.3" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + universal_platform: + dependency: transitive + description: + name: universal_platform + sha256: "64e16458a0ea9b99260ceb5467a214c1f298d647c659af1bff6d3bf82536b1ec" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + uuid: + dependency: transitive + description: + name: uuid + sha256: a5be9ef6618a7ac1e964353ef476418026db906c4facdedaa299b7a2e71690ff + url: "https://pub.dev" + source: hosted + version: "4.5.1" + vector_graphics: + dependency: transitive + description: + name: vector_graphics + sha256: "773c9522d66d523e1c7b25dfb95cc91c26a1e17b107039cfe147285e92de7878" + url: "https://pub.dev" + source: hosted + version: "1.1.14" + vector_graphics_codec: + dependency: transitive + description: + name: vector_graphics_codec + sha256: "2430b973a4ca3c4dbc9999b62b8c719a160100dcbae5c819bae0cacce32c9cdb" + url: "https://pub.dev" + source: hosted + version: "1.1.12" + vector_graphics_compiler: + dependency: transitive + description: + name: vector_graphics_compiler + sha256: ab9ff38fc771e9ee1139320adbe3d18a60327370c218c60752068ebee4b49ab1 + url: "https://pub.dev" + source: hosted + version: "1.1.15" + 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: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb + url: "https://pub.dev" + source: hosted + version: "1.1.0" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + xml: + dependency: transitive + description: + name: xml + sha256: b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226 + url: "https://pub.dev" + source: hosted + version: "6.5.0" +sdks: + dart: ">=3.5.2 <4.0.0" + flutter: ">=3.24.0" diff --git a/pubspec.yaml b/pubspec.yaml new file mode 100644 index 0000000..d8c2428 --- /dev/null +++ b/pubspec.yaml @@ -0,0 +1,116 @@ +name: gascom +description: "An app to manage gas distribution." +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number is used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +# In Windows, build-name is used as the major, minor, and patch parts +# of the product and file versions while build-number is used as the build suffix. +version: 1.0.0+1 + +environment: + sdk: ^3.5.2 + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.8 + pinput: ^5.0.0 + persistent_bottom_nav_bar_v2: ^5.3.1 + flutter_svg: ^2.0.10+1 + easy_localization: ^3.0.7 + auto_size_text: ^3.0.0 + animated_custom_dropdown: ^3.1.1 + easy_stepper: ^0.8.5+1 + camerawesome: ^2.1.0 + path_provider: ^2.1.4 + google_mlkit_face_detection: ^0.12.0 + google_mlkit_commons: ^0.9.0 + nfc_manager: ^3.5.0 + dmrtd: + git: + url: https://github.com/ZeroPass/dmrtd.git + ref: master + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^4.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter packages. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + assets: + - assets/svgs/ + - assets/languages/ + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/to/resolution-aware-images + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/to/asset-from-package + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + fonts: + - family: NotoSansArabic + fonts: + - asset: assets/fonts/NotoSansArabic-Light.ttf + weight: 300 + - family: NotoSansArabic + fonts: + - asset: assets/fonts/NotoSansArabic-Regular.ttf + weight: 400 + - family: NotoSansArabic + fonts: + - asset: assets/fonts/NotoSansArabic-Medium.ttf + weight: 500 + - family: NotoSansArabic + fonts: + - asset: assets/fonts/NotoSansArabic-SemiBold.ttf + weight: 600 + - family: NotoSansArabic + fonts: + - asset: assets/fonts/NotoSansArabic-Bold.ttf + weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/to/font-from-package diff --git a/test/widget_test.dart b/test/widget_test.dart new file mode 100644 index 0000000..d4654bf --- /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:gascom/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); + }); +}