├── .flutter-plugins
├── .flutter-plugins-dependencies
├── .gitattributes
├── .gitignore
├── LICENSE
├── README.md
├── android
├── .gitignore
├── app
│ ├── build.gradle
│ └── src
│ │ ├── debug
│ │ └── AndroidManifest.xml
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── kotlin
│ │ │ └── com
│ │ │ │ ├── dhiwise
│ │ │ │ └── flutterarch
│ │ │ │ │ └── MainActivity.kt
│ │ │ │ └── example
│ │ │ │ └── base_project
│ │ │ │ └── MainActivity.kt
│ │ └── res
│ │ │ ├── drawable
│ │ │ └── launch_background.xml
│ │ │ ├── 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
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── profile
│ │ └── AndroidManifest.xml
├── base_project_android.iml
├── build.gradle
├── flutterarch_android.iml
├── gradle.properties
├── gradle
│ └── wrapper
│ │ └── gradle-wrapper.properties
└── settings.gradle
├── assets
└── images
│ ├── image_not_found.png
│ ├── img_.svg
│ ├── img_252a6624a42c117.png
│ ├── img_32badb63498577.png
│ ├── img_7f47f9144194941.png
│ ├── img_afbea499038243.png
│ ├── img_arrowleft.svg
│ ├── img_arrowleft_44x44.svg
│ ├── img_arrowright.svg
│ ├── img_arrowup.svg
│ ├── img_bookmark.svg
│ ├── img_bookmark_44x44.svg
│ ├── img_bookmark_white_a700.png
│ ├── img_calendar.svg
│ ├── img_calendar_24x24.svg
│ ├── img_call.svg
│ ├── img_checkmark.svg
│ ├── img_checkmark_1.svg
│ ├── img_checkmark_14x14.svg
│ ├── img_checkmark_7x10.svg
│ ├── img_checkmark_9x12.svg
│ ├── img_checkmark_9x16.svg
│ ├── img_clock.svg
│ ├── img_cut.svg
│ ├── img_edit.svg
│ ├── img_edit_24x24.svg
│ ├── img_ellipse21.png
│ ├── img_ellipse21_24x24.png
│ ├── img_ellipse23.png
│ ├── img_ellipse23_24x24.png
│ ├── img_ellipse25.png
│ ├── img_ellipse25_24x24.png
│ ├── img_ellipse897.png
│ ├── img_ellipse897_1.png
│ ├── img_ellipse897_2.png
│ ├── img_ellipse897_3.png
│ ├── img_ellipse897_4.png
│ ├── img_ellipse897_48x48.png
│ ├── img_ellipse897_5.png
│ ├── img_ellipse899.png
│ ├── img_ellipse901.png
│ ├── img_ellipse901_55x55.png
│ ├── img_ellipse903.png
│ ├── img_eye.svg
│ ├── img_eyeicon.svg
│ ├── img_favorite.svg
│ ├── img_file.svg
│ ├── img_file_1.svg
│ ├── img_file_96x96.svg
│ ├── img_group335.png
│ ├── img_group67.svg
│ ├── img_home.svg
│ ├── img_lightbulb.svg
│ ├── img_link.svg
│ ├── img_location.svg
│ ├── img_location_24x24.svg
│ ├── img_maximize.svg
│ ├── img_microphone.svg
│ ├── img_overflowmenu.svg
│ ├── img_rectangle14.svg
│ ├── img_rectangle15.svg
│ ├── img_rectangle27.png
│ ├── img_rectangle29.png
│ ├── img_rectangle29_1.png
│ ├── img_rectangle29_80x80.png
│ ├── img_rectangle34.png
│ ├── img_rectangle818.png
│ ├── img_rectangle821.svg
│ ├── img_rectangle822.png
│ ├── img_rectangle823.png
│ ├── img_rectangle824.png
│ ├── img_rectangle825.png
│ ├── img_rectangle826.png
│ ├── img_rectangle830.png
│ ├── img_rectangle831.png
│ ├── img_rectangle833.png
│ ├── img_rectangle838.png
│ ├── img_rectangle838_1.png
│ ├── img_rectangle838_124x137.png
│ ├── img_rectangle838_2.png
│ ├── img_rectangle838_3.png
│ ├── img_rectangle839.svg
│ ├── img_rectangle839_124x137.png
│ ├── img_rectangle843.png
│ ├── img_rectangle843_1.png
│ ├── img_rectangle843_116x95.png
│ ├── img_rectangle843_2.png
│ ├── img_rectangle845.svg
│ ├── img_reply.svg
│ ├── img_search.svg
│ ├── img_search_bluegray_400.svg
│ ├── img_settings.svg
│ ├── img_signal.svg
│ ├── img_signal_24x40.svg
│ ├── img_star.svg
│ ├── img_star_yellow_600.png
│ ├── img_ticket.svg
│ ├── img_trash.svg
│ ├── img_user.svg
│ ├── img_user_1.svg
│ ├── img_user_2.svg
│ ├── img_user_24x24.svg
│ └── img_vector2524.svg
├── ios
├── .gitignore
├── Flutter
│ ├── AppFrameworkInfo.plist
│ ├── Debug.xcconfig
│ └── Release.xcconfig
├── Runner.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcshareddata
│ │ │ ├── IDEWorkspaceChecks.plist
│ │ │ └── WorkspaceSettings.xcsettings
│ └── xcshareddata
│ │ └── xcschemes
│ │ └── Runner.xcscheme
├── Runner.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ ├── IDEWorkspaceChecks.plist
│ │ └── WorkspaceSettings.xcsettings
└── Runner
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ ├── AppIcon.appiconset
│ │ ├── Contents.json
│ │ ├── Icon-App-1024x1024@1x.png
│ │ ├── 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-83.5x83.5@2x.png
│ └── LaunchImage.imageset
│ │ ├── Contents.json
│ │ ├── LaunchImage.png
│ │ ├── LaunchImage@2x.png
│ │ ├── LaunchImage@3x.png
│ │ └── README.md
│ ├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
│ ├── Info.plist
│ └── Runner-Bridging-Header.h
├── lib
├── core
│ ├── app_export.dart
│ ├── constants
│ │ └── constants.dart
│ ├── errors
│ │ ├── exceptions.dart
│ │ └── failures.dart
│ ├── network
│ │ └── network_info.dart
│ └── utils
│ │ ├── color_constant.dart
│ │ ├── date_time_utils.dart
│ │ ├── image_constant.dart
│ │ ├── initial_bindings.dart
│ │ ├── logger.dart
│ │ ├── pref_utils.dart
│ │ ├── progress_dialog_utils.dart
│ │ ├── size_utils.dart
│ │ └── validation_functions.dart
├── data
│ ├── apiClient
│ │ └── api_client.dart
│ └── models
│ │ └── selectionPopupModel
│ │ └── selection_popup_model.dart
├── localization
│ ├── app_localization.dart
│ └── en_us
│ │ └── en_us_translations.dart
├── main.dart
├── presentation
│ ├── all_popular_trip_package_screen
│ │ ├── all_popular_trip_package_screen.dart
│ │ ├── binding
│ │ │ └── all_popular_trip_package_binding.dart
│ │ ├── controller
│ │ │ └── all_popular_trip_package_controller.dart
│ │ ├── models
│ │ │ ├── all_popular_trip_package_model.dart
│ │ │ └── listrectangle843_item_model.dart
│ │ └── widgets
│ │ │ └── listrectangle843_item_widget.dart
│ ├── app_navigation_screen
│ │ ├── app_navigation_screen.dart
│ │ ├── binding
│ │ │ └── app_navigation_binding.dart
│ │ ├── controller
│ │ │ └── app_navigation_controller.dart
│ │ └── models
│ │ │ └── app_navigation_model.dart
│ ├── chats_screen
│ │ ├── binding
│ │ │ └── chats_binding.dart
│ │ ├── chats_screen.dart
│ │ ├── controller
│ │ │ └── chats_controller.dart
│ │ └── models
│ │ │ └── chats_model.dart
│ ├── details_screen
│ │ ├── binding
│ │ │ └── details_binding.dart
│ │ ├── controller
│ │ │ └── details_controller.dart
│ │ ├── details_screen.dart
│ │ └── models
│ │ │ └── details_model.dart
│ ├── edit_profile_screen
│ │ ├── binding
│ │ │ └── edit_profile_binding.dart
│ │ ├── controller
│ │ │ └── edit_profile_controller.dart
│ │ ├── edit_profile_screen.dart
│ │ └── models
│ │ │ └── edit_profile_model.dart
│ ├── favorite_places_screen
│ │ ├── binding
│ │ │ └── favorite_places_binding.dart
│ │ ├── controller
│ │ │ └── favorite_places_controller.dart
│ │ ├── favorite_places_screen.dart
│ │ ├── models
│ │ │ ├── favorite_places_model.dart
│ │ │ └── gridrectangle838_item_model.dart
│ │ └── widgets
│ │ │ └── gridrectangle838_item_widget.dart
│ ├── forgot_password_screen
│ │ ├── binding
│ │ │ └── forgot_password_binding.dart
│ │ ├── controller
│ │ │ └── forgot_password_controller.dart
│ │ ├── forgot_password_screen.dart
│ │ └── models
│ │ │ └── forgot_password_model.dart
│ ├── home_screen
│ │ ├── binding
│ │ │ └── home_binding.dart
│ │ ├── controller
│ │ │ └── home_controller.dart
│ │ ├── home_screen.dart
│ │ ├── models
│ │ │ ├── home_item_model.dart
│ │ │ └── home_model.dart
│ │ └── widgets
│ │ │ └── home_item_widget.dart
│ ├── messages_screen
│ │ ├── binding
│ │ │ └── messages_binding.dart
│ │ ├── controller
│ │ │ └── messages_controller.dart
│ │ ├── messages_screen.dart
│ │ ├── models
│ │ │ ├── messages_item_model.dart
│ │ │ └── messages_model.dart
│ │ └── widgets
│ │ │ └── messages_item_widget.dart
│ ├── notification_screen
│ │ ├── binding
│ │ │ └── notification_binding.dart
│ │ ├── controller
│ │ │ └── notification_controller.dart
│ │ ├── models
│ │ │ ├── notification_item_model.dart
│ │ │ └── notification_model.dart
│ │ ├── notification_screen.dart
│ │ └── widgets
│ │ │ └── notification_item_widget.dart
│ ├── onboard_one_screen
│ │ ├── binding
│ │ │ └── onboard_one_binding.dart
│ │ ├── controller
│ │ │ └── onboard_one_controller.dart
│ │ ├── models
│ │ │ └── onboard_one_model.dart
│ │ └── onboard_one_screen.dart
│ ├── onboard_three_screen
│ │ ├── binding
│ │ │ └── onboard_three_binding.dart
│ │ ├── controller
│ │ │ └── onboard_three_controller.dart
│ │ ├── models
│ │ │ └── onboard_three_model.dart
│ │ └── onboard_three_screen.dart
│ ├── onboard_two_screen
│ │ ├── binding
│ │ │ └── onboard_two_binding.dart
│ │ ├── controller
│ │ │ └── onboard_two_controller.dart
│ │ ├── models
│ │ │ └── onboard_two_model.dart
│ │ └── onboard_two_screen.dart
│ ├── pop_up_dialog
│ │ ├── controller
│ │ │ └── pop_up_controller.dart
│ │ ├── models
│ │ │ └── pop_up_model.dart
│ │ └── pop_up_dialog.dart
│ ├── popular_places_screen
│ │ ├── binding
│ │ │ └── popular_places_binding.dart
│ │ ├── controller
│ │ │ └── popular_places_controller.dart
│ │ ├── models
│ │ │ ├── popular_places_item_model.dart
│ │ │ └── popular_places_model.dart
│ │ ├── popular_places_screen.dart
│ │ └── widgets
│ │ │ └── popular_places_item_widget.dart
│ ├── profile_screen
│ │ ├── binding
│ │ │ └── profile_binding.dart
│ │ ├── controller
│ │ │ └── profile_controller.dart
│ │ ├── models
│ │ │ └── profile_model.dart
│ │ └── profile_screen.dart
│ ├── schedule_screen
│ │ ├── binding
│ │ │ └── schedule_binding.dart
│ │ ├── controller
│ │ │ └── schedule_controller.dart
│ │ ├── models
│ │ │ └── schedule_model.dart
│ │ └── schedule_screen.dart
│ ├── search_screen
│ │ ├── binding
│ │ │ └── search_binding.dart
│ │ ├── controller
│ │ │ └── search_controller.dart
│ │ ├── models
│ │ │ ├── search_item_model.dart
│ │ │ └── search_model.dart
│ │ ├── search_screen.dart
│ │ └── widgets
│ │ │ └── search_item_widget.dart
│ ├── sign_in_screen
│ │ ├── binding
│ │ │ └── sign_in_binding.dart
│ │ ├── controller
│ │ │ └── sign_in_controller.dart
│ │ ├── models
│ │ │ └── sign_in_model.dart
│ │ └── sign_in_screen.dart
│ ├── sign_up_screen
│ │ ├── binding
│ │ │ └── sign_up_binding.dart
│ │ ├── controller
│ │ │ └── sign_up_controller.dart
│ │ ├── models
│ │ │ └── sign_up_model.dart
│ │ └── sign_up_screen.dart
│ ├── splash_screen
│ │ ├── binding
│ │ │ └── splash_binding.dart
│ │ ├── controller
│ │ │ └── splash_controller.dart
│ │ ├── models
│ │ │ └── splash_model.dart
│ │ └── splash_screen.dart
│ ├── verification_screen
│ │ ├── binding
│ │ │ └── verification_binding.dart
│ │ ├── controller
│ │ │ └── verification_controller.dart
│ │ ├── models
│ │ │ └── verification_model.dart
│ │ └── verification_screen.dart
│ └── view_screen
│ │ ├── binding
│ │ └── view_binding.dart
│ │ ├── controller
│ │ └── view_controller.dart
│ │ ├── models
│ │ └── view_model.dart
│ │ └── view_screen.dart
├── routes
│ └── app_routes.dart
├── theme
│ ├── app_decoration.dart
│ └── app_style.dart
└── widgets
│ ├── app_bar
│ ├── appbar_iconbutton.dart
│ ├── appbar_iconbutton_1.dart
│ ├── appbar_subtitle.dart
│ ├── appbar_subtitle_1.dart
│ ├── appbar_title.dart
│ └── custom_app_bar.dart
│ ├── common_image_view.dart
│ ├── custom_button.dart
│ ├── custom_floating_button.dart
│ ├── custom_icon_button.dart
│ ├── custom_radio_button.dart
│ ├── custom_search_view.dart
│ └── custom_text_form_field.dart
├── logs
└── errors.log
├── pubspec.lock
├── pubspec.yaml
├── screenshot
├── 1.png
└── 2.png
└── test
└── widget_test.dart
/.flutter-plugins:
--------------------------------------------------------------------------------
1 | # This is a generated file; do not edit or check into version control.
2 | connectivity_plus=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\connectivity_plus-2.3.9\\
3 | connectivity_plus_linux=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\connectivity_plus_linux-1.3.1\\
4 | connectivity_plus_macos=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\connectivity_plus_macos-1.2.6\\
5 | connectivity_plus_web=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\connectivity_plus_web-1.2.5\\
6 | connectivity_plus_windows=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\connectivity_plus_windows-1.2.2\\
7 | path_provider=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider-2.0.4\\
8 | path_provider_linux=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_linux-2.1.2\\
9 | path_provider_macos=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_macos-2.0.4\\
10 | path_provider_windows=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\path_provider_windows-2.0.4\\
11 | shared_preferences=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\shared_preferences-2.0.15\\
12 | shared_preferences_android=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\shared_preferences_android-2.0.14\\
13 | shared_preferences_ios=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\shared_preferences_ios-2.1.1\\
14 | shared_preferences_linux=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\shared_preferences_linux-2.0.3\\
15 | shared_preferences_macos=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\shared_preferences_macos-2.0.2\\
16 | shared_preferences_web=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\shared_preferences_web-2.0.2\\
17 | shared_preferences_windows=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\shared_preferences_windows-2.0.3\\
18 | sms_autofill=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\sms_autofill-2.2.0\\
19 | sqflite=C:\\flutter\\.pub-cache\\hosted\\pub.dartlang.org\\sqflite-2.0.1\\
20 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /.dart_tool/
2 | /.idea/
3 | /build/
4 | /.vscode/
5 | !/pubspec.lock
6 | !/.packages
7 | !/.flutter-plugins-dependencies
8 | !/.flutter-plugins
9 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2022 Manish Dayma
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/android/app/build.gradle:
--------------------------------------------------------------------------------
1 | plugins{
2 | id 'com.android.application'
3 | id 'kotlin-android'
4 | }
5 | def localProperties = new Properties()
6 | def localPropertiesFile = rootProject.file('local.properties')
7 | if (localPropertiesFile.exists()) {
8 | localPropertiesFile.withReader('UTF-8') { reader ->
9 | localProperties.load(reader)
10 | }
11 | }
12 |
13 | def flutterRoot = localProperties.getProperty('flutter.sdk')
14 | if (flutterRoot == null) {
15 | throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
16 | }
17 |
18 | def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
19 | if (flutterVersionCode == null) {
20 | flutterVersionCode = '1'
21 | }
22 |
23 | def flutterVersionName = localProperties.getProperty('flutter.versionName')
24 | if (flutterVersionName == null) {
25 | flutterVersionName = '1.0'
26 | }
27 |
28 | apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
29 |
30 | android {
31 | compileSdkVersion 31
32 |
33 | sourceSets {
34 | main.java.srcDirs += 'src/main/kotlin'
35 | }
36 |
37 | lintOptions {
38 | disable 'InvalidPackage'
39 | }
40 |
41 | defaultConfig {
42 | // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
43 | applicationId "com.travelappflutter.app"
44 | minSdkVersion 21
45 | targetSdkVersion 31
46 | multiDexEnabled true
47 | versionCode flutterVersionCode.toInteger()
48 | versionName flutterVersionName
49 | }
50 |
51 | buildTypes {
52 | release {
53 | // TODO: Add your own signing config for the release build.
54 | // Signing with the debug keys for now, so `flutter run --release` works.
55 | signingConfig signingConfigs.debug
56 | }
57 | }
58 | }
59 |
60 | flutter {
61 | source '../..'
62 | }
63 |
64 | dependencies {
65 | implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
66 | implementation "androidx.multidex:multidex:2.0.1"
67 | }
68 |
--------------------------------------------------------------------------------
/android/app/src/debug/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
8 |
9 |
10 |
11 |
12 |
15 |
23 |
27 |
31 |
36 |
37 |
38 |
39 |
40 |
41 |
43 |
46 |
47 |
48 |
--------------------------------------------------------------------------------
/android/app/src/main/kotlin/com/dhiwise/flutterarch/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.travelappflutter.app
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity() {
6 | }
7 |
--------------------------------------------------------------------------------
/android/app/src/main/kotlin/com/example/base_project/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.base_project
2 |
3 | import io.flutter.embedding.android.FlutterActivity
4 |
5 | class MainActivity: FlutterActivity() {
6 | }
7 |
--------------------------------------------------------------------------------
/android/app/src/main/res/drawable/launch_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/android/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/android/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/android/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | travelappflutter
4 |
5 |
--------------------------------------------------------------------------------
/android/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
15 |
18 |
19 |
--------------------------------------------------------------------------------
/android/app/src/profile/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/android/base_project_android.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/android/build.gradle:
--------------------------------------------------------------------------------
1 | buildscript {
2 | ext.kotlin_version = '1.6.0'
3 | repositories {
4 | google()
5 | jcenter()
6 | }
7 |
8 | dependencies {
9 | classpath 'com.android.tools.build:gradle:4.0.1'
10 | classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
11 | }
12 | }
13 |
14 | allprojects {
15 | repositories {
16 | google()
17 | jcenter()
18 | }
19 | }
20 |
21 | rootProject.buildDir = '../build'
22 | subprojects {
23 | project.buildDir = "${rootProject.buildDir}/${project.name}"
24 | }
25 | subprojects {
26 | project.evaluationDependsOn(':app')
27 | }
28 |
29 | task clean(type: Delete) {
30 | delete rootProject.buildDir
31 | }
32 |
--------------------------------------------------------------------------------
/android/flutterarch_android.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/android/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs=-Xmx1536M
2 | android.useAndroidX=true
3 | android.enableJetifier=true
4 |
--------------------------------------------------------------------------------
/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.5.1-all.zip
7 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/assets/images/image_not_found.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/image_not_found.png
--------------------------------------------------------------------------------
/assets/images/img_.svg:
--------------------------------------------------------------------------------
1 |
13 |
--------------------------------------------------------------------------------
/assets/images/img_252a6624a42c117.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_252a6624a42c117.png
--------------------------------------------------------------------------------
/assets/images/img_32badb63498577.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_32badb63498577.png
--------------------------------------------------------------------------------
/assets/images/img_7f47f9144194941.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_7f47f9144194941.png
--------------------------------------------------------------------------------
/assets/images/img_afbea499038243.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_afbea499038243.png
--------------------------------------------------------------------------------
/assets/images/img_arrowleft.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_arrowleft_44x44.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_arrowright.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_arrowup.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_bookmark.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_bookmark_44x44.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_bookmark_white_a700.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_bookmark_white_a700.png
--------------------------------------------------------------------------------
/assets/images/img_calendar.svg:
--------------------------------------------------------------------------------
1 |
13 |
--------------------------------------------------------------------------------
/assets/images/img_calendar_24x24.svg:
--------------------------------------------------------------------------------
1 |
13 |
--------------------------------------------------------------------------------
/assets/images/img_call.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_checkmark.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/assets/images/img_checkmark_1.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_checkmark_14x14.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_checkmark_7x10.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_checkmark_9x12.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_checkmark_9x16.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_clock.svg:
--------------------------------------------------------------------------------
1 |
12 |
--------------------------------------------------------------------------------
/assets/images/img_cut.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/assets/images/img_edit.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_edit_24x24.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_ellipse21.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse21.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse21_24x24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse21_24x24.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse23.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse23.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse23_24x24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse23_24x24.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse25.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse25.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse25_24x24.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse25_24x24.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse897.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse897.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse897_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse897_1.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse897_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse897_2.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse897_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse897_3.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse897_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse897_4.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse897_48x48.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse897_48x48.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse897_5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse897_5.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse899.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse899.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse901.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse901.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse901_55x55.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse901_55x55.png
--------------------------------------------------------------------------------
/assets/images/img_ellipse903.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_ellipse903.png
--------------------------------------------------------------------------------
/assets/images/img_eye.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_eyeicon.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_favorite.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_group335.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_group335.png
--------------------------------------------------------------------------------
/assets/images/img_group67.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_home.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/assets/images/img_lightbulb.svg:
--------------------------------------------------------------------------------
1 |
24 |
--------------------------------------------------------------------------------
/assets/images/img_link.svg:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/assets/images/img_location.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_location_24x24.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_maximize.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/assets/images/img_microphone.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_overflowmenu.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_rectangle14.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_rectangle15.svg:
--------------------------------------------------------------------------------
1 |
18 |
--------------------------------------------------------------------------------
/assets/images/img_rectangle27.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle27.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle29.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle29_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle29_1.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle29_80x80.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle29_80x80.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle34.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle34.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle818.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle818.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle821.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_rectangle822.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle822.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle823.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle823.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle824.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle824.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle825.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle825.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle826.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle826.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle830.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle830.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle831.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle831.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle833.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle833.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle838.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle838.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle838_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle838_1.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle838_124x137.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle838_124x137.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle838_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle838_2.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle838_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle838_3.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle839.svg:
--------------------------------------------------------------------------------
1 |
18 |
--------------------------------------------------------------------------------
/assets/images/img_rectangle839_124x137.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle839_124x137.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle843.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle843.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle843_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle843_1.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle843_116x95.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle843_116x95.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle843_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_rectangle843_2.png
--------------------------------------------------------------------------------
/assets/images/img_rectangle845.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_reply.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/assets/images/img_search.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_search_bluegray_400.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_signal.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_signal_24x40.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_star.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/assets/images/img_star_yellow_600.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/assets/images/img_star_yellow_600.png
--------------------------------------------------------------------------------
/assets/images/img_ticket.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/assets/images/img_trash.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/assets/images/img_user.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/assets/images/img_user_1.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/assets/images/img_user_2.svg:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/assets/images/img_user_24x24.svg:
--------------------------------------------------------------------------------
1 |
7 |
--------------------------------------------------------------------------------
/assets/images/img_vector2524.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/ios/.gitignore:
--------------------------------------------------------------------------------
1 | *.mode1v3
2 | *.mode2v3
3 | *.moved-aside
4 | *.pbxuser
5 | *.perspectivev3
6 | **/*sync/
7 | .sconsign.dblite
8 | .tags*
9 | **/.vagrant/
10 | **/DerivedData/
11 | Icon?
12 | **/Pods/
13 | **/.symlinks/
14 | profile
15 | xcuserdata
16 | **/.generated/
17 | Flutter/App.framework
18 | Flutter/Flutter.framework
19 | Flutter/Flutter.podspec
20 | Flutter/Generated.xcconfig
21 | Flutter/app.flx
22 | Flutter/app.zip
23 | Flutter/flutter_assets/
24 | Flutter/flutter_export_environment.sh
25 | ServiceDefinitions.json
26 | Runner/GeneratedPluginRegistrant.*
27 |
28 | # Exceptions to above rules.
29 | !default.mode1v3
30 | !default.mode2v3
31 | !default.pbxuser
32 | !default.perspectivev3
33 |
--------------------------------------------------------------------------------
/ios/Flutter/AppFrameworkInfo.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
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 |
--------------------------------------------------------------------------------
/ios/Flutter/Debug.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/ios/Flutter/Release.xcconfig:
--------------------------------------------------------------------------------
1 | #include "Generated.xcconfig"
2 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
15 |
21 |
22 |
23 |
24 |
25 |
30 |
31 |
32 |
33 |
39 |
40 |
41 |
42 |
43 |
44 |
54 |
56 |
62 |
63 |
64 |
65 |
66 |
67 |
73 |
75 |
81 |
82 |
83 |
84 |
86 |
87 |
90 |
91 |
92 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PreviewsEnabled
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "size" : "20x20",
5 | "idiom" : "iphone",
6 | "filename" : "Icon-App-20x20@1x.png",
7 | "scale" : "1x"
8 | },
9 | {
10 | "size" : "40x40",
11 | "idiom" : "iphone",
12 | "filename" : "Icon-App-20x20@2x.png",
13 | "scale" : "2x"
14 | },
15 | {
16 | "size" : "60x60",
17 | "idiom" : "iphone",
18 | "filename" : "Icon-App-20x20@3x.png",
19 | "scale" : "3x"
20 | },
21 | {
22 | "size" : "29x29",
23 | "idiom" : "iphone",
24 | "filename" : "Icon-App-29x29@1x.png",
25 | "scale" : "1x"
26 | },
27 | {
28 | "size" : "58x58",
29 | "idiom" : "iphone",
30 | "filename" : "Icon-App-29x29@2x.png",
31 | "scale" : "2x"
32 | },
33 | {
34 | "size" : "87x87",
35 | "idiom" : "iphone",
36 | "filename" : "Icon-App-29x29@3x.png",
37 | "scale" : "3x"
38 | },
39 | {
40 | "size" : "40x40",
41 | "idiom" : "iphone",
42 | "filename" : "Icon-App-40x40@1x.png",
43 | "scale" : "1x"
44 | },
45 | {
46 | "size" : "80x80",
47 | "idiom" : "iphone",
48 | "filename" : "Icon-App-40x40@2x.png",
49 | "scale" : "2x"
50 | },
51 | {
52 | "size" : "120x120",
53 | "idiom" : "iphone",
54 | "filename" : "Icon-App-40x40@3x.png",
55 | "scale" : "3x"
56 | },
57 | {
58 | "size" : "60x60",
59 | "idiom" : "iphone",
60 | "filename" : "",
61 | "scale" : "2x"
62 | },
63 | {
64 | "size" : "60x60",
65 | "idiom" : "iphone",
66 | "filename" : "",
67 | "scale" : "3x"
68 | },
69 | {
70 | "size" : "76x76",
71 | "idiom" : "ipad",
72 | "filename" : "Icon-App-76x76@1x.png",
73 | "scale" : "1x"
74 | },
75 | {
76 | "size" : "152x152",
77 | "idiom" : "ipad",
78 | "filename" : "Icon-App-76x76@2x.png",
79 | "scale" : "2x"
80 | },
81 | {
82 | "size" : "167x167",
83 | "idiom" : "ipad",
84 | "filename" : "Icon-App-83.5x83.5@2x.png",
85 | "scale" : "2x"
86 | },
87 | {
88 | "size" : "1024x1024",
89 | "idiom" : "ipad",
90 | "filename" : "Icon-App-1024x1024@1x.png",
91 | "scale" : "1x"
92 | }
93 | ],
94 | "info" : {
95 | "version" : 1,
96 | "author" : "ios_icon_set"
97 | }
98 | }
99 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/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/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "LaunchImage.png",
6 | "scale" : "1x"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "filename" : "LaunchImage@2x.png",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "filename" : "LaunchImage@3x.png",
16 | "scale" : "3x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
--------------------------------------------------------------------------------
/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
--------------------------------------------------------------------------------
/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/Base.lproj/LaunchScreen.storyboard:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/ios/Runner/Base.lproj/Main.storyboard:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/ios/Runner/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | travelappflutter
15 | CFBundlePackageType
16 | APPL
17 | CFBundleShortVersionString
18 | $(FLUTTER_BUILD_NAME)
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | $(FLUTTER_BUILD_NUMBER)
23 | LSRequiresIPhoneOS
24 |
25 | UILaunchStoryboardName
26 | LaunchScreen
27 | UIMainStoryboardFile
28 | Main
29 | UISupportedInterfaceOrientations
30 |
31 | UIInterfaceOrientationPortrait
32 | UIInterfaceOrientationLandscapeLeft
33 | UIInterfaceOrientationLandscapeRight
34 |
35 | UISupportedInterfaceOrientations~ipad
36 |
37 | UIInterfaceOrientationPortrait
38 | UIInterfaceOrientationPortraitUpsideDown
39 | UIInterfaceOrientationLandscapeLeft
40 | UIInterfaceOrientationLandscapeRight
41 |
42 | UIViewControllerBasedStatusBarAppearance
43 |
44 |
45 |
46 |
--------------------------------------------------------------------------------
/ios/Runner/Runner-Bridging-Header.h:
--------------------------------------------------------------------------------
1 | #import "GeneratedPluginRegistrant.h"
2 |
--------------------------------------------------------------------------------
/lib/core/app_export.dart:
--------------------------------------------------------------------------------
1 | export 'package:get/get.dart';
2 | export 'package:travelappflutter/localization/app_localization.dart';
3 | export 'package:travelappflutter/core/constants/constants.dart';
4 | export 'package:travelappflutter/core/utils/image_constant.dart';
5 | export 'package:travelappflutter/core/utils/color_constant.dart';
6 | export 'package:travelappflutter/core/utils/size_utils.dart';
7 | export 'package:travelappflutter/core/utils/pref_utils.dart';
8 | export 'package:travelappflutter/core/utils/initial_bindings.dart';
9 | export 'package:travelappflutter/theme/app_style.dart';
10 | export 'package:travelappflutter/theme/app_decoration.dart';
11 | export 'package:connectivity_plus/connectivity_plus.dart';
12 | export 'package:travelappflutter/routes/app_routes.dart';
13 | export 'package:travelappflutter/data/models/selectionPopupModel/selection_popup_model.dart';
14 | export 'package:travelappflutter/widgets/common_image_view.dart';
15 | export 'package:travelappflutter/core/errors/exceptions.dart';
16 | export 'package:travelappflutter/core/network/network_info.dart';
17 | export 'package:travelappflutter/core/utils/logger.dart';
18 | export 'package:travelappflutter/core/utils/date_time_utils.dart';
19 |
--------------------------------------------------------------------------------
/lib/core/constants/constants.dart:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/lib/core/errors/exceptions.dart:
--------------------------------------------------------------------------------
1 | class ServerException implements Exception {}
2 |
3 | class CacheException implements Exception {}
4 |
5 | class NetworkException implements Exception {}
6 |
7 | ///can be used for throwing [NoInternetException]
8 | class NoInternetException implements Exception {
9 | late String _message;
10 |
11 | NoInternetException([String message = 'NoInternetException Occurred']) {
12 | this._message = message;
13 | }
14 |
15 | @override
16 | String toString() {
17 | return _message;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/lib/core/errors/failures.dart:
--------------------------------------------------------------------------------
1 | abstract class Failure {}
2 |
3 | // General failures
4 | class ServerFailure extends Failure {}
5 |
6 | class CacheFailure extends Failure {}
7 |
8 | class NetworkFailure extends Failure {}
9 |
--------------------------------------------------------------------------------
/lib/core/network/network_info.dart:
--------------------------------------------------------------------------------
1 | import 'package:connectivity_plus/connectivity_plus.dart';
2 |
3 | // For checking internet connectivity
4 | abstract class NetworkInfoI {
5 | Future isConnected();
6 |
7 | Future get connectivityResult;
8 |
9 | Stream get onConnectivityChanged;
10 | }
11 |
12 | class NetworkInfo implements NetworkInfoI {
13 | Connectivity connectivity;
14 |
15 | NetworkInfo(this.connectivity) {
16 | connectivity = this.connectivity;
17 | }
18 |
19 | ///checks internet is connected or not
20 | ///returns [true] if internet is connected
21 | ///else it will return [false]
22 | @override
23 | Future isConnected() async {
24 | final result = await connectivity.checkConnectivity();
25 | if (result != ConnectivityResult.none) {
26 | return true;
27 | }
28 | return false;
29 | }
30 |
31 | // to check type of internet connectivity
32 | @override
33 | Future get connectivityResult async {
34 | return connectivity.checkConnectivity();
35 | }
36 |
37 | //check the type on internet connection on changed of internet connection
38 | @override
39 | Stream get onConnectivityChanged =>
40 | connectivity.onConnectivityChanged;
41 | }
42 |
--------------------------------------------------------------------------------
/lib/core/utils/color_constant.dart:
--------------------------------------------------------------------------------
1 | import 'dart:ui';
2 | import 'package:flutter/material.dart';
3 |
4 | class ColorConstant {
5 | static Color deepOrangeA200 = fromHex('#ff7029');
6 |
7 | static Color whiteA7007e = fromHex('#7effffff');
8 |
9 | static Color blueA400 = fromHex('#0d6efd');
10 |
11 | static Color whiteA70090 = fromHex('#90ffffff');
12 |
13 | static Color gray60019 = fromHex('#197b7373');
14 |
15 | static Color gray9006c = fromHex('#6c1b1e28');
16 |
17 | static Color green800 = fromHex('#19b000');
18 |
19 | static Color yellow600 = fromHex('#ffd336');
20 |
21 | static Color black900 = fromHex('#000000');
22 |
23 | static Color redA400 = fromHex('#fe2352');
24 |
25 | static Color bluegray2001e = fromHex('#1eb3bcc8');
26 |
27 | static Color bluegray4006c = fromHex('#6c7c838d');
28 |
29 | static Color gray600 = fromHex('#707b81');
30 |
31 | static Color gray90068 = fromHex('#681b1e28');
32 |
33 | static Color whiteA7006c = fromHex('#6cffffff');
34 |
35 | static Color gray900 = fromHex('#1b1e28');
36 |
37 | static Color bluegray100 = fromHex('#d0d9e6');
38 |
39 | static Color bluegray20023 = fromHex('#23b3bcc8');
40 |
41 | static Color gray800Ab = fromHex('#ab3d3d3d');
42 |
43 | static Color blue50 = fromHex('#e5f4ff');
44 |
45 | static Color gray100 = fromHex('#f6f6f8');
46 |
47 | static Color bluegray20028 = fromHex('#28b3bcc8');
48 |
49 | static Color bluegray900 = fromHex('#2d323d');
50 |
51 | static Color bluegray401 = fromHex('#888888');
52 |
53 | static Color bluegray400 = fromHex('#7c838d');
54 |
55 | static Color blue100 = fromHex('#cae9ff');
56 |
57 | static Color bluegray2001e1 = fromHex('#1ebdc5d3');
58 |
59 | static Color whiteA700 = fromHex('#ffffff');
60 |
61 | static Color blueA4002b = fromHex('#2b0d6efd');
62 |
63 | static Color fromHex(String hexString) {
64 | final buffer = StringBuffer();
65 | if (hexString.length == 6 || hexString.length == 7) buffer.write('ff');
66 | buffer.write(hexString.replaceFirst('#', ''));
67 | return Color(int.parse(buffer.toString(), radix: 16));
68 | }
69 | }
70 |
--------------------------------------------------------------------------------
/lib/core/utils/date_time_utils.dart:
--------------------------------------------------------------------------------
1 | import 'package:intl/date_symbol_data_local.dart';
2 | import 'package:intl/intl.dart';
3 |
4 | const String DD_MM_YYYY = 'dd/MM/yyyy';
5 | const String FULL_DATE_FORMAT = 'dd MMMM yyyy';
6 |
7 | extension DateTimeExtension on DateTime {
8 | String format([String pattern = DD_MM_YYYY, String? locale]) {
9 | if (locale != null && locale.isNotEmpty) {
10 | initializeDateFormatting(locale);
11 | }
12 | return DateFormat(pattern, locale).format(this);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/lib/core/utils/initial_bindings.dart:
--------------------------------------------------------------------------------
1 | import 'package:travelappflutter/core/app_export.dart';
2 | import 'package:travelappflutter/data/apiClient/api_client.dart';
3 |
4 | class InitialBindings extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.put(PrefUtils());
8 | Get.put(ApiClient());
9 | Connectivity connectivity = Connectivity();
10 | Get.put(NetworkInfo(connectivity));
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/lib/core/utils/logger.dart:
--------------------------------------------------------------------------------
1 | class Logger {
2 | static LogMode _logMode = LogMode.debug;
3 |
4 | static void init(LogMode mode) {
5 | Logger._logMode = mode;
6 | }
7 |
8 | static void log(dynamic data, {StackTrace? stackTrace}) {
9 | if (_logMode == LogMode.debug) {
10 | print("Error: $data$stackTrace");
11 | }
12 | }
13 | }
14 |
15 | enum LogMode { debug, live }
16 |
--------------------------------------------------------------------------------
/lib/core/utils/pref_utils.dart:
--------------------------------------------------------------------------------
1 | //ignore: unused_import
2 | import 'dart:convert';
3 | import 'package:shared_preferences/shared_preferences.dart';
4 |
5 | class PrefUtils {
6 | static SharedPreferences? _sharedPreferences;
7 |
8 | PrefUtils() {
9 | SharedPreferences.getInstance().then((value) {
10 | _sharedPreferences = value;
11 | });
12 | }
13 |
14 | Future init() async {
15 | _sharedPreferences ??= await SharedPreferences.getInstance();
16 | print('SharedPreference Initialized');
17 | }
18 |
19 | ///will clear all the data stored in preference
20 | void clearPreferencesData() async {
21 | _sharedPreferences!.clear();
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/lib/core/utils/progress_dialog_utils.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:get/get.dart';
3 |
4 | class ProgressDialogUtils {
5 | static bool isProgressVisible = false;
6 |
7 | ///common method for showing progress dialog
8 | static void showProgressDialog({isCancellable = false}) async {
9 | if (!isProgressVisible) {
10 | Get.dialog(
11 | Center(
12 | child: CircularProgressIndicator.adaptive(
13 | strokeWidth: 4,
14 | valueColor: AlwaysStoppedAnimation(
15 | Colors.white,
16 | ),
17 | ),
18 | ),
19 | barrierDismissible: isCancellable,
20 | );
21 | isProgressVisible = true;
22 | }
23 | }
24 |
25 | ///common method for hiding progress dialog
26 | static void hideProgressDialog() {
27 | if (isProgressVisible) Get.back();
28 | isProgressVisible = false;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/lib/core/utils/size_utils.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 |
3 | Size size = WidgetsBinding.instance.window.physicalSize /
4 | WidgetsBinding.instance.window.devicePixelRatio;
5 | const num DESIGN_WIDTH = 375;
6 | const num DESIGN_HEIGHT = 812;
7 | const num DESIGN_STATUS_BAR = 48;
8 |
9 | ///This method is used to get device viewport width.
10 | get width {
11 | return size.width;
12 | }
13 |
14 | ///This method is used to get device viewport height.
15 | get height {
16 | num statusBar =
17 | MediaQueryData.fromWindow(WidgetsBinding.instance.window).viewPadding.top;
18 | num screenHeight = size.height - statusBar;
19 | return screenHeight;
20 | }
21 |
22 | ///This method is used to set padding/margin (for the left and Right side) & width of the screen or widget according to the Viewport width.
23 | double getHorizontalSize(double px) {
24 | return (px * width) / DESIGN_WIDTH;
25 | }
26 |
27 | ///This method is used to set padding/margin (for the top and bottom side) & height of the screen or widget according to the Viewport height.
28 | double getVerticalSize(double px) {
29 | return (px * height) / (DESIGN_HEIGHT - DESIGN_STATUS_BAR);
30 | }
31 |
32 | ///This method is used to set smallest px in image height and width
33 | double getSize(double px) {
34 | var height = getVerticalSize(px);
35 | var width = getHorizontalSize(px);
36 | if (height < width) {
37 | return height.toInt().toDouble();
38 | } else {
39 | return width.toInt().toDouble();
40 | }
41 | }
42 |
43 | ///This method is used to set text font size according to Viewport
44 | double getFontSize(double px) {
45 | return getSize(px);
46 | }
47 |
48 | ///This method is used to set padding responsively
49 | EdgeInsetsGeometry getPadding({
50 | double? all,
51 | double? left,
52 | double? top,
53 | double? right,
54 | double? bottom,
55 | }) {
56 | return getMarginOrPadding(
57 | all: all,
58 | left: left,
59 | top: top,
60 | right: right,
61 | bottom: bottom,
62 | );
63 | }
64 |
65 | ///This method is used to set margin responsively
66 | EdgeInsetsGeometry getMargin({
67 | double? all,
68 | double? left,
69 | double? top,
70 | double? right,
71 | double? bottom,
72 | }) {
73 | return getMarginOrPadding(
74 | all: all,
75 | left: left,
76 | top: top,
77 | right: right,
78 | bottom: bottom,
79 | );
80 | }
81 |
82 | ///This method is used to get padding or margin responsively
83 | EdgeInsetsGeometry getMarginOrPadding({
84 | double? all,
85 | double? left,
86 | double? top,
87 | double? right,
88 | double? bottom,
89 | }) {
90 | if (all != null) {
91 | left = all;
92 | top = all;
93 | right = all;
94 | bottom = all;
95 | }
96 | return EdgeInsets.only(
97 | left: getHorizontalSize(
98 | left ?? 0,
99 | ),
100 | top: getVerticalSize(
101 | top ?? 0,
102 | ),
103 | right: getHorizontalSize(
104 | right ?? 0,
105 | ),
106 | bottom: getVerticalSize(
107 | bottom ?? 0,
108 | ),
109 | );
110 | }
111 |
--------------------------------------------------------------------------------
/lib/core/utils/validation_functions.dart:
--------------------------------------------------------------------------------
1 | /// Checks if string is email.
2 | bool isValidEmail(String? inputString, {bool isRequired = false}) {
3 | bool isInputStringValid = false;
4 |
5 | if ((inputString == null ? true : inputString.isEmpty) && !isRequired) {
6 | isInputStringValid = true;
7 | }
8 |
9 | if (inputString != null) {
10 | const pattern =
11 | r'^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$';
12 |
13 | final regExp = RegExp(pattern);
14 |
15 | isInputStringValid = regExp.hasMatch(inputString);
16 | }
17 |
18 | return isInputStringValid;
19 | }
20 |
--------------------------------------------------------------------------------
/lib/data/apiClient/api_client.dart:
--------------------------------------------------------------------------------
1 | import 'package:travelappflutter/core/app_export.dart';
2 |
3 | class ApiClient extends GetConnect {}
4 |
--------------------------------------------------------------------------------
/lib/data/models/selectionPopupModel/selection_popup_model.dart:
--------------------------------------------------------------------------------
1 | ///SelectionPopupModel is common model
2 | ///used for setting data into dropdowns
3 | class SelectionPopupModel {
4 | int? id;
5 | String title;
6 | dynamic value;
7 | bool isSelected;
8 |
9 | SelectionPopupModel({
10 | this.id,
11 | required this.title,
12 | this.value,
13 | this.isSelected = false,
14 | });
15 | }
16 |
--------------------------------------------------------------------------------
/lib/localization/app_localization.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 | import 'en_us/en_us_translations.dart';
3 |
4 | class AppLocalization extends Translations {
5 | @override
6 | Map> get keys => {'en_US': enUs};
7 | }
8 |
--------------------------------------------------------------------------------
/lib/main.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/foundation.dart';
2 | import 'package:flutter/material.dart';
3 | import 'package:flutter/services.dart';
4 |
5 | import 'core/app_export.dart';
6 |
7 | void main() {
8 | WidgetsFlutterBinding.ensureInitialized();
9 | SystemChrome.setPreferredOrientations([
10 | DeviceOrientation.portraitUp,
11 | ]).then((value) {
12 | Logger.init(kReleaseMode ? LogMode.live : LogMode.debug);
13 | runApp(MyApp());
14 | });
15 | }
16 |
17 | class MyApp extends StatelessWidget {
18 | // This widget is the root of your application.
19 | @override
20 | Widget build(BuildContext context) {
21 | return GetMaterialApp(
22 | debugShowCheckedModeBanner: false,
23 | translations: AppLocalization(),
24 | locale: Get.deviceLocale, //for setting localization strings
25 | fallbackLocale: Locale('en', 'US'),
26 | title: 'travelappflutter',
27 | initialBinding: InitialBindings(),
28 | initialRoute: AppRoutes.initialRoute,
29 | getPages: AppRoutes.pages,
30 | );
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/lib/presentation/all_popular_trip_package_screen/all_popular_trip_package_screen.dart:
--------------------------------------------------------------------------------
1 | import '../all_popular_trip_package_screen/widgets/listrectangle843_item_widget.dart';
2 | import 'controller/all_popular_trip_package_controller.dart';
3 | import 'models/listrectangle843_item_model.dart';
4 | import 'package:flutter/material.dart';
5 | import 'package:travelappflutter/core/app_export.dart';
6 | import 'package:travelappflutter/widgets/app_bar/appbar_iconbutton.dart';
7 | import 'package:travelappflutter/widgets/app_bar/appbar_title.dart';
8 | import 'package:travelappflutter/widgets/app_bar/custom_app_bar.dart';
9 |
10 | class AllPopularTripPackageScreen
11 | extends GetWidget {
12 | @override
13 | Widget build(BuildContext context) {
14 | return SafeArea(
15 | child: Scaffold(
16 | backgroundColor: ColorConstant.whiteA700,
17 | appBar: CustomAppBar(
18 | height: getVerticalSize(56.00),
19 | leadingWidth: 64,
20 | leading: AppbarIconbutton(
21 | svgPath: ImageConstant.imgArrowleft,
22 | margin: getMargin(left: 20, top: 6, bottom: 6),
23 | onTap: onTapArrowleft5),
24 | centerTitle: true,
25 | title: AppbarTitle(text: "lbl_popular_package".tr)),
26 | body: Container(
27 | width: size.width,
28 | child: SingleChildScrollView(
29 | child: Column(
30 | mainAxisSize: MainAxisSize.min,
31 | crossAxisAlignment: CrossAxisAlignment.center,
32 | mainAxisAlignment: MainAxisAlignment.center,
33 | children: [
34 | Align(
35 | alignment: Alignment.centerLeft,
36 | child: Padding(
37 | padding: getPadding(left: 20, top: 29, right: 20),
38 | child: Text("msg_all_popular_tri".tr,
39 | overflow: TextOverflow.ellipsis,
40 | textAlign: TextAlign.left,
41 | style: AppStyle.txtSFUIDisplaySemibold20
42 | .copyWith(height: 1.00)))),
43 | Padding(
44 | padding: getPadding(
45 | left: 20, top: 16, right: 20, bottom: 30),
46 | child: Obx(() => ListView.builder(
47 | physics: BouncingScrollPhysics(),
48 | shrinkWrap: true,
49 | itemCount: controller
50 | .allPopularTripPackageModelObj
51 | .value
52 | .listrectangle843ItemList
53 | .length,
54 | itemBuilder: (context, index) {
55 | Listrectangle843ItemModel model = controller
56 | .allPopularTripPackageModelObj
57 | .value
58 | .listrectangle843ItemList[index];
59 | return Listrectangle843ItemWidget(model);
60 | })))
61 | ])))));
62 | }
63 |
64 | onTapArrowleft5() {
65 | Get.back();
66 | }
67 | }
68 |
--------------------------------------------------------------------------------
/lib/presentation/all_popular_trip_package_screen/binding/all_popular_trip_package_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/all_popular_trip_package_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class AllPopularTripPackageBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => AllPopularTripPackageController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/all_popular_trip_package_screen/controller/all_popular_trip_package_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/all_popular_trip_package_screen/models/all_popular_trip_package_model.dart';
3 |
4 | class AllPopularTripPackageController extends GetxController {
5 | Rx allPopularTripPackageModelObj =
6 | AllPopularTripPackageModel().obs;
7 |
8 | @override
9 | void onReady() {
10 | super.onReady();
11 | }
12 |
13 | @override
14 | void onClose() {
15 | super.onClose();
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/lib/presentation/all_popular_trip_package_screen/models/all_popular_trip_package_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 | import 'listrectangle843_item_model.dart';
3 |
4 | class AllPopularTripPackageModel {
5 | RxList listrectangle843ItemList =
6 | RxList.filled(4, Listrectangle843ItemModel());
7 | }
8 |
--------------------------------------------------------------------------------
/lib/presentation/all_popular_trip_package_screen/models/listrectangle843_item_model.dart:
--------------------------------------------------------------------------------
1 | class Listrectangle843ItemModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/app_navigation_screen/binding/app_navigation_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/app_navigation_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class AppNavigationBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => AppNavigationController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/app_navigation_screen/controller/app_navigation_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/app_navigation_screen/models/app_navigation_model.dart';
3 |
4 | class AppNavigationController extends GetxController {
5 | Rx appNavigationModelObj = AppNavigationModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/app_navigation_screen/models/app_navigation_model.dart:
--------------------------------------------------------------------------------
1 | class AppNavigationModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/chats_screen/binding/chats_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/chats_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class ChatsBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => ChatsController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/chats_screen/controller/chats_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/chats_screen/models/chats_model.dart';
3 |
4 | class ChatsController extends GetxController {
5 | Rx chatsModelObj = ChatsModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/chats_screen/models/chats_model.dart:
--------------------------------------------------------------------------------
1 | class ChatsModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/details_screen/binding/details_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/details_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class DetailsBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => DetailsController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/details_screen/controller/details_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/details_screen/models/details_model.dart';
3 |
4 | class DetailsController extends GetxController {
5 | Rx detailsModelObj = DetailsModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/details_screen/models/details_model.dart:
--------------------------------------------------------------------------------
1 | class DetailsModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/edit_profile_screen/binding/edit_profile_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/edit_profile_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class EditProfileBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => EditProfileController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/edit_profile_screen/controller/edit_profile_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/edit_profile_screen/models/edit_profile_model.dart';
3 | import 'package:flutter/material.dart';
4 |
5 | class EditProfileController extends GetxController {
6 | TextEditingController languageController = TextEditingController();
7 |
8 | TextEditingController languageOneController = TextEditingController();
9 |
10 | TextEditingController group249Controller = TextEditingController();
11 |
12 | Rx editProfileModelObj = EditProfileModel().obs;
13 |
14 | @override
15 | void onReady() {
16 | super.onReady();
17 | }
18 |
19 | @override
20 | void onClose() {
21 | super.onClose();
22 | languageController.dispose();
23 | languageOneController.dispose();
24 | group249Controller.dispose();
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/lib/presentation/edit_profile_screen/models/edit_profile_model.dart:
--------------------------------------------------------------------------------
1 | class EditProfileModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/favorite_places_screen/binding/favorite_places_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/favorite_places_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class FavoritePlacesBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => FavoritePlacesController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/favorite_places_screen/controller/favorite_places_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/favorite_places_screen/models/favorite_places_model.dart';
3 |
4 | class FavoritePlacesController extends GetxController {
5 | Rx favoritePlacesModelObj = FavoritePlacesModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/favorite_places_screen/favorite_places_screen.dart:
--------------------------------------------------------------------------------
1 | import '../favorite_places_screen/widgets/gridrectangle838_item_widget.dart';
2 | import 'controller/favorite_places_controller.dart';
3 | import 'models/gridrectangle838_item_model.dart';
4 | import 'package:flutter/material.dart';
5 | import 'package:travelappflutter/core/app_export.dart';
6 | import 'package:travelappflutter/widgets/app_bar/appbar_iconbutton.dart';
7 | import 'package:travelappflutter/widgets/app_bar/appbar_title.dart';
8 | import 'package:travelappflutter/widgets/app_bar/custom_app_bar.dart';
9 |
10 | class FavoritePlacesScreen extends GetWidget {
11 | @override
12 | Widget build(BuildContext context) {
13 | return SafeArea(
14 | child: Scaffold(
15 | backgroundColor: ColorConstant.whiteA700,
16 | appBar: CustomAppBar(
17 | height: getVerticalSize(56.00),
18 | leadingWidth: 64,
19 | leading: AppbarIconbutton(
20 | svgPath: ImageConstant.imgArrowleft,
21 | margin: getMargin(left: 20, top: 6, bottom: 6),
22 | onTap: onTapArrowleft6),
23 | centerTitle: true,
24 | title: AppbarTitle(text: "lbl_favorite_places".tr)),
25 | body: Container(
26 | width: size.width,
27 | child: SingleChildScrollView(
28 | child: Column(
29 | mainAxisSize: MainAxisSize.min,
30 | crossAxisAlignment: CrossAxisAlignment.center,
31 | mainAxisAlignment: MainAxisAlignment.end,
32 | children: [
33 | Align(
34 | alignment: Alignment.centerLeft,
35 | child: Padding(
36 | padding: getPadding(left: 20, top: 27, right: 20),
37 | child: Text("lbl_favorite_places".tr,
38 | overflow: TextOverflow.ellipsis,
39 | textAlign: TextAlign.left,
40 | style: AppStyle.txtSFUIDisplaySemibold20
41 | .copyWith(height: 1.00)))),
42 | Padding(
43 | padding: getPadding(
44 | left: 20, top: 20, right: 19, bottom: 8),
45 | child: Obx(() => GridView.builder(
46 | shrinkWrap: true,
47 | gridDelegate:
48 | SliverGridDelegateWithFixedCrossAxisCount(
49 | mainAxisExtent: getVerticalSize(195.00),
50 | crossAxisCount: 2,
51 | mainAxisSpacing: getHorizontalSize(14.00),
52 | crossAxisSpacing:
53 | getHorizontalSize(14.00)),
54 | physics: BouncingScrollPhysics(),
55 | itemCount: controller.favoritePlacesModelObj.value
56 | .gridrectangle838ItemList.length,
57 | itemBuilder: (context, index) {
58 | Gridrectangle838ItemModel model = controller
59 | .favoritePlacesModelObj
60 | .value
61 | .gridrectangle838ItemList[index];
62 | return Gridrectangle838ItemWidget(model);
63 | })))
64 | ])))));
65 | }
66 |
67 | onTapArrowleft6() {
68 | Get.back();
69 | }
70 | }
71 |
--------------------------------------------------------------------------------
/lib/presentation/favorite_places_screen/models/favorite_places_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 | import 'gridrectangle838_item_model.dart';
3 |
4 | class FavoritePlacesModel {
5 | RxList gridrectangle838ItemList =
6 | RxList.filled(6, Gridrectangle838ItemModel());
7 | }
8 |
--------------------------------------------------------------------------------
/lib/presentation/favorite_places_screen/models/gridrectangle838_item_model.dart:
--------------------------------------------------------------------------------
1 | class Gridrectangle838ItemModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/forgot_password_screen/binding/forgot_password_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/forgot_password_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class ForgotPasswordBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => ForgotPasswordController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/forgot_password_screen/controller/forgot_password_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/forgot_password_screen/models/forgot_password_model.dart';
3 | import 'package:flutter/material.dart';
4 |
5 | class ForgotPasswordController extends GetxController {
6 | TextEditingController emailController = TextEditingController();
7 |
8 | Rx forgotPasswordModelObj = ForgotPasswordModel().obs;
9 |
10 | @override
11 | void onReady() {
12 | super.onReady();
13 | }
14 |
15 | @override
16 | void onClose() {
17 | super.onClose();
18 | emailController.dispose();
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/presentation/forgot_password_screen/models/forgot_password_model.dart:
--------------------------------------------------------------------------------
1 | class ForgotPasswordModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/home_screen/binding/home_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/home_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class HomeBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => HomeController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/home_screen/controller/home_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/home_screen/models/home_model.dart';
3 |
4 | class HomeController extends GetxController {
5 | Rx homeModelObj = HomeModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/home_screen/models/home_item_model.dart:
--------------------------------------------------------------------------------
1 | class HomeItemModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/home_screen/models/home_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 | import 'home_item_model.dart';
3 |
4 | class HomeModel {
5 | RxList homeItemList = RxList.filled(2, HomeItemModel());
6 | }
7 |
--------------------------------------------------------------------------------
/lib/presentation/messages_screen/binding/messages_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/messages_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class MessagesBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => MessagesController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/messages_screen/controller/messages_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/messages_screen/models/messages_model.dart';
3 | import 'package:flutter/material.dart';
4 |
5 | class MessagesController extends GetxController {
6 | TextEditingController searchButtonController = TextEditingController();
7 |
8 | Rx messagesModelObj = MessagesModel().obs;
9 |
10 | @override
11 | void onReady() {
12 | super.onReady();
13 | }
14 |
15 | @override
16 | void onClose() {
17 | super.onClose();
18 | searchButtonController.dispose();
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/presentation/messages_screen/models/messages_item_model.dart:
--------------------------------------------------------------------------------
1 | class MessagesItemModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/messages_screen/models/messages_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 | import 'messages_item_model.dart';
3 |
4 | class MessagesModel {
5 | RxList messagesItemList =
6 | RxList.filled(5, MessagesItemModel());
7 | }
8 |
--------------------------------------------------------------------------------
/lib/presentation/notification_screen/binding/notification_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/notification_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class NotificationBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => NotificationController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/notification_screen/controller/notification_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/notification_screen/models/notification_model.dart';
3 |
4 | class NotificationController extends GetxController {
5 | Rx notificationModelObj = NotificationModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/notification_screen/models/notification_item_model.dart:
--------------------------------------------------------------------------------
1 | class NotificationItemModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/notification_screen/models/notification_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 | import 'notification_item_model.dart';
3 |
4 | class NotificationModel {
5 | RxList notificationItemList =
6 | RxList.filled(6, NotificationItemModel());
7 | }
8 |
--------------------------------------------------------------------------------
/lib/presentation/notification_screen/widgets/notification_item_widget.dart:
--------------------------------------------------------------------------------
1 | import '../controller/notification_controller.dart';
2 | import '../models/notification_item_model.dart';
3 | import 'package:flutter/material.dart';
4 | import 'package:travelappflutter/core/app_export.dart';
5 |
6 | // ignore: must_be_immutable
7 | class NotificationItemWidget extends StatelessWidget {
8 | NotificationItemWidget(this.notificationItemModelObj);
9 |
10 | NotificationItemModel notificationItemModelObj;
11 |
12 | var controller = Get.find();
13 |
14 | @override
15 | Widget build(BuildContext context) {
16 | return Container(
17 | margin: getMargin(
18 | top: 8.0,
19 | bottom: 8.0,
20 | ),
21 | decoration: AppDecoration.fillBlue50,
22 | child: Row(
23 | crossAxisAlignment: CrossAxisAlignment.center,
24 | mainAxisSize: MainAxisSize.max,
25 | children: [
26 | Padding(
27 | padding: getPadding(
28 | left: 20,
29 | top: 14,
30 | bottom: 14,
31 | ),
32 | child: ClipRRect(
33 | borderRadius: BorderRadius.circular(
34 | getHorizontalSize(
35 | 24.00,
36 | ),
37 | ),
38 | child: CommonImageView(
39 | imagePath: ImageConstant.imgEllipse89748x48,
40 | height: getSize(
41 | 48.00,
42 | ),
43 | width: getSize(
44 | 48.00,
45 | ),
46 | fit: BoxFit.cover,
47 | ),
48 | ),
49 | ),
50 | Padding(
51 | padding: getPadding(
52 | left: 14,
53 | top: 14,
54 | bottom: 14,
55 | ),
56 | child: Column(
57 | mainAxisSize: MainAxisSize.min,
58 | crossAxisAlignment: CrossAxisAlignment.start,
59 | mainAxisAlignment: MainAxisAlignment.start,
60 | children: [
61 | Padding(
62 | padding: getPadding(
63 | right: 10,
64 | ),
65 | child: Text(
66 | "lbl_super_offer".tr,
67 | overflow: TextOverflow.ellipsis,
68 | textAlign: TextAlign.left,
69 | style: AppStyle.txtSFUIDisplayMedium18.copyWith(
70 | letterSpacing: 0.50,
71 | height: 1.00,
72 | ),
73 | ),
74 | ),
75 | Padding(
76 | padding: getPadding(
77 | top: 8,
78 | ),
79 | child: Text(
80 | "msg_get_60_off_in".tr,
81 | overflow: TextOverflow.ellipsis,
82 | textAlign: TextAlign.left,
83 | style: AppStyle.txtSFUIDisplayRegular14Bluegray400.copyWith(
84 | letterSpacing: 0.30,
85 | height: 1.00,
86 | ),
87 | ),
88 | ),
89 | ],
90 | ),
91 | ),
92 | Padding(
93 | padding: getPadding(
94 | left: 9,
95 | top: 17,
96 | right: 20,
97 | bottom: 46,
98 | ),
99 | child: Text(
100 | "lbl_sun_12_40pm".tr,
101 | overflow: TextOverflow.ellipsis,
102 | textAlign: TextAlign.left,
103 | style: AppStyle.txtSFUIDisplayRegular11Bluegray400.copyWith(
104 | letterSpacing: 0.30,
105 | height: 1.00,
106 | ),
107 | ),
108 | ),
109 | ],
110 | ),
111 | );
112 | }
113 | }
114 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_one_screen/binding/onboard_one_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/onboard_one_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class OnboardOneBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => OnboardOneController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_one_screen/controller/onboard_one_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/onboard_one_screen/models/onboard_one_model.dart';
3 |
4 | class OnboardOneController extends GetxController {
5 | Rx onboardOneModelObj = OnboardOneModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_one_screen/models/onboard_one_model.dart:
--------------------------------------------------------------------------------
1 | class OnboardOneModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_three_screen/binding/onboard_three_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/onboard_three_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class OnboardThreeBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => OnboardThreeController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_three_screen/controller/onboard_three_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/onboard_three_screen/models/onboard_three_model.dart';
3 |
4 | class OnboardThreeController extends GetxController {
5 | Rx onboardThreeModelObj = OnboardThreeModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_three_screen/models/onboard_three_model.dart:
--------------------------------------------------------------------------------
1 | class OnboardThreeModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_two_screen/binding/onboard_two_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/onboard_two_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class OnboardTwoBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => OnboardTwoController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_two_screen/controller/onboard_two_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/onboard_two_screen/models/onboard_two_model.dart';
3 |
4 | class OnboardTwoController extends GetxController {
5 | Rx onboardTwoModelObj = OnboardTwoModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/onboard_two_screen/models/onboard_two_model.dart:
--------------------------------------------------------------------------------
1 | class OnboardTwoModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/pop_up_dialog/controller/pop_up_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/pop_up_dialog/models/pop_up_model.dart';
3 |
4 | class PopUpController extends GetxController {
5 | Rx popUpModelObj = PopUpModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/pop_up_dialog/models/pop_up_model.dart:
--------------------------------------------------------------------------------
1 | class PopUpModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/pop_up_dialog/pop_up_dialog.dart:
--------------------------------------------------------------------------------
1 | import 'controller/pop_up_controller.dart';
2 | import 'package:flutter/material.dart';
3 | import 'package:travelappflutter/core/app_export.dart';
4 | import 'package:travelappflutter/widgets/custom_icon_button.dart';
5 |
6 | // ignore_for_file: must_be_immutable
7 | class PopUpDialog extends StatelessWidget {
8 | PopUpDialog(this.controller);
9 |
10 | PopUpController controller;
11 |
12 | @override
13 | Widget build(BuildContext context) {
14 | return Container(
15 | width: double.infinity,
16 | decoration: AppDecoration.fillWhiteA700.copyWith(
17 | borderRadius: BorderRadiusStyle.roundedBorder24,
18 | ),
19 | child: Column(
20 | mainAxisSize: MainAxisSize.min,
21 | crossAxisAlignment: CrossAxisAlignment.center,
22 | mainAxisAlignment: MainAxisAlignment.center,
23 | children: [
24 | CustomIconButton(
25 | height: 44,
26 | width: 44,
27 | margin: getMargin(
28 | left: 50,
29 | top: 30,
30 | right: 50,
31 | ),
32 | variant: IconButtonVariant.FillBlueA400,
33 | child: CommonImageView(
34 | svgPath: ImageConstant.imgUser,
35 | ),
36 | ),
37 | Padding(
38 | padding: getPadding(
39 | left: 50,
40 | top: 20,
41 | right: 50,
42 | ),
43 | child: Text(
44 | "msg_check_your_emai".tr,
45 | overflow: TextOverflow.ellipsis,
46 | textAlign: TextAlign.left,
47 | style: AppStyle.txtSFUIDisplaySemibold18.copyWith(
48 | height: 1.00,
49 | ),
50 | ),
51 | ),
52 | Container(
53 | width: getHorizontalSize(
54 | 233.00,
55 | ),
56 | margin: getMargin(
57 | left: 50,
58 | top: 8,
59 | right: 50,
60 | bottom: 5,
61 | ),
62 | child: Text(
63 | "msg_we_have_send_pa".tr,
64 | maxLines: null,
65 | textAlign: TextAlign.center,
66 | style: AppStyle.txtSFUIDisplayRegular16.copyWith(
67 | height: 1.25,
68 | ),
69 | ),
70 | ),
71 | ],
72 | ),
73 | );
74 | }
75 | }
76 |
--------------------------------------------------------------------------------
/lib/presentation/popular_places_screen/binding/popular_places_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/popular_places_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class PopularPlacesBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => PopularPlacesController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/popular_places_screen/controller/popular_places_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/popular_places_screen/models/popular_places_model.dart';
3 |
4 | class PopularPlacesController extends GetxController {
5 | Rx popularPlacesModelObj = PopularPlacesModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/popular_places_screen/models/popular_places_item_model.dart:
--------------------------------------------------------------------------------
1 | class PopularPlacesItemModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/popular_places_screen/models/popular_places_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 | import 'popular_places_item_model.dart';
3 |
4 | class PopularPlacesModel {
5 | RxList popularPlacesItemList =
6 | RxList.filled(4, PopularPlacesItemModel());
7 | }
8 |
--------------------------------------------------------------------------------
/lib/presentation/popular_places_screen/popular_places_screen.dart:
--------------------------------------------------------------------------------
1 | import '../popular_places_screen/widgets/popular_places_item_widget.dart';
2 | import 'controller/popular_places_controller.dart';
3 | import 'models/popular_places_item_model.dart';
4 | import 'package:flutter/material.dart';
5 | import 'package:travelappflutter/core/app_export.dart';
6 | import 'package:travelappflutter/widgets/app_bar/appbar_iconbutton.dart';
7 | import 'package:travelappflutter/widgets/app_bar/appbar_title.dart';
8 | import 'package:travelappflutter/widgets/app_bar/custom_app_bar.dart';
9 |
10 | class PopularPlacesScreen extends GetWidget {
11 | @override
12 | Widget build(BuildContext context) {
13 | return SafeArea(
14 | child: Scaffold(
15 | backgroundColor: ColorConstant.whiteA700,
16 | appBar: CustomAppBar(
17 | height: getVerticalSize(56.00),
18 | leadingWidth: 64,
19 | leading: AppbarIconbutton(
20 | svgPath: ImageConstant.imgArrowleft,
21 | margin: getMargin(left: 20, top: 6, bottom: 6),
22 | onTap: onTapArrowleft3),
23 | centerTitle: true,
24 | title: AppbarTitle(text: "lbl_popular_places".tr)),
25 | body: Container(
26 | width: size.width,
27 | child: SingleChildScrollView(
28 | child: Column(
29 | mainAxisSize: MainAxisSize.min,
30 | crossAxisAlignment: CrossAxisAlignment.center,
31 | mainAxisAlignment: MainAxisAlignment.center,
32 | children: [
33 | Align(
34 | alignment: Alignment.centerLeft,
35 | child: Padding(
36 | padding: getPadding(left: 20, top: 29, right: 20),
37 | child: Text("msg_all_popular_pla".tr,
38 | overflow: TextOverflow.ellipsis,
39 | textAlign: TextAlign.left,
40 | style: AppStyle.txtSFUIDisplaySemibold20
41 | .copyWith(height: 1.00)))),
42 | Padding(
43 | padding: getPadding(left: 20, top: 16, right: 19),
44 | child: Obx(() => GridView.builder(
45 | shrinkWrap: true,
46 | gridDelegate:
47 | SliverGridDelegateWithFixedCrossAxisCount(
48 | mainAxisExtent: getVerticalSize(239.00),
49 | crossAxisCount: 2,
50 | mainAxisSpacing: getHorizontalSize(14.00),
51 | crossAxisSpacing:
52 | getHorizontalSize(14.00)),
53 | physics: BouncingScrollPhysics(),
54 | itemCount: controller.popularPlacesModelObj.value
55 | .popularPlacesItemList.length,
56 | itemBuilder: (context, index) {
57 | PopularPlacesItemModel model = controller
58 | .popularPlacesModelObj
59 | .value
60 | .popularPlacesItemList[index];
61 | return PopularPlacesItemWidget(model);
62 | })))
63 | ])))));
64 | }
65 |
66 | onTapArrowleft3() {
67 | Get.back();
68 | }
69 | }
70 |
--------------------------------------------------------------------------------
/lib/presentation/profile_screen/binding/profile_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/profile_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class ProfileBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => ProfileController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/profile_screen/controller/profile_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/profile_screen/models/profile_model.dart';
3 |
4 | class ProfileController extends GetxController {
5 | Rx profileModelObj = ProfileModel().obs;
6 |
7 | RxString radioGroup = "".obs;
8 |
9 | @override
10 | void onReady() {
11 | super.onReady();
12 | }
13 |
14 | @override
15 | void onClose() {
16 | super.onClose();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/lib/presentation/profile_screen/models/profile_model.dart:
--------------------------------------------------------------------------------
1 | class ProfileModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/schedule_screen/binding/schedule_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/schedule_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class ScheduleBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => ScheduleController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/schedule_screen/controller/schedule_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/schedule_screen/models/schedule_model.dart';
3 |
4 | class ScheduleController extends GetxController {
5 | Rx scheduleModelObj = ScheduleModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/schedule_screen/models/schedule_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 |
3 | class ScheduleModel {
4 | DateTime selectedDateTxt = DateTime.now();
5 |
6 | Rx dateTxt = Rx('Lorem ipsum dolor sit amet');
7 |
8 | DateTime selectedDateOneTxt = DateTime.now();
9 |
10 | Rx dateOneTxt = Rx('Lorem ipsum dolor sit amet');
11 |
12 | DateTime selectedDateTwoTxt = DateTime.now();
13 |
14 | Rx dateTwoTxt = Rx('Lorem ipsum dolor sit amet');
15 | }
16 |
--------------------------------------------------------------------------------
/lib/presentation/search_screen/binding/search_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/search_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class SearchBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => SearchController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/search_screen/controller/search_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/search_screen/models/search_model.dart';
3 |
4 | class SearchController extends GetxController {
5 | Rx searchModelObj = SearchModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/search_screen/models/search_item_model.dart:
--------------------------------------------------------------------------------
1 | class SearchItemModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/search_screen/models/search_model.dart:
--------------------------------------------------------------------------------
1 | import 'package:get/get.dart';
2 | import 'search_item_model.dart';
3 |
4 | class SearchModel {
5 | RxList searchItemList = RxList.filled(4, SearchItemModel());
6 | }
7 |
--------------------------------------------------------------------------------
/lib/presentation/sign_in_screen/binding/sign_in_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/sign_in_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class SignInBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => SignInController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/sign_in_screen/controller/sign_in_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/sign_in_screen/models/sign_in_model.dart';
3 | import 'package:flutter/material.dart';
4 |
5 | class SignInController extends GetxController {
6 | TextEditingController emailController = TextEditingController();
7 |
8 | Rx signInModelObj = SignInModel().obs;
9 |
10 | @override
11 | void onReady() {
12 | super.onReady();
13 | }
14 |
15 | @override
16 | void onClose() {
17 | super.onClose();
18 | emailController.dispose();
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/presentation/sign_in_screen/models/sign_in_model.dart:
--------------------------------------------------------------------------------
1 | class SignInModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/sign_up_screen/binding/sign_up_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/sign_up_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class SignUpBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => SignUpController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/sign_up_screen/controller/sign_up_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/sign_up_screen/models/sign_up_model.dart';
3 | import 'package:flutter/material.dart';
4 |
5 | class SignUpController extends GetxController {
6 | TextEditingController groupFiftyOneController = TextEditingController();
7 |
8 | TextEditingController emailController = TextEditingController();
9 |
10 | Rx signUpModelObj = SignUpModel().obs;
11 |
12 | @override
13 | void onReady() {
14 | super.onReady();
15 | }
16 |
17 | @override
18 | void onClose() {
19 | super.onClose();
20 | groupFiftyOneController.dispose();
21 | emailController.dispose();
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/lib/presentation/sign_up_screen/models/sign_up_model.dart:
--------------------------------------------------------------------------------
1 | class SignUpModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/splash_screen/binding/splash_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/splash_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class SplashBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => SplashController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/splash_screen/controller/splash_controller.dart:
--------------------------------------------------------------------------------
1 | import 'package:travelappflutter/presentation/splash_screen/models/splash_model.dart';
2 |
3 | import '/core/app_export.dart';
4 |
5 | class SplashController extends GetxController {
6 | Rx splashModelObj = SplashModel().obs;
7 |
8 | @override
9 | void onReady() {
10 | super.onReady();
11 | Future.delayed(const Duration(milliseconds: 10000), () {
12 | Get.toNamed(AppRoutes.onboardOneScreen);
13 | });
14 | }
15 |
16 | @override
17 | void onClose() {
18 | super.onClose();
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/lib/presentation/splash_screen/models/splash_model.dart:
--------------------------------------------------------------------------------
1 | class SplashModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/splash_screen/splash_screen.dart:
--------------------------------------------------------------------------------
1 | import 'controller/splash_controller.dart';
2 | import 'package:flutter/material.dart';
3 | import 'package:travelappflutter/core/app_export.dart';
4 |
5 | class SplashScreen extends GetWidget {
6 | @override
7 | Widget build(BuildContext context) {
8 | return SafeArea(
9 | child: Scaffold(
10 | backgroundColor: ColorConstant.blueA400,
11 | body: Container(
12 | width: size.width,
13 | child: SingleChildScrollView(
14 | child: Column(
15 | mainAxisSize: MainAxisSize.min,
16 | crossAxisAlignment: CrossAxisAlignment.center,
17 | mainAxisAlignment: MainAxisAlignment.center,
18 | children: [
19 | Padding(
20 | padding: getPadding(
21 | left: 121, top: 337, right: 121, bottom: 5),
22 | child: Text("lbl_travenor".tr,
23 | overflow: TextOverflow.ellipsis,
24 | textAlign: TextAlign.left,
25 | style: AppStyle.txtGeometric415BTBlackA34
26 | .copyWith(height: 1.00)))
27 | ])))));
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/lib/presentation/verification_screen/binding/verification_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/verification_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class VerificationBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => VerificationController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/verification_screen/controller/verification_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/verification_screen/models/verification_model.dart';
3 | import 'package:sms_autofill/sms_autofill.dart';
4 | import 'package:flutter/material.dart';
5 |
6 | class VerificationController extends GetxController with CodeAutoFill {
7 | Rx otpController = TextEditingController().obs;
8 |
9 | Rx verificationModelObj = VerificationModel().obs;
10 |
11 | @override
12 | void codeUpdated() {
13 | otpController.value.text = code!;
14 | }
15 |
16 | @override
17 | void onInit() {
18 | super.onInit();
19 | listenForCode();
20 | }
21 |
22 | @override
23 | void onReady() {
24 | super.onReady();
25 | }
26 |
27 | @override
28 | void onClose() {
29 | super.onClose();
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/lib/presentation/verification_screen/models/verification_model.dart:
--------------------------------------------------------------------------------
1 | class VerificationModel {}
2 |
--------------------------------------------------------------------------------
/lib/presentation/view_screen/binding/view_binding.dart:
--------------------------------------------------------------------------------
1 | import '../controller/view_controller.dart';
2 | import 'package:get/get.dart';
3 |
4 | class ViewBinding extends Bindings {
5 | @override
6 | void dependencies() {
7 | Get.lazyPut(() => ViewController());
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/lib/presentation/view_screen/controller/view_controller.dart:
--------------------------------------------------------------------------------
1 | import '/core/app_export.dart';
2 | import 'package:travelappflutter/presentation/view_screen/models/view_model.dart';
3 |
4 | class ViewController extends GetxController {
5 | Rx viewModelObj = ViewModel().obs;
6 |
7 | @override
8 | void onReady() {
9 | super.onReady();
10 | }
11 |
12 | @override
13 | void onClose() {
14 | super.onClose();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/lib/presentation/view_screen/models/view_model.dart:
--------------------------------------------------------------------------------
1 | class ViewModel {}
2 |
--------------------------------------------------------------------------------
/lib/widgets/app_bar/appbar_iconbutton.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 | import 'package:travelappflutter/widgets/custom_icon_button.dart';
4 |
5 | // ignore: must_be_immutable
6 | class AppbarIconbutton extends StatelessWidget {
7 | AppbarIconbutton({this.imagePath, this.svgPath, this.margin, this.onTap});
8 |
9 | String? imagePath;
10 |
11 | String? svgPath;
12 |
13 | EdgeInsetsGeometry? margin;
14 |
15 | Function? onTap;
16 |
17 | @override
18 | Widget build(BuildContext context) {
19 | return GestureDetector(
20 | onTap: () {
21 | onTap!();
22 | },
23 | child: Padding(
24 | padding: margin ?? EdgeInsets.zero,
25 | child: CustomIconButton(
26 | height: 44,
27 | width: 44,
28 | child: CommonImageView(
29 | svgPath: svgPath,
30 | imagePath: imagePath,
31 | ),
32 | ),
33 | ),
34 | );
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/lib/widgets/app_bar/appbar_iconbutton_1.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 | import 'package:travelappflutter/widgets/custom_icon_button.dart';
4 |
5 | // ignore: must_be_immutable
6 | class AppbarIconbutton1 extends StatelessWidget {
7 | AppbarIconbutton1({this.imagePath, this.svgPath, this.margin, this.onTap});
8 |
9 | String? imagePath;
10 |
11 | String? svgPath;
12 |
13 | EdgeInsetsGeometry? margin;
14 |
15 | Function? onTap;
16 |
17 | @override
18 | Widget build(BuildContext context) {
19 | return GestureDetector(
20 | onTap: () {
21 | onTap!();
22 | },
23 | child: Padding(
24 | padding: margin ?? EdgeInsets.zero,
25 | child: CustomIconButton(
26 | height: 44,
27 | width: 44,
28 | variant: IconButtonVariant.FillGray90068,
29 | child: CommonImageView(
30 | svgPath: svgPath,
31 | imagePath: imagePath,
32 | ),
33 | ),
34 | ),
35 | );
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/lib/widgets/app_bar/appbar_subtitle.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 |
4 | // ignore: must_be_immutable
5 | class AppbarSubtitle extends StatelessWidget {
6 | AppbarSubtitle({required this.text, this.margin, this.onTap});
7 |
8 | String text;
9 |
10 | EdgeInsetsGeometry? margin;
11 |
12 | Function? onTap;
13 |
14 | @override
15 | Widget build(BuildContext context) {
16 | return GestureDetector(
17 | onTap: () {
18 | onTap!();
19 | },
20 | child: Padding(
21 | padding: margin ?? EdgeInsets.zero,
22 | child: Text(
23 | text,
24 | overflow: TextOverflow.ellipsis,
25 | textAlign: TextAlign.left,
26 | style: AppStyle.txtSFUIDisplaySemibold18WhiteA700.copyWith(
27 | height: 1.00,
28 | color: ColorConstant.whiteA700,
29 | ),
30 | ),
31 | ),
32 | );
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/lib/widgets/app_bar/appbar_subtitle_1.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 |
4 | // ignore: must_be_immutable
5 | class AppbarSubtitle1 extends StatelessWidget {
6 | AppbarSubtitle1({required this.text, this.margin, this.onTap});
7 |
8 | String text;
9 |
10 | EdgeInsetsGeometry? margin;
11 |
12 | Function? onTap;
13 |
14 | @override
15 | Widget build(BuildContext context) {
16 | return GestureDetector(
17 | onTap: () {
18 | onTap!();
19 | },
20 | child: Padding(
21 | padding: margin ?? EdgeInsets.zero,
22 | child: Text(
23 | text,
24 | overflow: TextOverflow.ellipsis,
25 | textAlign: TextAlign.left,
26 | style: AppStyle.txtSFUIDisplaySemibold16BlueA400.copyWith(
27 | height: 1.00,
28 | color: ColorConstant.blueA400,
29 | ),
30 | ),
31 | ),
32 | );
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/lib/widgets/app_bar/appbar_title.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 |
4 | // ignore: must_be_immutable
5 | class AppbarTitle extends StatelessWidget {
6 | AppbarTitle({required this.text, this.margin, this.onTap});
7 |
8 | String text;
9 |
10 | EdgeInsetsGeometry? margin;
11 |
12 | Function? onTap;
13 |
14 | @override
15 | Widget build(BuildContext context) {
16 | return GestureDetector(
17 | onTap: () {
18 | onTap!();
19 | },
20 | child: Padding(
21 | padding: margin ?? EdgeInsets.zero,
22 | child: Text(
23 | text,
24 | overflow: TextOverflow.ellipsis,
25 | textAlign: TextAlign.left,
26 | style: AppStyle.txtSFUIDisplaySemibold18Gray900.copyWith(
27 | height: 1.00,
28 | color: ColorConstant.gray900,
29 | ),
30 | ),
31 | ),
32 | );
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/lib/widgets/app_bar/custom_app_bar.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 |
4 | // ignore: must_be_immutable
5 | class CustomAppBar extends StatelessWidget with PreferredSizeWidget {
6 | CustomAppBar(
7 | {required this.height,
8 | this.leadingWidth,
9 | this.leading,
10 | this.title,
11 | this.centerTitle,
12 | this.actions});
13 |
14 | double height;
15 |
16 | double? leadingWidth;
17 |
18 | Widget? leading;
19 |
20 | Widget? title;
21 |
22 | bool? centerTitle;
23 |
24 | List? actions;
25 |
26 | @override
27 | Widget build(BuildContext context) {
28 | return AppBar(
29 | elevation: 0,
30 | toolbarHeight: height,
31 | automaticallyImplyLeading: false,
32 | backgroundColor: Colors.transparent,
33 | leadingWidth: leadingWidth ?? 0,
34 | leading: leading,
35 | title: title,
36 | titleSpacing: 0,
37 | centerTitle: centerTitle ?? false,
38 | actions: actions,
39 | );
40 | }
41 |
42 | @override
43 | Size get preferredSize => Size(
44 | size.width,
45 | height,
46 | );
47 | }
48 |
--------------------------------------------------------------------------------
/lib/widgets/common_image_view.dart:
--------------------------------------------------------------------------------
1 | // ignore_for_file: must_be_immutable
2 |
3 | import 'dart:io';
4 |
5 | import 'package:cached_network_image/cached_network_image.dart';
6 | import 'package:flutter/material.dart';
7 | import 'package:flutter_svg/flutter_svg.dart';
8 |
9 | class CommonImageView extends StatelessWidget {
10 | ///[url] is required parameter for fetching network image
11 | String? url;
12 | String? imagePath;
13 | String? svgPath;
14 | File? file;
15 | double? height;
16 | double? width;
17 | Color? color;
18 | final BoxFit fit;
19 | final String placeHolder;
20 |
21 | ///a [CommonNetworkImageView] it can be used for showing any network images
22 | /// it will shows the placeholder image if image is not found on network
23 | CommonImageView({
24 | this.url,
25 | this.imagePath,
26 | this.svgPath,
27 | this.file,
28 | this.height,
29 | this.width,
30 | this.color,
31 | this.fit = BoxFit.fill,
32 | this.placeHolder = 'assets/images/image_not_found.png',
33 | });
34 |
35 | @override
36 | Widget build(BuildContext context) {
37 | return _buildImageView();
38 | }
39 |
40 | Widget _buildImageView() {
41 | if (svgPath != null && svgPath!.isNotEmpty) {
42 | return Container(
43 | height: height,
44 | width: width,
45 | child: SvgPicture.asset(
46 | svgPath!,
47 | height: height,
48 | width: width,
49 | fit: fit,
50 | color: color,
51 | ),
52 | );
53 | } else if (file != null && file!.path.isNotEmpty) {
54 | return Image.file(
55 | file!,
56 | height: height,
57 | width: width,
58 | fit: fit,
59 | color: color,
60 | );
61 | } else if (url != null && url!.isNotEmpty) {
62 | return CachedNetworkImage(
63 | height: height,
64 | width: width,
65 | fit: fit,
66 | imageUrl: url!,
67 | placeholder: (context, url) => Container(
68 | height: 30,
69 | width: 30,
70 | child: LinearProgressIndicator(
71 | color: Colors.grey.shade200,
72 | backgroundColor: Colors.grey.shade100,
73 | ),
74 | ),
75 | errorWidget: (context, url, error) => Image.asset(
76 | placeHolder,
77 | height: height,
78 | width: width,
79 | fit: fit,
80 | ),
81 | );
82 | } else if (imagePath != null && imagePath!.isNotEmpty) {
83 | return Image.asset(
84 | imagePath!,
85 | height: height,
86 | width: width,
87 | fit: fit,
88 | );
89 | }
90 | return SizedBox();
91 | }
92 | }
93 |
--------------------------------------------------------------------------------
/lib/widgets/custom_floating_button.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 |
4 | class CustomFloatingButton extends StatelessWidget {
5 | CustomFloatingButton(
6 | {this.shape,
7 | this.variant,
8 | this.alignment,
9 | this.margin,
10 | this.onTap,
11 | this.width,
12 | this.height,
13 | this.child});
14 |
15 | FloatingButtonShape? shape;
16 |
17 | FloatingButtonVariant? variant;
18 |
19 | Alignment? alignment;
20 |
21 | EdgeInsetsGeometry? margin;
22 |
23 | VoidCallback? onTap;
24 |
25 | double? width;
26 |
27 | double? height;
28 |
29 | Widget? child;
30 |
31 | @override
32 | Widget build(BuildContext context) {
33 | return alignment != null
34 | ? Align(
35 | alignment: alignment ?? Alignment.center,
36 | child: _buildFabWidget(),
37 | )
38 | : _buildFabWidget();
39 | }
40 |
41 | _buildFabWidget() {
42 | return Padding(
43 | padding: margin ?? EdgeInsets.zero,
44 | child: FloatingActionButton(
45 | backgroundColor: _setColor(),
46 | onPressed: onTap,
47 | child: Container(
48 | alignment: Alignment.center,
49 | width: getSize(width ?? 0),
50 | height: getSize(height ?? 0),
51 | decoration: _buildDecoration(),
52 | child: child,
53 | ),
54 | ),
55 | );
56 | }
57 |
58 | _buildDecoration() {
59 | return BoxDecoration(
60 | color: _setColor(),
61 | borderRadius: _setBorderRadius(),
62 | );
63 | }
64 |
65 | _setColor() {
66 | switch (variant) {
67 | default:
68 | return ColorConstant.blueA400;
69 | }
70 | }
71 |
72 | _setBorderRadius() {
73 | switch (shape) {
74 | default:
75 | return BorderRadius.circular(
76 | getHorizontalSize(
77 | 24.00,
78 | ),
79 | );
80 | }
81 | }
82 | }
83 |
84 | enum FloatingButtonShape {
85 | CircleBorder24,
86 | }
87 |
88 | enum FloatingButtonVariant {
89 | FillBlueA400,
90 | }
91 |
--------------------------------------------------------------------------------
/lib/widgets/custom_icon_button.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 |
4 | class CustomIconButton extends StatelessWidget {
5 | CustomIconButton(
6 | {this.shape,
7 | this.padding,
8 | this.variant,
9 | this.alignment,
10 | this.margin,
11 | this.height,
12 | this.width,
13 | this.child,
14 | this.onTap});
15 |
16 | IconButtonShape? shape;
17 |
18 | IconButtonPadding? padding;
19 |
20 | IconButtonVariant? variant;
21 |
22 | Alignment? alignment;
23 |
24 | EdgeInsetsGeometry? margin;
25 |
26 | double? height;
27 |
28 | double? width;
29 |
30 | Widget? child;
31 |
32 | VoidCallback? onTap;
33 |
34 | @override
35 | Widget build(BuildContext context) {
36 | return alignment != null
37 | ? Align(
38 | alignment: alignment ?? Alignment.center,
39 | child: _buildIconButtonWidget(),
40 | )
41 | : _buildIconButtonWidget();
42 | }
43 |
44 | _buildIconButtonWidget() {
45 | return Padding(
46 | padding: margin ?? EdgeInsets.zero,
47 | child: IconButton(
48 | constraints: BoxConstraints(
49 | minHeight: getSize(height ?? 0),
50 | minWidth: getSize(width ?? 0),
51 | ),
52 | padding: EdgeInsets.all(0),
53 | icon: Container(
54 | alignment: Alignment.center,
55 | width: getSize(width ?? 0),
56 | height: getSize(height ?? 0),
57 | padding: _setPadding(),
58 | decoration: _buildDecoration(),
59 | child: child,
60 | ),
61 | onPressed: onTap,
62 | ),
63 | );
64 | }
65 |
66 | _buildDecoration() {
67 | return BoxDecoration(
68 | color: _setColor(),
69 | borderRadius: _setBorderRadius(),
70 | boxShadow: _setBoxShadow(),
71 | );
72 | }
73 |
74 | _setPadding() {
75 | switch (padding) {
76 | case IconButtonPadding.PaddingAll16:
77 | return getPadding(
78 | all: 16,
79 | );
80 | default:
81 | return getPadding(
82 | all: 10,
83 | );
84 | }
85 | }
86 |
87 | _setColor() {
88 | switch (variant) {
89 | case IconButtonVariant.FillBlueA400:
90 | return ColorConstant.blueA400;
91 | case IconButtonVariant.OutlineBlueA4002b:
92 | return ColorConstant.blueA400;
93 | case IconButtonVariant.FillGray90068:
94 | return ColorConstant.gray90068;
95 | default:
96 | return ColorConstant.gray100;
97 | }
98 | }
99 |
100 | _setBorderRadius() {
101 | switch (shape) {
102 | case IconButtonShape.CircleBorder25:
103 | return BorderRadius.circular(
104 | getHorizontalSize(
105 | 25.00,
106 | ),
107 | );
108 | default:
109 | return BorderRadius.circular(
110 | getHorizontalSize(
111 | 22.00,
112 | ),
113 | );
114 | }
115 | }
116 |
117 | _setBoxShadow() {
118 | switch (variant) {
119 | case IconButtonVariant.OutlineBlueA4002b:
120 | return [
121 | BoxShadow(
122 | color: ColorConstant.blueA4002b,
123 | spreadRadius: getHorizontalSize(
124 | 2.00,
125 | ),
126 | blurRadius: getHorizontalSize(
127 | 2.00,
128 | ),
129 | offset: Offset(
130 | 0,
131 | 8,
132 | ),
133 | )
134 | ];
135 | case IconButtonVariant.FillGray100:
136 | case IconButtonVariant.FillBlueA400:
137 | case IconButtonVariant.FillGray90068:
138 | return null;
139 | default:
140 | return null;
141 | }
142 | }
143 | }
144 |
145 | enum IconButtonShape {
146 | CircleBorder22,
147 | CircleBorder25,
148 | }
149 |
150 | enum IconButtonPadding {
151 | PaddingAll10,
152 | PaddingAll16,
153 | }
154 |
155 | enum IconButtonVariant {
156 | FillGray100,
157 | FillBlueA400,
158 | OutlineBlueA4002b,
159 | FillGray90068,
160 | }
161 |
--------------------------------------------------------------------------------
/lib/widgets/custom_radio_button.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 |
4 | class CustomRadioButton extends StatelessWidget {
5 | CustomRadioButton(
6 | {this.padding,
7 | this.fontStyle,
8 | this.margin,
9 | this.onChange,
10 | this.iconSize,
11 | this.value,
12 | this.groupValue,
13 | this.text});
14 |
15 | RadioPadding? padding;
16 |
17 | RadioFontStyle? fontStyle;
18 |
19 | EdgeInsetsGeometry? margin;
20 |
21 | Function(String)? onChange;
22 |
23 | double? iconSize;
24 |
25 | String? value;
26 |
27 | String? groupValue;
28 |
29 | String? text;
30 |
31 | @override
32 | Widget build(BuildContext context) {
33 | return Padding(
34 | padding: margin ?? EdgeInsets.zero,
35 | child: InkWell(
36 | onTap: () {
37 | onChange!(value!);
38 | },
39 | child: Row(
40 | children: [
41 | SizedBox(
42 | height: getHorizontalSize(iconSize ?? 0),
43 | width: getHorizontalSize(iconSize ?? 0),
44 | child: Radio(
45 | value: value ?? "",
46 | groupValue: groupValue,
47 | onChanged: (value) {
48 | onChange!(value!);
49 | },
50 | ),
51 | ),
52 | Padding(
53 | padding: getPadding(
54 | left: 10,
55 | ),
56 | child: Text(
57 | text ?? "",
58 | textAlign: TextAlign.center,
59 | style: _setFontStyle(),
60 | ),
61 | ),
62 | ],
63 | ),
64 | ),
65 | );
66 | }
67 |
68 | _setFontStyle() {
69 | switch (fontStyle) {
70 | default:
71 | return TextStyle(
72 | color: ColorConstant.gray900,
73 | fontSize: getFontSize(
74 | 16,
75 | ),
76 | fontFamily: 'SF UI Display',
77 | fontWeight: FontWeight.w500,
78 | );
79 | ;
80 | }
81 | }
82 | }
83 |
84 | enum RadioPadding {
85 | PaddingAll2,
86 | }
87 |
88 | enum RadioFontStyle {
89 | SFUIDisplayMedium16,
90 | }
91 |
--------------------------------------------------------------------------------
/lib/widgets/custom_search_view.dart:
--------------------------------------------------------------------------------
1 | import 'package:flutter/material.dart';
2 | import 'package:travelappflutter/core/app_export.dart';
3 |
4 | class CustomSearchView extends StatelessWidget {
5 | CustomSearchView(
6 | {this.shape,
7 | this.padding,
8 | this.variant,
9 | this.fontStyle,
10 | this.alignment,
11 | this.width,
12 | this.margin,
13 | this.controller,
14 | this.focusNode,
15 | this.hintText,
16 | this.prefix,
17 | this.prefixConstraints,
18 | this.suffix,
19 | this.suffixConstraints});
20 |
21 | SearchViewShape? shape;
22 |
23 | SearchViewPadding? padding;
24 |
25 | SearchViewVariant? variant;
26 |
27 | SearchViewFontStyle? fontStyle;
28 |
29 | Alignment? alignment;
30 |
31 | double? width;
32 |
33 | EdgeInsetsGeometry? margin;
34 |
35 | TextEditingController? controller;
36 |
37 | FocusNode? focusNode;
38 |
39 | String? hintText;
40 |
41 | Widget? prefix;
42 |
43 | BoxConstraints? prefixConstraints;
44 |
45 | Widget? suffix;
46 |
47 | BoxConstraints? suffixConstraints;
48 |
49 | @override
50 | Widget build(BuildContext context) {
51 | return alignment != null
52 | ? Align(
53 | alignment: alignment ?? Alignment.center,
54 | child: _buildSearchViewWidget(),
55 | )
56 | : _buildSearchViewWidget();
57 | }
58 |
59 | _buildSearchViewWidget() {
60 | return Container(
61 | width: getHorizontalSize(width ?? 0),
62 | margin: margin,
63 | child: TextFormField(
64 | controller: controller,
65 | focusNode: focusNode,
66 | style: _setFontStyle(),
67 | decoration: _buildDecoration(),
68 | ),
69 | );
70 | }
71 |
72 | _buildDecoration() {
73 | return InputDecoration(
74 | hintText: hintText ?? "",
75 | hintStyle: _setFontStyle(),
76 | border: _setBorderStyle(),
77 | enabledBorder: _setBorderStyle(),
78 | focusedBorder: _setBorderStyle(),
79 | disabledBorder: _setBorderStyle(),
80 | prefixIcon: prefix,
81 | prefixIconConstraints: prefixConstraints,
82 | suffixIcon: suffix,
83 | suffixIconConstraints: suffixConstraints,
84 | fillColor: _setFillColor(),
85 | filled: _setFilled(),
86 | isDense: true,
87 | contentPadding: _setPadding(),
88 | );
89 | }
90 |
91 | _setFontStyle() {
92 | switch (fontStyle) {
93 | default:
94 | return TextStyle(
95 | color: ColorConstant.bluegray400,
96 | fontSize: getFontSize(
97 | 16,
98 | ),
99 | fontFamily: 'SF UI Display',
100 | fontWeight: FontWeight.w400,
101 | );
102 | }
103 | }
104 |
105 | _setOutlineBorderRadius() {
106 | switch (shape) {
107 | default:
108 | return BorderRadius.circular(
109 | getHorizontalSize(
110 | 16.00,
111 | ),
112 | );
113 | }
114 | }
115 |
116 | _setBorderStyle() {
117 | switch (variant) {
118 | default:
119 | return OutlineInputBorder(
120 | borderRadius: _setOutlineBorderRadius(),
121 | borderSide: BorderSide.none,
122 | );
123 | }
124 | }
125 |
126 | _setFillColor() {
127 | switch (variant) {
128 | default:
129 | return ColorConstant.gray100;
130 | }
131 | }
132 |
133 | _setFilled() {
134 | switch (variant) {
135 | case SearchViewVariant.FillGray100:
136 | return true;
137 | default:
138 | return true;
139 | }
140 | }
141 |
142 | _setPadding() {
143 | switch (padding) {
144 | default:
145 | return getPadding(
146 | all: 14,
147 | );
148 | }
149 | }
150 | }
151 |
152 | enum SearchViewShape {
153 | RoundedBorder16,
154 | }
155 |
156 | enum SearchViewPadding {
157 | PaddingAll14,
158 | }
159 |
160 | enum SearchViewVariant {
161 | FillGray100,
162 | }
163 |
164 | enum SearchViewFontStyle {
165 | SFUIDisplayRegular16,
166 | }
167 |
--------------------------------------------------------------------------------
/logs/errors.log:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/logs/errors.log
--------------------------------------------------------------------------------
/pubspec.yaml:
--------------------------------------------------------------------------------
1 | name: travelappflutter
2 | description: A new Flutter project.
3 | version: 1.0.0+1
4 | environment:
5 | sdk: '>=2.12.0 <3.0.0'
6 | dependencies:
7 | flutter:
8 | sdk: flutter
9 | get: ^4.6.5
10 | connectivity_plus: ^2.3.6
11 | shared_preferences: ^2.0.15
12 | cached_network_image: ^3.2.1
13 | flutter_svg: ^0.22.0
14 | pin_code_fields: ^7.3.0
15 | sms_autofill: ^2.0.0
16 | intl: ^0.17.0
17 | dev_dependencies:
18 | flutter_test:
19 | sdk: flutter
20 | flutter:
21 | uses-material-design: true
22 | assets:
23 | - assets/
24 | - assets/images/
25 |
--------------------------------------------------------------------------------
/screenshot/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/screenshot/1.png
--------------------------------------------------------------------------------
/screenshot/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/manishdayma/travenor_flutter/716fcd87084e3486990ccc403088c2ce8ef39e6b/screenshot/2.png
--------------------------------------------------------------------------------
/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 |
11 | import 'package:travelappflutter/main.dart';
12 |
13 | void main() {
14 | testWidgets('Counter increments smoke test', (WidgetTester tester) async {
15 | // Build our app and trigger a frame.
16 | await tester.pumpWidget(MyApp());
17 |
18 | // Verify that our counter starts at 0.
19 | expect(find.text('0'), findsOneWidget);
20 | expect(find.text('1'), findsNothing);
21 |
22 | // Tap the '+' icon and trigger a frame.
23 | await tester.tap(find.byIcon(Icons.add));
24 | await tester.pump();
25 |
26 | // Verify that our counter has incremented.
27 | expect(find.text('0'), findsNothing);
28 | expect(find.text('1'), findsOneWidget);
29 | });
30 | }
31 |
--------------------------------------------------------------------------------