diff --git a/.DS_Store b/.DS_Store index 6dbf4db..475e57c 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/.dart_tool/extension_discovery/README.md b/.dart_tool/extension_discovery/README.md new file mode 100644 index 0000000..9dc6757 --- /dev/null +++ b/.dart_tool/extension_discovery/README.md @@ -0,0 +1,31 @@ +Extension Discovery Cache +========================= + +This folder is used by `package:extension_discovery` to cache lists of +packages that contains extensions for other packages. + +DO NOT USE THIS FOLDER +---------------------- + + * Do not read (or rely) the contents of this folder. + * Do write to this folder. + +If you're interested in the lists of extensions stored in this folder use the +API offered by package `extension_discovery` to get this information. + +If this package doesn't work for your use-case, then don't try to read the +contents of this folder. It may change, and will not remain stable. + +Use package `extension_discovery` +--------------------------------- + +If you want to access information from this folder. + +Feel free to delete this folder +------------------------------- + +Files in this folder act as a cache, and the cache is discarded if the files +are older than the modification time of `.dart_tool/package_config.json`. + +Hence, it should never be necessary to clear this cache manually, if you find a +need to do please file a bug. diff --git a/.dart_tool/extension_discovery/vs_code.json b/.dart_tool/extension_discovery/vs_code.json new file mode 100644 index 0000000..ec1186f --- /dev/null +++ b/.dart_tool/extension_discovery/vs_code.json @@ -0,0 +1 @@ +{"version":2,"entries":[{"package":"grocery_app","rootUri":"../","packageUri":"lib/"}]} \ No newline at end of file diff --git a/.dart_tool/package_config.json b/.dart_tool/package_config.json index 8a6fa4a..88e4e1a 100644 --- a/.dart_tool/package_config.json +++ b/.dart_tool/package_config.json @@ -1010,7 +1010,7 @@ "languageVersion": "3.4" } ], - "generated": "2025-03-22T13:23:26.634731Z", + "generated": "2025-03-24T12:39:30.338613Z", "generator": "pub", "generatorVersion": "3.4.4", "flutterRoot": "file:///Users/rajeevsingh/Documents/allSoftwares/flutter", diff --git a/.flutter-plugins-dependencies b/.flutter-plugins-dependencies index 9efd9eb..02e3371 100644 --- a/.flutter-plugins-dependencies +++ b/.flutter-plugins-dependencies @@ -1 +1 @@ -{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":true,"dependencies":[]},{"name":"flutter_inappwebview_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/","native_build":true,"dependencies":[]},{"name":"fluttertoast","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/fluttertoast-8.2.11/","native_build":true,"dependencies":[]},{"name":"geocoding_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geocoding_ios-3.0.1/","native_build":true,"dependencies":[]},{"name":"geolocator_apple","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_apple-2.3.8+1/","native_build":true,"dependencies":[]},{"name":"google_maps_flutter_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/google_maps_flutter_ios-2.13.2/","native_build":true,"dependencies":[]},{"name":"image_picker_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_ios-0.8.12+2/","native_build":true,"dependencies":[]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":true,"dependencies":[]},{"name":"path_provider_foundation","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"shared_preferences_foundation","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_foundation-2.5.4/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/sqflite-2.3.3+1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"url_launcher_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_ios-6.3.2/","native_build":true,"dependencies":[]}],"android":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":true,"dependencies":[]},{"name":"flutter_inappwebview_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_inappwebview_android-1.0.13/","native_build":true,"dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.22/","native_build":true,"dependencies":[]},{"name":"fluttertoast","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/fluttertoast-8.2.11/","native_build":true,"dependencies":[]},{"name":"geocoding_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geocoding_android-3.3.1/","native_build":true,"dependencies":[]},{"name":"geolocator_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_android-4.6.1/","native_build":true,"dependencies":[]},{"name":"google_api_headers","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/google_api_headers-1.6.0/","native_build":true,"dependencies":["package_info_plus"]},{"name":"google_maps_flutter_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/google_maps_flutter_android-2.14.7/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"]},{"name":"image_picker_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_android-0.8.12+12/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":true,"dependencies":[]},{"name":"path_provider_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_android-2.2.10/","native_build":true,"dependencies":[]},{"name":"shared_preferences_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_android-2.3.2/","native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/sqflite-2.3.3+1/","native_build":true,"dependencies":[]},{"name":"url_launcher_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.9/","native_build":true,"dependencies":[]}],"macos":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":true,"dependencies":[]},{"name":"file_selector_macos","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.4+2/","native_build":true,"dependencies":[]},{"name":"flutter_inappwebview_macos","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_inappwebview_macos-1.0.11/","native_build":true,"dependencies":[]},{"name":"geolocator_apple","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_apple-2.3.8+1/","native_build":true,"dependencies":[]},{"name":"image_picker_macos","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_macos-0.2.1+2/","native_build":false,"dependencies":["file_selector_macos"]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":true,"dependencies":[]},{"name":"path_provider_foundation","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"shared_preferences_foundation","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_foundation-2.5.4/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/sqflite-2.3.3+1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"url_launcher_macos","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.2/","native_build":true,"dependencies":[]}],"linux":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":false,"dependencies":[]},{"name":"file_selector_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.3+2/","native_build":true,"dependencies":[]},{"name":"image_picker_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_linux-0.2.1+1/","native_build":false,"dependencies":["file_selector_linux"]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":false,"dependencies":[]},{"name":"path_provider_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/","native_build":false,"dependencies":[]},{"name":"shared_preferences_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_linux-2.4.1/","native_build":false,"dependencies":["path_provider_linux"]},{"name":"url_launcher_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.1/","native_build":true,"dependencies":[]}],"windows":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":true,"dependencies":[]},{"name":"file_selector_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+3/","native_build":true,"dependencies":[]},{"name":"geolocator_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_windows-0.2.3/","native_build":true,"dependencies":[]},{"name":"image_picker_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_windows-0.2.1+1/","native_build":false,"dependencies":["file_selector_windows"]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":false,"dependencies":[]},{"name":"path_provider_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/","native_build":false,"dependencies":[]},{"name":"shared_preferences_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_windows-2.4.1/","native_build":false,"dependencies":["path_provider_windows"]},{"name":"url_launcher_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.4/","native_build":true,"dependencies":[]}],"web":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","dependencies":[]},{"name":"flutter_inappwebview_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_inappwebview_web-1.0.8/","dependencies":[]},{"name":"fluttertoast","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/fluttertoast-8.2.11/","dependencies":[]},{"name":"geolocator_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_web-4.1.1/","dependencies":[]},{"name":"google_maps_flutter_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/google_maps_flutter_web-0.5.10/","dependencies":[]},{"name":"image_picker_for_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_for_web-3.0.6/","dependencies":[]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","dependencies":[]},{"name":"shared_preferences_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_web-2.4.2/","dependencies":[]},{"name":"url_launcher_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_web-2.3.3/","dependencies":[]}]},"dependencyGraph":[{"name":"connectivity_plus","dependencies":[]},{"name":"file_selector_linux","dependencies":[]},{"name":"file_selector_macos","dependencies":[]},{"name":"file_selector_windows","dependencies":[]},{"name":"flutter_inappwebview","dependencies":["flutter_inappwebview_android","flutter_inappwebview_ios","flutter_inappwebview_macos","flutter_inappwebview_web"]},{"name":"flutter_inappwebview_android","dependencies":[]},{"name":"flutter_inappwebview_ios","dependencies":[]},{"name":"flutter_inappwebview_macos","dependencies":[]},{"name":"flutter_inappwebview_web","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"fluttertoast","dependencies":[]},{"name":"geocoding","dependencies":["geocoding_android","geocoding_ios"]},{"name":"geocoding_android","dependencies":[]},{"name":"geocoding_ios","dependencies":[]},{"name":"geolocator","dependencies":["geolocator_android","geolocator_apple","geolocator_web","geolocator_windows"]},{"name":"geolocator_android","dependencies":[]},{"name":"geolocator_apple","dependencies":[]},{"name":"geolocator_web","dependencies":[]},{"name":"geolocator_windows","dependencies":[]},{"name":"google_api_headers","dependencies":["package_info_plus"]},{"name":"google_maps_flutter","dependencies":["google_maps_flutter_android","google_maps_flutter_ios","google_maps_flutter_web"]},{"name":"google_maps_flutter_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"google_maps_flutter_ios","dependencies":[]},{"name":"google_maps_flutter_web","dependencies":[]},{"name":"image_picker","dependencies":["image_picker_android","image_picker_for_web","image_picker_ios","image_picker_linux","image_picker_macos","image_picker_windows"]},{"name":"image_picker_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"image_picker_for_web","dependencies":[]},{"name":"image_picker_ios","dependencies":[]},{"name":"image_picker_linux","dependencies":["file_selector_linux"]},{"name":"image_picker_macos","dependencies":["file_selector_macos"]},{"name":"image_picker_windows","dependencies":["file_selector_windows"]},{"name":"package_info_plus","dependencies":[]},{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_android","shared_preferences_foundation","shared_preferences_linux","shared_preferences_web","shared_preferences_windows"]},{"name":"shared_preferences_android","dependencies":[]},{"name":"shared_preferences_foundation","dependencies":[]},{"name":"shared_preferences_linux","dependencies":["path_provider_linux"]},{"name":"shared_preferences_web","dependencies":[]},{"name":"shared_preferences_windows","dependencies":["path_provider_windows"]},{"name":"sqflite","dependencies":[]},{"name":"url_launcher","dependencies":["url_launcher_android","url_launcher_ios","url_launcher_linux","url_launcher_macos","url_launcher_web","url_launcher_windows"]},{"name":"url_launcher_android","dependencies":[]},{"name":"url_launcher_ios","dependencies":[]},{"name":"url_launcher_linux","dependencies":[]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"url_launcher_windows","dependencies":[]}],"date_created":"2025-03-22 18:53:26.862340","version":"3.22.3"} \ No newline at end of file +{"info":"This is a generated file; do not edit or check into version control.","plugins":{"ios":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":true,"dependencies":[]},{"name":"flutter_inappwebview_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_inappwebview_ios-1.0.13/","native_build":true,"dependencies":[]},{"name":"fluttertoast","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/fluttertoast-8.2.11/","native_build":true,"dependencies":[]},{"name":"geocoding_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geocoding_ios-3.0.1/","native_build":true,"dependencies":[]},{"name":"geolocator_apple","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_apple-2.3.8+1/","native_build":true,"dependencies":[]},{"name":"google_maps_flutter_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/google_maps_flutter_ios-2.13.2/","native_build":true,"dependencies":[]},{"name":"image_picker_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_ios-0.8.12+2/","native_build":true,"dependencies":[]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":true,"dependencies":[]},{"name":"path_provider_foundation","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"shared_preferences_foundation","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_foundation-2.5.4/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/sqflite-2.3.3+1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"url_launcher_ios","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_ios-6.3.2/","native_build":true,"dependencies":[]}],"android":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":true,"dependencies":[]},{"name":"flutter_inappwebview_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_inappwebview_android-1.0.13/","native_build":true,"dependencies":[]},{"name":"flutter_plugin_android_lifecycle","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_plugin_android_lifecycle-2.0.22/","native_build":true,"dependencies":[]},{"name":"fluttertoast","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/fluttertoast-8.2.11/","native_build":true,"dependencies":[]},{"name":"geocoding_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geocoding_android-3.3.1/","native_build":true,"dependencies":[]},{"name":"geolocator_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_android-4.6.1/","native_build":true,"dependencies":[]},{"name":"google_api_headers","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/google_api_headers-1.6.0/","native_build":true,"dependencies":["package_info_plus"]},{"name":"google_maps_flutter_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/google_maps_flutter_android-2.14.7/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"]},{"name":"image_picker_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_android-0.8.12+12/","native_build":true,"dependencies":["flutter_plugin_android_lifecycle"]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":true,"dependencies":[]},{"name":"path_provider_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_android-2.2.10/","native_build":true,"dependencies":[]},{"name":"shared_preferences_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_android-2.3.2/","native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/sqflite-2.3.3+1/","native_build":true,"dependencies":[]},{"name":"url_launcher_android","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_android-6.3.9/","native_build":true,"dependencies":[]}],"macos":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":true,"dependencies":[]},{"name":"file_selector_macos","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/file_selector_macos-0.9.4+2/","native_build":true,"dependencies":[]},{"name":"flutter_inappwebview_macos","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_inappwebview_macos-1.0.11/","native_build":true,"dependencies":[]},{"name":"geolocator_apple","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_apple-2.3.8+1/","native_build":true,"dependencies":[]},{"name":"image_picker_macos","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_macos-0.2.1+2/","native_build":false,"dependencies":["file_selector_macos"]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":true,"dependencies":[]},{"name":"path_provider_foundation","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_foundation-2.4.1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"shared_preferences_foundation","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_foundation-2.5.4/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"sqflite","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/sqflite-2.3.3+1/","shared_darwin_source":true,"native_build":true,"dependencies":[]},{"name":"url_launcher_macos","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_macos-3.2.2/","native_build":true,"dependencies":[]}],"linux":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":false,"dependencies":[]},{"name":"file_selector_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/file_selector_linux-0.9.3+2/","native_build":true,"dependencies":[]},{"name":"image_picker_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_linux-0.2.1+1/","native_build":false,"dependencies":["file_selector_linux"]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":false,"dependencies":[]},{"name":"path_provider_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_linux-2.2.1/","native_build":false,"dependencies":[]},{"name":"shared_preferences_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_linux-2.4.1/","native_build":false,"dependencies":["path_provider_linux"]},{"name":"url_launcher_linux","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_linux-3.2.1/","native_build":true,"dependencies":[]}],"windows":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","native_build":true,"dependencies":[]},{"name":"file_selector_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/file_selector_windows-0.9.3+3/","native_build":true,"dependencies":[]},{"name":"geolocator_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_windows-0.2.3/","native_build":true,"dependencies":[]},{"name":"image_picker_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_windows-0.2.1+1/","native_build":false,"dependencies":["file_selector_windows"]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","native_build":false,"dependencies":[]},{"name":"path_provider_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/path_provider_windows-2.3.0/","native_build":false,"dependencies":[]},{"name":"shared_preferences_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_windows-2.4.1/","native_build":false,"dependencies":["path_provider_windows"]},{"name":"url_launcher_windows","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_windows-3.1.4/","native_build":true,"dependencies":[]}],"web":[{"name":"connectivity_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/connectivity_plus-6.1.3/","dependencies":[]},{"name":"flutter_inappwebview_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/flutter_inappwebview_web-1.0.8/","dependencies":[]},{"name":"fluttertoast","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/fluttertoast-8.2.11/","dependencies":[]},{"name":"geolocator_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/geolocator_web-4.1.1/","dependencies":[]},{"name":"google_maps_flutter_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/google_maps_flutter_web-0.5.10/","dependencies":[]},{"name":"image_picker_for_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/image_picker_for_web-3.0.6/","dependencies":[]},{"name":"package_info_plus","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/package_info_plus-4.2.0/","dependencies":[]},{"name":"shared_preferences_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/shared_preferences_web-2.4.2/","dependencies":[]},{"name":"url_launcher_web","path":"/Users/rajeevsingh/.pub-cache/hosted/pub.dev/url_launcher_web-2.3.3/","dependencies":[]}]},"dependencyGraph":[{"name":"connectivity_plus","dependencies":[]},{"name":"file_selector_linux","dependencies":[]},{"name":"file_selector_macos","dependencies":[]},{"name":"file_selector_windows","dependencies":[]},{"name":"flutter_inappwebview","dependencies":["flutter_inappwebview_android","flutter_inappwebview_ios","flutter_inappwebview_macos","flutter_inappwebview_web"]},{"name":"flutter_inappwebview_android","dependencies":[]},{"name":"flutter_inappwebview_ios","dependencies":[]},{"name":"flutter_inappwebview_macos","dependencies":[]},{"name":"flutter_inappwebview_web","dependencies":[]},{"name":"flutter_plugin_android_lifecycle","dependencies":[]},{"name":"fluttertoast","dependencies":[]},{"name":"geocoding","dependencies":["geocoding_android","geocoding_ios"]},{"name":"geocoding_android","dependencies":[]},{"name":"geocoding_ios","dependencies":[]},{"name":"geolocator","dependencies":["geolocator_android","geolocator_apple","geolocator_web","geolocator_windows"]},{"name":"geolocator_android","dependencies":[]},{"name":"geolocator_apple","dependencies":[]},{"name":"geolocator_web","dependencies":[]},{"name":"geolocator_windows","dependencies":[]},{"name":"google_api_headers","dependencies":["package_info_plus"]},{"name":"google_maps_flutter","dependencies":["google_maps_flutter_android","google_maps_flutter_ios","google_maps_flutter_web"]},{"name":"google_maps_flutter_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"google_maps_flutter_ios","dependencies":[]},{"name":"google_maps_flutter_web","dependencies":[]},{"name":"image_picker","dependencies":["image_picker_android","image_picker_for_web","image_picker_ios","image_picker_linux","image_picker_macos","image_picker_windows"]},{"name":"image_picker_android","dependencies":["flutter_plugin_android_lifecycle"]},{"name":"image_picker_for_web","dependencies":[]},{"name":"image_picker_ios","dependencies":[]},{"name":"image_picker_linux","dependencies":["file_selector_linux"]},{"name":"image_picker_macos","dependencies":["file_selector_macos"]},{"name":"image_picker_windows","dependencies":["file_selector_windows"]},{"name":"package_info_plus","dependencies":[]},{"name":"path_provider","dependencies":["path_provider_android","path_provider_foundation","path_provider_linux","path_provider_windows"]},{"name":"path_provider_android","dependencies":[]},{"name":"path_provider_foundation","dependencies":[]},{"name":"path_provider_linux","dependencies":[]},{"name":"path_provider_windows","dependencies":[]},{"name":"shared_preferences","dependencies":["shared_preferences_android","shared_preferences_foundation","shared_preferences_linux","shared_preferences_web","shared_preferences_windows"]},{"name":"shared_preferences_android","dependencies":[]},{"name":"shared_preferences_foundation","dependencies":[]},{"name":"shared_preferences_linux","dependencies":["path_provider_linux"]},{"name":"shared_preferences_web","dependencies":[]},{"name":"shared_preferences_windows","dependencies":["path_provider_windows"]},{"name":"sqflite","dependencies":[]},{"name":"url_launcher","dependencies":["url_launcher_android","url_launcher_ios","url_launcher_linux","url_launcher_macos","url_launcher_web","url_launcher_windows"]},{"name":"url_launcher_android","dependencies":[]},{"name":"url_launcher_ios","dependencies":[]},{"name":"url_launcher_linux","dependencies":[]},{"name":"url_launcher_macos","dependencies":[]},{"name":"url_launcher_web","dependencies":[]},{"name":"url_launcher_windows","dependencies":[]}],"date_created":"2025-03-24 18:09:30.581848","version":"3.22.3"} \ No newline at end of file diff --git a/lib/src/common_widget/network_image.dart b/lib/src/common_widget/network_image.dart index 078ca9f..f3b08e5 100644 --- a/lib/src/common_widget/network_image.dart +++ b/lib/src/common_widget/network_image.dart @@ -38,9 +38,11 @@ class AppNetworkImage extends StatelessWidget { @override Widget build(BuildContext context) { - return CachedNetworkImage( - height: height, - width: width, + return + CachedNetworkImage( + + /// height: height, + ///width: width, errorWidget: (context, url, error) { return Container( height: height, @@ -60,10 +62,8 @@ class AppNetworkImage extends StatelessWidget { )), ); }, - placeholder: (context, url) - { - return - Container( + placeholder: (context, url) { + return Container( width: width, height: height, decoration: BoxDecoration( @@ -78,11 +78,10 @@ class AppNetworkImage extends StatelessWidget { ), ); }, - imageBuilder: (context, cIMage) { return Container( - width: width, - height: height, + // width: width, + height: 100, decoration: BoxDecoration( color: backGroundColor, borderRadius: isFromSlider @@ -96,14 +95,21 @@ class AppNetworkImage extends StatelessWidget { bottomRight: Radius.circular(radius!), ) : BorderRadius.circular(radius ?? 0), - border: Border.all(color: isBorderShow ? APPCOLOR.bgGrey : Colors.transparent, width: 1), + border: Border.all( + color: isBorderShow ? APPCOLOR.bgGrey : Colors.transparent, + width: 1), image: DecorationImage( - fit: boxFit ?? BoxFit.contain, - colorFilter: isShowColor ? ColorFilter.mode(imageColor ?? APPCOLOR.bgGrey, BlendMode.srcIn) : null, + fit: boxFit ?? BoxFit.fill, + colorFilter: isShowColor + ? ColorFilter.mode( + imageColor ?? APPCOLOR.bgGrey, BlendMode.srcIn) + : null, image: cIMage, )), ); }, imageUrl: imageUrl); + + } } diff --git a/lib/src/logic/provider/order_provider.dart b/lib/src/logic/provider/order_provider.dart index 4516bf4..b2c1808 100644 --- a/lib/src/logic/provider/order_provider.dart +++ b/lib/src/logic/provider/order_provider.dart @@ -78,28 +78,34 @@ class OrderProvider extends ChangeNotifier { String productId, ) async { context.showLoader(show: true); + notifyListeners(); try { var result = await _orderRepo.productReview(data, productId); return result.fold( - (error) - { + (error) { context.showLoader(show: false); + Fluttertoast.showToast( + msg: error.message, + toastLength: Toast.LENGTH_SHORT, + gravity: ToastGravity.BOTTOM, + backgroundColor: Colors.red, + textColor: Colors.white, + fontSize: 14.0, + ); return false; }, - (response) - { + (response) { context.showLoader(show: false); return true; }, ); - } catch (e) - { + } catch (e) { context.showLoader(show: false); Fluttertoast.showToast( - msg: "Something went wrong", + msg: "Something went wrong ", toastLength: Toast.LENGTH_SHORT, gravity: ToastGravity.BOTTOM, backgroundColor: Colors.red, diff --git a/lib/src/ui/bestdeal/bestdeal_screen.dart b/lib/src/ui/bestdeal/bestdeal_screen.dart index 1cbe92c..2245a19 100644 --- a/lib/src/ui/bestdeal/bestdeal_screen.dart +++ b/lib/src/ui/bestdeal/bestdeal_screen.dart @@ -133,8 +133,7 @@ class _BestDealScreenState extends State { } Widget floatingAction() { - return Consumer(builder: (context, provider, child) - { + return Consumer(builder: (context, provider, child) { if (provider.countList.isEmpty) { return Center(); } else { @@ -354,6 +353,7 @@ class _BestDealScreenState extends State { .productImages?.first.url ?? "", backGroundColor: Colors.transparent, + radius: 10, ), ), Positioned( @@ -361,7 +361,7 @@ class _BestDealScreenState extends State { bottom: 0, child: Container( padding: EdgeInsets.symmetric( - horizontal: 6, vertical: 2), + horizontal: 10, vertical: 10), decoration: BoxDecoration( color: Colors.red, borderRadius: BorderRadius.circular(5), @@ -370,7 +370,7 @@ class _BestDealScreenState extends State { child: Text( "${calculateDiscountPercentage(double.parse(bestdealproduct.basePrice), double.parse(bestdealproduct.discountPrice))}% OFF", style: TextStyle( - color: Colors.white, fontSize: 12)), + color: Colors.white, fontSize: 15)), ), ), ) @@ -403,7 +403,7 @@ class _BestDealScreenState extends State { Spacer(), Row( children: [ - Row( + Column( children: [ Text( "₹${bestdealproduct.discountPrice ?? ""} ", @@ -411,7 +411,7 @@ class _BestDealScreenState extends State { maxLines: 1, overflow: TextOverflow.ellipsis, style: - context.customSemiBold(Colors.black, 12), + context.customSemiBold(Colors.black, 15), ), Text( "₹${bestdealproduct.basePrice ?? ""}", @@ -421,7 +421,7 @@ class _BestDealScreenState extends State { style: context .customMedium( Colors.grey.withOpacity(0.8), - 12, + 15, ) .copyWith( decoration: TextDecoration.lineThrough, diff --git a/lib/src/ui/cart/cartview_screen.dart b/lib/src/ui/cart/cartview_screen.dart index 024ff28..6df9e56 100644 --- a/lib/src/ui/cart/cartview_screen.dart +++ b/lib/src/ui/cart/cartview_screen.dart @@ -156,20 +156,21 @@ class _MycartState extends State { alignment: Alignment.center, children: [ AppNetworkImage( - height: MediaQuery.of(context).size.height * - 0.08, - width: cardWidth * 0.7, - imageUrl: bestdealproduct - .productImages?.first?.url ?? - "", - backGroundColor: Colors.transparent, - ), + height: + MediaQuery.of(context).size.height * + 0.08, + width: cardWidth * 0.7, + imageUrl: bestdealproduct + .productImages?.first?.url ?? + "", + backGroundColor: Colors.transparent, + radius: 10), Positioned( right: 1, bottom: 0, child: Container( padding: EdgeInsets.symmetric( - horizontal: 6, vertical: 2), + horizontal: 10, vertical: 10), decoration: BoxDecoration( color: Colors.red, borderRadius: BorderRadius.circular(5), @@ -179,7 +180,7 @@ class _MycartState extends State { "${calculateDiscountPercentage(double.parse(bestdealproduct!.basePrice), double.parse(bestdealproduct!.discountPrice))}% OFF", style: TextStyle( color: Colors.white, - fontSize: 12)), + fontSize: 15)), ), ), ) @@ -217,7 +218,7 @@ class _MycartState extends State { const Spacer(), Row( children: [ - Row( + Column( children: [ Text( "₹${bestdealproduct.discountPrice ?? ""} ", @@ -225,7 +226,7 @@ class _MycartState extends State { maxLines: 1, overflow: TextOverflow.ellipsis, style: context.customSemiBold( - Colors.black, 12), + Colors.black, 15), ), Text( "₹${bestdealproduct.basePrice ?? ""}", @@ -234,7 +235,7 @@ class _MycartState extends State { style: context .customMedium( Colors.grey.withOpacity(0.8), - 12, + 15, ) .copyWith( decoration: @@ -760,8 +761,7 @@ class _MycartState extends State { color: Colors.white, ), ); - } else if (provider.allitem == null) - { + } else if (provider.allitem == null) { return Center(child: Text('🛒 Your Front Shop Cart is empty')); } else if (provider.allitem.items == null || provider.allitem.items!.isEmpty) { @@ -791,8 +791,7 @@ class _MycartState extends State { size: 15, ), onTap: () { - if (provider.couponDataModel.data!.isNotEmpty) - { + if (provider.couponDataModel.data!.isNotEmpty) { context.push(MyRoutes.COUPONSSCREEN, extra: provider.allitem.id); } else { @@ -813,7 +812,7 @@ class _MycartState extends State { SummaryRow( label: 'Item Total Price', value: '₹${provider.totalPrice}'), SummaryRow(label: 'Discount Price', value: "${provider.discount}"), - SummaryRow(label: 'Delivery Free', value: 'Free', isGreen: true), + // SummaryRow(label: 'Delivery Free', value: 'Free', isGreen: true), Divider( thickness: 0.2, ), diff --git a/lib/src/ui/favourite/favourite_screen.dart b/lib/src/ui/favourite/favourite_screen.dart index f013ad9..c64737e 100644 --- a/lib/src/ui/favourite/favourite_screen.dart +++ b/lib/src/ui/favourite/favourite_screen.dart @@ -92,6 +92,7 @@ class _FavouriteScreenState extends State .productDatumlastImageurl ?? "https://5.imimg.com/data5/SELLER/Default/2024/2/385126988/OL/DA/VW/8627346/1l-fortune-sunflower-oil.jpg", backGroundColor: Colors.white, + ), ), ], @@ -215,6 +216,7 @@ class _FavouriteScreenState extends State backGroundColor: APPCOLOR.bgGrey, height: 20, width: 20, + radius: 10, ), ), ), diff --git a/lib/src/ui/fruitvegidetail/fruit_veggie_detail.dart b/lib/src/ui/fruitvegidetail/fruit_veggie_detail.dart index ccc0cd6..d6c47e7 100644 --- a/lib/src/ui/fruitvegidetail/fruit_veggie_detail.dart +++ b/lib/src/ui/fruitvegidetail/fruit_veggie_detail.dart @@ -1,3 +1,4 @@ +import 'package:cached_network_image/cached_network_image.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; @@ -224,13 +225,14 @@ class _FruitVeggieDetailState extends State { .productImages!.first.url ?? "https://5.imimg.com/data5/SELLER/Default/2024/2/385126988/OL/DA/VW/8627346/1l-fortune-sunflower-oil.jpg", backGroundColor: Colors.transparent, + radius: 10, ), Positioned( right: 1, bottom: 0, child: Container( padding: EdgeInsets.symmetric( - horizontal: 6, vertical: 2), + horizontal: 10, vertical: 10), decoration: BoxDecoration( color: Colors.red, borderRadius: @@ -241,7 +243,7 @@ class _FruitVeggieDetailState extends State { "${calculateDiscountPercentage(double.parse(product.basePrice), double.parse(product!.discountPrice))}% OFF", style: TextStyle( color: Colors.white, - fontSize: 12)), + fontSize: 15)), ), ), ) @@ -347,7 +349,7 @@ class _FruitVeggieDetailState extends State { maxLines: 1, overflow: TextOverflow.ellipsis, style: context.customSemiBold( - Colors.black, 16), + Colors.black, 15), ), const SizedBox(width: 5), Text( @@ -358,7 +360,7 @@ class _FruitVeggieDetailState extends State { style: context .customMedium( Colors.grey.withOpacity(0.8), - 16, + 15, ) .copyWith( decoration: @@ -529,65 +531,198 @@ class _FruitVeggieDetailState extends State { if (category.name == "ALL") ...{ if (provider.categoriesss.isNotEmpty) PopupMenuButton( - onSelected: (ProductCategoryModel value) { - activeIndexProvider.setActiveIndex(0); + onSelected: (ProductCategoryModel value) { + activeIndexProvider.setActiveIndex(0); - if (value.id == "all") { - provider.iscroll = true; - provider.products.clear(); - provider.isLoadingg = false; - provider.hasMore = true; - provider.page = 1; - provider.gettAllProduct( - context, "", true, ''); - provider.getAllcategory(context); - } else { - provider.categoryList.clear(); - provider.getSubcategory( - context, value.id); - } + if (value.id == "all") { + provider.iscroll = true; + provider.products.clear(); + provider.isLoadingg = false; + provider.hasMore = true; + provider.page = 1; + provider.gettAllProduct( + context, "", true, ''); + provider.getAllcategory(context); + } else { + provider.categoryList.clear(); + provider.getSubcategory( + context, value.id); + } + + provider.setSelectedCategory(value); + }, + itemBuilder: (BuildContext context) => + provider.categoriesss + .map( + (category) => PopupMenuItem( + value: category, + child: Text( + category.name ?? "Unknown"), + ), + ) + .toList(), + child: Center( + child: CachedNetworkImage( + + /// height: height, + ///width: width, + errorWidget: (context, url, error) { + return Container( + height: 50, + width: 50, + decoration: BoxDecoration( + color: APPCOLOR.bgGrey, + borderRadius: + BorderRadius.circular(10), + border: Border.all( + color: Colors.transparent, + width: 1, + )), + child: Center( + child: Image.asset( + APPASSETS.placeHolder, + height: 50 * 0.4, + color: APPCOLOR.bgGrey, + )), + ); + }, + placeholder: (context, url) { + return Container( + height: 50, + width: 50, + decoration: BoxDecoration( + color: APPCOLOR.bgGrey, + borderRadius: + BorderRadius.circular(10), + border: Border.all( + color: APPCOLOR.bgGrey, + width: 1, + )), + child: const Center( + child: + CupertinoActivityIndicator(), + ), + ); + }, + imageBuilder: (context, cIMage) { + return Container( + width: 60, + height: 70, + decoration: BoxDecoration( + color: APPCOLOR.bgGrey, + borderRadius: + BorderRadius.only( + topLeft: + Radius.circular(5!), + topRight: + Radius.circular(5!), + ), + border: Border.all( + color: APPCOLOR.bgGrey, + width: 1), + image: DecorationImage( + fit: BoxFit.fill, + image: cIMage, + )), + ); + }, + imageUrl: provider + .selectedCategory?.image ?? + 'https://i.pinimg.com/originals/a5/f3/5f/a5f35fb23e942809da3df91b23718e8d.png'), + ) + + // Container( + // child: AppNetworkImage( + // height: 50, + // width: 60, + // imageUrl: provider + // .selectedCategory?.image ?? + // 'https://i.pinimg.com/originals/a5/f3/5f/a5f35fb23e942809da3df91b23718e8d.png', + // backGroundColor: APPCOLOR.bgGrey, + // radius: 10, + // ), + // ), + // ), - provider.setSelectedCategory(value); - }, - itemBuilder: (BuildContext context) => - provider.categoriesss - .map( - (category) => PopupMenuItem( - value: category, - child: Text( - category.name ?? "Unknown"), - ), - ) - .toList(), - child: Center( - child: Container( - child: AppNetworkImage( - height: 50, - width: 60, - imageUrl: provider - .selectedCategory?.image ?? - 'https://i.pinimg.com/originals/a5/f3/5f/a5f35fb23e942809da3df91b23718e8d.png', - backGroundColor: APPCOLOR.bgGrey, - radius: 10, - ), ), - ), - ), } else ...{ Column( children: [ - Center( - child: Container( - child: AppNetworkImage( - height: 50, - width: 50, - imageUrl: category.image ?? - 'https://i.pinimg.com/originals/a5/f3/5f/a5f35fb23e942809da3df91b23718e8d.png', - backGroundColor: APPCOLOR.bgGrey, - radius: 10, - ), - ), - ), + // Center( + // child: Container( + // child: AppNetworkImage( + // height: 50, + // width: 50, + // imageUrl: category.image ?? + // 'https://i.pinimg.com/originals/a5/f3/5f/a5f35fb23e942809da3df91b23718e8d.png', + // backGroundColor: APPCOLOR.bgGrey, + // radius: 10, + // ), + // ), + // ), + + CachedNetworkImage( + + /// height: height, + ///width: width, + errorWidget: (context, url, error) { + return Container( + // height: 50, + // width: 50, + decoration: BoxDecoration( + color: APPCOLOR.bgGrey, + borderRadius: + BorderRadius.circular(10), + border: Border.all( + color: Colors.transparent, + width: 1, + )), + child: Center( + child: Image.asset( + APPASSETS.placeHolder, + height: 50 * 0.4, + color: APPCOLOR.bgGrey, + )), + ); + }, + placeholder: (context, url) { + return Container( + height: 50, + width: 50, + decoration: BoxDecoration( + color: APPCOLOR.bgGrey, + borderRadius: + BorderRadius.circular(10), + border: Border.all( + color: APPCOLOR.bgGrey, + width: 1, + )), + child: const Center( + child: CupertinoActivityIndicator(), + ), + ); + }, + imageBuilder: (context, cIMage) { + return Container( + width: 60, + height: 70, + decoration: BoxDecoration( + color: APPCOLOR.bgGrey, + borderRadius: BorderRadius.only( + topLeft: Radius.circular(5!), + topRight: Radius.circular(5!), + ), + border: Border.all( + color: APPCOLOR.bgGrey, + width: 1), + image: DecorationImage( + fit: BoxFit.fill, + image: cIMage, + )), + ); + }, + imageUrl: category.image), + SizedBox( height: 5, ), diff --git a/lib/src/ui/home/home_screen.dart b/lib/src/ui/home/home_screen.dart index cc29acb..6772c15 100644 --- a/lib/src/ui/home/home_screen.dart +++ b/lib/src/ui/home/home_screen.dart @@ -522,6 +522,7 @@ class _HomeScreenState extends State { ?.first ?.url ?? "", + radius: 10, backGroundColor: Colors.transparent, ), Positioned( @@ -529,7 +530,7 @@ class _HomeScreenState extends State { bottom: 0, child: Container( padding: EdgeInsets.symmetric( - horizontal: 6, vertical: 2), + horizontal: 10, vertical: 10), decoration: BoxDecoration( color: Colors.red, borderRadius: @@ -540,7 +541,9 @@ class _HomeScreenState extends State { "${calculateDiscountPercentage(double.parse(bestdealproduct.basePrice), double.parse(bestdealproduct.discountPrice))}% OFF", style: TextStyle( color: Colors.white, - fontSize: 12)), + fontWeight: + FontWeight.bold, + fontSize: 18)), ), ), ) @@ -579,7 +582,7 @@ class _HomeScreenState extends State { const Spacer(), Row( children: [ - Row( + Column( children: [ Text( "₹${bestdealproduct.discountPrice ?? ""} ", @@ -587,7 +590,7 @@ class _HomeScreenState extends State { maxLines: 1, overflow: TextOverflow.ellipsis, style: context.customSemiBold( - Colors.black, 11), + Colors.black, 15), ), Text( "₹${bestdealproduct.basePrice ?? ""}", @@ -598,7 +601,7 @@ class _HomeScreenState extends State { .customMedium( Colors.grey .withOpacity(0.8), - 12) + 15) .copyWith( decoration: TextDecoration .lineThrough), diff --git a/lib/src/ui/myOrder/OrderDetailsScreen.dart b/lib/src/ui/myOrder/OrderDetailsScreen.dart index aadee57..2404e6e 100644 --- a/lib/src/ui/myOrder/OrderDetailsScreen.dart +++ b/lib/src/ui/myOrder/OrderDetailsScreen.dart @@ -285,34 +285,34 @@ class _OrderDetailsScreenState extends State { ], ), ), - if (orderitem.orderItemStatus == "DELIVERED") - RichText( - text: TextSpan( - text: " ", - style: context.buttonTestStyle.copyWith( - color: context.appColor.blackColor, - ), - children: [ - TextSpan( - text: "Give Feedback", - style: context.buttonTestStyle.copyWith( - color: Colors.blue, - decoration: TextDecoration.underline, - ), - recognizer: TapGestureRecognizer()..onTap = () { - Navigator.push( - context, - MaterialPageRoute( - builder: (context) => - RatingScreen(orderId: orderitem.productId), - ), - ); - }, + RichText( + text: TextSpan( + text: " ", + style: context.buttonTestStyle.copyWith( + color: context.appColor.blackColor, ), - ], + children: [ + TextSpan( + text: "Give Feedback", + style: context.buttonTestStyle.copyWith( + color: Colors.blue, + decoration: TextDecoration.underline, + ), + recognizer: TapGestureRecognizer() + ..onTap = () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => RatingScreen( + orderId: orderitem.productId), + ), + ); + }, + ), + ], + ), ), - ), ], ), ), diff --git a/lib/src/ui/product_review.dart b/lib/src/ui/product_review.dart index bcce1a2..d9c5789 100644 --- a/lib/src/ui/product_review.dart +++ b/lib/src/ui/product_review.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_rating_bar/flutter_rating_bar.dart'; +import 'package:fluttertoast/fluttertoast.dart'; import 'package:grocery_app/src/logic/provider/order_provider.dart'; import 'package:grocery_app/utils/constants/color_constant.dart'; import 'package:grocery_app/utils/extensions/uicontext.dart'; @@ -96,23 +97,53 @@ class _RatingScreenState extends State { child: Center( child: InkWell( onTap: () async { - final ratingData = { - "rating": _rating, - "title": _titleController.text, - "description": _descriptionController.text, - "imageUrls": - _selectedImages.map((file) => file.path).toList(), - }; - var response = await provider.productReview( - context, ratingData, widget.orderId); - if (response) { - Navigator.pop(context); - } else { - ScaffoldMessenger.of(context).showSnackBar( - SnackBar( - content: Text("failed to Give feedback"), - ), + if (_rating == 0.0) { + Fluttertoast.showToast( + msg: "Please Give a rating atleast 1 star", + toastLength: Toast.LENGTH_SHORT, + gravity: ToastGravity.BOTTOM, + backgroundColor: Colors.red, + textColor: Colors.white, + fontSize: 14.0, ); + } else if (_titleController.text.isEmpty) { + Fluttertoast.showToast( + msg: "Please review title", + toastLength: Toast.LENGTH_SHORT, + gravity: ToastGravity.BOTTOM, + backgroundColor: Colors.red, + textColor: Colors.white, + fontSize: 14.0, + ); + } else if (_descriptionController.text.isEmpty) { + Fluttertoast.showToast( + msg: "Please review description", + toastLength: Toast.LENGTH_SHORT, + gravity: ToastGravity.BOTTOM, + backgroundColor: Colors.red, + textColor: Colors.white, + fontSize: 14.0, + ); + } else { + final ratingData = { + "rating": _rating, + "title": _titleController.text, + "description": _descriptionController.text, + "imageUrls": _selectedImages + .map((file) => file.path) + .toList(), + }; + var response = await provider.productReview( + context, ratingData, widget.orderId); + if (response) { + Navigator.pop(context); + } else { + // ScaffoldMessenger.of(context).showSnackBar( + // SnackBar( + // content: Text("failed to Give feedback"), + // ), + // ); + } } // if (_formKey.currentState?.validate() ?? false) { diff --git a/lib/src/ui/productdetails/product_details.dart b/lib/src/ui/productdetails/product_details.dart index fdce20c..2bbdc2e 100644 --- a/lib/src/ui/productdetails/product_details.dart +++ b/lib/src/ui/productdetails/product_details.dart @@ -152,6 +152,7 @@ class _ProductDetailsState extends State { width: 2000, imageUrl: productImage.url, backGroundColor: Colors.transparent, + radius: 10, ); // Image.network(productImage.url ?? @@ -800,135 +801,136 @@ class _ProductDetailsState extends State { ], ), ) - : Padding( - padding: const EdgeInsets.symmetric(horizontal: 16.0), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text("Reviews & Ratings", - style: TextStyle( - fontSize: 20, fontWeight: FontWeight.bold)), - SizedBox(height: 10), - Row( - children: [ - Text("4.2", - style: TextStyle( - fontSize: 30, fontWeight: FontWeight.bold)), - SizedBox( - width: 10, - ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - RatingStars( - value: value, - onValueChanged: (v) { - // - }, - starBuilder: (index, color) => Icon( - Icons.star, - color: color, - ), - starCount: 5, - starSize: 20, - valueLabelColor: const Color(0xff9b9b9b), - valueLabelTextStyle: const TextStyle( - color: Colors.white, - fontWeight: FontWeight.w400, - fontStyle: FontStyle.normal, - fontSize: 12.0), - valueLabelRadius: 10, - maxValue: 5, - starSpacing: 2, - maxValueVisibility: false, - valueLabelVisibility: false, - animationDuration: Duration(milliseconds: 1000), - valueLabelPadding: const EdgeInsets.symmetric( - vertical: 1, horizontal: 8), - valueLabelMargin: const EdgeInsets.only(right: 8), - starOffColor: const Color(0xffe7e8ea), - starColor: Colors.green, - ), - Text( - "April 10, 2023", - style: TextStyle(color: Colors.grey), - ), - ], - ), - ], - ), - SizedBox(height: 10), - Row( - crossAxisAlignment: - CrossAxisAlignment.start, // Align items at the top - children: [ - CircleAvatar( - backgroundImage: - NetworkImage('https://via.placeholder.com/50'), - ), - SizedBox(width: 10), + : SizedBox.shrink(); + // Padding( + // padding: const EdgeInsets.symmetric(horizontal: 16.0), + // child: Column( + // crossAxisAlignment: CrossAxisAlignment.start, + // children: [ + // Text("Reviews & Ratings", + // style: TextStyle( + // fontSize: 20, fontWeight: FontWeight.bold)), + // SizedBox(height: 10), + // Row( + // children: [ + // Text("4.2", + // style: TextStyle( + // fontSize: 30, fontWeight: FontWeight.bold)), + // SizedBox( + // width: 10, + // ), + // Column( + // crossAxisAlignment: CrossAxisAlignment.start, + // children: [ + // RatingStars( + // value: value, + // onValueChanged: (v) { + // // + // }, + // starBuilder: (index, color) => Icon( + // Icons.star, + // color: color, + // ), + // starCount: 5, + // starSize: 20, + // valueLabelColor: const Color(0xff9b9b9b), + // valueLabelTextStyle: const TextStyle( + // color: Colors.white, + // fontWeight: FontWeight.w400, + // fontStyle: FontStyle.normal, + // fontSize: 12.0), + // valueLabelRadius: 10, + // maxValue: 5, + // starSpacing: 2, + // maxValueVisibility: false, + // valueLabelVisibility: false, + // animationDuration: Duration(milliseconds: 1000), + // valueLabelPadding: const EdgeInsets.symmetric( + // vertical: 1, horizontal: 8), + // valueLabelMargin: const EdgeInsets.only(right: 8), + // starOffColor: const Color(0xffe7e8ea), + // starColor: Colors.green, + // ), + // Text( + // "April 10, 2023", + // style: TextStyle(color: Colors.grey), + // ), + // ], + // ), + // ], + // ), + // SizedBox(height: 10), + // Row( + // crossAxisAlignment: + // CrossAxisAlignment.start, // Align items at the top + // children: [ + // CircleAvatar( + // backgroundImage: + // NetworkImage('https://via.placeholder.com/50'), + // ), + // SizedBox(width: 10), - // Column for Text and RatingStars - Expanded( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment - .spaceBetween, // Proper spacing - children: [ - Text( - "Johnson Smith", - style: - TextStyle(fontWeight: FontWeight.bold), - ), - RatingStars( - value: value, - starBuilder: (index, color) => Icon( - Icons.star, - color: color, - ), - starCount: 5, - starSize: 20, - maxValue: 5, - starSpacing: 2, - maxValueVisibility: false, - valueLabelVisibility: false, - animationDuration: - Duration(milliseconds: 1000), - valueLabelPadding: - const EdgeInsets.symmetric( - vertical: 1, horizontal: 8), - valueLabelMargin: - const EdgeInsets.only(right: 8), - starOffColor: const Color(0xffe7e8ea), - starColor: Colors.green, - ), - ], - ), - SizedBox(height: 4), - Text( - "April 10, 2023", - style: TextStyle(color: Colors.grey), - ), - ], - ), - ), - ], - ), - SizedBox(height: 10), - ReadMoreText( - 'Flutter is Google’s mobile UI open source framework to build high-quality native (super fast) interfaces for iOS and Android apps with the unified codebase.', - trimMode: TrimMode.Line, - trimLines: 2, - colorClickableText: APPCOLOR.appGreen, - trimCollapsedText: 'Read More', - trimExpandedText: 'Show less', - style: context.customMedium(APPCOLOR.balck1A1A1A, 14), - ), - ], - ), - ); + // // Column for Text and RatingStars + // Expanded( + // child: Column( + // crossAxisAlignment: CrossAxisAlignment.start, + // children: [ + // Row( + // mainAxisAlignment: MainAxisAlignment + // .spaceBetween, // Proper spacing + // children: [ + // Text( + // "", + // style: + // TextStyle(fontWeight: FontWeight.bold), + // ), + // RatingStars( + // value: value, + // starBuilder: (index, color) => Icon( + // Icons.star, + // color: color, + // ), + // starCount: 5, + // starSize: 20, + // maxValue: 5, + // starSpacing: 2, + // maxValueVisibility: false, + // valueLabelVisibility: false, + // animationDuration: + // Duration(milliseconds: 1000), + // valueLabelPadding: + // const EdgeInsets.symmetric( + // vertical: 1, horizontal: 8), + // valueLabelMargin: + // const EdgeInsets.only(right: 8), + // starOffColor: const Color(0xffe7e8ea), + // starColor: Colors.green, + // ), + // ], + // ), + // SizedBox(height: 4), + // Text( + // "", + // style: TextStyle(color: Colors.grey), + // ), + // ], + // ), + // ), + // ], + // ), + // SizedBox(height: 10), + // ReadMoreText( + // '', + // trimMode: TrimMode.Line, + // trimLines: 2, + // colorClickableText: APPCOLOR.appGreen, + // trimCollapsedText: 'Read More', + // trimExpandedText: 'Show less', + // style: context.customMedium(APPCOLOR.balck1A1A1A, 14), + // ), + // ], + // ), + // ); } }); } @@ -1033,7 +1035,27 @@ class _ProductDetailsState extends State { .productImages?.first?.url ?? "", backGroundColor: Colors.transparent, + radius: 10, ), + Positioned( + right: 1, + bottom: 0, + child: Container( + padding: EdgeInsets.symmetric( + horizontal: 10, vertical: 10), + decoration: BoxDecoration( + color: Colors.red, + borderRadius: BorderRadius.circular(5), + ), + child: Center( + child: Text( + "${calculateDiscountPercentage(double.parse(bestdealproduct.basePrice), double.parse(bestdealproduct!.discountPrice))}% OFF", + style: TextStyle( + color: Colors.white, + fontSize: 15)), + ), + ), + ) ], ), ), @@ -1068,7 +1090,7 @@ class _ProductDetailsState extends State { const Spacer(), Row( children: [ - Row( + Column( children: [ Text( "₹${bestdealproduct.discountPrice ?? ""} ", @@ -1076,7 +1098,7 @@ class _ProductDetailsState extends State { maxLines: 1, overflow: TextOverflow.ellipsis, style: context.customSemiBold( - Colors.black, 12), + Colors.black, 15), ), Text( "₹${bestdealproduct.basePrice ?? ""}", @@ -1086,7 +1108,7 @@ class _ProductDetailsState extends State { style: context .customMedium( Colors.grey.withOpacity(0.8), - 12, + 15, ) .copyWith( decoration: diff --git a/lib/src/ui/profilepage/profile_screen.dart b/lib/src/ui/profilepage/profile_screen.dart index a61e019..e3d81af 100644 --- a/lib/src/ui/profilepage/profile_screen.dart +++ b/lib/src/ui/profilepage/profile_screen.dart @@ -330,7 +330,6 @@ class _ProfileScreenState extends State { ); } - void _showBottomSheet(BuildContext context) { showModalBottomSheet( context: context,