Browse Source

fix(core): Add minimums to default promotion actions/conditions

Michael Bromley 3 months ago
parent
commit
0f95eccfe1

+ 1 - 0
packages/core/src/config/promotion/actions/order-percentage-discount-action.ts

@@ -10,6 +10,7 @@ export const orderPercentageDiscount = new PromotionOrderAction({
             ui: {
             ui: {
                 component: 'number-form-input',
                 component: 'number-form-input',
                 suffix: '%',
                 suffix: '%',
+                min: 0,
             },
             },
         },
         },
     },
     },

+ 1 - 0
packages/core/src/config/promotion/actions/product-percentage-discount-action.ts

@@ -14,6 +14,7 @@ export const productsPercentageDiscount = new PromotionItemAction({
             ui: {
             ui: {
                 component: 'number-form-input',
                 component: 'number-form-input',
                 suffix: '%',
                 suffix: '%',
+                min: 0,
             },
             },
         },
         },
         productVariantIds: {
         productVariantIds: {

+ 2 - 0
packages/core/src/config/promotion/conditions/buy-x-get-y-free-condition.ts

@@ -16,6 +16,7 @@ export const buyXGetYFreeCondition = new PromotionCondition({
         amountX: {
         amountX: {
             type: 'int',
             type: 'int',
             defaultValue: 2,
             defaultValue: 2,
+            ui: { component: '', min: 0 },
         },
         },
         variantIdsX: {
         variantIdsX: {
             type: 'ID',
             type: 'ID',
@@ -26,6 +27,7 @@ export const buyXGetYFreeCondition = new PromotionCondition({
         amountY: {
         amountY: {
             type: 'int',
             type: 'int',
             defaultValue: 1,
             defaultValue: 1,
+            ui: { component: '', min: 0 },
         },
         },
         variantIdsY: {
         variantIdsY: {
             type: 'ID',
             type: 'ID',

+ 1 - 0
packages/core/src/config/promotion/conditions/contains-products-condition.ts

@@ -14,6 +14,7 @@ export const containsProducts = new PromotionCondition({
         minimum: {
         minimum: {
             type: 'int',
             type: 'int',
             defaultValue: 1,
             defaultValue: 1,
+            ui: { component: '', min: 0 },
         },
         },
         productVariantIds: {
         productVariantIds: {
             type: 'ID',
             type: 'ID',

+ 5 - 1
packages/core/src/config/promotion/conditions/has-facet-values-condition.ts

@@ -11,7 +11,11 @@ export const hasFacetValues = new PromotionCondition({
         { languageCode: LanguageCode.en, value: 'Buy at least { minimum } products with the given facets' },
         { languageCode: LanguageCode.en, value: 'Buy at least { minimum } products with the given facets' },
     ],
     ],
     args: {
     args: {
-        minimum: { type: 'int', defaultValue: 1 },
+        minimum: {
+            type: 'int',
+            defaultValue: 1,
+            ui: { component: '', min: 0 },
+        },
         facets: { type: 'ID', list: true, ui: { component: 'facet-value-form-input' } },
         facets: { type: 'ID', list: true, ui: { component: 'facet-value-form-input' } },
     },
     },
     init(injector) {
     init(injector) {