feat(types,utils): add promotions create with application method (#5945)

What:

- Promotions can be created with its bare attributes
- Promotions one to one relationship with ApplicationMethod can be created with its attributes + validation

RESOLVES CORE-1592
RESOLVES CORE-1595
This commit is contained in:
Riqwan Thamir
2023-12-21 12:04:50 +01:00
committed by GitHub
parent c41f3002f3
commit 890e76a5c5
38 changed files with 1497 additions and 55 deletions
+1
View File
@@ -4,6 +4,7 @@ export * as EventBusUtils from "./event-bus"
export * as FeatureFlagUtils from "./feature-flags"
export * as ModulesSdkUtils from "./modules-sdk"
export * as ProductUtils from "./product"
export * as PromotionUtils from "./promotion"
export * as SearchUtils from "./search"
export * as ShippingProfileUtils from "./shipping"
export * as OrchestrationUtils from "./orchestration"
+1
View File
@@ -7,6 +7,7 @@ export * from "./feature-flags"
export * from "./modules-sdk"
export * from "./pricing"
export * from "./product"
export * from "./promotion"
export * from "./search"
export * from "./shipping"
export * from "./orchestration"
+20
View File
@@ -0,0 +1,20 @@
export enum PromotionType {
STANDARD = "standard",
BUYGET = "buyget",
}
export enum ApplicationMethodType {
FIXED = "fixed",
PERCENTAGE = "percentage",
}
export enum ApplicationMethodTargetType {
ORDER = "order",
SHIPPING = "shipping",
ITEM = "item",
}
export enum ApplicationMethodAllocation {
EACH = "each",
ACROSS = "across",
}