@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,118 @@
1
+ import { type MiddlewareRoute } from '@medusajs/framework';
2
+ import { z } from 'zod';
3
+ export declare const listStoreProductReviewStatsQuerySchema: 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
+ id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
9
+ product_id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
10
+ average_rating: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>>;
11
+ created_at: z.ZodOptional<z.ZodUnion<[any, z.ZodObject<{
12
+ $eq: any;
13
+ $ne: any;
14
+ $in: any;
15
+ $nin: any;
16
+ $like: any;
17
+ $ilike: any;
18
+ $re: any;
19
+ $contains: any;
20
+ $gt: any;
21
+ $gte: any;
22
+ $lt: any;
23
+ $lte: any;
24
+ }, "strip", z.ZodTypeAny, {
25
+ $eq?: any;
26
+ $ne?: any;
27
+ $in?: any;
28
+ $nin?: any;
29
+ $like?: any;
30
+ $ilike?: any;
31
+ $re?: any;
32
+ $contains?: any;
33
+ $gt?: any;
34
+ $gte?: any;
35
+ $lt?: any;
36
+ $lte?: any;
37
+ }, {
38
+ $eq?: any;
39
+ $ne?: any;
40
+ $in?: any;
41
+ $nin?: any;
42
+ $like?: any;
43
+ $ilike?: any;
44
+ $re?: any;
45
+ $contains?: any;
46
+ $gt?: any;
47
+ $gte?: any;
48
+ $lt?: any;
49
+ $lte?: any;
50
+ }>]>>;
51
+ updated_at: z.ZodOptional<z.ZodUnion<[any, z.ZodObject<{
52
+ $eq: any;
53
+ $ne: any;
54
+ $in: any;
55
+ $nin: any;
56
+ $like: any;
57
+ $ilike: any;
58
+ $re: any;
59
+ $contains: any;
60
+ $gt: any;
61
+ $gte: any;
62
+ $lt: any;
63
+ $lte: any;
64
+ }, "strip", z.ZodTypeAny, {
65
+ $eq?: any;
66
+ $ne?: any;
67
+ $in?: any;
68
+ $nin?: any;
69
+ $like?: any;
70
+ $ilike?: any;
71
+ $re?: any;
72
+ $contains?: any;
73
+ $gt?: any;
74
+ $gte?: any;
75
+ $lt?: any;
76
+ $lte?: any;
77
+ }, {
78
+ $eq?: any;
79
+ $ne?: any;
80
+ $in?: any;
81
+ $nin?: any;
82
+ $like?: any;
83
+ $ilike?: any;
84
+ $re?: any;
85
+ $contains?: any;
86
+ $gt?: any;
87
+ $gte?: any;
88
+ $lt?: any;
89
+ $lte?: any;
90
+ }>]>>;
91
+ }, "strip", z.ZodTypeAny, {
92
+ offset: number;
93
+ limit: number;
94
+ fields?: string | undefined;
95
+ order?: string | undefined;
96
+ id?: string | string[] | undefined;
97
+ product_id?: string | string[] | undefined;
98
+ average_rating?: number | number[] | undefined;
99
+ created_at?: any;
100
+ updated_at?: any;
101
+ }, {
102
+ offset?: unknown;
103
+ limit?: unknown;
104
+ fields?: string | undefined;
105
+ order?: string | undefined;
106
+ id?: string | string[] | undefined;
107
+ product_id?: string | string[] | undefined;
108
+ average_rating?: number | number[] | undefined;
109
+ created_at?: any;
110
+ updated_at?: any;
111
+ }>;
112
+ export declare const defaultStoreProductReviewStatFields: string[];
113
+ export declare const defaultStoreProductReviewStatsQueryConfig: {
114
+ defaults: string[];
115
+ defaultLimit: number;
116
+ isList: boolean;
117
+ };
118
+ export declare const storeProductReviewStatRoutesMiddlewares: MiddlewareRoute[];
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.storeProductReviewStatRoutesMiddlewares = exports.defaultStoreProductReviewStatsQueryConfig = exports.defaultStoreProductReviewStatFields = exports.listStoreProductReviewStatsQuerySchema = 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
+ exports.listStoreProductReviewStatsQuerySchema = (0, validators_1.createFindParams)({
8
+ offset: 0,
9
+ limit: 50,
10
+ }).merge(zod_1.z.object({
11
+ id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
12
+ product_id: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
13
+ average_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(),
14
+ created_at: (0, validators_1.createOperatorMap)().optional(),
15
+ updated_at: (0, validators_1.createOperatorMap)().optional(),
16
+ }));
17
+ exports.defaultStoreProductReviewStatFields = [
18
+ 'id',
19
+ 'product_id',
20
+ 'average_rating',
21
+ 'review_count',
22
+ 'rating_count_1',
23
+ 'rating_count_2',
24
+ 'rating_count_3',
25
+ 'rating_count_4',
26
+ 'rating_count_5',
27
+ 'created_at',
28
+ 'updated_at',
29
+ ];
30
+ exports.defaultStoreProductReviewStatsQueryConfig = {
31
+ defaults: [...exports.defaultStoreProductReviewStatFields],
32
+ defaultLimit: 50,
33
+ isList: true,
34
+ };
35
+ exports.storeProductReviewStatRoutesMiddlewares = [
36
+ {
37
+ matcher: '/store/product-review-stats',
38
+ method: 'GET',
39
+ middlewares: [
40
+ (0, framework_1.validateAndTransformQuery)(exports.listStoreProductReviewStatsQuerySchema, exports.defaultStoreProductReviewStatsQueryConfig),
41
+ ],
42
+ },
43
+ ];
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3Byb2R1Y3QtcmV2aWV3LXN0YXRzL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFzRjtBQUN0RixzRUFBNEY7QUFDNUYsNkJBQXdCO0FBRVgsUUFBQSxzQ0FBc0MsR0FBRyxJQUFBLDZCQUFnQixFQUFDO0lBQ3JFLE1BQU0sRUFBRSxDQUFDO0lBQ1QsS0FBSyxFQUFFLEVBQUU7Q0FDVixDQUFDLENBQUMsS0FBSyxDQUNOLE9BQUMsQ0FBQyxNQUFNLENBQUM7SUFDUCxFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDekQsVUFBVSxFQUFFLE9BQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFO0lBQ2pFLGNBQWMsRUFBRSxPQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUU7SUFDakcsVUFBVSxFQUFFLElBQUEsOEJBQWlCLEdBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDMUMsVUFBVSxFQUFFLElBQUEsOEJBQWlCLEdBQUUsQ0FBQyxRQUFRLEVBQUU7Q0FDM0MsQ0FBQyxDQUNILENBQUM7QUFFVyxRQUFBLG1DQUFtQyxHQUFHO0lBQ2pELElBQUk7SUFDSixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixZQUFZO0NBQ2IsQ0FBQztBQUVXLFFBQUEseUNBQXlDLEdBQUc7SUFDdkQsUUFBUSxFQUFFLENBQUMsR0FBRywyQ0FBbUMsQ0FBQztJQUNsRCxZQUFZLEVBQUUsRUFBRTtJQUNoQixNQUFNLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFVyxRQUFBLHVDQUF1QyxHQUFzQjtJQUN4RTtRQUNFLE9BQU8sRUFBRSw2QkFBNkI7UUFDdEMsTUFBTSxFQUFFLEtBQUs7UUFDYixXQUFXLEVBQUU7WUFDWCxJQUFBLHFDQUF5QixFQUFDLDhDQUFzQyxFQUFFLGlEQUF5QyxDQUFDO1NBQzdHO0tBQ0Y7Q0FDRixDQUFDIn0=
@@ -0,0 +1,2 @@
1
+ import type { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework";
2
+ export declare const GET: (req: AuthenticatedMedusaRequest, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = void 0;
4
+ const utils_1 = require("@medusajs/framework/utils");
5
+ const api_response_1 = require("../../../lib/api-response");
6
+ const GET = async (req, res) => {
7
+ const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
8
+ const { data, metadata } = await query.graph({
9
+ entity: "product_review_stats",
10
+ ...req.queryConfig,
11
+ filters: req.filterableFields,
12
+ });
13
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({ data, metadata }, "Product review stats fetched successfully", api_response_1.HttpStatus.OK));
14
+ };
15
+ exports.GET = GET;
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3Byb2R1Y3QtcmV2aWV3LXN0YXRzL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBLHFEQUFzRTtBQUV0RSw0REFJbUM7QUFFNUIsTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUN0QixHQUErQixFQUMvQixHQUFtQixFQUNuQixFQUFFO0lBQ0YsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsaUNBQXlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFakUsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDM0MsTUFBTSxFQUFFLHNCQUFzQjtRQUM5QixHQUFHLEdBQUcsQ0FBQyxXQUFXO1FBQ2xCLE9BQU8sRUFBRSxHQUFHLENBQUMsZ0JBQWdCO0tBQzlCLENBQUMsQ0FBQztJQUVILE9BQU8sSUFBQSw4QkFBZSxFQUNwQixHQUFHLEVBQ0gsSUFBQSxvQ0FBcUIsRUFDbkIsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEVBQ2xCLDJDQUEyQyxFQUMzQyx5QkFBVSxDQUFDLEVBQUUsQ0FDZCxDQUNGLENBQUM7QUFDSixDQUFDLENBQUM7QUFwQlcsUUFBQSxHQUFHLE9Bb0JkIn0=
@@ -0,0 +1,3 @@
1
+ import type { AuthenticatedMedusaRequest, MedusaResponse } from "@medusajs/framework";
2
+ import type { UpdateProductReviewsSchemaType } from "../../product-reviews/middlewares";
3
+ export declare const PUT: (req: AuthenticatedMedusaRequest<UpdateProductReviewsSchemaType>, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,20 @@
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
+ try {
8
+ const review_id = req.params.id;
9
+ const { result } = await (0, update_product_review_1.updateProductReviewWorkflow)(req.scope).run({
10
+ input: { ...req.body, id: review_id },
11
+ });
12
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)(result, "Product review updated successfully", api_response_1.HttpStatus.OK));
13
+ }
14
+ catch (error) {
15
+ console.log("error: ", error);
16
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createErrorResponse)("Failed to update product review", api_response_1.HttpStatus.BAD_REQUEST, api_response_1.ErrorCode.INTERNAL_ERROR, error));
17
+ }
18
+ };
19
+ exports.PUT = PUT;
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3Byb2R1Y3QtcmV2aWV3cy9baWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUtBLCtEQU1zQztBQUN0QyxpSEFBb0g7QUFHN0csTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUN0QixHQUErRCxFQUMvRCxHQUFtQixFQUNuQixFQUFFO0lBQ0YsSUFBSSxDQUFDO1FBQ0gsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFFaEMsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sSUFBQSxtREFBMkIsRUFBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQ2xFLEtBQUssRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFO1NBQ3RDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBQSw4QkFBZSxFQUNwQixHQUFHLEVBQ0gsSUFBQSxvQ0FBcUIsRUFDbkIsTUFBTSxFQUNOLHFDQUFxQyxFQUNyQyx5QkFBVSxDQUFDLEVBQUUsQ0FDZCxDQUNGLENBQUM7SUFDSixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlCLE9BQU8sSUFBQSw4QkFBZSxFQUNwQixHQUFHLEVBQ0gsSUFBQSxrQ0FBbUIsRUFDakIsaUNBQWlDLEVBQ2pDLHlCQUFVLENBQUMsV0FBVyxFQUN0Qix3QkFBUyxDQUFDLGNBQWMsRUFDeEIsS0FBSyxDQUNOLENBQ0YsQ0FBQztJQUNKLENBQUM7QUFDSCxDQUFDLENBQUM7QUEvQlcsUUFBQSxHQUFHLE9BK0JkIn0=
@@ -0,0 +1,3 @@
1
+ import type { MedusaRequest, MedusaResponse } from "@medusajs/framework";
2
+ import { CheckReviewEligibilityQuery } from "../middlewares";
3
+ export declare const GET: (req: MedusaRequest<{}, CheckReviewEligibilityQuery>, res: MedusaResponse) => Promise<void>;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = void 0;
4
+ const api_response_1 = require("../../../../lib/api-response");
5
+ const check_review_eligibility_1 = require("../../../../workflows/product-reviews/workflows/check-review-eligibility");
6
+ // Properly type the request with query parameters
7
+ const GET = async (req, res) => {
8
+ const { customer_id, email, phone, product_id } = req.validatedQuery;
9
+ const { result } = await (0, check_review_eligibility_1.checkReviewEligibilityWorkflow)(req.scope).run({
10
+ input: {
11
+ customer_id,
12
+ email,
13
+ phone,
14
+ product_id,
15
+ },
16
+ });
17
+ return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({
18
+ eligible: result.eligible,
19
+ requireVerifiedPurchase: result.requireVerifiedPurchase,
20
+ order_id: result.order_id,
21
+ order_item_id: result.order_item_id,
22
+ }, result.message, api_response_1.HttpStatus.OK));
23
+ };
24
+ exports.GET = GET;
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL3Byb2R1Y3QtcmV2aWV3cy9lbGlnaWJpbGl0eS9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSwrREFJc0M7QUFDdEMsdUhBQTBIO0FBRzFILGtEQUFrRDtBQUMzQyxNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQ3RCLEdBQW1ELEVBQ25ELEdBQW1CLEVBQ25CLEVBQUU7SUFDRixNQUFNLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQztJQUVyRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxJQUFBLHlEQUE4QixFQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDckUsS0FBSyxFQUFFO1lBQ0wsV0FBVztZQUNYLEtBQUs7WUFDTCxLQUFLO1lBQ0wsVUFBVTtTQUNYO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFBLDhCQUFlLEVBQ3BCLEdBQUcsRUFDSCxJQUFBLG9DQUFxQixFQUNuQjtRQUNFLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtRQUN6Qix1QkFBdUIsRUFBRSxNQUFNLENBQUMsdUJBQXVCO1FBQ3ZELFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtRQUN6QixhQUFhLEVBQUUsTUFBTSxDQUFDLGFBQWE7S0FDcEMsRUFDRCxNQUFNLENBQUMsT0FBTyxFQUNkLHlCQUFVLENBQUMsRUFBRSxDQUNkLENBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQTVCVyxRQUFBLEdBQUcsT0E0QmQifQ==
@@ -0,0 +1,322 @@
1
+ import { type MiddlewareRoute } from "@medusajs/framework";
2
+ import { QueryConfig } from "@medusajs/types";
3
+ import { z } from "zod";
4
+ import { ProductReview } from "../../../modules/product-review/types";
5
+ export declare const listStoreProductReviewsQuerySchema: z.ZodObject<{
6
+ offset: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodNumber>>, number, unknown>;
7
+ limit: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodNumber>>, number, unknown>;
8
+ fields: z.ZodOptional<z.ZodString>;
9
+ order: z.ZodOptional<z.ZodString> | z.ZodDefault<z.ZodOptional<z.ZodString>>;
10
+ q: z.ZodOptional<z.ZodString>;
11
+ id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
12
+ product_id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
13
+ order_id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
14
+ rating: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodArray<z.ZodNumber, "many">]>>;
15
+ created_at: z.ZodOptional<z.ZodUnion<[any, z.ZodObject<{
16
+ $eq: any;
17
+ $ne: any;
18
+ $in: any;
19
+ $nin: any;
20
+ $like: any;
21
+ $ilike: any;
22
+ $re: any;
23
+ $contains: any;
24
+ $gt: any;
25
+ $gte: any;
26
+ $lt: any;
27
+ $lte: any;
28
+ }, "strip", z.ZodTypeAny, {
29
+ $eq?: any;
30
+ $ne?: any;
31
+ $in?: any;
32
+ $nin?: any;
33
+ $like?: any;
34
+ $ilike?: any;
35
+ $re?: any;
36
+ $contains?: any;
37
+ $gt?: any;
38
+ $gte?: any;
39
+ $lt?: any;
40
+ $lte?: any;
41
+ }, {
42
+ $eq?: any;
43
+ $ne?: any;
44
+ $in?: any;
45
+ $nin?: any;
46
+ $like?: any;
47
+ $ilike?: any;
48
+ $re?: any;
49
+ $contains?: any;
50
+ $gt?: any;
51
+ $gte?: any;
52
+ $lt?: any;
53
+ $lte?: any;
54
+ }>]>>;
55
+ updated_at: z.ZodOptional<z.ZodUnion<[any, z.ZodObject<{
56
+ $eq: any;
57
+ $ne: any;
58
+ $in: any;
59
+ $nin: any;
60
+ $like: any;
61
+ $ilike: any;
62
+ $re: any;
63
+ $contains: any;
64
+ $gt: any;
65
+ $gte: any;
66
+ $lt: any;
67
+ $lte: any;
68
+ }, "strip", z.ZodTypeAny, {
69
+ $eq?: any;
70
+ $ne?: any;
71
+ $in?: any;
72
+ $nin?: any;
73
+ $like?: any;
74
+ $ilike?: any;
75
+ $re?: any;
76
+ $contains?: any;
77
+ $gt?: any;
78
+ $gte?: any;
79
+ $lt?: any;
80
+ $lte?: any;
81
+ }, {
82
+ $eq?: any;
83
+ $ne?: any;
84
+ $in?: any;
85
+ $nin?: any;
86
+ $like?: any;
87
+ $ilike?: any;
88
+ $re?: any;
89
+ $contains?: any;
90
+ $gt?: any;
91
+ $gte?: any;
92
+ $lt?: any;
93
+ $lte?: any;
94
+ }>]>>;
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?: number | number[] | undefined;
105
+ created_at?: any;
106
+ updated_at?: any;
107
+ }, {
108
+ offset?: unknown;
109
+ limit?: unknown;
110
+ fields?: string | undefined;
111
+ order?: string | undefined;
112
+ q?: string | undefined;
113
+ id?: string | string[] | undefined;
114
+ product_id?: string | string[] | undefined;
115
+ order_id?: string | string[] | undefined;
116
+ rating?: number | number[] | undefined;
117
+ created_at?: any;
118
+ updated_at?: any;
119
+ }>;
120
+ export declare const upsertProductReviewsSchema: z.ZodObject<{
121
+ phone: z.ZodOptional<z.ZodString>;
122
+ email: z.ZodOptional<z.ZodString>;
123
+ name: z.ZodOptional<z.ZodString>;
124
+ reviews: z.ZodArray<z.ZodObject<{
125
+ product_id: z.ZodString;
126
+ order_id: z.ZodOptional<z.ZodString>;
127
+ order_item_id: z.ZodOptional<z.ZodString>;
128
+ rating: z.ZodNumber;
129
+ title: z.ZodString;
130
+ description: z.ZodString;
131
+ media: z.ZodArray<z.ZodObject<{
132
+ url: z.ZodString;
133
+ type: z.ZodEnum<["IMAGE", "VIDEO"]>;
134
+ }, "strip", z.ZodTypeAny, {
135
+ url: string;
136
+ type: "IMAGE" | "VIDEO";
137
+ }, {
138
+ url: string;
139
+ type: "IMAGE" | "VIDEO";
140
+ }>, "many">;
141
+ }, "strip", z.ZodTypeAny, {
142
+ rating: number;
143
+ title: string;
144
+ description: string;
145
+ product_id: string;
146
+ media: {
147
+ url: string;
148
+ type: "IMAGE" | "VIDEO";
149
+ }[];
150
+ order_id?: string | undefined;
151
+ order_item_id?: string | undefined;
152
+ }, {
153
+ rating: number;
154
+ title: string;
155
+ description: string;
156
+ product_id: string;
157
+ media: {
158
+ url: string;
159
+ type: "IMAGE" | "VIDEO";
160
+ }[];
161
+ order_id?: string | undefined;
162
+ order_item_id?: string | undefined;
163
+ }>, "many">;
164
+ }, "strip", z.ZodTypeAny, {
165
+ reviews: {
166
+ rating: number;
167
+ title: string;
168
+ description: string;
169
+ product_id: string;
170
+ media: {
171
+ url: string;
172
+ type: "IMAGE" | "VIDEO";
173
+ }[];
174
+ order_id?: string | undefined;
175
+ order_item_id?: string | undefined;
176
+ }[];
177
+ phone?: string | undefined;
178
+ email?: string | undefined;
179
+ name?: string | undefined;
180
+ }, {
181
+ reviews: {
182
+ rating: number;
183
+ title: string;
184
+ description: string;
185
+ product_id: string;
186
+ media: {
187
+ url: string;
188
+ type: "IMAGE" | "VIDEO";
189
+ }[];
190
+ order_id?: string | undefined;
191
+ order_item_id?: string | undefined;
192
+ }[];
193
+ phone?: string | undefined;
194
+ email?: string | undefined;
195
+ name?: string | undefined;
196
+ }>;
197
+ export type UpsertProductReviewsSchema = z.infer<typeof upsertProductReviewsSchema>;
198
+ export declare const createProductReviewsSchema: z.ZodObject<{
199
+ phone: z.ZodOptional<z.ZodString>;
200
+ email: z.ZodOptional<z.ZodString>;
201
+ name: z.ZodOptional<z.ZodString>;
202
+ product_id: z.ZodString;
203
+ order: z.ZodOptional<z.ZodObject<{
204
+ id: z.ZodString;
205
+ item_id: z.ZodString;
206
+ }, "strip", z.ZodTypeAny, {
207
+ id: string;
208
+ item_id: string;
209
+ }, {
210
+ id: string;
211
+ item_id: string;
212
+ }>>;
213
+ rating: z.ZodNumber;
214
+ title: z.ZodOptional<z.ZodString>;
215
+ description: z.ZodString;
216
+ medias: z.ZodArray<z.ZodObject<{
217
+ url: z.ZodString;
218
+ type: z.ZodEnum<["IMAGE", "VIDEO"]>;
219
+ }, "strip", z.ZodTypeAny, {
220
+ url: string;
221
+ type: "IMAGE" | "VIDEO";
222
+ }, {
223
+ url: string;
224
+ type: "IMAGE" | "VIDEO";
225
+ }>, "many">;
226
+ }, "strip", z.ZodTypeAny, {
227
+ rating: number;
228
+ description: string;
229
+ product_id: string;
230
+ medias: {
231
+ url: string;
232
+ type: "IMAGE" | "VIDEO";
233
+ }[];
234
+ phone?: string | undefined;
235
+ email?: string | undefined;
236
+ name?: string | undefined;
237
+ order?: {
238
+ id: string;
239
+ item_id: string;
240
+ } | undefined;
241
+ title?: string | undefined;
242
+ }, {
243
+ rating: number;
244
+ description: string;
245
+ product_id: string;
246
+ medias: {
247
+ url: string;
248
+ type: "IMAGE" | "VIDEO";
249
+ }[];
250
+ phone?: string | undefined;
251
+ email?: string | undefined;
252
+ name?: string | undefined;
253
+ order?: {
254
+ id: string;
255
+ item_id: string;
256
+ } | undefined;
257
+ title?: string | undefined;
258
+ }>;
259
+ export type CreateProductReviewsSchemaType = z.infer<typeof createProductReviewsSchema>;
260
+ export declare const updateProductReviewsSchema: z.ZodObject<{
261
+ rating: z.ZodOptional<z.ZodNumber>;
262
+ title: z.ZodOptional<z.ZodString>;
263
+ description: z.ZodOptional<z.ZodString>;
264
+ medias: z.ZodOptional<z.ZodArray<z.ZodObject<{
265
+ url: z.ZodString;
266
+ type: z.ZodEnum<["IMAGE", "VIDEO"]>;
267
+ }, "strip", z.ZodTypeAny, {
268
+ url: string;
269
+ type: "IMAGE" | "VIDEO";
270
+ }, {
271
+ url: string;
272
+ type: "IMAGE" | "VIDEO";
273
+ }>, "many">>;
274
+ }, "strip", z.ZodTypeAny, {
275
+ rating?: number | undefined;
276
+ title?: string | undefined;
277
+ description?: string | undefined;
278
+ medias?: {
279
+ url: string;
280
+ type: "IMAGE" | "VIDEO";
281
+ }[] | undefined;
282
+ }, {
283
+ rating?: number | undefined;
284
+ title?: string | undefined;
285
+ description?: string | undefined;
286
+ medias?: {
287
+ url: string;
288
+ type: "IMAGE" | "VIDEO";
289
+ }[] | undefined;
290
+ }>;
291
+ export type UpdateProductReviewsSchemaType = z.infer<typeof updateProductReviewsSchema>;
292
+ export declare const defaultStoreProductReviewFields: string[];
293
+ export declare const allowedStoreProductReviewFields: string[];
294
+ export declare const defaultStoreReviewsQueryConfig: QueryConfig<ProductReview>;
295
+ export declare const checkReviewEligibilityQuerySchema: z.ZodEffects<z.ZodObject<{
296
+ customer_id: z.ZodOptional<z.ZodString>;
297
+ email: z.ZodOptional<z.ZodString>;
298
+ phone: z.ZodOptional<z.ZodString>;
299
+ product_id: z.ZodString;
300
+ }, "strip", z.ZodTypeAny, {
301
+ product_id: string;
302
+ customer_id?: string | undefined;
303
+ email?: string | undefined;
304
+ phone?: string | undefined;
305
+ }, {
306
+ product_id: string;
307
+ customer_id?: string | undefined;
308
+ email?: string | undefined;
309
+ phone?: string | undefined;
310
+ }>, {
311
+ product_id: string;
312
+ customer_id?: string | undefined;
313
+ email?: string | undefined;
314
+ phone?: string | undefined;
315
+ }, {
316
+ product_id: string;
317
+ customer_id?: string | undefined;
318
+ email?: string | undefined;
319
+ phone?: string | undefined;
320
+ }>;
321
+ export type CheckReviewEligibilityQuery = z.infer<typeof checkReviewEligibilityQuerySchema>;
322
+ export declare const storeProductReviewRoutesMiddlewares: MiddlewareRoute[];