Commit Graph

188 Commits

Author SHA1 Message Date
parsa aghaei
b690af9cc5 feat(wizard): connect recommendation algorithm with real products, calculate exact dosage, and allow instant cart add [TASK-102] 2026-07-26 14:33:34 +03:30
parsa aghaei
a8fb4ebd6f feat(seo): implement dynamic metadata, OpenGraph, and Product JSON-LD structured data [TASK-101] 2026-07-26 14:31:12 +03:30
parsa aghaei
377ebd7257 fix(store): preserve local wallet balance and petId order mapping during fetchProfile sync 2026-07-26 13:17:00 +03:30
parsa aghaei
38e86d755b fix(wallet, pet-profile): ensure wallet balance deduction and map petId in order history sync 2026-07-25 12:14:08 +03:30
parsa aghaei
6d6824c3ca fix(checkout, profile, address): fix Google autocomplete attributes, wallet balance in checkout, order history and pet profile sync 2026-07-25 12:08:15 +03:30
parsa aghaei
a6ae1cf30a fix(profile, checkout): redesign profile mobile layout tabs UX and fix wallet deduction API error 2026-07-25 11:54:11 +03:30
parsa aghaei
16ccd99010 fix(profile): prevent horizontal overflow and fix mobile layout in UserDashboard 2026-07-25 11:49:53 +03:30
parsa aghaei
68fbd7d183 fix(profile, image): fix wallet responsive layout on mobile and replace img tags with next/image 2026-07-25 11:47:19 +03:30
parsa aghaei
897867c633 fix: Resolve calculateDosage runtime TypeError in CheckoutPage 2026-07-25 11:42:00 +03:30
parsa aghaei
6638eaa10a feat: Fix responsive layout breakdowns in UserDashboard profile sections 2026-07-25 11:40:21 +03:30
parsa aghaei
20a1b225c8 feat: Mobile header redesign, shop breadcrumbs fix, checkout address/wallet/contrast improvements and forgot password flow 2026-07-25 11:39:01 +03:30
parsa aghaei
c125da25ab image tag updated for home page. 2026-07-22 18:43:22 +03:30
parsa aghaei
27ef5979aa fix(ui): remove overflow-x-auto from breadcrumbs to eliminate unwanted scrollbar pill
All checks were successful
Deploy Canina / deploy (push) Successful in 5m16s
2026-07-22 16:36:35 +03:30
parsa aghaei
51b661542a style: standardize breadcrumbs and integrated back button across all pages (Archive, Product, Blog, Blog detail, Wiki) 2026-07-22 16:10:14 +03:30
parsa aghaei
3683a768a8 fix(blog): integrate back button into top breadcrumb bar for a cleaner minimalist hero layout 2026-07-22 16:04:12 +03:30
parsa aghaei
85b542e8b4 fix(blog): add breadcrumb navigation, align header text and back button neatly 2026-07-22 16:02:57 +03:30
parsa aghaei
13a3b1f405 fix(blog): reorder form elements to ensure email input is always first before submit button 2026-07-22 16:00:24 +03:30
parsa aghaei
54ef14f006 fix(blog): stack mobile newsletter input and submit button inside container cleanly 2026-07-22 15:59:03 +03:30
parsa aghaei
1a1d828358 feat(blog): complete ultra-premium redesign of science newsletter card 2026-07-22 15:55:51 +03:30
parsa aghaei
cd52ac2b7d fix(blog): make newsletter input pill container expand to full width of description 2026-07-22 15:52:58 +03:30
parsa aghaei
6cd5e747de fix(blog): stack newsletter icon/title, description, and horizontal pill input vertically with clean space 2026-07-22 15:51:45 +03:30
parsa aghaei
5b07ddbf8f refactor(blog): rebuild science newsletter section with RTL text flow, Brand C logo badge, and integrated horizontal pill input 2026-07-22 15:48:18 +03:30
parsa aghaei
078f9ba1f2 fix(blog): fix newsletter card layout overflow and text clipping on medium screens 2026-07-22 15:46:30 +03:30
parsa aghaei
f367499a5c feat(ui): refine desktop sticky buy box, redesign blog newsletter CTA, enhance wiki product cards padding, add symptom search & active filters bar 2026-07-22 15:44:50 +03:30
parsa aghaei
c7b944f5c4 fix(css): remove global overflow-x-hidden from html/body to restore native position sticky 2026-07-22 15:33:14 +03:30
parsa aghaei
00a217ee02 fix(ui): unify ingredients section border container and fix sticky header overflow parent 2026-07-22 15:30:54 +03:30
parsa aghaei
e1da54f2f5 fix(product): set explicit grid-cols-1 and w-full for perfect mobile layout alignment 2026-07-22 15:27:35 +03:30
parsa aghaei
5005f0e68f fix(product): ensure 100% symmetrical grid width and centered element margins on mobile 2026-07-22 15:25:18 +03:30
parsa aghaei
12265c88e8 fix(product): ensure perfectly symmetrical left/right mobile container margins 2026-07-22 15:23:14 +03:30
parsa aghaei
0fa2b8c1d9 fix(ui): fix header sticky wrapper, increase footer bottom padding for buy bar, and balance mobile grid spacing 2026-07-22 15:21:30 +03:30
parsa aghaei
72a4073113 fix(wiki): wrap IngredientWiki in Suspense boundary for static prerendering 2026-07-22 15:16:51 +03:30
parsa aghaei
1c93aec1c9 fix(ui): refine mobile product details alignment, search overlay, remove full page loading, toast close button and dosage calculator layout 2026-07-22 15:16:00 +03:30
parsa aghaei
19c86c9955 fix(archive): add missing import for toPersian utility 2026-07-22 14:12:14 +03:30
parsa aghaei
913317809f fix(mobile-ui): comprehensive mobile responsiveness, header, store filters, wiki scroll and checkout overhaul 2026-07-22 14:11:45 +03:30
parsa aghaei
1340a2be87 refactor(backend): consolidate all prisma seeders into single master seed.ts entrypoint 2026-07-21 14:53:09 +03:30
parsa aghaei
0d805b0eb9 fix(cart): add missing toast import from sonner in CartDrawer
All checks were successful
Deploy Canina / deploy (push) Successful in 1m48s
2026-07-21 14:28:03 +03:30
parsa aghaei
b0c9e9e88c feat(cart): require authentication for Refill subscription and add explanatory subtext in CartDrawer
- Require guest users to log in via AuthModal when clicking the Refill subscription card
- Add clear descriptive label: 'ویژه اعضا - محاسبه هوشمند دوره مصرف و یادآوری پیامکی قبل از اتمام'
2026-07-21 14:27:21 +03:30
parsa aghaei
320ddad1e5 fix(profile): remove redundant top value proposition banner from PetProfile component 2026-07-21 14:21:49 +03:30
parsa aghaei
d560eb79a3 fix(header): restore getText and store hooks in Header component scope to fix ReferenceError 2026-07-21 14:20:38 +03:30
parsa aghaei
3e3372d01b fix(header): attach dropdown mega menu to sub-navbar button & provide static categories fallback
- Ensure fallback categories & symptoms are populated immediately in state so menuItems is never empty
- Attach mega menu popup panel directly to the sub-navbar button for 800px-1224px screen range
2026-07-21 14:19:17 +03:30
parsa aghaei
99ebfea8d0 fix(header): introduce sub-nav bar for 800px-1224px range and move main nav to center above 1224px
- Below 800px: Hamburger drawer menu is used
- Between 800px and 1224px: Clean horizontal sub-navbar appears below main header row (no hamburger icon)
- Above 1224px (xl): Main navigation items return inline inside main header container centered perfectly
2026-07-21 14:17:38 +03:30
parsa aghaei
587407c39a fix(header): update responsive breakpoints (2-row below 470px, 1-row above 470px, desktop nav at 1224px/xl)
- Show 2-row layout below 470px width, and automatically switch to single-row layout for viewports 470px and wider
- Shift desktop navigation menu items display breakpoint from 1024px (lg) to 1280px (xl / ~1224px) to prevent action button overflow on medium laptop screens
2026-07-21 14:13:58 +03:30
parsa aghaei
6618a81f33 fix(header-footer): re-structure mobile header into 2 rows and clean footer back-to-top button
- Place logo & brand title on row 1 and action buttons (search, login, cart) on row 2 for 100% width mobile clearance
- Remove duplicate inline back-to-top text link in footer and adjust floating button z-index & bottom offset
- Add whitespace-nowrap to footer links (درباره ما، تماس با ما، حریم خصوصی) to prevent line breaks
2026-07-21 14:10:12 +03:30
parsa aghaei
88b2fdbb14 fix(responsive): resolve header mobile overlap, stat box alignment, quality badge placement, and add back-to-top button
- Fix Header mobile logo/button overflow on 320px-375px screens by making logo text truncate gracefully & action buttons compact
- Make 3 hero stat boxes stay side-by-side in a 3-column grid with centered icons/text on mobile screens
- Adjust 'کیفیت / استانداردهای فوق‌دارویی' label position so it stays contained within the image boundaries without overflowing the screen
- Add interactive Back to Top button (both floating and footer button) for quick navigation
2026-07-21 14:06:37 +03:30
parsa aghaei
56515f24c6 style(responsive): enforce global overflow prevention and responsive layout integrity
- Add global overflow-x-hidden and max-w-[100vw] to prevent any unwanted horizontal scrollbars across all viewports
- Verify mobile drawer, grid cards, header, and calculator responsiveness from 320px to 1440px+
2026-07-21 14:01:03 +03:30
parsa aghaei
67444aa251 fix(calculator): implement dynamic weight-based dosage calculation for Welpenmilch & Welpenbrei
- Calculate dosage in grams per kg of puppy weight for Canina Welpenmilch (puppy milk powder) and Canina Welpenbrei (puppy porridge)
- Display exact water mixing ratio (e.g. 15g powder mixed with 45ml warm water) and calculate package duration reactively
2026-07-21 13:56:19 +03:30
parsa aghaei
fb23831640 fix(product): conditionally replace dosage calculator with topical usage notice for external care items
- Hide weight-based dosage calculator for topical/external care products (eye drops, paw balm, sprays, lotions)
- Show dedicated topical usage guide card explaining that dosage is independent of body weight
- Retain active dynamic weight calculator for all oral supplements (tablets, oils, gels, powders)
2026-07-21 13:52:59 +03:30
parsa aghaei
24ce3a44bf fix(calculator): enhance dosage calculator reactivity for logged-in and guest users
- Automatically prefill pet weight and age if user has a registered pet profile
- Provide dynamic weight-based dosage calculation fallback for all products when browsing as guest
- Update daily dose, duration, and package longevity reactively upon slider and age button interactions
2026-07-21 12:52:05 +03:30
parsa aghaei
57cab6cbc2 feat(advisor): add 3-card value proposition section above SmartAdvisor on HomePage
- Explain why registering a pet profile is essential (dosage safety, clinical symptom matching, and refill reminders)
- Upgrade visual presentation with premium cards, micro-animations, and clear benefits on HomePage and /profile
2026-07-21 12:45:36 +03:30
parsa aghaei
53d239b2f2 feat(profile): integrate SmartAdvisor & clear value proposition banner on empty pet profile page
- Display informative header banner explaining why registering a pet profile is crucial for accurate supplement dosage, symptom matching, and refill tracking
- Directly embed the 4-step SmartAdvisor on /profile when no pets have been registered yet
2026-07-21 12:43:35 +03:30