UNPKG

@lambdacurry/medusa-product-reviews

Version:
72 lines 6.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.storeProductReviewRoutesMiddlewares = exports.defaultStoreReviewsQueryConfig = exports.allowedStoreProductReviewFields = exports.defaultStoreProductReviewFields = exports.upsertProductReviewsSchema = exports.listStoreProductReviewsQuerySchema = void 0; const framework_1 = require("@medusajs/framework"); const validators_1 = require("@medusajs/medusa/api/utils/validators"); const zod_1 = require("zod"); const reviewStatuses = zod_1.z.enum(['pending', 'approved', 'flagged']); exports.listStoreProductReviewsQuerySchema = (0, validators_1.createFindParams)({ offset: 0, limit: 50, }).merge(zod_1.z.object({ id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(), status: zod_1.z.union([reviewStatuses, zod_1.z.array(reviewStatuses)]).default('approved').optional(), product_id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(), order_id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(), rating: zod_1.z.union([zod_1.z.number().max(5).min(1), zod_1.z.array(zod_1.z.number().max(5).min(1))]).optional(), created_at: (0, validators_1.createOperatorMap)().optional(), updated_at: (0, validators_1.createOperatorMap)().optional(), })); exports.upsertProductReviewsSchema = zod_1.z.object({ reviews: zod_1.z.array(zod_1.z.object({ order_id: zod_1.z.string(), order_line_item_id: zod_1.z.string(), rating: zod_1.z.number().max(5).min(1), content: zod_1.z.string(), images: zod_1.z.array(zod_1.z.object({ url: zod_1.z.string() })), })), }); exports.defaultStoreProductReviewFields = [ 'id', 'status', 'product_id', 'name', 'rating', 'content', 'created_at', 'updated_at', 'response.*', 'images.*' ]; exports.allowedStoreProductReviewFields = [ 'id', 'status', 'product_id', 'name', 'rating', 'content', 'created_at', 'updated_at', 'response', 'images', 'product.*' ]; exports.defaultStoreReviewsQueryConfig = { allowed: [...exports.allowedStoreProductReviewFields], defaults: [...exports.defaultStoreProductReviewFields], defaultLimit: 50, isList: true, }; exports.storeProductReviewRoutesMiddlewares = [ { matcher: '/store/product-reviews', method: 'GET', middlewares: [(0, framework_1.validateAndTransformQuery)(exports.listStoreProductReviewsQuerySchema, exports.defaultStoreReviewsQueryConfig)], }, { matcher: '/store/product-reviews', method: 'POST', middlewares: [(0, framework_1.validateAndTransformBody)(exports.upsertProductReviewsSchema)], }, ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3Byb2R1Y3QtcmV2aWV3cy9taWRkbGV3YXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBZ0g7QUFDaEgsc0VBQTRGO0FBQzVGLDZCQUF3QjtBQUl4QixNQUFNLGNBQWMsR0FBRyxPQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFBO0FBRXBELFFBQUEsa0NBQWtDLEdBQUcsSUFBQSw2QkFBZ0IsRUFBQztJQUNqRSxNQUFNLEVBQUUsQ0FBQztJQUNULEtBQUssRUFBRSxFQUFFO0NBQ1YsQ0FBQyxDQUFDLEtBQUssQ0FDTixPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ1AsRUFBRSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ3pELE1BQU0sRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDekYsVUFBVSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ2pFLFFBQVEsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUMvRCxNQUFNLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ3pGLFVBQVUsRUFBRSxJQUFBLDhCQUFpQixHQUFFLENBQUMsUUFBUSxFQUFFO0lBQzFDLFVBQVUsRUFBRSxJQUFBLDhCQUFpQixHQUFFLENBQUMsUUFBUSxFQUFFO0NBQzNDLENBQUMsQ0FDSCxDQUFDO0FBRVcsUUFBQSwwQkFBMEIsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2pELE9BQU8sRUFBRSxPQUFDLENBQUMsS0FBSyxDQUNkLE9BQUMsQ0FBQyxNQUFNLENBQUM7UUFDUCxRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtRQUNwQixrQkFBa0IsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFO1FBQzlCLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEMsT0FBTyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUU7UUFDbkIsTUFBTSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQy9DLENBQUMsQ0FDSDtDQUNGLENBQUMsQ0FBQztBQUlVLFFBQUEsK0JBQStCLEdBQUc7SUFDN0MsSUFBSTtJQUNKLFFBQVE7SUFDUixZQUFZO0lBQ1osTUFBTTtJQUNOLFFBQVE7SUFDUixTQUFTO0lBQ1QsWUFBWTtJQUNaLFlBQVk7SUFDWixZQUFZO0lBQ1osVUFBVTtDQUNYLENBQUM7QUFFVyxRQUFBLCtCQUErQixHQUFHO0lBQzdDLElBQUk7SUFDSixRQUFRO0lBQ1IsWUFBWTtJQUNaLE1BQU07SUFDTixRQUFRO0lBQ1IsU0FBUztJQUNULFlBQVk7SUFDWixZQUFZO0lBQ1osVUFBVTtJQUNWLFFBQVE7SUFDUixXQUFXO0NBQ1osQ0FBQztBQUVXLFFBQUEsOEJBQThCLEdBQStCO0lBQ3hFLE9BQU8sRUFBRSxDQUFDLEdBQUcsdUNBQStCLENBQUM7SUFDN0MsUUFBUSxFQUFFLENBQUMsR0FBRyx1Q0FBK0IsQ0FBQztJQUM5QyxZQUFZLEVBQUUsRUFBRTtJQUNoQixNQUFNLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFVyxRQUFBLG1DQUFtQyxHQUFzQjtJQUNwRTtRQUNFLE9BQU8sRUFBRSx3QkFBd0I7UUFDakMsTUFBTSxFQUFFLEtBQUs7UUFDYixXQUFXLEVBQUUsQ0FBQyxJQUFBLHFDQUF5QixFQUFDLDBDQUFrQyxFQUFFLHNDQUE4QixDQUFDLENBQUM7S0FDN0c7SUFDRDtRQUNFLE9BQU8sRUFBRSx3QkFBd0I7UUFDakMsTUFBTSxFQUFFLE1BQU07UUFDZCxXQUFXLEVBQUUsQ0FBQyxJQUFBLG9DQUF3QixFQUFDLGtDQUEwQixDQUFDLENBQUM7S0FDcEU7Q0FDRixDQUFDIn0=