diff --git a/packages/modules/b2c-core/src/api/vendor/product-types/route.ts b/packages/modules/b2c-core/src/api/vendor/product-types/route.ts index db5c0f671..20961c11f 100644 --- a/packages/modules/b2c-core/src/api/vendor/product-types/route.ts +++ b/packages/modules/b2c-core/src/api/vendor/product-types/route.ts @@ -25,6 +25,12 @@ import { ContainerRegistrationKeys } from '@medusajs/framework/utils' * type: number * required: false * description: The number of items to return. + * - name: q + * in: query + * schema: + * type: string + * required: false + * description: Search query to filter product types by value (case-insensitive). * responses: * "200": * description: OK @@ -57,9 +63,11 @@ export const GET = async ( res: MedusaResponse ) => { const query = req.scope.resolve(ContainerRegistrationKeys.QUERY) + const { data: product_types, metadata } = await query.graph({ entity: 'product_type', fields: req.queryConfig.fields, + filters: req.filterableFields, pagination: req.queryConfig.pagination }) diff --git a/packages/modules/b2c-core/src/api/vendor/product-types/validators.ts b/packages/modules/b2c-core/src/api/vendor/product-types/validators.ts index 9dd82ab97..f4c7905a7 100644 --- a/packages/modules/b2c-core/src/api/vendor/product-types/validators.ts +++ b/packages/modules/b2c-core/src/api/vendor/product-types/validators.ts @@ -2,6 +2,10 @@ import { z } from 'zod' import { createFindParams } from '@medusajs/medusa/api/utils/validators' +export const VendorGetProductTypesParamsFields = z.object({ + q: z.string().optional() +}) + export type VendorGetProductTypesParamsType = z.infer< typeof VendorGetProductTypesParams > @@ -9,3 +13,5 @@ export const VendorGetProductTypesParams = createFindParams({ limit: 50, offset: 0 }) + .merge(VendorGetProductTypesParamsFields) + .strict()