Updated the "View Cart" toast button to use black text on the white button within the toasts, ensuring legibility. Modified ProductCard.tsx to apply proper text color for the button in the toast.
X-Lovable-Edit-ID: edt-af20a6cd-1ed6-4d33-af46-933a3c14e310
Co-authored-by: CyberTechDroid <229118619+CyberTechDroid@users.noreply.github.com>
Updated the "Added to cart" toast to use yellow/orange brand color for better consistency, replacing the previous green styling in the product card toast.
X-Lovable-Edit-ID: edt-6a59cdb0-cb00-4364-9298-4c6a292d3d1e
Co-authored-by: CyberTechDroid <229118619+CyberTechDroid@users.noreply.github.com>
Styled the added-to-cart toast with bold green/brand background and white text, including a green visual emphasis and a persistent View Cart action button.
X-Lovable-Edit-ID: edt-940666bd-9011-493b-a9fb-b671b45a4e4e
Co-authored-by: CyberTechDroid <229118619+CyberTechDroid@users.noreply.github.com>
Added a visual cart add-to-item feedback (toast with product image) and updated CartDrawer to prioritize imageUrl from NocoDB, falling back to existing image.
X-Lovable-Edit-ID: edt-b27feb3c-dde0-4c33-b4e3-dd819dbf8807
Co-authored-by: CyberTechDroid <229118619+CyberTechDroid@users.noreply.github.com>
- Replaced direct product data import with useNocoProducts hook in FeaturedProducts and Products components.
- Updated logic to filter and display featured products based on badges.
- Ensured product data is reactive to changes by including it in useEffect dependencies in Products component.
- Enhanced webhookService to handle JSON payloads and added response validation.
- Updated CartDrawer to provide clearer success and error feedback on quote submissions.
- Ensured that saved contact details persist during checkout without being cleared on submission.
Kept checkout contact info in localStorage and fixed webhook flow:
- Do not clear saved contact data on quote submission.
- Replaced no-cors webhook call with proper JSON payload handling and added response logging/validation.
X-Lovable-Edit-ID: edt-a167a9bd-57bc-43eb-b8f3-7b87551b581e
Store and persist contact details in localStorage for checkout
- Initialize contactInfo from localStorage if present
- Save contactInfo to localStorage on every change
- Ensures last entered details persist across sessions during checkout
X-Lovable-Edit-ID: edt-371c1dde-5858-45f0-9962-8422467e1dc5
Updated src/lib/webhookService.ts to send webhook requests in no-cors mode with text/plain content, logging opaque success and avoiding response handling.
X-Lovable-Edit-ID: edt-bf640d1d-1036-4e97-818c-2ecab3f5380c
Added direct frontend webhook integration for quote requests:
- Implemented webhookService with payload validation, UUIDs, and timeout handling.
- Wired CartDrawer to send quote payload on submission via sendQuoteWebhook.
- Implemented success and error feedback, and cart state updates on submission.
X-Lovable-Edit-ID: edt-9797c523-1ba8-48c4-883f-8520aae38388
Updated ProductCard to improve touch targets and reliability on mobile:
- Enlarged icon button to 8x8 and added touch-manipulation marker
- Prevent default to avoid unintended navigation and stop propagation
- Reworked secondary “Add” button for better tap target with increased height
- Added consistent touch handling on both primary and secondary add actions
X-Lovable-Edit-ID: edt-6d0f6d7f-affd-4355-a4a7-268a1359bb59
Changed PWA metadata to reflect new brand:
- index.html: updated author to Q - PORTAL and apple mobile app title to Q - PORTAL
- vite.config.ts: updated manifest name to "Q - PORTAL | Industrial Supplies" and short_name to "Q - PORTAL"
X-Lovable-Edit-ID: edt-d4f54ef2-4af8-431f-af5f-4ab94c190d3c
Converted FeaturedProducts from grid to a looping carousel using the existing carousel components. Displayed 8 featured items with badge styling, added Add to Quote action, and preserved View All Products CTA. Removed ProductCard grid usage.
X-Lovable-Edit-ID: edt-3345101d-8a05-4d9c-8266-0674e521ac5f
Replaced the homepage hero image with the new banner asset (src/assets/hero-banner.png) and wired the index page to display it.
X-Lovable-Edit-ID: edt-337f8c71-9816-4061-9e60-956a715c166d
Removed the Why Choose Westscott section and replaced with a responsive grid of mining partner logos in the Trusted by Major Mining Operations area. Added new asset imports, prepared logos for display, and updated the Index page layout to show logos in a 2-4 column grid.
X-Lovable-Edit-ID: edt-21600240-961f-42bb-97a1-a245f1871241
Removed overlay text and buttons from the hero, keeping a simple, clean full-width image with updated container sizing and background color to match the header styling.
X-Lovable-Edit-ID: edt-8794c78f-f45d-4f0f-af5d-81ba28d31298
Converted category display to CategoryCards with visual icons and links to filtered /products, added FeaturedProducts teaser, WhyWestscott narrative, and integrated into story-first homepage. Updated both CategoryCards, FeaturedProducts, WhyWestscott, and index wiring to support new layout.
X-Lovable-Edit-ID: edt-ea78f170-7688-4b17-bbf0-26af34b2bbce
Updated Products page to use orientation-aware mobile detection, showing mobile filter and search controls on tablets in portrait, and adjusted layout breakpoints to rely on isMobile for rendering. Replaced md:hidden logic with useIsMobile in products view, added responsive header size, and aligned grid/sidebars for mobile-friendly experience.
X-Lovable-Edit-ID: edt-ad4e6369-f963-499e-b5fe-b26496effc9c
Implemented orientation-aware mobile detection and adjusted mobile bottom nav:
- Added useIsMobile hook with portrait+width logic and orientation/resize listeners.
- Updated MobileBottomNav to render only on mobile via hook and removed md:hidden behavior.
- Kept desktop layout for landscape/tablets while enabling portrait tablets to use mobile bottom navigation.
X-Lovable-Edit-ID: edt-c679e4a6-21e3-4b78-a806-0022cd9e911f
Adjusted MobileBottomNav text colors for better readability on dark background:
- Inactive text now white with 70% opacity
- Active text remains brand-yellow for contrast
X-Lovable-Edit-ID: edt-67f0c787-7888-4c7a-922f-13caffdd6ce3
Updated CartDrawer to be mobile-friendly: added router navigation, kept cart accessible with a close button, and added Home/Products quick actions inside the cart drawer for easier back navigation when open. Also wired open-cart event listener and ensured consistency with mobile bottom nav.
X-Lovable-Edit-ID: edt-b497871b-79ee-4bec-9d5a-3fa2aa8b2e3f
Set MobileBottomNav background to grey (bg-zinc-700) to match header and adjust text colors to stay visible on hover, ensuring active state remains highlighted.
X-Lovable-Edit-ID: edt-6718f3b9-6c06-4872-85a5-716faeba5487
Adjusted App layout to ensure footer renders on mobile, removed fixed pb on container, added bottom padding to main, and preserved footer at mobile with spacing. Updated App.tsx to display footer and integrate with mobile bottom navigation without white gaps.
X-Lovable-Edit-ID: edt-f1f94988-906f-423f-83d7-0fc243f31799
Updated mobile/cart UX by:
- Making cart sheet content have bottom padding on mobile so it doesn't cover the bottom nav
- Changing footer to match header color (grey) by using zinc-700 background and removing extra inner bg
- Simplifying footer container styling to align with new color scheme
X-Lovable-Edit-ID: edt-2a6c6c67-a805-417e-9872-5fbdbdb21da4