@lodashventure/medusa-campaign 1.5.10 → 1.5.11

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.
@@ -2290,12 +2290,6 @@ const routeModule = {
2290
2290
  };
2291
2291
  const menuItemModule = {
2292
2292
  menuItems: [
2293
- {
2294
- label: config$2.label,
2295
- icon: config$2.icon,
2296
- path: "/flash-sales",
2297
- nested: void 0
2298
- },
2299
2293
  {
2300
2294
  label: config$3.label,
2301
2295
  icon: config$3.icon,
@@ -2303,9 +2297,9 @@ const menuItemModule = {
2303
2297
  nested: void 0
2304
2298
  },
2305
2299
  {
2306
- label: config.label,
2307
- icon: config.icon,
2308
- path: "/flash-sales/:id",
2300
+ label: config$2.label,
2301
+ icon: config$2.icon,
2302
+ path: "/flash-sales",
2309
2303
  nested: void 0
2310
2304
  },
2311
2305
  {
@@ -2313,6 +2307,12 @@ const menuItemModule = {
2313
2307
  icon: config$1.icon,
2314
2308
  path: "/coupons/:id",
2315
2309
  nested: void 0
2310
+ },
2311
+ {
2312
+ label: config.label,
2313
+ icon: config.icon,
2314
+ path: "/flash-sales/:id",
2315
+ nested: void 0
2316
2316
  }
2317
2317
  ]
2318
2318
  };
@@ -2284,12 +2284,6 @@ const routeModule = {
2284
2284
  };
2285
2285
  const menuItemModule = {
2286
2286
  menuItems: [
2287
- {
2288
- label: config$2.label,
2289
- icon: config$2.icon,
2290
- path: "/flash-sales",
2291
- nested: void 0
2292
- },
2293
2287
  {
2294
2288
  label: config$3.label,
2295
2289
  icon: config$3.icon,
@@ -2297,9 +2291,9 @@ const menuItemModule = {
2297
2291
  nested: void 0
2298
2292
  },
2299
2293
  {
2300
- label: config.label,
2301
- icon: config.icon,
2302
- path: "/flash-sales/:id",
2294
+ label: config$2.label,
2295
+ icon: config$2.icon,
2296
+ path: "/flash-sales",
2303
2297
  nested: void 0
2304
2298
  },
2305
2299
  {
@@ -2307,6 +2301,12 @@ const menuItemModule = {
2307
2301
  icon: config$1.icon,
2308
2302
  path: "/coupons/:id",
2309
2303
  nested: void 0
2304
+ },
2305
+ {
2306
+ label: config.label,
2307
+ icon: config.icon,
2308
+ path: "/flash-sales/:id",
2309
+ nested: void 0
2310
2310
  }
2311
2311
  ]
2312
2312
  };
@@ -38,6 +38,31 @@ const GET = async (req, res) => {
38
38
  console.log("Requested type filter:", campaignType);
39
39
  // Get all custom campaign types (including soft deleted check)
40
40
  const allCustomCampaignTypes = await customCampaignModuleService.listCustomCampaignTypes({});
41
+ const uniqueCampaignIds = Array.from(new Set(allCustomCampaignTypes.map((ct) => ct.campaign_id)));
42
+ const existingCampaigns = await promotionService
43
+ .listCampaigns({
44
+ id: { $in: uniqueCampaignIds },
45
+ })
46
+ .catch((error) => {
47
+ console.error("Failed to list campaigns for validation:", error);
48
+ return [];
49
+ });
50
+ const existingCampaignIdSet = new Set(existingCampaigns.map((campaign) => campaign.id));
51
+ const orphanedCustomTypes = allCustomCampaignTypes.filter((ct) => !existingCampaignIdSet.has(ct.campaign_id));
52
+ if (orphanedCustomTypes.length > 0) {
53
+ console.warn(`[Campaign] Found ${orphanedCustomTypes.length} orphaned custom campaign types. Cleaning up...`);
54
+ await Promise.all(orphanedCustomTypes.map(async (ct) => {
55
+ try {
56
+ await customCampaignModuleService.deleteCustomCampaignTypes({
57
+ id: ct.id,
58
+ });
59
+ console.warn(`[Campaign] Removed orphaned custom campaign type ${ct.id} for campaign ${ct.campaign_id}`);
60
+ }
61
+ catch (cleanupError) {
62
+ console.error(`[Campaign] Failed to remove orphaned custom campaign type ${ct.id}:`, cleanupError);
63
+ }
64
+ }));
65
+ }
41
66
  console.log(`Total custom campaign types (unfiltered): ${allCustomCampaignTypes.length}`);
42
67
  allCustomCampaignTypes.forEach(ct => {
43
68
  console.log(` - Type: ${ct.type}, Campaign ID: ${ct.campaign_id}, Deleted: ${ct.deleted_at}`);
@@ -331,4 +356,4 @@ const GET = async (req, res) => {
331
356
  }
332
357
  };
333
358
  exports.GET = GET;
334
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2NhbXBhaWducy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBK0U7QUFDL0UscURBQW9EO0FBQ3BELG1HQUE4RjtBQUM5Rix3RUFBMkU7QUFpQjNFLE1BQU0sbUJBQW1CLEdBQUcsa0JBQWtCLENBQUM7QUFDL0MsTUFBTSxzQkFBc0IsR0FBRyxpQkFBaUIsQ0FBQztBQUVqRCxNQUFNLGVBQWUsR0FBRyxDQUFJLEtBQWEsRUFBWSxFQUFFO0lBQ3JELElBQUksQ0FBQztRQUNILE9BQU8scUJBQVMsQ0FBQyxPQUFPLENBQUksS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0ksTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUFFLEdBQWtCLEVBQUUsR0FBbUIsRUFBRSxFQUFFO0lBQ25FLE1BQU0sMkJBQTJCLEdBQy9CLHFCQUFTLENBQUMsT0FBTyxDQUE4Qix5Q0FBc0IsQ0FBQyxDQUFDO0lBQ3pFLE1BQU0sZ0JBQWdCLEdBQUcscUJBQVMsQ0FBQyxPQUFPLENBQUMsZUFBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlELE1BQU0sY0FBYyxHQUFHLHFCQUFTLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxRCxNQUFNLGtCQUFrQixHQUN0QixlQUFlLENBQTJCLG1CQUFtQixDQUFDLENBQUM7SUFDakUsTUFBTSxxQkFBcUIsR0FDekIsZUFBZSxDQUF3QixzQkFBc0IsQ0FBQyxDQUFDO0lBRWpFLE1BQU0sVUFBVSxHQUNkLEdBQ0QsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO0lBQzFCLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFF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
359
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2NhbXBhaWducy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBK0U7QUFDL0UscURBQW9EO0FBQ3BELG1HQUE4RjtBQUM5Rix3RUFBMkU7QUFpQjNFLE1BQU0sbUJBQW1CLEdBQUcsa0JBQWtCLENBQUM7QUFDL0MsTUFBTSxzQkFBc0IsR0FBRyxpQkFBaUIsQ0FBQztBQUVqRCxNQUFNLGVBQWUsR0FBRyxDQUFJLEtBQWEsRUFBWSxFQUFFO0lBQ3JELElBQUksQ0FBQztRQUNILE9BQU8scUJBQVMsQ0FBQyxPQUFPLENBQUksS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUFDLE1BQU0sQ0FBQztRQUNQLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztBQUNILENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0ksTUFBTSxHQUFHLEdBQUcsS0FBSyxFQUFFLEdBQWtCLEVBQUUsR0FBbUIsRUFBRSxFQUFFO0lBQ25FLE1BQU0sMkJBQTJCLEdBQy9CLHFCQUFTLENBQUMsT0FBTyxDQUE4Qix5Q0FBc0IsQ0FBQyxDQUFDO0lBQ3pFLE1BQU0sZ0JBQWdCLEdBQUcscUJBQVMsQ0FBQyxPQUFPLENBQUMsZUFBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlELE1BQU0sY0FBYyxHQUFHLHFCQUFTLENBQUMsT0FBTyxDQUFDLGVBQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxRCxNQUFNLGtCQUFrQixHQUN0QixlQUFlLENBQTJCLG1CQUFtQixDQUFDLENBQUM7SUFDakUsTUFBTSxxQkFBcUIsR0FDekIsZUFBZSxDQUF3QixzQkFBc0IsQ0FBQyxDQUFDO0lBRWpFLE1BQU0sVUFBVSxHQUNkLEdBQ0QsRUFBRSxZQUFZLEVBQUUsUUFBUSxDQUFDO0lBQzFCLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFF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
@@ -4,12 +4,16 @@ exports.config = void 0;
4
4
  exports.default = handleCartUpdated;
5
5
  const applyBuyXGetYToCartWorkflow_1 = require("../workflows/buy-x-get-y/applyBuyXGetYToCartWorkflow");
6
6
  async function handleCartUpdated({ event: { data }, }) {
7
- // Apply Buy X Get Y rules to the cart
8
- await applyBuyXGetYToCartWorkflow_1.applyBuyXGetYToCartWorkflow.run({
9
- input: {
10
- cart_id: data.id,
11
- },
12
- });
7
+ try {
8
+ await applyBuyXGetYToCartWorkflow_1.applyBuyXGetYToCartWorkflow.run({
9
+ input: {
10
+ cart_id: data.id,
11
+ },
12
+ });
13
+ }
14
+ catch (error) {
15
+ console.error(`[Campaign] Failed to apply buy-x-get-y rewards on cart ${data.id}:`, error);
16
+ }
13
17
  }
14
18
  exports.config = {
15
19
  event: [
@@ -20,4 +24,4 @@ exports.config = {
20
24
  "cart-line-item.deleted",
21
25
  ],
22
26
  };
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FydC11cGRhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL2NhcnQtdXBkYXRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSxvQ0FTQztBQVhELHNHQUFtRztBQUVwRixLQUFLLFVBQVUsaUJBQWlCLENBQUMsRUFDOUMsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQ2dCO0lBQy9CLHNDQUFzQztJQUN0QyxNQUFNLHlEQUEyQixDQUFDLEdBQUcsQ0FBQztRQUNwQyxLQUFLLEVBQUU7WUFDTCxPQUFPLEVBQUUsSUFBSSxDQUFDLEVBQUU7U0FDakI7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDO0FBRVksUUFBQSxNQUFNLEdBQXFCO0lBQ3RDLEtBQUssRUFBRTtRQUNMLGNBQWM7UUFDZCxjQUFjO1FBQ2Qsd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4Qix3QkFBd0I7S0FDekI7Q0FDRixDQUFDIn0=
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FydC11cGRhdGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N1YnNjcmliZXJzL2NhcnQtdXBkYXRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSxvQ0FlQztBQWpCRCxzR0FBbUc7QUFFcEYsS0FBSyxVQUFVLGlCQUFpQixDQUFDLEVBQzlDLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxHQUNnQjtJQUMvQixJQUFJLENBQUM7UUFDSCxNQUFNLHlEQUEyQixDQUFDLEdBQUcsQ0FBQztZQUNwQyxLQUFLLEVBQUU7Z0JBQ0wsT0FBTyxFQUFFLElBQUksQ0FBQyxFQUFFO2FBQ2pCO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixPQUFPLENBQUMsS0FBSyxDQUNYLDBEQUEwRCxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQ3BFLEtBQUssQ0FDTixDQUFDO0lBQ0osQ0FBQztBQUNILENBQUM7QUFFWSxRQUFBLE1BQU0sR0FBcUI7SUFDdEMsS0FBSyxFQUFFO1FBQ0wsY0FBYztRQUNkLGNBQWM7UUFDZCx3QkFBd0I7UUFDeEIsd0JBQXdCO1FBQ3hCLHdCQUF3QjtLQUN6QjtDQUNGLENBQUMifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lodashventure/medusa-campaign",
3
- "version": "1.5.10",
3
+ "version": "1.5.11",
4
4
  "description": "A starter for Medusa plugins.",
5
5
  "author": "Medusa (https://medusajs.com)",
6
6
  "license": "MIT",
@@ -64,6 +64,51 @@ export const GET = async (req: MedusaRequest, res: MedusaResponse) => {
64
64
  const allCustomCampaignTypes =
65
65
  await customCampaignModuleService.listCustomCampaignTypes({});
66
66
 
67
+ const uniqueCampaignIds = Array.from(
68
+ new Set(allCustomCampaignTypes.map((ct) => ct.campaign_id)),
69
+ );
70
+
71
+ const existingCampaigns = await promotionService
72
+ .listCampaigns({
73
+ id: { $in: uniqueCampaignIds },
74
+ } as any)
75
+ .catch((error) => {
76
+ console.error("Failed to list campaigns for validation:", error);
77
+ return [];
78
+ });
79
+
80
+ const existingCampaignIdSet = new Set(
81
+ existingCampaigns.map((campaign) => campaign.id),
82
+ );
83
+
84
+ const orphanedCustomTypes = allCustomCampaignTypes.filter(
85
+ (ct) => !existingCampaignIdSet.has(ct.campaign_id),
86
+ );
87
+
88
+ if (orphanedCustomTypes.length > 0) {
89
+ console.warn(
90
+ `[Campaign] Found ${orphanedCustomTypes.length} orphaned custom campaign types. Cleaning up...`,
91
+ );
92
+
93
+ await Promise.all(
94
+ orphanedCustomTypes.map(async (ct) => {
95
+ try {
96
+ await customCampaignModuleService.deleteCustomCampaignTypes({
97
+ id: ct.id,
98
+ });
99
+ console.warn(
100
+ `[Campaign] Removed orphaned custom campaign type ${ct.id} for campaign ${ct.campaign_id}`,
101
+ );
102
+ } catch (cleanupError) {
103
+ console.error(
104
+ `[Campaign] Failed to remove orphaned custom campaign type ${ct.id}:`,
105
+ cleanupError,
106
+ );
107
+ }
108
+ }),
109
+ );
110
+ }
111
+
67
112
  console.log(`Total custom campaign types (unfiltered): ${allCustomCampaignTypes.length}`);
68
113
  allCustomCampaignTypes.forEach(ct => {
69
114
  console.log(` - Type: ${ct.type}, Campaign ID: ${ct.campaign_id}, Deleted: ${ct.deleted_at}`);
@@ -4,12 +4,18 @@ import { applyBuyXGetYToCartWorkflow } from "../workflows/buy-x-get-y/applyBuyXG
4
4
  export default async function handleCartUpdated({
5
5
  event: { data },
6
6
  }: SubscriberArgs<{ id: string }>) {
7
- // Apply Buy X Get Y rules to the cart
8
- await applyBuyXGetYToCartWorkflow.run({
9
- input: {
10
- cart_id: data.id,
11
- },
12
- });
7
+ try {
8
+ await applyBuyXGetYToCartWorkflow.run({
9
+ input: {
10
+ cart_id: data.id,
11
+ },
12
+ });
13
+ } catch (error) {
14
+ console.error(
15
+ `[Campaign] Failed to apply buy-x-get-y rewards on cart ${data.id}:`,
16
+ error,
17
+ );
18
+ }
13
19
  }
14
20
 
15
21
  export const config: SubscriberConfig = {