Afsan workpace#20
Merged
Merged
Conversation
…gle Fonts while streamlining project-wide theme dependencies.
…ed imports in adoption center screen
…pdate imports in pet profile screen
Comment out the hardcoded org.gradle.java.home entry in android/gradle.properties so the build no longer forces the Android Studio JBR path. This lets the system or configured toolchain determine the JDK (avoiding issues with unsupported JDK versions) while keeping other Gradle settings unchanged.
syed-reza98
marked this pull request as ready for review
May 4, 2026 16:48
There was a problem hiding this comment.
Pull request overview
This PR updates PetSphere’s UI/theming (Market, Discovery, Adoption Center, branding) and adds matchmaking/discovery behavior to support a 7‑day discovery cooldown after a breeding request is rejected.
Changes:
- Add
rejected_attomatch_requestsand implement a 7‑day rejection cooldown in discovery/matching logic. - Refactor Discovery to support a per-tab “browsing pet” and introduce new filter modes (Same Breed / Nearby).
- Redesign Marketplace/ProductCard UI and refresh AppTheme tokens; remove the legacy Material3 theme file.
Reviewed changes
Copilot reviewed 17 out of 18 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| supabase/migrations/20260503160000_match_requests_rejected_at.sql | Adds rejected_at column and backfills for existing rejected requests. |
| lib/widgets/common/petfolio_widgets.dart | Minor formatting/whitespace cleanup. |
| lib/widgets/brand_logo.dart | Updates brand text rendering and variants; adds theme/font dependencies. |
| lib/views/pet_profile_screen.dart | Formatting + improved error SnackBar when sending match requests fails. |
| lib/views/marketplace_screen.dart | Major Marketplace UI refactor to slivers, new header/search/cart components. |
| lib/views/home_screen.dart | Minor formatting changes. |
| lib/views/discovery_screen.dart | Discovery UI redesign, new filter modes, and integration with browsing-pet provider. |
| lib/views/components/product_card.dart | ProductCard redesigned; simplified styling and typography updates. |
| lib/views/adoption_center_screen.dart | Replaces grid with swipe-card adoption experience (mock data). |
| lib/theme/app_theme.dart | Updates brand palette and Material 3 theme configuration/shadows. |
| lib/theme/app_theme_v2_material3.dart | Deleted legacy theme implementation. |
| lib/repositories/notification_repository.dart | Fixes notification insert payload to use actual variables. |
| lib/repositories/match_repository.dart | Adds cooldown logic, new discovery query exclusions, and returns match_request id on like. |
| lib/models/pet_health_extended_models.dart | Uses alert color for overdue medication status. |
| lib/controllers/match_controller.dart | Adds discovery browsing pet provider + handles new match repository API. |
| android/gradle.properties | Comments out machine-specific org.gradle.java.home. |
| .gitignore | Adds ignore for /android/gradle.properties and removes duplicate entries. |
| .cursor/settings.json | Clears Cursor plugin settings. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+419
to
+423
| if (filterType != null && | ||
| filterType != 'nearby' && | ||
| filterType != pet.animalType) { | ||
| filterType = null; | ||
| } |
Comment on lines
+91
to
+97
| Container( | ||
| padding: const EdgeInsets.all(12), | ||
| decoration: BoxDecoration( | ||
| color: cs.primary, | ||
| borderRadius: BorderRadius.circular(12), | ||
| ), | ||
| child: const Icon(Icons.tune_rounded, color: Colors.white, size: 24), |
Comment on lines
+57
to
+66
| Center( | ||
| child: product.images.isNotEmpty | ||
| ? CachedNetworkImage( | ||
| imageUrl: product.images[0], | ||
| fit: BoxFit.cover, | ||
| width: double.infinity, | ||
| height: double.infinity, | ||
| ) | ||
| : Icon(Icons.pets_rounded, color: colorScheme.primary.withAlpha(50), size: 40), | ||
| ), |
Comment on lines
+3
to
+4
| import '../theme/app_theme.dart'; | ||
| import 'package:google_fonts/google_fonts.dart'; |
Comment on lines
+254
to
+268
| IconButton( | ||
| icon: const Icon(Icons.shopping_bag_outlined), | ||
| onPressed: () => context.push('/cart'), | ||
| ), | ||
| if (count > 0) | ||
| Positioned( | ||
| right: 8, | ||
| top: 8, | ||
| child: Container( | ||
| padding: const EdgeInsets.all(4), | ||
| decoration: BoxDecoration(color: cs.primary, shape: BoxShape.circle), | ||
| child: Text( | ||
| '$count', | ||
| style: const TextStyle(color: Colors.white, fontSize: 8, fontWeight: FontWeight.bold), | ||
| ), |
Comment on lines
+212
to
+214
| if (index >= marketState.products.length) { | ||
| return const Center(child: CircularProgressIndicator()); | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.