@lodashventure/medusa-review 1.1.7 → 1.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.GET = void 0;
|
|
4
4
|
const getReviewsWorkflow_1 = require("../../../../workflows/review/getReviewsWorkflow");
|
|
5
|
+
const schema_org_1 = require("../../../../utils/schema-org");
|
|
5
6
|
const GET = async (req, res) => {
|
|
6
7
|
const { productId } = req.params;
|
|
7
8
|
const { result } = await (0, getReviewsWorkflow_1.getReviewsWorkflow)().run({
|
|
@@ -14,7 +15,12 @@ const GET = async (req, res) => {
|
|
|
14
15
|
},
|
|
15
16
|
},
|
|
16
17
|
});
|
|
17
|
-
|
|
18
|
+
// Calculate aggregate rating for the reviews
|
|
19
|
+
const aggregateRating = (0, schema_org_1.calculateAggregateRating)(result.reviews);
|
|
20
|
+
res.json({
|
|
21
|
+
...result,
|
|
22
|
+
aggregateRating,
|
|
23
|
+
});
|
|
18
24
|
};
|
|
19
25
|
exports.GET = GET;
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3Jldmlld3MvW3Byb2R1Y3RJZF0vcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0Esd0ZBQXFGO0FBQ3JGLDZEQUF3RTtBQUVqRSxNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQUUsR0FBa0IsRUFBRSxHQUFtQixFQUFFLEVBQUU7SUFDbkUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFFakMsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sSUFBQSx1Q0FBa0IsR0FBRSxDQUFDLEdBQUcsQ0FBQztRQUNoRCxLQUFLLEVBQUU7WUFDTCxXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVc7WUFDNUIsT0FBTyxFQUFFO2dCQUNQLFVBQVUsRUFBRSxTQUFTO2dCQUNyQixNQUFNLEVBQUUsVUFBVTtnQkFDbEIsTUFBTSxFQUFFLElBQUk7YUFDYjtTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsNkNBQTZDO0lBQzdDLE1BQU0sZUFBZSxHQUFHLElBQUEscUNBQXdCLEVBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRWpFLEdBQUcsQ0FBQyxJQUFJLENBQUM7UUFDUCxHQUFHLE1BQU07UUFDVCxlQUFlO0tBQ2hCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQXJCVyxRQUFBLEdBQUcsT0FxQmQifQ==
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GET = void 0;
|
|
4
|
+
const getReviewsWorkflow_1 = require("../../../../../workflows/review/getReviewsWorkflow");
|
|
5
|
+
const schema_org_1 = require("../../../../../utils/schema-org");
|
|
6
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
7
|
+
/**
|
|
8
|
+
* GET /store/reviews/:productId/schema
|
|
9
|
+
*
|
|
10
|
+
* Returns product reviews formatted as Google schema.org structured data
|
|
11
|
+
* This endpoint provides Review and AggregateRating schema for SEO optimization
|
|
12
|
+
*
|
|
13
|
+
* @see https://schema.org/Review
|
|
14
|
+
* @see https://developers.google.com/search/docs/appearance/structured-data/review-snippet
|
|
15
|
+
*/
|
|
16
|
+
const GET = async (req, res) => {
|
|
17
|
+
const { productId } = req.params;
|
|
18
|
+
const productService = req.scope.resolve(utils_1.Modules.PRODUCT);
|
|
19
|
+
const customerService = req.scope.resolve(utils_1.Modules.CUSTOMER);
|
|
20
|
+
// Get the product details
|
|
21
|
+
const product = await productService.retrieveProduct(productId, {
|
|
22
|
+
select: ["id", "title", "description", "handle"],
|
|
23
|
+
relations: ["images"],
|
|
24
|
+
});
|
|
25
|
+
if (!product) {
|
|
26
|
+
return res.status(404).json({
|
|
27
|
+
message: "Product not found",
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
// Get approved reviews for the product
|
|
31
|
+
const { result } = await (0, getReviewsWorkflow_1.getReviewsWorkflow)().run({
|
|
32
|
+
input: {
|
|
33
|
+
queryConfig: {
|
|
34
|
+
...req.queryConfig,
|
|
35
|
+
pagination: {
|
|
36
|
+
...req.queryConfig?.pagination,
|
|
37
|
+
order: { created_at: "DESC" },
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
filters: {
|
|
41
|
+
product_id: productId,
|
|
42
|
+
status: "approved",
|
|
43
|
+
parent: null, // Only get top-level reviews (not replies)
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
const { reviews, count } = result;
|
|
48
|
+
// Get customer information for reviews
|
|
49
|
+
const customerIds = reviews
|
|
50
|
+
.map((review) => review.customer_id)
|
|
51
|
+
.filter((id) => Boolean(id));
|
|
52
|
+
const customers = customerIds.length > 0
|
|
53
|
+
? await customerService.listCustomers({ id: customerIds }, { select: ["id", "first_name", "last_name", "email"] })
|
|
54
|
+
: [];
|
|
55
|
+
// Create a map of customer ID to customer data
|
|
56
|
+
const customerMap = new Map(customers.map((customer) => [customer.id, customer]));
|
|
57
|
+
// Build the base URL (you may want to configure this)
|
|
58
|
+
const baseUrl = process.env.STOREFRONT_URL || "https://sangaroon-nakharin.com";
|
|
59
|
+
const productUrl = `${baseUrl}/products/${product.handle}`;
|
|
60
|
+
const productImage = product.images?.[0]?.url;
|
|
61
|
+
// Format reviews for schema.org
|
|
62
|
+
const formattedReviews = reviews.map((review) => {
|
|
63
|
+
const customer = customerMap.get(review.customer_id || "");
|
|
64
|
+
const authorName = customer
|
|
65
|
+
? `${customer.first_name || ""} ${customer.last_name || ""}`.trim() ||
|
|
66
|
+
"Anonymous"
|
|
67
|
+
: review.is_admin
|
|
68
|
+
? "Store Admin"
|
|
69
|
+
: "Anonymous";
|
|
70
|
+
return {
|
|
71
|
+
rating: review.rating,
|
|
72
|
+
content: review.content,
|
|
73
|
+
title: review.title,
|
|
74
|
+
author: {
|
|
75
|
+
name: authorName,
|
|
76
|
+
},
|
|
77
|
+
datePublished: new Date(review.created_at).toISOString(),
|
|
78
|
+
productName: product.title,
|
|
79
|
+
productUrl,
|
|
80
|
+
};
|
|
81
|
+
});
|
|
82
|
+
// Calculate aggregate rating
|
|
83
|
+
const aggregateRating = (0, schema_org_1.calculateAggregateRating)(reviews);
|
|
84
|
+
// Generate the complete schema
|
|
85
|
+
const schema = (0, schema_org_1.generateProductWithReviewsSchema)({
|
|
86
|
+
productName: product.title,
|
|
87
|
+
productUrl,
|
|
88
|
+
productDescription: product.description,
|
|
89
|
+
productImage,
|
|
90
|
+
reviews: formattedReviews,
|
|
91
|
+
aggregateRating: aggregateRating || undefined,
|
|
92
|
+
});
|
|
93
|
+
res.json({
|
|
94
|
+
schema,
|
|
95
|
+
meta: {
|
|
96
|
+
total_reviews: count,
|
|
97
|
+
average_rating: aggregateRating?.ratingValue,
|
|
98
|
+
reviews_with_rating: aggregateRating?.reviewCount,
|
|
99
|
+
},
|
|
100
|
+
});
|
|
101
|
+
};
|
|
102
|
+
exports.GET = GET;
|
|
103
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3Jldmlld3MvW3Byb2R1Y3RJZF0vc2NoZW1hL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDJGQUF3RjtBQUN4RixnRUFHeUM7QUFDekMscURBQW9EO0FBRXBEOzs7Ozs7OztHQVFHO0FBQ0ksTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUFFLEdBQWtCLEVBQUUsR0FBbUIsRUFBRSxFQUFFO0lBQ25FLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQ2pDLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxRCxNQUFNLGVBQWUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFNUQsMEJBQTBCO0lBQzFCLE1BQU0sT0FBTyxHQUFHLE1BQU0sY0FBYyxDQUFDLGVBQWUsQ0FBQyxTQUFTLEVBQUU7UUFDOUQsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDO1FBQ2hELFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztLQUN0QixDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDYixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzFCLE9BQU8sRUFBRSxtQkFBbUI7U0FDN0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELHVDQUF1QztJQUN2QyxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxJQUFBLHVDQUFrQixHQUFFLENBQUMsR0FBRyxDQUFDO1FBQ2hELEtBQUssRUFBRTtZQUNMLFdBQVcsRUFBRTtn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
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Utility functions to generate Google schema.org structured data for reviews
|
|
4
|
+
* @see https://schema.org/Review
|
|
5
|
+
* @see https://developers.google.com/search/docs/appearance/structured-data/review-snippet
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.generateReviewSchema = generateReviewSchema;
|
|
9
|
+
exports.generateAggregateRatingSchema = generateAggregateRatingSchema;
|
|
10
|
+
exports.calculateAggregateRating = calculateAggregateRating;
|
|
11
|
+
exports.generateProductWithReviewsSchema = generateProductWithReviewsSchema;
|
|
12
|
+
/**
|
|
13
|
+
* Generate schema.org Review structured data
|
|
14
|
+
*/
|
|
15
|
+
function generateReviewSchema(review) {
|
|
16
|
+
const schema = {
|
|
17
|
+
"@type": "Review",
|
|
18
|
+
author: {
|
|
19
|
+
"@type": "Person",
|
|
20
|
+
name: review.author.name,
|
|
21
|
+
},
|
|
22
|
+
datePublished: review.datePublished,
|
|
23
|
+
reviewBody: review.content,
|
|
24
|
+
itemReviewed: {
|
|
25
|
+
"@type": "Product",
|
|
26
|
+
name: review.productName,
|
|
27
|
+
url: review.productUrl,
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
// Add rating if available
|
|
31
|
+
if (review.rating) {
|
|
32
|
+
schema.reviewRating = {
|
|
33
|
+
"@type": "Rating",
|
|
34
|
+
ratingValue: review.rating,
|
|
35
|
+
bestRating: 5,
|
|
36
|
+
worstRating: 1,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
// Add title/name if available
|
|
40
|
+
if (review.title) {
|
|
41
|
+
schema.name = review.title;
|
|
42
|
+
}
|
|
43
|
+
return schema;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Generate schema.org AggregateRating structured data
|
|
47
|
+
*/
|
|
48
|
+
function generateAggregateRatingSchema(input) {
|
|
49
|
+
return {
|
|
50
|
+
"@type": "AggregateRating",
|
|
51
|
+
ratingValue: input.ratingValue,
|
|
52
|
+
reviewCount: input.reviewCount,
|
|
53
|
+
bestRating: input.bestRating ?? 5,
|
|
54
|
+
worstRating: input.worstRating ?? 1,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Calculate aggregate rating from reviews
|
|
59
|
+
*/
|
|
60
|
+
function calculateAggregateRating(reviews) {
|
|
61
|
+
const reviewsWithRating = reviews.filter((r) => r.rating !== null && r.rating !== undefined);
|
|
62
|
+
if (reviewsWithRating.length === 0) {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
const totalRating = reviewsWithRating.reduce((sum, review) => sum + (review.rating || 0), 0);
|
|
66
|
+
const averageRating = totalRating / reviewsWithRating.length;
|
|
67
|
+
return {
|
|
68
|
+
ratingValue: Math.round(averageRating * 10) / 10, // Round to 1 decimal
|
|
69
|
+
reviewCount: reviewsWithRating.length,
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Generate complete Product schema with reviews and aggregate rating
|
|
74
|
+
*/
|
|
75
|
+
function generateProductWithReviewsSchema(input) {
|
|
76
|
+
const schema = {
|
|
77
|
+
"@context": "https://schema.org",
|
|
78
|
+
"@type": "Product",
|
|
79
|
+
name: input.productName,
|
|
80
|
+
url: input.productUrl,
|
|
81
|
+
};
|
|
82
|
+
if (input.productDescription) {
|
|
83
|
+
schema.description = input.productDescription;
|
|
84
|
+
}
|
|
85
|
+
if (input.productImage) {
|
|
86
|
+
schema.image = input.productImage;
|
|
87
|
+
}
|
|
88
|
+
// Add reviews
|
|
89
|
+
if (input.reviews.length > 0) {
|
|
90
|
+
schema.review = input.reviews.map((review) => generateReviewSchema(review));
|
|
91
|
+
}
|
|
92
|
+
// Add aggregate rating
|
|
93
|
+
if (input.aggregateRating) {
|
|
94
|
+
schema.aggregateRating = generateAggregateRatingSchema(input.aggregateRating);
|
|
95
|
+
}
|
|
96
|
+
return schema;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLW9yZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy91dGlscy9zY2hlbWEtb3JnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7OztHQUlHOztBQXdCSCxvREFnQ0M7QUFLRCxzRUFVQztBQUtELDREQXFCQztBQUtELDRFQXNDQztBQXZIRDs7R0FFRztBQUNILFNBQWdCLG9CQUFvQixDQUFDLE1BQXlCO0lBQzVELE1BQU0sTUFBTSxHQUF3QjtRQUNsQyxPQUFPLEVBQUUsUUFBUTtRQUNqQixNQUFNLEVBQUU7WUFDTixPQUFPLEVBQUUsUUFBUTtZQUNqQixJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1NBQ3pCO1FBQ0QsYUFBYSxFQUFFLE1BQU0sQ0FBQyxhQUFhO1FBQ25DLFVBQVUsRUFBRSxNQUFNLENBQUMsT0FBTztRQUMxQixZQUFZLEVBQUU7WUFDWixPQUFPLEVBQUUsU0FBUztZQUNsQixJQUFJLEVBQUUsTUFBTSxDQUFDLFdBQVc7WUFDeEIsR0FBRyxFQUFFLE1BQU0sQ0FBQyxVQUFVO1NBQ3ZCO0tBQ0YsQ0FBQztJQUVGLDBCQUEwQjtJQUMxQixJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsQixNQUFNLENBQUMsWUFBWSxHQUFHO1lBQ3BCLE9BQU8sRUFBRSxRQUFRO1lBQ2pCLFdBQVcsRUFBRSxNQUFNLENBQUMsTUFBTTtZQUMxQixVQUFVLEVBQUUsQ0FBQztZQUNiLFdBQVcsRUFBRSxDQUFDO1NBQ2YsQ0FBQztJQUNKLENBQUM7SUFFRCw4QkFBOEI7SUFDOUIsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDakIsTUFBTSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQiw2QkFBNkIsQ0FDM0MsS0FBaUM7SUFFakMsT0FBTztRQUNMLE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1FBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztRQUM5QixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsSUFBSSxDQUFDO1FBQ2pDLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVyxJQUFJLENBQUM7S0FDcEMsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLHdCQUF3QixDQUN0QyxPQUEwQztJQUUxQyxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQ3RDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FDbkQsQ0FBQztJQUVGLElBQUksaUJBQWlCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELE1BQU0sV0FBVyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FDMUMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxFQUMzQyxDQUFDLENBQ0YsQ0FBQztJQUNGLE1BQU0sYUFBYSxHQUFHLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUM7SUFFN0QsT0FBTztRQUNMLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsR0FBRyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUscUJBQXFCO1FBQ3ZFLFdBQVcsRUFBRSxpQkFBaUIsQ0FBQyxNQUFNO0tBQ3RDLENBQUM7QUFDSixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixnQ0FBZ0MsQ0FBQyxLQU9oRDtJQUNDLE1BQU0sTUFBTSxHQUF3QjtRQUNsQyxVQUFVLEVBQUUsb0JBQW9CO1FBQ2hDLE9BQU8sRUFBRSxTQUFTO1FBQ2xCLElBQUksRUFBRSxLQUFLLENBQUMsV0FBVztRQUN2QixHQUFHLEVBQUUsS0FBSyxDQUFDLFVBQVU7S0FDdEIsQ0FBQztJQUVGLElBQUksS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDN0IsTUFBTSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQUksS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3ZCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztJQUNwQyxDQUFDO0lBRUQsY0FBYztJQUNkLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDN0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQzNDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUM3QixDQUFDO0lBQ0osQ0FBQztJQUVELHVCQUF1QjtJQUN2QixJQUFJLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUMxQixNQUFNLENBQUMsZUFBZSxHQUFHLDZCQUE2QixDQUNwRCxLQUFLLENBQUMsZUFBZSxDQUN0QixDQUFDO0lBQ0osQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lodashventure/medusa-review",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.8",
|
|
4
4
|
"description": "A starter for Medusa plugins.",
|
|
5
5
|
"author": "Medusa (https://medusajs.com)",
|
|
6
6
|
"license": "MIT",
|
|
@@ -25,8 +25,7 @@
|
|
|
25
25
|
],
|
|
26
26
|
"scripts": {
|
|
27
27
|
"build": "medusa plugin:build",
|
|
28
|
-
"dev": "medusa plugin:develop"
|
|
29
|
-
"prepublishOnly": "medusa plugin:build"
|
|
28
|
+
"dev": "medusa plugin:develop"
|
|
30
29
|
},
|
|
31
30
|
"devDependencies": {
|
|
32
31
|
"@medusajs/admin-sdk": "2.10.0",
|
|
@@ -80,4 +79,4 @@
|
|
|
80
79
|
"multer": "^1.4.5-lts.2",
|
|
81
80
|
"rc-mentions": "^2.20.0"
|
|
82
81
|
}
|
|
83
|
-
}
|
|
82
|
+
}
|