Commit Graph

74 Commits

Author SHA1 Message Date
parsa aghaei
42707c04cf feat: complete tickets & vet consultation, fix wallet balance overflow, b2b toggle, and transaction manual verification
All checks were successful
Deploy Canina / deploy (push) Successful in 1m51s
2026-08-16 18:01:43 +03:30
parsa aghaei
8d1b786a24 chore(brand): rename all Persian occurrences of کانینا to کنینا across the project
All checks were successful
Deploy Canina / deploy (push) Successful in 1m50s
2026-08-16 16:40:08 +03:30
parsa aghaei
cbd7e1a24d feat(auth): implement WebOTP SMS auto-fill, auto-submit, password setup in dashboard, and password visibility toggle 2026-08-16 16:37:59 +03:30
parsa aghaei
5c13dd2f29 fix(app): ensure api baseURL resolves properly during SSR build
All checks were successful
Deploy Canina / deploy (push) Successful in 2m50s
2026-08-16 13:06:50 +03:30
parsa aghaei
873376be26 fix(media): fix broken image URLs after deploy - add API domains to next.config and resolve relative /uploads/ paths with backend base URL 2026-08-15 18:43:56 +03:30
parsa aghaei
5ec99155c4 fix(admin,frontend): fix hydration mismatch, admin UI texts sync, and product image resolution
Some checks failed
Deploy Canina / deploy (push) Failing after 1s
2026-08-15 15:16:04 +03:30
parsa aghaei
74b3d24622 fix(api/auth): allow public GET on ui-texts & scientific-terms, fix refresh attempt loop, remove duplicate error toasts and prevent unwanted modal popups
Some checks failed
Deploy Canina / deploy (push) Failing after 28s
2026-08-08 18:11:17 +03:30
parsa aghaei
adbfa60343 fix(frontend/backend): suppress unauth toast on init, fix admin-login DTO validation and RSC directives
Some checks failed
Deploy Canina / deploy (push) Failing after 29s
2026-08-08 18:02:43 +03:30
9f11d8fb2d chore(workspace): eradicate all tsc errors and eslint warnings across frontend, admin, and backend
Some checks failed
Deploy Canina / deploy (push) Failing after 29s
2026-08-07 07:39:26 +03:30
4659a7b1de feat(storefront): implement Phase C API integration replacing static fallbacks
Some checks failed
Deploy Canina / deploy (push) Failing after 28s
2026-08-07 00:16:03 +03:30
74fcaa6a4e feat(application): implement Phase 3 strict DTOs, eradicate any types, and add Suspense boundaries
Some checks failed
Deploy Canina / deploy (push) Failing after 29s
2026-08-06 23:15:25 +03:30
57596f5aaf feat(application): implement Phase 2 SEO metadata, Next.js image optimization, and HTTP security headers
Some checks failed
Deploy Canina / deploy (push) Failing after 28s
2026-08-06 23:02:07 +03:30
parsa aghaei
aac0716046 feat: complete all section 26 backlog tasks including pet image upload [TASK-26.18]
Some checks are pending
Deploy Canina / deploy (push) Waiting to run
2026-08-05 15:45:11 +03:30
parsa aghaei
187aa7c962 feat: add excel export to reports and video view counter increment [TASK-26.20]
Some checks are pending
Deploy Canina / deploy (push) Waiting to run
2026-08-05 14:42:38 +03:30
parsa aghaei
7f3c04acf5 fix(auth): complete logout state cleanup and admin protected route token validation [TASK-26.8] [TASK-26.9] 2026-08-05 14:39:31 +03:30
parsa aghaei
d52d1e57f2 feat(auth/contact/sms): sync contact submissions in admin, refine SMS error logs, trigger Auth Modal on 401 [TASK-13.1, TASK-14.1, TASK-15.1] 2026-08-03 11:47:50 +03:30
parsa aghaei
443b08ed58 feat(shop): add product sorting options (newest, price asc/desc, name) with backend params integration [TASK-11.1] 2026-08-03 11:43:51 +03:30
parsa aghaei
6b566e9a51 fix(api): suppress toast notifications on handled 404 responses 2026-08-03 11:30:00 +03:30
parsa aghaei
7e072793eb fix(types): allow File or ChangeEvent in handleFileUpload and ensure safe localStorage in userStore 2026-08-03 10:16:57 +03:30
parsa aghaei
c1b2f416ed fix(lint&types): resolve all lint warnings, typecheck errors and effect state updates across frontend application and admin panel 2026-08-03 10:13:11 +03:30
parsa aghaei
426334e27f feat(checkout): add copy buttons for card info, province/city dropdowns, and wallet top-up button
Some checks failed
Deploy Canina / deploy (push) Has been cancelled
2026-08-01 11:37:04 +03:30
parsa aghaei
a3291cc468 feat(agency): implement Farsi error handling, trust seals page, and MeliPayamak SMS integration
Some checks failed
Deploy Canina / deploy (push) Has been cancelled
2026-07-29 16:40:42 +03:30
parsa aghaei
501addc909 fix: CI/CD pipeline, dynamic API URLs, Dockerfile fixes
All checks were successful
Deploy Canina / deploy (push) Successful in 5m39s
- Backend Dockerfile: add chown for node_modules (Prisma permissions fix)
- Frontend Dockerfile: add ARG/ENV for NEXT_PUBLIC_API_URL, VITE_API_URL
- nginx.conf: template with __PLACEHOLDERS__ for per-env substitution
- deploy.yml: SSH keepalive, sudo for VPN
- api.ts: dynamic API URL via env vars instead of hardcoded
- next.config.ts: rewrite only in development mode
- scripts: deploy.sh, compose.stage.yml, compose.prod.yml
2026-07-28 16:37:05 +03:30
parsa aghaei
027f169830 fix(api): update API base URL to use env vars and target api.canina.ir / stageapi.canina.ir
Some checks failed
Deploy Canina / deploy (push) Has been cancelled
2026-07-27 19:14:35 +03:30
parsa aghaei
dac41b14ee fix(ssr-navigator): resolve ReferenceError navigator is not defined during Next.js static prerendering in useNetworkStatus hook 2026-07-27 14:50:15 +03:30
parsa aghaei
52f0caccfc feat(videos): add Video module in NestJS, build Video CRUD in Admin Panel, sync dynamic video fetching on frontend, and update catalog links to /catalog 2026-07-27 11:54:16 +03:30
parsa aghaei
85d5a11a5e feat(refill): overhaul subscription model to Smart Course Reservation & 5% Next-Order Loyalty Voucher reward 2026-07-27 11:46:45 +03:30
parsa aghaei
b5650c4cbb feat(refill): map refill state in cartStore, clarify free loyalty 5% discount UX, and render Refill badges across full app and admin 2026-07-27 11:39:23 +03:30
parsa aghaei
a0145ffd9a fix(pets): persist supplement consumptions array in usePetStore and update target pet on checkout 2026-07-26 20:44:55 +03:30
parsa aghaei
377ec7fb34 fix(orders,wallet): implement full-stack wallet deduction in PostgreSQL and sync charity donation total in user profile 2026-07-26 20:40:01 +03:30
parsa aghaei
55f5a5570c fix(prisma,admin,auth): regenerate prisma client for isRefill, make charity round step configurable in admin, and fix root cause pet store reset 2026-07-26 20:32:15 +03:30
parsa aghaei
bdf8856883 fix(auth,checkout): add Axios 401/403 auto-logout response interceptor and fix charity round-up 10k exact math 2026-07-26 20:23:27 +03:30
parsa aghaei
72badb1a7b fix(auth,backend): synchronize auth state across stores, reset guest profile data, and resolve backend spec compilation 2026-07-26 20:18:35 +03:30
parsa aghaei
4979d4120c fix(checkout,orders,admin): resolve guest checkout address bug, persist refill and charity in DB, and fix admin media thumbnail cropping 2026-07-26 20:11:26 +03:30
parsa aghaei
989f77e106 fix(shop): map requiresRx in productService, enable backend query param filtering, and classify 11 prescription vs 24 OTC products 2026-07-26 20:03:45 +03:30
parsa aghaei
abf22cc18d fix: sync db schema via prisma db push, add suppressHydrationWarning, and handle 401 profile errors gracefully 2026-07-26 19:46:36 +03:30
parsa aghaei
72c126b9ca feat: TASK-111 - add prescription and household supplement filters to ArchivePage 2026-07-26 15:19:54 +03:30
parsa aghaei
01f4a7cf57 test(store): add Vitest unit test suite for cartStore discount, items, and coupon calculations [TASK-106] 2026-07-26 14:52:54 +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
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
1b914d25a5 feat(wiki): add 100% complete ingredients coverage for all products
- Add polyglyceryl-4 caprate, carbomer, dextrose, lactose, vitamins A/C/D3/E/B-complex, minerals, excipients, and all plant/animal extracts across all 20+ products to scientificTerms.ts
- Fully support tooltips and wiki links for every ingredient item without exception
2026-07-21 12:23:37 +03:30
parsa aghaei
fcc738f25c feat(wiki): add complete scientific terms dictionary for all product ingredients
- Add colloidal silver, retinol palmitate, grapefruit seed extract, bovine blood/serum, argan/walnut/rosehip oils, etc.
- Map all product ingredients across all categories to Wiki scientific terms
- Update IngredientWiki matching rules for 100% ingredient coverage
2026-07-21 12:19:56 +03:30
parsa aghaei
4860a0e2e3 feat(admin/seo): sticky google SERP simulator, tooltip hints on all fields, broken image layout fix, dynamic view online url helper and map slug parameter in application 2026-07-15 18:17:44 +03:30
parsa aghaei
6dafe86344 feat: full symptoms filtering system — backend API, megamenu pills, sidebar server-side filter, PDP tags 2026-07-15 15:03:09 +03:30
parsa aghaei
4676f3a592 feat: phase2 - split product names (nameFa/nameEn) across frontend cards, admin panel, search, and cart 2026-07-15 14:33:31 +03:30
parsa aghaei
1d9b699d61 feat: implement dynamic category solutions in MegaMenu navigation and convert static footer buttons to Next.js links 2026-07-15 13:53:23 +03:30
parsa aghaei
0ccf37f922 feat: implement fully dynamic filter sidebar in backend getActiveFilters and frontend ArchivePage mapping with URL sync 2026-07-15 13:49:13 +03:30
parsa aghaei
27ac668e42 fix: re-seed database with exact official PDF catalog details, prices, Farsi categories, and short descriptions, and remove frontend slicing fallbacks 2026-07-15 12:18:58 +03:30