@devx-commerce/plugin-product-reviews-svaraa 3.3.0-beta.1

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.
Files changed (150) hide show
  1. package/.medusa/server/plugins/product-reviews/src/api/store/product-reviews/middlewares.d.ts +175 -0
  2. package/.medusa/server/plugins/product-reviews/src/api/store/product-reviews/middlewares.js +75 -0
  3. package/.medusa/server/src/admin/index.js +20 -0
  4. package/.medusa/server/src/admin/index.mjs +21 -0
  5. package/.medusa/server/src/api/admin/product-review-stats/middlewares.d.ts +118 -0
  6. package/.medusa/server/src/api/admin/product-review-stats/middlewares.js +46 -0
  7. package/.medusa/server/src/api/admin/product-review-stats/refresh/route.d.ts +2 -0
  8. package/.medusa/server/src/api/admin/product-review-stats/refresh/route.js +19 -0
  9. package/.medusa/server/src/api/admin/product-review-stats/route.d.ts +2 -0
  10. package/.medusa/server/src/api/admin/product-review-stats/route.js +16 -0
  11. package/.medusa/server/src/api/admin/product-reviews/[id]/response/middlewares.d.ts +11 -0
  12. package/.medusa/server/src/api/admin/product-reviews/[id]/response/middlewares.js +26 -0
  13. package/.medusa/server/src/api/admin/product-reviews/[id]/response/route.d.ts +5 -0
  14. package/.medusa/server/src/api/admin/product-reviews/[id]/response/route.js +66 -0
  15. package/.medusa/server/src/api/admin/product-reviews/[id]/route.d.ts +3 -0
  16. package/.medusa/server/src/api/admin/product-reviews/[id]/route.js +30 -0
  17. package/.medusa/server/src/api/admin/product-reviews/[id]/status/middlewares.d.ts +11 -0
  18. package/.medusa/server/src/api/admin/product-reviews/[id]/status/middlewares.js +16 -0
  19. package/.medusa/server/src/api/admin/product-reviews/[id]/status/route.d.ts +3 -0
  20. package/.medusa/server/src/api/admin/product-reviews/[id]/status/route.js +15 -0
  21. package/.medusa/server/src/api/admin/product-reviews/bulk-upload/route.d.ts +3 -0
  22. package/.medusa/server/src/api/admin/product-reviews/bulk-upload/route.js +28 -0
  23. package/.medusa/server/src/api/admin/product-reviews/config/route.d.ts +4 -0
  24. package/.medusa/server/src/api/admin/product-reviews/config/route.js +33 -0
  25. package/.medusa/server/src/api/admin/product-reviews/delete/route.d.ts +3 -0
  26. package/.medusa/server/src/api/admin/product-reviews/delete/route.js +14 -0
  27. package/.medusa/server/src/api/admin/product-reviews/middlewares.d.ts +149 -0
  28. package/.medusa/server/src/api/admin/product-reviews/middlewares.js +84 -0
  29. package/.medusa/server/src/api/admin/product-reviews/route.d.ts +4 -0
  30. package/.medusa/server/src/api/admin/product-reviews/route.js +62 -0
  31. package/.medusa/server/src/api/admin/product-reviews/validators.d.ts +87 -0
  32. package/.medusa/server/src/api/admin/product-reviews/validators.js +25 -0
  33. package/.medusa/server/src/api/middlewares.d.ts +2 -0
  34. package/.medusa/server/src/api/middlewares.js +21 -0
  35. package/.medusa/server/src/api/store/product-review-stats/middlewares.d.ts +118 -0
  36. package/.medusa/server/src/api/store/product-review-stats/middlewares.js +44 -0
  37. package/.medusa/server/src/api/store/product-review-stats/route.d.ts +2 -0
  38. package/.medusa/server/src/api/store/product-review-stats/route.js +16 -0
  39. package/.medusa/server/src/api/store/product-reviews/[id]/route.d.ts +3 -0
  40. package/.medusa/server/src/api/store/product-reviews/[id]/route.js +20 -0
  41. package/.medusa/server/src/api/store/product-reviews/eligibility/route.d.ts +3 -0
  42. package/.medusa/server/src/api/store/product-reviews/eligibility/route.js +25 -0
  43. package/.medusa/server/src/api/store/product-reviews/middlewares.d.ts +322 -0
  44. package/.medusa/server/src/api/store/product-reviews/middlewares.js +139 -0
  45. package/.medusa/server/src/api/store/product-reviews/route.d.ts +4 -0
  46. package/.medusa/server/src/api/store/product-reviews/route.js +42 -0
  47. package/.medusa/server/src/jobs/refresh-all-product-review-stats.d.ts +9 -0
  48. package/.medusa/server/src/jobs/refresh-all-product-review-stats.js +43 -0
  49. package/.medusa/server/src/lib/api-response.d.ts +75 -0
  50. package/.medusa/server/src/lib/api-response.js +102 -0
  51. package/.medusa/server/src/links/product-review-product.d.ts +2 -0
  52. package/.medusa/server/src/links/product-review-product.js +14 -0
  53. package/.medusa/server/src/links/product-review-stats-product.d.ts +2 -0
  54. package/.medusa/server/src/links/product-review-stats-product.js +13 -0
  55. package/.medusa/server/src/modules/product-review/index.d.ts +77 -0
  56. package/.medusa/server/src/modules/product-review/index.js +13 -0
  57. package/.medusa/server/src/modules/product-review/migrations/Migration20250408075709.d.ts +5 -0
  58. package/.medusa/server/src/modules/product-review/migrations/Migration20250408075709.js +27 -0
  59. package/.medusa/server/src/modules/product-review/migrations/Migration20250425092433.d.ts +5 -0
  60. package/.medusa/server/src/modules/product-review/migrations/Migration20250425092433.js +31 -0
  61. package/.medusa/server/src/modules/product-review/migrations/Migration20250428134029.d.ts +5 -0
  62. package/.medusa/server/src/modules/product-review/migrations/Migration20250428134029.js +20 -0
  63. package/.medusa/server/src/modules/product-review/migrations/Migration20250430123125.d.ts +5 -0
  64. package/.medusa/server/src/modules/product-review/migrations/Migration20250430123125.js +25 -0
  65. package/.medusa/server/src/modules/product-review/migrations/Migration20250501112941.d.ts +5 -0
  66. package/.medusa/server/src/modules/product-review/migrations/Migration20250501112941.js +16 -0
  67. package/.medusa/server/src/modules/product-review/migrations/Migration20250612122020.d.ts +5 -0
  68. package/.medusa/server/src/modules/product-review/migrations/Migration20250612122020.js +14 -0
  69. package/.medusa/server/src/modules/product-review/models/index.d.ts +6 -0
  70. package/.medusa/server/src/modules/product-review/models/index.js +14 -0
  71. package/.medusa/server/src/modules/product-review/models/product-review-config.d.ts +5 -0
  72. package/.medusa/server/src/modules/product-review/models/product-review-config.js +10 -0
  73. package/.medusa/server/src/modules/product-review/models/product-review-response.d.ts +24 -0
  74. package/.medusa/server/src/modules/product-review/models/product-review-response.js +14 -0
  75. package/.medusa/server/src/modules/product-review/models/product-review-stats.d.ts +11 -0
  76. package/.medusa/server/src/modules/product-review/models/product-review-stats.js +16 -0
  77. package/.medusa/server/src/modules/product-review/models/product-review.d.ts +29 -0
  78. package/.medusa/server/src/modules/product-review/models/product-review.js +34 -0
  79. package/.medusa/server/src/modules/product-review/models/review-associated-media.d.ts +29 -0
  80. package/.medusa/server/src/modules/product-review/models/review-associated-media.js +14 -0
  81. package/.medusa/server/src/modules/product-review/service.d.ts +145 -0
  82. package/.medusa/server/src/modules/product-review/service.js +211 -0
  83. package/.medusa/server/src/modules/product-review/types/common.d.ts +7 -0
  84. package/.medusa/server/src/modules/product-review/types/common.js +3 -0
  85. package/.medusa/server/src/modules/product-review/types/index.d.ts +2 -0
  86. package/.medusa/server/src/modules/product-review/types/index.js +19 -0
  87. package/.medusa/server/src/modules/product-review/types/mutations.d.ts +36 -0
  88. package/.medusa/server/src/modules/product-review/types/mutations.js +3 -0
  89. package/.medusa/server/src/subscribers/product-review-bulk-upload.d.ts +8 -0
  90. package/.medusa/server/src/subscribers/product-review-bulk-upload.js +132 -0
  91. package/.medusa/server/src/utils/types/product-reviews.d.ts +110 -0
  92. package/.medusa/server/src/utils/types/product-reviews.js +3 -0
  93. package/.medusa/server/src/workflows/customer/find-or-create-customer.d.ts +14 -0
  94. package/.medusa/server/src/workflows/customer/find-or-create-customer.js +106 -0
  95. package/.medusa/server/src/workflows/order/steps/validate-order-item-exists.d.ts +12 -0
  96. package/.medusa/server/src/workflows/order/steps/validate-order-item-exists.js +37 -0
  97. package/.medusa/server/src/workflows/product/steps/validate-product-exists.d.ts +10 -0
  98. package/.medusa/server/src/workflows/product/steps/validate-product-exists.js +28 -0
  99. package/.medusa/server/src/workflows/product-reviews/steps/check-review-eligibility.d.ts +15 -0
  100. package/.medusa/server/src/workflows/product-reviews/steps/check-review-eligibility.js +78 -0
  101. package/.medusa/server/src/workflows/product-reviews/steps/create-product-review-response.d.ts +37 -0
  102. package/.medusa/server/src/workflows/product-reviews/steps/create-product-review-response.js +17 -0
  103. package/.medusa/server/src/workflows/product-reviews/steps/create-product-reviews.d.ts +40 -0
  104. package/.medusa/server/src/workflows/product-reviews/steps/create-product-reviews.js +79 -0
  105. package/.medusa/server/src/workflows/product-reviews/steps/delete-product-review-responses.d.ts +6 -0
  106. package/.medusa/server/src/workflows/product-reviews/steps/delete-product-review-responses.js +23 -0
  107. package/.medusa/server/src/workflows/product-reviews/steps/delete-review-step.d.ts +4 -0
  108. package/.medusa/server/src/workflows/product-reviews/steps/delete-review-step.js +13 -0
  109. package/.medusa/server/src/workflows/product-reviews/steps/download-and-parse-csv.d.ts +6 -0
  110. package/.medusa/server/src/workflows/product-reviews/steps/download-and-parse-csv.js +63 -0
  111. package/.medusa/server/src/workflows/product-reviews/steps/recalculate-product-review-stats.d.ts +16 -0
  112. package/.medusa/server/src/workflows/product-reviews/steps/recalculate-product-review-stats.js +15 -0
  113. package/.medusa/server/src/workflows/product-reviews/steps/throw-error-step.d.ts +3 -0
  114. package/.medusa/server/src/workflows/product-reviews/steps/throw-error-step.js +9 -0
  115. package/.medusa/server/src/workflows/product-reviews/steps/update-product-review-config.d.ts +5 -0
  116. package/.medusa/server/src/workflows/product-reviews/steps/update-product-review-config.js +38 -0
  117. package/.medusa/server/src/workflows/product-reviews/steps/update-product-review-response.d.ts +3 -0
  118. package/.medusa/server/src/workflows/product-reviews/steps/update-product-review-response.js +36 -0
  119. package/.medusa/server/src/workflows/product-reviews/steps/update-product-review.d.ts +53 -0
  120. package/.medusa/server/src/workflows/product-reviews/steps/update-product-review.js +65 -0
  121. package/.medusa/server/src/workflows/product-reviews/steps/validate-review-csv-headers.d.ts +10 -0
  122. package/.medusa/server/src/workflows/product-reviews/steps/validate-review-csv-headers.js +55 -0
  123. package/.medusa/server/src/workflows/product-reviews/steps/verify-purchase-history.d.ts +10 -0
  124. package/.medusa/server/src/workflows/product-reviews/steps/verify-purchase-history.js +70 -0
  125. package/.medusa/server/src/workflows/product-reviews/workflows/bulk-upload-product-reviews.d.ts +9 -0
  126. package/.medusa/server/src/workflows/product-reviews/workflows/bulk-upload-product-reviews.js +25 -0
  127. package/.medusa/server/src/workflows/product-reviews/workflows/check-review-eligibility.d.ts +2 -0
  128. package/.medusa/server/src/workflows/product-reviews/workflows/check-review-eligibility.js +10 -0
  129. package/.medusa/server/src/workflows/product-reviews/workflows/create-product-review-response.d.ts +36 -0
  130. package/.medusa/server/src/workflows/product-reviews/workflows/create-product-review-response.js +10 -0
  131. package/.medusa/server/src/workflows/product-reviews/workflows/create-product-review.d.ts +51 -0
  132. package/.medusa/server/src/workflows/product-reviews/workflows/create-product-review.js +43 -0
  133. package/.medusa/server/src/workflows/product-reviews/workflows/delete-product-review-responses.d.ts +5 -0
  134. package/.medusa/server/src/workflows/product-reviews/workflows/delete-product-review-responses.js +10 -0
  135. package/.medusa/server/src/workflows/product-reviews/workflows/delete-product-review.d.ts +3 -0
  136. package/.medusa/server/src/workflows/product-reviews/workflows/delete-product-review.js +10 -0
  137. package/.medusa/server/src/workflows/product-reviews/workflows/download-csv.d.ts +6 -0
  138. package/.medusa/server/src/workflows/product-reviews/workflows/download-csv.js +13 -0
  139. package/.medusa/server/src/workflows/product-reviews/workflows/refresh-product-review-stats.d.ts +17 -0
  140. package/.medusa/server/src/workflows/product-reviews/workflows/refresh-product-review-stats.js +10 -0
  141. package/.medusa/server/src/workflows/product-reviews/workflows/update-product-review-config.d.ts +6 -0
  142. package/.medusa/server/src/workflows/product-reviews/workflows/update-product-review-config.js +10 -0
  143. package/.medusa/server/src/workflows/product-reviews/workflows/update-product-review-responses.d.ts +2 -0
  144. package/.medusa/server/src/workflows/product-reviews/workflows/update-product-review-responses.js +10 -0
  145. package/.medusa/server/src/workflows/product-reviews/workflows/update-product-review.d.ts +52 -0
  146. package/.medusa/server/src/workflows/product-reviews/workflows/update-product-review.js +15 -0
  147. package/.medusa/server/src/workflows/product-reviews/workflows/verify-purchase-history.d.ts +12 -0
  148. package/.medusa/server/src/workflows/product-reviews/workflows/verify-purchase-history.js +10 -0
  149. package/README.md +205 -0
  150. package/package.json +104 -0
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DELETE = exports.GET = void 0;
4
+ const api_response_1 = require("../../../../lib/api-response");
5
+ const delete_product_review_1 = require("../../../../workflows/product-reviews/workflows/delete-product-review");
6
+ const GET = async (req, res) => {
7
+ const { id } = req.params;
8
+ const { data: [review], } = await req.scope.resolve("query").graph({
9
+ entity: "product_review",
10
+ filters: { id },
11
+ fields: [
12
+ "*",
13
+ "response.*",
14
+ "associated_medias.*",
15
+ "product.*",
16
+ "response.*",
17
+ ],
18
+ });
19
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({ review }));
20
+ };
21
+ exports.GET = GET;
22
+ const DELETE = async (req, res) => {
23
+ const { id } = req.params;
24
+ await (0, delete_product_review_1.deleteProductReviewWorkflow)(req.scope).run({
25
+ input: { id },
26
+ });
27
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({ id }));
28
+ };
29
+ exports.DELETE = DELETE;
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb2R1Y3QtcmV2aWV3cy9baWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLCtEQUdzQztBQUN0QyxpSEFBb0g7QUFFN0csTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUN0QixHQUErQixFQUMvQixHQUFtQixFQUNuQixFQUFFO0lBQ0YsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUM7SUFDMUIsTUFBTSxFQUNKLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUNmLEdBQUcsTUFBTSxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDekMsTUFBTSxFQUFFLGdCQUFnQjtRQUN4QixPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUU7UUFDZixNQUFNLEVBQUU7WUFDTixHQUFHO1lBQ0gsWUFBWTtZQUNaLHFCQUFxQjtZQUNyQixXQUFXO1lBQ1gsWUFBWTtTQUNiO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFBLDhCQUFlLEVBQUMsR0FBRyxFQUFFLElBQUEsb0NBQXFCLEVBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDakUsQ0FBQyxDQUFDO0FBcEJXLFFBQUEsR0FBRyxPQW9CZDtBQUVLLE1BQU0sTUFBTSxHQUFHLEtBQUssRUFDekIsR0FBK0IsRUFDL0IsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBRTFCLE1BQU0sSUFBQSxtREFBMkIsRUFBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQy9DLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRTtLQUNkLENBQUMsQ0FBQztJQUVILE9BQU8sSUFBQSw4QkFBZSxFQUFDLEdBQUcsRUFBRSxJQUFBLG9DQUFxQixFQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzdELENBQUMsQ0FBQztBQVhXLFFBQUEsTUFBTSxVQVdqQiJ9
@@ -0,0 +1,11 @@
1
+ import { type MiddlewareRoute } from "@medusajs/framework";
2
+ import { z } from "zod";
3
+ export declare const updateProductReviewStatusSchema: z.ZodObject<{
4
+ is_admin_verified: z.ZodBoolean;
5
+ }, "strip", z.ZodTypeAny, {
6
+ is_admin_verified: boolean;
7
+ }, {
8
+ is_admin_verified: boolean;
9
+ }>;
10
+ export type UpdateProductReviewStatusSchema = z.infer<typeof updateProductReviewStatusSchema>;
11
+ export declare const adminProductReviewStatusRoutesMiddlewares: MiddlewareRoute[];
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.adminProductReviewStatusRoutesMiddlewares = exports.updateProductReviewStatusSchema = void 0;
4
+ const framework_1 = require("@medusajs/framework");
5
+ const zod_1 = require("zod");
6
+ exports.updateProductReviewStatusSchema = zod_1.z.object({
7
+ is_admin_verified: zod_1.z.boolean(),
8
+ });
9
+ exports.adminProductReviewStatusRoutesMiddlewares = [
10
+ {
11
+ matcher: "/admin/product-reviews/:id/status",
12
+ method: "PUT",
13
+ middlewares: [(0, framework_1.validateAndTransformBody)(exports.updateProductReviewStatusSchema)],
14
+ },
15
+ ];
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb2R1Y3QtcmV2aWV3cy9baWRdL3N0YXR1cy9taWRkbGV3YXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFHNkI7QUFDN0IsNkJBQXdCO0FBRVgsUUFBQSwrQkFBK0IsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3RELGlCQUFpQixFQUFFLE9BQUMsQ0FBQyxPQUFPLEVBQUU7Q0FDL0IsQ0FBQyxDQUFDO0FBTVUsUUFBQSx5Q0FBeUMsR0FBc0I7SUFDMUU7UUFDRSxPQUFPLEVBQUUsbUNBQW1DO1FBQzVDLE1BQU0sRUFBRSxLQUFLO1FBQ2IsV0FBVyxFQUFFLENBQUMsSUFBQSxvQ0FBd0IsRUFBQyx1Q0FBK0IsQ0FBQyxDQUFDO0tBQ3pFO0NBQ0YsQ0FBQyJ9
@@ -0,0 +1,3 @@
1
+ import type { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework";
2
+ import type { UpdateProductReviewStatusSchema } from "./middlewares";
3
+ export declare const PUT: (req: AuthenticatedMedusaRequest<UpdateProductReviewStatusSchema>, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PUT = void 0;
4
+ const api_response_1 = require("../../../../../lib/api-response");
5
+ const update_product_review_1 = require("../../../../../workflows/product-reviews/workflows/update-product-review");
6
+ const PUT = async (req, res) => {
7
+ const review_id = req.params.id;
8
+ const { is_admin_verified } = req.validatedBody;
9
+ const result = await (0, update_product_review_1.updateProductReviewWorkflow)(req.scope).run({
10
+ input: { id: review_id, is_admin_verified },
11
+ });
12
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({ product_review: result.result[0] }, "Product review status updated successfully", api_response_1.HttpStatus.OK));
13
+ };
14
+ exports.PUT = PUT;
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb2R1Y3QtcmV2aWV3cy9baWRdL3N0YXR1cy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSxrRUFJeUM7QUFFekMsb0hBQXVIO0FBR2hILE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBZ0UsRUFDaEUsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO0lBQ2hDLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUM7SUFFaEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFBLG1EQUEyQixFQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDOUQsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRTtLQUM1QyxDQUFDLENBQUM7SUFFSCxPQUFPLElBQUEsOEJBQWUsRUFDcEIsR0FBRyxFQUNILElBQUEsb0NBQXFCLEVBQ25CLEVBQUUsY0FBYyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFDcEMsNENBQTRDLEVBQzVDLHlCQUFVLENBQUMsRUFBRSxDQUNkLENBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQW5CVyxRQUFBLEdBQUcsT0FtQmQifQ==
@@ -0,0 +1,3 @@
1
+ import type { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework";
2
+ import { BulkUploadProductReviewsDTO } from "../middlewares";
3
+ export declare const POST: (req: AuthenticatedMedusaRequest<BulkUploadProductReviewsDTO>, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.POST = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const api_response_1 = require("../../../../lib/api-response");
6
+ const bulk_upload_product_reviews_1 = require("../../../../workflows/product-reviews/workflows/bulk-upload-product-reviews");
7
+ const POST = async (req, res) => {
8
+ try {
9
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
10
+ const { data: [user], } = await query.graph({
11
+ entity: "user",
12
+ fields: ["email"],
13
+ filters: { id: req.auth_context.actor_id },
14
+ });
15
+ const { result } = await (0, bulk_upload_product_reviews_1.bulkUploadProductReviewsWorkflow)(req.scope).run({
16
+ input: {
17
+ csv_url: req.validatedBody.csv_url,
18
+ email: user.email,
19
+ },
20
+ });
21
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({ result }, "Product reviews bulk upload initiated successfully", api_response_1.HttpStatus.OK));
22
+ }
23
+ catch (error) {
24
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createErrorResponse)(error.message || "Failed to initiate bulk upload", api_response_1.HttpStatus.INTERNAL_SERVER_ERROR, api_response_1.ErrorCode.INTERNAL_ERROR, { stack: error.stack }));
25
+ }
26
+ };
27
+ exports.POST = POST;
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb2R1Y3QtcmV2aWV3cy9idWxrLXVwbG9hZC9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSxxREFBc0U7QUFFdEUsK0RBTXNDO0FBQ3RDLDZIQUErSDtBQUd4SCxNQUFNLElBQUksR0FBRyxLQUFLLEVBQ3ZCLEdBQTRELEVBQzVELEdBQW1CLEVBQ25CLEVBQUU7SUFDRixJQUFJLENBQUM7UUFDSCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVqRSxNQUFNLEVBQ0osSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQ2IsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDcEIsTUFBTSxFQUFFLE1BQU07WUFDZCxNQUFNLEVBQUUsQ0FBQyxPQUFPLENBQUM7WUFDakIsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFO1NBQzNDLENBQUMsQ0FBQztRQUVILE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLElBQUEsOERBQWdDLEVBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsQ0FBQztZQUN2RSxLQUFLLEVBQUU7Z0JBQ0wsT0FBTyxFQUFFLEdBQUcsQ0FBQyxhQUFhLENBQUMsT0FBTztnQkFDbEMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2FBQ2xCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFBLDhCQUFlLEVBQ3BCLEdBQUcsRUFDSCxJQUFBLG9DQUFxQixFQUNuQixFQUFFLE1BQU0sRUFBRSxFQUNWLG9EQUFvRCxFQUNwRCx5QkFBVSxDQUFDLEVBQUUsQ0FDZCxDQUNGLENBQUM7SUFDSixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sSUFBQSw4QkFBZSxFQUNwQixHQUFHLEVBQ0gsSUFBQSxrQ0FBbUIsRUFDakIsS0FBSyxDQUFDLE9BQU8sSUFBSSxnQ0FBZ0MsRUFDakQseUJBQVUsQ0FBQyxxQkFBcUIsRUFDaEMsd0JBQVMsQ0FBQyxjQUFjLEVBQ3hCLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FDdkIsQ0FDRixDQUFDO0lBQ0osQ0FBQztBQUNILENBQUMsQ0FBQztBQXpDVyxRQUFBLElBQUksUUF5Q2YifQ==
@@ -0,0 +1,4 @@
1
+ import type { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework";
2
+ import { UpdateProductReviewConfigDTO } from "../middlewares";
3
+ export declare const PUT: (req: AuthenticatedMedusaRequest<UpdateProductReviewConfigDTO>, res: MedusaResponse) => Promise<void>;
4
+ export declare const GET: (req: AuthenticatedMedusaRequest, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = exports.PUT = void 0;
4
+ const api_response_1 = require("../../../../lib/api-response");
5
+ const update_product_review_config_1 = require("../../../../workflows/product-reviews/workflows/update-product-review-config");
6
+ const PUT = async (req, res) => {
7
+ try {
8
+ const { key, value } = req.validatedBody;
9
+ const { result } = await (0, update_product_review_config_1.updateProductReviewConfigWorkflow)(req.scope).run({
10
+ input: { key, value },
11
+ });
12
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)(result, "Product review configuration updated successfully", api_response_1.HttpStatus.OK));
13
+ }
14
+ catch (error) {
15
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createErrorResponse)(error.message || "Failed to update product review configuration", api_response_1.HttpStatus.INTERNAL_SERVER_ERROR, api_response_1.ErrorCode.INTERNAL_ERROR, { stack: error.stack }));
16
+ }
17
+ };
18
+ exports.PUT = PUT;
19
+ const GET = async (req, res) => {
20
+ try {
21
+ const query = req.scope.resolve("query");
22
+ const { data } = await query.graph({
23
+ entity: "product_review_config",
24
+ fields: ["key", "value"],
25
+ });
26
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)(data, "Product review configuration fetched successfully", api_response_1.HttpStatus.OK));
27
+ }
28
+ catch (error) {
29
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createErrorResponse)(error.message || "Failed to fetch product review configuration", api_response_1.HttpStatus.INTERNAL_SERVER_ERROR, api_response_1.ErrorCode.INTERNAL_ERROR, { stack: error.stack }));
30
+ }
31
+ };
32
+ exports.GET = GET;
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb2R1Y3QtcmV2aWV3cy9jb25maWcvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsK0RBTXNDO0FBRXRDLCtIQUFpSTtBQUUxSCxNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQ3RCLEdBQTZELEVBQzdELEdBQW1CLEVBQ25CLEVBQUU7SUFDRixJQUFJLENBQUM7UUFDSCxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUM7UUFFekMsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sSUFBQSxnRUFBaUMsRUFBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQ3hFLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUU7U0FDdEIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFBLDhCQUFlLEVBQ3BCLEdBQUcsRUFDSCxJQUFBLG9DQUFxQixFQUNuQixNQUFNLEVBQ04sbURBQW1ELEVBQ25ELHlCQUFVLENBQUMsRUFBRSxDQUNkLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxJQUFBLDhCQUFlLEVBQ3BCLEdBQUcsRUFDSCxJQUFBLGtDQUFtQixFQUNqQixLQUFLLENBQUMsT0FBTyxJQUFJLCtDQUErQyxFQUNoRSx5QkFBVSxDQUFDLHFCQUFxQixFQUNoQyx3QkFBUyxDQUFDLGNBQWMsRUFDeEIsRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUN2QixDQUNGLENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBOUJXLFFBQUEsR0FBRyxPQThCZDtBQUdLLE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBK0IsRUFDL0IsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLElBQUksQ0FBQztRQUVILE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pDLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDbkMsTUFBTSxFQUFHLHVCQUF1QjtZQUNoQyxNQUFNLEVBQUcsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDO1NBQ3hCLENBQUMsQ0FBQTtRQUVGLE9BQU8sSUFBQSw4QkFBZSxFQUNwQixHQUFHLEVBQ0gsSUFBQSxvQ0FBcUIsRUFBQyxJQUFJLEVBQUUsbURBQW1ELEVBQUUseUJBQVUsQ0FBQyxFQUFFLENBQUMsQ0FDaEcsQ0FBQztJQUNKLENBQUM7SUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxJQUFBLDhCQUFlLEVBQ3BCLEdBQUcsRUFDSCxJQUFBLGtDQUFtQixFQUFDLEtBQUssQ0FBQyxPQUFPLElBQUksOENBQThDLEVBQUUseUJBQVUsQ0FBQyxxQkFBcUIsRUFBRSx3QkFBUyxDQUFDLGNBQWMsRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FDekssQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQUM7QUF0QlcsUUFBQSxHQUFHLE9Bc0JkIn0=
@@ -0,0 +1,3 @@
1
+ import { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework";
2
+ import { deleteBulkReviewType } from "../validators";
3
+ export declare const POST: (req: AuthenticatedMedusaRequest<deleteBulkReviewType>, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.POST = void 0;
4
+ const delete_product_review_1 = require("../../../../workflows/product-reviews/workflows/delete-product-review");
5
+ const api_response_1 = require("../../../../lib/api-response");
6
+ const POST = async (req, res) => {
7
+ const { data } = req.validatedBody;
8
+ const result = await Promise.all(data.map(async (review) => {
9
+ await (0, delete_product_review_1.deleteProductReviewWorkflow)(req.scope).run({ input: { id: review.id } });
10
+ }));
11
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({ message: "Product review deleted successfully" }));
12
+ };
13
+ exports.POST = POST;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb2R1Y3QtcmV2aWV3cy9kZWxldGUvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsaUhBQW9IO0FBQ3BILCtEQUFzRjtBQUUvRSxNQUFNLElBQUksR0FBRyxLQUFLLEVBQ3ZCLEdBQXFELEVBQ3JELEdBQW1CLEVBQ25CLEVBQUU7SUFDRixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQztJQUVuQyxNQUFNLE1BQU0sR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDekQsTUFBTSxJQUFBLG1EQUEyQixFQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqRixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRUosT0FBTyxJQUFBLDhCQUFlLEVBQUMsR0FBRyxFQUFFLElBQUEsb0NBQXFCLEVBQUMsRUFBRSxPQUFPLEVBQUUscUNBQXFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDekcsQ0FBQyxDQUFDO0FBWFcsUUFBQSxJQUFJLFFBV2YifQ==
@@ -0,0 +1,149 @@
1
+ import { type MiddlewareRoute } from "@medusajs/framework";
2
+ import { z } from "zod";
3
+ export declare const listAdminProductReviewsQuerySchema: z.ZodObject<{
4
+ offset: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodNumber>>, number, unknown>;
5
+ limit: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodNumber>>, number, unknown>;
6
+ fields: z.ZodOptional<z.ZodString>;
7
+ order: z.ZodOptional<z.ZodString> | z.ZodDefault<z.ZodOptional<z.ZodString>>;
8
+ q: z.ZodOptional<z.ZodString>;
9
+ id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
10
+ product_id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
11
+ order_id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
12
+ rating: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
13
+ category_id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
14
+ created_at: z.ZodOptional<z.ZodUnion<[any, z.ZodObject<{
15
+ $eq: any;
16
+ $ne: any;
17
+ $in: any;
18
+ $nin: any;
19
+ $like: any;
20
+ $ilike: any;
21
+ $re: any;
22
+ $contains: any;
23
+ $gt: any;
24
+ $gte: any;
25
+ $lt: any;
26
+ $lte: any;
27
+ }, "strip", z.ZodTypeAny, {
28
+ $eq?: any;
29
+ $ne?: any;
30
+ $in?: any;
31
+ $nin?: any;
32
+ $like?: any;
33
+ $ilike?: any;
34
+ $re?: any;
35
+ $contains?: any;
36
+ $gt?: any;
37
+ $gte?: any;
38
+ $lt?: any;
39
+ $lte?: any;
40
+ }, {
41
+ $eq?: any;
42
+ $ne?: any;
43
+ $in?: any;
44
+ $nin?: any;
45
+ $like?: any;
46
+ $ilike?: any;
47
+ $re?: any;
48
+ $contains?: any;
49
+ $gt?: any;
50
+ $gte?: any;
51
+ $lt?: any;
52
+ $lte?: any;
53
+ }>]>>;
54
+ updated_at: z.ZodOptional<z.ZodUnion<[any, z.ZodObject<{
55
+ $eq: any;
56
+ $ne: any;
57
+ $in: any;
58
+ $nin: any;
59
+ $like: any;
60
+ $ilike: any;
61
+ $re: any;
62
+ $contains: any;
63
+ $gt: any;
64
+ $gte: any;
65
+ $lt: any;
66
+ $lte: any;
67
+ }, "strip", z.ZodTypeAny, {
68
+ $eq?: any;
69
+ $ne?: any;
70
+ $in?: any;
71
+ $nin?: any;
72
+ $like?: any;
73
+ $ilike?: any;
74
+ $re?: any;
75
+ $contains?: any;
76
+ $gt?: any;
77
+ $gte?: any;
78
+ $lt?: any;
79
+ $lte?: any;
80
+ }, {
81
+ $eq?: any;
82
+ $ne?: any;
83
+ $in?: any;
84
+ $nin?: any;
85
+ $like?: any;
86
+ $ilike?: any;
87
+ $re?: any;
88
+ $contains?: any;
89
+ $gt?: any;
90
+ $gte?: any;
91
+ $lt?: any;
92
+ $lte?: any;
93
+ }>]>>;
94
+ is_admin_verified: z.ZodOptional<z.ZodEnum<["true", "false"]>>;
95
+ }, "strip", z.ZodTypeAny, {
96
+ offset: number;
97
+ limit: number;
98
+ fields?: string | undefined;
99
+ order?: string | undefined;
100
+ q?: string | undefined;
101
+ id?: string | string[] | undefined;
102
+ product_id?: string | string[] | undefined;
103
+ order_id?: string | string[] | undefined;
104
+ rating?: string | string[] | undefined;
105
+ category_id?: string | string[] | undefined;
106
+ created_at?: any;
107
+ updated_at?: any;
108
+ is_admin_verified?: "true" | "false" | undefined;
109
+ }, {
110
+ offset?: unknown;
111
+ limit?: unknown;
112
+ fields?: string | undefined;
113
+ order?: string | undefined;
114
+ q?: string | undefined;
115
+ id?: string | string[] | undefined;
116
+ product_id?: string | string[] | undefined;
117
+ order_id?: string | string[] | undefined;
118
+ rating?: string | string[] | undefined;
119
+ category_id?: string | string[] | undefined;
120
+ created_at?: any;
121
+ updated_at?: any;
122
+ is_admin_verified?: "true" | "false" | undefined;
123
+ }>;
124
+ export declare const defaultAdminProductReviewFields: string[];
125
+ export declare const defaultProductReviewsQueryConfig: {
126
+ defaults: string[];
127
+ defaultLimit: number;
128
+ isList: boolean;
129
+ };
130
+ export declare const bulkUploadProductReviewsSchema: z.ZodObject<{
131
+ csv_url: z.ZodString;
132
+ }, "strip", z.ZodTypeAny, {
133
+ csv_url: string;
134
+ }, {
135
+ csv_url: string;
136
+ }>;
137
+ export type BulkUploadProductReviewsDTO = z.infer<typeof bulkUploadProductReviewsSchema>;
138
+ export declare const updateProductReviewConfigSchema: z.ZodObject<{
139
+ key: z.ZodString;
140
+ value: z.ZodBoolean;
141
+ }, "strip", z.ZodTypeAny, {
142
+ key: string;
143
+ value: boolean;
144
+ }, {
145
+ key: string;
146
+ value: boolean;
147
+ }>;
148
+ export type UpdateProductReviewConfigDTO = z.infer<typeof updateProductReviewConfigSchema>;
149
+ export declare const adminProductReviewRoutesMiddlewares: MiddlewareRoute[];
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.adminProductReviewRoutesMiddlewares = exports.updateProductReviewConfigSchema = exports.bulkUploadProductReviewsSchema = exports.defaultProductReviewsQueryConfig = exports.defaultAdminProductReviewFields = exports.listAdminProductReviewsQuerySchema = void 0;
4
+ const framework_1 = require("@medusajs/framework");
5
+ const validators_1 = require("@medusajs/medusa/api/utils/validators");
6
+ const zod_1 = require("zod");
7
+ const validators_2 = require("./validators");
8
+ exports.listAdminProductReviewsQuerySchema = (0, validators_1.createFindParams)({
9
+ offset: 0,
10
+ limit: 50,
11
+ }).merge(zod_1.z.object({
12
+ q: zod_1.z.string().optional(),
13
+ id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
14
+ product_id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
15
+ order_id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
16
+ rating: zod_1.z
17
+ .union([zod_1.z.string().max(5).min(1), zod_1.z.array(zod_1.z.string().max(5).min(1))])
18
+ .optional(),
19
+ category_id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
20
+ created_at: (0, validators_1.createOperatorMap)().optional(),
21
+ updated_at: (0, validators_1.createOperatorMap)().optional(),
22
+ is_admin_verified: zod_1.z.enum(["true", "false"]).optional(),
23
+ }));
24
+ exports.defaultAdminProductReviewFields = [
25
+ "id",
26
+ "is_admin_verified",
27
+ "title",
28
+ "description",
29
+ "is_verified_purchase",
30
+ "product_id",
31
+ "rating",
32
+ "name",
33
+ "email",
34
+ "content",
35
+ "order_id",
36
+ "created_at",
37
+ "updated_at",
38
+ "response.*",
39
+ "associated_medias.*",
40
+ "product.*",
41
+ "response.*",
42
+ ];
43
+ exports.defaultProductReviewsQueryConfig = {
44
+ defaults: [...exports.defaultAdminProductReviewFields],
45
+ defaultLimit: 50,
46
+ isList: true,
47
+ };
48
+ exports.bulkUploadProductReviewsSchema = zod_1.z.object({
49
+ csv_url: zod_1.z.string(),
50
+ });
51
+ exports.updateProductReviewConfigSchema = zod_1.z.object({
52
+ key: zod_1.z.string(),
53
+ value: zod_1.z.boolean(),
54
+ });
55
+ exports.adminProductReviewRoutesMiddlewares = [
56
+ {
57
+ matcher: "/admin/product-reviews",
58
+ method: "GET",
59
+ middlewares: [
60
+ (0, framework_1.validateAndTransformQuery)(exports.listAdminProductReviewsQuerySchema, exports.defaultProductReviewsQueryConfig),
61
+ ],
62
+ },
63
+ {
64
+ matcher: "/admin/product-reviews/bulk-upload",
65
+ method: "POST",
66
+ middlewares: [(0, framework_1.validateAndTransformBody)(exports.bulkUploadProductReviewsSchema)],
67
+ },
68
+ {
69
+ matcher: "/admin/product-reviews/config",
70
+ method: "PUT",
71
+ middlewares: [(0, framework_1.validateAndTransformBody)(exports.updateProductReviewConfigSchema)],
72
+ },
73
+ {
74
+ matcher: "/admin/product-reviews/delete",
75
+ method: "POST",
76
+ middlewares: [(0, framework_1.validateAndTransformBody)(validators_2.deleteBulkReviewSchema)],
77
+ },
78
+ {
79
+ matcher: "/admin/product-reviews",
80
+ method: "PUT",
81
+ middlewares: [(0, framework_1.validateAndTransformBody)(validators_2.updateReviewSchema)],
82
+ }
83
+ ];
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb2R1Y3QtcmV2aWV3cy9taWRkbGV3YXJlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFJNkI7QUFDN0Isc0VBRytDO0FBQy9DLDZCQUF3QjtBQUN4Qiw2Q0FBMEU7QUFFN0QsUUFBQSxrQ0FBa0MsR0FBRyxJQUFBLDZCQUFnQixFQUFDO0lBQ2pFLE1BQU0sRUFBRSxDQUFDO0lBQ1QsS0FBSyxFQUFFLEVBQUU7Q0FDVixDQUFDLENBQUMsS0FBSyxDQUNOLE9BQUMsQ0FBQyxNQUFNLENBQUM7SUFDUCxDQUFDLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUN4QixFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDekQsVUFBVSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ2pFLFFBQVEsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUMvRCxNQUFNLEVBQUUsT0FBQztTQUNOLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3BFLFFBQVEsRUFBRTtJQUNiLFdBQVcsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtJQUNsRSxVQUFVLEVBQUUsSUFBQSw4QkFBaUIsR0FBRSxDQUFDLFFBQVEsRUFBRTtJQUMxQyxVQUFVLEVBQUUsSUFBQSw4QkFBaUIsR0FBRSxDQUFDLFFBQVEsRUFBRTtJQUMxQyxpQkFBaUIsRUFBRSxPQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQ3hELENBQUMsQ0FDSCxDQUFDO0FBRVcsUUFBQSwrQkFBK0IsR0FBRztJQUM3QyxJQUFJO0lBQ0osbUJBQW1CO0lBQ25CLE9BQU87SUFDUCxhQUFhO0lBQ2Isc0JBQXNCO0lBQ3RCLFlBQVk7SUFDWixRQUFRO0lBQ1IsTUFBTTtJQUNOLE9BQU87SUFDUCxTQUFTO0lBQ1QsVUFBVTtJQUNWLFlBQVk7SUFDWixZQUFZO0lBQ1osWUFBWTtJQUNaLHFCQUFxQjtJQUNyQixXQUFXO0lBQ1gsWUFBWTtDQUNiLENBQUM7QUFFVyxRQUFBLGdDQUFnQyxHQUFHO0lBQzlDLFFBQVEsRUFBRSxDQUFDLEdBQUcsdUNBQStCLENBQUM7SUFDOUMsWUFBWSxFQUFFLEVBQUU7SUFDaEIsTUFBTSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRVcsUUFBQSw4QkFBOEIsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3JELE9BQU8sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFO0NBQ3BCLENBQUMsQ0FBQztBQU1VLFFBQUEsK0JBQStCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUN0RCxHQUFHLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtJQUNmLEtBQUssRUFBRSxPQUFDLENBQUMsT0FBTyxFQUFFO0NBQ25CLENBQUMsQ0FBQztBQU1VLFFBQUEsbUNBQW1DLEdBQXNCO0lBQ3BFO1FBQ0UsT0FBTyxFQUFFLHdCQUF3QjtRQUNqQyxNQUFNLEVBQUUsS0FBSztRQUNiLFdBQVcsRUFBRTtZQUNYLElBQUEscUNBQXlCLEVBQ3ZCLDBDQUFrQyxFQUNsQyx3Q0FBZ0MsQ0FDakM7U0FDRjtLQUNGO0lBQ0Q7UUFDRSxPQUFPLEVBQUUsb0NBQW9DO1FBQzdDLE1BQU0sRUFBRSxNQUFNO1FBQ2QsV0FBVyxFQUFFLENBQUMsSUFBQSxvQ0FBd0IsRUFBQyxzQ0FBOEIsQ0FBQyxDQUFDO0tBQ3hFO0lBQ0Q7UUFDRSxPQUFPLEVBQUUsK0JBQStCO1FBQ3hDLE1BQU0sRUFBRSxLQUFLO1FBQ2IsV0FBVyxFQUFFLENBQUMsSUFBQSxvQ0FBd0IsRUFBQyx1Q0FBK0IsQ0FBQyxDQUFDO0tBQ3pFO0lBQ0Q7UUFDRSxPQUFPLEVBQUUsK0JBQStCO1FBQ3hDLE1BQU0sRUFBRSxNQUFNO1FBQ2QsV0FBVyxFQUFFLENBQUMsSUFBQSxvQ0FBd0IsRUFBQyxtQ0FBc0IsQ0FBQyxDQUFDO0tBQ2hFO0lBQ0Q7UUFDRSxPQUFPLEVBQUUsd0JBQXdCO1FBQ2pDLE1BQU0sRUFBRSxLQUFLO1FBQ2IsV0FBVyxFQUFFLENBQUMsSUFBQSxvQ0FBd0IsRUFBQywrQkFBa0IsQ0FBQyxDQUFDO0tBQzVEO0NBQ0YsQ0FBQyJ9
@@ -0,0 +1,4 @@
1
+ import { type AuthenticatedMedusaRequest, type MedusaResponse } from "@medusajs/framework";
2
+ import { updateReviewType } from "./validators";
3
+ export declare const GET: (req: AuthenticatedMedusaRequest, res: MedusaResponse) => Promise<void>;
4
+ export declare const PUT: (req: AuthenticatedMedusaRequest<updateReviewType>, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PUT = exports.GET = void 0;
4
+ const framework_1 = require("@medusajs/framework");
5
+ const api_response_1 = require("../../../lib/api-response");
6
+ const utils_1 = require("@medusajs/framework/utils");
7
+ const update_product_review_1 = require("../../../workflows/product-reviews/workflows/update-product-review");
8
+ const GET = async (req, res) => {
9
+ const query = req.scope.resolve("query");
10
+ const productService = framework_1.container.resolve(utils_1.Modules.PRODUCT);
11
+ const { category_id } = req.query;
12
+ if (category_id) {
13
+ let categoryIds = [];
14
+ if (Array.isArray(category_id)) {
15
+ categoryIds = category_id;
16
+ }
17
+ else if (typeof category_id === "string") {
18
+ categoryIds = [category_id];
19
+ }
20
+ const products = await productService.listProducts({
21
+ categories: { id: { $in: categoryIds } }
22
+ });
23
+ const productIds = products.map(product => product.id);
24
+ req.filterableFields.product_id = productIds;
25
+ delete req.filterableFields.category_id;
26
+ }
27
+ const { data, metadata } = await query.graph({
28
+ entity: "product_review",
29
+ ...req.queryConfig,
30
+ filters: { ...req.filterableFields },
31
+ });
32
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({
33
+ reviews: data,
34
+ count: metadata?.count || 0,
35
+ offset: metadata?.skip || 0,
36
+ limit: metadata?.take || 10,
37
+ }));
38
+ };
39
+ exports.GET = GET;
40
+ const PUT = async (req, res) => {
41
+ const { data } = req.validatedBody;
42
+ await Promise.all(data.map(async (review) => {
43
+ await (0, update_product_review_1.updateProductReviewWorkflow)(req.scope).run({
44
+ input: {
45
+ id: review.id,
46
+ name: review.name,
47
+ email: review.email,
48
+ phone: review.phone,
49
+ rating: review.rating,
50
+ title: review.title,
51
+ description: review.content,
52
+ is_verified_purchase: review.is_verified_purchase,
53
+ is_admin_verified: review.is_admin_verified,
54
+ created_at: review.created_at,
55
+ updated_at: review.updated_at,
56
+ },
57
+ });
58
+ }));
59
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({ message: "Product review updated successfully" }));
60
+ };
61
+ exports.PUT = PUT;
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3Byb2R1Y3QtcmV2aWV3cy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFJNkI7QUFFN0IsNERBR21DO0FBQ25DLHFEQUFvRDtBQUVwRCw4R0FBaUg7QUFHMUcsTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUN0QixHQUErQixFQUMvQixHQUFtQixFQUNuQixFQUFFO0lBQ0YsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsTUFBTSxjQUFjLEdBQUcscUJBQVMsQ0FBQyxPQUFPLENBQUMsZUFBTyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBRXpELE1BQU0sRUFBRSxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO0lBRWxDLElBQUksV0FBVyxFQUFFLENBQUM7UUFDaEIsSUFBSSxXQUFXLEdBQWEsRUFBRSxDQUFDO1FBQy9CLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQy9CLFdBQVcsR0FBRyxXQUF1QixDQUFDO1FBQ3hDLENBQUM7YUFBTSxJQUFJLE9BQU8sV0FBVyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzNDLFdBQVcsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzlCLENBQUM7UUFFRCxNQUFNLFFBQVEsR0FBRyxNQUFNLGNBQWMsQ0FBQyxZQUFZLENBQUM7WUFDakQsVUFBVSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLFdBQVcsRUFBRSxFQUFFO1NBQ3pDLENBQUMsQ0FBQztRQUVILE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkQsR0FBRyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFFN0MsT0FBTyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDO0lBQzFDLENBQUM7SUFFRCxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FBQztRQUMzQyxNQUFNLEVBQUUsZ0JBQWdCO1FBQ3hCLEdBQUcsR0FBRyxDQUFDLFdBQVc7UUFDbEIsT0FBTyxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsZ0JBQWdCLEVBQUU7S0FDckMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFBLDhCQUFlLEVBQ3BCLEdBQUcsRUFDSCxJQUFBLG9DQUFxQixFQUFDO1FBQ3BCLE9BQU8sRUFBRSxJQUFJO1FBQ2IsS0FBSyxFQUFFLFFBQVEsRUFBRSxLQUFLLElBQUksQ0FBQztRQUMzQixNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDO1FBQzNCLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxJQUFJLEVBQUU7S0FDNUIsQ0FBQyxDQUNILENBQUM7QUFDSixDQUFDLENBQUM7QUExQ1csUUFBQSxHQUFHLE9BMENkO0FBRUssTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUN0QixHQUFpRCxFQUNqRCxHQUFtQixFQUNuQixFQUFFO0lBQ0YsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUM7SUFFbkMsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNmLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQ3hCLE1BQU0sSUFBQSxtREFBMkIsRUFBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQy9DLEtBQUssRUFBRTtnQkFDTCxFQUFFLEVBQUUsTUFBTSxDQUFDLEVBQUU7Z0JBQ2IsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7Z0JBQ25CLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSztnQkFDbkIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNO2dCQUNyQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7Z0JBQ25CLFdBQVcsRUFBRSxNQUFNLENBQUMsT0FBTztnQkFDM0Isb0JBQW9CLEVBQUUsTUFBTSxDQUFDLG9CQUFvQjtnQkFDakQsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLGlCQUFpQjtnQkFDM0MsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVO2dCQUM3QixVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVU7YUFDOUI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBRUYsT0FBTyxJQUFBLDhCQUFlLEVBQUMsR0FBRyxFQUFFLElBQUEsb0NBQXFCLEVBQUMsRUFBRSxPQUFPLEVBQUUscUNBQXFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDekcsQ0FBQyxDQUFDO0FBM0JXLFFBQUEsR0FBRyxPQTJCZCJ9
@@ -0,0 +1,87 @@
1
+ import { z } from "zod";
2
+ export declare const updateReviewSchema: z.ZodObject<{
3
+ data: z.ZodArray<z.ZodObject<{
4
+ id: z.ZodString;
5
+ name: z.ZodOptional<z.ZodString>;
6
+ email: z.ZodOptional<z.ZodString>;
7
+ phone: z.ZodOptional<z.ZodString>;
8
+ rating: z.ZodOptional<z.ZodNumber>;
9
+ title: z.ZodOptional<z.ZodString>;
10
+ content: z.ZodOptional<z.ZodString>;
11
+ is_verified_purchase: z.ZodOptional<z.ZodBoolean>;
12
+ is_admin_verified: z.ZodOptional<z.ZodBoolean>;
13
+ created_at: z.ZodOptional<z.ZodDate>;
14
+ updated_at: z.ZodOptional<z.ZodDate>;
15
+ }, "strip", z.ZodTypeAny, {
16
+ id: string;
17
+ name?: string | undefined;
18
+ email?: string | undefined;
19
+ phone?: string | undefined;
20
+ rating?: number | undefined;
21
+ title?: string | undefined;
22
+ content?: string | undefined;
23
+ is_verified_purchase?: boolean | undefined;
24
+ is_admin_verified?: boolean | undefined;
25
+ created_at?: Date | undefined;
26
+ updated_at?: Date | undefined;
27
+ }, {
28
+ id: string;
29
+ name?: string | undefined;
30
+ email?: string | undefined;
31
+ phone?: string | undefined;
32
+ rating?: number | undefined;
33
+ title?: string | undefined;
34
+ content?: string | undefined;
35
+ is_verified_purchase?: boolean | undefined;
36
+ is_admin_verified?: boolean | undefined;
37
+ created_at?: Date | undefined;
38
+ updated_at?: Date | undefined;
39
+ }>, "many">;
40
+ }, "strip", z.ZodTypeAny, {
41
+ data: {
42
+ id: string;
43
+ name?: string | undefined;
44
+ email?: string | undefined;
45
+ phone?: string | undefined;
46
+ rating?: number | undefined;
47
+ title?: string | undefined;
48
+ content?: string | undefined;
49
+ is_verified_purchase?: boolean | undefined;
50
+ is_admin_verified?: boolean | undefined;
51
+ created_at?: Date | undefined;
52
+ updated_at?: Date | undefined;
53
+ }[];
54
+ }, {
55
+ data: {
56
+ id: string;
57
+ name?: string | undefined;
58
+ email?: string | undefined;
59
+ phone?: string | undefined;
60
+ rating?: number | undefined;
61
+ title?: string | undefined;
62
+ content?: string | undefined;
63
+ is_verified_purchase?: boolean | undefined;
64
+ is_admin_verified?: boolean | undefined;
65
+ created_at?: Date | undefined;
66
+ updated_at?: Date | undefined;
67
+ }[];
68
+ }>;
69
+ export type updateReviewType = z.infer<typeof updateReviewSchema>;
70
+ export declare const deleteBulkReviewSchema: z.ZodObject<{
71
+ data: z.ZodArray<z.ZodObject<{
72
+ id: z.ZodString;
73
+ }, "strip", z.ZodTypeAny, {
74
+ id: string;
75
+ }, {
76
+ id: string;
77
+ }>, "many">;
78
+ }, "strip", z.ZodTypeAny, {
79
+ data: {
80
+ id: string;
81
+ }[];
82
+ }, {
83
+ data: {
84
+ id: string;
85
+ }[];
86
+ }>;
87
+ export type deleteBulkReviewType = z.infer<typeof deleteBulkReviewSchema>;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deleteBulkReviewSchema = exports.updateReviewSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ exports.updateReviewSchema = zod_1.z.object({
6
+ data: zod_1.z.array(zod_1.z.object({
7
+ id: zod_1.z.string(),
8
+ name: zod_1.z.string().optional(),
9
+ email: zod_1.z.string().optional(),
10
+ phone: zod_1.z.string().optional(),
11
+ rating: zod_1.z.coerce.number().min(1).max(5).optional(),
12
+ title: zod_1.z.string().optional(),
13
+ content: zod_1.z.string().optional(),
14
+ is_verified_purchase: zod_1.z.boolean().optional(),
15
+ is_admin_verified: zod_1.z.boolean().optional(),
16
+ created_at: zod_1.z.coerce.date().optional(),
17
+ updated_at: zod_1.z.coerce.date().optional(),
18
+ })),
19
+ });
20
+ exports.deleteBulkReviewSchema = zod_1.z.object({
21
+ data: zod_1.z.array(zod_1.z.object({
22
+ id: zod_1.z.string(),
23
+ })),
24
+ });
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcGkvYWRtaW4vcHJvZHVjdC1yZXZpZXdzL3ZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQXdCO0FBRVgsUUFBQSxrQkFBa0IsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3pDLElBQUksRUFBRSxPQUFDLENBQUMsS0FBSyxDQUNYLE9BQUMsQ0FBQyxNQUFNLENBQUM7UUFDUCxFQUFFLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRTtRQUNkLElBQUksRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQzNCLEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQzVCLEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQzVCLE1BQU0sRUFBRSxPQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO1FBQ2xELEtBQUssRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQzVCLE9BQU8sRUFBRSxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxFQUFFO1FBQzlCLG9CQUFvQixFQUFFLE9BQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDNUMsaUJBQWlCLEVBQUUsT0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRTtRQUN6QyxVQUFVLEVBQUUsT0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7UUFDdEMsVUFBVSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFO0tBQ3ZDLENBQUMsQ0FDSDtDQUNGLENBQUMsQ0FBQztBQUlVLFFBQUEsc0JBQXNCLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUM3QyxJQUFJLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FDWCxPQUFDLENBQUMsTUFBTSxDQUFDO1FBQ1AsRUFBRSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUU7S0FDZixDQUFDLENBQ0g7Q0FDRixDQUFDLENBQUMifQ==
@@ -0,0 +1,2 @@
1
+ declare const _default: import("@medusajs/medusa").MiddlewaresConfig;
2
+ export default _default;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const medusa_1 = require("@medusajs/medusa");
4
+ const middlewares_1 = require("./admin/product-reviews/middlewares");
5
+ const middlewares_2 = require("./admin/product-review-stats/middlewares");
6
+ const middlewares_3 = require("./store/product-reviews/middlewares");
7
+ const middlewares_4 = require("./admin/product-reviews/[id]/response/middlewares");
8
+ const middlewares_5 = require("./store/product-review-stats/middlewares");
9
+ const middlewares_6 = require("./admin/product-reviews/[id]/status/middlewares");
10
+ exports.default = (0, medusa_1.defineMiddlewares)({
11
+ routes: [
12
+ ...middlewares_1.adminProductReviewRoutesMiddlewares,
13
+ ...middlewares_2.adminProductReviewStatRoutesMiddlewares,
14
+ ...middlewares_4.adminProductReviewResponseRouteMiddlewares,
15
+ ...middlewares_6.adminProductReviewStatusRoutesMiddlewares,
16
+ // Store
17
+ ...middlewares_3.storeProductReviewRoutesMiddlewares,
18
+ ...middlewares_5.storeProductReviewStatRoutesMiddlewares,
19
+ ],
20
+ });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBpL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsNkNBQXFEO0FBQ3JELHFFQUEwRjtBQUMxRiwwRUFBbUc7QUFDbkcscUVBQTBGO0FBQzFGLG1GQUErRztBQUMvRywwRUFBbUc7QUFDbkcsaUZBQTRHO0FBRTVHLGtCQUFlLElBQUEsMEJBQWlCLEVBQUM7SUFDL0IsTUFBTSxFQUFFO1FBQ04sR0FBRyxpREFBbUM7UUFDdEMsR0FBRyxxREFBdUM7UUFDMUMsR0FBRyx3REFBMEM7UUFDN0MsR0FBRyx1REFBeUM7UUFFNUMsUUFBUTtRQUNSLEdBQUcsaURBQW1DO1FBQ3RDLEdBQUcscURBQXVDO0tBQzNDO0NBQ0YsQ0FBQyxDQUFDIn0=