- Debian-based api image (bookworm-slim), docker/debian mirrors, prisma binaryTargets for openssl 3.0 - nginx: admin SPA under /admin, TLS via acme.sh (ZeroSSL) + auto-renewal cron, http->https redirect - prisma: add origin_goods.delisted migration, sync missing schema (good_image/tag_font_color/good_tags), fix users.createdAt Timestamptz - api: CORS wildcard reflection, helmet CORP cross-origin, price backfill in persistProductDetail, categoryIcon ancestor fallback, mediaByColor per-color gallery in public goods detail - admin: /admin base path (vite + router) - import-data.mjs: udt_name casting, serial sequence advance fix
13 lines
953 B
Markdown
13 lines
953 B
Markdown
# Product Center Navigation Feature Plan
|
|
|
|
**Goal:** Improve product filter interactions and connect homepage/product cards to their target routes.
|
|
|
|
**Architecture:** Keep backend IDs as the shared routing contract. Product filter state remains in `useProductCenter`; presentational components emit typed events and own only dropdown visibility.
|
|
|
|
- [x] Add failing tests for grouped selected tags, dropdown closing, product detail URLs, and country query validation.
|
|
- [x] Close filter menus after selection and outside clicks; render selected tags under their owning groups.
|
|
- [x] Link product cards to Inkpod detail pages.
|
|
- [x] Link all homepage free-trial actions to Inkpod login.
|
|
- [x] Render all backend-configured countries in a balanced two-row grid; switch countries in place and link category cards to combined country/category filters.
|
|
- [x] Run the full website test suite, production build, and browser interaction verification.
|