@lodashventure/medusa-quotation 1.5.19 → 1.5.22

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.
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PUT = PUT;
4
+ exports.GET = GET;
5
+ exports.DELETE = DELETE;
6
+ const utils_1 = require("@medusajs/framework/utils");
7
+ const quote_1 = require("../../../../../modules/quote");
8
+ const zod_1 = require("zod");
9
+ // Validation schema for updating quote sequence
10
+ const updateQuoteSeqSchema = zod_1.z.object({
11
+ start_at: zod_1.z.coerce.date().optional(),
12
+ end_at: zod_1.z.coerce.date().optional(),
13
+ next_seq: zod_1.z.number().min(1, "Next sequence must be at least 1").optional(),
14
+ });
15
+ // PUT /admin/quote-seq/:id - Update specific quote sequence
16
+ async function PUT(req, res) {
17
+ try {
18
+ const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
19
+ const storeService = req.scope.resolve(utils_1.Modules.STORE);
20
+ const { id } = req.params;
21
+ if (!id) {
22
+ return res.status(400).json({ message: "Sequence ID is required" });
23
+ }
24
+ // Validate request body
25
+ const validationResult = updateQuoteSeqSchema.safeParse(req.body);
26
+ if (!validationResult.success) {
27
+ return res.status(400).json({
28
+ message: "Validation error",
29
+ errors: validationResult.error.issues,
30
+ });
31
+ }
32
+ const updateData = validationResult.data;
33
+ // Get the current store ID
34
+ const stores = await storeService.listStores();
35
+ if (!stores.length) {
36
+ return res.status(404).json({ message: "No store found" });
37
+ }
38
+ const storeId = stores[0].id;
39
+ // Find existing sequence to verify it exists and belongs to the store
40
+ const existingSequences = await quoteModuleService.listQuoteSeqs({
41
+ id,
42
+ store_id: storeId,
43
+ });
44
+ if (existingSequences.length === 0) {
45
+ return res.status(404).json({
46
+ message: "Quote sequence not found",
47
+ });
48
+ }
49
+ // Use the service method that handles validation (including overlap checking)
50
+ const updatedSequence = await quoteModuleService.updateQuoteSequenceWithValidation(id, updateData);
51
+ return res.json({ quote_sequence: updatedSequence });
52
+ }
53
+ catch (error) {
54
+ console.error("Error updating quote sequence:", error);
55
+ return res.status(500).json({
56
+ message: error instanceof Error ? error.message : "Unknown error",
57
+ error: "Internal server error",
58
+ });
59
+ }
60
+ }
61
+ // GET /admin/quote-seq/:id - Get specific quote sequence
62
+ async function GET(req, res) {
63
+ try {
64
+ const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
65
+ const storeService = req.scope.resolve(utils_1.Modules.STORE);
66
+ const { id } = req.params;
67
+ if (!id) {
68
+ return res.status(400).json({ message: "Sequence ID is required" });
69
+ }
70
+ // Get the current store ID
71
+ const stores = await storeService.listStores();
72
+ if (!stores.length) {
73
+ return res.status(404).json({ message: "No store found" });
74
+ }
75
+ const storeId = stores[0].id;
76
+ // Find the specific sequence
77
+ const sequences = await quoteModuleService.listQuoteSeqs({
78
+ id,
79
+ store_id: storeId,
80
+ });
81
+ if (sequences.length === 0) {
82
+ return res.status(404).json({
83
+ message: "Quote sequence not found",
84
+ });
85
+ }
86
+ return res.json({ quote_sequence: sequences[0] });
87
+ }
88
+ catch (error) {
89
+ console.error("Error fetching quote sequence:", error);
90
+ return res.status(500).json({
91
+ message: "Internal server error",
92
+ error: error instanceof Error ? error.message : "Unknown error",
93
+ });
94
+ }
95
+ }
96
+ // DELETE /admin/quote-seq/:id - Delete specific quote sequence
97
+ async function DELETE(req, res) {
98
+ try {
99
+ const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
100
+ const storeService = req.scope.resolve(utils_1.Modules.STORE);
101
+ const { id } = req.params;
102
+ if (!id) {
103
+ return res.status(400).json({ message: "Sequence ID is required" });
104
+ }
105
+ // Get the current store ID
106
+ const stores = await storeService.listStores();
107
+ if (!stores.length) {
108
+ return res.status(404).json({ message: "No store found" });
109
+ }
110
+ const storeId = stores[0].id;
111
+ // Find existing sequence to verify it exists and belongs to the store
112
+ const existingSequences = await quoteModuleService.listQuoteSeqs({
113
+ id,
114
+ store_id: storeId,
115
+ });
116
+ if (existingSequences.length === 0) {
117
+ return res.status(404).json({
118
+ message: "Quote sequence not found",
119
+ });
120
+ }
121
+ // Delete the sequence
122
+ await quoteModuleService.deleteQuoteSeqs([id]);
123
+ return res.status(204).send();
124
+ }
125
+ catch (error) {
126
+ console.error("Error deleting quote sequence:", error);
127
+ return res.status(500).json({
128
+ message: error instanceof Error ? error.message : "Unknown error",
129
+ error: "Internal server error",
130
+ });
131
+ }
132
+ }
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3F1b3RlLXN0b3JlL3F1b3RlLXNlcS9baWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBaUJBLGtCQTJEQztBQUdELGtCQXlDQztBQUdELHdCQTRDQztBQW5LRCxxREFBb0Q7QUFDcEQsd0RBQTREO0FBRTVELDZCQUF3QjtBQUV4QixnREFBZ0Q7QUFDaEQsTUFBTSxvQkFBb0IsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3BDLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNwQyxNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLGtDQUFrQyxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQzNFLENBQUMsQ0FBQztBQUVILDREQUE0RDtBQUNyRCxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUErQixFQUMvQixHQUFtQjtJQUVuQixJQUFJLENBQUM7UUFDSCxNQUFNLGtCQUFrQixHQUN0QixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBcUIsb0JBQVksQ0FBQyxDQUFDO1FBQ3RELE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0RCxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUUxQixJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDUixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLHlCQUF5QixFQUFF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
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GET = GET;
4
+ exports.POST = POST;
5
+ const utils_1 = require("@medusajs/framework/utils");
6
+ const quote_1 = require("../../../../modules/quote");
7
+ const zod_1 = require("zod");
8
+ // Validation schemas
9
+ const createQuoteSeqSchema = zod_1.z.object({
10
+ start_at: zod_1.z.coerce.date().optional(),
11
+ end_at: zod_1.z.coerce.date().optional(),
12
+ next_seq: zod_1.z
13
+ .number()
14
+ .min(1, "Next sequence must be at least 1")
15
+ .optional()
16
+ .default(1),
17
+ config: zod_1.z.string().min(1, "Config reference is required"),
18
+ });
19
+ // GET /admin/quote-seq - Get quote sequences for current store
20
+ async function GET(req, res) {
21
+ try {
22
+ const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
23
+ const storeService = req.scope.resolve(utils_1.Modules.STORE);
24
+ // Get the current store ID
25
+ const stores = await storeService.listStores();
26
+ if (!stores.length) {
27
+ return res.status(404).json({ message: "No store found" });
28
+ }
29
+ const storeId = stores[0].id;
30
+ const sequences = await quoteModuleService.listQuoteSeqs({
31
+ store_id: storeId,
32
+ });
33
+ return res.json({ quote_sequences: sequences });
34
+ }
35
+ catch (error) {
36
+ console.error("Error fetching quote sequences:", error);
37
+ return res.status(500).json({
38
+ error: "Internal server error",
39
+ message: error instanceof Error ? error.message : "Unknown error",
40
+ });
41
+ }
42
+ }
43
+ // POST /admin/quote-seq - Create quote sequence
44
+ async function POST(req, res) {
45
+ try {
46
+ const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
47
+ const storeService = req.scope.resolve(utils_1.Modules.STORE);
48
+ // Validate request body
49
+ const validationResult = createQuoteSeqSchema.safeParse(req.body);
50
+ if (!validationResult.success) {
51
+ return res.status(400).json({
52
+ message: "Validation error",
53
+ errors: validationResult.error.issues,
54
+ });
55
+ }
56
+ const { start_at, end_at, next_seq, config } = validationResult.data;
57
+ // Get the current store ID
58
+ const stores = await storeService.listStores();
59
+ if (!stores.length) {
60
+ return res.status(404).json({ message: "No store found" });
61
+ }
62
+ const storeId = stores[0].id;
63
+ // Use the service method that handles date generation and validation
64
+ const sequence = await quoteModuleService.createQuoteSequenceForConfig(storeId, config, start_at, // Optional - will auto-generate if not provided
65
+ end_at, // Optional - will auto-generate if not provided
66
+ next_seq || 1);
67
+ return res.status(201).json({ quote_sequence: sequence[0] });
68
+ }
69
+ catch (error) {
70
+ console.error("Error creating quote sequence:", error);
71
+ return res.status(500).json({
72
+ message: error instanceof Error ? error.message : "Unknown error",
73
+ error: "Internal server error",
74
+ });
75
+ }
76
+ }
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3F1b3RlLXN0b3JlL3F1b3RlLXNlcS9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXNCQSxrQkE0QkM7QUFHRCxvQkE0Q0M7QUE3RkQscURBQW9EO0FBQ3BELHFEQUF5RDtBQUV6RCw2QkFBd0I7QUFFeEIscUJBQXFCO0FBQ3JCLE1BQU0sb0JBQW9CLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNwQyxRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2xDLFFBQVEsRUFBRSxPQUFDO1NBQ1IsTUFBTSxFQUFFO1NBQ1IsR0FBRyxDQUFDLENBQUMsRUFBRSxrQ0FBa0MsQ0FBQztTQUMxQyxRQUFRLEVBQUU7U0FDVixPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2IsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLDhCQUE4QixDQUFDO0NBQzFELENBQUMsQ0FBQztBQUVILCtEQUErRDtBQUN4RCxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUErQixFQUMvQixHQUFtQjtJQUVuQixJQUFJLENBQUM7UUFDSCxNQUFNLGtCQUFrQixHQUN0QixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBcUIsb0JBQVksQ0FBQyxDQUFDO1FBQ3RELE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0RCwyQkFBMkI7UUFDM0IsTUFBTSxNQUFNLEdBQUcsTUFBTSxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLE1BQU0s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
@@ -4,11 +4,25 @@ exports.GET = void 0;
4
4
  const utils_1 = require("@medusajs/framework/utils");
5
5
  const quote_1 = require("../../../../../../../modules/quote");
6
6
  const generate_quote_pdf_1 = require("../../../../../../../utils/generate-quote-pdf");
7
+ const normalizeAmount = (value) => {
8
+ const normalized = Number(value);
9
+ return Number.isFinite(normalized) ? normalized : null;
10
+ };
11
+ const pickAmount = (...values) => {
12
+ for (const value of values) {
13
+ const normalized = normalizeAmount(value);
14
+ if (normalized !== null) {
15
+ return normalized;
16
+ }
17
+ }
18
+ return null;
19
+ };
7
20
  const formatCurrency = (amount, currency) => {
8
- if (typeof amount !== "number" || Number.isNaN(amount)) {
21
+ const normalizedAmount = normalizeAmount(amount);
22
+ if (normalizedAmount === null) {
9
23
  return "-";
10
24
  }
11
- const normalized = amount / 100;
25
+ const normalized = normalizedAmount / 100;
12
26
  try {
13
27
  return new Intl.NumberFormat("th-TH", {
14
28
  style: "currency",
@@ -59,29 +73,25 @@ const extractItems = (quote, currency) => {
59
73
  item?.subtotal ??
60
74
  item?.total ??
61
75
  0;
62
- const totalPrice = item?.total ?? unitPrice * qty;
76
+ const normalizedUnitPrice = normalizeAmount(unitPrice) ?? 0;
77
+ const normalizedQty = normalizeAmount(qty) ?? 1;
78
+ const totalPrice = pickAmount(item?.total, normalizedUnitPrice * normalizedQty) ?? 0;
63
79
  return {
64
80
  code,
65
81
  description,
66
- qty,
67
- price: formatCurrency(unitPrice, currency),
82
+ qty: normalizedQty,
83
+ price: formatCurrency(normalizedUnitPrice, currency),
68
84
  total: formatCurrency(totalPrice, currency),
69
85
  };
70
86
  });
71
87
  };
72
88
  const extractTotals = (quote, currency) => {
73
89
  const summary = quote?.draft_order?.summary ?? {};
74
- const subtotal = summary.current_subtotal ??
75
- summary.current_items_total ??
76
- quote?.draft_order?.item_total ??
77
- quote?.draft_order?.subtotal ??
78
- 0;
79
- const discount = summary.current_discount_total ??
80
- quote?.draft_order?.discount_total ??
81
- 0;
82
- const total = summary.current_total ?? quote?.draft_order?.total ?? subtotal - discount;
83
- const vat = summary.current_tax_total ?? quote?.draft_order?.tax_total ?? 0;
84
- const totalDue = summary.current_total ?? quote?.draft_order?.total ?? total;
90
+ const subtotal = pickAmount(summary.current_subtotal, summary.current_items_total, quote?.draft_order?.item_total, quote?.draft_order?.subtotal) ?? 0;
91
+ const discount = pickAmount(summary.current_discount_total, quote?.draft_order?.discount_total) ?? 0;
92
+ const total = pickAmount(summary.current_total, quote?.draft_order?.total, subtotal - discount) ?? 0;
93
+ const vat = pickAmount(summary.current_tax_total, quote?.draft_order?.tax_total) ?? 0;
94
+ const totalDue = pickAmount(summary.current_total, quote?.draft_order?.total, total) ?? 0;
85
95
  const vatRate = subtotal > 0 && vat > 0
86
96
  ? `${((vat / subtotal) * 100).toFixed(2)}%`
87
97
  : "-";
@@ -116,8 +126,7 @@ const formatQuoteDate = (value) => {
116
126
  };
117
127
  const buildPdfPayload = (quote, store) => {
118
128
  const currency = quote?.draft_order?.currency_code || "THB";
119
- const amountDue = quote?.draft_order?.summary?.current_total ??
120
- quote?.draft_order?.total;
129
+ const amountDue = pickAmount(quote?.draft_order?.summary?.current_total, quote?.draft_order?.total);
121
130
  return {
122
131
  companyInfo: {
123
132
  name: store?.name || "",
@@ -174,4 +183,4 @@ const GET = async (req, res) => {
174
183
  return res.send(pdfBuffer);
175
184
  };
176
185
  exports.GET = GET;
177
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9xdW90ZXMvW2lkXS9kb3dubG9hZC9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSxxREFBK0U7QUFDL0UsOERBQWtFO0FBRWxFLHNGQUFpRjtBQUdqRixNQUFNLGNBQWMsR0FBRyxDQUFDLE1BQXNCLEVBQUUsUUFBaUIsRUFBRSxFQUFFO0lBQ25FLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUN2RCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxNQUFNLFVBQVUsR0FBRyxNQUFNLEdBQUcsR0FBRyxDQUFDO0lBRWhDLElBQUksQ0FBQztRQUNILE9BQU8sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRTtZQUNwQyxLQUFLLEVBQUUsVUFBVTtZQUNqQixRQUFRLEVBQUUsQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFO1NBQzVDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLFFBQVEsSUFBSSxLQUFLLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFO0lBQ3ZDLE1BQU0sUUFBUSxHQUFHLEtBQUssRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLENBQUM7SUFDdEQsTUFBTSxPQUFPLEdBQUcsS0FBSyxFQUFFLFdBQVcsRUFBRSxlQUFlLENBQUM7SUFDcEQsTUFBTSxRQUFRLEdBQUcsUUFBUSxJQUFJLE9BQU8s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
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS9xdW90ZXMvW2lkXS9kb3dubG9hZC9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJQSxxREFBK0U7QUFDL0UsOERBQWtFO0FBRWxFLHNGQUFpRjtBQUdqRixNQUFNLGVBQWUsR0FBRyxDQUFDLEtBQWUsRUFBaUIsRUFBRTtJQUN6RCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUN6RCxDQUFDLENBQUM7QUFFRixNQUFNLFVBQVUsR0FBRyxDQUFDLEdBQUcsTUFBaUIsRUFBRSxFQUFFO0lBQzFDLEtBQUssTUFBTSxLQUFLLElBQUksTUFBTSxFQUFFLENBQUM7UUFDM0IsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFDLElBQUksVUFBVSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3hCLE9BQU8sVUFBVSxDQUFDO1FBQ3BCLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUM7QUFFRixNQUFNLGNBQWMsR0FBRyxDQUFDLE1BQWdCLEVBQUUsUUFBaUIsRUFBRSxFQUFFO0lBQzdELE1BQU0sZ0JBQWdCLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRWpELElBQUksZ0JBQWdCLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDOUIsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDO0lBRTFDLElBQUksQ0FBQztRQUNILE9BQU8sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRTtZQUNwQyxLQUFLLEVBQUUsVUFBVTtZQUNqQixRQUFRLEVBQUUsQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLENBQUMsV0FBVyxFQUFFO1NBQzVDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLFFBQVEsSUFBSSxLQUFLLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFO0lBQ3ZDLE1BQU0sUUFBUSxHQUFHLEtBQUssRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLENBQUM7SUFDdEQsTUFBTSxPQUFPLEdBQUcsS0FBSyxFQUFFLFdBQVcsRUFBRSxlQUFlLENBQUM7SUFDcEQsTUFBTSxRQUFRLEdBQUcsUUFBUSxJQUFJLE9BQU8sSUFBSSxFQUFFLENBQUM7SUFDM0MsTUFBTSxRQUFRLEdBQUcsS0FBSyxFQUFFLFdBQVcsRUFBRSxRQUFRLENBQUM7SUFFOUMsTUFBTSxTQUFTLEdBQUc7UUFDaEIsUUFBUSxDQUFDLFVBQVUsSUFBSSxRQUFRLEVBQUUsVUFBVSxJQUFJLEVBQUU7UUFDakQsUUFBUSxDQUFDLFNBQVMsSUFBSSxRQUFRLEVBQUUsU0FBUyxJQUFJLEVBQUU7S0FDaEQsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEIsTUFBTSxJQUFJLEdBQ1IsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUU7UUFDMUIsUUFBUSxDQUFDLE9BQU87UUFDaEIsUUFBUSxFQUFFLEtBQUs7UUFDZixVQUFVLENBQUM7SUFFYixPQUFPO1FBQ0wsSUFBSTtRQUNKLFFBQVEsRUFBRSxRQUFRLENBQUMsU0FBUyxJQUFJLEVBQUU7UUFDbEMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxTQUFTLElBQUksRUFBRTtRQUNsQyxPQUFPLEVBQUUsUUFBUSxDQUFDLFdBQVcsSUFBSSxFQUFFO1FBQ25DLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxJQUFJLFFBQVEsRUFBRSxLQUFLLElBQUksRUFBRTtRQUM5QyxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssSUFBSSxFQUFFO1FBQzVCLEtBQUssRUFBRSxRQUFRLENBQUMsUUFBUSxFQUFFLE1BQU0sSUFBSSxFQUFFO0tBQ3ZDLENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLFlBQVksR0FBRyxDQUFDLEtBQVUsRUFBRSxRQUFpQixFQUFFLEVBQUU7SUFDckQsTUFBTSxLQUFLLEdBQUcsS0FBSyxFQUFFLFdBQVcsRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDO0lBQzlDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxLQUFhLEVBQUUsRUFBRTtRQUM1QyxNQUFNLElBQUksR0FDUixJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUc7WUFDbEIsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQ2pCLElBQUksRUFBRSxjQUFjO1lBQ3BCLFFBQVEsS0FBSyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ3RCLE1BQU0sV0FBVyxHQUNmLElBQUksRUFBRSxLQUFLO1lBQ1gsSUFBSSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSztZQUM3QixJQUFJLEVBQUUsV0FBVztZQUNqQixRQUFRLENBQUM7UUFDWCxNQUFNLEdBQUcsR0FBRyxJQUFJLEVBQUUsTUFBTSxFQUFFLFFBQVEsSUFBSSxJQUFJLEVBQUUsUUFBUSxJQUFJLENBQUMsQ0FBQztRQUMxRCxNQUFNLFNBQVMsR0FDYixJQUFJLEVBQUUsTUFBTSxFQUFFLFVBQVU7WUFDeEIsSUFBSSxFQUFFLFVBQVU7WUFDaEIsSUFBSSxFQUFFLFFBQVE7WUFDZCxJQUFJLEVBQUUsS0FBSztZQUNYLENBQUMsQ0FBQztRQUNKLE1BQU0sbUJBQW1CLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1RCxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hELE1BQU0sVUFBVSxHQUNkLFVBQVUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLG1CQUFtQixHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVwRSxPQUFPO1lBQ0wsSUFBSTtZQUNKLFdBQVc7WUFDWCxHQUFHLEVBQUUsYUFBYTtZQUNsQixLQUFLLEVBQUUsY0FBYyxDQUFDLG1CQUFtQixFQUFFLFFBQVEsQ0FBQztZQUNwRCxLQUFLLEVBQUUsY0FBYyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUM7U0FDNUMsQ0FBQztJQUNKLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxhQUFhLEdBQUcsQ0FBQyxLQUFVLEVBQUUsUUFBaUIsRUFBRSxFQUFFO0lBQ3RELE1BQU0sT0FBTyxHQUFHLEtBQUssRUFBRSxXQUFXLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBQztJQUNsRCxNQUFNLFFBQVEsR0FDWixVQUFVLENBQ1IsT0FBTyxDQUFDLGdCQUFnQixFQUN4QixPQUFPLENBQUMsbUJBQW1CLEVBQzNCLEtBQUssRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUM5QixLQUFLLEVBQUUsV0FBVyxFQUFFLFFBQVEsQ0FDN0IsSUFBSSxDQUFDLENBQUM7SUFDVCxNQUFNLFFBQVEsR0FDWixVQUFVLENBQ1IsT0FBTyxDQUFDLHNCQUFzQixFQUM5QixLQUFLLEVBQUUsV0FBVyxFQUFFLGNBQWMsQ0FDbkMsSUFBSSxDQUFDLENBQUM7SUFDVCxNQUFNLEtBQUssR0FDVCxVQUFVLENBQ1IsT0FBTyxDQUFDLGFBQWEsRUFDckIsS0FBSyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQ3pCLFFBQVEsR0FBRyxRQUFRLENBQ3BCLElBQUksQ0FBQyxDQUFDO0lBQ1QsTUFBTSxHQUFHLEdBQ1AsVUFBVSxDQUNSLE9BQU8sQ0FBQyxpQkFBaUIsRUFDekIsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLENBQzlCLElBQUksQ0FBQyxDQUFDO0lBQ1QsTUFBTSxRQUFRLEdBQ1osVUFBVSxDQUNSLE9BQU8sQ0FBQyxhQUFhLEVBQ3JCLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUN6QixLQUFLLENBQ04sSUFBSSxDQUFDLENBQUM7SUFFVCxNQUFNLE9BQU8sR0FDWCxRQUFRLEdBQUcsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEdBQUcsUUFBUSxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHO1FBQzNDLENBQUMsQ0FBQyxHQUFHLENBQUM7SUFFVixPQUFPO1FBQ0wsUUFBUSxFQUFFLGNBQWMsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDO1FBQzVDLFFBQVEsRUFBRSxjQUFjLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQztRQUM1QyxZQUFZLEVBQUUsUUFBUSxHQUFHLENBQUMsSUFBSSxRQUFRLEdBQUcsQ0FBQztZQUN4QyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRztZQUNoRCxDQUFDLENBQUMsSUFBSTtRQUNSLEtBQUssRUFBRSxjQUFjLENBQUMsS0FBSyxFQUFFLFFBQVEsQ0FBQztRQUN0QyxHQUFHLEVBQUUsY0FBYyxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUM7UUFDbEMsT0FBTztRQUNQLFFBQVEsRUFBRSxjQUFjLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQztLQUM3QyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcsQ0FBQyxLQUE0QixFQUFFLEVBQUU7SUFDdkQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1gsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsTUFBTSxJQUFJLEdBQUcsS0FBSyxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3RCxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNqQyxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxJQUFJLENBQUM7UUFDSCxPQUFPLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUU7WUFDdEMsU0FBUyxFQUFFLFFBQVE7U0FDcEIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQztJQUNqRCxDQUFDO0FBQ0gsQ0FBQyxDQUFDO0FBRUYsTUFBTSxlQUFlLEdBQUcsQ0FDdEIsS0FBVSxFQUNWLEtBQVUsRUFDUSxFQUFFO0lBQ3BCLE1BQU0sUUFBUSxHQUFHLEtBQUssRUFBRSxXQUFXLEVBQUUsYUFBYSxJQUFJLEtBQUssQ0FBQztJQUM1RCxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQzFCLEtBQUssRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFDMUMsS0FBSyxFQUFFLFdBQVcsRUFBRSxLQUFLLENBQzFCLENBQUM7SUFFRixPQUFPO1FBQ0wsV0FBVyxFQUFFO1lBQ1gsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLElBQUksRUFBRTtZQUN2QixRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsSUFBSSxFQUFFO1lBQy9CLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxJQUFJLEVBQUU7WUFDL0IsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLElBQUksRUFBRTtZQUM3QixLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3pCLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxJQUFJLEVBQUU7WUFDekIsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLElBQUksRUFBRTtZQUM3QixLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssSUFBSSxFQUFFO1lBQ3pCLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxJQUFJLEVBQUU7U0FDOUI7UUFDRCxVQUFVLEVBQUUsaUJBQWlCLENBQUMsS0FBSyxDQUFDO1FBQ3BDLFNBQVMsRUFBRTtZQUNULE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxJQUFJLEtBQUssRUFBRSxXQUFXLEVBQUUsVUFBVSxJQUFJLEtBQUssRUFBRSxFQUFFO1lBQ3BFLFNBQVMsRUFBRSxjQUFjLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQztZQUM5QyxJQUFJLEVBQUUsZUFBZSxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUM7U0FDekM7UUFDRCxLQUFLLEVBQUUsWUFBWSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUM7UUFDcEMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDO1FBQ3RDLElBQUksRUFBRSxFQUFFO0tBQ1QsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVLLE1BQU0sR0FBRyxHQUFHLEtBQUssRUFDdEIsR0FBK0IsRUFDL0IsR0FBbUIsRUFDbkIsRUFBRTtJQUNGLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO0lBQzFCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGlDQUF5QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRWpFLE1BQU0sRUFDSixJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FDZCxHQUFHLE1BQU0sS0FBSyxDQUFDLEtBQUssQ0FDbkI7UUFDRSxNQUFNLEVBQUUsT0FBTztRQUNmLE1BQU0sRUFBRSxHQUFHLENBQUMsV0FBVyxDQUFDLE1BQU07UUFDOUIsT0FBTyxFQUFFO1lBQ1AsRUFBRTtZQUNGLFdBQVcsRUFBRSxHQUFHLENBQUMsWUFBWSxDQUFDLFFBQVE7U0FDdkM7S0FDRixFQUNELEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLENBQzdCLENBQUM7SUFFRixNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNuQixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsTUFBTSxrQkFBa0IsR0FDdEIsR0FBRyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsb0JBQVksQ0FBQyxDQUFDO0lBQ2xDLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxNQUFNLGtCQUFrQixDQUFDLHFCQUFxQixDQUFDO1FBQ25FLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtLQUN2QixDQUFDLENBQUM7SUFFSCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakIsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUMxQixPQUFPLEVBQUUsNENBQTRDO1NBQ3RELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZELE1BQU0sU0FBUyxHQUFHLE1BQU0sSUFBQSxxQ0FBZ0IsRUFBQyxVQUFVLENBQUMsQ0FBQztJQUVyRCxNQUFNLFFBQVEsR0FBRyxhQUFhLFVBQVUsQ0FBQyxTQUFTLENBQUMsTUFBTSxNQUFNLENBQUM7SUFFaEUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUNqRCxHQUFHLENBQUMsU0FBUyxDQUNYLHFCQUFxQixFQUNyQix5QkFBeUIsUUFBUSxHQUFHLENBQ3JDLENBQUM7SUFFRixPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDN0IsQ0FBQyxDQUFDO0FBbkRXLFFBQUEsR0FBRyxPQW1EZCJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodashventure/medusa-quotation",
3
- "version": "1.5.19",
3
+ "version": "1.5.22",
4
4
  "description": "A starter for Medusa plugins.",
5
5
  "author": "Medusa (https://medusajs.com)",
6
6
  "license": "MIT",
@@ -1,133 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PUT = PUT;
4
- exports.GET = GET;
5
- exports.DELETE = DELETE;
6
- const utils_1 = require("@medusajs/framework/utils");
7
- const quote_1 = require("../../../../modules/quote");
8
- const zod_1 = require("zod");
9
- // Validation schema for updating quote sequence
10
- const updateQuoteSeqSchema = zod_1.z.object({
11
- start_at: zod_1.z.coerce.date().optional(),
12
- end_at: zod_1.z.coerce.date().optional(),
13
- next_seq: zod_1.z.number().min(1, "Next sequence must be at least 1").optional(),
14
- });
15
- // PUT /admin/quote-seq/:id - Update specific quote sequence
16
- async function PUT(req, res) {
17
- try {
18
- const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
19
- const storeService = req.scope.resolve(utils_1.Modules.STORE);
20
- const { id } = req.params;
21
- if (!id) {
22
- return res.status(400).json({ message: "Sequence ID is required" });
23
- }
24
- // Validate request body
25
- const validationResult = updateQuoteSeqSchema.safeParse(req.body);
26
- if (!validationResult.success) {
27
- return res.status(400).json({
28
- message: "Validation error",
29
- errors: validationResult.error.issues,
30
- });
31
- }
32
- const updateData = validationResult.data;
33
- // Get the current store ID
34
- const stores = await storeService.listStores();
35
- if (!stores.length) {
36
- return res.status(404).json({ message: "No store found" });
37
- }
38
- const storeId = stores[0].id;
39
- // Find existing sequence to verify it exists and belongs to the store
40
- const existingSequences = await quoteModuleService.listQuoteSeqs({
41
- id,
42
- store_id: storeId,
43
- });
44
- if (existingSequences.length === 0) {
45
- return res.status(404).json({
46
- message: "Quote sequence not found",
47
- });
48
- }
49
- // Use the service method that handles validation (including overlap checking)
50
- const updatedSequence = await quoteModuleService.updateQuoteSequenceWithValidation(id, updateData);
51
- return res.json({ quote_sequence: updatedSequence });
52
- }
53
- catch (error) {
54
- console.error("Error updating quote sequence:", error);
55
- return res.status(500).json({
56
- message: error instanceof Error ? error.message : "Unknown error",
57
- error: "Internal server error",
58
- });
59
- }
60
- }
61
- // GET /admin/quote-seq/:id - Get specific quote sequence
62
- async function GET(req, res) {
63
- try {
64
- const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
65
- const storeService = req.scope.resolve(utils_1.Modules.STORE);
66
- const { id } = req.params;
67
- if (!id) {
68
- return res.status(400).json({ message: "Sequence ID is required" });
69
- }
70
- // Get the current store ID
71
- const stores = await storeService.listStores();
72
- if (!stores.length) {
73
- return res.status(404).json({ message: "No store found" });
74
- }
75
- const storeId = stores[0].id;
76
- // Find the specific sequence
77
- const sequences = await quoteModuleService.listQuoteSeqs({
78
- id,
79
- store_id: storeId,
80
- });
81
- if (sequences.length === 0) {
82
- return res.status(404).json({
83
- message: "Quote sequence not found",
84
- });
85
- }
86
- return res.json({ quote_sequence: sequences[0] });
87
- }
88
- catch (error) {
89
- console.error("Error fetching quote sequence:", error);
90
- return res.status(500).json({
91
- message: "Internal server error",
92
- error: error instanceof Error ? error.message : "Unknown error",
93
- });
94
- }
95
- }
96
- // DELETE /admin/quote-seq/:id - Delete specific quote sequence
97
- async function DELETE(req, res) {
98
- try {
99
- const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
100
- const storeService = req.scope.resolve(utils_1.Modules.STORE);
101
- const { id } = req.params;
102
- if (!id) {
103
- return res.status(400).json({ message: "Sequence ID is required" });
104
- }
105
- // Get the current store ID
106
- const stores = await storeService.listStores();
107
- if (!stores.length) {
108
- return res.status(404).json({ message: "No store found" });
109
- }
110
- const storeId = stores[0].id;
111
- // Find existing sequence to verify it exists and belongs to the store
112
- const existingSequences = await quoteModuleService.listQuoteSeqs({
113
- id,
114
- store_id: storeId,
115
- });
116
- if (existingSequences.length === 0) {
117
- return res.status(404).json({
118
- message: "Quote sequence not found",
119
- });
120
- }
121
- // Delete the sequence
122
- await quoteModuleService.deleteQuoteSeqs([id]);
123
- return res.status(204).send();
124
- }
125
- catch (error) {
126
- console.error("Error deleting quote sequence:", error);
127
- return res.status(500).json({
128
- message: error instanceof Error ? error.message : "Unknown error",
129
- error: "Internal server error",
130
- });
131
- }
132
- }
133
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3F1b3RlLXNlcS9baWRdL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBaUJBLGtCQTJEQztBQUdELGtCQXlDQztBQUdELHdCQTRDQztBQW5LRCxxREFBb0Q7QUFDcEQscURBQXlEO0FBRXpELDZCQUF3QjtBQUV4QixnREFBZ0Q7QUFDaEQsTUFBTSxvQkFBb0IsR0FBRyxPQUFDLENBQUMsTUFBTSxDQUFDO0lBQ3BDLFFBQVEsRUFBRSxPQUFDLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsRUFBRTtJQUNwQyxNQUFNLEVBQUUsT0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDbEMsUUFBUSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLGtDQUFrQyxDQUFDLENBQUMsUUFBUSxFQUFFO0NBQzNFLENBQUMsQ0FBQztBQUVILDREQUE0RDtBQUNyRCxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUErQixFQUMvQixHQUFtQjtJQUVuQixJQUFJLENBQUM7UUFDSCxNQUFNLGtCQUFrQixHQUN0QixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBcUIsb0JBQVksQ0FBQyxDQUFDO1FBQ3RELE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN0RCxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUUxQixJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDUixPQUFPLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLENBQUMsQ0FBQztRQUN0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
@@ -1,77 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GET = GET;
4
- exports.POST = POST;
5
- const utils_1 = require("@medusajs/framework/utils");
6
- const quote_1 = require("../../../modules/quote");
7
- const zod_1 = require("zod");
8
- // Validation schemas
9
- const createQuoteSeqSchema = zod_1.z.object({
10
- start_at: zod_1.z.coerce.date().optional(),
11
- end_at: zod_1.z.coerce.date().optional(),
12
- next_seq: zod_1.z
13
- .number()
14
- .min(1, "Next sequence must be at least 1")
15
- .optional()
16
- .default(1),
17
- config: zod_1.z.string().min(1, "Config reference is required"),
18
- });
19
- // GET /admin/quote-seq - Get quote sequences for current store
20
- async function GET(req, res) {
21
- try {
22
- const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
23
- const storeService = req.scope.resolve(utils_1.Modules.STORE);
24
- // Get the current store ID
25
- const stores = await storeService.listStores();
26
- if (!stores.length) {
27
- return res.status(404).json({ message: "No store found" });
28
- }
29
- const storeId = stores[0].id;
30
- const sequences = await quoteModuleService.listQuoteSeqs({
31
- store_id: storeId,
32
- });
33
- return res.json({ quote_sequences: sequences });
34
- }
35
- catch (error) {
36
- console.error("Error fetching quote sequences:", error);
37
- return res.status(500).json({
38
- error: "Internal server error",
39
- message: error instanceof Error ? error.message : "Unknown error",
40
- });
41
- }
42
- }
43
- // POST /admin/quote-seq - Create quote sequence
44
- async function POST(req, res) {
45
- try {
46
- const quoteModuleService = req.scope.resolve(quote_1.QUOTE_MODULE);
47
- const storeService = req.scope.resolve(utils_1.Modules.STORE);
48
- // Validate request body
49
- const validationResult = createQuoteSeqSchema.safeParse(req.body);
50
- if (!validationResult.success) {
51
- return res.status(400).json({
52
- message: "Validation error",
53
- errors: validationResult.error.issues,
54
- });
55
- }
56
- const { start_at, end_at, next_seq, config } = validationResult.data;
57
- // Get the current store ID
58
- const stores = await storeService.listStores();
59
- if (!stores.length) {
60
- return res.status(404).json({ message: "No store found" });
61
- }
62
- const storeId = stores[0].id;
63
- // Use the service method that handles date generation and validation
64
- const sequence = await quoteModuleService.createQuoteSequenceForConfig(storeId, config, start_at, // Optional - will auto-generate if not provided
65
- end_at, // Optional - will auto-generate if not provided
66
- next_seq || 1);
67
- return res.status(201).json({ quote_sequence: sequence[0] });
68
- }
69
- catch (error) {
70
- console.error("Error creating quote sequence:", error);
71
- return res.status(500).json({
72
- message: error instanceof Error ? error.message : "Unknown error",
73
- error: "Internal server error",
74
- });
75
- }
76
- }
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL2FkbWluL3F1b3RlLXNlcS9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXNCQSxrQkE0QkM7QUFHRCxvQkE0Q0M7QUE3RkQscURBQW9EO0FBQ3BELGtEQUFzRDtBQUV0RCw2QkFBd0I7QUFFeEIscUJBQXFCO0FBQ3JCLE1BQU0sb0JBQW9CLEdBQUcsT0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNwQyxRQUFRLEVBQUUsT0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUU7SUFDcEMsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFO0lBQ2xDLFFBQVEsRUFBRSxPQUFDO1NBQ1IsTUFBTSxFQUFFO1NBQ1IsR0FBRyxDQUFDLENBQUMsRUFBRSxrQ0FBa0MsQ0FBQztTQUMxQyxRQUFRLEVBQUU7U0FDVixPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2IsTUFBTSxFQUFFLE9BQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLDhCQUE4QixDQUFDO0NBQzFELENBQUMsQ0FBQztBQUVILCtEQUErRDtBQUN4RCxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUErQixFQUMvQixHQUFtQjtJQUVuQixJQUFJLENBQUM7UUFDSCxNQUFNLGtCQUFrQixHQUN0QixHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBcUIsb0JBQVksQ0FBQyxDQUFDO1FBQ3RELE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV0RCwyQkFBMkI7UUFDM0IsTUFBTSxNQUFNLEdBQUcsTUFBTSxZQUFZLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUs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