From 4360a7ec4d214b850f1cb63947065828090aae5d Mon Sep 17 00:00:00 2001 From: "ct-sdks[bot]" <153784748+ct-sdks[bot]@users.noreply.github.com> Date: Tue, 4 Mar 2025 10:34:50 +0000 Subject: [PATCH] build(codegen): updating SDK --- changes.md | 14 ++++--- .../ProductTailoringAttributesTests.cs | 1 - .../Extensions/AttributeExtensions.cs | 4 +- .../Models/Carts/BestDeal.cs | 16 ++++++++ .../commercetoolsSdkApi/Models/Carts/Cart.cs | 2 + .../Models/Carts/DiscountTypeCombination.cs | 8 ++++ .../Models/Carts/IBestDeal.cs | 11 ++++++ .../commercetoolsSdkApi/Models/Carts/ICart.cs | 2 + .../Models/Carts/IDiscountTypeCombination.cs | 27 +++++++++++++ .../Models/Carts/IStacking.cs | 10 +++++ .../Models/Carts/Stacking.cs | 14 +++++++ .../Models/OrderEdits/StagedOrder.cs | 2 + .../Models/Orders/IOrder.cs | 2 + .../Models/Orders/Order.cs | 2 + .../IProductTailoringAttribute.cs | 2 - .../Carts/BestDealQueryBuilderDsl.cs | 30 +++++++++++++++ .../Generated/Carts/CartQueryBuilderDsl.cs | 9 +++++ .../DiscountTypeCombinationQueryBuilderDsl.cs | 38 +++++++++++++++++++ .../Carts/StackingQueryBuilderDsl.cs | 24 ++++++++++++ .../OrderEdits/StagedOrderQueryBuilderDsl.cs | 9 +++++ .../Generated/Orders/OrderQueryBuilderDsl.cs | 9 +++++ .../ProductTailoringAttributeConverter.cs | 1 - ...ctTailoringAttributeMapperTypeRetriever.cs | 3 -- .../ProductTailoringAttributeTypeRetriever.cs | 3 +- .../schema.graphqls | 21 ++++++++++ reference.txt | 1 + references.txt | 1 + 27 files changed, 250 insertions(+), 16 deletions(-) create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/BestDeal.cs create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/DiscountTypeCombination.cs create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IBestDeal.cs create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IDiscountTypeCombination.cs create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IStacking.cs create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/Stacking.cs create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/BestDealQueryBuilderDsl.cs create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/DiscountTypeCombinationQueryBuilderDsl.cs create mode 100644 commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/StackingQueryBuilderDsl.cs create mode 100644 reference.txt diff --git a/changes.md b/changes.md index 6fe1298969a..38e04aca4a9 100644 --- a/changes.md +++ b/changes.md @@ -1,15 +1,19 @@ -**History changes** +**Api changes**
-Removed Enum(s) +Added Type(s) -- :warning: removed enum `setAsssetKey` from type `UpdateType` +- added type `BestDeal` +- added type `DiscountTypeCombination` +- added type `Stacking`
-Added Enum(s) +Added Property(s) -- added enum `setAssetKey` to type `UpdateType` +- added property `discountTypeCombination` to type `Cart` +- added property `discountTypeCombination` to type `StagedOrder` +- added property `discountTypeCombination` to type `Order`
diff --git a/commercetools.Sdk/Tests/commercetools.Api.Serialization.Tests/ProductTailoringAttributesTests.cs b/commercetools.Sdk/Tests/commercetools.Api.Serialization.Tests/ProductTailoringAttributesTests.cs index a7f06c0c072..857d2e81de6 100644 --- a/commercetools.Sdk/Tests/commercetools.Api.Serialization.Tests/ProductTailoringAttributesTests.cs +++ b/commercetools.Sdk/Tests/commercetools.Api.Serialization.Tests/ProductTailoringAttributesTests.cs @@ -6,7 +6,6 @@ using commercetools.Sdk.Api.Models.Products; using commercetools.Sdk.Api.Models.ProductTypes; using commercetools.Sdk.Api.Extensions; -using commercetools.Sdk.Api.Models.Messages; using commercetools.Sdk.Api.Models.ProductTailorings; using commercetools.Sdk.Api.Serialization; using Microsoft.Extensions.DependencyInjection; diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Extensions/AttributeExtensions.cs b/commercetools.Sdk/commercetools.Sdk.Api/Extensions/AttributeExtensions.cs index c9a8962b263..510b8fcba44 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Extensions/AttributeExtensions.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Extensions/AttributeExtensions.cs @@ -13,7 +13,7 @@ public static IAttribute Get(this IList attributes, string name) { return attributes.FirstOrDefault(a => a.Name.Equals(name)); } - + public static IProductTailoringAttribute Get(this IList attributes, string name) { return attributes.FirstOrDefault(a => a.Name.Equals(name)); @@ -34,7 +34,7 @@ public static T Get(this IList attributes, string name) where T : } return (T)t; } - + public static T Get(this IList attributes, string name) where T : IProductTailoringAttribute { var t = attributes.FirstOrDefault(a => a.Name.Equals(name)); diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/BestDeal.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/BestDeal.cs new file mode 100644 index 00000000000..b120dae346f --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/BestDeal.cs @@ -0,0 +1,16 @@ + + +namespace commercetools.Sdk.Api.Models.Carts +{ + + public partial class BestDeal : IBestDeal + { + public string Type { get; set; } + + public string ChosenDiscountType { get; set; } + public BestDeal() + { + this.Type = "BestDeal"; + } + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/Cart.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/Cart.cs index 61855ef3828..d91dab43959 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/Cart.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/Cart.cs @@ -108,6 +108,8 @@ public partial class Cart : ICart public ICustomFields Custom { get; set; } + public IDiscountTypeCombination DiscountTypeCombination { get; set; } + public int? DeleteDaysAfterLastModification { get; set; } public ILastModifiedBy LastModifiedBy { get; set; } diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/DiscountTypeCombination.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/DiscountTypeCombination.cs new file mode 100644 index 00000000000..f9af050b483 --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/DiscountTypeCombination.cs @@ -0,0 +1,8 @@ +namespace commercetools.Sdk.Api.Models.Carts +{ + + public partial class DiscountTypeCombination : IDiscountTypeCombination + { + public string Type { get; set; } + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IBestDeal.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IBestDeal.cs new file mode 100644 index 00000000000..bf90513c7b9 --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IBestDeal.cs @@ -0,0 +1,11 @@ +using commercetools.Base.CustomAttributes; +// ReSharper disable CheckNamespace +namespace commercetools.Sdk.Api.Models.Carts +{ + [DeserializeAs(typeof(commercetools.Sdk.Api.Models.Carts.BestDeal))] + public partial interface IBestDeal : IDiscountTypeCombination + { + string ChosenDiscountType { get; set; } + + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/ICart.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/ICart.cs index b5adbf70530..eedacb35a47 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/ICart.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/ICart.cs @@ -105,6 +105,8 @@ public partial interface ICart : IBaseResource ICustomFields Custom { get; set; } + IDiscountTypeCombination DiscountTypeCombination { get; set; } + int? DeleteDaysAfterLastModification { get; set; } new DateTime CreatedAt { get; set; } diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IDiscountTypeCombination.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IDiscountTypeCombination.cs new file mode 100644 index 00000000000..81695c0b3a7 --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IDiscountTypeCombination.cs @@ -0,0 +1,27 @@ +using commercetools.Base.CustomAttributes; +using System; +// ReSharper disable CheckNamespace +namespace commercetools.Sdk.Api.Models.Carts +{ + [TypeDiscriminator(nameof(Type))] + [DefaultTypeDiscriminator(typeof(commercetools.Sdk.Api.Models.Carts.DiscountTypeCombination))] + [SubTypeDiscriminator("BestDeal", typeof(commercetools.Sdk.Api.Models.Carts.BestDeal))] + [SubTypeDiscriminator("Stacking", typeof(commercetools.Sdk.Api.Models.Carts.Stacking))] + public partial interface IDiscountTypeCombination + { + string Type { get; set; } + + static commercetools.Sdk.Api.Models.Carts.BestDeal BestDeal(Action init = null) + { + var t = new commercetools.Sdk.Api.Models.Carts.BestDeal(); + init?.Invoke(t); + return t; + } + static commercetools.Sdk.Api.Models.Carts.Stacking Stacking(Action init = null) + { + var t = new commercetools.Sdk.Api.Models.Carts.Stacking(); + init?.Invoke(t); + return t; + } + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IStacking.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IStacking.cs new file mode 100644 index 00000000000..48ed822f1a1 --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/IStacking.cs @@ -0,0 +1,10 @@ +using commercetools.Base.CustomAttributes; +// ReSharper disable CheckNamespace +namespace commercetools.Sdk.Api.Models.Carts +{ + [DeserializeAs(typeof(commercetools.Sdk.Api.Models.Carts.Stacking))] + public partial interface IStacking : IDiscountTypeCombination + { + + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/Stacking.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/Stacking.cs new file mode 100644 index 00000000000..0eab6d7e0f9 --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Carts/Stacking.cs @@ -0,0 +1,14 @@ + + +namespace commercetools.Sdk.Api.Models.Carts +{ + + public partial class Stacking : IStacking + { + public string Type { get; set; } + public Stacking() + { + this.Type = "Stacking"; + } + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/OrderEdits/StagedOrder.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/OrderEdits/StagedOrder.cs index 3c99295664a..b5a9af80e04 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/OrderEdits/StagedOrder.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/OrderEdits/StagedOrder.cs @@ -127,6 +127,8 @@ public partial class StagedOrder : IStagedOrder public IEnumerable ReturnInfoEnumerable { set => ReturnInfo = value.ToList(); } + public IDiscountTypeCombination DiscountTypeCombination { get; set; } + [ObsoleteAttribute("This property is obsolete", false)] public long? LastMessageSequenceNumber { get; set; } diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Orders/IOrder.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Orders/IOrder.cs index 9cddfefce75..53dbb6bb2ef 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Orders/IOrder.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Orders/IOrder.cs @@ -123,6 +123,8 @@ public partial interface IOrder : IBaseResource IEnumerable ReturnInfoEnumerable { set => ReturnInfo = value.ToList(); } + IDiscountTypeCombination DiscountTypeCombination { get; set; } + [ObsoleteAttribute("This property is obsolete", false)] long? LastMessageSequenceNumber { get; set; } diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Orders/Order.cs b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Orders/Order.cs index 743680ced27..ff3819e6f55 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Orders/Order.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Generated/commercetoolsSdkApi/Models/Orders/Order.cs @@ -126,6 +126,8 @@ public partial class Order : IOrder public IEnumerable ReturnInfoEnumerable { set => ReturnInfo = value.ToList(); } + public IDiscountTypeCombination DiscountTypeCombination { get; set; } + [ObsoleteAttribute("This property is obsolete", false)] public long? LastMessageSequenceNumber { get; set; } diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Models/ProductTailorings/IProductTailoringAttribute.cs b/commercetools.Sdk/commercetools.Sdk.Api/Models/ProductTailorings/IProductTailoringAttribute.cs index 09ed054be2d..46c8a88269d 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Models/ProductTailorings/IProductTailoringAttribute.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Models/ProductTailorings/IProductTailoringAttribute.cs @@ -1,5 +1,3 @@ -using System; -using commercetools.Base.CustomAttributes; using commercetools.Sdk.Api.Models.Products; // ReSharper disable CheckNamespace diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/BestDealQueryBuilderDsl.cs b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/BestDealQueryBuilderDsl.cs new file mode 100644 index 00000000000..cb9b5b92463 --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/BestDealQueryBuilderDsl.cs @@ -0,0 +1,30 @@ +// ReSharper disable CheckNamespace +namespace commercetools.Sdk.Api.Predicates.Query.Carts +{ + + public partial class BestDealQueryBuilderDsl + { + public BestDealQueryBuilderDsl() + { + } + + public static BestDealQueryBuilderDsl Of() + { + return new BestDealQueryBuilderDsl(); + } + + public IComparisonPredicateBuilder Type() + { + return new ComparisonPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("type")), + p => new CombinationQueryPredicate(p, BestDealQueryBuilderDsl.Of), + PredicateFormatter.Format); + } + public IComparisonPredicateBuilder ChosenDiscountType() + { + return new ComparisonPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("chosenDiscountType")), + p => new CombinationQueryPredicate(p, BestDealQueryBuilderDsl.Of), + PredicateFormatter.Format); + } + + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/CartQueryBuilderDsl.cs b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/CartQueryBuilderDsl.cs index 0d7f895501a..97b6f3ed8bf 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/CartQueryBuilderDsl.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/CartQueryBuilderDsl.cs @@ -346,6 +346,15 @@ public CombinationQueryPredicate Custom( CartQueryBuilderDsl.Of); } + public CombinationQueryPredicate DiscountTypeCombination( + Func> fn) + { + return new CombinationQueryPredicate(ContainerQueryPredicate.Of() + .Parent(ConstantQueryPredicate.Of().Constant("discountTypeCombination")) + .Inner(fn.Invoke(commercetools.Sdk.Api.Predicates.Query.Carts.DiscountTypeCombinationQueryBuilderDsl.Of())), + CartQueryBuilderDsl.Of); + } + public IComparisonPredicateBuilder DeleteDaysAfterLastModification() { return new ComparisonPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("deleteDaysAfterLastModification")), diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/DiscountTypeCombinationQueryBuilderDsl.cs b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/DiscountTypeCombinationQueryBuilderDsl.cs new file mode 100644 index 00000000000..03607fdc286 --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/DiscountTypeCombinationQueryBuilderDsl.cs @@ -0,0 +1,38 @@ +using System; + +// ReSharper disable CheckNamespace +namespace commercetools.Sdk.Api.Predicates.Query.Carts +{ + + public partial class DiscountTypeCombinationQueryBuilderDsl + { + public DiscountTypeCombinationQueryBuilderDsl() + { + } + + public static DiscountTypeCombinationQueryBuilderDsl Of() + { + return new DiscountTypeCombinationQueryBuilderDsl(); + } + + public IComparisonPredicateBuilder Type() + { + return new ComparisonPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("type")), + p => new CombinationQueryPredicate(p, DiscountTypeCombinationQueryBuilderDsl.Of), + PredicateFormatter.Format); + } + + public CombinationQueryPredicate AsBestDeal( + Func> fn) + { + return new CombinationQueryPredicate(fn.Invoke(commercetools.Sdk.Api.Predicates.Query.Carts.BestDealQueryBuilderDsl.Of()), + DiscountTypeCombinationQueryBuilderDsl.Of); + } + public CombinationQueryPredicate AsStacking( + Func> fn) + { + return new CombinationQueryPredicate(fn.Invoke(commercetools.Sdk.Api.Predicates.Query.Carts.StackingQueryBuilderDsl.Of()), + DiscountTypeCombinationQueryBuilderDsl.Of); + } + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/StackingQueryBuilderDsl.cs b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/StackingQueryBuilderDsl.cs new file mode 100644 index 00000000000..eb0db3e4202 --- /dev/null +++ b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Carts/StackingQueryBuilderDsl.cs @@ -0,0 +1,24 @@ +// ReSharper disable CheckNamespace +namespace commercetools.Sdk.Api.Predicates.Query.Carts +{ + + public partial class StackingQueryBuilderDsl + { + public StackingQueryBuilderDsl() + { + } + + public static StackingQueryBuilderDsl Of() + { + return new StackingQueryBuilderDsl(); + } + + public IComparisonPredicateBuilder Type() + { + return new ComparisonPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("type")), + p => new CombinationQueryPredicate(p, StackingQueryBuilderDsl.Of), + PredicateFormatter.Format); + } + + } +} diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/OrderEdits/StagedOrderQueryBuilderDsl.cs b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/OrderEdits/StagedOrderQueryBuilderDsl.cs index 34f92c418ed..6a5aef9e9be 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/OrderEdits/StagedOrderQueryBuilderDsl.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/OrderEdits/StagedOrderQueryBuilderDsl.cs @@ -402,6 +402,15 @@ public ICollectionPredicateBuilder ReturnInfo() return new CollectionPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("returnInfo")), p => new CombinationQueryPredicate(p, StagedOrderQueryBuilderDsl.Of)); } + public CombinationQueryPredicate DiscountTypeCombination( + Func> fn) + { + return new CombinationQueryPredicate(ContainerQueryPredicate.Of() + .Parent(ConstantQueryPredicate.Of().Constant("discountTypeCombination")) + .Inner(fn.Invoke(commercetools.Sdk.Api.Predicates.Query.Carts.DiscountTypeCombinationQueryBuilderDsl.Of())), + StagedOrderQueryBuilderDsl.Of); + } + public IComparisonPredicateBuilder LastMessageSequenceNumber() { return new ComparisonPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("lastMessageSequenceNumber")), diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Orders/OrderQueryBuilderDsl.cs b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Orders/OrderQueryBuilderDsl.cs index 5bd2ce95e56..eaa3cd5f082 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Orders/OrderQueryBuilderDsl.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Predicates/Query/Generated/Orders/OrderQueryBuilderDsl.cs @@ -402,6 +402,15 @@ public ICollectionPredicateBuilder ReturnInfo() return new CollectionPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("returnInfo")), p => new CombinationQueryPredicate(p, OrderQueryBuilderDsl.Of)); } + public CombinationQueryPredicate DiscountTypeCombination( + Func> fn) + { + return new CombinationQueryPredicate(ContainerQueryPredicate.Of() + .Parent(ConstantQueryPredicate.Of().Constant("discountTypeCombination")) + .Inner(fn.Invoke(commercetools.Sdk.Api.Predicates.Query.Carts.DiscountTypeCombinationQueryBuilderDsl.Of())), + OrderQueryBuilderDsl.Of); + } + public IComparisonPredicateBuilder LastMessageSequenceNumber() { return new ComparisonPredicateBuilder(BinaryQueryPredicate.Of().Left(new ConstantQueryPredicate("lastMessageSequenceNumber")), diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Serialization/JsonConverters/ProductTailoringAttributeConverter.cs b/commercetools.Sdk/commercetools.Sdk.Api/Serialization/JsonConverters/ProductTailoringAttributeConverter.cs index 985fe9f9ab3..4bfe3ed1c11 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Serialization/JsonConverters/ProductTailoringAttributeConverter.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Serialization/JsonConverters/ProductTailoringAttributeConverter.cs @@ -5,7 +5,6 @@ using commercetools.Base.Serialization.MapperTypeRetrievers; using commercetools.Sdk.Api.Models.ProductTailorings; using commercetools.Sdk.Api.Serialization.MapperTypeRetrievers; -using Attribute = commercetools.Sdk.Api.Models.Products.Attribute; using Type = System.Type; namespace commercetools.Sdk.Api.Serialization.JsonConverters diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Serialization/MapperTypeRetrievers/ProductTailoringAttributeMapperTypeRetriever.cs b/commercetools.Sdk/commercetools.Sdk.Api/Serialization/MapperTypeRetrievers/ProductTailoringAttributeMapperTypeRetriever.cs index e8ad19e9254..2813fea1cae 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Serialization/MapperTypeRetrievers/ProductTailoringAttributeMapperTypeRetriever.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Serialization/MapperTypeRetrievers/ProductTailoringAttributeMapperTypeRetriever.cs @@ -1,11 +1,8 @@ -using System; using System.Collections.Generic; using System.Text.Json; using commercetools.Sdk.Api.Models.Common; -using commercetools.Sdk.Api.Models.Products; using commercetools.Sdk.Api.Models.ProductTypes; using commercetools.Base.Serialization.MapperTypeRetrievers; -using commercetools.Base.Validation; using commercetools.Sdk.Api.Models.ProductTailorings; using Type = System.Type; diff --git a/commercetools.Sdk/commercetools.Sdk.Api/Serialization/MapperTypeRetrievers/ProductTailoringAttributeTypeRetriever.cs b/commercetools.Sdk/commercetools.Sdk.Api/Serialization/MapperTypeRetrievers/ProductTailoringAttributeTypeRetriever.cs index 1ef92d39703..fa0fc8f281d 100644 --- a/commercetools.Sdk/commercetools.Sdk.Api/Serialization/MapperTypeRetrievers/ProductTailoringAttributeTypeRetriever.cs +++ b/commercetools.Sdk/commercetools.Sdk.Api/Serialization/MapperTypeRetrievers/ProductTailoringAttributeTypeRetriever.cs @@ -4,7 +4,6 @@ using commercetools.Sdk.Api.Models.Common; using commercetools.Sdk.Api.Models.Products; using commercetools.Sdk.Api.Models.ProductTypes; -using commercetools.Base.Validation; using commercetools.Sdk.Api.Models.ProductTailorings; using Attribute = commercetools.Sdk.Api.Models.Products.Attribute; @@ -126,7 +125,7 @@ private Type GetElementTypeForToken(JsonElement element) return tokenType; } - + public IProductTailoringAttribute GetAttribute(String attributeName, JsonElement element) { if (_serializationConfiguration.AttributeTypeMap.TryGetValue(attributeName, out var mappedType)) diff --git a/commercetools.Sdk/commercetools.Sdk.GraphQL.Api/schema.graphqls b/commercetools.Sdk/commercetools.Sdk.GraphQL.Api/schema.graphqls index d02e768677d..3183c16bc33 100644 --- a/commercetools.Sdk/commercetools.Sdk.GraphQL.Api/schema.graphqls +++ b/commercetools.Sdk/commercetools.Sdk.GraphQL.Api/schema.graphqls @@ -1737,6 +1737,7 @@ type Cart implements Versioned & ReferenceExpandable { taxedShippingPrice: TaxedPrice shippingMode: ShippingMode! shippingCustomFields: CustomFieldsType + discountTypeCombination: DiscountTypeCombination cartState: CartState! key: String custom: CustomFieldsType @@ -1963,6 +1964,25 @@ input CartDiscountValueInput { giftLineItem: GiftLineItemValueInput } +"Chosen discount type for the cart as part of best deal" +enum ChosenDiscountType { + CartDiscount + ProductDiscount +} + +interface DiscountTypeCombination { + type: String! +} + +type Stacking implements DiscountTypeCombination { + type: String! +} + +type BestDeal implements DiscountTypeCombination { + type: String! + chosenDiscountType: ChosenDiscountType +} + input CartDraft { currency: Currency! country: Country @@ -6820,6 +6840,7 @@ type Order implements Versioned & ReferenceExpandable { shippingInfo: ShippingInfo discountCodes: [DiscountCodeInfo!]! directDiscounts: [DirectDiscount!]! + discountTypeCombination: DiscountTypeCombination refusedGifts: [CartDiscount!]! refusedGiftsRefs: [Reference!]! paymentInfo: PaymentInfo diff --git a/reference.txt b/reference.txt new file mode 100644 index 00000000000..3cc1f565854 --- /dev/null +++ b/reference.txt @@ -0,0 +1 @@ +4c16ce73d5391802f2cf109581ac962749c027a5 diff --git a/references.txt b/references.txt index 85832071044..0d5ffb8b8de 100644 --- a/references.txt +++ b/references.txt @@ -318,3 +318,4 @@ cf0f702598daf6d644ae327099b96b83f5539dfb 277b3734e873c9dd4cf455c0591fb5d41b478647 75612a593ac1a7d1fa516c2b196d10690fbb9e66 0db86e55e10010d0994faa7cffb5b1301dbac71f +5f1b9a7bef052b7f67754d4eccf9d18d139d53c1