@lodashventure/medusa-quotation 1.4.8 → 1.4.10
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/admin/index.js +3198 -0
- package/.medusa/server/src/admin/index.mjs +3196 -0
- package/.medusa/server/src/api/admin/quote-config/route.js +151 -0
- package/.medusa/server/src/api/admin/quote-seq/[id]/route.js +133 -0
- package/.medusa/server/src/api/admin/quote-seq/route.js +77 -0
- package/.medusa/server/src/api/admin/quote-store/route.js +94 -0
- package/.medusa/server/src/api/admin/quotes/[id]/reject/route.js +22 -0
- package/.medusa/server/src/api/admin/quotes/[id]/route.js +16 -0
- package/.medusa/server/src/api/admin/quotes/[id]/send/route.js +22 -0
- package/.medusa/server/src/api/admin/quotes/create/route.js +19 -0
- package/.medusa/server/src/api/admin/quotes/query-config.js +56 -0
- package/.medusa/server/src/api/admin/quotes/route.js +19 -0
- package/.medusa/server/src/api/admin/quotes/validators.js +48 -0
- package/.medusa/server/src/api/middlewares.js +34 -0
- package/.medusa/server/src/api/store/customers/me/quotes/[id]/accept/route.js +23 -0
- package/.medusa/server/src/api/store/customers/me/quotes/[id]/preview/route.js +23 -0
- package/.medusa/server/src/api/store/customers/me/quotes/[id]/reject/route.js +23 -0
- package/.medusa/server/src/api/store/customers/me/quotes/query-config.js +55 -0
- package/.medusa/server/src/api/store/customers/me/quotes/route.js +22 -0
- package/.medusa/server/src/api/store/validators.js +15 -0
- package/.medusa/server/src/fonts/vfs_fonts.js +20 -0
- package/.medusa/server/src/links/quote-cart.js +19 -0
- package/.medusa/server/src/links/quote-config-store.js +19 -0
- package/.medusa/server/src/links/quote-customer.js +19 -0
- package/.medusa/server/src/links/quote-order-change.js +19 -0
- package/.medusa/server/src/links/quote-order.js +22 -0
- package/.medusa/server/src/links/quote-seq-store.js +19 -0
- package/.medusa/server/src/modules/quote/index.js +13 -0
- package/.medusa/server/src/modules/quote/migrations/Migration20250303093636.js +21 -0
- package/.medusa/server/src/modules/quote/migrations/Migration20250304145603.js +17 -0
- package/.medusa/server/src/modules/quote/migrations/Migration20250608102414.js +25 -0
- package/.medusa/server/src/modules/quote/migrations/Migration20250622111411.js +23 -0
- package/.medusa/server/src/modules/quote/migrations/Migration20250622153414.js +17 -0
- package/.medusa/server/src/modules/quote/migrations/Migration20250622153513.js +14 -0
- package/.medusa/server/src/modules/quote/migrations/Migration20251021081500.js +14 -0
- package/.medusa/server/src/modules/quote/models/quote-config.js +20 -0
- package/.medusa/server/src/modules/quote/models/quote-seq.js +13 -0
- package/.medusa/server/src/modules/quote/models/quote-store-detail.js +25 -0
- package/.medusa/server/src/modules/quote/models/quote.js +17 -0
- package/.medusa/server/src/modules/quote/service.js +130 -0
- package/.medusa/server/src/modules/quote/types/quote-status.enum.js +18 -0
- package/.medusa/server/src/modules/quote/types/seq-type.enum.js +9 -0
- package/.medusa/server/src/workflows/admin-create-quote.js +79 -0
- package/.medusa/server/src/workflows/create-request-for-quote.js +88 -0
- package/.medusa/server/src/workflows/customer-accept-quote.js +45 -0
- package/.medusa/server/src/workflows/customer-reject-quote.js +30 -0
- package/.medusa/server/src/workflows/merchant-reject-quote.js +30 -0
- package/.medusa/server/src/workflows/merchant-send-quote.js +30 -0
- package/.medusa/server/src/workflows/steps/create-quotes.js +26 -0
- package/.medusa/server/src/workflows/steps/update-quotes.js +20 -0
- package/.medusa/server/src/workflows/steps/validate-quote-can-accept.js +12 -0
- package/.medusa/server/src/workflows/steps/validate-quote-not-accepted.js +12 -0
- package/package.json +8 -5
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.adminCreateQuoteWorkflow = void 0;
|
|
4
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
5
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
6
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
7
|
+
const create_quotes_1 = require("./steps/create-quotes");
|
|
8
|
+
exports.adminCreateQuoteWorkflow = (0, workflows_sdk_1.createWorkflow)("admin-create-quote", (input) => {
|
|
9
|
+
// Get customer details
|
|
10
|
+
const { data: customers } = (0, core_flows_1.useQueryGraphStep)({
|
|
11
|
+
entity: "customer",
|
|
12
|
+
fields: ["id", "email", "first_name", "last_name"],
|
|
13
|
+
filters: { id: input.customer_id },
|
|
14
|
+
options: {
|
|
15
|
+
throwIfKeyNotFound: true,
|
|
16
|
+
},
|
|
17
|
+
}).config({ name: "customer-query" });
|
|
18
|
+
// Get default region
|
|
19
|
+
const { data: regions } = (0, core_flows_1.useQueryGraphStep)({
|
|
20
|
+
entity: "region",
|
|
21
|
+
fields: ["id", "currency_code"],
|
|
22
|
+
filters: {},
|
|
23
|
+
}).config({ name: "region-query" });
|
|
24
|
+
// Create draft order with the items provided
|
|
25
|
+
const orderInput = (0, workflows_sdk_1.transform)({ customers, regions, input }, ({ customers, regions, input }) => {
|
|
26
|
+
const defaultRegion = regions[0];
|
|
27
|
+
return {
|
|
28
|
+
is_draft_order: true,
|
|
29
|
+
status: utils_1.OrderStatus.DRAFT,
|
|
30
|
+
email: customers[0].email || undefined,
|
|
31
|
+
customer_id: customers[0].id || undefined,
|
|
32
|
+
region_id: defaultRegion?.id,
|
|
33
|
+
currency_code: defaultRegion?.currency_code || "thb",
|
|
34
|
+
billing_address: input.billing_address,
|
|
35
|
+
shipping_address: input.shipping_address,
|
|
36
|
+
items: input.items.map((item) => {
|
|
37
|
+
return {
|
|
38
|
+
variant_id: item.variant_id,
|
|
39
|
+
quantity: item.quantity,
|
|
40
|
+
unit_price: item.unit_price || 0,
|
|
41
|
+
};
|
|
42
|
+
}),
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
const draftOrder = core_flows_1.createOrderWorkflow.runAsStep({
|
|
46
|
+
input: orderInput,
|
|
47
|
+
});
|
|
48
|
+
// Create order edit for the quote
|
|
49
|
+
const orderEditInput = (0, workflows_sdk_1.transform)({ draftOrder }, ({ draftOrder }) => {
|
|
50
|
+
return {
|
|
51
|
+
order_id: draftOrder.id,
|
|
52
|
+
description: "Quote created by admin",
|
|
53
|
+
internal_note: "",
|
|
54
|
+
metadata: {},
|
|
55
|
+
};
|
|
56
|
+
});
|
|
57
|
+
const changeOrder = core_flows_1.beginOrderEditOrderWorkflow.runAsStep({
|
|
58
|
+
input: orderEditInput,
|
|
59
|
+
});
|
|
60
|
+
// Create quote
|
|
61
|
+
const quoteData = (0, workflows_sdk_1.transform)({
|
|
62
|
+
draftOrder,
|
|
63
|
+
customers,
|
|
64
|
+
changeOrder,
|
|
65
|
+
}, ({ draftOrder, customers, changeOrder }) => {
|
|
66
|
+
return {
|
|
67
|
+
draft_order_id: draftOrder.id,
|
|
68
|
+
customer_id: customers[0].id,
|
|
69
|
+
order_change_id: changeOrder.id,
|
|
70
|
+
};
|
|
71
|
+
});
|
|
72
|
+
const quotes = (0, create_quotes_1.createQuotesStep)([quoteData]);
|
|
73
|
+
(0, core_flows_1.emitEventStep)({
|
|
74
|
+
eventName: "quote.created",
|
|
75
|
+
data: { id: quotes[0].id },
|
|
76
|
+
});
|
|
77
|
+
return new workflows_sdk_1.WorkflowResponse({ quote: quotes[0] });
|
|
78
|
+
});
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRtaW4tY3JlYXRlLXF1b3RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9hZG1pbi1jcmVhdGUtcXVvdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNERBTXFDO0FBQ3JDLHFEQUF3RDtBQUN4RCxxRUFJMkM7QUFFM0MseURBQXlEO0FBYTVDLFFBQUEsd0JBQXdCLEdBQUcsSUFBQSw4QkFBYyxFQUNwRCxvQkFBb0IsRUFDcEIsQ0FBQyxLQUFvQixFQUFFLEVBQUU7SUFDdkIsdUJBQXVCO0lBQ3ZCLE1BQU0sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUM1QyxNQUFNLEVBQUUsVUFBVTtRQUNsQixNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUM7UUFDbEQsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUU7UUFDbEMsT0FBTyxFQUFFO1lBQ1Asa0JBQWtCLEVBQUUsSUFBSTtTQUN6QjtLQUNGLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBRXRDLHFCQUFxQjtJQUNyQixNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLElBQUEsOEJBQWlCLEVBQUM7UUFDMUMsTUFBTSxFQUFFLFFBQVE7UUFDaEIsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQztRQUMvQixPQUFPLEVBQUUsRUFBRTtLQUNaLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUVwQyw2Q0FBNkM7SUFDN0MsTUFBTSxVQUFVLEdBQUcsSUFBQSx5QkFBUyxFQUMxQixFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQzdCLENBQUMsRUFBRSxT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
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createRequestForQuoteWorkflow = void 0;
|
|
4
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
5
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
6
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
7
|
+
const create_quotes_1 = require("./steps/create-quotes");
|
|
8
|
+
exports.createRequestForQuoteWorkflow = (0, workflows_sdk_1.createWorkflow)("create-request-for-quote", (input) => {
|
|
9
|
+
// @ts-ignore
|
|
10
|
+
const { data: carts } = (0, core_flows_1.useQueryGraphStep)({
|
|
11
|
+
entity: "cart",
|
|
12
|
+
fields: [
|
|
13
|
+
"id",
|
|
14
|
+
"sales_channel_id",
|
|
15
|
+
"currency_code",
|
|
16
|
+
"region_id",
|
|
17
|
+
"customer.id",
|
|
18
|
+
"customer.email",
|
|
19
|
+
"shipping_address.*",
|
|
20
|
+
"billing_address.*",
|
|
21
|
+
"items.*",
|
|
22
|
+
"shipping_methods.*",
|
|
23
|
+
"promotions.code",
|
|
24
|
+
],
|
|
25
|
+
filters: { id: input.cart_id },
|
|
26
|
+
options: {
|
|
27
|
+
throwIfKeyNotFound: true,
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
const { data: customers } = (0, core_flows_1.useQueryGraphStep)({
|
|
31
|
+
entity: "customer",
|
|
32
|
+
fields: ["id", "customer"],
|
|
33
|
+
filters: { id: input.customer_id },
|
|
34
|
+
options: {
|
|
35
|
+
throwIfKeyNotFound: true,
|
|
36
|
+
},
|
|
37
|
+
}).config({ name: "customer-query" });
|
|
38
|
+
const orderInput = (0, workflows_sdk_1.transform)({ carts, customers }, ({ carts, customers }) => {
|
|
39
|
+
return {
|
|
40
|
+
is_draft_order: true,
|
|
41
|
+
status: utils_1.OrderStatus.DRAFT,
|
|
42
|
+
sales_channel_id: carts[0].sales_channel_id || undefined,
|
|
43
|
+
email: customers[0].email || undefined,
|
|
44
|
+
customer_id: customers[0].id || undefined,
|
|
45
|
+
billing_address: carts[0].billing_address,
|
|
46
|
+
shipping_address: carts[0].shipping_address,
|
|
47
|
+
items: carts[0].items || [],
|
|
48
|
+
region_id: carts[0].region_id || undefined,
|
|
49
|
+
promo_codes: carts[0].promotions?.map((promo) => promo?.code),
|
|
50
|
+
currency_code: carts[0].currency_code,
|
|
51
|
+
shipping_methods: carts[0].shipping_methods || [],
|
|
52
|
+
};
|
|
53
|
+
});
|
|
54
|
+
const draftOrder = core_flows_1.createOrderWorkflow.runAsStep({
|
|
55
|
+
input: orderInput,
|
|
56
|
+
});
|
|
57
|
+
const orderEditInput = (0, workflows_sdk_1.transform)({ draftOrder }, ({ draftOrder }) => {
|
|
58
|
+
return {
|
|
59
|
+
order_id: draftOrder.id,
|
|
60
|
+
description: "",
|
|
61
|
+
internal_note: "",
|
|
62
|
+
metadata: {},
|
|
63
|
+
};
|
|
64
|
+
});
|
|
65
|
+
const changeOrder = core_flows_1.beginOrderEditOrderWorkflow.runAsStep({
|
|
66
|
+
input: orderEditInput,
|
|
67
|
+
});
|
|
68
|
+
const quoteData = (0, workflows_sdk_1.transform)({
|
|
69
|
+
draftOrder,
|
|
70
|
+
carts,
|
|
71
|
+
customers,
|
|
72
|
+
changeOrder,
|
|
73
|
+
}, ({ draftOrder, carts, customers, changeOrder }) => {
|
|
74
|
+
return {
|
|
75
|
+
draft_order_id: draftOrder.id,
|
|
76
|
+
cart_id: carts[0].id,
|
|
77
|
+
customer_id: customers[0].id,
|
|
78
|
+
order_change_id: changeOrder.id,
|
|
79
|
+
};
|
|
80
|
+
});
|
|
81
|
+
const quotes = (0, create_quotes_1.createQuotesStep)([quoteData]);
|
|
82
|
+
(0, core_flows_1.emitEventStep)({
|
|
83
|
+
eventName: "quote.requested",
|
|
84
|
+
data: { id: quotes[0].id },
|
|
85
|
+
});
|
|
86
|
+
return new workflows_sdk_1.WorkflowResponse({ quote: quotes[0] });
|
|
87
|
+
});
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXJlcXVlc3QtZm9yLXF1b3RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9jcmVhdGUtcmVxdWVzdC1mb3ItcXVvdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNERBTXFDO0FBQ3JDLHFEQUF3RDtBQUN4RCxxRUFJMkM7QUFFM0MseURBQXlEO0FBTzVDLFFBQUEsNkJBQTZCLEdBQUcsSUFBQSw4QkFBYyxFQUN6RCwwQkFBMEIsRUFDMUIsQ0FBQyxLQUFvQixFQUFFLEVBQUU7SUFDdkIsYUFBYTtJQUNiLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUN4QyxNQUFNLEVBQUUsTUFBTTtRQUNkLE1BQU0sRUFBRTtZQUNOLElBQUk7WUFDSixrQkFBa0I7WUFDbEIsZUFBZTtZQUNmLFdBQVc7WUFDWCxhQUFhO1lBQ2IsZ0JBQWdCO1lBQ2hCLG9CQUFvQjtZQUNwQixtQkFBbUI7WUFDbkIsU0FBUztZQUNULG9CQUFvQjtZQUNwQixpQkFBaUI7U0FDbEI7UUFDRCxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRTtRQUM5QixPQUFPLEVBQUU7WUFDUCxrQkFBa0IsRUFBRSxJQUFJO1NBQ3pCO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFBLDhCQUFpQixFQUFDO1FBQzVDLE1BQU0sRUFBRSxVQUFVO1FBQ2xCLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUM7UUFDMUIsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUU7UUFDbEMsT0FBTyxFQUFFO1lBQ1Asa0JBQWtCLEVBQUUsSUFBSTtTQUN6QjtLQUNGLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsQ0FB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
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.customerAcceptQuoteWorkflow = void 0;
|
|
4
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
5
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
6
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
7
|
+
const validate_quote_can_accept_1 = require("./steps/validate-quote-can-accept");
|
|
8
|
+
const update_quotes_1 = require("./steps/update-quotes");
|
|
9
|
+
const quote_status_enum_1 = require("../modules/quote/types/quote-status.enum");
|
|
10
|
+
exports.customerAcceptQuoteWorkflow = (0, workflows_sdk_1.createWorkflow)("customer-accept-quote-workflow", (input) => {
|
|
11
|
+
// @ts-ignore
|
|
12
|
+
const { data: quotes } = (0, core_flows_1.useQueryGraphStep)({
|
|
13
|
+
entity: "quote",
|
|
14
|
+
fields: ["id", "draft_order_id", "status"],
|
|
15
|
+
filters: { id: input.quote_id, customer_id: input.customer_id },
|
|
16
|
+
options: {
|
|
17
|
+
throwIfKeyNotFound: true,
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
(0, validate_quote_can_accept_1.validateQuoteCanAcceptStep)({
|
|
21
|
+
// @ts-ignore
|
|
22
|
+
quote: quotes[0],
|
|
23
|
+
});
|
|
24
|
+
(0, update_quotes_1.updateQuotesStep)([
|
|
25
|
+
{
|
|
26
|
+
id: input.quote_id,
|
|
27
|
+
status: quote_status_enum_1.QuoteStatus.ACCEPTED,
|
|
28
|
+
},
|
|
29
|
+
]);
|
|
30
|
+
core_flows_1.confirmOrderEditRequestWorkflow.runAsStep({
|
|
31
|
+
input: {
|
|
32
|
+
order_id: quotes[0].draft_order_id,
|
|
33
|
+
confirmed_by: input.customer_id,
|
|
34
|
+
},
|
|
35
|
+
});
|
|
36
|
+
core_flows_1.updateOrderWorkflow.runAsStep({
|
|
37
|
+
input: {
|
|
38
|
+
id: quotes[0].draft_order_id,
|
|
39
|
+
// @ts-ignore
|
|
40
|
+
status: utils_1.OrderStatus.PENDING,
|
|
41
|
+
is_draft_order: false,
|
|
42
|
+
},
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItYWNjZXB0LXF1b3RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9jdXN0b21lci1hY2NlcHQtcXVvdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNERBSXFDO0FBQ3JDLHFEQUF3RDtBQUN4RCxxRUFBbUU7QUFDbkUsaUZBQStFO0FBQy9FLHlEQUF5RDtBQUN6RCxnRkFBdUU7QUFPMUQsUUFBQSwyQkFBMkIsR0FBRyxJQUFBLDhCQUFjLEVBQ3ZELGdDQUFnQyxFQUNoQyxDQUFDLEtBQW9CLEVBQUUsRUFBRTtJQUN2QixhQUFhO0lBQ2IsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFBLDhCQUFpQixFQUFDO1FBQ3pDLE1BQU0sRUFBRSxPQUFPO1FBQ2YsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLFFBQVEsQ0FBQztRQUMxQyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRTtRQUMvRCxPQUFPLEVBQUU7WUFDUCxrQkFBa0IsRUFBRSxJQUFJO1NBQ3pCO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsSUFBQSxzREFBMEIsRUFBQztRQUN6QixhQUFhO1FBQ2IsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7S0FDakIsQ0FBQyxDQUFDO0lBRUgsSUFBQSxnQ0FBZ0IsRUFBQztRQUNmO1lBQ0UsRUFBRSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ2xCLE1BQU0sRUFBRSwrQkFBVyxDQUFDLFFBQVE7U0FDN0I7S0FDRixDQUFDLENBQUM7SUFFSCw0Q0FBK0IsQ0FBQyxTQUFTLENBQUM7UUFDeEMsS0FBSyxFQUFFO1lBQ0wsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjO1lBQ2xDLFlBQVksRUFBRSxLQUFLLENBQUMsV0FBVztTQUNoQztLQUNGLENBQUMsQ0FBQztJQUVILGdDQUFtQixDQUFDLFNBQVMsQ0FBQztRQUM1QixLQUFLLEVBQUU7WUFDTCxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWM7WUFDNUIsYUFBYTtZQUNiLE1BQU0sRUFBRSxtQkFBVyxDQUFDLE9BQU87WUFDM0IsY0FBYyxFQUFFLEtBQUs7U0FDdEI7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDLENBQ0YsQ0FBQyJ9
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.customerRejectQuoteWorkflow = void 0;
|
|
4
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const update_quotes_1 = require("./steps/update-quotes");
|
|
7
|
+
const validate_quote_not_accepted_1 = require("./steps/validate-quote-not-accepted");
|
|
8
|
+
const quote_status_enum_1 = require("../modules/quote/types/quote-status.enum");
|
|
9
|
+
exports.customerRejectQuoteWorkflow = (0, workflows_sdk_1.createWorkflow)("customer-reject-quote-workflow", (input) => {
|
|
10
|
+
// @ts-ignore
|
|
11
|
+
const { data: quotes } = (0, core_flows_1.useQueryGraphStep)({
|
|
12
|
+
entity: "quote",
|
|
13
|
+
fields: ["id", "status"],
|
|
14
|
+
filters: { id: input.quote_id, customer_id: input.customer_id },
|
|
15
|
+
options: {
|
|
16
|
+
throwIfKeyNotFound: true,
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
(0, validate_quote_not_accepted_1.validateQuoteNotAccepted)({
|
|
20
|
+
// @ts-ignore
|
|
21
|
+
quote: quotes[0],
|
|
22
|
+
});
|
|
23
|
+
(0, update_quotes_1.updateQuotesStep)([
|
|
24
|
+
{
|
|
25
|
+
id: input.quote_id,
|
|
26
|
+
status: quote_status_enum_1.QuoteStatus.CUSTOMER_REJECTED,
|
|
27
|
+
},
|
|
28
|
+
]);
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tZXItcmVqZWN0LXF1b3RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9jdXN0b21lci1yZWplY3QtcXVvdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNERBQWdFO0FBQ2hFLHFFQUFtRTtBQUNuRSx5REFBeUQ7QUFDekQscUZBQStFO0FBQy9FLGdGQUF1RTtBQU8xRCxRQUFBLDJCQUEyQixHQUFHLElBQUEsOEJBQWMsRUFDdkQsZ0NBQWdDLEVBQ2hDLENBQUMsS0FBb0IsRUFBRSxFQUFFO0lBQ3ZCLGFBQWE7SUFDYixNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUEsOEJBQWlCLEVBQUM7UUFDekMsTUFBTSxFQUFFLE9BQU87UUFDZixNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDO1FBQ3hCLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFO1FBQy9ELE9BQU8sRUFBRTtZQUNQLGtCQUFrQixFQUFFLElBQUk7U0FDekI7S0FDRixDQUFDLENBQUM7SUFFSCxJQUFBLHNEQUF3QixFQUFDO1FBQ3ZCLGFBQWE7UUFDYixLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztLQUNqQixDQUFDLENBQUM7SUFFSCxJQUFBLGdDQUFnQixFQUFDO1FBQ2Y7WUFDRSxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDbEIsTUFBTSxFQUFFLCtCQUFXLENBQUMsaUJBQWlCO1NBQ3RDO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.merchantRejectQuoteWorkflow = void 0;
|
|
4
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const validate_quote_not_accepted_1 = require("./steps/validate-quote-not-accepted");
|
|
7
|
+
const update_quotes_1 = require("./steps/update-quotes");
|
|
8
|
+
const quote_status_enum_1 = require("../modules/quote/types/quote-status.enum");
|
|
9
|
+
exports.merchantRejectQuoteWorkflow = (0, workflows_sdk_1.createWorkflow)("merchant-reject-quote-workflow", (input) => {
|
|
10
|
+
// @ts-ignore
|
|
11
|
+
const { data: quotes } = (0, core_flows_1.useQueryGraphStep)({
|
|
12
|
+
entity: "quote",
|
|
13
|
+
fields: ["id", "status"],
|
|
14
|
+
filters: { id: input.quote_id },
|
|
15
|
+
options: {
|
|
16
|
+
throwIfKeyNotFound: true,
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
(0, validate_quote_not_accepted_1.validateQuoteNotAccepted)({
|
|
20
|
+
// @ts-ignore
|
|
21
|
+
quote: quotes[0],
|
|
22
|
+
});
|
|
23
|
+
(0, update_quotes_1.updateQuotesStep)([
|
|
24
|
+
{
|
|
25
|
+
id: input.quote_id,
|
|
26
|
+
status: quote_status_enum_1.QuoteStatus.MERCHANT_REJECTED,
|
|
27
|
+
},
|
|
28
|
+
]);
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyY2hhbnQtcmVqZWN0LXF1b3RlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9tZXJjaGFudC1yZWplY3QtcXVvdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNERBQWdFO0FBQ2hFLHFFQUFtRTtBQUNuRSxxRkFBK0U7QUFDL0UseURBQXlEO0FBQ3pELGdGQUF1RTtBQU0xRCxRQUFBLDJCQUEyQixHQUFHLElBQUEsOEJBQWMsRUFDdkQsZ0NBQWdDLEVBQ2hDLENBQUMsS0FBb0IsRUFBRSxFQUFFO0lBQ3ZCLGFBQWE7SUFDYixNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUEsOEJBQWlCLEVBQUM7UUFDekMsTUFBTSxFQUFFLE9BQU87UUFDZixNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDO1FBQ3hCLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFO1FBQy9CLE9BQU8sRUFBRTtZQUNQLGtCQUFrQixFQUFFLElBQUk7U0FDekI7S0FDRixDQUFDLENBQUM7SUFFSCxJQUFBLHNEQUF3QixFQUFDO1FBQ3ZCLGFBQWE7UUFDYixLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztLQUNqQixDQUFDLENBQUM7SUFFSCxJQUFBLGdDQUFnQixFQUFDO1FBQ2Y7WUFDRSxFQUFFLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDbEIsTUFBTSxFQUFFLCtCQUFXLENBQUMsaUJBQWlCO1NBQ3RDO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.merchantSendQuoteWorkflow = void 0;
|
|
4
|
+
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const update_quotes_1 = require("./steps/update-quotes");
|
|
7
|
+
const validate_quote_not_accepted_1 = require("./steps/validate-quote-not-accepted");
|
|
8
|
+
const quote_status_enum_1 = require("../modules/quote/types/quote-status.enum");
|
|
9
|
+
exports.merchantSendQuoteWorkflow = (0, workflows_sdk_1.createWorkflow)("merchant-send-quote-workflow", (input) => {
|
|
10
|
+
// @ts-ignore
|
|
11
|
+
const { data: quotes } = (0, core_flows_1.useQueryGraphStep)({
|
|
12
|
+
entity: "quote",
|
|
13
|
+
fields: ["id", "status"],
|
|
14
|
+
filters: { id: input.quote_id },
|
|
15
|
+
options: {
|
|
16
|
+
throwIfKeyNotFound: true,
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
(0, validate_quote_not_accepted_1.validateQuoteNotAccepted)({
|
|
20
|
+
// @ts-ignore
|
|
21
|
+
quote: quotes[0],
|
|
22
|
+
});
|
|
23
|
+
(0, update_quotes_1.updateQuotesStep)([
|
|
24
|
+
{
|
|
25
|
+
id: input.quote_id,
|
|
26
|
+
status: quote_status_enum_1.QuoteStatus.PENDING_CUSTOMER,
|
|
27
|
+
},
|
|
28
|
+
]);
|
|
29
|
+
});
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyY2hhbnQtc2VuZC1xdW90ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvbWVyY2hhbnQtc2VuZC1xdW90ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0REFBZ0U7QUFDaEUscUVBQW1FO0FBQ25FLHlEQUF5RDtBQUN6RCxxRkFBK0U7QUFDL0UsZ0ZBQXVFO0FBTTFELFFBQUEseUJBQXlCLEdBQUcsSUFBQSw4QkFBYyxFQUNyRCw4QkFBOEIsRUFDOUIsQ0FBQyxLQUFvQixFQUFFLEVBQUU7SUFDdkIsYUFBYTtJQUNiLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEdBQUcsSUFBQSw4QkFBaUIsRUFBQztRQUN6QyxNQUFNLEVBQUUsT0FBTztRQUNmLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUM7UUFDeEIsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxRQUFRLEVBQUU7UUFDL0IsT0FBTyxFQUFFO1lBQ1Asa0JBQWtCLEVBQUUsSUFBSTtTQUN6QjtLQUNGLENBQUMsQ0FBQztJQUVILElBQUEsc0RBQXdCLEVBQUM7UUFDdkIsYUFBYTtRQUNiLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0tBQ2pCLENBQUMsQ0FBQztJQUVILElBQUEsZ0NBQWdCLEVBQUM7UUFDZjtZQUNFLEVBQUUsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUNsQixNQUFNLEVBQUUsK0JBQVcsQ0FBQyxnQkFBZ0I7U0FDckM7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDLENBQ0YsQ0FBQyJ9
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createQuotesStep = void 0;
|
|
4
|
+
const quote_1 = require("../../modules/quote");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
exports.createQuotesStep = (0, workflows_sdk_1.createStep)("create-quotes", async (input, { container }) => {
|
|
7
|
+
const quoteModuleService = container.resolve(quote_1.QUOTE_MODULE);
|
|
8
|
+
// Generate doc_no for each quote using a timestamp-based approach
|
|
9
|
+
const quotesWithDocNo = await Promise.all(input.map(async (quoteData) => {
|
|
10
|
+
// Simple doc_no generation - can be enhanced to use quote sequences
|
|
11
|
+
const docNo = `Q-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
|
|
12
|
+
return {
|
|
13
|
+
...quoteData,
|
|
14
|
+
doc_no: docNo,
|
|
15
|
+
};
|
|
16
|
+
}));
|
|
17
|
+
const quotes = await quoteModuleService.createQuotes(quotesWithDocNo);
|
|
18
|
+
return new workflows_sdk_1.StepResponse(quotes, quotes.map((quote) => quote.id));
|
|
19
|
+
}, async (quoteIds, { container }) => {
|
|
20
|
+
if (!quoteIds) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const quoteModuleService = container.resolve(quote_1.QUOTE_MODULE);
|
|
24
|
+
await quoteModuleService.deleteQuotes(quoteIds);
|
|
25
|
+
});
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXF1b3Rlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3RlcHMvY3JlYXRlLXF1b3Rlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQ0FBbUQ7QUFDbkQscUVBQTZFO0FBVWhFLFFBQUEsZ0JBQWdCLEdBQUcsSUFBQSwwQkFBVSxFQUN4QyxlQUFlLEVBQ2YsS0FBSyxFQUFFLEtBQWdCLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3hDLE1BQU0sa0JBQWtCLEdBQ3RCLFNBQVMsQ0FBQyxPQUFPLENBQUMsb0JBQVksQ0FBQyxDQUFDO0lBRWxDLGtFQUFrRTtJQUNsRSxNQUFNLGVBQWUsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ3ZDLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxFQUFFO1FBQzVCLG9FQUFvRTtRQUNwRSxNQUFNLEtBQUssR0FBRyxLQUFLLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUUzRSxPQUFPO1lBQ0wsR0FBRyxTQUFTO1lBQ1osTUFBTSxFQUFFLEtBQUs7U0FDZCxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUVGLE1BQU0sTUFBTSxHQUFHLE1BQU0sa0JBQWtCLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBRXRFLE9BQU8sSUFBSSw0QkFBWSxDQUNyQixNQUFNLEVBQ04sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUNoQyxDQUFDO0FBQ0osQ0FBQyxFQUNELEtBQUssRUFBRSxRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ2hDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNkLE9BQU87SUFDVCxDQUFDO0lBRUQsTUFBTSxrQkFBa0IsR0FDdEIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxvQkFBWSxDQUFDLENBQUM7SUFFbEMsTUFBTSxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDbEQsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateQuotesStep = void 0;
|
|
4
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
5
|
+
const quote_1 = require("../../modules/quote");
|
|
6
|
+
exports.updateQuotesStep = (0, workflows_sdk_1.createStep)("update-quotes", async (data, { container }) => {
|
|
7
|
+
const quoteModuleService = container.resolve(quote_1.QUOTE_MODULE);
|
|
8
|
+
const dataBeforeUpdate = await quoteModuleService.listQuotes({ id: data.map((d) => d.id) });
|
|
9
|
+
const updatedQuotes = await quoteModuleService.updateQuotes(data);
|
|
10
|
+
return new workflows_sdk_1.StepResponse(updatedQuotes, {
|
|
11
|
+
dataBeforeUpdate,
|
|
12
|
+
});
|
|
13
|
+
}, async (revertInput, { container }) => {
|
|
14
|
+
if (!revertInput) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const quoteModuleService = container.resolve(quote_1.QUOTE_MODULE);
|
|
18
|
+
await quoteModuleService.updateQuotes(revertInput.dataBeforeUpdate);
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXF1b3Rlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3RlcHMvdXBkYXRlLXF1b3Rlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxRUFBNkU7QUFDN0UsK0NBQW1EO0FBU3RDLFFBQUEsZ0JBQWdCLEdBQUcsSUFBQSwwQkFBVSxFQUN4QyxlQUFlLEVBQ2YsS0FBSyxFQUFFLElBQWUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUU7SUFDdkMsTUFBTSxrQkFBa0IsR0FBdUIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxvQkFBWSxDQUFDLENBQUM7SUFFL0UsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLGtCQUFrQixDQUFDLFVBQVUsQ0FDMUQsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQzlCLENBQUM7SUFFRixNQUFNLGFBQWEsR0FBRyxNQUFNLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVsRSxPQUFPLElBQUksNEJBQVksQ0FBQyxhQUFhLEVBQUU7UUFDckMsZ0JBQWdCO0tBQ2pCLENBQUMsQ0FBQztBQUNMLENBQUMsRUFDRCxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtJQUNuQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakIsT0FBTztJQUNULENBQUM7SUFFRCxNQUFNLGtCQUFrQixHQUF1QixTQUFTLENBQUMsT0FBTyxDQUFDLG9CQUFZLENBQUMsQ0FBQztJQUUvRSxNQUFNLGtCQUFrQixDQUFDLFlBQVksQ0FDbkMsV0FBVyxDQUFDLGdCQUFnQixDQUM3QixDQUFDO0FBQ0osQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateQuoteCanAcceptStep = void 0;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const quote_status_enum_1 = require("../../modules/quote/types/quote-status.enum");
|
|
7
|
+
exports.validateQuoteCanAcceptStep = (0, workflows_sdk_1.createStep)("validate-quote-can-accept", async function ({ quote }) {
|
|
8
|
+
if (quote.status !== quote_status_enum_1.QuoteStatus.PENDING_CUSTOMER) {
|
|
9
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `Cannot accept quote when quote status is ${quote.status}`);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUtcXVvdGUtY2FuLWFjY2VwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3Mvc3RlcHMvdmFsaWRhdGUtcXVvdGUtY2FuLWFjY2VwdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxxREFBd0Q7QUFDeEQscUVBQStEO0FBRy9ELG1GQUEwRTtBQU03RCxRQUFBLDBCQUEwQixHQUFHLElBQUEsMEJBQVUsRUFDbEQsMkJBQTJCLEVBQzNCLEtBQUssV0FBVyxFQUFFLEtBQUssRUFBYTtJQUNsQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssK0JBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ2xELE1BQU0sSUFBSSxtQkFBVyxDQUNuQixtQkFBVyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQzlCLDRDQUE0QyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQzNELENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUNGLENBQUMifQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateQuoteNotAccepted = void 0;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const quote_status_enum_1 = require("../../modules/quote/types/quote-status.enum");
|
|
7
|
+
exports.validateQuoteNotAccepted = (0, workflows_sdk_1.createStep)("validate-quote-not-accepted", async function ({ quote }) {
|
|
8
|
+
if (quote.status === quote_status_enum_1.QuoteStatus.ACCEPTED) {
|
|
9
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `Quote is already accepted by customer`);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGUtcXVvdGUtbm90LWFjY2VwdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3dvcmtmbG93cy9zdGVwcy92YWxpZGF0ZS1xdW90ZS1ub3QtYWNjZXB0ZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQXdEO0FBQ3hELHFFQUErRDtBQUcvRCxtRkFBMEU7QUFNN0QsUUFBQSx3QkFBd0IsR0FBRyxJQUFBLDBCQUFVLEVBQ2hELDZCQUE2QixFQUM3QixLQUFLLFdBQVcsRUFBRSxLQUFLLEVBQWE7SUFDbEMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLCtCQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUMsTUFBTSxJQUFJLG1CQUFXLENBQ25CLG1CQUFXLENBQUMsS0FBSyxDQUFDLFlBQVksRUFDOUIsdUNBQXVDLENBQ3hDLENBQUM7SUFDSixDQUFDO0FBQ0gsQ0FBQyxDQUNGLENBQUMifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lodashventure/medusa-quotation",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.10",
|
|
4
4
|
"description": "A starter for Medusa plugins.",
|
|
5
5
|
"author": "Medusa (https://medusajs.com)",
|
|
6
6
|
"license": "MIT",
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
"./providers/*": "./.medusa/server/src/providers/*/index.js",
|
|
16
16
|
"./admin": "./.medusa/server/src/admin/index.mjs",
|
|
17
17
|
"./*": "./.medusa/server/src/*.js"
|
|
18
|
+
|
|
18
19
|
},
|
|
19
20
|
"keywords": [
|
|
20
21
|
"medusa",
|
|
@@ -25,10 +26,12 @@
|
|
|
25
26
|
],
|
|
26
27
|
"scripts": {
|
|
27
28
|
"build": "medusa plugin:build",
|
|
28
|
-
"dev": "medusa plugin:develop"
|
|
29
|
+
"dev": "medusa plugin:develop",
|
|
30
|
+
"prepublishOnly": "medusa plugin:build"
|
|
29
31
|
},
|
|
30
32
|
"devDependencies": {
|
|
31
33
|
"@medusajs/admin-sdk": "2.11.2",
|
|
34
|
+
"@medusajs/cli": "^2.11.2",
|
|
32
35
|
"@medusajs/framework": "2.11.2",
|
|
33
36
|
"@medusajs/icons": "^2.11.2",
|
|
34
37
|
"@medusajs/medusa": "2.11.2",
|
|
@@ -49,15 +52,15 @@
|
|
|
49
52
|
"yalc": "^1.0.0-pre.53"
|
|
50
53
|
},
|
|
51
54
|
"peerDependencies": {
|
|
55
|
+
"@hookform/resolvers": "*",
|
|
52
56
|
"@medusajs/admin-sdk": "2.11.2",
|
|
53
57
|
"@medusajs/cli": "2.11.2",
|
|
54
58
|
"@medusajs/framework": "2.11.2",
|
|
55
59
|
"@medusajs/icons": "^2.11.2",
|
|
60
|
+
"@medusajs/js-sdk": "2.11.2",
|
|
56
61
|
"@medusajs/medusa": "2.11.2",
|
|
57
62
|
"@medusajs/test-utils": "2.11.2",
|
|
58
63
|
"@medusajs/ui": "^4.0.3",
|
|
59
|
-
"@medusajs/js-sdk": "2.11.2",
|
|
60
|
-
"@hookform/resolvers": "*",
|
|
61
64
|
"lodash": "*",
|
|
62
65
|
"lucide-react": "*",
|
|
63
66
|
"react": "*",
|
|
@@ -72,4 +75,4 @@
|
|
|
72
75
|
"dependencies": {
|
|
73
76
|
"pdfmake": "^0.2.18"
|
|
74
77
|
}
|
|
75
|
-
}
|
|
78
|
+
}
|