├── ios
├── Flutter
│ ├── Debug.xcconfig
│ ├── Release.xcconfig
│ └── AppFrameworkInfo.plist
├── Runner
│ ├── Runner-Bridging-Header.h
│ ├── Assets.xcassets
│ │ ├── LaunchImage.imageset
│ │ │ ├── LaunchImage.png
│ │ │ ├── LaunchImage@2x.png
│ │ │ ├── LaunchImage@3x.png
│ │ │ ├── README.md
│ │ │ └── Contents.json
│ │ ├── AppIcon.appiconset
│ │ │ ├── Icon-App-20x20@1x.png
│ │ │ ├── Icon-App-20x20@2x.png
│ │ │ ├── Icon-App-20x20@3x.png
│ │ │ ├── Icon-App-29x29@1x.png
│ │ │ ├── Icon-App-29x29@2x.png
│ │ │ ├── Icon-App-29x29@3x.png
│ │ │ ├── Icon-App-40x40@1x.png
│ │ │ ├── Icon-App-40x40@2x.png
│ │ │ ├── Icon-App-40x40@3x.png
│ │ │ ├── Icon-App-60x60@2x.png
│ │ │ ├── Icon-App-60x60@3x.png
│ │ │ ├── Icon-App-76x76@1x.png
│ │ │ ├── Icon-App-76x76@2x.png
│ │ │ ├── Icon-App-1024x1024@1x.png
│ │ │ ├── Icon-App-83.5x83.5@2x.png
│ │ │ └── Contents.json
│ │ ├── LaunchBackground.imageset
│ │ │ ├── background.png
│ │ │ └── Contents.json
│ │ └── BrandingImage.imageset
│ │ │ └── Contents.json
│ ├── AppDelegate.swift
│ ├── Base.lproj
│ │ ├── Main.storyboard
│ │ └── LaunchScreen.storyboard
│ └── Info.plist
├── Runner.xcodeproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ ├── WorkspaceSettings.xcsettings
│ │ │ └── IDEWorkspaceChecks.plist
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── Runner.xcscheme
├── Runner.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ ├── WorkspaceSettings.xcsettings
│ │ └── IDEWorkspaceChecks.plist
└── .gitignore
├── assets
├── fonts
│ ├── OCRAStd.otf
│ └── HadWinIcons.ttf
└── images
│ ├── checkmark.png
│ ├── piggy-bank.png
│ ├── hadwin_system
│ ├── hadwin-logo.png
│ ├── hadwin-name.png
│ ├── hadwin-banner.png
│ ├── hadwin-logo-lite.png
│ ├── hadwin-adaptive-logo.png
│ ├── hadwin-logo-with-name.png
│ ├── hadwin-splash-screen-logo.png
│ └── magicpattern-blob-1652765120695.png
│ ├── notification_assets
│ ├── no-wifi.png
│ └── file-error.png
│ ├── transparent_card_brands
│ ├── jcb.png
│ ├── solo.png
│ ├── visa.png
│ ├── rupay.png
│ ├── switch.png
│ ├── discover.png
│ ├── maestro.png
│ ├── union-pay.png
│ ├── diners-club.png
│ ├── mastercard.png
│ └── american-express.png
│ ├── card_flow_assets
│ ├── visa-backside.png
│ ├── default-backside.png
│ ├── maestro-backside.png
│ ├── visa-frontside.png
│ ├── default-frontside.png
│ ├── discover-backside.png
│ ├── discover-frontside.png
│ ├── maestro-frontside.png
│ ├── mastercard-backside.png
│ ├── mastercard-frontside.png
│ ├── american-express-backside.png
│ └── american-express-frontside.png
│ └── onboarding_assets
│ ├── wfh-mohamed-chahin-bg-less.png
│ └── online-shopping-yuliia-osadcha-bg-less.png
├── android
├── gradle.properties
├── app
│ ├── src
│ │ ├── main
│ │ │ ├── res
│ │ │ │ ├── drawable
│ │ │ │ │ ├── background.png
│ │ │ │ │ └── launch_background.xml
│ │ │ │ ├── drawable-hdpi
│ │ │ │ │ ├── splash.png
│ │ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── drawable-mdpi
│ │ │ │ │ ├── splash.png
│ │ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── drawable-xhdpi
│ │ │ │ │ ├── splash.png
│ │ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── drawable-xxhdpi
│ │ │ │ │ ├── splash.png
│ │ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── drawable-v21
│ │ │ │ │ ├── background.png
│ │ │ │ │ └── launch_background.xml
│ │ │ │ ├── drawable-xxxhdpi
│ │ │ │ │ ├── splash.png
│ │ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ │ └── ic_launcher.png
│ │ │ │ ├── values
│ │ │ │ │ ├── colors.xml
│ │ │ │ │ └── styles.xml
│ │ │ │ ├── mipmap-anydpi-v26
│ │ │ │ │ └── ic_launcher.xml
│ │ │ │ ├── values-v31
│ │ │ │ │ └── styles.xml
│ │ │ │ └── values-night
│ │ │ │ │ └── styles.xml
│ │ │ ├── kotlin
│ │ │ │ └── com
│ │ │ │ │ └── example
│ │ │ │ │ └── hadwin
│ │ │ │ │ └── MainActivity.kt
│ │ │ └── AndroidManifest.xml
│ │ ├── debug
│ │ │ └── AndroidManifest.xml
│ │ └── profile
│ │ │ └── AndroidManifest.xml
│ └── build.gradle
├── gradle
│ └── wrapper
│ │ └── gradle-wrapper.properties
├── .gitignore
├── settings.gradle
└── build.gradle
├── lib
├── resources
│ └── api_constants.dart
├── utilities
│ ├── url_external_launcher.dart
│ ├── slide_right_route.dart
│ ├── hadwin_icons.dart
│ ├── make_api_request.dart
│ ├── card_identifier.dart
│ ├── display_error_alert.dart
│ ├── custom_date_grouping.dart
│ └── hadwin_markdown_viewer.dart
├── providers
│ ├── tab_navigation_provider.dart
│ ├── user_login_state_provider.dart
│ └── live_transactions_provider.dart
├── components
│ ├── main_app_screen
│ │ ├── local_splash_screen_component.dart
│ │ ├── loading_screen_component.dart
│ │ └── tabbed_layout_component.dart
│ ├── qr_code_scanner_screen
│ │ ├── post_successful_qr_scan.dart
│ │ ├── scan_error_screen.dart
│ │ └── my_qr_screen.dart
│ ├── wallet_screen
│ │ └── available_cards_loading.dart
│ ├── contacts_screen
│ │ └── contacts_loading.dart
│ ├── activities_screen
│ │ └── activities_loading.dart
│ ├── settings_screen
│ │ ├── license_data.dart
│ │ ├── credits_loading.dart
│ │ ├── all_licenses.dart
│ │ └── app_creator_info.dart
│ ├── add_card_screen
│ │ └── card_flipper.dart
│ └── sign_up_screen
│ │ ├── step_get_bank_account.dart
│ │ ├── step_get_email_password.dart
│ │ └── step_get_name_address.dart
├── screens
│ ├── new_settings_screen.dart
│ ├── sign_up_screen.dart
│ ├── login_screen.dart
│ ├── qr_code_scanner_screen.dart
│ └── onboarding_screen.dart
├── database
│ ├── user_data_storage.dart
│ ├── login_info_storage.dart
│ ├── hadwin_user_device_info_storage.dart
│ ├── successful_transactions_storage.dart
│ └── cards_storage.dart
├── hadwin_components.dart
└── main.dart
├── media
├── promotional
│ ├── hadwin-gif-1.gif
│ ├── 3d-screenhot-tray.png
│ ├── hadwin-screenshot-tray-1.png
│ ├── hadwin-screenshot-with-skin-set-1.png
│ ├── hadwin-screenshot-with-skin-set-2.png
│ └── hadwin-devto-thumbnail-landscape-play.png
├── flowcharts
│ ├── login-process-flowchart.png
│ └── app-launch-process-flowchart.png
└── ui_designs
│ └── alert-box-to-navigate-to-sign-up-screen-design.png
├── .metadata
├── test
└── widget_test.dart
├── CONTRIBUTING.md
├── analysis_options.yaml
├── .gitignore
├── CODE_OF_CONDUCT.md
└── pubspec.yaml
/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/assets/fonts/OCRAStd.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/fonts/OCRAStd.otf
--------------------------------------------------------------------------------
/assets/fonts/HadWinIcons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/fonts/HadWinIcons.ttf
--------------------------------------------------------------------------------
/assets/images/checkmark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/checkmark.png
--------------------------------------------------------------------------------
/assets/images/piggy-bank.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/piggy-bank.png
--------------------------------------------------------------------------------
/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 |
--------------------------------------------------------------------------------
/lib/resources/api_constants.dart:
--------------------------------------------------------------------------------
1 | class ApiConstants {
2 | static const baseUrl = 'https://fruitcastle.onrender.com';
3 | }
--------------------------------------------------------------------------------
/media/promotional/hadwin-gif-1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/promotional/hadwin-gif-1.gif
--------------------------------------------------------------------------------
/media/promotional/3d-screenhot-tray.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/promotional/3d-screenhot-tray.png
--------------------------------------------------------------------------------
/assets/images/hadwin_system/hadwin-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/hadwin_system/hadwin-logo.png
--------------------------------------------------------------------------------
/assets/images/hadwin_system/hadwin-name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/hadwin_system/hadwin-name.png
--------------------------------------------------------------------------------
/assets/images/hadwin_system/hadwin-banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/hadwin_system/hadwin-banner.png
--------------------------------------------------------------------------------
/assets/images/notification_assets/no-wifi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/notification_assets/no-wifi.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/jcb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/jcb.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/solo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/solo.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/visa.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/visa.png
--------------------------------------------------------------------------------
/media/flowcharts/login-process-flowchart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/flowcharts/login-process-flowchart.png
--------------------------------------------------------------------------------
/media/promotional/hadwin-screenshot-tray-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/promotional/hadwin-screenshot-tray-1.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable/background.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/visa-backside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/visa-backside.png
--------------------------------------------------------------------------------
/assets/images/hadwin_system/hadwin-logo-lite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/hadwin_system/hadwin-logo-lite.png
--------------------------------------------------------------------------------
/assets/images/notification_assets/file-error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/notification_assets/file-error.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/rupay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/rupay.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/switch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/switch.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-hdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-hdpi/splash.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-mdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-mdpi/splash.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-xhdpi/splash.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-xxhdpi/splash.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/default-backside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/default-backside.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/maestro-backside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/maestro-backside.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/visa-frontside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/visa-frontside.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/discover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/discover.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/maestro.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/maestro.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/union-pay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/union-pay.png
--------------------------------------------------------------------------------
/media/flowcharts/app-launch-process-flowchart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/flowcharts/app-launch-process-flowchart.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-v21/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-v21/background.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxxhdpi/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-xxxhdpi/splash.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/default-frontside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/default-frontside.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/discover-backside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/discover-backside.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/discover-frontside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/discover-frontside.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/maestro-frontside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/maestro-frontside.png
--------------------------------------------------------------------------------
/assets/images/hadwin_system/hadwin-adaptive-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/hadwin_system/hadwin-adaptive-logo.png
--------------------------------------------------------------------------------
/assets/images/hadwin_system/hadwin-logo-with-name.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/hadwin_system/hadwin-logo-with-name.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/diners-club.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/diners-club.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/mastercard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/mastercard.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/mastercard-backside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/mastercard-backside.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/mastercard-frontside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/mastercard-frontside.png
--------------------------------------------------------------------------------
/media/promotional/hadwin-screenshot-with-skin-set-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/promotional/hadwin-screenshot-with-skin-set-1.png
--------------------------------------------------------------------------------
/media/promotional/hadwin-screenshot-with-skin-set-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/promotional/hadwin-screenshot-with-skin-set-2.png
--------------------------------------------------------------------------------
/assets/images/hadwin_system/hadwin-splash-screen-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/hadwin_system/hadwin-splash-screen-logo.png
--------------------------------------------------------------------------------
/assets/images/transparent_card_brands/american-express.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/transparent_card_brands/american-express.png
--------------------------------------------------------------------------------
/android/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #1546A0
4 |
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/american-express-backside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/american-express-backside.png
--------------------------------------------------------------------------------
/assets/images/card_flow_assets/american-express-frontside.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/card_flow_assets/american-express-frontside.png
--------------------------------------------------------------------------------
/media/promotional/hadwin-devto-thumbnail-landscape-play.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/promotional/hadwin-devto-thumbnail-landscape-play.png
--------------------------------------------------------------------------------
/assets/images/hadwin_system/magicpattern-blob-1652765120695.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/hadwin_system/magicpattern-blob-1652765120695.png
--------------------------------------------------------------------------------
/assets/images/onboarding_assets/wfh-mohamed-chahin-bg-less.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/onboarding_assets/wfh-mohamed-chahin-bg-less.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-mdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-mdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchBackground.imageset/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/LaunchBackground.imageset/background.png
--------------------------------------------------------------------------------
/media/ui_designs/alert-box-to-navigate-to-sign-up-screen-design.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/media/ui_designs/alert-box-to-navigate-to-sign-up-screen-design.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/assets/images/onboarding_assets/online-shopping-yuliia-osadcha-bg-less.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/brownboycodes/HADWIN/HEAD/assets/images/onboarding_assets/online-shopping-yuliia-osadcha-bg-less.png
--------------------------------------------------------------------------------
/android/app/src/main/kotlin/com/example/hadwin/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.hadwin
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity() {
6 | }
7 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Fri Jun 23 08:50:38 CEST 2017
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.9-all.zip
7 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.metadata:
--------------------------------------------------------------------------------
1 | # This file tracks properties of this Flutter project.
2 | # Used by Flutter tool to assess capabilities and perform upgrades etc.
3 | #
4 | # This file should be version controlled and should not be manually edited.
5 |
6 | version:
7 | revision: 18116933e77adc82f80866c928266a5b4f1ed645
8 | channel: stable
9 |
10 | project_type: app
11 |
--------------------------------------------------------------------------------
/android/.gitignore:
--------------------------------------------------------------------------------
1 | gradle-wrapper.jar
2 | /.gradle
3 | /captures/
4 | /gradlew
5 | /gradlew.bat
6 | /local.properties
7 | GeneratedPluginRegistrant.java
8 |
9 | # Remember to never publicly share your keystore.
10 | # See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
11 | key.properties
12 | **/*.keystore
13 | **/*.jks
14 | app/upload-keystore.jks
--------------------------------------------------------------------------------
/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 | -
7 |
8 |
9 |
--------------------------------------------------------------------------------
/lib/utilities/url_external_launcher.dart:
--------------------------------------------------------------------------------
1 | import 'package:url_launcher/url_launcher.dart';
2 |
3 | Future launchExternalURL(String url) async {
4 | Uri uri =Uri.parse(url);
5 |
6 | if (await canLaunchUrl(uri)) {
7 | await launchUrl(uri,mode: LaunchMode.externalApplication);
8 | }
9 | // else {
10 | // throw 'Could not launch $url';
11 | // }
12 | }
13 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable-v21/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
5 |
6 | -
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md:
--------------------------------------------------------------------------------
1 | # Launch Screen Assets
2 |
3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory.
4 |
5 | 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.
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchBackground.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "background.png",
5 | "idiom" : "universal",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "author" : "xcode",
19 | "version" : 1
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/ios/Runner/AppDelegate.swift:
--------------------------------------------------------------------------------
1 | import UIKit
2 | import Flutter
3 |
4 | @UIApplicationMain
5 | @objc class AppDelegate: FlutterAppDelegate {
6 | override func application(
7 | _ application: UIApplication,
8 | didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
9 | ) -> Bool {
10 | GeneratedPluginRegistrant.register(with: self)
11 | return super.application(application, didFinishLaunchingWithOptions: launchOptions)
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/android/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 |
3 | def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
4 | def properties = new Properties()
5 |
6 | assert localPropertiesFile.exists()
7 | localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
8 |
9 | def flutterSdkPath = properties.getProperty("flutter.sdk")
10 | assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
11 | apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
12 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "LaunchImage.png",
5 | "idiom" : "universal",
6 | "scale" : "1x"
7 | },
8 | {
9 | "filename" : "LaunchImage@2x.png",
10 | "idiom" : "universal",
11 | "scale" : "2x"
12 | },
13 | {
14 | "filename" : "LaunchImage@3x.png",
15 | "idiom" : "universal",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "author" : "xcode",
21 | "version" : 1
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/BrandingImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "filename" : "BrandingImage.png",
5 | "idiom" : "universal",
6 | "scale" : "1x"
7 | },
8 | {
9 | "filename" : "BrandingImage@2x.png",
10 | "idiom" : "universal",
11 | "scale" : "2x"
12 | },
13 | {
14 | "filename" : "BrandingImage@3x.png",
15 | "idiom" : "universal",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "author" : "xcode",
21 | "version" : 1
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/lib/providers/tab_navigation_provider.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class TabNavigationProvider with ChangeNotifier {
4 | List _tabHistory = [0];
5 |
6 | int get lastTab => _tabHistory.last;
7 |
8 | void removeLastTab() {
9 | _tabHistory.removeLast();
10 | notifyListeners();
11 | }
12 |
13 | void updateTabs(int tab) {
14 | if (tab == 0) {
15 | _tabHistory = [0];
16 | } else {
17 | _tabHistory.removeWhere((element) => element == tab);
18 | _tabHistory.add(tab);
19 | }
20 | notifyListeners();
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/lib/components/main_app_screen/local_splash_screen_component.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class LocalSplashScreenComponent extends StatelessWidget {
4 | const LocalSplashScreenComponent({Key? key}) : super(key: key);
5 |
6 | @override
7 | Widget build(BuildContext context) {
8 | return Container(
9 | color: Color(0xff2f73b9),
10 | child: Column(
11 | mainAxisAlignment: MainAxisAlignment.center,
12 | children: [
13 | Image.asset(
14 | 'assets/images/hadwin_system/hadwin-splash-screen-logo.png',
15 | height: 128.0,
16 | ),
17 | ],
18 | ),
19 | );
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/ios/.gitignore:
--------------------------------------------------------------------------------
1 | **/dgph
2 | *.mode1v3
3 | *.mode2v3
4 | *.moved-aside
5 | *.pbxuser
6 | *.perspectivev3
7 | **/*sync/
8 | .sconsign.dblite
9 | .tags*
10 | **/.vagrant/
11 | **/DerivedData/
12 | Icon?
13 | **/Pods/
14 | **/.symlinks/
15 | profile
16 | xcuserdata
17 | **/.generated/
18 | Flutter/App.framework
19 | Flutter/Flutter.framework
20 | Flutter/Flutter.podspec
21 | Flutter/Generated.xcconfig
22 | Flutter/ephemeral/
23 | Flutter/app.flx
24 | Flutter/app.zip
25 | Flutter/flutter_assets/
26 | Flutter/flutter_export_environment.sh
27 | ServiceDefinitions.json
28 | Runner/GeneratedPluginRegistrant.*
29 |
30 | # Exceptions to above rules.
31 | !default.mode1v3
32 | !default.mode2v3
33 | !default.pbxuser
34 | !default.perspectivev3
35 |
--------------------------------------------------------------------------------
/lib/components/main_app_screen/loading_screen_component.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | class LoadingScreenComponent extends StatelessWidget {
4 | const LoadingScreenComponent({Key? key}) : super(key: key);
5 |
6 | @override
7 | Widget build(BuildContext context) {
8 | return Container(
9 | color: Colors.white,
10 | child: Column(
11 | mainAxisAlignment: MainAxisAlignment.center,
12 | children: [
13 | SizedBox(
14 | height: 64,
15 | width: 64,
16 | child: CircularProgressIndicator(),
17 | ),
18 | Padding(padding: EdgeInsets.all(10), child: Text("Loading..."))
19 | ],
20 | ),
21 | );
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/android/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | // ext.kotlin_version = '1.5.10'
3 | ext.kotlin_version = '1.8.10'
4 | repositories {
5 | google()
6 | mavenCentral()
7 | }
8 |
9 | dependencies {
10 | classpath 'com.android.tools.build:gradle:4.2.0'
11 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
12 | }
13 |
14 | }
15 |
16 | allprojects {
17 | repositories {
18 | google()
19 | mavenCentral()
20 | }
21 | }
22 |
23 | rootProject.buildDir = '../build'
24 | subprojects {
25 | project.buildDir = "${rootProject.buildDir}/${project.name}"
26 | project.evaluationDependsOn(':app')
27 | }
28 |
29 | task clean(type: Delete) {
30 | delete rootProject.buildDir
31 | }
32 |
--------------------------------------------------------------------------------
/ios/Flutter/AppFrameworkInfo.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | App
9 | CFBundleIdentifier
10 | io.flutter.flutter.app
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | App
15 | CFBundlePackageType
16 | FMWK
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1.0
23 | MinimumOSVersion
24 | 9.0
25 |
26 |
27 |
--------------------------------------------------------------------------------
/lib/utilities/slide_right_route.dart:
--------------------------------------------------------------------------------
1 | // page slide transition effect
2 | import 'package:flutter/material.dart';
3 |
4 | class SlideRightRoute extends PageRouteBuilder {
5 | final Widget page;
6 | SlideRightRoute({required this.page})
7 | : super(
8 | pageBuilder: (
9 | BuildContext context,
10 | Animation animation,
11 | Animation secondaryAnimation,
12 | ) =>
13 | page,
14 | transitionsBuilder: (
15 | BuildContext context,
16 | Animation animation,
17 | Animation secondaryAnimation,
18 | Widget child,
19 | ) =>
20 | SlideTransition(
21 | textDirection: TextDirection.rtl,
22 | position: Tween(
23 | begin: const Offset(-1, 0),
24 | end: Offset.zero,
25 | ).animate(animation),
26 | child: child,
27 | ),
28 | );
29 | }
30 |
--------------------------------------------------------------------------------
/lib/screens/new_settings_screen.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:hadwin/hadwin_components.dart';
3 |
4 |
5 |
6 | class NewSettingsScreen extends StatelessWidget {
7 | NewSettingsScreen({Key? key}) : super(key: key);
8 |
9 | final AppBar appBar = AppBar(
10 | title: Text('Settings'),
11 | centerTitle: true,
12 | backgroundColor: Colors.transparent,
13 | foregroundColor: Color(0xff243656),
14 | elevation: 0,
15 | );
16 |
17 |
18 | @override
19 | Widget build(BuildContext context) {
20 | Column appSettings = Column(
21 | children: [
22 | Expanded(
23 | child: Container(
24 | width: MediaQuery.of(context).size.width,
25 | height: MediaQuery.of(context).size.height - 180,
26 | child: AppSettingsComponent(),
27 | ),
28 | )
29 | ],
30 | );
31 | return Scaffold(
32 | backgroundColor: Colors.white,
33 | appBar: appBar,
34 | body: appSettings,
35 | );
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/lib/utilities/hadwin_icons.dart:
--------------------------------------------------------------------------------
1 | /// Flutter icons HadWinIcons
2 | /// Copyright (C) 2022 by original authors @ fluttericon.com, fontello.com
3 | /// This font was generated by FlutterIcon.com, which is derived from Fontello.
4 | ///
5 | /// To use this font, place it in your fonts/ directory and include the
6 | /// following in your pubspec.yaml
7 | ///
8 | /// flutter:
9 | /// fonts:
10 | /// - family: HadWinIcons
11 | /// fonts:
12 | /// - asset: fonts/HadWinIcons.ttf
13 | ///
14 | ///
15 | ///
16 | import 'package:flutter/widgets.dart';
17 |
18 | class HadWinIcons {
19 | HadWinIcons._();
20 |
21 | static const _kFontFam = 'HadWinIcons';
22 | static const String? _kFontPkg = null;
23 |
24 | static const IconData wallet_business_and_trade = IconData(0xe801, fontFamily: _kFontFam, fontPackage: _kFontPkg);
25 | static const IconData wallet_education_29 = IconData(0xe802, fontFamily: _kFontFam, fontPackage: _kFontPkg);
26 | static const IconData line_awesome_wallet_solid = IconData(0xe803, fontFamily: _kFontFam, fontPackage: _kFontPkg);
27 | }
28 |
--------------------------------------------------------------------------------
/android/app/src/main/res/values-v31/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
15 |
18 |
--------------------------------------------------------------------------------
/android/app/src/main/res/values-night/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
15 |
18 |
19 |
--------------------------------------------------------------------------------
/test/widget_test.dart:
--------------------------------------------------------------------------------
1 | // This is a basic Flutter widget test.
2 | //
3 | // To perform an interaction with a widget in your test, use the WidgetTester
4 | // utility that Flutter provides. For example, you can send tap and scroll
5 | // gestures. You can also use WidgetTester to find child widgets in the widget
6 | // tree, read text, and verify that the values of widget properties are correct.
7 |
8 | import 'package:flutter/material.dart';
9 | import 'package:flutter_test/flutter_test.dart';
10 | import 'package:hadwin/main.dart';
11 |
12 |
13 |
14 | void main() {
15 | testWidgets('Counter increments smoke test', (WidgetTester tester) async {
16 | // Build our app and trigger a frame.
17 | await tester.pumpWidget(const MyApp());
18 |
19 | // Verify that our counter starts at 0.
20 | expect(find.text('0'), findsOneWidget);
21 | expect(find.text('1'), findsNothing);
22 |
23 | // Tap the '+' icon and trigger a frame.
24 | await tester.tap(find.byIcon(Icons.add));
25 | await tester.pump();
26 |
27 | // Verify that our counter has incremented.
28 | expect(find.text('0'), findsNothing);
29 | expect(find.text('1'), findsOneWidget);
30 | });
31 | }
32 |
--------------------------------------------------------------------------------
/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
11 |
17 |
20 |
--------------------------------------------------------------------------------
/lib/components/qr_code_scanner_screen/post_successful_qr_scan.dart:
--------------------------------------------------------------------------------
1 | /*
2 | import 'dart:convert';
3 |
4 | import 'package:flutter/material.dart';
5 |
6 | import 'package:qr_code_scanner/qr_code_scanner.dart';
7 |
8 | class PostSuccessfulQRScanScreen extends StatelessWidget {
9 | final Barcode result;
10 | const PostSuccessfulQRScanScreen({Key? key, required this.result})
11 | : super(key: key);
12 |
13 |
14 |
15 | @override
16 | Widget build(BuildContext context) {
17 | dynamic tests = 'untouched';
18 | try {
19 |
20 | tests = json.decode(result.code!);
21 | } catch (e) {
22 | tests = e.toString();
23 | }
24 | return Scaffold(
25 | appBar: AppBar(
26 | backgroundColor: Colors.white,
27 | foregroundColor: Color(0xff243656),
28 | elevation: 0,
29 | title: Padding(
30 | padding: EdgeInsets.symmetric(horizontal: 48),
31 | child: Text("QR Scan Result",
32 | style: TextStyle(color: Color(0xff243656))),
33 | ),
34 | ),
35 | body: Column(
36 | children: [
37 | Expanded(
38 | child: Container(
39 | child: Text('Data: ${tests}'),
40 | ))
41 | ],
42 | ),
43 | );
44 | }
45 | }
46 | */
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing to HADWIN
2 |
3 | We love your input! We want to make contributing to this project as easy and transparent as possible, whether it's:
4 |
5 | - Reporting a bug 🐛
6 | - Discussing the current state of the code 👩💻📈
7 | - Submitting a fix 🩹
8 | - Proposing new features ✨
9 |
10 |
11 |
12 | ## Use a Consistent Coding Style
13 |
14 | - files should be named after the widget it contains, for example- if a file contains the class `UserInfo` the file name should be `user_info.dart`
15 | - the preferred file naming convention is `snake_case`
16 | - the class names should be meaningful and should be according to the purpose it serves
17 | - follow clean coding principles (check out this [cheatsheet](https://gist.github.com/wojteklu/73c6914cc446146b8b533c0988cf8d29))
18 |
19 |
20 |
21 |
22 | ## Any contributions you make will be under the GNU GENERAL PUBLIC LICENSE 3.0
23 |
24 | In short, when you submit code changes, your submissions are understood to be under the same [GNU GENERAL PUBLIC LICENSE 3.0](https://www.gnu.org/licenses/gpl-3.0.en.html) that covers the project. Feel free to contact the maintainers if that's a concern.
25 |
26 |
27 |
28 | ---
29 |
30 | 🛑✋
31 |
32 |
33 | guidelines for contributing to this project is being reviewed and will be updated soon...
34 |
35 | please wait till then
--------------------------------------------------------------------------------
/lib/components/wallet_screen/available_cards_loading.dart:
--------------------------------------------------------------------------------
1 | import 'package:fade_shimmer/fade_shimmer.dart';
2 | import 'package:flutter/material.dart';
3 |
4 | Widget _availableCardsLoadingTile() {
5 | return Row(
6 | mainAxisAlignment: MainAxisAlignment.center,
7 | children: [
8 | Container(
9 | child: FadeShimmer(
10 | height: 48,
11 | width: 64,
12 | fadeTheme: FadeTheme.light,
13 | ),
14 | padding: EdgeInsets.all(5),
15 | ),
16 | Column(
17 | children: [
18 | Container(
19 | child: FadeShimmer(
20 | height: 21,
21 | width: 200,
22 | fadeTheme: FadeTheme.light,
23 | ),
24 | padding: EdgeInsets.all(5),
25 | ),
26 | Container(
27 | child: FadeShimmer(
28 | height: 18,
29 | width: 180,
30 | fadeTheme: FadeTheme.light,
31 | ),
32 | padding: EdgeInsets.all(5),
33 | )
34 | ],
35 | ),
36 |
37 | ],
38 | );
39 | }
40 |
41 | Widget availableCardsLoadingList(int items) {
42 | return ListView.builder(
43 | padding: EdgeInsets.all(0),
44 | itemBuilder: (_, index) =>
45 | Padding(padding: EdgeInsets.all(5), child: _availableCardsLoadingTile()),
46 | itemCount: items,
47 | )
48 | ;
49 | }
50 |
--------------------------------------------------------------------------------
/lib/database/user_data_storage.dart:
--------------------------------------------------------------------------------
1 | import 'dart:convert';
2 | import 'dart:io';
3 |
4 | import 'package:path_provider/path_provider.dart';
5 |
6 | class UserDataStorage {
7 | Future get _localPath async {
8 | final directory = await getApplicationDocumentsDirectory();
9 |
10 | return directory.path;
11 | }
12 |
13 | Future get _userDataFile async {
14 | final path = await _localPath;
15 | return File('$path/hadwin_user_data.json');
16 | }
17 |
18 | Future