diff --git a/workloads/commerce-backend/src/api/middlewares.ts b/workloads/commerce-backend/src/api/middlewares.ts new file mode 100644 index 0000000..099e489 --- /dev/null +++ b/workloads/commerce-backend/src/api/middlewares.ts @@ -0,0 +1,22 @@ +import { defineMiddlewares } from "@medusajs/medusa" + +// GET /store/products descarta en silencio la relacion `categories` +// aunque `/admin/products` si la expone -- confirmado en vivo en la +// auditoria de Fase 5 (ver docs/decisiones/0004-evaluacion-stack-multi-categoria.md). +// Este es el patron oficial de Medusa v2 para ampliar los campos +// permitidos de una ruta core restringida (middleware global sobre +// req.allowed), no un query-config custom: +// https://docs.medusajs.com/learn/fundamentals/api-routes/retrieve-custom-links +export default defineMiddlewares({ + routes: [ + { + matcher: "/store/products", + middlewares: [ + (req, res, next) => { + ;(req.allowed ??= []).push("categories") + next() + }, + ], + }, + ], +})