order-management 0.0.70 → 0.0.72
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.
- package/.medusa/server/src/api/admin/orders/[order_id]/cancel-reason-mapping/route.js +64 -0
- package/.medusa/server/src/api/middlewares.js +12 -1
- package/.medusa/server/src/api/store/guest-orders/[id]/cancel/route.js +6 -1
- package/.medusa/server/src/api/store/guest-orders/[id]/cancel-reason-mapping/route.js +95 -0
- package/.medusa/server/src/api/store/orders/[order_id]/cancel-reason-mapping/route.js +82 -0
- package/.medusa/server/src/api/store/orders/cancel/[order_id]/route.js +6 -1
- package/.medusa/server/src/api/store/validators/cancel-order.js +8 -0
- package/.medusa/server/src/modules/cancel-order-reason/index.js +14 -0
- package/.medusa/server/src/modules/cancel-order-reason/migrations/Migration20260407100000.js +36 -0
- package/.medusa/server/src/modules/cancel-order-reason/models/cancel-order-reason-mapping.js +10 -0
- package/.medusa/server/src/modules/cancel-order-reason/service.js +97 -0
- package/.medusa/server/src/modules/cancel-order-reason/types.js +3 -0
- package/.medusa/server/src/utils/notification-handler.js +41 -8
- package/package.json +2 -1
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GET = GET;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const cancel_order_reason_1 = require("../../../../../modules/cancel-order-reason");
|
|
6
|
+
/**
|
|
7
|
+
* GET /admin/orders/:order_id/cancel-reason-mapping
|
|
8
|
+
* Admin: read which cancel reason was recorded for an order (if any).
|
|
9
|
+
*/
|
|
10
|
+
async function GET(req, res) {
|
|
11
|
+
const orderId = req.params.order_id;
|
|
12
|
+
if (!orderId) {
|
|
13
|
+
res.status(400).json({
|
|
14
|
+
message: "order_id is required",
|
|
15
|
+
type: "INVALID_DATA",
|
|
16
|
+
});
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
try {
|
|
20
|
+
const orderModuleService = req.scope.resolve(utils_1.Modules.ORDER);
|
|
21
|
+
const order = await orderModuleService.retrieveOrder(orderId).catch(() => null);
|
|
22
|
+
if (!order) {
|
|
23
|
+
res.status(404).json({
|
|
24
|
+
message: "Order not found",
|
|
25
|
+
type: "NOT_FOUND",
|
|
26
|
+
});
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
let mappingService;
|
|
30
|
+
try {
|
|
31
|
+
mappingService = req.scope.resolve(cancel_order_reason_1.CANCEL_ORDER_REASON_MODULE);
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
res.json({ cancel_order_reason_mapping: null });
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
const payload = await mappingService.getMappingWithReasonLabel(orderId);
|
|
38
|
+
if (!payload) {
|
|
39
|
+
res.json({ cancel_order_reason_mapping: null });
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const { mapping, reason_label } = payload;
|
|
43
|
+
res.json({
|
|
44
|
+
cancel_order_reason_mapping: {
|
|
45
|
+
id: mapping.id,
|
|
46
|
+
order_id: mapping.order_id,
|
|
47
|
+
reason_id: mapping.reason_id,
|
|
48
|
+
reason_label,
|
|
49
|
+
created_at: mapping.created_at.toISOString(),
|
|
50
|
+
updated_at: mapping.updated_at.toISOString(),
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
const message = err instanceof Error ? err.message : "Unknown error";
|
|
56
|
+
console.error("[Order Management] GET admin cancel-reason-mapping:", err);
|
|
57
|
+
res.status(500).json({
|
|
58
|
+
message: "Failed to get cancel reason mapping",
|
|
59
|
+
error: message,
|
|
60
|
+
type: "INTERNAL_ERROR",
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL29yZGVycy9bb3JkZXJfaWRdL2NhbmNlbC1yZWFzb24tbWFwcGluZy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXFCQSxrQkE2REM7QUFqRkQscURBQW1EO0FBRW5ELG9GQUF1RjtBQWN2Rjs7O0dBR0c7QUFDSSxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUFrQixFQUNsQixHQUFtQjtJQUVuQixNQUFNLE9BQU8sR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLFFBQWtCLENBQUE7SUFFN0MsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbkIsT0FBTyxFQUFFLHNCQUFzQjtZQUMvQixJQUFJLEVBQUUsY0FBYztTQUNyQixDQUFDLENBQUE7UUFDRixPQUFNO0lBQ1IsQ0FBQztJQUVELElBQUksQ0FBQztRQUNILE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQXNCLGVBQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNoRixNQUFNLEtBQUssR0FBRyxNQUFNLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDL0UsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQ25CLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLElBQUksRUFBRSxXQUFXO2FBQ2xCLENBQUMsQ0FBQTtZQUNGLE9BQU07UUFDUixDQUFDO1FBRUQsSUFBSSxjQUE4QyxDQUFBO1FBQ2xELElBQUksQ0FBQztZQUNILGNBQWMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FDaEMsZ0RBQTBCLENBQzNCLENBQUE7UUFDSCxDQUFDO1FBQUMsTUFBTSxDQUFDO1lBQ1AsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLDJCQUEyQixFQUFFLElBQUksRUFBNkMsQ0FBQyxDQUFBO1lBQzFGLE9BQU07UUFDUixDQUFDO1FBRUQsTUFBTSxPQUFPLEdBQUcsTUFBTSxjQUFjLENBQUMseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUE7UUFDdkUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLDJCQUEyQixFQUFFLElBQUksRUFBNkMsQ0FBQyxDQUFBO1lBQzFGLE9BQU07UUFDUixDQUFDO1FBRUQsTUFBTSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsR0FBRyxPQUFPLENBQUE7UUFDekMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUNQLDJCQUEyQixFQUFFO2dCQUMzQixFQUFFLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQ2QsUUFBUSxFQUFFLE9BQU8sQ0FBQyxRQUFRO2dCQUMxQixTQUFTLEVBQUUsT0FBTyxDQUFDLFNBQVM7Z0JBQzVCLFlBQVk7Z0JBQ1osVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFO2dCQUM1QyxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUU7YUFDN0M7U0FDeUMsQ0FBQyxDQUFBO0lBQy9DLENBQUM7SUFBQyxPQUFPLEdBQVksRUFBRSxDQUFDO1FBQ3RCLE1BQU0sT0FBTyxHQUFHLEdBQUcsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQTtRQUNwRSxPQUFPLENBQUMsS0FBSyxDQUFDLHFEQUFxRCxFQUFFLEdBQUcsQ0FBQyxDQUFBO1FBQ3pFLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ25CLE9BQU8sRUFBRSxxQ0FBcUM7WUFDOUMsS0FBSyxFQUFFLE9BQU87WUFDZCxJQUFJLEVBQUUsZ0JBQWdCO1NBQ3ZCLENBQUMsQ0FBQTtJQUNKLENBQUM7QUFDSCxDQUFDIn0=
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const http_1 = require("@medusajs/framework/http");
|
|
4
4
|
const validators_1 = require("./store/returns/validators");
|
|
5
|
+
const cancel_order_1 = require("./store/validators/cancel-order");
|
|
5
6
|
exports.default = (0, http_1.defineMiddlewares)({
|
|
6
7
|
routes: [
|
|
7
8
|
{
|
|
@@ -9,6 +10,16 @@ exports.default = (0, http_1.defineMiddlewares)({
|
|
|
9
10
|
method: "POST",
|
|
10
11
|
middlewares: [(0, http_1.validateAndTransformBody)(validators_1.StoreCreateReturnSchema)],
|
|
11
12
|
},
|
|
13
|
+
{
|
|
14
|
+
matcher: "/store/orders/cancel/:order_id",
|
|
15
|
+
method: "POST",
|
|
16
|
+
middlewares: [(0, http_1.validateAndTransformBody)(cancel_order_1.StoreCancelOrderBodySchema)],
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
matcher: "/store/guest-orders/:id/cancel",
|
|
20
|
+
method: "POST",
|
|
21
|
+
middlewares: [(0, http_1.validateAndTransformBody)(cancel_order_1.StoreCancelOrderBodySchema)],
|
|
22
|
+
},
|
|
12
23
|
],
|
|
13
24
|
});
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXBpL21pZGRsZXdhcmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbURBR2lDO0FBQ2pDLDJEQUFvRTtBQUNwRSxrRUFBNEU7QUFFNUUsa0JBQWUsSUFBQSx3QkFBaUIsRUFBQztJQUMvQixNQUFNLEVBQUU7UUFDTjtZQUNFLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsTUFBTSxFQUFFLE1BQU07WUFDZCxXQUFXLEVBQUUsQ0FBQyxJQUFBLCtCQUF3QixFQUFDLG9DQUF1QixDQUFDLENBQUM7U0FDakU7UUFDRDtZQUNFLE9BQU8sRUFBRSxnQ0FBZ0M7WUFDekMsTUFBTSxFQUFFLE1BQU07WUFDZCxXQUFXLEVBQUUsQ0FBQyxJQUFBLCtCQUF3QixFQUFDLHlDQUEwQixDQUFDLENBQUM7U0FDcEU7UUFDRDtZQUNFLE9BQU8sRUFBRSxnQ0FBZ0M7WUFDekMsTUFBTSxFQUFFLE1BQU07WUFDZCxXQUFXLEVBQUUsQ0FBQyxJQUFBLCtCQUF3QixFQUFDLHlDQUEwQixDQUFDLENBQUM7U0FDcEU7S0FDRjtDQUNGLENBQUMsQ0FBQSJ9
|
|
@@ -10,6 +10,7 @@ const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
|
10
10
|
const config_1 = require("../../../../../config");
|
|
11
11
|
const cancel_order_workflow_1 = require("../../../../../workflows/cancel-order-workflow");
|
|
12
12
|
const get_guest_token_1 = require("../../get-guest-token");
|
|
13
|
+
const cancel_order_reason_1 = require("../../../../../modules/cancel-order-reason");
|
|
13
14
|
async function POST(req, res) {
|
|
14
15
|
const token = (0, get_guest_token_1.getGuestToken)(req);
|
|
15
16
|
const { id } = req.params;
|
|
@@ -68,6 +69,9 @@ async function POST(req, res) {
|
|
|
68
69
|
});
|
|
69
70
|
return;
|
|
70
71
|
}
|
|
72
|
+
const { reason_id } = req.validatedBody;
|
|
73
|
+
const cancelReasonService = req.scope.resolve(cancel_order_reason_1.CANCEL_ORDER_REASON_MODULE);
|
|
74
|
+
await cancelReasonService.assertReasonExists(reason_id);
|
|
71
75
|
// Execute cancel order workflow
|
|
72
76
|
const { result } = await (0, cancel_order_workflow_1.cancelOrderWorkflow)(req.scope).run({
|
|
73
77
|
input: {
|
|
@@ -75,6 +79,7 @@ async function POST(req, res) {
|
|
|
75
79
|
customer_id: orderCustomerId,
|
|
76
80
|
},
|
|
77
81
|
});
|
|
82
|
+
await cancelReasonService.recordOrderCancelReason(id, reason_id);
|
|
78
83
|
res.status(200).json(result);
|
|
79
84
|
}
|
|
80
85
|
catch (error) {
|
|
@@ -102,4 +107,4 @@ async function POST(req, res) {
|
|
|
102
107
|
});
|
|
103
108
|
}
|
|
104
109
|
}
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2d1ZXN0LW9yZGVycy9baWRdL2NhbmNlbC9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVlBLG9CQTJIQztBQXRJRCxxREFBcUU7QUFDckUscURBQXVEO0FBQ3ZELGdFQUE4QztBQUM5QyxrREFBcUU7QUFFckUsMEZBQW9GO0FBQ3BGLDJEQUFxRDtBQUNyRCxvRkFBdUY7QUFJaEYsS0FBSyxVQUFVLElBQUksQ0FDdEIsR0FBd0MsRUFDeEMsR0FBbUI7SUFFbkIsTUFBTSxLQUFLLEdBQUcsSUFBQSwrQkFBYSxFQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFBO0lBRXpCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNULEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLDJEQUEyRCxFQUFFLENBQUMsQ0FBQTtRQUM5RixPQUFNO0lBQ1YsQ0FBQztJQUVELElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNOLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FBQTtRQUN6RCxPQUFNO0lBQ1YsQ0FBQztJQUVELCtCQUErQjtJQUMvQixJQUFJLE1BQU0sQ0FBQTtJQUNWLElBQUksQ0FBQztRQUNELE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUNsQyxpQ0FBeUIsQ0FBQyxhQUFhLENBQzFDLENBQUE7UUFDRCxNQUFNLEdBQUcsSUFBQSxzQ0FBNkIsRUFBQyxZQUFZLENBQUMsQ0FBQTtJQUN4RCxDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztR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
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.GET = GET;
|
|
7
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
8
|
+
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
9
|
+
const config_1 = require("../../../../../config");
|
|
10
|
+
const get_guest_token_1 = require("../../get-guest-token");
|
|
11
|
+
const cancel_order_reason_1 = require("../../../../../modules/cancel-order-reason");
|
|
12
|
+
/**
|
|
13
|
+
* GET /store/guest-orders/:id/cancel-reason-mapping
|
|
14
|
+
* Guest JWT: same access rules as GET /store/guest-orders/:id
|
|
15
|
+
*/
|
|
16
|
+
async function GET(req, res) {
|
|
17
|
+
const token = (0, get_guest_token_1.getGuestToken)(req);
|
|
18
|
+
const { id: orderId } = req.params;
|
|
19
|
+
if (!token) {
|
|
20
|
+
res.status(401).json({ message: "Missing or invalid token (cookie or Authorization header)" });
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (!orderId) {
|
|
24
|
+
res.status(400).json({ message: "Order ID is required" });
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
let config;
|
|
28
|
+
try {
|
|
29
|
+
const configModule = req.scope.resolve(utils_1.ContainerRegistrationKeys.CONFIG_MODULE);
|
|
30
|
+
config = (0, config_1.resolveOrderManagementOptions)(configModule);
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
const errorMessage = error instanceof Error ? error.message : "Unknown error";
|
|
34
|
+
console.error("[Guest Cancel Reason Mapping] Could not resolve config:", errorMessage);
|
|
35
|
+
res.status(500).json({
|
|
36
|
+
message: "Failed to resolve plugin configuration",
|
|
37
|
+
error: errorMessage,
|
|
38
|
+
});
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
try {
|
|
42
|
+
const decoded = jsonwebtoken_1.default.verify(token, config.jwtSecret);
|
|
43
|
+
if (!decoded || !decoded.guest_identifier) {
|
|
44
|
+
res.status(401).json({ message: "Invalid token payload" });
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const guest_identifier = decoded.guest_identifier;
|
|
48
|
+
const actorId = decoded.actor_id ?? decoded.customer_id;
|
|
49
|
+
const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
50
|
+
const { data: orders } = await query.graph({
|
|
51
|
+
entity: "order",
|
|
52
|
+
fields: ["id"],
|
|
53
|
+
filters: {
|
|
54
|
+
id: orderId,
|
|
55
|
+
...(actorId
|
|
56
|
+
? { customer_id: [actorId] }
|
|
57
|
+
: { email: guest_identifier }),
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
if (!orders[0]) {
|
|
61
|
+
res.status(404).json({ message: "Order not found or access denied" });
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
let mappingService;
|
|
65
|
+
try {
|
|
66
|
+
mappingService = req.scope.resolve(cancel_order_reason_1.CANCEL_ORDER_REASON_MODULE);
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
res.json({ cancel_order_reason_mapping: null });
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
const payload = await mappingService.getMappingWithReasonLabel(orderId);
|
|
73
|
+
if (!payload) {
|
|
74
|
+
res.json({ cancel_order_reason_mapping: null });
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
const { mapping, reason_label } = payload;
|
|
78
|
+
res.status(200).json({
|
|
79
|
+
cancel_order_reason_mapping: {
|
|
80
|
+
id: mapping.id,
|
|
81
|
+
order_id: mapping.order_id,
|
|
82
|
+
reason_id: mapping.reason_id,
|
|
83
|
+
reason_label,
|
|
84
|
+
created_at: mapping.created_at.toISOString(),
|
|
85
|
+
updated_at: mapping.updated_at.toISOString(),
|
|
86
|
+
},
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
const errorMessage = error instanceof Error ? error.message : "Unknown error";
|
|
91
|
+
console.error("[Guest Cancel Reason Mapping] Error:", errorMessage);
|
|
92
|
+
res.status(401).json({ message: "Unauthorized or invalid token", error: errorMessage });
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2d1ZXN0LW9yZGVycy9baWRdL2NhbmNlbC1yZWFzb24tbWFwcGluZy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQWNBLGtCQTBGQztBQXZHRCxxREFBcUU7QUFDckUsZ0VBQThDO0FBQzlDLGtEQUFxRTtBQUVyRSwyREFBcUQ7QUFDckQsb0ZBQXVGO0FBSXZGOzs7R0FHRztBQUNJLEtBQUssVUFBVSxHQUFHLENBQ3ZCLEdBQWtCLEVBQ2xCLEdBQW1CO0lBRW5CLE1BQU0sS0FBSyxHQUFHLElBQUEsK0JBQWEsRUFBQyxHQUFHLENBQUMsQ0FBQTtJQUNoQyxNQUFNLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUE7SUFFbEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1gsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsMkRBQTJELEVBQUUsQ0FBQyxDQUFBO1FBQzlGLE9BQU07SUFDUixDQUFDO0lBRUQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFBO1FBQ3pELE9BQU07SUFDUixDQUFDO0lBRUQsSUFBSSxNQUFNLENBQUE7SUFDVixJQUFJLENBQUM7UUFDSCxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBb0IsaUNBQXlCLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDbEcsTUFBTSxHQUFHLElBQUEsc0NBQTZCLEVBQUMsWUFBWSxDQUFDLENBQUE7SUFDdEQsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFD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
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GET = GET;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const cancel_order_reason_1 = require("../../../../../modules/cancel-order-reason");
|
|
6
|
+
/**
|
|
7
|
+
* GET /store/orders/:order_id/cancel-reason-mapping
|
|
8
|
+
* Customer: mapping for their own cancelled order (if recorded).
|
|
9
|
+
*/
|
|
10
|
+
async function GET(req, res) {
|
|
11
|
+
const authContext = req
|
|
12
|
+
.auth_context;
|
|
13
|
+
const customerId = authContext?.actor_id;
|
|
14
|
+
const actorType = authContext?.actor_type;
|
|
15
|
+
const orderId = req.params.order_id;
|
|
16
|
+
if (!customerId || actorType !== "customer") {
|
|
17
|
+
res.status(401).json({
|
|
18
|
+
message: "Unauthorized: Customer authentication is required",
|
|
19
|
+
type: "UNAUTHORIZED",
|
|
20
|
+
});
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
if (!orderId) {
|
|
24
|
+
res.status(400).json({
|
|
25
|
+
message: "order_id is required",
|
|
26
|
+
type: "INVALID_DATA",
|
|
27
|
+
});
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
try {
|
|
31
|
+
const orderModuleService = req.scope.resolve(utils_1.Modules.ORDER);
|
|
32
|
+
const order = await orderModuleService.retrieveOrder(orderId).catch(() => null);
|
|
33
|
+
if (!order) {
|
|
34
|
+
res.status(404).json({
|
|
35
|
+
message: "Order not found",
|
|
36
|
+
type: "NOT_FOUND",
|
|
37
|
+
});
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
if (order.customer_id !== customerId) {
|
|
41
|
+
res.status(404).json({
|
|
42
|
+
message: "Order not found or access denied",
|
|
43
|
+
type: "NOT_FOUND",
|
|
44
|
+
});
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
let mappingService;
|
|
48
|
+
try {
|
|
49
|
+
mappingService = req.scope.resolve(cancel_order_reason_1.CANCEL_ORDER_REASON_MODULE);
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
res.json({ cancel_order_reason_mapping: null });
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const payload = await mappingService.getMappingWithReasonLabel(orderId);
|
|
56
|
+
if (!payload) {
|
|
57
|
+
res.json({ cancel_order_reason_mapping: null });
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
const { mapping, reason_label } = payload;
|
|
61
|
+
res.json({
|
|
62
|
+
cancel_order_reason_mapping: {
|
|
63
|
+
id: mapping.id,
|
|
64
|
+
order_id: mapping.order_id,
|
|
65
|
+
reason_id: mapping.reason_id,
|
|
66
|
+
reason_label,
|
|
67
|
+
created_at: mapping.created_at.toISOString(),
|
|
68
|
+
updated_at: mapping.updated_at.toISOString(),
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
catch (err) {
|
|
73
|
+
const message = err instanceof Error ? err.message : "Unknown error";
|
|
74
|
+
console.error("[Order Management] GET store cancel-reason-mapping:", err);
|
|
75
|
+
res.status(500).json({
|
|
76
|
+
message: "Failed to get cancel reason mapping",
|
|
77
|
+
error: message,
|
|
78
|
+
type: "INTERNAL_ERROR",
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL29yZGVycy9bb3JkZXJfaWRdL2NhbmNlbC1yZWFzb24tbWFwcGluZy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXFCQSxrQkFpRkM7QUFyR0QscURBQW1EO0FBRW5ELG9GQUF1RjtBQWN2Rjs7O0dBR0c7QUFDSSxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUFrQixFQUNsQixHQUFtQjtJQUVuQixNQUFNLFdBQVcsR0FBSSxHQUFxRTtTQUN2RixZQUFZLENBQUE7SUFDZixNQUFNLFVBQVUsR0FBRyxXQUFXLEVBQUUsUUFBUSxDQUFBO0lBQ3hDLE1BQU0sU0FBUyxHQUFHLFdBQVcsRUFBRSxVQUFVLENBQUE7SUFDekMsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFrQixDQUFBO0lBRTdDLElBQUksQ0FBQyxVQUFVLElBQUksU0FBUyxLQUFLLFVBQVUsRUFBRSxDQUFDO1FBQzVDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ25CLE9BQU8sRUFBRSxtREFBbUQ7WUFDNUQsSUFBSSxFQUFFLGNBQWM7U0FDckIsQ0FBQyxDQUFBO1FBQ0YsT0FBTTtJQUNSLENBQUM7SUFFRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDYixHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNuQixPQUFPLEVBQUUsc0JBQXNCO1lBQy9CLElBQUksRUFBRSxjQUFjO1NBQ3JCLENBQUMsQ0FBQTtRQUNGLE9BQU07SUFDUixDQUFDO0lBRUQsSUFBSSxDQUFDO1FBQ0gsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBc0IsZUFBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ2hGLE1BQU0sS0FBSyxHQUFHLE1BQU0sa0JBQWtCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUMvRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDbkIsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsSUFBSSxFQUFFLFdBQVc7YUFDbEIsQ0FBQyxDQUFBO1lBQ0YsT0FBTTtRQUNSLENBQUM7UUFFRCxJQUFLLEtBQWtDLENBQUMsV0FBVyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ25FLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNuQixPQUFPLEVBQUUsa0NBQWtDO2dCQUMzQyxJQUFJLEVBQUUsV0FBVzthQUNsQixDQUFDLENBQUE7WUFDRixPQUFNO1FBQ1IsQ0FBQztRQUVELElBQUksY0FBOEMsQ0FBQTtRQUNsRCxJQUFJLENBQUM7WUFDSCxjQUFjLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQ2hDLGdEQUEwQixDQUMzQixDQUFBO1FBQ0gsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNQLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSwyQkFBMkIsRUFBRSxJQUFJLEVBQTZDLENBQUMsQ0FBQTtZQUMxRixPQUFNO1FBQ1IsQ0FBQztRQUVELE1BQU0sT0FBTyxHQUFHLE1BQU0sY0FBYyxDQUFDLHlCQUF5QixDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3ZFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSwyQkFBMkIsRUFBRSxJQUFJLEVBQTZDLENBQUMsQ0FBQTtZQUMxRixPQUFNO1FBQ1IsQ0FBQztRQUVELE1BQU0sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsT0FBTyxDQUFBO1FBQ3pDLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDUCwyQkFBMkIsRUFBRTtnQkFDM0IsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFO2dCQUNkLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUTtnQkFDMUIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxTQUFTO2dCQUM1QixZQUFZO2dCQUNaLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRTtnQkFDNUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFO2FBQzdDO1NBQ3lDLENBQUMsQ0FBQTtJQUMvQyxDQUFDO0lBQUMsT0FBTyxHQUFZLEVBQUUsQ0FBQztRQUN0QixNQUFNLE9BQU8sR0FBRyxHQUFHLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUE7UUFDcEUsT0FBTyxDQUFDLEtBQUssQ0FBQyxxREFBcUQsRUFBRSxHQUFHLENBQUMsQ0FBQTtRQUN6RSxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNuQixPQUFPLEVBQUUscUNBQXFDO1lBQzlDLEtBQUssRUFBRSxPQUFPO1lBQ2QsSUFBSSxFQUFFLGdCQUFnQjtTQUN2QixDQUFDLENBQUE7SUFDSixDQUFDO0FBQ0gsQ0FBQyJ9
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.POST = void 0;
|
|
4
4
|
const utils_1 = require("@medusajs/framework/utils");
|
|
5
5
|
const cancel_order_workflow_1 = require("../../../../../workflows/cancel-order-workflow");
|
|
6
|
+
const cancel_order_reason_1 = require("../../../../../modules/cancel-order-reason");
|
|
6
7
|
const POST = async (req, res) => {
|
|
7
8
|
const { order_id } = req.params;
|
|
8
9
|
if (!order_id) {
|
|
@@ -11,6 +12,7 @@ const POST = async (req, res) => {
|
|
|
11
12
|
});
|
|
12
13
|
return;
|
|
13
14
|
}
|
|
15
|
+
const { reason_id } = req.validatedBody;
|
|
14
16
|
// Type-safe access to auth_context
|
|
15
17
|
const authContext = req.auth_context;
|
|
16
18
|
const actorId = authContext?.actor_id;
|
|
@@ -28,13 +30,16 @@ const POST = async (req, res) => {
|
|
|
28
30
|
});
|
|
29
31
|
return;
|
|
30
32
|
}
|
|
33
|
+
const cancelReasonService = req.scope.resolve(cancel_order_reason_1.CANCEL_ORDER_REASON_MODULE);
|
|
31
34
|
try {
|
|
35
|
+
await cancelReasonService.assertReasonExists(reason_id);
|
|
32
36
|
const { result } = await (0, cancel_order_workflow_1.cancelOrderWorkflow)(req.scope).run({
|
|
33
37
|
input: {
|
|
34
38
|
order_id,
|
|
35
39
|
customer_id: actorId,
|
|
36
40
|
},
|
|
37
41
|
});
|
|
42
|
+
await cancelReasonService.recordOrderCancelReason(order_id, reason_id);
|
|
38
43
|
res.json(result);
|
|
39
44
|
}
|
|
40
45
|
catch (error) {
|
|
@@ -74,4 +79,4 @@ const POST = async (req, res) => {
|
|
|
74
79
|
}
|
|
75
80
|
};
|
|
76
81
|
exports.POST = POST;
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL29yZGVycy9jYW5jZWwvW29yZGVyX2lkXS9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxxREFBdUQ7QUFDdkQsMEZBQW9GO0FBQ3BGLG9GQUF1RjtBQUloRixNQUFNLElBQUksR0FBRyxLQUFLLEVBQ3ZCLEdBQXdDLEVBQ3hDLEdBQW1CLEVBQ25CLEVBQUU7SUFDRixNQUFNLEVBQUUsUUFBUSxFQUFFLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQTtJQUUvQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDZCxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNuQixPQUFPLEVBQUUsd0NBQXdDO1NBQ2xELENBQUMsQ0FBQTtRQUNGLE9BQU07SUFDUixDQUFDO0lBRUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxhQUFhLENBQUE7SUFFdkMsbUNBQW1DO0lBQ25DLE1BQU0sV0FBVyxHQUFJLEdBRW5CLENBQUMsWUFBWSxDQUFBO0lBRWYsTUFBTSxPQUFPLEdBQUcsV0FBVyxFQUFFLFFBQVEsQ0FBQTtJQUNyQyxNQUFNLFNBQVMsR0FBRyxXQUFXLEVBQUUsVUFBVSxDQUFBO0lBQ3pDLE1BQU0sVUFBVSxHQUFHLFNBQVMsS0FBSyxVQUFVLENBQUE7SUFFM0MsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsMERBQTBELEVBQUU7WUFDdkUsUUFBUTtZQUNSLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFVBQVUsRUFBRSxTQUFTO1lBQ3JCLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLG9CQUFvQjtTQUM3RCxDQUFDLENBQUE7UUFD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
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StoreCancelOrderBodySchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
exports.StoreCancelOrderBodySchema = zod_1.z.object({
|
|
6
|
+
reason_id: zod_1.z.string().min(1, "reason_id is required"),
|
|
7
|
+
});
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuY2VsLW9yZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwaS9zdG9yZS92YWxpZGF0b3JzL2NhbmNlbC1vcmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2QkFBdUI7QUFFVixRQUFBLDBCQUEwQixHQUFHLE9BQUMsQ0FBQyxNQUFNLENBQUM7SUFDakQsU0FBUyxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLHVCQUF1QixDQUFDO0NBQ3RELENBQUMsQ0FBQSJ9
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.CancelOrderReasonModuleService = exports.CANCEL_ORDER_REASON_MODULE = void 0;
|
|
7
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
8
|
+
const service_1 = __importDefault(require("./service"));
|
|
9
|
+
exports.CancelOrderReasonModuleService = service_1.default;
|
|
10
|
+
exports.CANCEL_ORDER_REASON_MODULE = "cancel_order_reason";
|
|
11
|
+
exports.default = (0, utils_1.Module)(exports.CANCEL_ORDER_REASON_MODULE, {
|
|
12
|
+
service: service_1.default,
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9jYW5jZWwtb3JkZXItcmVhc29uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHFEQUFrRDtBQUNsRCx3REFBc0Q7QUFRN0MseUNBUkYsaUJBQThCLENBUUU7QUFOMUIsUUFBQSwwQkFBMEIsR0FBRyxxQkFBcUIsQ0FBQTtBQUUvRCxrQkFBZSxJQUFBLGNBQU0sRUFBQyxrQ0FBMEIsRUFBRTtJQUNoRCxPQUFPLEVBQUUsaUJBQThCO0NBQ3hDLENBQUMsQ0FBQSJ9
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Migration20260407100000 = void 0;
|
|
4
|
+
const migrations_1 = require("@medusajs/framework/mikro-orm/migrations");
|
|
5
|
+
class Migration20260407100000 extends migrations_1.Migration {
|
|
6
|
+
async up() {
|
|
7
|
+
this.addSql(`
|
|
8
|
+
CREATE TABLE IF NOT EXISTS "cancel_order_reason_mapping" (
|
|
9
|
+
"id" text NOT NULL PRIMARY KEY,
|
|
10
|
+
"order_id" text NOT NULL,
|
|
11
|
+
"reason_id" text NOT NULL,
|
|
12
|
+
"created_at" timestamptz NOT NULL DEFAULT now(),
|
|
13
|
+
"updated_at" timestamptz NOT NULL DEFAULT now(),
|
|
14
|
+
"deleted_at" timestamptz NULL,
|
|
15
|
+
CONSTRAINT "FK_cancel_order_reason_mapping_return_reason"
|
|
16
|
+
FOREIGN KEY ("reason_id") REFERENCES "return_reason"("id")
|
|
17
|
+
ON UPDATE CASCADE ON DELETE RESTRICT
|
|
18
|
+
);
|
|
19
|
+
`);
|
|
20
|
+
this.addSql(`
|
|
21
|
+
CREATE UNIQUE INDEX IF NOT EXISTS "IDX_cancel_order_reason_mapping_order_id"
|
|
22
|
+
ON "cancel_order_reason_mapping" ("order_id") WHERE "deleted_at" IS NULL;
|
|
23
|
+
`);
|
|
24
|
+
this.addSql(`
|
|
25
|
+
CREATE INDEX IF NOT EXISTS "IDX_cancel_order_reason_mapping_reason_id"
|
|
26
|
+
ON "cancel_order_reason_mapping" ("reason_id") WHERE "deleted_at" IS NULL;
|
|
27
|
+
`);
|
|
28
|
+
}
|
|
29
|
+
async down() {
|
|
30
|
+
this.addSql(`DROP INDEX IF EXISTS "IDX_cancel_order_reason_mapping_reason_id";`);
|
|
31
|
+
this.addSql(`DROP INDEX IF EXISTS "IDX_cancel_order_reason_mapping_order_id";`);
|
|
32
|
+
this.addSql(`DROP TABLE IF EXISTS "cancel_order_reason_mapping";`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.Migration20260407100000 = Migration20260407100000;
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWlncmF0aW9uMjAyNjA0MDcxMDAwMDAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9jYW5jZWwtb3JkZXItcmVhc29uL21pZ3JhdGlvbnMvTWlncmF0aW9uMjAyNjA0MDcxMDAwMDAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEseUVBQW9FO0FBRXBFLE1BQWEsdUJBQXdCLFNBQVEsc0JBQVM7SUFDcEQsS0FBSyxDQUFDLEVBQUU7UUFDTixJQUFJLENBQUMsTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7S0FZWCxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsTUFBTSxDQUFDOzs7S0FHWCxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsTUFBTSxDQUFDOzs7S0FHWCxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLElBQUk7UUFDUixJQUFJLENBQUMsTUFBTSxDQUFDLG1FQUFtRSxDQUFDLENBQUE7UUFDaEYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrRUFBa0UsQ0FBQyxDQUFBO1FBQy9FLElBQUksQ0FBQyxNQUFNLENBQUMscURBQXFELENBQUMsQ0FBQTtJQUNwRSxDQUFDO0NBQ0Y7QUFoQ0QsMERBZ0NDIn0=
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
4
|
+
const CancelOrderReasonMapping = utils_1.model.define("cancel_order_reason_mapping", {
|
|
5
|
+
id: utils_1.model.id().primaryKey(),
|
|
6
|
+
order_id: utils_1.model.text(),
|
|
7
|
+
reason_id: utils_1.model.text(),
|
|
8
|
+
});
|
|
9
|
+
exports.default = CancelOrderReasonMapping;
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FuY2VsLW9yZGVyLXJlYXNvbi1tYXBwaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL21vZHVsZXMvY2FuY2VsLW9yZGVyLXJlYXNvbi9tb2RlbHMvY2FuY2VsLW9yZGVyLXJlYXNvbi1tYXBwaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEscURBQWlEO0FBRWpELE1BQU0sd0JBQXdCLEdBQUcsYUFBSyxDQUFDLE1BQU0sQ0FBQyw2QkFBNkIsRUFBRTtJQUMzRSxFQUFFLEVBQUUsYUFBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsRUFBRTtJQUMzQixRQUFRLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRTtJQUN0QixTQUFTLEVBQUUsYUFBSyxDQUFDLElBQUksRUFBRTtDQUN4QixDQUFDLENBQUE7QUFFRixrQkFBZSx3QkFBd0IsQ0FBQSJ9
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
7
|
+
const _1 = require(".");
|
|
8
|
+
const cancel_order_reason_mapping_1 = __importDefault(require("./models/cancel-order-reason-mapping"));
|
|
9
|
+
class CancelOrderReasonModuleService extends (0, utils_1.MedusaService)({
|
|
10
|
+
CancelOrderReasonMapping: cancel_order_reason_mapping_1.default,
|
|
11
|
+
}) {
|
|
12
|
+
constructor(container) {
|
|
13
|
+
super(container);
|
|
14
|
+
this.manager_ = container.manager;
|
|
15
|
+
}
|
|
16
|
+
get moduleKey() {
|
|
17
|
+
return _1.CANCEL_ORDER_REASON_MODULE;
|
|
18
|
+
}
|
|
19
|
+
getOrderModule() {
|
|
20
|
+
const order = this.__container__[utils_1.Modules.ORDER];
|
|
21
|
+
if (!order || typeof order.retrieveReturnReason !== "function") {
|
|
22
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.UNEXPECTED_STATE, "Order module is not available; cannot validate return reasons");
|
|
23
|
+
}
|
|
24
|
+
return order;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Ensures reason_id references an existing return_reason (Medusa order module).
|
|
28
|
+
*/
|
|
29
|
+
async assertReasonExists(reasonId) {
|
|
30
|
+
const orderModule = this.getOrderModule();
|
|
31
|
+
try {
|
|
32
|
+
await orderModule.retrieveReturnReason(reasonId);
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_FOUND, `Return reason not found for id "${reasonId}"`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
normalizeMapping(raw) {
|
|
39
|
+
if (!raw || typeof raw !== "object" || !("id" in raw) || !("order_id" in raw)) {
|
|
40
|
+
throw new Error("Invalid cancel order reason mapping data");
|
|
41
|
+
}
|
|
42
|
+
const row = raw;
|
|
43
|
+
return {
|
|
44
|
+
id: row.id,
|
|
45
|
+
order_id: row.order_id,
|
|
46
|
+
reason_id: row.reason_id,
|
|
47
|
+
created_at: new Date(row.created_at ?? new Date()),
|
|
48
|
+
updated_at: new Date(row.updated_at ?? new Date()),
|
|
49
|
+
deleted_at: row.deleted_at ? new Date(row.deleted_at) : null,
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Persists which return reason was used for an order (after Medusa cancel succeeds).
|
|
54
|
+
*/
|
|
55
|
+
async recordOrderCancelReason(orderId, reasonId) {
|
|
56
|
+
const [existingRows] = await this.listAndCountCancelOrderReasonMappings({ order_id: orderId }, { take: 1 });
|
|
57
|
+
const existingList = Array.isArray(existingRows) ? existingRows : [];
|
|
58
|
+
const firstExisting = existingList[0];
|
|
59
|
+
if (firstExisting) {
|
|
60
|
+
return this.normalizeMapping(firstExisting);
|
|
61
|
+
}
|
|
62
|
+
const created = await this.createCancelOrderReasonMappings({
|
|
63
|
+
order_id: orderId,
|
|
64
|
+
reason_id: reasonId,
|
|
65
|
+
});
|
|
66
|
+
const arr = Array.isArray(created) ? created : [created];
|
|
67
|
+
const first = arr[0];
|
|
68
|
+
if (!first) {
|
|
69
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, "Failed to create cancel order reason mapping");
|
|
70
|
+
}
|
|
71
|
+
return this.normalizeMapping(first);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Load cancel reason mapping for an order, with return_reason label when still present.
|
|
75
|
+
*/
|
|
76
|
+
async getMappingWithReasonLabel(orderId) {
|
|
77
|
+
const [rows] = await this.listAndCountCancelOrderReasonMappings({ order_id: orderId }, { take: 1 });
|
|
78
|
+
const list = Array.isArray(rows) ? rows : [];
|
|
79
|
+
const first = list[0];
|
|
80
|
+
if (!first) {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
const mapping = this.normalizeMapping(first);
|
|
84
|
+
const orderModule = this.getOrderModule();
|
|
85
|
+
let reason_label = null;
|
|
86
|
+
try {
|
|
87
|
+
const reason = await orderModule.retrieveReturnReason(mapping.reason_id);
|
|
88
|
+
reason_label = typeof reason.label === "string" ? reason.label : null;
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
reason_label = null;
|
|
92
|
+
}
|
|
93
|
+
return { mapping, reason_label };
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
exports.default = CancelOrderReasonModuleService;
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9tb2R1bGVzL2NhbmNlbC1vcmRlci1yZWFzb24vc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLHFEQUErRTtBQUcvRSx3QkFBOEM7QUFDOUMsdUdBQTJFO0FBZTNFLE1BQXFCLDhCQUErQixTQUFRLElBQUEscUJBQWEsRUFBQztJQUN4RSx3QkFBd0IsRUFBeEIscUNBQXdCO0NBQ3pCLENBQUM7SUFHQSxZQUFZLFNBQStCO1FBQ3pDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUE7SUFDbkMsQ0FBQztJQUVELElBQUksU0FBUztRQUNYLE9BQU8sNkJBQTBCLENBQUE7SUFDbkMsQ0FBQztJQUVTLGNBQWM7UUFDdEIsTUFBTSxLQUFLLEdBQUksSUFBb0MsQ0FBQyxhQUFhLENBQUMsZUFBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ2hGLElBQUksQ0FBQyxLQUFLLElBQUksT0FBUSxLQUE2QixDQUFDLG9CQUFvQixLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ3hGLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsRUFDbEMsK0RBQStELENBQ2hFLENBQUE7UUFDSCxDQUFDO1FBQ0QsT0FBTyxLQUE0QixDQUFBO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxRQUFnQjtRQUN2QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDekMsSUFBSSxDQUFDO1lBQ0gsTUFBTSxXQUFXLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDbEQsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNQLE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFD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
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9jYW5jZWwtb3JkZXItcmVhc29uL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
|
@@ -7,6 +7,40 @@ const send_notification_step_1 = require("../workflows/steps/send-notification-s
|
|
|
7
7
|
const config_1 = require("../config");
|
|
8
8
|
/** Max length for FCM notification body to avoid "Android message is too big" (payload limit ~4KB). */
|
|
9
9
|
const PUSH_BODY_MAX_LENGTH = 200;
|
|
10
|
+
/**
|
|
11
|
+
* Resolve a display-friendly order total across Medusa payload variants.
|
|
12
|
+
*/
|
|
13
|
+
function normalizeOrderTotal(order) {
|
|
14
|
+
const summary = order.summary;
|
|
15
|
+
let fromSummary;
|
|
16
|
+
if (summary && typeof summary === "object") {
|
|
17
|
+
const s = summary;
|
|
18
|
+
fromSummary = s.current_order_total ?? s.accounting_total;
|
|
19
|
+
}
|
|
20
|
+
const raw = order.total ?? order.grand_total ?? fromSummary;
|
|
21
|
+
if (raw === null || raw === undefined) {
|
|
22
|
+
return "N/A";
|
|
23
|
+
}
|
|
24
|
+
if (typeof raw === "number" || typeof raw === "string") {
|
|
25
|
+
return raw;
|
|
26
|
+
}
|
|
27
|
+
if (typeof raw === "bigint") {
|
|
28
|
+
return Number(raw);
|
|
29
|
+
}
|
|
30
|
+
if (typeof raw === "object") {
|
|
31
|
+
const o = raw;
|
|
32
|
+
if (typeof o.numeric === "number") {
|
|
33
|
+
return o.numeric;
|
|
34
|
+
}
|
|
35
|
+
if (typeof o.value === "number") {
|
|
36
|
+
return o.value;
|
|
37
|
+
}
|
|
38
|
+
if (typeof o.value === "string") {
|
|
39
|
+
return o.value;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return "N/A";
|
|
43
|
+
}
|
|
10
44
|
/** Max total size for push data payload; keep only small fields to stay under FCM limit. */
|
|
11
45
|
function buildPushData(templateData, shortBody) {
|
|
12
46
|
const data = {
|
|
@@ -305,6 +339,8 @@ async function handleOrderStatusNotifications(orderId, newStatus, container) {
|
|
|
305
339
|
"status",
|
|
306
340
|
"total",
|
|
307
341
|
"grand_total",
|
|
342
|
+
"summary.current_order_total",
|
|
343
|
+
"summary.accounting_total",
|
|
308
344
|
"email",
|
|
309
345
|
"currency_code",
|
|
310
346
|
"customer_id",
|
|
@@ -322,12 +358,7 @@ async function handleOrderStatusNotifications(orderId, newStatus, container) {
|
|
|
322
358
|
return;
|
|
323
359
|
}
|
|
324
360
|
// Prepare template data
|
|
325
|
-
const totalValue = order
|
|
326
|
-
const orderTotal = typeof totalValue === "number"
|
|
327
|
-
? totalValue
|
|
328
|
-
: typeof totalValue === "string"
|
|
329
|
-
? totalValue
|
|
330
|
-
: "N/A";
|
|
361
|
+
const totalValue = normalizeOrderTotal(order);
|
|
331
362
|
// Check if the email belongs to a registered customer
|
|
332
363
|
const orderEmail = order.email;
|
|
333
364
|
const { data: customers } = orderEmail
|
|
@@ -349,7 +380,7 @@ async function handleOrderStatusNotifications(orderId, newStatus, container) {
|
|
|
349
380
|
order_id: order.id || "N/A",
|
|
350
381
|
display_id: (0, template_1.normalizeOrderDisplayId)(order.display_id),
|
|
351
382
|
order_status: order.status || newStatus,
|
|
352
|
-
order_total:
|
|
383
|
+
order_total: totalValue,
|
|
353
384
|
currency_code,
|
|
354
385
|
order_email: order.email || "N/A",
|
|
355
386
|
order_date: (0, template_1.formatOrderDateHuman)(order.created_at ?? order.updated_at ?? new Date()),
|
|
@@ -358,6 +389,8 @@ async function handleOrderStatusNotifications(orderId, newStatus, container) {
|
|
|
358
389
|
billing_address: order.billing_address || {},
|
|
359
390
|
is_registered: isRegistered,
|
|
360
391
|
claim_link: isRegistered ? claimLink : undefined,
|
|
392
|
+
storefront_url: config.storefrontUrl,
|
|
393
|
+
storefrontUrl: config.storefrontUrl,
|
|
361
394
|
};
|
|
362
395
|
const results = [];
|
|
363
396
|
const notificationPromises = notificationConfigs.map(async (notificationConfig) => {
|
|
@@ -397,4 +430,4 @@ async function handleOrderStatusNotifications(orderId, newStatus, container) {
|
|
|
397
430
|
// Don't throw - notification errors shouldn't break order flow
|
|
398
431
|
}
|
|
399
432
|
}
|
|
400
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvbm90aWZpY2F0aW9uLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUEyWkEsd0VBa0pDO0FBNWlCRCxxREFBMkY7QUFDM0YseUNBS21CO0FBQ25CLHNGQUE0RTtBQUM1RSxzQ0FBaUY7QUFzQmpGLHVHQUF1RztBQUN2RyxNQUFNLG9CQUFvQixHQUFHLEdBQUcsQ0FBQTtBQUVoQyw0RkFBNEY7QUFDNUYsU0FBUyxhQUFhLENBQ3BCLFlBQStCLEVBQy9CLFNBQWlCO0lBRWpCLE1BQU0sSUFBSSxHQUE0QjtRQUNwQyxLQUFLLEVBQUUsQ0FBQyxZQUFZLENBQUMsWUFBWSxJQUFJLFNBQVMsTUFBTSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLElBQUksY0FBYztRQUNwRyxJQUFJLEVBQUUsU0FBUztRQUNmLFFBQVEsRUFBRSxZQUFZLENBQUMsUUFBUTtRQUMvQixZQUFZLEVBQUUsWUFBWSxDQUFDLFlBQVk7S0FDeEMsQ0FBQTtJQUNELElBQUksWUFBWSxDQUFDLFVBQVUsS0FBSyxTQUFTLElBQUksWUFBWSxDQUFDLFVBQVUsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUM5RSxJQUFJLENBQUMsVUFBVSxHQUFHLFlBQVksQ0FBQyxVQUFVLENBQUE7SUFDM0MsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQVMsbUJBQW1CLENBQzFCLEVBQVUsRUFDVixPQUFlLEVBQ2YsT0FBZSxFQUNmLFlBQStCO0lBRS9CLE1BQU0sV0FBVyxHQUFHLE9BQU8sT0FBTyxLQUFLLFFBQVEsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxjQUFjLENB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
|
|
433
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbHMvbm90aWZpY2F0aW9uLWhhbmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUErYkEsd0VBZ0pDO0FBOWtCRCxxREFBMkY7QUFDM0YseUNBS21CO0FBQ25CLHNGQUE0RTtBQUM1RSxzQ0FBaUY7QUFzQmpGLHVHQUF1RztBQUN2RyxNQUFNLG9CQUFvQixHQUFHLEdBQUcsQ0FBQTtBQUVoQzs7R0FFRztBQUNILFNBQVMsbUJBQW1CLENBQUMsS0FBOEI7SUFDekQsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQTtJQUM3QixJQUFJLFdBQW9CLENBQUE7SUFDeEIsSUFBSSxPQUFPLElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDM0MsTUFBTSxDQUFDLEdBQUcsT0FBa0MsQ0FBQTtRQUM1QyxXQUFXLEdBQUcsQ0FBQyxDQUFDLG1CQUFtQixJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQTtJQUMzRCxDQUFDO0lBRUQsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLEtBQUssSUFBSSxLQUFLLENBQUMsV0FBVyxJQUFJLFdBQVcsQ0FBQTtJQUMzRCxJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQ3RDLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUNELElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3ZELE9BQU8sR0FBRyxDQUFBO0lBQ1osQ0FBQztJQUNELElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDNUIsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDcEIsQ0FBQztJQUNELElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7UUFD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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "order-management",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.72",
|
|
4
4
|
"description": "A starter for Medusa plugins.",
|
|
5
5
|
"author": "Medusa (https://medusajs.com)",
|
|
6
6
|
"license": "MIT",
|
|
@@ -52,6 +52,7 @@
|
|
|
52
52
|
"ts-node": "^10.9.2",
|
|
53
53
|
"typescript": "^5.6.2",
|
|
54
54
|
"vite": "^5.2.11",
|
|
55
|
+
"vitest": "^2.0.0",
|
|
55
56
|
"yalc": "^1.0.0-pre.53"
|
|
56
57
|
},
|
|
57
58
|
"peerDependencies": {
|