@devx-commerce/plugin-gati 0.0.2-beta.90 → 0.0.2-beta.91
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/workflows/party-style-master/steps/index.js +2 -1
- package/.medusa/server/src/workflows/party-style-master/steps/update-product-options-after-deletion.js +238 -0
- package/.medusa/server/src/workflows/party-style-master/workflows/delete-party-style-master.js +27 -2
- package/package.json +1 -1
|
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./fetch-party-styles"), exports);
|
|
18
18
|
__exportStar(require("./delete-party-style-master"), exports);
|
|
19
|
-
|
|
19
|
+
__exportStar(require("./update-product-options-after-deletion"), exports);
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvd29ya2Zsb3dzL3BhcnR5LXN0eWxlLW1hc3Rlci9zdGVwcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsdURBQXFDO0FBQ3JDLDhEQUE0QztBQUM1QywwRUFBd0QifQ==
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateProductOptionsAfterDeletionStep = void 0;
|
|
4
|
+
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
+
const workflows_sdk_1 = require("@medusajs/framework/workflows-sdk");
|
|
6
|
+
const utils_2 = require("@medusajs/framework/utils");
|
|
7
|
+
const utils_3 = require("@medusajs/framework/utils");
|
|
8
|
+
exports.updateProductOptionsAfterDeletionStep = (0, workflows_sdk_1.createStep)("update-product-options-after-deletion", async (input, { container }) => {
|
|
9
|
+
try {
|
|
10
|
+
if (!input.productIds.length) {
|
|
11
|
+
console.log("No product IDs provided, skipping product options update");
|
|
12
|
+
return new workflows_sdk_1.StepResponse([]);
|
|
13
|
+
}
|
|
14
|
+
const query = container.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
15
|
+
console.log(`Updating product options for ${input.productIds.length} products`);
|
|
16
|
+
// Get the products that had variants deleted
|
|
17
|
+
const { data: productsWithDeletedVariants } = await query.graph({
|
|
18
|
+
entity: "product",
|
|
19
|
+
fields: ["id", "external_id", "options.*"],
|
|
20
|
+
filters: {
|
|
21
|
+
id: input.productIds,
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
if (!productsWithDeletedVariants || !productsWithDeletedVariants.length) {
|
|
25
|
+
console.log("No products found for the provided IDs");
|
|
26
|
+
return new workflows_sdk_1.StepResponse([]);
|
|
27
|
+
}
|
|
28
|
+
console.log(`Found ${productsWithDeletedVariants.length} products to update`);
|
|
29
|
+
// Get remaining variants for these products
|
|
30
|
+
const { data: remainingVariants } = await query.graph({
|
|
31
|
+
entity: "variant",
|
|
32
|
+
fields: ["id", "product_id", "metadata.external_id"],
|
|
33
|
+
filters: {
|
|
34
|
+
product_id: input.productIds,
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
console.log(`Found ${remainingVariants?.length || 0} remaining variants`);
|
|
38
|
+
// Get extended variants data for the remaining variants
|
|
39
|
+
let remainingExtendedVariants;
|
|
40
|
+
try {
|
|
41
|
+
const result = await query.graph({
|
|
42
|
+
entity: "extended_variant",
|
|
43
|
+
fields: [
|
|
44
|
+
"id",
|
|
45
|
+
"mapping_id",
|
|
46
|
+
"party_style_id",
|
|
47
|
+
"style_id",
|
|
48
|
+
"item_size",
|
|
49
|
+
"metal",
|
|
50
|
+
"metal_purity",
|
|
51
|
+
"metal_color",
|
|
52
|
+
"party_style_details.raw_type",
|
|
53
|
+
"party_style_details.is_base",
|
|
54
|
+
"party_style_details.qly_code",
|
|
55
|
+
"party_style_details.raw_code",
|
|
56
|
+
"party_style_details.tone_code",
|
|
57
|
+
],
|
|
58
|
+
filters: {
|
|
59
|
+
mapping_id: (remainingVariants || []).map((v) => v.id),
|
|
60
|
+
},
|
|
61
|
+
});
|
|
62
|
+
remainingExtendedVariants = result.data;
|
|
63
|
+
console.log(`Found ${remainingExtendedVariants?.length || 0} remaining extended variants`);
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
console.error("Error fetching extended variants:", error);
|
|
67
|
+
console.log("Falling back to empty array for extended variants");
|
|
68
|
+
remainingExtendedVariants = [];
|
|
69
|
+
}
|
|
70
|
+
// Update product options for each affected product using the same approach as create-or-update-party-style-master
|
|
71
|
+
const productsToUpdate = [];
|
|
72
|
+
for (const product of productsWithDeletedVariants) {
|
|
73
|
+
console.log(`Processing product ${product.id} (${product.external_id})`);
|
|
74
|
+
// Get variants for this specific product
|
|
75
|
+
const productVariants = (remainingVariants || []).filter((variant) => variant.product_id === product.id);
|
|
76
|
+
if (productVariants.length === 0) {
|
|
77
|
+
console.log(`No variants left for product ${product.id}, setting Default option only and status to draft`);
|
|
78
|
+
// No variants left, remove all options except Default and set status to draft
|
|
79
|
+
productsToUpdate.push({
|
|
80
|
+
id: product.id,
|
|
81
|
+
options: [
|
|
82
|
+
{
|
|
83
|
+
title: "Default",
|
|
84
|
+
values: ["Default"],
|
|
85
|
+
},
|
|
86
|
+
],
|
|
87
|
+
status: utils_3.ProductUtils.ProductStatus.DRAFT, // Set status to draft when no variants exist
|
|
88
|
+
});
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
// Get extended variants for this product's variants
|
|
92
|
+
const productExtendedVariants = (remainingExtendedVariants || []).filter((extVariant) => productVariants.some((variant) => variant.id === extVariant.mapping_id));
|
|
93
|
+
if (productExtendedVariants.length === 0) {
|
|
94
|
+
console.log(`No extended variants found for product ${product.id}, setting Default option only`);
|
|
95
|
+
// No extended variants found, use Default option
|
|
96
|
+
productsToUpdate.push({
|
|
97
|
+
id: product.id,
|
|
98
|
+
options: [
|
|
99
|
+
{
|
|
100
|
+
title: "Default",
|
|
101
|
+
values: ["Default"],
|
|
102
|
+
},
|
|
103
|
+
],
|
|
104
|
+
status: utils_3.ProductUtils.ProductStatus.DRAFT, // Set status to draft when no extended variants exist
|
|
105
|
+
});
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
console.log(`Processing ${productExtendedVariants.length} extended variants for product ${product.id}`);
|
|
109
|
+
// Use the same approach as create-or-update-party-style-master
|
|
110
|
+
// Calculate new options based on remaining variants
|
|
111
|
+
const newOptions = [];
|
|
112
|
+
// Collect all unique option values from remaining variants
|
|
113
|
+
const optionValues = {
|
|
114
|
+
metals: new Set(),
|
|
115
|
+
metalColors: new Set(),
|
|
116
|
+
diamondQualities: new Set(),
|
|
117
|
+
sizes: new Set(),
|
|
118
|
+
};
|
|
119
|
+
productExtendedVariants.forEach((extVariant) => {
|
|
120
|
+
// Safely access properties with null checks
|
|
121
|
+
// Use direct fields from ExtendedVariant model
|
|
122
|
+
if (extVariant.item_size) {
|
|
123
|
+
optionValues.sizes.add(String(extVariant.item_size));
|
|
124
|
+
}
|
|
125
|
+
// Don't use raw metal fields - we'll get them from party_style_details
|
|
126
|
+
// if (extVariant.metal) {
|
|
127
|
+
// optionValues.metals.add(extVariant.metal);
|
|
128
|
+
// }
|
|
129
|
+
// if (extVariant.metal_color) {
|
|
130
|
+
// optionValues.metalColors.add(extVariant.metal_color);
|
|
131
|
+
// }
|
|
132
|
+
// Process party style details if available
|
|
133
|
+
if (extVariant.party_style_details) {
|
|
134
|
+
extVariant.party_style_details.forEach((detail) => {
|
|
135
|
+
if (detail?.raw_type === "Metal" && detail?.is_base) {
|
|
136
|
+
if (detail.qly_code && detail.raw_code) {
|
|
137
|
+
optionValues.metals.add(`${detail.qly_code}K ${detail.raw_code}`);
|
|
138
|
+
}
|
|
139
|
+
// Map tone code to color name
|
|
140
|
+
if (detail.tone_code === "R")
|
|
141
|
+
optionValues.metalColors.add("Rose");
|
|
142
|
+
else if (detail.tone_code === "Y")
|
|
143
|
+
optionValues.metalColors.add("Yellow");
|
|
144
|
+
else if (detail.tone_code === "W")
|
|
145
|
+
optionValues.metalColors.add("White");
|
|
146
|
+
else if (detail.tone_code === "YRW")
|
|
147
|
+
optionValues.metalColors.add("YELLOW/ROSE/WHITE");
|
|
148
|
+
else if (detail.tone_code === "YW")
|
|
149
|
+
optionValues.metalColors.add("YELLOW/WHITE");
|
|
150
|
+
else if (detail.tone_code === "RW")
|
|
151
|
+
optionValues.metalColors.add("ROSE/WHITE");
|
|
152
|
+
else if (detail.tone_code === "BU")
|
|
153
|
+
optionValues.metalColors.add("BLUE");
|
|
154
|
+
else if (detail.tone_code === "BL")
|
|
155
|
+
optionValues.metalColors.add("BLACK");
|
|
156
|
+
}
|
|
157
|
+
if (detail?.raw_type === "Diamond" &&
|
|
158
|
+
detail?.tone_code &&
|
|
159
|
+
detail?.qly_code) {
|
|
160
|
+
optionValues.diamondQualities.add(`${detail.tone_code}/${detail.qly_code}`);
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
// Build options array - ensure proper structure
|
|
166
|
+
// Only add Default option when no variants exist
|
|
167
|
+
if (productExtendedVariants.length === 0) {
|
|
168
|
+
newOptions.push({
|
|
169
|
+
title: "Default",
|
|
170
|
+
values: ["Default"],
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
// Add other options only if they have values
|
|
174
|
+
if (optionValues.metals.size > 0) {
|
|
175
|
+
newOptions.push({
|
|
176
|
+
title: "Metal",
|
|
177
|
+
values: Array.from(optionValues.metals),
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
if (optionValues.metalColors.size > 0) {
|
|
181
|
+
newOptions.push({
|
|
182
|
+
title: "Metal Color",
|
|
183
|
+
values: Array.from(optionValues.metalColors),
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
if (optionValues.diamondQualities.size > 0) {
|
|
187
|
+
newOptions.push({
|
|
188
|
+
title: "Diamond Quality",
|
|
189
|
+
values: Array.from(optionValues.diamondQualities),
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
if (optionValues.sizes.size > 0) {
|
|
193
|
+
newOptions.push({
|
|
194
|
+
title: "Size",
|
|
195
|
+
values: Array.from(optionValues.sizes),
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
console.log(`Calculated ${newOptions.length} options for product ${product.id}:`, newOptions);
|
|
199
|
+
// Get current product options for reference (but we won't merge them)
|
|
200
|
+
const { data: currentProductOptions } = await query.graph({
|
|
201
|
+
entity: "product_option",
|
|
202
|
+
fields: ["id", "title", "values.*"],
|
|
203
|
+
filters: { product_id: product.id },
|
|
204
|
+
});
|
|
205
|
+
console.log(`Current product options for ${product.id}:`, currentProductOptions);
|
|
206
|
+
// Don't merge with existing options - replace them entirely
|
|
207
|
+
// This ensures options only reflect current variants
|
|
208
|
+
let finalOptions = newOptions;
|
|
209
|
+
console.log(`Final options for ${product.id}:`, finalOptions);
|
|
210
|
+
productsToUpdate.push({
|
|
211
|
+
id: product.id,
|
|
212
|
+
options: finalOptions,
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
// Update products with new options
|
|
216
|
+
if (productsToUpdate.length > 0) {
|
|
217
|
+
console.log(`Updating ${productsToUpdate.length} products with new options`);
|
|
218
|
+
const productService = container.resolve(utils_2.Modules.PRODUCT);
|
|
219
|
+
// Update each product individually
|
|
220
|
+
for (const productUpdate of productsToUpdate) {
|
|
221
|
+
await productService.updateProducts(productUpdate.id, {
|
|
222
|
+
options: productUpdate.options,
|
|
223
|
+
status: productUpdate.status, // Apply status update
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
console.log("Product options update completed successfully");
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
console.log("No products to update");
|
|
230
|
+
}
|
|
231
|
+
return new workflows_sdk_1.StepResponse(productsToUpdate);
|
|
232
|
+
}
|
|
233
|
+
catch (error) {
|
|
234
|
+
console.error("Error updating product options after deletion:", error);
|
|
235
|
+
throw error;
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLXByb2R1Y3Qtb3B0aW9ucy1hZnRlci1kZWxldGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcGFydHktc3R5bGUtbWFzdGVyL3N0ZXBzL3VwZGF0ZS1wcm9kdWN0LW9wdGlvbnMtYWZ0ZXItZGVsZXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEscURBQXNFO0FBQ3RFLHFFQUE2RTtBQUM3RSxxREFBb0Q7QUFDcEQscURBQXlEO0FBUzVDLFFBQUEscUNBQXFDLEdBQUcsSUFBQSwwQkFBVSxFQUM3RCx1Q0FBdUMsRUFDdkMsS0FBSyxFQUFFLEtBQWlELEVBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFO0lBQ3pFLElBQUksQ0FBQztRQUNILElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzdCLE9BQU8sQ0FBQyxHQUFHLENBQUMsMERBQTBELENBQUMsQ0FBQztZQUN4RSxPQUFPLElBQUksNEJBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QixDQUFDO1FBRUQsTUFBTSxLQUFLLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVqRSxPQUFPLENBQUMsR0FBRyxDQUNULGdDQUFnQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sV0FBVyxDQUNuRSxDQUFDO1FBRUYsNkNBQTZDO1FBQzdDLE1BQU0sRUFBRSxJQUFJLEVBQUUsMkJBQTJCLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7WUFDOUQsTUFBTSxFQUFFLFNBQVM7WUFDakIsTUFBTSxFQUFFLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxXQUFXLENBQUM7WUFDMUMsT0FBTyxFQUFFO2dCQUNQLEVBQUUsRUFBRSxLQUFLLENBQUMsVUFBVTthQUNyQjtTQUNGLENBQUMsQ0FBQztRQUVILElBQUks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
|
package/.medusa/server/src/workflows/party-style-master/workflows/delete-party-style-master.js
CHANGED
|
@@ -28,6 +28,7 @@ exports.deletePartyStyleMasterWorkflow = (0, workflows_sdk_1.createWorkflow)(exp
|
|
|
28
28
|
entity: "variants",
|
|
29
29
|
fields: [
|
|
30
30
|
"id",
|
|
31
|
+
"product_id",
|
|
31
32
|
"manage_inventory",
|
|
32
33
|
"inventory.id",
|
|
33
34
|
"inventory.variants.id",
|
|
@@ -60,6 +61,17 @@ exports.deletePartyStyleMasterWorkflow = (0, workflows_sdk_1.createWorkflow)(exp
|
|
|
60
61
|
const deletedStyleMaster = (0, steps_1.deletePartyStyleMasterStep)({
|
|
61
62
|
ids: input.ids,
|
|
62
63
|
});
|
|
64
|
+
const productIds = (0, workflows_sdk_1.transform)({ variants: variantsWithInventoryStepResponse.data }, (data) => {
|
|
65
|
+
return data.variants.map((variant) => variant.product_id);
|
|
66
|
+
});
|
|
67
|
+
const extendedVariantsIds = (0, workflows_sdk_1.transform)({ variants: variantsStepResponse.data }, (data) => {
|
|
68
|
+
return data.variants.map((variant) => variant.id);
|
|
69
|
+
});
|
|
70
|
+
// Update product options after variants are deleted
|
|
71
|
+
const updatedProductOptions = (0, steps_1.updateProductOptionsAfterDeletionStep)({
|
|
72
|
+
productIds,
|
|
73
|
+
extendedVariantsIds,
|
|
74
|
+
});
|
|
63
75
|
(0, core_flows_1.emitEventStep)({
|
|
64
76
|
eventName: "sync-to-os",
|
|
65
77
|
data: {
|
|
@@ -68,6 +80,19 @@ exports.deletePartyStyleMasterWorkflow = (0, workflows_sdk_1.createWorkflow)(exp
|
|
|
68
80
|
id: variantsIds,
|
|
69
81
|
},
|
|
70
82
|
});
|
|
71
|
-
|
|
83
|
+
(0, core_flows_1.emitEventStep)({
|
|
84
|
+
eventName: "sync-to-os",
|
|
85
|
+
data: {
|
|
86
|
+
type: "product",
|
|
87
|
+
operation: "update",
|
|
88
|
+
id: productIds,
|
|
89
|
+
},
|
|
90
|
+
}).config({
|
|
91
|
+
name: "sync-to-os-product",
|
|
92
|
+
});
|
|
93
|
+
return new workflows_sdk_1.WorkflowResponse({
|
|
94
|
+
deletedStyleMaster,
|
|
95
|
+
updatedProductOptions,
|
|
96
|
+
});
|
|
72
97
|
});
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLXBhcnR5LXN0eWxlLW1hc3Rlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy93b3JrZmxvd3MvcGFydHktc3R5bGUtbWFzdGVyL3dvcmtmbG93cy9kZWxldGUtcGFydHktc3R5bGUtbWFzdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFEQUFvRDtBQUNwRCxxRUFLMkM7QUFDM0MsNERBS3FDO0FBRXJDLG9DQUdrQjtBQVlMLFFBQUEsZ0NBQWdDLEdBQUcsMkJBQTJCLENBQUM7QUFFL0QsUUFBQSw4QkFBOEIsR0FBRyxJQUFBLDhCQUFjLEVBQzFELHdDQUFnQyxFQUNoQyxDQUFDLEtBQXdELEVBQUUsRUFBRTtJQUMzRCxNQUFNLG9CQUFvQixHQUFHLElBQUEsOEJBQWlCLEVBQUM7UUFDN0MsTUFBTSxFQUFFLG1CQUFtQjtRQUMzQixNQUFNLEVBQUUsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDO1FBQzVCLE9BQU8sRUFBRTtZQUNQLGNBQWMsRUFBRSxLQUFLLENBQUMsR0FBRztTQUMxQjtLQUNGLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDUixJQUFJLEVBQUUseUNBQXlDO0tBQ2hELENBQUMsQ0FBQztJQUVILE1BQU0sV0FBVyxHQUFHLElBQUEseUJBQVMsRUFDM0IsRUFBRSxRQUFRLEVBQUUsb0JBQW9CLENBQUMsSUFBSSxFQUFFLEVBQ3ZDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO1FBQ2YsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkQsQ0FBQyxDQUNGLENBQUM7SUFFRixJQUFBLGlDQUFvQixFQUFDO1FBQ25CLENBQUMsZUFBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRTtLQUMvQyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ1Is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
|