UNPKG

@alphabite/medusa-reviews

Version:

Alphabite's Medusa Reviews Plugin

27 lines 2.66 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.canCreateReviewStep = void 0; const utils_1 = require("@medusajs/framework/utils"); const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk"); const review_1 = require("../../modules/review"); exports.canCreateReviewStep = (0, workflows_sdk_1.createStep)("can-create-review", async (input, { container }) => { const reviewModuleService = container.resolve(review_1.REVIEW_MODULE); const options = reviewModuleService._options; if (!input.is_verified_purchase && options?.allowOnlyVerifiedPurchases) { throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "You can only review products you have purchased."); } if (!options?.allowMultipleReviewsPerProduct) { const existingReview = await reviewModuleService.listReviews({}, { filters: { product_id: input.product_id, customer_id: input.customer_id, status: "approved", }, }); if (existingReview?.length > 0) { throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNAUTHORIZED, "You have already submitted a review for this product."); } } return new workflows_sdk_1.StepResponse(true); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuLWNyZWF0ZS1yZXZpZXcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3N0ZXBzL2Nhbi1jcmVhdGUtcmV2aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFEQUF3RDtBQUN4RCxxRUFBNkU7QUFFN0UsaURBQXFEO0FBUXhDLFFBQUEsbUJBQW1CLEdBQUcsSUFBQSwwQkFBVSxFQUMzQyxtQkFBbUIsRUFDbkIsS0FBSyxFQUFFLEtBQStCLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3ZELE1BQU0sbUJBQW1CLEdBQ3ZCLFNBQVMsQ0FBQyxPQUFPLENBQXNCLHNCQUFhLENBQUMsQ0FBQztJQUV4RCxNQUFNLE9BQU8sR0FBRyxtQkFBbUIsQ0FBQyxRQUFRLENBQUM7SUFFN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsSUFBSSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQztRQUN2RSxNQUFNLElBQUksbUJBQVcsQ0FDbkIsbUJBQVcsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUM5QixrREFBa0QsQ0FDbkQsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFJLENBQUMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLENBQUM7UUFDN0MsTUFBTSxjQUFjLEdBQUcsTUFBTSxtQkFBbUIsQ0FBQyxXQUFXLENBQzFELEVBQUUsRUFDRjtZQUNFLE9BQU8sRUFBRTtnQkFDUCxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7Z0JBQzVCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztnQkFDOUIsTUFBTSxFQUFFLFVBQVU7YUFDbkI7U0FDRixDQUNGLENBQUM7UUFFRixJQUFJLGNBQWMsRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDL0IsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsdURBQXVELENBQ3hELENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sSUFBSSw0QkFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2hDLENBQUMsQ0FDRixDQUFDIn0=