@medusajs/promotion 2.22.0 → 2.22.1
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/AGENTS.md +1 -1
- package/dist/services/promotion-module.d.ts +3 -3
- package/dist/services/promotion-module.d.ts.map +1 -1
- package/dist/services/promotion-module.js +73 -26
- package/dist/services/promotion-module.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/compute-actions/buy-get.d.ts +2 -2
- package/dist/utils/compute-actions/buy-get.d.ts.map +1 -1
- package/dist/utils/compute-actions/buy-get.js +17 -11
- package/dist/utils/compute-actions/buy-get.js.map +1 -1
- package/dist/utils/compute-actions/line-items.d.ts +2 -2
- package/dist/utils/compute-actions/line-items.d.ts.map +1 -1
- package/dist/utils/compute-actions/line-items.js +4 -4
- package/dist/utils/compute-actions/line-items.js.map +1 -1
- package/dist/utils/compute-actions/shipping-methods.d.ts +3 -3
- package/dist/utils/compute-actions/shipping-methods.d.ts.map +1 -1
- package/dist/utils/compute-actions/shipping-methods.js +5 -5
- package/dist/utils/compute-actions/shipping-methods.js.map +1 -1
- package/dist/utils/compute-actions/usage.d.ts +2 -1
- package/dist/utils/compute-actions/usage.d.ts.map +1 -1
- package/dist/utils/compute-actions/usage.js +9 -3
- package/dist/utils/compute-actions/usage.js.map +1 -1
- package/package.json +4 -4
package/AGENTS.md
CHANGED
|
@@ -66,6 +66,6 @@ yarn migration:create # after any change in src/models
|
|
|
66
66
|
|
|
67
67
|
- `registerUsage` must run inside a transaction: it takes `SELECT ... FOR UPDATE` locks on `promotion` and `promotion_campaign_budget` rows (ordered by id, `lock_timeout = '3s'`) and throws `UNEXPECTED_STATE` otherwise. Re-reads use `options: { refresh: true }`; keep that when touching this code.
|
|
68
68
|
- Exceeding `promotion.limit` or a budget limit in `registerUsage` throws `NOT_ALLOWED`; `computeActions` instead returns `promotionLimitExceeded` / `campaignBudgetExceeded` actions unless `skip_usage_limit_checks` is set.
|
|
69
|
-
- `use_by_attribute` budgets require the budget `attribute` value (e.g. `customer_id`) in the compute context,
|
|
69
|
+
- `use_by_attribute` and `spend_by_attribute` budgets require the budget `attribute` value (e.g. `customer_id`) in the compute context. Without it, `computeActions` skips automatic promotions and throws `INVALID_DATA` for code-applied ones. Per-attribute usage (count or spent amount) is stored in `CampaignBudgetUsage`; the budget's own `used` is only an aggregate.
|
|
70
70
|
- Rule attributes for target rules are prefixed by scope (`items.` / `shipping_methods.`); the prefix is stripped before evaluating against the item or shipping method.
|
|
71
71
|
- `buyget` promotions require `apply_to_quantity`, `buy_rules_min_quantity`, and `max_quantity >= apply_to_quantity`; `max_quantity` is not allowed with `across` allocation; percentage values must be 0-100.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CampaignBudgetTypeValues, Context, DAL, FilterablePromotionProps, FindConfig, InferEntityType, InternalModuleDeclaration, ModulesSdkTypes, PromotionDTO, PromotionTypes } from "@medusajs/framework/types";
|
|
1
|
+
import { BigNumberInput, CampaignBudgetTypeValues, Context, DAL, FilterablePromotionProps, FindConfig, InferEntityType, InternalModuleDeclaration, ModulesSdkTypes, PromotionDTO, PromotionTypes } from "@medusajs/framework/types";
|
|
2
2
|
import { ApplicationMethodAllocation, ApplicationMethodTargetType, CampaignBudgetType, PromotionStatus, PromotionType } from "@medusajs/framework/utils";
|
|
3
3
|
import { ApplicationMethod, Campaign, CampaignBudget, CampaignBudgetUsage, Promotion, PromotionRule, PromotionRuleValue } from "../models";
|
|
4
4
|
import { ApplicationMethodRuleTypes } from "../types";
|
|
@@ -48,8 +48,8 @@ export default class PromotionModuleService extends PromotionModuleService_base
|
|
|
48
48
|
constructor({ baseRepository, promotionService, applicationMethodService, promotionRuleService, promotionRuleValueService, campaignService, campaignBudgetService, campaignBudgetUsageService, }: InjectedDependencies, moduleDeclaration: InternalModuleDeclaration);
|
|
49
49
|
listActivePromotions(filters?: FilterablePromotionProps, config?: FindConfig<PromotionDTO>, sharedContext?: Context): Promise<PromotionDTO[]>;
|
|
50
50
|
protected listActivePromotions_(filters?: FilterablePromotionProps, config?: FindConfig<PromotionDTO>, sharedContext?: Context): Promise<InferEntityType<typeof Promotion>[]>;
|
|
51
|
-
protected registerCampaignBudgetUsageByAttribute_(budgetId: string, attributeValue: string, sharedContext?: Context): Promise<void>;
|
|
52
|
-
protected revertCampaignBudgetUsageByAttribute_(budgetId: string, attributeValue: string, sharedContext?: Context): Promise<void>;
|
|
51
|
+
protected registerCampaignBudgetUsageByAttribute_(budgetId: string, attributeValue: string, amount: BigNumberInput, limit: BigNumberInput | null | undefined, sharedContext?: Context): Promise<void>;
|
|
52
|
+
protected revertCampaignBudgetUsageByAttribute_(budgetId: string, attributeValue: string, amount: BigNumberInput, sharedContext?: Context): Promise<void>;
|
|
53
53
|
registerUsage(computedActions: PromotionTypes.UsageComputedActions[], registrationContext: PromotionTypes.CampaignBudgetUsageContext, sharedContext?: Context): Promise<void>;
|
|
54
54
|
revertUsage(computedActions: PromotionTypes.UsageComputedActions[], registrationContext: PromotionTypes.CampaignBudgetUsageContext, sharedContext?: Context): Promise<void>;
|
|
55
55
|
computeActions(promotionCodes: string[], applicationContext: PromotionTypes.ComputeActionContext, options?: PromotionTypes.ComputeActionOptions, sharedContext?: Context): Promise<PromotionTypes.ComputeActions[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promotion-module.d.ts","sourceRoot":"","sources":["../../src/services/promotion-module.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"promotion-module.d.ts","sourceRoot":"","sources":["../../src/services/promotion-module.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,7 +72,7 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
72
72
|
};
|
|
73
73
|
return await this.promotionService_.list(activeFilters, config, sharedContext);
|
|
74
74
|
}
|
|
75
|
-
async registerCampaignBudgetUsageByAttribute_(budgetId, attributeValue, sharedContext = {}) {
|
|
75
|
+
async registerCampaignBudgetUsageByAttribute_(budgetId, attributeValue, amount, limit, sharedContext = {}) {
|
|
76
76
|
// Re-read the per-attribute usage row under the budget row lock held by the
|
|
77
77
|
// caller (`registerUsage`). The lock lives on `promotion_campaign_budget`,
|
|
78
78
|
// not on this usage row, so `refresh: true` is required to read the
|
|
@@ -81,27 +81,26 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
81
81
|
const [campaignBudgetUsagePerAttributeValue] = await this.campaignBudgetUsageService_.list({
|
|
82
82
|
budget_id: budgetId,
|
|
83
83
|
attribute_value: attributeValue,
|
|
84
|
-
}, {
|
|
84
|
+
}, { options: { refresh: true } }, sharedContext);
|
|
85
|
+
const newUsedValue = utils_1.MathBN.add(campaignBudgetUsagePerAttributeValue?.used ?? 0, amount);
|
|
86
|
+
if (limit && utils_1.MathBN.gt(newUsedValue, limit)) {
|
|
87
|
+
throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_ALLOWED, "Promotion usage exceeds the budget limit.");
|
|
88
|
+
}
|
|
85
89
|
if (!campaignBudgetUsagePerAttributeValue) {
|
|
86
90
|
await this.campaignBudgetUsageService_.create({
|
|
87
91
|
budget_id: budgetId,
|
|
88
92
|
attribute_value: attributeValue,
|
|
89
|
-
used:
|
|
93
|
+
used: newUsedValue,
|
|
90
94
|
}, sharedContext);
|
|
91
95
|
}
|
|
92
96
|
else {
|
|
93
|
-
const limit = campaignBudgetUsagePerAttributeValue.budget.limit;
|
|
94
|
-
const newUsedValue = utils_1.MathBN.add(campaignBudgetUsagePerAttributeValue.used ?? 0, 1);
|
|
95
|
-
if (limit && utils_1.MathBN.gt(newUsedValue, limit)) {
|
|
96
|
-
throw new utils_1.MedusaError(utils_1.MedusaError.Types.NOT_ALLOWED, "Promotion usage exceeds the budget limit.");
|
|
97
|
-
}
|
|
98
97
|
await this.campaignBudgetUsageService_.update({
|
|
99
98
|
id: campaignBudgetUsagePerAttributeValue.id,
|
|
100
99
|
used: newUsedValue,
|
|
101
100
|
}, sharedContext);
|
|
102
101
|
}
|
|
103
102
|
}
|
|
104
|
-
async revertCampaignBudgetUsageByAttribute_(budgetId, attributeValue, sharedContext = {}) {
|
|
103
|
+
async revertCampaignBudgetUsageByAttribute_(budgetId, attributeValue, amount, sharedContext = {}) {
|
|
105
104
|
const [campaignBudgetUsagePerAttributeValue] = await this.campaignBudgetUsageService_.list({
|
|
106
105
|
budget_id: budgetId,
|
|
107
106
|
attribute_value: attributeValue,
|
|
@@ -109,13 +108,14 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
109
108
|
if (!campaignBudgetUsagePerAttributeValue) {
|
|
110
109
|
return;
|
|
111
110
|
}
|
|
112
|
-
|
|
111
|
+
const newUsedValue = utils_1.MathBN.sub(campaignBudgetUsagePerAttributeValue.used ?? 0, amount);
|
|
112
|
+
if (utils_1.MathBN.lte(newUsedValue, 0)) {
|
|
113
113
|
await this.campaignBudgetUsageService_.delete(campaignBudgetUsagePerAttributeValue.id, sharedContext);
|
|
114
114
|
}
|
|
115
115
|
else {
|
|
116
116
|
await this.campaignBudgetUsageService_.update({
|
|
117
117
|
id: campaignBudgetUsagePerAttributeValue.id,
|
|
118
|
-
used:
|
|
118
|
+
used: newUsedValue,
|
|
119
119
|
}, sharedContext);
|
|
120
120
|
}
|
|
121
121
|
}
|
|
@@ -136,6 +136,7 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
136
136
|
const campaignBudgetMap = new Map();
|
|
137
137
|
const promotionCodeUsageMap = new Map();
|
|
138
138
|
const promotionUsageMap = new Map();
|
|
139
|
+
const spendByAttributeUsageMap = new Map();
|
|
139
140
|
let existingPromotions = await this.listActivePromotions_({ code: promotionCodes }, { relations: ["campaign", "campaign.budget", "campaign.budget.usages"] }, sharedContext);
|
|
140
141
|
// Serialize concurrent usage registration against the same promotions and
|
|
141
142
|
// budgets. Two concurrent registrations that read the same used value would
|
|
@@ -249,7 +250,7 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
249
250
|
if (!attributeValue) {
|
|
250
251
|
continue;
|
|
251
252
|
}
|
|
252
|
-
await this.registerCampaignBudgetUsageByAttribute_(campaignBudget.id, attributeValue, sharedContext);
|
|
253
|
+
await this.registerCampaignBudgetUsageByAttribute_(campaignBudget.id, attributeValue, 1, campaignBudget.limit, sharedContext);
|
|
253
254
|
const newUsedValue = utils_1.MathBN.add(campaignBudget.used ?? 0, 1);
|
|
254
255
|
// update the global budget usage to keep track but it is not used anywhere atm
|
|
255
256
|
campaignBudgetMap.set(campaignBudget.id, {
|
|
@@ -258,6 +259,24 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
258
259
|
});
|
|
259
260
|
promotionCodeUsageMap.set(promotion.code, true);
|
|
260
261
|
}
|
|
262
|
+
if (campaignBudget.type === utils_1.CampaignBudgetType.SPEND_BY_ATTRIBUTE) {
|
|
263
|
+
const campaignBudgetData = campaignBudgetMap.get(campaignBudget.id);
|
|
264
|
+
const attributeValue = registrationContext[campaignBudget.attribute];
|
|
265
|
+
if (!campaignBudgetData || !attributeValue) {
|
|
266
|
+
continue;
|
|
267
|
+
}
|
|
268
|
+
const spendByAttributeUsage = spendByAttributeUsageMap.get(campaignBudget.id);
|
|
269
|
+
spendByAttributeUsageMap.set(campaignBudget.id, {
|
|
270
|
+
attributeValue,
|
|
271
|
+
amount: utils_1.MathBN.add(spendByAttributeUsage?.amount ?? 0, computedAction.amount),
|
|
272
|
+
limit: campaignBudget.limit,
|
|
273
|
+
});
|
|
274
|
+
// update the global budget usage to keep track but it is not used anywhere atm
|
|
275
|
+
campaignBudgetData.used = utils_1.MathBN.add(campaignBudgetData.used ?? 0, computedAction.amount);
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
for (const [budgetId, usage] of spendByAttributeUsageMap) {
|
|
279
|
+
await this.registerCampaignBudgetUsageByAttribute_(budgetId, usage.attributeValue, usage.amount, usage.limit, sharedContext);
|
|
261
280
|
}
|
|
262
281
|
if (promotionUsageMap.size > 0) {
|
|
263
282
|
await this.promotionService_.update(Array.from(promotionUsageMap.values()), sharedContext);
|
|
@@ -280,6 +299,7 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
280
299
|
const promotionCodeUsageMap = new Map();
|
|
281
300
|
const campaignBudgetMap = new Map();
|
|
282
301
|
const promotionUsageMap = new Map();
|
|
302
|
+
const spendByAttributeUsageMap = new Map();
|
|
283
303
|
const existingPromotions = await this.listActivePromotions_({
|
|
284
304
|
code: computedActions
|
|
285
305
|
.map((computedAction) => computedAction.code)
|
|
@@ -341,7 +361,7 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
341
361
|
if (!attributeValue) {
|
|
342
362
|
continue;
|
|
343
363
|
}
|
|
344
|
-
await this.revertCampaignBudgetUsageByAttribute_(campaignBudget.id, attributeValue, sharedContext);
|
|
364
|
+
await this.revertCampaignBudgetUsageByAttribute_(campaignBudget.id, attributeValue, 1, sharedContext);
|
|
345
365
|
const newUsedValue = utils_1.MathBN.sub(campaignBudget.used ?? 0, 1);
|
|
346
366
|
const usedValue = utils_1.MathBN.lt(newUsedValue, 0) ? 0 : newUsedValue;
|
|
347
367
|
// update the global budget usage to keep track but it is not used anywhere atm
|
|
@@ -351,6 +371,24 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
351
371
|
});
|
|
352
372
|
promotionCodeUsageMap.set(promotion.code, true);
|
|
353
373
|
}
|
|
374
|
+
if (campaignBudget.type === utils_1.CampaignBudgetType.SPEND_BY_ATTRIBUTE) {
|
|
375
|
+
const campaignBudgetData = campaignBudgetMap.get(campaignBudget.id);
|
|
376
|
+
const attributeValue = registrationContext[campaignBudget.attribute];
|
|
377
|
+
if (!campaignBudgetData || !attributeValue) {
|
|
378
|
+
continue;
|
|
379
|
+
}
|
|
380
|
+
const spendByAttributeUsage = spendByAttributeUsageMap.get(campaignBudget.id);
|
|
381
|
+
spendByAttributeUsageMap.set(campaignBudget.id, {
|
|
382
|
+
attributeValue,
|
|
383
|
+
amount: utils_1.MathBN.add(spendByAttributeUsage?.amount ?? 0, computedAction.amount),
|
|
384
|
+
});
|
|
385
|
+
// update the global budget usage to keep track but it is not used anywhere atm
|
|
386
|
+
const newUsedValue = utils_1.MathBN.sub(campaignBudgetData.used ?? 0, computedAction.amount);
|
|
387
|
+
campaignBudgetData.used = utils_1.MathBN.lt(newUsedValue, 0) ? 0 : newUsedValue;
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
for (const [budgetId, usage] of spendByAttributeUsageMap) {
|
|
391
|
+
await this.revertCampaignBudgetUsageByAttribute_(budgetId, usage.attributeValue, usage.amount, sharedContext);
|
|
354
392
|
}
|
|
355
393
|
if (promotionUsageMap.size > 0) {
|
|
356
394
|
await this.promotionService_.update(Array.from(promotionUsageMap.values()), sharedContext);
|
|
@@ -476,19 +514,28 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
476
514
|
continue;
|
|
477
515
|
}
|
|
478
516
|
const { application_method: applicationMethod, rules: promotionRules = [], } = promotion;
|
|
517
|
+
const budgetType = promotion.campaign?.budget?.type;
|
|
518
|
+
let campaignBudgetUsagePerAttribute;
|
|
479
519
|
if (!skipUsageLimitChecks &&
|
|
480
|
-
|
|
520
|
+
(budgetType === utils_1.CampaignBudgetType.USE_BY_ATTRIBUTE ||
|
|
521
|
+
budgetType === utils_1.CampaignBudgetType.SPEND_BY_ATTRIBUTE)) {
|
|
481
522
|
const attribute = promotion.campaign?.budget?.attribute;
|
|
482
523
|
const budgetUsageContext = _utils_1.ComputeActionUtils.getBudgetUsageContextFromComputeActionContext(applicationContext);
|
|
483
524
|
const attributeValue = budgetUsageContext[attribute];
|
|
484
525
|
if (!attributeValue) {
|
|
526
|
+
if (promotion.is_automatic) {
|
|
527
|
+
continue;
|
|
528
|
+
}
|
|
485
529
|
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `Attribute value for "${attribute}" is required by promotion campaing budget`);
|
|
486
530
|
}
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
531
|
+
;
|
|
532
|
+
[campaignBudgetUsagePerAttribute] =
|
|
533
|
+
(await this.campaignBudgetUsageService_.list({
|
|
534
|
+
budget_id: promotion.campaign?.budget?.id,
|
|
535
|
+
attribute_value: attributeValue,
|
|
536
|
+
}, {}, sharedContext));
|
|
537
|
+
if (budgetType === utils_1.CampaignBudgetType.USE_BY_ATTRIBUTE &&
|
|
538
|
+
campaignBudgetUsagePerAttribute) {
|
|
492
539
|
const action = _utils_1.ComputeActionUtils.computeActionForBudgetExceeded(promotion, 1, campaignBudgetUsagePerAttribute);
|
|
493
540
|
if (action) {
|
|
494
541
|
computedActions.push(action);
|
|
@@ -513,7 +560,7 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
513
560
|
continue;
|
|
514
561
|
}
|
|
515
562
|
if (promotion.type === utils_1.PromotionType.BUYGET) {
|
|
516
|
-
const computedActionsForItems = _utils_1.ComputeActionUtils.getComputedActionsForBuyGet(promotion, applicationContext[utils_1.ApplicationMethodTargetType.ITEMS], methodIdPromoValueMap, eligibleBuyItemMap, eligibleTargetItemMap);
|
|
563
|
+
const computedActionsForItems = _utils_1.ComputeActionUtils.getComputedActionsForBuyGet(promotion, applicationContext[utils_1.ApplicationMethodTargetType.ITEMS], methodIdPromoValueMap, eligibleBuyItemMap, eligibleTargetItemMap, campaignBudgetUsagePerAttribute);
|
|
517
564
|
computedActions.push(...computedActionsForItems);
|
|
518
565
|
}
|
|
519
566
|
else if (promotion.type === utils_1.PromotionType.STANDARD) {
|
|
@@ -525,11 +572,11 @@ class PromotionModuleService extends (0, utils_1.MedusaService)({
|
|
|
525
572
|
? utils_1.ApplicationMethodAllocation.ACROSS
|
|
526
573
|
: undefined;
|
|
527
574
|
if (isTargetOrder || isTargetItems) {
|
|
528
|
-
const computedActionsForItems = _utils_1.ComputeActionUtils.getComputedActionsForItems(promotion, applicationContext[utils_1.ApplicationMethodTargetType.ITEMS], methodIdPromoValueMap, allocationOverride);
|
|
575
|
+
const computedActionsForItems = _utils_1.ComputeActionUtils.getComputedActionsForItems(promotion, applicationContext[utils_1.ApplicationMethodTargetType.ITEMS], methodIdPromoValueMap, allocationOverride, campaignBudgetUsagePerAttribute);
|
|
529
576
|
computedActions.push(...computedActionsForItems);
|
|
530
577
|
}
|
|
531
578
|
if (isTargetShipping) {
|
|
532
|
-
const computedActionsForShippingMethods = _utils_1.ComputeActionUtils.getComputedActionsForShippingMethods(promotion, applicationContext[utils_1.ApplicationMethodTargetType.SHIPPING_METHODS], methodIdPromoValueMap);
|
|
579
|
+
const computedActionsForShippingMethods = _utils_1.ComputeActionUtils.getComputedActionsForShippingMethods(promotion, applicationContext[utils_1.ApplicationMethodTargetType.SHIPPING_METHODS], methodIdPromoValueMap, campaignBudgetUsagePerAttribute);
|
|
533
580
|
computedActions.push(...computedActionsForShippingMethods);
|
|
534
581
|
}
|
|
535
582
|
}
|
|
@@ -1027,16 +1074,16 @@ __decorate([
|
|
|
1027
1074
|
], PromotionModuleService.prototype, "listActivePromotions_", null);
|
|
1028
1075
|
__decorate([
|
|
1029
1076
|
(0, utils_1.InjectTransactionManager)(),
|
|
1030
|
-
__param(
|
|
1077
|
+
__param(4, (0, utils_1.MedusaContext)()),
|
|
1031
1078
|
__metadata("design:type", Function),
|
|
1032
|
-
__metadata("design:paramtypes", [String, String, Object]),
|
|
1079
|
+
__metadata("design:paramtypes", [String, String, Object, Object, Object]),
|
|
1033
1080
|
__metadata("design:returntype", Promise)
|
|
1034
1081
|
], PromotionModuleService.prototype, "registerCampaignBudgetUsageByAttribute_", null);
|
|
1035
1082
|
__decorate([
|
|
1036
1083
|
(0, utils_1.InjectTransactionManager)(),
|
|
1037
|
-
__param(
|
|
1084
|
+
__param(3, (0, utils_1.MedusaContext)()),
|
|
1038
1085
|
__metadata("design:type", Function),
|
|
1039
|
-
__metadata("design:paramtypes", [String, String, Object]),
|
|
1086
|
+
__metadata("design:paramtypes", [String, String, Object, Object]),
|
|
1040
1087
|
__metadata("design:returntype", Promise)
|
|
1041
1088
|
], PromotionModuleService.prototype, "revertCampaignBudgetUsageByAttribute_", null);
|
|
1042
1089
|
__decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promotion-module.js","sourceRoot":"","sources":["../../src/services/promotion-module.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"promotion-module.js","sourceRoot":"","sources":["../../src/services/promotion-module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/index.ts","../src/migrations/Migration20240227120221.ts","../src/migrations/Migration20240617102917.ts","../src/migrations/Migration20240624153824.ts","../src/migrations/Migration20241211061114.ts","../src/migrations/Migration20250113094144.ts","../src/migrations/Migration20250120110700.ts","../src/migrations/Migration20250226130616.ts","../src/migrations/Migration20250508081510.ts","../src/migrations/Migration20250828075407.ts","../src/migrations/Migration20250909083125.ts","../src/migrations/Migration20250916120552.ts","../src/migrations/Migration20250917143818.ts","../src/migrations/Migration20250919122137.ts","../src/migrations/Migration20251006000000.ts","../src/migrations/Migration20251015113934.ts","../src/migrations/Migration20251107050148.ts","../src/models/application-method.ts","../src/models/campaign-budget-usage.ts","../src/models/campaign-budget.ts","../src/models/campaign.ts","../src/models/index.ts","../src/models/promotion-rule-value.ts","../src/models/promotion-rule.ts","../src/models/promotion.ts","../src/services/index.ts","../src/services/promotion-module.ts","../src/types/application-method.ts","../src/types/campaign-budget.ts","../src/types/campaign.ts","../src/types/index.ts","../src/types/promotion-rule-value.ts","../src/types/promotion-rule.ts","../src/types/promotion.ts","../src/utils/index.ts","../src/utils/compute-actions/build-promotion-rule-query-filter-from-context.ts","../src/utils/compute-actions/buy-get.ts","../src/utils/compute-actions/index.ts","../src/utils/compute-actions/line-items.ts","../src/utils/compute-actions/shipping-methods.ts","../src/utils/compute-actions/sort-by-price.ts","../src/utils/compute-actions/usage.ts","../src/utils/validations/application-method.ts","../src/utils/validations/index.ts","../src/utils/validations/promotion-rule.ts"],"version":"5.9.3"}
|
|
1
|
+
{"root":["../src/index.ts","../src/migrations/Migration20240227120221.ts","../src/migrations/Migration20240617102917.ts","../src/migrations/Migration20240624153824.ts","../src/migrations/Migration20241211061114.ts","../src/migrations/Migration20250113094144.ts","../src/migrations/Migration20250120110700.ts","../src/migrations/Migration20250226130616.ts","../src/migrations/Migration20250508081510.ts","../src/migrations/Migration20250828075407.ts","../src/migrations/Migration20250909083125.ts","../src/migrations/Migration20250916120552.ts","../src/migrations/Migration20250917143818.ts","../src/migrations/Migration20250919122137.ts","../src/migrations/Migration20251006000000.ts","../src/migrations/Migration20251015113934.ts","../src/migrations/Migration20251107050148.ts","../src/models/application-method.ts","../src/models/campaign-budget-usage.ts","../src/models/campaign-budget.ts","../src/models/campaign.ts","../src/models/index.ts","../src/models/promotion-rule-value.ts","../src/models/promotion-rule.ts","../src/models/promotion.ts","../src/services/index.ts","../src/services/promotion-module.ts","../src/types/application-method.ts","../src/types/campaign-budget.ts","../src/types/campaign.ts","../src/types/index.ts","../src/types/promotion-rule-value.ts","../src/types/promotion-rule.ts","../src/types/promotion.ts","../src/utils/index.ts","../src/utils/compute-actions/build-promotion-rule-query-filter-from-context.ts","../src/utils/compute-actions/buy-get.ts","../src/utils/compute-actions/index.ts","../src/utils/compute-actions/line-items.ts","../src/utils/compute-actions/shipping-methods.ts","../src/utils/compute-actions/sort-by-price.ts","../src/utils/compute-actions/usage.ts","../src/utils/compute-actions/__tests__/buy-get.spec.ts","../src/utils/validations/application-method.ts","../src/utils/validations/index.ts","../src/utils/validations/promotion-rule.ts"],"version":"5.9.3"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BigNumberInput, ComputeActionItemLine, InferEntityType, PromotionTypes } from "@medusajs/framework/types";
|
|
1
|
+
import { BigNumberInput, CampaignBudgetUsageDTO, ComputeActionItemLine, InferEntityType, PromotionTypes } from "@medusajs/framework/types";
|
|
2
2
|
import { Promotion } from "../../models";
|
|
3
3
|
export type EligibleItem = {
|
|
4
4
|
item_id: string;
|
|
5
5
|
quantity: BigNumberInput;
|
|
6
6
|
};
|
|
7
|
-
export declare function getComputedActionsForBuyGet(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, itemsContext: ComputeActionItemLine[], methodIdPromoValueMap: Map<string, BigNumberInput>, eligibleBuyItemMap: Map<string, EligibleItem[]>, eligibleTargetItemMap: Map<string, EligibleItem[]
|
|
7
|
+
export declare function getComputedActionsForBuyGet(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, itemsContext: ComputeActionItemLine[], methodIdPromoValueMap: Map<string, BigNumberInput>, eligibleBuyItemMap: Map<string, EligibleItem[]>, eligibleTargetItemMap: Map<string, EligibleItem[]>, attributeUsage?: CampaignBudgetUsageDTO): PromotionTypes.ComputeActions[];
|
|
8
8
|
export declare function sortByBuyGetType(a: any, b: any): 0 | 1 | -1;
|
|
9
9
|
//# sourceMappingURL=buy-get.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buy-get.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/buy-get.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,cAAc,EACf,MAAM,2BAA2B,CAAA;AAWlC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,cAAc,CAAA;CACzB,CAAA;
|
|
1
|
+
{"version":3,"file":"buy-get.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/buy-get.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,cAAc,EACf,MAAM,2BAA2B,CAAA;AAWlC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,cAAc,CAAA;CACzB,CAAA;AA8eD,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,cAAc,CAAC,YAAY,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,EAC1E,YAAY,EAAE,qBAAqB,EAAE,EACrC,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EAClD,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAC/C,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,EAClD,cAAc,CAAC,EAAE,sBAAsB,GACtC,cAAc,CAAC,cAAc,EAAE,CAyIjC;AAED,wBAAgB,gBAAgB,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,cAmDpC"}
|
|
@@ -6,15 +6,17 @@ const utils_1 = require("@medusajs/framework/utils");
|
|
|
6
6
|
const validations_1 = require("../validations");
|
|
7
7
|
const usage_1 = require("./usage");
|
|
8
8
|
function sortByPrice(a, b) {
|
|
9
|
-
|
|
9
|
+
const priceA = utils_1.MathBN.div(a.subtotal, a.quantity);
|
|
10
|
+
const priceB = utils_1.MathBN.div(b.subtotal, b.quantity);
|
|
11
|
+
// Returning a non-zero value for equal prices makes this an inconsistent
|
|
10
12
|
// comparator, which leaves the order of equally priced items up to the sort
|
|
11
13
|
// implementation rather than keeping it stable. Since the resulting order
|
|
12
14
|
// decides which items are reserved for the buy side below, that turned into
|
|
13
15
|
// the promotion being applied or not depending on line item order.
|
|
14
|
-
if (utils_1.MathBN.eq(
|
|
16
|
+
if (utils_1.MathBN.eq(priceA, priceB)) {
|
|
15
17
|
return 0;
|
|
16
18
|
}
|
|
17
|
-
return utils_1.MathBN.lt(
|
|
19
|
+
return utils_1.MathBN.lt(priceA, priceB) ? 1 : -1;
|
|
18
20
|
}
|
|
19
21
|
function isValidPromotionContext(promotion, itemsContext) {
|
|
20
22
|
if (!itemsContext) {
|
|
@@ -158,7 +160,7 @@ function preparePromotionApplicationState(eligibleBuyItems, eligibleTargetItems,
|
|
|
158
160
|
4. Accumulating total promotion amounts per item across all applications
|
|
159
161
|
5. Returns computed actions
|
|
160
162
|
*/
|
|
161
|
-
function applyPromotionToTargetItems(targetItems, itemIdPromotionAmountMap, methodIdPromoValueMap, promotion, itemsMap, applicationConfig) {
|
|
163
|
+
function applyPromotionToTargetItems(targetItems, itemIdPromotionAmountMap, methodIdPromoValueMap, promotion, itemsMap, applicationConfig, attributeUsage) {
|
|
162
164
|
const computedActions = [];
|
|
163
165
|
let appliedPromotionQuantity = utils_1.MathBN.convert(0);
|
|
164
166
|
let remainingQtyToApply = utils_1.MathBN.convert(applicationConfig.targetApplyQuantity);
|
|
@@ -169,7 +171,7 @@ function applyPromotionToTargetItems(targetItems, itemIdPromotionAmountMap, meth
|
|
|
169
171
|
const item = itemsMap.get(targetItem.item_id);
|
|
170
172
|
const appliedPromoValue = methodIdPromoValueMap.get(item.id) ?? utils_1.MathBN.convert(0);
|
|
171
173
|
const multiplier = utils_1.MathBN.min(targetItem.quantity, remainingQtyToApply);
|
|
172
|
-
const pricePerUnit = utils_1.MathBN.div(item.subtotal, item.quantity);
|
|
174
|
+
const pricePerUnit = utils_1.MathBN.div(promotion.is_tax_inclusive ? item.original_total : item.subtotal, item.quantity);
|
|
173
175
|
const applicableAmount = utils_1.MathBN.mult(pricePerUnit, multiplier);
|
|
174
176
|
let amount;
|
|
175
177
|
if (promotion.application_method?.type === utils_1.ApplicationMethodType.FIXED) {
|
|
@@ -183,12 +185,15 @@ function applyPromotionToTargetItems(targetItems, itemIdPromotionAmountMap, meth
|
|
|
183
185
|
continue;
|
|
184
186
|
}
|
|
185
187
|
remainingQtyToApply = utils_1.MathBN.sub(remainingQtyToApply, multiplier);
|
|
186
|
-
const budgetExceededAction = (0, usage_1.computeActionForBudgetExceeded)(promotion, amount);
|
|
188
|
+
const budgetExceededAction = (0, usage_1.computeActionForBudgetExceeded)(promotion, amount, attributeUsage);
|
|
187
189
|
if (budgetExceededAction) {
|
|
188
190
|
computedActions.push(budgetExceededAction);
|
|
189
191
|
continue;
|
|
190
192
|
}
|
|
191
|
-
|
|
193
|
+
const appliedAmountExclTax = promotion.is_tax_inclusive
|
|
194
|
+
? utils_1.MathBN.mult(amount, utils_1.MathBN.div(item.subtotal, item.original_total))
|
|
195
|
+
: amount;
|
|
196
|
+
methodIdPromoValueMap.set(item.id, utils_1.MathBN.add(appliedPromoValue, appliedAmountExclTax).toNumber());
|
|
192
197
|
const currentPromotionAmount = itemIdPromotionAmountMap.get(item.id) ?? utils_1.MathBN.convert(0);
|
|
193
198
|
itemIdPromotionAmountMap.set(item.id, utils_1.MathBN.add(currentPromotionAmount, amount));
|
|
194
199
|
appliedPromotionQuantity = utils_1.MathBN.add(appliedPromotionQuantity, multiplier);
|
|
@@ -236,7 +241,7 @@ function updateEligibleItems(totalEligibleItemsMap, applicationItems) {
|
|
|
236
241
|
}
|
|
237
242
|
}
|
|
238
243
|
}
|
|
239
|
-
function createComputedActionsFromPromotionApplication(itemIdPromotionAmountMap, promotionCode) {
|
|
244
|
+
function createComputedActionsFromPromotionApplication(itemIdPromotionAmountMap, promotionCode, isTaxInclusive) {
|
|
240
245
|
const computedActions = [];
|
|
241
246
|
for (const [itemId, totalAmount] of itemIdPromotionAmountMap) {
|
|
242
247
|
if (utils_1.MathBN.gt(totalAmount, 0)) {
|
|
@@ -245,6 +250,7 @@ function createComputedActionsFromPromotionApplication(itemIdPromotionAmountMap,
|
|
|
245
250
|
item_id: itemId,
|
|
246
251
|
amount: totalAmount,
|
|
247
252
|
code: promotionCode,
|
|
253
|
+
...(isTaxInclusive ? { is_tax_inclusive: true } : {}),
|
|
248
254
|
});
|
|
249
255
|
}
|
|
250
256
|
}
|
|
@@ -259,7 +265,7 @@ function filterItemsByPromotionRules(itemsContext, rules) {
|
|
|
259
265
|
.filter((item) => (0, validations_1.areRulesValidForContext)(rules || [], item, utils_1.ApplicationMethodTargetType.ITEMS))
|
|
260
266
|
.sort(sortByPrice);
|
|
261
267
|
}
|
|
262
|
-
function getComputedActionsForBuyGet(promotion, itemsContext, methodIdPromoValueMap, eligibleBuyItemMap, eligibleTargetItemMap) {
|
|
268
|
+
function getComputedActionsForBuyGet(promotion, itemsContext, methodIdPromoValueMap, eligibleBuyItemMap, eligibleTargetItemMap, attributeUsage) {
|
|
263
269
|
if (!isValidPromotionContext(promotion, itemsContext)) {
|
|
264
270
|
return [];
|
|
265
271
|
}
|
|
@@ -307,7 +313,7 @@ function getComputedActionsForBuyGet(promotion, itemsContext, methodIdPromoValue
|
|
|
307
313
|
}
|
|
308
314
|
// We apply the promotion to the target items based on the target items that are eligible
|
|
309
315
|
// and the remaining quantities of the target items
|
|
310
|
-
const application = applyPromotionToTargetItems(applicationState.targetItems, itemIdPromotionAmountMap, methodIdPromoValueMap, promotion, itemsMap, applicationConfig);
|
|
316
|
+
const application = applyPromotionToTargetItems(applicationState.targetItems, itemIdPromotionAmountMap, methodIdPromoValueMap, promotion, itemsMap, applicationConfig, attributeUsage);
|
|
311
317
|
computedActions.push(...application.computedActions);
|
|
312
318
|
// Computed actions being generated means that the promotion is applied.
|
|
313
319
|
// We now need to update the remaining quantities of the eligible items and the total eligible items
|
|
@@ -317,7 +323,7 @@ function getComputedActionsForBuyGet(promotion, itemsContext, methodIdPromoValue
|
|
|
317
323
|
updateEligibleItems(totalEligibleBuyItemsMap, applicationState.buyItems);
|
|
318
324
|
updateEligibleItems(totalEligibleTargetItemsMap, applicationState.targetItems);
|
|
319
325
|
}
|
|
320
|
-
const finalActions = createComputedActionsFromPromotionApplication(itemIdPromotionAmountMap, promotion.code);
|
|
326
|
+
const finalActions = createComputedActionsFromPromotionApplication(itemIdPromotionAmountMap, promotion.code, promotion.is_tax_inclusive);
|
|
321
327
|
computedActions.push(...finalActions);
|
|
322
328
|
eligibleBuyItemMap.set(promotion.code, Array.from(totalEligibleBuyItemsMap.values()));
|
|
323
329
|
eligibleTargetItemMap.set(promotion.code, Array.from(totalEligibleTargetItemsMap.values()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buy-get.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/buy-get.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"buy-get.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/buy-get.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ApplicationMethodAllocationValues, InferEntityType, PromotionTypes } from "@medusajs/framework/types";
|
|
1
|
+
import { ApplicationMethodAllocationValues, CampaignBudgetUsageDTO, InferEntityType, PromotionTypes } from "@medusajs/framework/types";
|
|
2
2
|
import { ApplicationMethodTargetType as TargetType } from "@medusajs/framework/utils";
|
|
3
3
|
import { Promotion } from "../../models";
|
|
4
|
-
export declare function getComputedActionsForItems(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, items: PromotionTypes.ComputeActionContext[TargetType.ITEMS], appliedPromotionsMap: Map<string, number>, allocationOverride?: ApplicationMethodAllocationValues): PromotionTypes.ComputeActions[];
|
|
4
|
+
export declare function getComputedActionsForItems(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, items: PromotionTypes.ComputeActionContext[TargetType.ITEMS], appliedPromotionsMap: Map<string, number>, allocationOverride?: ApplicationMethodAllocationValues, attributeUsage?: CampaignBudgetUsageDTO): PromotionTypes.ComputeActions[];
|
|
5
5
|
//# sourceMappingURL=line-items.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line-items.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/line-items.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EAEjC,eAAe,EACf,cAAc,EACf,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAOL,2BAA2B,IAAI,UAAU,EAC1C,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAiBnC,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,cAAc,CAAC,YAAY,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,EAC1E,KAAK,EAAE,cAAc,CAAC,oBAAoB,CAAC,UAAU,CAAC,KAAK,CAAC,EAC5D,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACzC,kBAAkB,CAAC,EAAE,iCAAiC,
|
|
1
|
+
{"version":3,"file":"line-items.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/line-items.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,EAEjC,sBAAsB,EACtB,eAAe,EACf,cAAc,EACf,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAOL,2BAA2B,IAAI,UAAU,EAC1C,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAiBnC,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,cAAc,CAAC,YAAY,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,EAC1E,KAAK,EAAE,cAAc,CAAC,oBAAoB,CAAC,UAAU,CAAC,KAAK,CAAC,EAC5D,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EACzC,kBAAkB,CAAC,EAAE,iCAAiC,EACtD,cAAc,CAAC,EAAE,sBAAsB,GACtC,cAAc,CAAC,cAAc,EAAE,CAUjC"}
|
|
@@ -10,11 +10,11 @@ function validateContext(contextKey, context) {
|
|
|
10
10
|
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `"${contextKey}" should be present as an array in the context for computeActions`);
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
|
-
function getComputedActionsForItems(promotion, items, appliedPromotionsMap, allocationOverride) {
|
|
13
|
+
function getComputedActionsForItems(promotion, items, appliedPromotionsMap, allocationOverride, attributeUsage) {
|
|
14
14
|
validateContext("items", items);
|
|
15
|
-
return applyPromotionToItems(promotion, items, appliedPromotionsMap, allocationOverride);
|
|
15
|
+
return applyPromotionToItems(promotion, items, appliedPromotionsMap, allocationOverride, attributeUsage);
|
|
16
16
|
}
|
|
17
|
-
function applyPromotionToItems(promotion, items, appliedPromotionsMap, allocationOverride) {
|
|
17
|
+
function applyPromotionToItems(promotion, items, appliedPromotionsMap, allocationOverride, attributeUsage) {
|
|
18
18
|
const { application_method: applicationMethod } = promotion;
|
|
19
19
|
if (!applicationMethod) {
|
|
20
20
|
return [];
|
|
@@ -80,7 +80,7 @@ function applyPromotionToItems(promotion, items, appliedPromotionsMap, allocatio
|
|
|
80
80
|
if (utils_1.MathBN.lte(amount, 0)) {
|
|
81
81
|
continue;
|
|
82
82
|
}
|
|
83
|
-
const budgetExceededAction = (0, usage_1.computeActionForBudgetExceeded)(promotion, amount);
|
|
83
|
+
const budgetExceededAction = (0, usage_1.computeActionForBudgetExceeded)(promotion, amount, attributeUsage);
|
|
84
84
|
if (budgetExceededAction) {
|
|
85
85
|
computedActions.push(budgetExceededAction);
|
|
86
86
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"line-items.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/line-items.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"line-items.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/line-items.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BigNumberInput, InferEntityType, PromotionTypes } from "@medusajs/framework/types";
|
|
1
|
+
import { BigNumberInput, CampaignBudgetUsageDTO, InferEntityType, PromotionTypes } from "@medusajs/framework/types";
|
|
2
2
|
import { ApplicationMethodTargetType } from "@medusajs/framework/utils";
|
|
3
3
|
import { Promotion } from "../../models";
|
|
4
|
-
export declare function getComputedActionsForShippingMethods(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, shippingMethodApplicationContext: PromotionTypes.ComputeActionContext[ApplicationMethodTargetType.SHIPPING_METHODS], methodIdPromoValueMap: Map<string, number
|
|
5
|
-
export declare function applyPromotionToShippingMethods(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, shippingMethods: PromotionTypes.ComputeActionContext[ApplicationMethodTargetType.SHIPPING_METHODS], methodIdPromoValueMap: Map<string, BigNumberInput
|
|
4
|
+
export declare function getComputedActionsForShippingMethods(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, shippingMethodApplicationContext: PromotionTypes.ComputeActionContext[ApplicationMethodTargetType.SHIPPING_METHODS], methodIdPromoValueMap: Map<string, number>, attributeUsage?: CampaignBudgetUsageDTO): PromotionTypes.ComputeActions[];
|
|
5
|
+
export declare function applyPromotionToShippingMethods(promotion: PromotionTypes.PromotionDTO | InferEntityType<typeof Promotion>, shippingMethods: PromotionTypes.ComputeActionContext[ApplicationMethodTargetType.SHIPPING_METHODS], methodIdPromoValueMap: Map<string, BigNumberInput>, attributeUsage?: CampaignBudgetUsageDTO): PromotionTypes.ComputeActions[];
|
|
6
6
|
//# sourceMappingURL=shipping-methods.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shipping-methods.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/shipping-methods.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACf,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAEL,2BAA2B,EAK5B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAKnC,wBAAgB,oCAAoC,CAClD,SAAS,EAAE,cAAc,CAAC,YAAY,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,EAC1E,gCAAgC,EAAE,cAAc,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,EACnH,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"shipping-methods.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/shipping-methods.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,eAAe,EACf,cAAc,EACf,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAEL,2BAA2B,EAK5B,MAAM,2BAA2B,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAKnC,wBAAgB,oCAAoC,CAClD,SAAS,EAAE,cAAc,CAAC,YAAY,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,EAC1E,gCAAgC,EAAE,cAAc,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,EACnH,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1C,cAAc,CAAC,EAAE,sBAAsB,GACtC,cAAc,CAAC,cAAc,EAAE,CAsCjC;AAED,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,cAAc,CAAC,YAAY,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,EAC1E,eAAe,EAAE,cAAc,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,gBAAgB,CAAC,EAClG,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EAClD,cAAc,CAAC,EAAE,sBAAsB,GACtC,cAAc,CAAC,cAAc,EAAE,CAyIjC"}
|
|
@@ -6,7 +6,7 @@ const utils_1 = require("@medusajs/framework/utils");
|
|
|
6
6
|
const validations_1 = require("../validations");
|
|
7
7
|
const sort_by_price_1 = require("./sort-by-price");
|
|
8
8
|
const usage_1 = require("./usage");
|
|
9
|
-
function getComputedActionsForShippingMethods(promotion, shippingMethodApplicationContext, methodIdPromoValueMap) {
|
|
9
|
+
function getComputedActionsForShippingMethods(promotion, shippingMethodApplicationContext, methodIdPromoValueMap, attributeUsage) {
|
|
10
10
|
let applicableShippingItems = [];
|
|
11
11
|
if (!shippingMethodApplicationContext) {
|
|
12
12
|
throw new utils_1.MedusaError(utils_1.MedusaError.Types.INVALID_DATA, `"shipping_methods" should be present as an array in the context for computeActions`);
|
|
@@ -22,9 +22,9 @@ function getComputedActionsForShippingMethods(promotion, shippingMethodApplicati
|
|
|
22
22
|
if (allocation === utils_1.ApplicationMethodAllocation.ONCE) {
|
|
23
23
|
applicableShippingItems = applicableShippingItems.sort(sort_by_price_1.sortShippingLineByPriceAscending);
|
|
24
24
|
}
|
|
25
|
-
return applyPromotionToShippingMethods(promotion, applicableShippingItems, methodIdPromoValueMap);
|
|
25
|
+
return applyPromotionToShippingMethods(promotion, applicableShippingItems, methodIdPromoValueMap, attributeUsage);
|
|
26
26
|
}
|
|
27
|
-
function applyPromotionToShippingMethods(promotion, shippingMethods, methodIdPromoValueMap) {
|
|
27
|
+
function applyPromotionToShippingMethods(promotion, shippingMethods, methodIdPromoValueMap, attributeUsage) {
|
|
28
28
|
const { application_method: applicationMethod } = promotion;
|
|
29
29
|
const allocation = applicationMethod?.allocation;
|
|
30
30
|
const computedActions = [];
|
|
@@ -50,7 +50,7 @@ function applyPromotionToShippingMethods(promotion, shippingMethods, methodIdPro
|
|
|
50
50
|
if (utils_1.MathBN.lte(amount, 0)) {
|
|
51
51
|
continue;
|
|
52
52
|
}
|
|
53
|
-
const budgetExceededAction = (0, usage_1.computeActionForBudgetExceeded)(promotion, amount);
|
|
53
|
+
const budgetExceededAction = (0, usage_1.computeActionForBudgetExceeded)(promotion, amount, attributeUsage);
|
|
54
54
|
if (budgetExceededAction) {
|
|
55
55
|
computedActions.push(budgetExceededAction);
|
|
56
56
|
continue;
|
|
@@ -90,7 +90,7 @@ function applyPromotionToShippingMethods(promotion, shippingMethods, methodIdPro
|
|
|
90
90
|
if (utils_1.MathBN.lte(amount, 0)) {
|
|
91
91
|
continue;
|
|
92
92
|
}
|
|
93
|
-
const budgetExceededAction = (0, usage_1.computeActionForBudgetExceeded)(promotion, amount);
|
|
93
|
+
const budgetExceededAction = (0, usage_1.computeActionForBudgetExceeded)(promotion, amount, attributeUsage);
|
|
94
94
|
if (budgetExceededAction) {
|
|
95
95
|
computedActions.push(budgetExceededAction);
|
|
96
96
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shipping-methods.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/shipping-methods.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"shipping-methods.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/shipping-methods.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,8 @@ import { Promotion } from "../../models";
|
|
|
7
7
|
* 1. discounted amount in case of spend budget
|
|
8
8
|
* 2. number of times the promotion has been used in case of usage budget
|
|
9
9
|
* 3. number of times the promotion has been used by a specific attribute value in case of use_by_attribute budget
|
|
10
|
-
*
|
|
10
|
+
* 4. discounted amount in case of spend_by_attribute budget
|
|
11
|
+
* @param attributeUsage - the attribute usage in case of use_by_attribute or spend_by_attribute budget
|
|
11
12
|
* @returns the exceeded action if the budget is exceeded, otherwise undefined
|
|
12
13
|
*/
|
|
13
14
|
export declare function computeActionForBudgetExceeded(promotion: PromotionDTO | InferEntityType<typeof Promotion>, amount: BigNumberInput, attributeUsage?: CampaignBudgetUsageDTO): CampaignBudgetExceededAction | void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/usage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,0BAA0B,EAC1B,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACb,MAAM,2BAA2B,CAAA;AAMlC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC
|
|
1
|
+
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../../src/utils/compute-actions/usage.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,0BAA0B,EAC1B,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,YAAY,EACb,MAAM,2BAA2B,CAAA;AAMlC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC;;;;;;;;;;GAUG;AACH,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,YAAY,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,EAC3D,MAAM,EAAE,cAAc,EACtB,cAAc,CAAC,EAAE,sBAAsB,GACtC,4BAA4B,GAAG,IAAI,CAoCrC;AAED,wBAAgB,6CAA6C,CAC3D,oBAAoB,EAAE,oBAAoB,GACzC,0BAA0B,CAS5B"}
|
|
@@ -10,7 +10,8 @@ const utils_1 = require("@medusajs/framework/utils");
|
|
|
10
10
|
* 1. discounted amount in case of spend budget
|
|
11
11
|
* 2. number of times the promotion has been used in case of usage budget
|
|
12
12
|
* 3. number of times the promotion has been used by a specific attribute value in case of use_by_attribute budget
|
|
13
|
-
*
|
|
13
|
+
* 4. discounted amount in case of spend_by_attribute budget
|
|
14
|
+
* @param attributeUsage - the attribute usage in case of use_by_attribute or spend_by_attribute budget
|
|
14
15
|
* @returns the exceeded action if the budget is exceeded, otherwise undefined
|
|
15
16
|
*/
|
|
16
17
|
function computeActionForBudgetExceeded(promotion, amount, attributeUsage) {
|
|
@@ -22,10 +23,15 @@ function computeActionForBudgetExceeded(promotion, amount, attributeUsage) {
|
|
|
22
23
|
!attributeUsage) {
|
|
23
24
|
return;
|
|
24
25
|
}
|
|
26
|
+
const isSpendByAttribute = campaignBudget.type === utils_1.CampaignBudgetType.SPEND_BY_ATTRIBUTE;
|
|
27
|
+
// A spend_by_attribute budget's own `used` is the aggregate across all
|
|
28
|
+
// attribute values, so it never applies to a single attribute value.
|
|
25
29
|
const campaignBudgetUsed = attributeUsage
|
|
26
30
|
? attributeUsage.used
|
|
27
|
-
:
|
|
28
|
-
|
|
31
|
+
: isSpendByAttribute
|
|
32
|
+
? 0
|
|
33
|
+
: campaignBudget.used ?? 0;
|
|
34
|
+
const totalUsed = campaignBudget.type === utils_1.CampaignBudgetType.SPEND || isSpendByAttribute
|
|
29
35
|
? utils_1.MathBN.add(campaignBudgetUsed, amount)
|
|
30
36
|
: utils_1.MathBN.add(campaignBudgetUsed, 1);
|
|
31
37
|
if (campaignBudget.limit && utils_1.MathBN.gt(totalUsed, campaignBudget.limit)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/usage.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/utils/compute-actions/usage.ts"],"names":[],"mappings":";;AA2BA,wEAwCC;AAED,sGAWC;AAvED,qDAIkC;AAGlC;;;;;;;;;;GAUG;AACH,SAAgB,8BAA8B,CAC5C,SAA2D,EAC3D,MAAsB,EACtB,cAAuC;IAEvC,MAAM,cAAc,GAAG,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAA;IAEjD,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAM;IACR,CAAC;IAED,IACE,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,gBAAgB;QAC3D,CAAC,cAAc,EACf,CAAC;QACD,OAAM;IACR,CAAC;IAED,MAAM,kBAAkB,GACtB,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,kBAAkB,CAAA;IAE/D,uEAAuE;IACvE,qEAAqE;IACrE,MAAM,kBAAkB,GAAG,cAAc;QACvC,CAAC,CAAC,cAAc,CAAC,IAAI;QACrB,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,CAAA;IAE5B,MAAM,SAAS,GACb,cAAc,CAAC,IAAI,KAAK,0BAAkB,CAAC,KAAK,IAAI,kBAAkB;QACpE,CAAC,CAAC,cAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,MAAM,CAAC;QACxC,CAAC,CAAC,cAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAA;IAEvC,IAAI,cAAc,CAAC,KAAK,IAAI,cAAM,CAAC,EAAE,CAAC,SAAS,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QACvE,OAAO;YACL,MAAM,EAAE,uBAAe,CAAC,wBAAwB;YAChD,IAAI,EAAE,SAAS,CAAC,IAAK;SACtB,CAAA;IACH,CAAC;AACH,CAAC;AAED,SAAgB,6CAA6C,CAC3D,oBAA0C;IAE1C,OAAO;QACL,WAAW,EACT,oBAAoB,CAAC,WAAW;YAC/B,oBAAoB,CAAC,QAAgB,EAAE,EAAE;YAC1C,IAAI;QACN,cAAc,EACX,oBAAoB,CAAC,KAAmC,IAAI,IAAI;KACpE,CAAA;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@medusajs/promotion",
|
|
3
|
-
"version": "2.22.
|
|
3
|
+
"version": "2.22.1",
|
|
4
4
|
"description": "Medusa Promotion module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -44,10 +44,10 @@
|
|
|
44
44
|
"orm:cache:clear": "MIKRO_ORM_CLI_CONFIG=./mikro-orm.config.dev.ts MIKRO_ORM_ALLOW_GLOBAL_CLI=true medusa-mikro-orm cache:clear"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@medusajs/framework": "2.22.
|
|
48
|
-
"@medusajs/test-utils": "2.22.
|
|
47
|
+
"@medusajs/framework": "2.22.1",
|
|
48
|
+
"@medusajs/test-utils": "2.22.1"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
|
-
"@medusajs/framework": "2.22.
|
|
51
|
+
"@medusajs/framework": "2.22.1"
|
|
52
52
|
}
|
|
53
53
|
}
|