diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index f50a006..2aaebb3 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -9,6 +9,8 @@ android:name="io.flutter.app.FlutterApplication" android:label="driverapp" android:icon="@mipmap/ic_launcher"> + :debug, - 'Profile' => :release, - 'Release' => :release, -} - -def flutter_root - generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) - unless File.exist?(generated_xcode_build_settings_path) - raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" - end - - File.foreach(generated_xcode_build_settings_path) do |line| - matches = line.match(/FLUTTER_ROOT\=(.*)/) - return matches[1].strip if matches - end - raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" -end - -require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) - -flutter_ios_podfile_setup - -target 'Runner' do - use_frameworks! - use_modular_headers! - - flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) -end - -post_install do |installer| - installer.pods_project.targets.each do |target| - flutter_additional_ios_build_settings(target) - end -end diff --git a/ios/Podfile.lock b/ios/Podfile.lock deleted file mode 100644 index dd4f078..0000000 --- a/ios/Podfile.lock +++ /dev/null @@ -1,28 +0,0 @@ -PODS: - - Flutter (1.0.0) - - hexcolor (0.0.1): - - Flutter - - image_picker (0.0.1): - - Flutter - -DEPENDENCIES: - - Flutter (from `Flutter`) - - hexcolor (from `.symlinks/plugins/hexcolor/ios`) - - image_picker (from `.symlinks/plugins/image_picker/ios`) - -EXTERNAL SOURCES: - Flutter: - :path: Flutter - hexcolor: - :path: ".symlinks/plugins/hexcolor/ios" - image_picker: - :path: ".symlinks/plugins/image_picker/ios" - -SPEC CHECKSUMS: - Flutter: 0e3d915762c693b495b44d77113d4970485de6ec - hexcolor: fdfb9c4258ad96e949c2dbcdf790a62194b8aa89 - image_picker: 9c3312491f862b28d21ecd8fdf0ee14e601b3f09 - -PODFILE CHECKSUM: aafe91acc616949ddb318b77800a7f51bffa2a4c - -COCOAPODS: 1.9.1 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 0a74ea6..6cc52a9 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -9,7 +9,6 @@ /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; - 6D6C1E6398F588A3B81A5D11 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBBFD4B0F658477744F1744F /* Pods_Runner.framework */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; @@ -36,7 +35,6 @@ 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; - 8F3B88FDD0B655243CCB6AE6 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -44,9 +42,6 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - D7C21296090CEDB0DA136926 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; - DE74AA9D69EBF19111B1433D /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; - EBBFD4B0F658477744F1744F /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -54,32 +49,12 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 6D6C1E6398F588A3B81A5D11 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 4368D6DF01161E4456795C47 /* Frameworks */ = { - isa = PBXGroup; - children = ( - EBBFD4B0F658477744F1744F /* Pods_Runner.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - 6134148CF08965FCC960CA4D /* Pods */ = { - isa = PBXGroup; - children = ( - D7C21296090CEDB0DA136926 /* Pods-Runner.debug.xcconfig */, - DE74AA9D69EBF19111B1433D /* Pods-Runner.release.xcconfig */, - 8F3B88FDD0B655243CCB6AE6 /* Pods-Runner.profile.xcconfig */, - ); - name = Pods; - path = Pods; - sourceTree = ""; - }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -97,8 +72,6 @@ 9740EEB11CF90186004384FC /* Flutter */, 97C146F01CF9000F007C117D /* Runner */, 97C146EF1CF9000F007C117D /* Products */, - 6134148CF08965FCC960CA4D /* Pods */, - 4368D6DF01161E4456795C47 /* Frameworks */, ); sourceTree = ""; }; @@ -140,14 +113,12 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( - 5EA8590409F97C980A3FA4BA /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - C32750E57DB2B838AA9E3E5C /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -220,28 +191,6 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; - 5EA8590409F97C980A3FA4BA /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( - ); - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -256,28 +205,6 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; }; - C32750E57DB2B838AA9E3E5C /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh", - "${PODS_ROOT}/../Flutter/Flutter.framework", - "${BUILT_PRODUCTS_DIR}/hexcolor/hexcolor.framework", - "${BUILT_PRODUCTS_DIR}/image_picker/image_picker.framework", - ); - name = "[CP] Embed Pods Frameworks"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Flutter.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/hexcolor.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/image_picker.framework", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -314,6 +241,7 @@ /* Begin XCBuildConfiguration section */ 249021D3217E4FDB00AE95B9 /* Profile */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; @@ -390,6 +318,7 @@ }; 97C147031CF9000F007C117D /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; @@ -445,6 +374,7 @@ }; 97C147041CF9000F007C117D /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata index 21a3cc1..1d526a1 100644 --- a/ios/Runner.xcworkspace/contents.xcworkspacedata +++ b/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -4,7 +4,4 @@ - - diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 933c8db..8defebc 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -2,6 +2,8 @@ + io.flutter.embedded_views_preview + CFBundleDevelopmentRegion $(DEVELOPMENT_LANGUAGE) CFBundleExecutable diff --git a/lib/Screens/AllTrips/AllTrips.dart b/lib/Screens/AllTrips/AllTrips.dart index e9ce07e..0022f40 100644 --- a/lib/Screens/AllTrips/AllTrips.dart +++ b/lib/Screens/AllTrips/AllTrips.dart @@ -29,6 +29,7 @@ class _AllTripsState extends State { 'Trips Summary', style: TextStyle( color: CupertinoColors.white, + fontFamily: 'Roboto', fontSize: pHeight * 0.025, ), ), @@ -36,7 +37,8 @@ class _AllTripsState extends State { ), ], bottom: TabBar( - labelStyle: TextStyle(fontSize: pHeight * 0.02), + labelStyle: + TextStyle(fontFamily: 'Roboto', fontSize: pHeight * 0.02), labelColor: kAccentColor, unselectedLabelColor: Colors.white, indicatorColor: kAccentColor, diff --git a/lib/Screens/AllTrips/CancelledTrips.dart b/lib/Screens/AllTrips/CancelledTrips.dart index bb02bbd..26ead40 100644 --- a/lib/Screens/AllTrips/CancelledTrips.dart +++ b/lib/Screens/AllTrips/CancelledTrips.dart @@ -80,6 +80,7 @@ class CancelledTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', fontWeight: FontWeight.bold), ), Row( @@ -89,6 +90,7 @@ class CancelledTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', ), ), Text( @@ -96,6 +98,7 @@ class CancelledTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', fontWeight: FontWeight.bold), ), SizedBox( @@ -106,6 +109,7 @@ class CancelledTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', ), ), Text( @@ -113,6 +117,7 @@ class CancelledTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', fontWeight: FontWeight.bold), ), ], @@ -124,6 +129,7 @@ class CancelledTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.red, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', ), ), ], @@ -195,6 +201,7 @@ class CancelledTripExpanded extends StatelessWidget { 'Trips Summary', style: TextStyle( color: CupertinoColors.white, + fontFamily: 'Roboto', fontSize: pHeight * 0.025, ), ), diff --git a/lib/Screens/AllTrips/CompletedTrips.dart b/lib/Screens/AllTrips/CompletedTrips.dart index a471a9c..a799d9d 100644 --- a/lib/Screens/AllTrips/CompletedTrips.dart +++ b/lib/Screens/AllTrips/CompletedTrips.dart @@ -81,6 +81,7 @@ class CompletedTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', fontWeight: FontWeight.bold), ), Row( @@ -90,6 +91,7 @@ class CompletedTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', ), ), Text( @@ -97,6 +99,7 @@ class CompletedTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', fontWeight: FontWeight.bold), ), SizedBox( @@ -107,6 +110,7 @@ class CompletedTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', ), ), Text( @@ -114,6 +118,7 @@ class CompletedTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', fontWeight: FontWeight.bold), ), ], @@ -125,6 +130,7 @@ class CompletedTripCollapsed extends StatelessWidget { style: TextStyle( color: Colors.black, fontSize: pHeight * 0.018, + fontFamily: 'Roboto', ), ), RatingBar.readOnly( @@ -205,6 +211,7 @@ class CompletedTripExpanded extends StatelessWidget { 'Trips Summary', style: TextStyle( color: CupertinoColors.white, + fontFamily: 'Roboto', fontSize: pHeight * 0.025, ), ), @@ -479,12 +486,14 @@ class CompletedTripExpanded extends StatelessWidget { 'Payment Mode', style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), Text( 'Cash', style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ], @@ -508,12 +517,14 @@ class CompletedTripExpanded extends StatelessWidget { 'Commission deducted', style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), Text( 'Inclusive of taxes', style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.018), ), ], @@ -525,12 +536,14 @@ class CompletedTripExpanded extends StatelessWidget { '\$ ', style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.02), ), Text( '2.1', style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.02), ), @@ -549,6 +562,7 @@ class CompletedTripExpanded extends StatelessWidget { 'Your rating', style: TextStyle( color: Colors.black.withOpacity(0.55), + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), RatingBar.readOnly( diff --git a/lib/Screens/Auth/CustomRadio.dart b/lib/Screens/Auth/CustomRadio.dart index 0f5cada..7a5d93c 100644 --- a/lib/Screens/Auth/CustomRadio.dart +++ b/lib/Screens/Auth/CustomRadio.dart @@ -1,3 +1,4 @@ +import 'package:driverapp/utilities/size_config.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; @@ -16,6 +17,7 @@ class _CustomRadioState extends State { @override Widget build(BuildContext context) { + SizeConfig().init(context); return Container( width: double.infinity, child: Column( @@ -25,28 +27,52 @@ class _CustomRadioState extends State { SizedBox( height: 30.0, ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - customRadio2(iconList[0], 0), - Text('No Add ons'), - customRadio2(iconList[1], 1), - Text('Wheel Chair'), - // customRadio2(iconList[2], 2), - ], + Padding( + padding: + EdgeInsets.symmetric(horizontal: SizeConfig.deviceWidth * 5), + child: Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Image.asset( + "images/none.png", + height: SizeConfig.deviceHeight * 10, + ), + Padding( + padding: EdgeInsets.symmetric( + horizontal: SizeConfig.deviceWidth * 0.01), + child: Text('No Add ons'), + ), + Image.asset( + "images/wheel.png", + height: SizeConfig.deviceHeight * 10, + ), + Padding( + padding: EdgeInsets.symmetric( + horizontal: SizeConfig.deviceWidth * 0.01), + child: Text('Wheel Chair'), + ), + ], + ), ), Padding( - padding: const EdgeInsets.fromLTRB(15, 0, 0, 0), + padding: + EdgeInsets.symmetric(horizontal: SizeConfig.deviceWidth * 7), child: Row( mainAxisAlignment: MainAxisAlignment.start, children: [ // customRadio2(iconList[0], 0), // customRadio2(iconList[1], 1), - customRadio2(iconList[2], 2), - Padding( - padding: const EdgeInsets.fromLTRB(10, 0, 0, 0), - child: Text('Walking Stick '), + Image.asset( + "images/walkhelp.png", + height: SizeConfig.deviceHeight * 8, ), + Padding( + padding: EdgeInsets.symmetric( + horizontal: SizeConfig.deviceWidth * 1), + child: Text( + 'Walking Stick ', + style: TextStyle(fontWeight: FontWeight.bold), + )), ], ), ) diff --git a/lib/Screens/Auth/DocumentsSubmit.dart b/lib/Screens/Auth/DocumentsSubmit.dart index f9f5d0e..9004667 100644 --- a/lib/Screens/Auth/DocumentsSubmit.dart +++ b/lib/Screens/Auth/DocumentsSubmit.dart @@ -1,5 +1,6 @@ +import 'package:driverapp/Screens/Home/Home.dart'; import 'package:driverapp/Screens/Profile.dart'; - +import 'package:hexcolor/hexcolor.dart'; import 'package:flutter/material.dart'; class DocumentsSubmit extends StatefulWidget { @@ -35,7 +36,7 @@ class _DocumentsSubmitState extends State { ), ), Padding( - padding: const EdgeInsets.fromLTRB(10, 100, 10, 0), + padding: const EdgeInsets.fromLTRB(10, 150, 10, 0), child: Text( "Please wait for your document approval\n before taking ride.", style: TextStyle(fontSize: pHeight * 0.025), @@ -59,15 +60,15 @@ class _DocumentsSubmitState extends State { shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(18.0), side: BorderSide( - color: Color(0xffF41C7B), + color: Hexcolor("#F41C7B"), )), onPressed: () { Navigator.push( context, - MaterialPageRoute(builder: (context) => Profile()), + MaterialPageRoute(builder: (context) => Home()), ); }, - color: Color(0xffF41C7B), + color: Hexcolor("#F41C7B"), child: Text( "OK", style: TextStyle( diff --git a/lib/Screens/Auth/DocumentsView.dart b/lib/Screens/Auth/DocumentsView.dart index 577f965..84cd3e2 100644 --- a/lib/Screens/Auth/DocumentsView.dart +++ b/lib/Screens/Auth/DocumentsView.dart @@ -1,5 +1,4 @@ -import 'package:driverapp/Classes/Constants.dart'; - +import 'package:hexcolor/hexcolor.dart'; import 'package:flutter/material.dart'; class DocumentsView extends StatefulWidget { @@ -15,7 +14,7 @@ class _DocumentsViewState extends State { return Scaffold( appBar: AppBar( centerTitle: true, - backgroundColor: kSecondaryColor, + backgroundColor: Hexcolor("#2A2E43"), title: Text("Driver"), ), body: Stack( @@ -45,13 +44,14 @@ class _DocumentsViewState extends State { onPressed: null, icon: Icon( Icons.cancel, - color: Color(0xff0D3745), + color: Hexcolor("#0D3745"), ), label: Container( child: Text( 'Waiting for Approval', style: TextStyle( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.020), ), @@ -66,17 +66,16 @@ class _DocumentsViewState extends State { height: pHeight * 0.070, child: RaisedButton( shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(18.0), - side: BorderSide( - color: Color(0xff2A2E43), - ), - ), + borderRadius: BorderRadius.circular(18.0), + side: BorderSide(color: Hexcolor("#2A2E43"))), onPressed: () {}, - color: Color(0xff2A2E43), + color: Hexcolor("#2A2E43"), child: Text( "Remove", - style: - TextStyle(color: Colors.white, fontSize: pHeight * 0.035), + style: TextStyle( + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.035), ), ), ), diff --git a/lib/Screens/Auth/DriverDetails.dart b/lib/Screens/Auth/DriverDetails.dart index aaeecb6..224347f 100644 --- a/lib/Screens/Auth/DriverDetails.dart +++ b/lib/Screens/Auth/DriverDetails.dart @@ -1,5 +1,5 @@ -import 'package:driverapp/Classes/Constants.dart'; - +import 'package:driverapp/utilities/size_config.dart'; +import 'package:hexcolor/hexcolor.dart'; import 'package:flutter/material.dart'; import 'VehicleDetails.dart'; @@ -15,12 +15,13 @@ class _DriverDetailsState extends State { TextEditingController email = new TextEditingController(text: ''); @override Widget build(BuildContext context) { + SizeConfig().init(context); final pHeight = MediaQuery.of(context).size.height; final pWidth = MediaQuery.of(context).size.width; return Scaffold( appBar: AppBar( centerTitle: true, - backgroundColor: kSecondaryColor, + backgroundColor: Hexcolor("#2A2E43"), title: Text("Personal Details"), ), body: Stack( @@ -33,7 +34,8 @@ class _DriverDetailsState extends State { height: pHeight * 0.10, ), Padding( - padding: const EdgeInsets.fromLTRB(30, 15, 0, 0), + padding: EdgeInsets.symmetric( + horizontal: SizeConfig.deviceWidth * 7), child: Text('First name*'), ), SizedBox( @@ -46,7 +48,7 @@ class _DriverDetailsState extends State { decoration: BoxDecoration( // borderRadius: BorderRadius.circular(14), border: Border.all( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), ), ), child: TextFormField( @@ -59,7 +61,8 @@ class _DriverDetailsState extends State { // fillColor: kFormColor, // filled: true, hintText: 'Stephen', - hintStyle: TextStyle(fontSize: pHeight * 0.025), + hintStyle: TextStyle( + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), ), @@ -68,7 +71,8 @@ class _DriverDetailsState extends State { height: pHeight * 0.02, ), Padding( - padding: const EdgeInsets.fromLTRB(30, 15, 0, 0), + padding: EdgeInsets.symmetric( + horizontal: SizeConfig.deviceWidth * 7), child: Text('Last name'), ), SizedBox( @@ -81,7 +85,7 @@ class _DriverDetailsState extends State { decoration: BoxDecoration( // borderRadius: BorderRadius.circular(14), border: Border.all( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), ), ), child: TextFormField( @@ -94,7 +98,8 @@ class _DriverDetailsState extends State { // fillColor: kFormColor, // filled: true, hintText: 'George', - hintStyle: TextStyle(fontSize: pHeight * 0.025), + hintStyle: TextStyle( + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), ), @@ -103,7 +108,8 @@ class _DriverDetailsState extends State { height: pHeight * 0.02, ), Padding( - padding: const EdgeInsets.fromLTRB(30, 15, 0, 0), + padding: EdgeInsets.symmetric( + horizontal: SizeConfig.deviceWidth * 7), child: Text('Email ID*'), ), SizedBox( @@ -116,7 +122,7 @@ class _DriverDetailsState extends State { decoration: BoxDecoration( // borderRadius: BorderRadius.circular(14), border: Border.all( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), ), ), child: TextFormField( @@ -129,16 +135,18 @@ class _DriverDetailsState extends State { // fillColor: kFormColor, // filled: true, hintText: 'stephengeorge@gmail.com', - hintStyle: TextStyle(fontSize: pHeight * 0.025), + hintStyle: TextStyle( + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), ), ), SizedBox( - height: pHeight * 0.02, + height: pHeight * 0.04, ), Padding( - padding: const EdgeInsets.fromLTRB(30, 15, 0, 0), + padding: EdgeInsets.symmetric( + horizontal: SizeConfig.deviceWidth * 7), child: Text('Mobile*'), ), SizedBox( @@ -146,12 +154,12 @@ class _DriverDetailsState extends State { ), Center( child: Container( - width: pWidth * 0.85, + width: pWidth * 0.92, height: pHeight * 0.065, // decoration: BoxDecoration( // // borderRadius: BorderRadius.circular(14), // border: Border.all( - // color: Color(0xff282C41), + // color: Hexcolor("#282C41"), // ), // ), child: TextFormField( @@ -165,6 +173,7 @@ class _DriverDetailsState extends State { // filled: true, hintText: '+91 9876543210', hintStyle: TextStyle( + fontFamily: 'Roboto', fontSize: pHeight * 0.025, fontWeight: FontWeight.bold), ), @@ -175,18 +184,19 @@ class _DriverDetailsState extends State { height: pHeight * 0.01, ), Padding( - padding: const EdgeInsets.fromLTRB(30, 15, 0, 0), + padding: EdgeInsets.only( + top: SizeConfig.deviceHeight * 2, + left: SizeConfig.deviceWidth * 7), child: Center( child: Text( - 'Above details are used for Registration and is verified.', - style: TextStyle( - color: Color(0xffB5B5B5), - ), - ), + 'Above details are used for Registration and is verified.', + style: TextStyle( + color: Hexcolor("#B5B5B5"), + fontSize: SizeConfig.deviceHeight * 2.3)), ), ), SizedBox( - height: pHeight * 0.04, + height: pHeight * 0.08, ), Center( child: InkWell( @@ -199,24 +209,29 @@ class _DriverDetailsState extends State { ); }, child: Container( - width: pWidth * 0.85, - height: pHeight * 0.065, + height: SizeConfig.deviceHeight * 8, + width: SizeConfig.deviceWidth * 90, decoration: BoxDecoration( - borderRadius: BorderRadius.circular(14), - color: Color(0xffF41C7B)), + borderRadius: BorderRadius.circular(10), + color: Hexcolor("#F41C7B")), child: Padding( padding: const EdgeInsets.all(8.0), child: Center( child: Text( 'next', style: TextStyle( - color: Colors.white, fontSize: pHeight * 0.035), + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.035), ), ), ), ), ), ), + SizedBox( + height: pHeight * 0.04, + ), ], ), ), diff --git a/lib/Screens/Auth/Login.dart b/lib/Screens/Auth/Login.dart index dac1401..36370cb 100644 --- a/lib/Screens/Auth/Login.dart +++ b/lib/Screens/Auth/Login.dart @@ -40,7 +40,9 @@ class _LoginState extends State { Text( 'Welcome To', style: TextStyle( - color: Colors.black, fontSize: pHeight * 0.035), + color: Colors.black, + fontFamily: 'Roboto', + fontSize: pHeight * 0.035), ), ], ), @@ -57,6 +59,7 @@ class _LoginState extends State { textAlign: TextAlign.center, style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: pHeight * 0.02), ), ), @@ -75,6 +78,7 @@ class _LoginState extends State { textAlign: TextAlign.center, style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.02), ), ), @@ -104,6 +108,7 @@ class _LoginState extends State { '+91', style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), @@ -131,7 +136,8 @@ class _LoginState extends State { fillColor: kFormColor, filled: true, hintText: 'Mobile Number', - hintStyle: TextStyle(fontSize: pHeight * 0.025), + hintStyle: TextStyle( + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), ), @@ -162,7 +168,9 @@ class _LoginState extends State { child: Text( 'LOGIN', style: TextStyle( - color: Colors.white, fontSize: pHeight * 0.025), + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.025), ), ), ), @@ -179,6 +187,7 @@ class _LoginState extends State { textAlign: TextAlign.center, style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.018), ), SizedBox( @@ -198,6 +207,7 @@ class _LoginState extends State { textAlign: TextAlign.center, style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.02), ), ), diff --git a/lib/Screens/Auth/OTPScreen.dart b/lib/Screens/Auth/OTPScreen.dart index e2b7ddf..1e113bd 100644 --- a/lib/Screens/Auth/OTPScreen.dart +++ b/lib/Screens/Auth/OTPScreen.dart @@ -56,7 +56,9 @@ class _OTPScreenState extends State { Text( 'Verify Mobile Number', style: TextStyle( - color: Colors.black, fontSize: pHeight * 0.035), + color: Colors.black, + fontFamily: 'Roboto', + fontSize: pHeight * 0.035), ), ], ), @@ -73,6 +75,7 @@ class _OTPScreenState extends State { textAlign: TextAlign.center, style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: pHeight * 0.02), ), ), @@ -103,6 +106,7 @@ class _OTPScreenState extends State { textAlign: TextAlign.center, style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.018), ), SizedBox( @@ -113,6 +117,7 @@ class _OTPScreenState extends State { textAlign: TextAlign.center, style: TextStyle( color: Colors.black.withOpacity(0.75), + fontFamily: 'Roboto', fontSize: pHeight * 0.02), ), ], @@ -132,7 +137,9 @@ class _OTPScreenState extends State { child: Text( 'VERIFY', style: TextStyle( - color: Colors.white, fontSize: pHeight * 0.025), + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.025), ), ), ), diff --git a/lib/Screens/Auth/SignUp.dart b/lib/Screens/Auth/SignUp.dart index 285bed4..afdfec0 100644 --- a/lib/Screens/Auth/SignUp.dart +++ b/lib/Screens/Auth/SignUp.dart @@ -59,7 +59,9 @@ class _SignUpState extends State { Text( 'Sign Up', style: TextStyle( - color: Colors.black, fontSize: pHeight * 0.035), + color: Colors.black, + fontFamily: 'Roboto', + fontSize: pHeight * 0.035), ), ], ), @@ -76,6 +78,7 @@ class _SignUpState extends State { textAlign: TextAlign.center, style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: pHeight * 0.02), ), ), @@ -103,7 +106,8 @@ class _SignUpState extends State { fillColor: kFormColor, filled: true, hintText: 'Enter your name', - hintStyle: TextStyle(fontSize: pHeight * 0.025), + hintStyle: TextStyle( + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), ), @@ -129,7 +133,8 @@ class _SignUpState extends State { fillColor: kFormColor, filled: true, hintText: 'Enter Email', - hintStyle: TextStyle(fontSize: pHeight * 0.025), + hintStyle: TextStyle( + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), ), @@ -157,6 +162,7 @@ class _SignUpState extends State { '+91', style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), @@ -184,7 +190,8 @@ class _SignUpState extends State { fillColor: kFormColor, filled: true, hintText: 'Mobile Number', - hintStyle: TextStyle(fontSize: pHeight * 0.025), + hintStyle: TextStyle( + fontFamily: 'Roboto', fontSize: pHeight * 0.025), ), ), ), @@ -213,7 +220,9 @@ class _SignUpState extends State { child: Text( 'VERIFY', style: TextStyle( - color: Colors.white, fontSize: pHeight * 0.025), + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.025), ), ), ), diff --git a/lib/Screens/Auth/UploadDocuments.dart b/lib/Screens/Auth/UploadDocuments.dart index 438acb8..c31cac8 100644 --- a/lib/Screens/Auth/UploadDocuments.dart +++ b/lib/Screens/Auth/UploadDocuments.dart @@ -1,6 +1,6 @@ -import 'package:driverapp/Classes/Constants.dart'; import 'package:driverapp/Screens/Auth/DocumentsSubmit.dart'; import 'package:driverapp/Screens/Auth/DocumentsView.dart'; +import 'package:hexcolor/hexcolor.dart'; import 'package:flutter/material.dart'; class UploadDocuments extends StatefulWidget { @@ -16,7 +16,7 @@ class _UploadDocumentsState extends State { return Scaffold( appBar: AppBar( centerTitle: true, - backgroundColor: kSecondaryColor, + backgroundColor: Hexcolor("#2A2E43"), title: Text("Upload Documents"), ), body: SingleChildScrollView( @@ -32,7 +32,8 @@ class _UploadDocumentsState extends State { child: Text( 'Driver Documents', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#3C3B5C"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.030), ), @@ -50,7 +51,8 @@ class _UploadDocumentsState extends State { child: Text( 'Driver Licence', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.025), ), @@ -63,13 +65,14 @@ class _UploadDocumentsState extends State { onPressed: () {}, icon: Icon( Icons.cancel, - color: Color(0xff0D3745), + color: Hexcolor("#0D3745"), ), label: Container( child: Text( 'Waiting for Approval', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.015), ), @@ -109,7 +112,7 @@ class _UploadDocumentsState extends State { padding: const EdgeInsets.fromLTRB(82, 100, 0, 35), child: IconButton( icon: Icon(Icons.cancel), - color: Color(0xffEE2929), + color: Hexcolor("#EE2929"), onPressed: () {}, ), ), @@ -126,7 +129,7 @@ class _UploadDocumentsState extends State { child: Container( height: 1.0, width: 330.0, - color: Color(0xff707070), + color: Hexcolor("#707070"), ), ), Padding( @@ -134,7 +137,8 @@ class _UploadDocumentsState extends State { child: Text( 'Driver Badge', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.025), ), @@ -148,13 +152,14 @@ class _UploadDocumentsState extends State { onPressed: null, icon: Icon( Icons.cancel, - color: Color(0xff0D3745), + color: Hexcolor("#0D3745"), ), label: Container( child: Text( 'Waiting for Approval', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.015), ), @@ -179,7 +184,7 @@ class _UploadDocumentsState extends State { padding: const EdgeInsets.fromLTRB(82, 230, 0, 50), child: IconButton( icon: Icon(Icons.cancel), - color: Color(0xffEE2929), + color: Hexcolor("#EE2929"), onPressed: () {}, ), ), @@ -203,7 +208,7 @@ class _UploadDocumentsState extends State { child: Container( height: 2.0, width: pWidth, - color: Color(0xff707070), + color: Hexcolor("#707070"), ), ), Row( @@ -214,7 +219,8 @@ class _UploadDocumentsState extends State { child: Text( 'Vehicle Documents', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#3C3B5C"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.030), ), @@ -229,7 +235,8 @@ class _UploadDocumentsState extends State { child: Text( 'Reg. document', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.025), ), @@ -245,13 +252,14 @@ class _UploadDocumentsState extends State { onPressed: null, icon: Icon( Icons.cancel, - color: Color(0xff0D3745), + color: Hexcolor("#0D3745"), ), label: Container( child: Text( 'Waiting for Approval', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.015), ), @@ -277,7 +285,7 @@ class _UploadDocumentsState extends State { child: Container( height: 1.0, width: 330.0, - color: Color(0xff707070), + color: Hexcolor("#707070"), ), ), Padding( @@ -285,7 +293,8 @@ class _UploadDocumentsState extends State { child: Text( 'Insurance', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.025), ), @@ -299,13 +308,14 @@ class _UploadDocumentsState extends State { onPressed: null, icon: Icon( Icons.cancel, - color: Color(0xff0D3745), + color: Hexcolor("#0D3745"), ), label: Container( child: Text( 'Waiting for Approval', style: TextStyle( - color: Color(0xff3C3B5C), + color: Hexcolor("#282C41"), + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.015), ), @@ -330,7 +340,7 @@ class _UploadDocumentsState extends State { padding: const EdgeInsets.fromLTRB(82, 590, 0, 30), child: IconButton( icon: Icon(Icons.cancel), - color: Color(0xffEE2929), + color: Hexcolor("#EE2929"), onPressed: () {}, ), ), @@ -358,7 +368,7 @@ class _UploadDocumentsState extends State { height: pHeight * 0.065, child: RaisedButton( shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(18.0), + borderRadius: BorderRadius.circular(10.0), side: BorderSide(color: Colors.red)), onPressed: () { Navigator.push( @@ -368,12 +378,14 @@ class _UploadDocumentsState extends State { ), ); }, - color: Color(0xffF41C7B), + color: Hexcolor("#F41C7B"), // textColor: Colors.white, child: Text( "Submit", - style: - TextStyle(color: Colors.white, fontSize: pHeight * 0.035), + style: TextStyle( + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.035), ), ), ), diff --git a/lib/Screens/Auth/VehicleDetails.dart b/lib/Screens/Auth/VehicleDetails.dart index 7d67542..fc259f8 100644 --- a/lib/Screens/Auth/VehicleDetails.dart +++ b/lib/Screens/Auth/VehicleDetails.dart @@ -1,4 +1,5 @@ -import 'package:driverapp/Classes/Constants.dart'; +import 'package:driverapp/utilities/size_config.dart'; +import 'package:hexcolor/hexcolor.dart'; import 'package:flutter/material.dart'; import 'CustomRadio.dart'; import 'UploadDocuments.dart'; @@ -30,12 +31,13 @@ class _VehicleDetailsState extends State { ]; @override Widget build(BuildContext context) { + SizeConfig().init(context); final pHeight = MediaQuery.of(context).size.height; final pWidth = MediaQuery.of(context).size.width; return Scaffold( appBar: AppBar( centerTitle: true, - backgroundColor: kSecondaryColor, + backgroundColor: Hexcolor("#2A2E43"), title: Text("Vehicle Details"), ), body: Stack( @@ -61,7 +63,7 @@ class _VehicleDetailsState extends State { decoration: BoxDecoration( // borderRadius: BorderRadius.circular(14), border: Border.all( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), ), ), child: DropdownButton( @@ -103,7 +105,7 @@ class _VehicleDetailsState extends State { decoration: BoxDecoration( // borderRadius: BorderRadius.circular(14), border: Border.all( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), ), ), child: DropdownButton( @@ -145,7 +147,7 @@ class _VehicleDetailsState extends State { decoration: BoxDecoration( // borderRadius: BorderRadius.circular(14), border: Border.all( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), ), ), child: DropdownButton( @@ -187,7 +189,7 @@ class _VehicleDetailsState extends State { decoration: BoxDecoration( // borderRadius: BorderRadius.circular(14), border: Border.all( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), ), ), child: TextFormField( @@ -217,7 +219,7 @@ class _VehicleDetailsState extends State { decoration: BoxDecoration( // borderRadius: BorderRadius.circular(14), border: Border.all( - color: Color(0xff282C41), + color: Hexcolor("#282C41"), ), ), child: TextFormField( @@ -238,7 +240,7 @@ class _VehicleDetailsState extends State { child: Text( 'Select Add ons available ', style: TextStyle( - color: Color(0xff282C41), + color: Hexcolor("#3C3B5C"), fontSize: 20, fontWeight: FontWeight.bold), ), @@ -248,7 +250,7 @@ class _VehicleDetailsState extends State { ), CustomRadio(), SizedBox( - height: pHeight * 0.04, + height: pHeight * 0.08, ), Center( child: InkWell( @@ -263,12 +265,11 @@ class _VehicleDetailsState extends State { child: Padding( padding: const EdgeInsets.fromLTRB(0, 0, 0, 30), child: Container( - width: pWidth * 0.85, - height: pHeight * 0.065, + height: SizeConfig.deviceHeight * 8, + width: SizeConfig.deviceWidth * 90, decoration: BoxDecoration( - borderRadius: BorderRadius.circular(14), - color: Color(0xff282C41), - ), + borderRadius: BorderRadius.circular(10), + color: Hexcolor("#F41C7B")), child: Padding( padding: const EdgeInsets.all(8.0), child: Center( @@ -276,6 +277,7 @@ class _VehicleDetailsState extends State { 'next', style: TextStyle( color: Colors.white, + fontFamily: 'Roboto', fontSize: pHeight * 0.035), ), ), diff --git a/lib/Screens/Home/Home.dart b/lib/Screens/Home/Home.dart new file mode 100644 index 0000000..175931c --- /dev/null +++ b/lib/Screens/Home/Home.dart @@ -0,0 +1,296 @@ +import 'dart:async'; + +import 'package:driverapp/Screens/AccountSummary/AccountSummaryMain.dart'; +import 'package:driverapp/Screens/AllTrips/ThankYouScreen.dart'; +import 'package:driverapp/Screens/Profile.dart'; +import 'package:driverapp/Screens/SupportScreen.dart'; +import 'package:driverapp/Screens/TermsCondition.dart'; +import 'package:driverapp/Screens/TripSummary/Tripsummary.dart'; +import 'package:driverapp/TripAlerts/gotRide.dart'; +import 'package:driverapp/utilities/size_config.dart'; +import 'package:flutter/material.dart'; +import 'package:hexcolor/hexcolor.dart'; +import 'package:custom_switch_button/custom_switch_button.dart'; +import 'package:google_maps_flutter/google_maps_flutter.dart'; + +class Home extends StatefulWidget { + @override + _HomeState createState() => _HomeState(); +} + +class _HomeState extends State { + Completer _controller = Completer(); + + static const LatLng _center = const LatLng(20.5937, 78.9629); + + void _onMapCreated(GoogleMapController controller) { + _controller.complete(controller); + } + + bool isChecked = false; + @override + Widget build(BuildContext context) { + SizeConfig().init(context); + return Scaffold( + appBar: PreferredSize( + preferredSize: Size.fromHeight(90.0), + child: AppBar( + automaticallyImplyLeading: false, + title: Padding( + padding: EdgeInsets.symmetric(horizontal: 5), + child: Builder( + builder: (context) => IconButton( + icon: Image.asset( + "images/drawer.png", + ), + onPressed: () => Scaffold.of(context).openDrawer(), + ), + ), + ), + backgroundColor: Hexcolor("#2A2E43"), + elevation: 0, + centerTitle: false, + titleSpacing: 0, + actions: [ + Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + IconButton( + icon: Icon( + Icons.notifications, + color: Colors.white, + size: SizeConfig.deviceWidth * 8, + ), + onPressed: () { + // do something + }, + ), + ], + ), + ], + bottom: PreferredSize( + child: GestureDetector( + onTap: () { + setState(() { + isChecked = !isChecked; + }); + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => Gotride(), + ), + ); + }, + child: Padding( + padding: EdgeInsets.only( + right: SizeConfig.deviceWidth * 6, + bottom: SizeConfig.deviceWidth * 4), + child: Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Transform.scale( + scale: 1.5, + child: CustomSwitchButton( + backgroundColor: Colors.white, + unCheckedColor: Hexcolor("#F41C7B"), + animationDuration: Duration(milliseconds: 400), + checkedColor: Hexcolor("#F41C7B"), + checked: isChecked, + ), + ) + ], + ), + ), + ), + preferredSize: Size.fromHeight(90.0), + ), + ), + ), + body: GoogleMap( + onMapCreated: _onMapCreated, + initialCameraPosition: CameraPosition( + target: _center, + zoom: 11.0, + ), + ), + drawer: SafeArea( + child: Drawer( + child: ListView( + children: [ + SizedBox( + height: SizeConfig.deviceHeight * 31, + child: UserAccountsDrawerHeader( + accountName: Text('Aurélien Salomon'), + accountEmail: Text('@aureliensalomon'), + decoration: BoxDecoration( + image: DecorationImage( + image: AssetImage("images/header.png"), + fit: BoxFit.cover)), + currentAccountPicture: GestureDetector( + child: CircleAvatar( + backgroundImage: AssetImage("images/avatar.png"), + ), + ), + ), + ), + InkWell( + onTap: () {}, + child: ListTile( + leading: Icon(Icons.home), + title: Text('Home'), + ), + ), + InkWell( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => Profile(), + ), + ); + }, + child: ListTile( + leading: Icon(Icons.person), + title: Text('Profile'), + ), + ), + InkWell( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => TripSummary(), + ), + ); + }, + child: ListTile( + leading: Icon(Icons.history), + title: Text('Trip History'), + ), + ), + InkWell( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => AccountSummaryMain(), + ), + ); + }, + child: ListTile( + leading: Icon(Icons.account_balance), + title: Text('Account Summary'), + ), + ), + InkWell( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => SupportScreen(), + ), + ); + }, + child: ListTile( + leading: Icon(Icons.support), + title: Text('Support & FAQ'), + ), + ), + InkWell( + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => TermsCondition(), + ), + ); + }, + child: ListTile( + leading: Icon(Icons.privacy_tip), + title: Text('Privacy'), + ), + ), + InkWell( + onTap: () {}, + child: ListTile( + leading: Icon(Icons.exit_to_app), + title: Text('LogOut'), + ), + ) + ], + ), + // child: Column( + // children: [ + // Expanded( + // flex: 1, + // child: Container( + // width: SizeConfig.deviceWidth * 80, + // child: DrawerHeader( + // decoration: BoxDecoration( + // image: DecorationImage( + // image: AssetImage("images/header.png"), + // fit: BoxFit.cover)), + // child: Text(""), + // ), + // ), + // ), + // Expanded( + // flex: 2, + // child: ListView(children: [ + // ListTile( + // leading: Icon(Icons.home), + // title: Text("Home"), + // onTap: () { + // Navigator.of(context).pop(); + // }, + // ), + // ListTile( + // title: Text("Home"), + // onTap: () { + // Navigator.of(context).pop(); + // }, + // ), + // ListTile( + // title: Text("Home"), + // onTap: () { + // Navigator.of(context).pop(); + // }, + // ), + // ListTile( + // title: Text("Home"), + // onTap: () { + // Navigator.of(context).pop(); + // }, + // ), + // ListTile( + // title: Text("Home"), + // onTap: () { + // Navigator.of(context).pop(); + // }, + // ), + // ListTile( + // title: Text("Home"), + // onTap: () { + // Navigator.of(context).pop(); + // }, + // ), + // ListTile( + // title: Text("Home"), + // onTap: () { + // Navigator.of(context).pop(); + // }, + // ), + // ListTile( + // title: Text("Home"), + // onTap: () { + // Navigator.of(context).pop(); + // }, + // ) + // ]), + // ) + // ], + // ), + ), + )); + } +} diff --git a/lib/Screens/IntroScreens.dart b/lib/Screens/IntroScreens.dart index 4715c66..87fbf77 100644 --- a/lib/Screens/IntroScreens.dart +++ b/lib/Screens/IntroScreens.dart @@ -91,16 +91,16 @@ class _IntroScreensState extends State { backgroundImageFit: BoxFit.cover, backgroundColor: Colors.white, styleTitle: TextStyle( - color: Colors.black, - fontSize: 30.0, - fontWeight: FontWeight.bold, - ), + color: Colors.black, + fontSize: 30.0, + fontWeight: FontWeight.bold, + fontFamily: 'Roboto'), description: "You can find the required Cabs near you and travel to your favourite destination.", styleDescription: TextStyle( - color: Colors.black.withOpacity(0.6), - fontSize: 20.0, - ), + color: Colors.black.withOpacity(0.6), + fontSize: 20.0, + fontFamily: 'Roboto'), pathImage: "images/intro1.png", heightImage: 250, widthImage: 250), @@ -112,16 +112,16 @@ class _IntroScreensState extends State { backgroundImageFit: BoxFit.cover, backgroundColor: Colors.white, styleTitle: TextStyle( - color: Colors.black, - fontSize: 30.0, - fontWeight: FontWeight.bold, - ), + color: Colors.black, + fontSize: 30.0, + fontWeight: FontWeight.bold, + fontFamily: 'Roboto'), description: "Find your favourite travel spots.\nSelect the packages you need and get offers.", styleDescription: TextStyle( - color: Colors.black.withOpacity(0.6), - fontSize: 20.0, - ), + color: Colors.black.withOpacity(0.6), + fontSize: 20.0, + fontFamily: 'Roboto'), pathImage: "images/intro2.png", heightImage: 250, widthImage: 250), @@ -133,16 +133,16 @@ class _IntroScreensState extends State { backgroundImageFit: BoxFit.cover, backgroundColor: Colors.white, styleTitle: TextStyle( - color: Colors.black, - fontSize: 30.0, - fontWeight: FontWeight.bold, - ), + color: Colors.black, + fontSize: 30.0, + fontWeight: FontWeight.bold, + fontFamily: 'Roboto'), description: "Make referral asset by referring your friends,\nEarn for each trip made by all your assets.\nDevelop your business by promoting.", styleDescription: TextStyle( - color: Colors.black.withOpacity(0.6), - fontSize: 20.0, - ), + color: Colors.black.withOpacity(0.6), + fontSize: 20.0, + fontFamily: 'Roboto'), pathImage: "images/intro3.png", heightImage: 250, widthImage: 250), @@ -154,16 +154,16 @@ class _IntroScreensState extends State { backgroundImageFit: BoxFit.cover, backgroundColor: Colors.white, styleTitle: TextStyle( - color: Colors.black, - fontSize: 30.0, - fontWeight: FontWeight.bold, - ), + color: Colors.black, + fontSize: 30.0, + fontWeight: FontWeight.bold, + fontFamily: 'Roboto'), description: "Create your own business profiles to sell your products and search to buy the product you need.", styleDescription: TextStyle( - color: Colors.black.withOpacity(0.6), - fontSize: 20.0, - ), + color: Colors.black.withOpacity(0.6), + fontSize: 20.0, + fontFamily: 'Roboto'), pathImage: "images/intro4.png", heightImage: 250, widthImage: 250), @@ -216,14 +216,17 @@ class _IntroScreensState extends State { colorActiveDot: kPrimaryColor, styleNameSkipBtn: TextStyle( color: kPrimaryColor, + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.02), styleNameDoneBtn: TextStyle( color: kPrimaryColor, + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.02), styleNamePrevBtn: TextStyle( color: kPrimaryColor, + fontFamily: 'Roboto', fontWeight: FontWeight.bold, fontSize: pHeight * 0.02), ); diff --git a/lib/Screens/Profile.dart b/lib/Screens/Profile.dart index ea47c22..965c68e 100644 --- a/lib/Screens/Profile.dart +++ b/lib/Screens/Profile.dart @@ -27,6 +27,7 @@ class _ProfileState extends State { 'Profile', style: TextStyle( color: CupertinoColors.white, + fontFamily: 'Roboto', fontSize: pHeight * 0.025, ), ), @@ -34,7 +35,8 @@ class _ProfileState extends State { ), ], bottom: TabBar( - labelStyle: TextStyle(fontSize: pHeight * 0.02), + labelStyle: + TextStyle(fontFamily: 'Roboto', fontSize: pHeight * 0.02), labelColor: kAccentColor, unselectedLabelColor: Colors.white, indicatorColor: kAccentColor, diff --git a/lib/Screens/TripSummary/Cancelled.dart b/lib/Screens/TripSummary/Cancelled.dart new file mode 100644 index 0000000..1530d8e --- /dev/null +++ b/lib/Screens/TripSummary/Cancelled.dart @@ -0,0 +1,254 @@ +import 'package:driverapp/Classes/Constants.dart'; +import 'package:flutter/material.dart'; +import 'package:rating_bar/rating_bar.dart'; + +class Cancelled extends StatelessWidget { + @override + Widget build(BuildContext context) { + final pHeight = MediaQuery.of(context).size.height; + final pWidth = MediaQuery.of(context).size.width; + return Column( + children: [ + Container( + width: pWidth, + height: pHeight * 0.05, + color: kSecondaryColor, + padding: EdgeInsets.symmetric(horizontal: pWidth * 0.03), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + InkWell( + onTap: () {}, + child: Container( + child: Row( + children: [ + Image.asset('images/sort.png'), + SizedBox( + width: 5, + ), + Text( + 'Sort', + style: TextStyle( + color: Colors.white, + ), + ), + ], + ), + ), + ), + InkWell( + onTap: () {}, + child: Container( + child: Row( + children: [ + Image.asset('images/filter.png'), + SizedBox( + width: 5, + ), + Text( + 'Filter', + style: TextStyle( + color: Colors.white, + ), + ), + ], + ), + ), + ) + ], + ), + ), + Card( + elevation: 4, + child: Container( + height: pHeight * 0.17, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Column( + children: [ + Image.asset( + 'images/man.png', + height: pHeight * 0.13, + width: pHeight * 0.13, + ), + Text( + 'Stephen', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ) + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + '25-05-2019 (12:45 pm)', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ), + Row( + children: [ + Text('Dist.'), + SizedBox( + width: 5, + ), + Text( + '5 mi', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025), + ), + SizedBox( + width: 5, + ), + Text('Dur'), + SizedBox( + width: 5, + ), + Text( + '20 min', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025, + ), + ), + ], + ), + Text( + 'Your Cancellation', + style: TextStyle( + color: Theme.of(context).errorColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025, + ), + ), + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'images/cross.png', + // scale: 2, + ), + Text('Approx'), + Text( + '\$17.8', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.035, + ), + ), + ], + ) + ], + ), + ), + ), + Card( + elevation: 4, + child: Container( + height: pHeight * 0.17, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Column( + children: [ + Image.asset( + 'images/man.png', + height: pHeight * 0.13, + width: pHeight * 0.13, + ), + Text( + 'Stephen', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ) + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + '25-05-2019 (12:45 pm)', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ), + Row( + children: [ + Text('Dist.'), + SizedBox( + width: 5, + ), + Text( + '5 mi', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025), + ), + SizedBox( + width: 5, + ), + Text('Dur'), + SizedBox( + width: 5, + ), + Text( + '20 min', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025, + ), + ), + ], + ), + Text( + 'Rider Cancelled', + style: TextStyle( + color: Theme.of(context).errorColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025, + ), + ), + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'images/cross.png', + // scale: 2, + ), + Text('Approx.'), + Text( + '\$9.7', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.035, + ), + ), + ], + ) + ], + ), + ), + ), + ], + ); + } +} diff --git a/lib/Screens/TripSummary/CancelledSummary.dart b/lib/Screens/TripSummary/CancelledSummary.dart new file mode 100644 index 0000000..311c66a --- /dev/null +++ b/lib/Screens/TripSummary/CancelledSummary.dart @@ -0,0 +1,98 @@ +import 'package:driverapp/Classes/Constants.dart'; +import 'package:flutter/material.dart'; +import 'package:rating_bar/rating_bar.dart'; + +class CancelledSummary extends StatelessWidget { + static const routeName = 'CompletedSummary'; + @override + Widget build(BuildContext context) { + final pHeight = MediaQuery.of(context).size.height; + final pWidth = MediaQuery.of(context).size.width; + return Scaffold( + body: SingleChildScrollView( + child: Column( + children: [ + Card( + elevation: 4, + child: Container( + height: pHeight * 0.25, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Text( + '25-05-2019 (12:45 pm)', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ), + Text( + 'Trade Center', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + 'Home', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + 'Executive - (Local Trip)', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ), + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'images/cross.png', + ), + Text( + 'Rider Cancelled', + style: TextStyle( + color: kSecondaryColor, + ), + ), + ], + ), + ], + ), + ), + ), + SizedBox( + height: pHeight * 0.03, + ), + Text( + 'Cancellation reason', + style: TextStyle( + color: kSecondaryColor, + fontSize: pHeight * 0.03, + fontWeight: FontWeight.bold, + ), + ), + SizedBox( + height: pHeight * 0.03, + ), + Text( + 'Planned Cancel', + style: TextStyle( + color: kSecondaryColor, + fontSize: pHeight * 0.025, + ), + ), + ], + ), + ), + ); + } +} diff --git a/lib/Screens/TripSummary/Completed.dart b/lib/Screens/TripSummary/Completed.dart new file mode 100644 index 0000000..d5b30dd --- /dev/null +++ b/lib/Screens/TripSummary/Completed.dart @@ -0,0 +1,266 @@ +import 'package:driverapp/Classes/Constants.dart'; +import 'package:flutter/material.dart'; +import 'package:rating_bar/rating_bar.dart'; + +class Completed extends StatelessWidget { + @override + Widget build(BuildContext context) { + final pHeight = MediaQuery.of(context).size.height; + final pWidth = MediaQuery.of(context).size.width; + return Column( + children: [ + Container( + width: pWidth, + height: pHeight * 0.05, + color: kSecondaryColor, + padding: EdgeInsets.symmetric(horizontal: pWidth * 0.03), + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + InkWell( + onTap: () {}, + child: Container( + child: Row( + children: [ + Image.asset('images/sort.png'), + SizedBox( + width: 5, + ), + Text( + 'Sort', + style: TextStyle( + color: Colors.white, + ), + ), + ], + ), + ), + ), + InkWell( + onTap: () {}, + child: Container( + child: Row( + children: [ + Image.asset('images/filter.png'), + SizedBox( + width: 5, + ), + Text( + 'Filter', + style: TextStyle( + color: Colors.white, + ), + ), + ], + ), + ), + ) + ], + ), + ), + Card( + elevation: 4, + child: Container( + height: pHeight * 0.17, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Column( + children: [ + Image.asset( + 'images/man.png', + height: pHeight * 0.13, + width: pHeight * 0.13, + ), + Text( + 'Stephen', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ) + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + '25-05-2019 (12:45 pm)', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ), + Row( + children: [ + Text('Dist.'), + SizedBox( + width: 5, + ), + Text( + '5 mi', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025), + ), + SizedBox( + width: 5, + ), + Text('Dur'), + SizedBox( + width: 5, + ), + Text( + '20 min', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025, + ), + ), + ], + ), + Row( + children: [ + Text('You rated'), + RatingBar.readOnly( + filledColor: Colors.yellow, + size: pHeight * 0.04, + initialRating: 4.0, + isHalfAllowed: true, + halfFilledIcon: Icons.star_half, + filledIcon: Icons.star, + emptyIcon: Icons.star_border, + ), + ], + ), + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'images/check.png', + scale: 2, + ), + Text('Cash'), + Text( + '\$17.8', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.035, + ), + ), + ], + ) + ], + ), + ), + ), + Card( + elevation: 4, + child: Container( + height: pHeight * 0.17, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Column( + children: [ + Image.asset( + 'images/man.png', + height: pHeight * 0.13, + width: pHeight * 0.13, + ), + Text( + 'Stephen', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ) + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + '25-05-2019 (12:45 pm)', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ), + Row( + children: [ + Text('Dist.'), + SizedBox( + width: 5, + ), + Text( + '5 mi', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025), + ), + SizedBox( + width: 5, + ), + Text('Dur'), + SizedBox( + width: 5, + ), + Text( + '20 min', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.025, + ), + ), + ], + ), + Row( + children: [ + Text('You rated'), + RatingBar.readOnly( + filledColor: Colors.yellow, + size: pHeight * 0.04, + initialRating: 4.0, + isHalfAllowed: true, + halfFilledIcon: Icons.star_half, + filledIcon: Icons.star, + emptyIcon: Icons.star_border, + ), + ], + ), + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'images/check.png', + scale: 2, + ), + Text('Paid Online'), + Text( + '\$12.3', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + fontSize: pHeight * 0.035, + ), + ), + ], + ) + ], + ), + ), + ), + ], + ); + } +} diff --git a/lib/Screens/TripSummary/CompletedSummary.dart b/lib/Screens/TripSummary/CompletedSummary.dart new file mode 100644 index 0000000..963fb08 --- /dev/null +++ b/lib/Screens/TripSummary/CompletedSummary.dart @@ -0,0 +1,291 @@ +import 'package:driverapp/Classes/Constants.dart'; +import 'package:flutter/material.dart'; +import 'package:rating_bar/rating_bar.dart'; + +class CompletedSummary extends StatelessWidget { + static const routeName = 'CompletedSummary'; + @override + Widget build(BuildContext context) { + final pHeight = MediaQuery.of(context).size.height; + final pWidth = MediaQuery.of(context).size.width; + return Scaffold( + body: SingleChildScrollView( + child: Column( + children: [ + Card( + elevation: 4, + child: Container( + height: pHeight * 0.25, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Text( + '25-05-2019 (12:45 pm)', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ), + Text( + 'Trade Center', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + 'Home', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + 'Executive - (Local Trip)', + style: TextStyle( + color: kSecondaryColor, + fontWeight: FontWeight.bold, + ), + ), + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'images/check.png', + scale: 2, + ), + Text( + 'Trip completed', + style: TextStyle( + color: kSecondaryColor, + ), + ), + ], + ), + ], + ), + ), + ), + Card( + elevation: 4, + child: Container( + height: pHeight * 0.25, + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Text( + 'Ride fare', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + 'Time fare', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + 'add ons', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + 'Tax', + style: TextStyle( + color: kSecondaryColor, + ), + ), + ], + ), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Text( + '\$ 13', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + '\$ 5', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + '\$ 4', + style: TextStyle( + color: kSecondaryColor, + ), + ), + Text( + '\$ 2', + style: TextStyle( + color: kSecondaryColor, + ), + ), + ], + ), + ], + ), + Divider(), + Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + Column( + children: [ + Text( + 'Total Fare', + style: TextStyle( + color: kSecondaryColor, + fontSize: pHeight * 0.023, + fontWeight: FontWeight.bold, + ), + ), + Text( + 'Inclusive of Tax', + style: TextStyle( + color: kSecondaryColor, + ), + ), + ], + ), + Text( + '\$24', + style: TextStyle( + color: kSecondaryColor, + fontSize: pHeight * 0.023, + fontWeight: FontWeight.bold, + ), + ), + ], + ) + ], + ), + ), + ), + Card( + child: Container( + width: pWidth, + height: pHeight * 0.12, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + Text( + 'Payment mode', + style: TextStyle( + color: kSecondaryColor, + fontSize: pHeight * 0.023, + fontWeight: FontWeight.bold, + ), + ), + Container( + width: pWidth * 0.2, + height: pHeight * 0.04, + decoration: BoxDecoration( + border: Border.all(width: 0.7), + borderRadius: BorderRadius.circular(10), + ), + child: Center(child: Text('Cash')), + ) + ], + ), + ), + ), + Card( + child: Container( + width: pWidth, + height: pHeight * 0.12, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceAround, + children: [ + Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Commission deducted', + style: TextStyle( + color: kSecondaryColor, + fontSize: pHeight * 0.023, + fontWeight: FontWeight.bold, + ), + ), + Text( + 'Inclusive of Tax', + style: TextStyle( + color: kSecondaryColor, + ), + ), + ], + ), + Text( + '\$2.1', + style: TextStyle( + color: kSecondaryColor, + fontSize: pHeight * 0.023, + fontWeight: FontWeight.bold, + ), + ), + ], + ), + ), + ), + SizedBox( + height: pHeight * 0.03, + ), + Text('You rated'), + SizedBox( + height: pHeight * 0.01, + ), + RatingBar.readOnly( + filledColor: Colors.yellow, + size: pHeight * 0.04, + initialRating: 4.0, + isHalfAllowed: true, + halfFilledIcon: Icons.star_half, + filledIcon: Icons.star, + emptyIcon: Icons.star_border, + ), + SizedBox( + height: pHeight * 0.03, + ), + Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + FlatButton( + color: Colors.red, + onPressed: () {}, + child: Text( + 'Invoice via mail', + style: TextStyle( + color: Colors.white, + ), + ), + ), + FlatButton( + onPressed: () {}, + child: Text('Support'), + ) + ], + ) + ], + ), + ), + ); + } +} diff --git a/lib/Screens/TripSummary/Tripsummary.dart b/lib/Screens/TripSummary/Tripsummary.dart new file mode 100644 index 0000000..8e6c4c4 --- /dev/null +++ b/lib/Screens/TripSummary/Tripsummary.dart @@ -0,0 +1,83 @@ +import 'package:driverapp/Classes/Constants.dart'; +import 'package:driverapp/Screens/TripSummary/Cancelled.dart'; +import 'package:driverapp/Screens/TripSummary/CompletedSummary.dart'; +import 'package:driverapp/Screens/TripSummary/completed.dart'; +import 'package:driverapp/Widgets/Documents.dart'; +import 'package:driverapp/Widgets/YourDetails.dart'; +import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; + +import 'CancelledSummary.dart'; + +class TripSummary extends StatefulWidget { + static const routeName = 'TripSummary'; + @override + _TripSummaryState createState() => _TripSummaryState(); +} + +class _TripSummaryState extends State { + bool change = false; + @override + Widget build(BuildContext context) { + final pHeight = MediaQuery.of(context).size.height; + final pWidth = MediaQuery.of(context).size.width; + return DefaultTabController( + length: 2, + child: Scaffold( + backgroundColor: Color(0xFFECECEC), + appBar: AppBar( + backgroundColor: kSecondaryColor, + centerTitle: true, + title: Text( + 'Trip Summary', + style: TextStyle( + color: Colors.white, + ), + ), + actions: [ + IconButton( + icon: Icon(Icons.notifications), + onPressed: () {}, + ), + ], + bottom: TabBar( + labelStyle: TextStyle(fontSize: pHeight * 0.025), + labelColor: kAccentColor, + unselectedLabelColor: Colors.white, + indicatorColor: kAccentColor, + tabs: [ + Tab( + text: 'Completed', + ), + Tab( + text: 'Cancelled', + ), + ], + ), + ), + body: TabBarView( + children: [ + InkWell( + onTap: () { + setState(() { + change = true; + }); + CompletedSummary(); + }, + child: change == false ? Completed() : CompletedSummary(), + ), + InkWell( + onTap: () { + setState(() { + change = true; + }); + CancelledSummary(); + }, + child: change == false ? Cancelled() : CancelledSummary(), + ), + ], + ), + ), + ); + } +} diff --git a/lib/TripAlerts/gotRide.dart b/lib/TripAlerts/gotRide.dart new file mode 100644 index 0000000..40bc261 --- /dev/null +++ b/lib/TripAlerts/gotRide.dart @@ -0,0 +1,121 @@ +import 'dart:async'; + +import 'package:driverapp/TripAlerts/pickRide.dart'; +import 'package:driverapp/utilities/size_config.dart'; +import 'package:flutter/material.dart'; +import 'package:google_maps_flutter/google_maps_flutter.dart'; +import 'package:slider_button/slider_button.dart'; +import 'package:fluid_slider/fluid_slider.dart'; + +class Gotride extends StatefulWidget { + @override + _GotrideState createState() => _GotrideState(); +} + +class _GotrideState extends State { + Completer _controller = Completer(); + static GlobalKey _scaffoldKey = GlobalKey(); + + static const LatLng _center = const LatLng(20.5937, 78.9629); + // static const LatLng _anotherLatLng = const LatLng(20.5937, 78.9629); + + void _onMapCreated(GoogleMapController controller) { + _controller.complete(controller); + } + + // static MarkerId markerId1 = MarkerId("1"); + // static MarkerId markerId2 = MarkerId("12"); + + // final Set _markers = { + // Marker( + // markerId: markerId1, + // position: _center, + // infoWindow: InfoWindow( + // title: 'Customer Location', + // snippet: 'WeTaxi', + // ), + // onTap: () { + // _scaffoldKey.currentState.showBottomSheet((context) => Container( + // height: 350, + // width: 400, + // child: Text("car"), + // )); + // }, + // ), + // }; + bool isChecked = false; + @override + Widget build(BuildContext context) { + SizeConfig().init(context); + return Scaffold( + key: _scaffoldKey, + body: Stack(children: [ + GoogleMap( + onTap: (latLng) { + _scaffoldKey.currentState.showBottomSheet((context) => Container( + height: SizeConfig.deviceHeight * 45, + width: 400, + decoration: BoxDecoration( + borderRadius: BorderRadius.only( + topLeft: Radius.circular(14.0), + topRight: Radius.circular(14.0)), + image: DecorationImage( + image: AssetImage("images/bottom.png"), + fit: BoxFit.cover)), + child: Column( + children: [ + Center( + child: Padding( + padding: EdgeInsets.only( + top: SizeConfig.deviceWidth * 5, + bottom: SizeConfig.deviceHeight * 15), + child: Text( + "You got a Ride now", + style: TextStyle(color: Colors.white), + ), + ), + ), + SliderButton( + action: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => Pickride(), + ), + ); + }, + label: Text( + "Slide to Ride", + style: TextStyle( + color: Colors.grey, + fontWeight: FontWeight.w500, + fontSize: 17), + ), + icon: Center( + child: Icon( + Icons.circle, + color: Colors.green, + size: 40.0, + semanticLabel: + 'Text to announce in accessibility modes', + )), + buttonColor: Colors.green, + backgroundColor: Colors.grey, + highlightedColor: Colors.green, + baseColor: Colors.black, + ) + ], + ), + )); + }, + // markers: _markers, + onMapCreated: _onMapCreated, + initialCameraPosition: CameraPosition( + target: _center, + zoom: 11.0, + ), + ), + ]), + ); + } +} diff --git a/lib/TripAlerts/numeric_pad.dart b/lib/TripAlerts/numeric_pad.dart new file mode 100644 index 0000000..ef5c160 --- /dev/null +++ b/lib/TripAlerts/numeric_pad.dart @@ -0,0 +1,134 @@ +import 'package:flutter/material.dart'; +import 'package:hexcolor/hexcolor.dart'; + +class NumericPad extends StatelessWidget { + final Function(int) onNumberSelected; + + NumericPad({@required this.onNumberSelected}); + + @override + Widget build(BuildContext context) { + return Container( + color: Hexcolor("#232530"), + child: Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + Container( + height: MediaQuery.of(context).size.height * 0.11, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + buildNumber(1), + buildNumber(2), + buildNumber(3), + ], + ), + ), + Container( + height: MediaQuery.of(context).size.height * 0.11, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + buildNumber(4), + buildNumber(5), + buildNumber(6), + ], + ), + ), + Container( + height: MediaQuery.of(context).size.height * 0.11, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + buildNumber(7), + buildNumber(8), + buildNumber(9), + ], + ), + ), + Container( + height: MediaQuery.of(context).size.height * 0.11, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + buildEmptySpace(), + buildNumber(0), + buildBackspace(), + ], + ), + ), + ], + ), + ); + } + + Widget buildNumber(int number) { + return Expanded( + child: GestureDetector( + onTap: () { + onNumberSelected(number); + }, + child: Padding( + padding: EdgeInsets.all(10), + child: Container( + decoration: BoxDecoration( + color: Hexcolor("#454F63"), + borderRadius: BorderRadius.all( + Radius.circular(15), + ), + ), + child: Center( + child: Text( + number.toString(), + style: TextStyle( + fontSize: 28, + fontWeight: FontWeight.bold, + color: Colors.white, + ), + ), + ), + ), + ), + ), + ); + } + + Widget buildBackspace() { + return Expanded( + child: GestureDetector( + onTap: () { + onNumberSelected(-1); + }, + child: Padding( + padding: EdgeInsets.all(10), + child: Container( + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.all( + Radius.circular(15), + ), + ), + child: Center( + child: Icon( + Icons.backspace, + size: 28, + color: Color(0xFF1F1F1F), + ), + ), + ), + ), + ), + ); + } + + Widget buildEmptySpace() { + return Expanded( + child: Container(), + ); + } +} diff --git a/lib/TripAlerts/onRide.dart b/lib/TripAlerts/onRide.dart new file mode 100644 index 0000000..4892a67 --- /dev/null +++ b/lib/TripAlerts/onRide.dart @@ -0,0 +1,781 @@ +import 'dart:async'; +import 'dart:ui'; + +import 'package:driverapp/Screens/AllTrips/FinishedTrip.dart'; +import 'package:driverapp/TripAlerts/tripOTP.dart'; +import 'package:driverapp/utilities/size_config.dart'; +import 'package:flutter/material.dart'; +import 'package:google_maps_flutter/google_maps_flutter.dart'; +import 'package:hexcolor/hexcolor.dart'; +import 'package:slider_button/slider_button.dart'; +import 'package:fluid_slider/fluid_slider.dart'; + +class Onride extends StatefulWidget { + @override + _OnrideState createState() => _OnrideState(); +} + +class _OnrideState extends State { + Completer _controller = Completer(); + static GlobalKey _scaffoldKey = GlobalKey(); + + static const LatLng _center = const LatLng(20.5937, 78.9629); + + void _onMapCreated(GoogleMapController controller) { + _controller.complete(controller); + } + + bool isChecked = false; + @override + Widget build(BuildContext context) { + final pHeight = MediaQuery.of(context).size.height; + final pWidth = MediaQuery.of(context).size.width; + SizeConfig().init(context); + return Scaffold( + appBar: AppBar( + automaticallyImplyLeading: false, + title: Padding( + padding: EdgeInsets.symmetric(horizontal: 5), + child: Builder( + builder: (context) => IconButton( + icon: Image.asset( + "images/drawer.png", + ), + onPressed: () => Scaffold.of(context).openDrawer(), + ), + ), + ), + backgroundColor: Hexcolor("#2A2E43"), + elevation: 0, + centerTitle: false, + titleSpacing: 0, + actions: [ + Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + IconButton( + icon: Icon( + Icons.notifications, + color: Colors.white, + size: SizeConfig.deviceWidth * 8, + ), + onPressed: () { + // do something + }, + ), + ], + ), + ], + ), + key: _scaffoldKey, + body: Stack(children: [ + GoogleMap( + onTap: (latLng) { + _scaffoldKey.currentState.showBottomSheet( + (context) => Container( + height: SizeConfig.deviceHeight * 50, + width: 500, + child: Expanded( + child: Column(children: [ + SizedBox( + height: pHeight * 0.02, + ), + Center( + child: Text( + "Click navigate to map destination , Finish ride to end trip", + style: TextStyle(color: Colors.black), + ), + ), + SizedBox( + height: pHeight * 0.00, + ), + Expanded( + child: Padding( + padding: EdgeInsets.symmetric( + vertical: SizeConfig.deviceHeight * 7.5, + horizontal: SizeConfig.deviceWidth * 5), + child: Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(15), + color: Hexcolor("#2A2E43"), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Icon( + Icons.location_city, + color: Colors.white, + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Text( + '12 mins', + style: TextStyle( + color: Colors.white, + fontSize: SizeConfig.deviceWidth * 2), + ), + ), + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 15), + child: Text( + 'Home', + style: TextStyle( + color: Hexcolor("#C840E9"), + fontSize: SizeConfig.deviceWidth * 3.5), + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 13), + child: Text( + 'Destination', + style: TextStyle( + color: Hexcolor("#959DAD"), + fontSize: SizeConfig.deviceWidth * 2.5), + ), + ), + ], + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 22), + child: Container( + color: Hexcolor("#D5D5D5"), + width: pWidth * 0.2, + height: pHeight, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Icon( + Icons.directions, + color: Colors.blue, + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Text( + 'Navigate', + style: TextStyle(color: Colors.black), + ), + ), + ], + ), + ), + ), + ], + ), + ), + )), + SizedBox( + height: pHeight * 0.00, + ), + Expanded( + child: Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.only( + topLeft: Radius.circular(14.0), + topRight: Radius.circular(14.0)), + color: Hexcolor("#2A2E43"), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Column( + mainAxisAlignment: + MainAxisAlignment.spaceEvenly, + children: [ + SizedBox( + height: SizeConfig.deviceHeight * 1, + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Text( + "Ride Started", + style: TextStyle(color: Colors.white), + ), + ), + SizedBox( + height: SizeConfig.deviceHeight * 3, + ), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment.spaceEvenly, + children: [ + Padding( + padding: EdgeInsets.only( + bottom: + SizeConfig.deviceHeight * 2), + child: IconButton( + icon: Icon( + Icons.call, + color: Colors.green, + size: SizeConfig.deviceWidth * 8, + ), + onPressed: null), + ), + ], + )), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment.spaceEvenly, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2, + bottom: + SizeConfig.deviceHeight * 2), + child: RaisedButton( + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular(7.0), + ), + onPressed: () { + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (context) => DocumentsSubmit(), + // ), + // ); + }, + color: Hexcolor("#E9EBEA"), + // textColor: Colors.white, + child: Text( + "Cancel Trip", + style: TextStyle( + color: Colors.black, + fontFamily: 'Roboto', + fontSize: pHeight * 0.020), + ), + ), + ), + ], + ), + ) + ]), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + height: SizeConfig.deviceHeight * 2, + ), + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig.deviceWidth * 2, + left: SizeConfig.deviceWidth * 10), + child: CircleAvatar( + backgroundImage: + AssetImage("images/avatar.png"), + radius: 30, + ), + ), + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig.deviceWidth * 17, + left: SizeConfig.deviceWidth * 10), + child: Text( + "Ram Kumar", + style: TextStyle( + fontSize: SizeConfig.deviceWidth * 3, + color: Colors.white), + ), + ) + ], + ), + Expanded( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig.deviceHeight * 5, + left: SizeConfig.deviceWidth * 25, + ), + child: IconButton( + icon: Icon( + Icons.message_sharp, + color: Colors.lightBlue, + size: SizeConfig.deviceWidth * 8, + ), + onPressed: null), + ), + ]), + ), + // Expanded( + // child: Column( + // mainAxisAlignment: + // MainAxisAlignment.spaceEvenly, + // children: [], + // ), + // ), + Padding( + padding: EdgeInsets.only( + right: SizeConfig.deviceWidth * 2, + top: SizeConfig.deviceHeight * 12), + child: RaisedButton( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(7.0), + ), + onPressed: () { + showBottomSheet( + context: context, + builder: (context) => Container( + height: + SizeConfig.deviceHeight * 50, + width: 500, + child: Expanded( + child: Column(children: [ + SizedBox( + height: pHeight * 0.02, + ), + Center( + child: Text( + "Click navigate to map destination , Finish ride to end trip", + style: TextStyle( + color: Colors.black), + ), + ), + SizedBox( + height: pHeight * 0.00, + ), + Expanded( + child: Padding( + padding: EdgeInsets.symmetric( + vertical: SizeConfig + .deviceHeight * + 7.5, + horizontal: SizeConfig + .deviceWidth * + 5), + child: Container( + decoration: BoxDecoration( + borderRadius: + BorderRadius.circular( + 15), + color: + Hexcolor("#2A2E43"), + ), + child: Row( + mainAxisAlignment: + MainAxisAlignment + .start, + children: [ + Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Icon( + Icons + .location_city, + color: Colors + .white, + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Text( + '12 mins', + style: TextStyle( + color: Colors + .white, + fontSize: + SizeConfig.deviceWidth * + 2), + ), + ), + ], + ), + Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 15), + child: Text( + 'Home', + style: TextStyle( + color: Hexcolor( + "#C840E9"), + fontSize: + SizeConfig.deviceWidth * + 3.5), + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 13), + child: Text( + 'Destination', + style: TextStyle( + color: Hexcolor( + "#959DAD"), + fontSize: + SizeConfig.deviceWidth * + 2.5), + ), + ), + ], + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 22), + child: Container( + color: Hexcolor( + "#D5D5D5"), + width: pWidth * 0.2, + height: pHeight, + child: Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Icon( + Icons + .directions, + color: Colors + .blue, + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Text( + 'Navigate', + style: TextStyle( + color: Colors + .black), + ), + ), + ], + ), + ), + ), + ], + ), + ), + )), + SizedBox( + height: pHeight * 0.00, + ), + Expanded( + child: Container( + decoration: BoxDecoration( + borderRadius: + BorderRadius.only( + topLeft: Radius + .circular( + 14.0), + topRight: Radius + .circular( + 14.0)), + color: + Hexcolor("#2A2E43"), + ), + child: Row( + mainAxisAlignment: + MainAxisAlignment + .start, + children: [ + Column( + mainAxisAlignment: + MainAxisAlignment + .spaceEvenly, + children: [ + SizedBox( + height: SizeConfig + .deviceHeight * + 1, + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Text( + "Ride Started", + style: TextStyle( + color: Colors + .white), + ), + ), + SizedBox( + height: SizeConfig + .deviceHeight * + 3, + ), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment + .spaceEvenly, + children: [ + Padding( + padding: EdgeInsets.only( + bottom: + SizeConfig.deviceHeight * + 2), + child: IconButton( + icon: Icon( + Icons + .call, + color: + Colors.green, + size: SizeConfig.deviceWidth * + 8, + ), + onPressed: null), + ), + ], + )), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment + .spaceEvenly, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * + 2, + bottom: + SizeConfig.deviceHeight * 2), + child: + RaisedButton( + shape: + RoundedRectangleBorder( + borderRadius: + BorderRadius.circular(7.0), + ), + onPressed: + () { + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (context) => DocumentsSubmit(), + // ), + // ); + }, + color: Hexcolor( + "#E9EBEA"), + // textColor: Colors.white, + child: + Text( + "Cancel Trip", + style: TextStyle( + color: Colors.black, + fontFamily: 'Roboto', + fontSize: pHeight * 0.020), + ), + ), + ), + ], + ), + ) + ]), + Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + SizedBox( + height: SizeConfig + .deviceHeight * + 2, + ), + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig + .deviceWidth * + 2, + left: SizeConfig + .deviceWidth * + 10), + child: + CircleAvatar( + backgroundImage: + AssetImage( + "images/avatar.png"), + radius: 30, + ), + ), + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig + .deviceWidth * + 17, + left: SizeConfig + .deviceWidth * + 10), + child: Text( + "Ram Kumar", + style: TextStyle( + fontSize: + SizeConfig.deviceWidth * + 3, + color: Colors + .white), + ), + ) + ], + ), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + Padding( + padding: + EdgeInsets + .only( + bottom: + SizeConfig.deviceHeight * + 5, + left: SizeConfig + .deviceWidth * + 25, + ), + child: IconButton( + icon: Icon( + Icons + .message_sharp, + color: Colors + .lightBlue, + size: SizeConfig.deviceWidth * + 8, + ), + onPressed: null), + ), + ]), + ), + // Expanded( + // child: Column( + // mainAxisAlignment: + // MainAxisAlignment.spaceEvenly, + // children: [], + // ), + // ), + Padding( + padding: EdgeInsets.only( + right: SizeConfig + .deviceWidth * + 2, + top: SizeConfig + .deviceHeight * + 12), + child: RaisedButton( + shape: + RoundedRectangleBorder( + borderRadius: + BorderRadius + .circular( + 7.0), + ), + onPressed: () { + Navigator.push( + context, + MaterialPageRoute( + builder: + (context) => + FinishedTrip()), + ); + }, + color: Hexcolor( + "#F41C7B"), + // textColor: Colors.white, + child: Text( + "Finish ride", + style: TextStyle( + color: Colors + .white, + fontFamily: + 'Roboto', + fontSize: + pHeight * + 0.020), + ), + ), + ), + ], + ), + ), + ), + ]), + ), + )); + }, + color: Hexcolor("#F41C7B"), + // textColor: Colors.white, + child: Text( + "1st Stop", + style: TextStyle( + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.020), + ), + ), + ), + ], + ), + ), + ), + ]), + ), + ), + ); + }, + // markers: _markers, + onMapCreated: _onMapCreated, + initialCameraPosition: CameraPosition( + target: _center, + zoom: 11.0, + ), + ), + ]), + ); + } +} diff --git a/lib/TripAlerts/pickRide.dart b/lib/TripAlerts/pickRide.dart new file mode 100644 index 0000000..d9745e6 --- /dev/null +++ b/lib/TripAlerts/pickRide.dart @@ -0,0 +1,784 @@ +import 'dart:async'; +import 'dart:ui'; + +import 'package:driverapp/TripAlerts/tripOTP.dart'; +import 'package:driverapp/utilities/size_config.dart'; +import 'package:flutter/material.dart'; +import 'package:google_maps_flutter/google_maps_flutter.dart'; +import 'package:hexcolor/hexcolor.dart'; +import 'package:slider_button/slider_button.dart'; +import 'package:fluid_slider/fluid_slider.dart'; + +class Pickride extends StatefulWidget { + @override + _PickrideState createState() => _PickrideState(); +} + +class _PickrideState extends State { + Completer _controller = Completer(); + static GlobalKey _scaffoldKey = GlobalKey(); + + static const LatLng _center = const LatLng(20.5937, 78.9629); + + void _onMapCreated(GoogleMapController controller) { + _controller.complete(controller); + } + + bool isChecked = false; + @override + Widget build(BuildContext context) { + final pHeight = MediaQuery.of(context).size.height; + final pWidth = MediaQuery.of(context).size.width; + SizeConfig().init(context); + return Scaffold( + appBar: AppBar( + automaticallyImplyLeading: false, + title: Padding( + padding: EdgeInsets.symmetric(horizontal: 5), + child: Builder( + builder: (context) => IconButton( + icon: Image.asset( + "images/drawer.png", + ), + onPressed: () => Scaffold.of(context).openDrawer(), + ), + ), + ), + backgroundColor: Hexcolor("#2A2E43"), + elevation: 0, + centerTitle: false, + titleSpacing: 0, + actions: [ + Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + IconButton( + icon: Icon( + Icons.notifications, + color: Colors.white, + size: SizeConfig.deviceWidth * 8, + ), + onPressed: () { + // do something + }, + ), + ], + ), + ], + ), + key: _scaffoldKey, + body: Stack(children: [ + GoogleMap( + onTap: (latLng) { + _scaffoldKey.currentState.showBottomSheet( + (context) => Container( + height: SizeConfig.deviceHeight * 50, + width: 500, + child: Expanded( + child: Column(children: [ + SizedBox( + height: pHeight * 0.02, + ), + Center( + child: Text( + "Pick your ride", + style: TextStyle(color: Colors.black), + ), + ), + SizedBox( + height: pHeight * 0.00, + ), + Expanded( + child: Padding( + padding: EdgeInsets.symmetric( + vertical: SizeConfig.deviceHeight * 7.5, + horizontal: SizeConfig.deviceWidth * 5), + child: Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(15), + color: Hexcolor("#2A2E43"), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Icon( + Icons.directions_walk, + color: Colors.white, + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Text( + '12 mins', + style: TextStyle( + color: Colors.white, + fontSize: SizeConfig.deviceWidth * 2), + ), + ), + ], + ), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 15), + child: Text( + 'Trade center', + style: TextStyle( + color: Hexcolor("#C840E9"), + fontSize: SizeConfig.deviceWidth * 3.5), + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 13), + child: Text( + 'Pickup location', + style: TextStyle( + color: Hexcolor("#959DAD"), + fontSize: SizeConfig.deviceWidth * 2.5), + ), + ), + ], + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 22), + child: Container( + color: Hexcolor("#D5D5D5"), + width: pWidth * 0.2, + height: pHeight, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Icon( + Icons.directions, + color: Colors.blue, + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Text( + 'Navigate', + style: TextStyle(color: Colors.black), + ), + ), + ], + ), + ), + ), + ], + ), + ), + )), + SizedBox( + height: pHeight * 0.00, + ), + Expanded( + child: Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.only( + topLeft: Radius.circular(14.0), + topRight: Radius.circular(14.0)), + color: Hexcolor("#2A2E43"), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Column( + mainAxisAlignment: + MainAxisAlignment.spaceEvenly, + children: [ + SizedBox( + height: SizeConfig.deviceHeight * 1, + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2), + child: Text( + "Ride accepted", + style: TextStyle(color: Colors.white), + ), + ), + SizedBox( + height: SizeConfig.deviceHeight * 3, + ), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment.spaceEvenly, + children: [ + Padding( + padding: EdgeInsets.only( + bottom: + SizeConfig.deviceHeight * 2), + child: IconButton( + icon: Icon( + Icons.call, + color: Colors.green, + size: SizeConfig.deviceWidth * 8, + ), + onPressed: null), + ), + ], + )), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment.spaceEvenly, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 2, + bottom: + SizeConfig.deviceHeight * 2), + child: RaisedButton( + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular(7.0), + ), + onPressed: () { + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (context) => DocumentsSubmit(), + // ), + // ); + }, + color: Hexcolor("#E9EBEA"), + // textColor: Colors.white, + child: Text( + "Cancel Trip", + style: TextStyle( + color: Colors.black, + fontFamily: 'Roboto', + fontSize: pHeight * 0.020), + ), + ), + ), + ], + ), + ) + ]), + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + SizedBox( + height: SizeConfig.deviceHeight * 2, + ), + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig.deviceWidth * 2, + left: SizeConfig.deviceWidth * 10), + child: CircleAvatar( + backgroundImage: + AssetImage("images/avatar.png"), + radius: 30, + ), + ), + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig.deviceWidth * 17, + left: SizeConfig.deviceWidth * 10), + child: Text( + "Ram Kumar", + style: TextStyle( + fontSize: SizeConfig.deviceWidth * 3, + color: Colors.white), + ), + ) + ], + ), + Expanded( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig.deviceHeight * 5, + left: SizeConfig.deviceWidth * 25, + ), + child: IconButton( + icon: Icon( + Icons.message_sharp, + color: Colors.lightBlue, + size: SizeConfig.deviceWidth * 8, + ), + onPressed: null), + ), + ]), + ), + // Expanded( + // child: Column( + // mainAxisAlignment: + // MainAxisAlignment.spaceEvenly, + // children: [], + // ), + // ), + Padding( + padding: EdgeInsets.only( + right: SizeConfig.deviceWidth * 2, + top: SizeConfig.deviceHeight * 12), + child: RaisedButton( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(7.0), + ), + onPressed: () { + showBottomSheet( + context: context, + builder: (context) => Container( + height: + SizeConfig.deviceHeight * 50, + width: 500, + child: Expanded( + child: Column(children: [ + SizedBox( + height: pHeight * 0.02, + ), + Center( + child: Text( + "Get OTP to start ride", + style: TextStyle( + color: Colors.black), + ), + ), + SizedBox( + height: pHeight * 0.00, + ), + Expanded( + child: Padding( + padding: EdgeInsets.symmetric( + vertical: SizeConfig + .deviceHeight * + 7.5, + horizontal: SizeConfig + .deviceWidth * + 5), + child: Container( + decoration: BoxDecoration( + borderRadius: + BorderRadius.circular( + 15), + color: + Hexcolor("#2A2E43"), + ), + child: Row( + mainAxisAlignment: + MainAxisAlignment + .start, + children: [ + Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Icon( + Icons + .directions_walk, + color: Colors + .white, + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Text( + '12 mins', + style: TextStyle( + color: Colors + .white, + fontSize: + SizeConfig.deviceWidth * + 2), + ), + ), + ], + ), + Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 15), + child: Text( + 'Trade center', + style: TextStyle( + color: Hexcolor( + "#C840E9"), + fontSize: + SizeConfig.deviceWidth * + 3.5), + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 13), + child: Text( + 'Pickup rider', + style: TextStyle( + color: Hexcolor( + "#959DAD"), + fontSize: + SizeConfig.deviceWidth * + 2.5), + ), + ), + ], + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 22), + child: Container( + color: Hexcolor( + "#D5D5D5"), + width: pWidth * 0.2, + height: pHeight, + child: Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Icon( + Icons + .directions, + color: Colors + .blue, + ), + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Text( + 'Navigate', + style: TextStyle( + color: Colors + .black), + ), + ), + ], + ), + ), + ), + ], + ), + ), + )), + SizedBox( + height: pHeight * 0.00, + ), + Expanded( + child: Container( + decoration: BoxDecoration( + borderRadius: + BorderRadius.only( + topLeft: Radius + .circular( + 14.0), + topRight: Radius + .circular( + 14.0)), + color: + Hexcolor("#2A2E43"), + ), + child: Row( + mainAxisAlignment: + MainAxisAlignment + .start, + children: [ + Column( + mainAxisAlignment: + MainAxisAlignment + .spaceEvenly, + children: [ + SizedBox( + height: SizeConfig + .deviceHeight * + 1, + ), + Padding( + padding: EdgeInsets.only( + left: SizeConfig + .deviceWidth * + 2), + child: Text( + "Arrived", + style: TextStyle( + color: Colors + .white), + ), + ), + SizedBox( + height: SizeConfig + .deviceHeight * + 3, + ), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment + .spaceEvenly, + children: [ + Padding( + padding: EdgeInsets.only( + bottom: + SizeConfig.deviceHeight * + 2), + child: IconButton( + icon: Icon( + Icons + .call, + color: + Colors.green, + size: SizeConfig.deviceWidth * + 8, + ), + onPressed: null), + ), + ], + )), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment + .spaceEvenly, + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * + 2, + bottom: + SizeConfig.deviceHeight * 2), + child: + RaisedButton( + shape: + RoundedRectangleBorder( + borderRadius: + BorderRadius.circular(7.0), + ), + onPressed: + () { + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (context) => DocumentsSubmit(), + // ), + // ); + }, + color: Hexcolor( + "#E9EBEA"), + // textColor: Colors.white, + child: + Text( + "Cancel Trip", + style: TextStyle( + color: Colors.black, + fontFamily: 'Roboto', + fontSize: pHeight * 0.020), + ), + ), + ), + ], + ), + ) + ]), + Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + SizedBox( + height: SizeConfig + .deviceHeight * + 2, + ), + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig + .deviceWidth * + 2, + left: SizeConfig + .deviceWidth * + 10), + child: + CircleAvatar( + backgroundImage: + AssetImage( + "images/avatar.png"), + radius: 30, + ), + ), + Padding( + padding: EdgeInsets.only( + bottom: SizeConfig + .deviceWidth * + 17, + left: SizeConfig + .deviceWidth * + 10), + child: Text( + "Ram Kumar", + style: TextStyle( + fontSize: + SizeConfig.deviceWidth * + 3, + color: Colors + .white), + ), + ) + ], + ), + Expanded( + child: Column( + mainAxisAlignment: + MainAxisAlignment + .center, + children: [ + Padding( + padding: + EdgeInsets + .only( + bottom: + SizeConfig.deviceHeight * + 5, + left: SizeConfig + .deviceWidth * + 25, + ), + child: IconButton( + icon: Icon( + Icons + .message_sharp, + color: Colors + .lightBlue, + size: SizeConfig.deviceWidth * + 8, + ), + onPressed: null), + ), + ]), + ), + // Expanded( + // child: Column( + // mainAxisAlignment: + // MainAxisAlignment.spaceEvenly, + // children: [], + // ), + // ), + Padding( + padding: EdgeInsets.only( + right: SizeConfig + .deviceWidth * + 2, + top: SizeConfig + .deviceHeight * + 12), + child: RaisedButton( + shape: + RoundedRectangleBorder( + borderRadius: + BorderRadius + .circular( + 7.0), + ), + onPressed: () { + Navigator.push( + context, + MaterialPageRoute( + builder: + (context) => + TripOTP( + phoneNumber: + null, + ), + ), + ); + }, + color: Hexcolor( + "#F41C7B"), + // textColor: Colors.white, + child: Text( + "Enter OTP", + style: TextStyle( + color: Colors + .white, + fontFamily: + 'Roboto', + fontSize: + pHeight * + 0.020), + ), + ), + ), + ], + ), + ), + ), + ]), + ), + )); + }, + color: Hexcolor("#F41C7B"), + // textColor: Colors.white, + child: Text( + "Arrived", + style: TextStyle( + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.020), + ), + ), + ), + ], + ), + ), + ), + ]), + ), + ), + ); + }, + // markers: _markers, + onMapCreated: _onMapCreated, + initialCameraPosition: CameraPosition( + target: _center, + zoom: 11.0, + ), + ), + ]), + ); + } +} diff --git a/lib/TripAlerts/tripOTP.dart b/lib/TripAlerts/tripOTP.dart new file mode 100644 index 0000000..748bf21 --- /dev/null +++ b/lib/TripAlerts/tripOTP.dart @@ -0,0 +1,316 @@ +import 'dart:async'; + +import 'package:driverapp/TripAlerts/onRide.dart'; +import 'package:driverapp/utilities/size_config.dart'; +import 'package:flutter/material.dart'; +import 'package:hexcolor/hexcolor.dart'; +import 'package:custom_switch_button/custom_switch_button.dart'; +import 'package:google_maps_flutter/google_maps_flutter.dart'; +import 'package:driverapp/TripAlerts/numeric_pad.dart'; + +class TripOTP extends StatefulWidget { + final String phoneNumber; + + TripOTP({@required this.phoneNumber}); + @override + _TripOTPState createState() => _TripOTPState(); +} + +class _TripOTPState extends State { + String code = ""; + Completer _controller = Completer(); + static GlobalKey _scaffoldKey = GlobalKey(); + + static const LatLng _center = const LatLng(20.5937, 78.9629); + + void _onMapCreated(GoogleMapController controller) { + _controller.complete(controller); + } + + bool isChecked = false; + @override + Widget build(BuildContext context) { + final pHeight = MediaQuery.of(context).size.height; + final pWidth = MediaQuery.of(context).size.width; + SizeConfig().init(context); + return Scaffold( + appBar: PreferredSize( + preferredSize: Size.fromHeight(90.0), + child: AppBar( + automaticallyImplyLeading: false, + backgroundColor: Hexcolor("#2A2E43"), + elevation: 0, + centerTitle: false, + titleSpacing: 0, + bottom: PreferredSize( + child: GestureDetector( + onTap: () { + setState(() { + isChecked = !isChecked; + }); + }, + child: Padding( + padding: EdgeInsets.only( + right: SizeConfig.deviceWidth * 6, + bottom: SizeConfig.deviceWidth * 4), + child: Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Transform.scale( + scale: 1.5, + child: CustomSwitchButton( + backgroundColor: Colors.white, + unCheckedColor: Hexcolor("#F41C7B"), + animationDuration: Duration(milliseconds: 400), + checkedColor: Hexcolor("#F41C7B"), + checked: isChecked, + ), + ) + ], + ), + ), + ), + preferredSize: Size.fromHeight(90.0), + ), + ), + ), + key: _scaffoldKey, + body: Stack(children: [ + GoogleMap( + onTap: (latLng) { + _scaffoldKey.currentState.showBottomSheet( + (context) => Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.only( + topLeft: Radius.circular(14.0), + topRight: Radius.circular(14.0)), + color: Hexcolor("#2A2E43"), + ), + height: SizeConfig.deviceHeight * 70, + width: 500, + child: Expanded( + child: Column(children: [ + SizedBox( + height: pHeight * 0.02, + ), + Text( + "Ride accepted", + style: TextStyle(color: Colors.white), + ), + + Padding( + padding: EdgeInsets.symmetric( + vertical: SizeConfig.deviceHeight * 3.5, + horizontal: SizeConfig.deviceWidth * 5), + child: Row( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + buildCodeNumberBox( + code.length > 0 ? code.substring(0, 1) : ""), + buildCodeNumberBox( + code.length > 1 ? code.substring(1, 2) : ""), + buildCodeNumberBox( + code.length > 2 ? code.substring(2, 3) : ""), + buildCodeNumberBox( + code.length > 3 ? code.substring(3, 4) : ""), + ]), + ), + Row( + children: [ + Padding( + padding: + EdgeInsets.only(left: SizeConfig.deviceWidth * 6), + child: RaisedButton( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(7.0), + ), + onPressed: () { + // Navigator.push( + // context, + // MaterialPageRoute( + // builder: (context) => TripOTP( + // phoneNumber: null, + // ), + // ), + // ); + }, + color: Hexcolor("#E9EBEA"), + // textColor: Colors.white, + child: Text( + "Cancel", + style: TextStyle( + color: Colors.black, + fontFamily: 'Roboto', + fontSize: pHeight * 0.020), + ), + ), + ), + Row( + children: [ + Padding( + padding: EdgeInsets.only( + left: SizeConfig.deviceWidth * 40), + child: RaisedButton( + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(7.0), + ), + onPressed: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => Onride(), + ), + ); + }, + color: Hexcolor("#F41C7B"), + // textColor: Colors.white, + child: Text( + "Done", + style: TextStyle( + color: Colors.white, + fontFamily: 'Roboto', + fontSize: pHeight * 0.020), + ), + ), + ) + ], + ), + ], + ), + + // Padding( + // padding: + // EdgeInsets.only(left: SizeConfig.deviceWidth * 40), + // child: Container( + // height: MediaQuery.of(context).size.height * 0.06, + // width: MediaQuery.of(context).size.width * 0.70, + // child: Padding( + // padding: EdgeInsets.only( + // right: SizeConfig.deviceWidth * 8), + // child: Row(children: [ + // Expanded( + // child: GestureDetector( + // onTap: () { + // print("Done"); + // }, + // child: Container( + // decoration: BoxDecoration( + // color: Hexcolor("#F41C7B"), + // borderRadius: BorderRadius.all( + // Radius.circular(10), + // ), + // ), + // child: Center( + // child: Text( + // "Done", + // style: TextStyle( + // fontSize: 15, + // fontWeight: FontWeight.bold, + // color: Colors.white), + // ), + // ), + // ), + // ), + // ), + // Expanded( + // child: Container( + // height: MediaQuery.of(context).size.height * + // 0.06, + // width: MediaQuery.of(context).size.width * + // 0.70, + // child: Row(children: [ + // Expanded( + // child: GestureDetector( + // onTap: () { + // print("Cancel"); + // }, + // child: Container( + // decoration: BoxDecoration( + // color: Colors.white, + // borderRadius: BorderRadius.all( + // Radius.circular(10), + // ), + // ), + // child: Center( + // child: Text( + // "Cancel", + // style: TextStyle( + // fontSize: 15, + // fontWeight: FontWeight.bold, + // color: Colors.black), + // ), + // ), + // ), + // ), + // ), + // ]), + // ), + // ), + // ]))), + // ), + + // SizedBox( + // height: pHeight * 0.08, + // ), + Expanded( + child: NumericPad(onNumberSelected: (value) { + print(value); + setState(() { + if (value != -1) { + if (code.length < 4) { + code = code + value.toString(); + } + } else { + code = code.substring(0, code.length - 1); + } + print(code); + }); + }), + ) + ]))), + ); + }, + // markers: _markers, + onMapCreated: _onMapCreated, + initialCameraPosition: CameraPosition(target: _center, zoom: 11.0), + ), + ]), + ); + } +} + +Widget buildCodeNumberBox(String codeNumber) { + return Padding( + padding: EdgeInsets.symmetric(horizontal: 8), + child: SizedBox( + width: 50, + height: 50, + child: Container( + decoration: BoxDecoration( + color: Color(0xFFF6F5FA), + borderRadius: BorderRadius.all( + Radius.circular(15), + ), + boxShadow: [ + BoxShadow( + color: Colors.black26, + blurRadius: 25.0, + spreadRadius: 1, + offset: Offset(0.0, 0.75)) + ], + ), + child: Center( + child: Text( + codeNumber, + style: TextStyle( + fontSize: 22, + fontWeight: FontWeight.bold, + color: Color(0xFF1F1F1F), + ), + ), + ), + ), + ), + ); +} diff --git a/lib/Widgets/Documents.dart b/lib/Widgets/Documents.dart index 2294a6e..6317d74 100644 --- a/lib/Widgets/Documents.dart +++ b/lib/Widgets/Documents.dart @@ -52,9 +52,9 @@ class _DocumentsState extends State { child: Text( 'Driver Documents', style: TextStyle( - color: Colors.black.withOpacity(0.75), - fontSize: pHeight * 0.025, - ), + color: Colors.black.withOpacity(0.75), + fontSize: pHeight * 0.025, + fontFamily: 'Roboto'), ), ), SizedBox( @@ -75,9 +75,9 @@ class _DocumentsState extends State { child: Text( 'Driving License', style: TextStyle( - color: Colors.black.withOpacity(0.75), - fontSize: pHeight * 0.02, - ), + color: Colors.black.withOpacity(0.75), + fontSize: pHeight * 0.02, + fontFamily: 'Roboto'), ), ), license == null @@ -112,9 +112,9 @@ class _DocumentsState extends State { Text( 'Approved', style: TextStyle( - color: Colors.black.withOpacity(0.75), - fontSize: pHeight * 0.02, - ), + color: Colors.black.withOpacity(0.75), + fontSize: pHeight * 0.02, + fontFamily: 'Roboto'), ), ], ) @@ -139,9 +139,9 @@ class _DocumentsState extends State { child: Text( 'Badge', style: TextStyle( - color: Colors.black.withOpacity(0.75), - fontSize: pHeight * 0.02, - ), + color: Colors.black.withOpacity(0.75), + fontSize: pHeight * 0.02, + fontFamily: 'Roboto'), ), ), badge == null @@ -176,9 +176,9 @@ class _DocumentsState extends State { Text( 'Approved', style: TextStyle( - color: Colors.black.withOpacity(0.75), - fontSize: pHeight * 0.02, - ), + color: Colors.black.withOpacity(0.75), + fontSize: pHeight * 0.02, + fontFamily: 'Roboto'), ), ], ) @@ -196,9 +196,9 @@ class _DocumentsState extends State { child: Text( 'Vehicle Documents', style: TextStyle( - color: Colors.black.withOpacity(0.75), - fontSize: pHeight * 0.025, - ), + color: Colors.black.withOpacity(0.75), + fontSize: pHeight * 0.025, + fontFamily: 'Roboto'), ), ), SizedBox( @@ -219,9 +219,9 @@ class _DocumentsState extends State { child: Text( 'Reg. Documents', style: TextStyle( - color: Colors.black.withOpacity(0.75), - fontSize: pHeight * 0.02, - ), + color: Colors.black.withOpacity(0.75), + fontSize: pHeight * 0.02, + fontFamily: 'Roboto'), ), ), regDoc == null @@ -256,9 +256,9 @@ class _DocumentsState extends State { Text( 'Approved', style: TextStyle( - color: Colors.black.withOpacity(0.75), - fontSize: pHeight * 0.02, - ), + color: Colors.black.withOpacity(0.75), + fontSize: pHeight * 0.02, + fontFamily: 'Roboto'), ), ], ) diff --git a/lib/Widgets/YourDetails.dart b/lib/Widgets/YourDetails.dart index 9521cda..c28ea82 100644 --- a/lib/Widgets/YourDetails.dart +++ b/lib/Widgets/YourDetails.dart @@ -45,6 +45,7 @@ class _YourDetailsState extends State { 'Harvey Specter', style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: widget.pHeight * 0.023), ) ], @@ -67,12 +68,13 @@ class _YourDetailsState extends State { onPressed: () {}, ), SizedBox( - height: widget.pHeight * 0.03, + height: widget.pHeight * 0.04, ), Text( 'Your rating', style: TextStyle( color: CupertinoColors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: widget.pHeight * 0.02), ), SizedBox( @@ -109,9 +111,9 @@ class _YourDetailsState extends State { child: Text( 'Personal Details', style: TextStyle( - color: Colors.black.withOpacity(0.65), - fontSize: widget.pHeight * 0.025, - ), + color: Colors.black.withOpacity(0.65), + fontSize: widget.pHeight * 0.025, + fontFamily: 'Roboto'), ), ), SizedBox( @@ -133,6 +135,7 @@ class _YourDetailsState extends State { 'Place, Country', style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: widget.pHeight * 0.018), ) ], @@ -157,6 +160,7 @@ class _YourDetailsState extends State { '+91 9876543210', style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: widget.pHeight * 0.018), ) ], @@ -181,6 +185,7 @@ class _YourDetailsState extends State { 'johndoe@example.com', style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: widget.pHeight * 0.018), ) ], @@ -214,9 +219,9 @@ class _YourDetailsState extends State { child: Text( 'Service Details', style: TextStyle( - color: Colors.black.withOpacity(0.65), - fontSize: widget.pHeight * 0.025, - ), + color: Colors.black.withOpacity(0.65), + fontSize: widget.pHeight * 0.025, + fontFamily: 'Roboto'), ), ), SizedBox( @@ -234,9 +239,9 @@ class _YourDetailsState extends State { child: Text( 'Comfort', style: TextStyle( - color: Colors.black.withOpacity(0.65), - fontSize: widget.pHeight * 0.02, - ), + color: Colors.black.withOpacity(0.65), + fontSize: widget.pHeight * 0.02, + fontFamily: 'Roboto'), ), ), ], @@ -257,9 +262,9 @@ class _YourDetailsState extends State { child: Text( 'NU 20 TMV', style: TextStyle( - color: Colors.black.withOpacity(0.85), - fontSize: widget.pHeight * 0.025, - ), + color: Colors.black.withOpacity(0.85), + fontSize: widget.pHeight * 0.025, + fontFamily: 'Roboto'), ), ), SizedBox( @@ -270,9 +275,9 @@ class _YourDetailsState extends State { child: Text( 'Mini Cab - Black', style: TextStyle( - color: Colors.black.withOpacity(0.85), - fontSize: widget.pHeight * 0.025, - ), + color: Colors.black.withOpacity(0.85), + fontSize: widget.pHeight * 0.025, + fontFamily: 'Roboto'), ), ), ], @@ -306,9 +311,9 @@ class _YourDetailsState extends State { child: Text( 'Add ons selected', style: TextStyle( - color: Colors.black.withOpacity(0.65), - fontSize: widget.pHeight * 0.025, - ), + color: Colors.black.withOpacity(0.65), + fontSize: widget.pHeight * 0.025, + fontFamily: 'Roboto'), ), ), SizedBox( @@ -330,6 +335,7 @@ class _YourDetailsState extends State { 'Walking Stick', style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: widget.pHeight * 0.02), ) ], @@ -348,6 +354,7 @@ class _YourDetailsState extends State { 'Wheelchair', style: TextStyle( color: Colors.black.withOpacity(0.65), + fontFamily: 'Roboto', fontSize: widget.pHeight * 0.02), ) ], diff --git a/lib/main.dart b/lib/main.dart index 7cffdf7..4a0677f 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -3,14 +3,18 @@ import 'package:driverapp/Screens/AllTrips/CancelledTrips.dart'; import 'package:driverapp/Screens/AllTrips/ChatScreen.dart'; import 'package:driverapp/Screens/AllTrips/FinishedTrip.dart'; import 'package:driverapp/Screens/AllTrips/ThankYouScreen.dart'; +import 'package:driverapp/Screens/Home/Home.dart'; import 'package:driverapp/Screens/SplashScreen.dart'; import 'package:driverapp/Screens/SupportScreen.dart'; import 'package:driverapp/Screens/TermsCondition.dart'; +import 'package:driverapp/Screens/TripSummary/CompletedSummary.dart'; +import 'package:driverapp/Screens/TripSummary/Tripsummary.dart'; import 'package:flutter/material.dart'; import 'Screens/AccountSummary/AccountSummaryMain.dart'; import 'Screens/AccountSummary/CommissionDue.dart'; import 'Screens/AccountSummary/SettlementDue.dart'; import 'Screens/AccountSummary/TotalIncome.dart'; +import 'Screens/SplashScreen.dart'; void main() { runApp(MyApp()); @@ -30,8 +34,10 @@ class MyApp extends StatelessWidget { CommissionDue.routeName: (ctx) => CommissionDue(), SettlementDue.routeName: (ctx) => SettlementDue(), TransferScreen.routeName: (ctx) => TransferScreen(), + CompletedSummary.routeName: (ctx) => CompletedSummary(), + TripSummary.routeName: (ctx) => TripSummary(), }, - home: TermsCondition(), + home: SplashScreen(), ); } } diff --git a/lib/utilities/size_config.dart b/lib/utilities/size_config.dart new file mode 100644 index 0000000..56c90d4 --- /dev/null +++ b/lib/utilities/size_config.dart @@ -0,0 +1,15 @@ +import 'package:flutter/widgets.dart'; + +class SizeConfig { + + MediaQueryData _mediaQueryData; + static double deviceWidth; + static double deviceHeight; + + void init(BuildContext context) { + + _mediaQueryData = MediaQuery.of(context); + deviceWidth = _mediaQueryData.size.width / 100; + deviceHeight = _mediaQueryData.size.height / 100; + } +} \ No newline at end of file diff --git a/pubspec.lock b/pubspec.lock index ce5101d..15ac40e 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1,34 +1,69 @@ # Generated by pub # See https://dart.dev/tools/pub/glossary#lockfile packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + url: "https://pub.dartlang.org" + source: hosted + version: "9.0.0" + analyzer: + dependency: transitive + description: + name: analyzer + url: "https://pub.dartlang.org" + source: hosted + version: "0.40.1" + args: + dependency: transitive + description: + name: args + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.0" async: dependency: transitive description: name: async url: "https://pub.dartlang.org" source: hosted - version: "2.4.2" + version: "2.5.0-nullsafety.1" boolean_selector: dependency: transitive description: name: boolean_selector url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.1.0-nullsafety.1" + build: + dependency: transitive + description: + name: build + url: "https://pub.dartlang.org" + source: hosted + version: "1.5.0" + build_config: + dependency: transitive + description: + name: build_config + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.2" characters: dependency: transitive description: name: characters url: "https://pub.dartlang.org" source: hosted - version: "1.0.0" + version: "1.1.0-nullsafety.3" charcode: dependency: transitive description: name: charcode url: "https://pub.dartlang.org" source: hosted - version: "1.1.3" + version: "1.2.0-nullsafety.1" charts_common: dependency: transitive description: @@ -43,20 +78,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.9.0" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.2" + cli_util: + dependency: transitive + description: + name: cli_util + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.0" clock: dependency: transitive description: name: clock url: "https://pub.dartlang.org" source: hosted - version: "1.0.1" + version: "1.1.0-nullsafety.1" collection: dependency: transitive description: name: collection url: "https://pub.dartlang.org" source: hosted - version: "1.14.13" + version: "1.15.0-nullsafety.3" + convert: + dependency: transitive + description: + name: convert + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.1" + crypto: + dependency: transitive + description: + name: crypto + url: "https://pub.dartlang.org" + source: hosted + version: "2.1.5" cupertino_icons: dependency: "direct main" description: @@ -64,6 +127,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.1.3" + custom_switch_button: + dependency: "direct main" + description: + name: custom_switch_button + url: "https://pub.dartlang.org" + source: hosted + version: "0.5.0" + dart_style: + dependency: transitive + description: + name: dart_style + url: "https://pub.dartlang.org" + source: hosted + version: "1.3.7" equatable: dependency: transitive description: @@ -84,7 +161,7 @@ packages: name: fake_async url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.2.0-nullsafety.1" fl_chart: dependency: "direct main" description: @@ -92,6 +169,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.11.1" + fluid_slider: + dependency: "direct main" + description: + name: fluid_slider + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.1" flutter: dependency: "direct main" description: flutter @@ -109,8 +193,41 @@ packages: description: flutter source: sdk version: "0.0.0" - http: + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + glob: + dependency: transitive + description: + name: glob + url: "https://pub.dartlang.org" + source: hosted + version: "1.2.0" + google_maps_flutter: + dependency: "direct main" + description: + name: google_maps_flutter + url: "https://pub.dartlang.org" + source: hosted + version: "0.5.33" + google_maps_flutter_platform_interface: dependency: transitive + description: + name: google_maps_flutter_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.4" + hexcolor: + dependency: "direct main" + description: + name: hexcolor + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.4" + http: + dependency: "direct main" description: name: http url: "https://pub.dartlang.org" @@ -151,6 +268,27 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.3.1" + js: + dependency: transitive + description: + name: js + url: "https://pub.dartlang.org" + source: hosted + version: "0.6.2" + json_annotation: + dependency: transitive + description: + name: json_annotation + url: "https://pub.dartlang.org" + source: hosted + version: "3.1.0" + json_serializable: + dependency: "direct main" + description: + name: json_serializable + url: "https://pub.dartlang.org" + source: hosted + version: "3.5.0" latlng: dependency: "direct main" description: @@ -158,6 +296,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.0.2" + lite_rolling_switch: + dependency: "direct main" + description: + name: lite_rolling_switch + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.1" logging: dependency: transitive description: @@ -178,14 +323,28 @@ packages: name: matcher url: "https://pub.dartlang.org" source: hosted - version: "0.12.8" + version: "0.12.10-nullsafety.1" meta: dependency: transitive description: name: meta url: "https://pub.dartlang.org" source: hosted - version: "1.1.8" + version: "1.3.0-nullsafety.3" + node_interop: + dependency: transitive + description: + name: node_interop + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.1" + node_io: + dependency: transitive + description: + name: node_io + url: "https://pub.dartlang.org" + source: hosted + version: "1.1.1" otp_text_field: dependency: "direct main" description: @@ -193,13 +352,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.1" + package_config: + dependency: transitive + description: + name: package_config + url: "https://pub.dartlang.org" + source: hosted + version: "1.9.3" path: dependency: transitive description: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.7.0" + version: "1.8.0-nullsafety.1" path_drawing: dependency: transitive description: @@ -228,6 +394,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.2" + pub_semver: + dependency: transitive + description: + name: pub_semver + url: "https://pub.dartlang.org" + source: hosted + version: "1.4.4" + pubspec_parse: + dependency: transitive + description: + name: pubspec_parse + url: "https://pub.dartlang.org" + source: hosted + version: "0.1.5" rating_bar: dependency: "direct main" description: @@ -235,67 +415,123 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.2.0" + simple_animations: + dependency: transitive + description: + name: simple_animations + url: "https://pub.dartlang.org" + source: hosted + version: "1.3.12" sky_engine: dependency: transitive description: flutter source: sdk version: "0.0.99" + slider_button: + dependency: "direct main" + description: + name: slider_button + url: "https://pub.dartlang.org" + source: hosted + version: "0.6.0" + source_gen: + dependency: transitive + description: + name: source_gen + url: "https://pub.dartlang.org" + source: hosted + version: "0.9.7+1" source_span: dependency: transitive description: name: source_span url: "https://pub.dartlang.org" source: hosted - version: "1.7.0" + version: "1.8.0-nullsafety.2" stack_trace: dependency: transitive description: name: stack_trace url: "https://pub.dartlang.org" source: hosted - version: "1.9.5" + version: "1.10.0-nullsafety.1" stream_channel: dependency: transitive description: name: stream_channel url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.1.0-nullsafety.1" + stream_transform: + dependency: transitive + description: + name: stream_transform + url: "https://pub.dartlang.org" + source: hosted + version: "1.2.0" string_scanner: dependency: transitive description: name: string_scanner url: "https://pub.dartlang.org" source: hosted - version: "1.0.5" + version: "1.1.0-nullsafety.1" term_glyph: dependency: transitive description: name: term_glyph url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.2.0-nullsafety.1" test_api: dependency: transitive description: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.2.17" + version: "0.2.19-nullsafety.2" typed_data: dependency: transitive description: name: typed_data url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.0-nullsafety.3" vector_math: dependency: transitive description: name: vector_math url: "https://pub.dartlang.org" source: hosted - version: "2.0.8" + version: "2.1.0-nullsafety.3" + vibration: + dependency: transitive + description: + name: vibration + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.1" + vibration_web: + dependency: transitive + description: + name: vibration_web + url: "https://pub.dartlang.org" + source: hosted + version: "1.6.1" + watcher: + dependency: transitive + description: + name: watcher + url: "https://pub.dartlang.org" + source: hosted + version: "0.9.7+15" + yaml: + dependency: transitive + description: + name: yaml + url: "https://pub.dartlang.org" + source: hosted + version: "2.2.1" sdks: - dart: ">=2.9.0-14.0.dev <3.0.0" - flutter: ">=1.12.13 <2.0.0" + dart: ">=2.10.0-110 <2.11.0" + flutter: ">=1.20.0 <2.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index df00955..e23e384 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -20,6 +20,14 @@ dependencies: latlng: ^0.0.2 fl_chart: ^0.11.1 charts_flutter: ^0.9.0 + hexcolor: ^1.0.4 + custom_switch_button: ^0.5.0 + lite_rolling_switch: ^0.1.1 + google_maps_flutter: ^0.5.27+3 + http: ^0.12.0+1 + json_serializable: ^3.3.0 + slider_button: + fluid_slider: ^1.0.0 dev_dependencies: flutter_test: