From 131c84e7d0347172e7521a7c00332bdb72c455f1 Mon Sep 17 00:00:00 2001 From: Paul Hachmang Date: Fri, 31 Jul 2026 08:49:10 +0200 Subject: [PATCH 1/3] Schema defintions for 246,247 and 248 --- .../AvailablePaymentMethod.graphqls | 6 + .../schema-246/CartAddress.graphqls | 39 ++ .../CartAddressInput-vat_id.graphqls | 15 - ...orders.graphqls => CustomerOrder.graphqls} | 71 ++- ...e.graphqls => OrderItemInterface.graphqls} | 8 +- .../SelectedShippingMethod.graphqls | 4 - .../schema-246/Totals.graphqls | 10 + .../schema-247/AttributeValueInput.graphqls | 48 ++ .../{Cart-itemsV2.graphqls => Cart.graphqls} | 96 ++-- .../schema-247/CartAddress.graphqls | 21 +- .../schema-247/CartItem-product.graphqls | 15 - .../schema-247/CartItemInterface.graphqls | 41 ++ ...rmEmail.graphqls => Confirmation.graphqls} | 50 +- .../schema-247/CustomAttributesV2.graphqls | 266 ---------- .../schema-247/CustomerOrder.graphqls | 13 +- .../CustomizableOptionInput.graphqls | 6 + .../schema-247/Discount.graphqls | 15 + .../schema-247/FilterMatchTypeInput.graphqls | 11 + ...uestOrder.graphqls => GuestOrder.graphqls} | 19 +- .../schema-247/Mutation-contactUs.graphqls | 24 +- .../Mutation-createGuestCart.graphqls | 16 +- .../Mutation-estimateShippingMethods.graphqls | 44 -- .../Mutation-estimateTotals.graphqls | 64 ++- ...er.graphqls => OrderCancellation.graphqls} | 28 +- .../schema-247/OrderItemInterface.graphqls | 27 ++ ...der.graphqls => PlaceOrderOutput.graphqls} | 29 +- ...buteFilterInput-category_url_path.graphqls | 3 - .../ProductAttributeFilterInput.graphqls | 26 + .../ProductAttributeSortInput.graphqls | 10 + .../schema-247/ProductInterface.graphqls | 24 + .../schema-247/Query-attributesList.graphqls | 459 +++++++++++++----- .../Query-customAttributeMetadataV2.graphqls | 7 - .../Query-guestOrderByToken.graphqls | 30 -- ...haV3Config.graphqls => ReCaptcha.graphqls} | 22 +- .../schema-247/RoutableUrl.graphqls | 17 + .../schema-247/StoreConfig.graphqls | 69 ++- .../schema-247/Totals.graphqls | 24 + .../schema-248/CartAddress.graphqls | 24 + .../schema-248/CartItemInterface.graphqls | 41 ++ .../schema-248/CartItemPrices.graphqls | 14 + .../CartUserInputErrorType.graphqls | 5 + .../schema-248/Confirmation.graphqls | 11 + .../schema-248/CustomerAddress.graphqls | 30 ++ .../schema-248/CustomerOrder.graphqls | 71 +++ .../InsufficientStockError.graphqls | 28 ++ .../schema-248/OrderCancellation.graphqls | 61 +++ .../schema-248/OrderInformationInput.graphqls | 6 + .../schema-248/OrderItemInterface.graphqls | 6 + .../schema-248/OrderItemPrices.graphqls | 154 ++++++ .../schema-248/ProductImageThumbnail.graphqls | 21 + .../schema-248/ProductInterface.graphqls | 104 ++++ .../schema-248/ReCaptcha.graphqls | 67 +++ .../SelectedBundleOptionValue.graphqls | 10 + .../schema-248/StoreConfig.graphqls | 27 ++ .../schema-248/Totals.graphqls | 68 +++ .../schema-248/UpdateCartItemsOutput.graphqls | 6 + .../schema-249/CartAddress.graphqls | 20 + .../schema-249/CartRule.graphqls | 13 + .../schema-249/CustomerAddress.graphqls | 45 ++ .../CustomerGroupStorefront.graphqls | 9 + .../schema-249/GuestOrder.graphqls | 17 + .../schema-249/MediaGalleryInterface.graphqls | 20 + .../schema-249/Mutation-clearCart.graphqls | 56 +++ .../schema-249/OrderInformationInput.graphqls | 6 + .../schema-249/StoreConfig.graphqls | 6 + .../schema-249/Totals.graphqls | 6 + .../schema-249/Wishlist.graphqls | 15 + 67 files changed, 1958 insertions(+), 686 deletions(-) create mode 100644 packages/magento-graphql/schema-246/AvailablePaymentMethod.graphqls create mode 100644 packages/magento-graphql/schema-246/CartAddress.graphqls delete mode 100644 packages/magento-graphql/schema-246/CartAddressInput-vat_id.graphqls rename packages/magento-graphql/schema-246/{Customer-orders.graphqls => CustomerOrder.graphqls} (63%) rename packages/magento-graphql/schema-246/{OrderItem-gift_message.graphqls => OrderItemInterface.graphqls} (100%) delete mode 100644 packages/magento-graphql/schema-246/SelectedShippingMethod.graphqls create mode 100644 packages/magento-graphql/schema-246/Totals.graphqls create mode 100644 packages/magento-graphql/schema-247/AttributeValueInput.graphqls rename packages/magento-graphql/schema-247/{Cart-itemsV2.graphqls => Cart.graphqls} (95%) delete mode 100644 packages/magento-graphql/schema-247/CartItem-product.graphqls create mode 100644 packages/magento-graphql/schema-247/CartItemInterface.graphqls rename packages/magento-graphql/schema-247/{Mutation-confirmEmail.graphqls => Confirmation.graphqls} (78%) delete mode 100644 packages/magento-graphql/schema-247/CustomAttributesV2.graphqls create mode 100644 packages/magento-graphql/schema-247/CustomizableOptionInput.graphqls create mode 100644 packages/magento-graphql/schema-247/Discount.graphqls create mode 100644 packages/magento-graphql/schema-247/FilterMatchTypeInput.graphqls rename packages/magento-graphql/schema-247/{Query-guestOrder.graphqls => GuestOrder.graphqls} (50%) delete mode 100644 packages/magento-graphql/schema-247/Mutation-estimateShippingMethods.graphqls rename packages/magento-graphql/schema-247/{Mutation-cancelOrder.graphqls => OrderCancellation.graphqls} (81%) create mode 100644 packages/magento-graphql/schema-247/OrderItemInterface.graphqls rename packages/magento-graphql/schema-247/{Mutation-placeOrder.graphqls => PlaceOrderOutput.graphqls} (81%) delete mode 100644 packages/magento-graphql/schema-247/ProductAttributeFilterInput-category_url_path.graphqls create mode 100644 packages/magento-graphql/schema-247/ProductAttributeFilterInput.graphqls create mode 100644 packages/magento-graphql/schema-247/ProductAttributeSortInput.graphqls create mode 100644 packages/magento-graphql/schema-247/ProductInterface.graphqls delete mode 100644 packages/magento-graphql/schema-247/Query-customAttributeMetadataV2.graphqls delete mode 100644 packages/magento-graphql/schema-247/Query-guestOrderByToken.graphqls rename packages/magento-graphql/schema-247/{Query-recaptchaV3Config.graphqls => ReCaptcha.graphqls} (100%) create mode 100644 packages/magento-graphql/schema-247/RoutableUrl.graphqls create mode 100644 packages/magento-graphql/schema-247/Totals.graphqls create mode 100644 packages/magento-graphql/schema-248/CartAddress.graphqls create mode 100644 packages/magento-graphql/schema-248/CartItemInterface.graphqls create mode 100644 packages/magento-graphql/schema-248/CartItemPrices.graphqls create mode 100644 packages/magento-graphql/schema-248/CartUserInputErrorType.graphqls create mode 100644 packages/magento-graphql/schema-248/Confirmation.graphqls create mode 100644 packages/magento-graphql/schema-248/CustomerAddress.graphqls create mode 100644 packages/magento-graphql/schema-248/CustomerOrder.graphqls create mode 100644 packages/magento-graphql/schema-248/InsufficientStockError.graphqls create mode 100644 packages/magento-graphql/schema-248/OrderCancellation.graphqls create mode 100644 packages/magento-graphql/schema-248/OrderInformationInput.graphqls create mode 100644 packages/magento-graphql/schema-248/OrderItemInterface.graphqls create mode 100644 packages/magento-graphql/schema-248/OrderItemPrices.graphqls create mode 100644 packages/magento-graphql/schema-248/ProductImageThumbnail.graphqls create mode 100644 packages/magento-graphql/schema-248/ProductInterface.graphqls create mode 100644 packages/magento-graphql/schema-248/ReCaptcha.graphqls create mode 100644 packages/magento-graphql/schema-248/SelectedBundleOptionValue.graphqls create mode 100644 packages/magento-graphql/schema-248/StoreConfig.graphqls create mode 100644 packages/magento-graphql/schema-248/Totals.graphqls create mode 100644 packages/magento-graphql/schema-248/UpdateCartItemsOutput.graphqls create mode 100644 packages/magento-graphql/schema-249/CartAddress.graphqls create mode 100644 packages/magento-graphql/schema-249/CartRule.graphqls create mode 100644 packages/magento-graphql/schema-249/CustomerAddress.graphqls create mode 100644 packages/magento-graphql/schema-249/CustomerGroupStorefront.graphqls create mode 100644 packages/magento-graphql/schema-249/GuestOrder.graphqls create mode 100644 packages/magento-graphql/schema-249/MediaGalleryInterface.graphqls create mode 100644 packages/magento-graphql/schema-249/Mutation-clearCart.graphqls create mode 100644 packages/magento-graphql/schema-249/OrderInformationInput.graphqls create mode 100644 packages/magento-graphql/schema-249/StoreConfig.graphqls create mode 100644 packages/magento-graphql/schema-249/Totals.graphqls create mode 100644 packages/magento-graphql/schema-249/Wishlist.graphqls diff --git a/packages/magento-graphql/schema-246/AvailablePaymentMethod.graphqls b/packages/magento-graphql/schema-246/AvailablePaymentMethod.graphqls new file mode 100644 index 00000000000..6039300fd5b --- /dev/null +++ b/packages/magento-graphql/schema-246/AvailablePaymentMethod.graphqls @@ -0,0 +1,6 @@ +type AvailablePaymentMethod { + """ + If the payment method is an online integration + """ + is_deferred: Boolean! @deprecated(reason: "Magento >= 2.4.6") +} diff --git a/packages/magento-graphql/schema-246/CartAddress.graphqls b/packages/magento-graphql/schema-246/CartAddress.graphqls new file mode 100644 index 00000000000..d51c8a1046a --- /dev/null +++ b/packages/magento-graphql/schema-246/CartAddress.graphqls @@ -0,0 +1,39 @@ +type BillingCartAddress { + """ + The unique id of the customer address. + """ + uid: String! @deprecated(reason: "Magento >= 2.4.6") + """ + The VAT company number for billing or shipping address. + """ + vat_id: String @deprecated(reason: "Magento >= 2.4.6") +} + +input CartAddressInput { + """ + The VAT company number for billing or shipping address. + """ + vat_id: String @deprecated(reason: "Magento >= 2.4.6") +} + +interface CartAddressInterface { + """ + The unique id of the customer address. + """ + uid: String! @deprecated(reason: "Magento >= 2.4.6") + """ + The VAT company number for billing or shipping address. + """ + vat_id: String @deprecated(reason: "Magento >= 2.4.6") +} + +type ShippingCartAddress { + """ + The unique id of the customer address. + """ + uid: String! @deprecated(reason: "Magento >= 2.4.6") + """ + The VAT company number for billing or shipping address. + """ + vat_id: String @deprecated(reason: "Magento >= 2.4.6") +} diff --git a/packages/magento-graphql/schema-246/CartAddressInput-vat_id.graphqls b/packages/magento-graphql/schema-246/CartAddressInput-vat_id.graphqls deleted file mode 100644 index 5f7702bee51..00000000000 --- a/packages/magento-graphql/schema-246/CartAddressInput-vat_id.graphqls +++ /dev/null @@ -1,15 +0,0 @@ -input CartAddressInput { - vat_id: String @deprecated(reason: "Magento >= 2.4.6") -} - -interface CartAddressInterface { - vat_id: String @deprecated(reason: "Magento >= 2.4.6") -} - -type ShippingCartAddress implements CartAddressInterface { - vat_id: String @deprecated(reason: "Magento >= 2.4.6") -} - -type BillingCartAddress { - vat_id: String @deprecated(reason: "Magento >= 2.4.6") -} diff --git a/packages/magento-graphql/schema-246/Customer-orders.graphqls b/packages/magento-graphql/schema-246/CustomerOrder.graphqls similarity index 63% rename from packages/magento-graphql/schema-246/Customer-orders.graphqls rename to packages/magento-graphql/schema-246/CustomerOrder.graphqls index e8c70e7f5df..3df45c0e795 100644 --- a/packages/magento-graphql/schema-246/Customer-orders.graphqls +++ b/packages/magento-graphql/schema-246/CustomerOrder.graphqls @@ -1,40 +1,61 @@ -enum ScopeTypeEnum { - GLOBAL - WEBSITE - STORE -} - -input CustomerOrderSortInput { - sort_direction: SortEnum! - sort_field: CustomerOrderSortableField! -} - -enum CustomerOrderSortableField { - NUMBER - CREATED_AT -} - -extend type Customer { +type Customer { orders( - """ - Defines the filter to use for searching customer orders. - """ - filter: CustomerOrdersFilterInput """ Specifies which page of results to return. The default value is 1. """ currentPage: Int = 1 """ - Specifies the maximum number of results to return at once. The default value is 20. + Defines the filter to use for searching customer orders. """ - pageSize: Int = 20 + filter: CustomerOrdersFilterInput """ - Specifies which field to sort on, and whether to return the results in ascending or descending order. + Specifies the maximum number of results to return at once. The default value is 20. """ - sort: CustomerOrderSortInput + pageSize: Int = 20 """ Specifies the scope to search for customer orders. The Store request header identifies the customer's store view code. The default value of STORE limits the search to the value specified in the header. Specify WEBSITE to expand the search to include all customer orders assigned to the website that is defined in the header, or specify GLOBAL to include all customer orders across all websites and stores. """ scope: ScopeTypeEnum + """ + Specifies which field to sort on, and whether to return the results in ascending or descending order. + """ + sort: CustomerOrderSortInput ): CustomerOrders } + +""" +This enumeration defines the scope type for customer orders. +""" +enum ScopeTypeEnum { + GLOBAL @deprecated + STORE @deprecated + WEBSITE @deprecated +} + +""" +CustomerOrderSortInput specifies the field to use for sorting search results and indicates whether the results are sorted in ascending or descending order. +""" +input CustomerOrderSortInput { + """ + This enumeration indicates whether to return results in ascending or descending order + """ + sort_direction: SortEnum! + """ + Specifies the field to use for sorting + """ + sort_field: CustomerOrderSortableField! +} + +""" +Specifies the field to use for sorting +""" +enum CustomerOrderSortableField { + """ + Sorts customer orders by created_at field + """ + CREATED_AT @deprecated + """ + Sorts customer orders by number + """ + NUMBER @deprecated +} diff --git a/packages/magento-graphql/schema-246/OrderItem-gift_message.graphqls b/packages/magento-graphql/schema-246/OrderItemInterface.graphqls similarity index 100% rename from packages/magento-graphql/schema-246/OrderItem-gift_message.graphqls rename to packages/magento-graphql/schema-246/OrderItemInterface.graphqls index 2ed790d2651..5b5722608f3 100644 --- a/packages/magento-graphql/schema-246/OrderItem-gift_message.graphqls +++ b/packages/magento-graphql/schema-246/OrderItemInterface.graphqls @@ -1,25 +1,25 @@ -interface OrderItemInterface { +type BundleOrderItem { """ The selected gift message for the order item """ gift_message: GiftMessage @deprecated(reason: "Magento >= 2.4.6") } -type OrderItem { +type DownloadableOrderItem { """ The selected gift message for the order item """ gift_message: GiftMessage @deprecated(reason: "Magento >= 2.4.6") } -type BundleOrderItem { +type OrderItem { """ The selected gift message for the order item """ gift_message: GiftMessage @deprecated(reason: "Magento >= 2.4.6") } -type DownloadableOrderItem { +interface OrderItemInterface { """ The selected gift message for the order item """ diff --git a/packages/magento-graphql/schema-246/SelectedShippingMethod.graphqls b/packages/magento-graphql/schema-246/SelectedShippingMethod.graphqls deleted file mode 100644 index 5eb445afb06..00000000000 --- a/packages/magento-graphql/schema-246/SelectedShippingMethod.graphqls +++ /dev/null @@ -1,4 +0,0 @@ -type SelectedShippingMethod { - price_excl_tax: Money @deprecated(reason: "Magento >= 2.4.6") - price_incl_tax: Money @deprecated(reason: "Magento >= 2.4.6") -} diff --git a/packages/magento-graphql/schema-246/Totals.graphqls b/packages/magento-graphql/schema-246/Totals.graphqls new file mode 100644 index 00000000000..d66d8a2a73f --- /dev/null +++ b/packages/magento-graphql/schema-246/Totals.graphqls @@ -0,0 +1,10 @@ +type SelectedShippingMethod { + """ + The cost of shipping using this shipping method, excluding tax. + """ + price_excl_tax: Money! @deprecated(reason: "Magento >= 2.4.6") + """ + The cost of shipping using this shipping method, including tax. + """ + price_incl_tax: Money! @deprecated(reason: "Magento >= 2.4.6") +} diff --git a/packages/magento-graphql/schema-247/AttributeValueInput.graphqls b/packages/magento-graphql/schema-247/AttributeValueInput.graphqls new file mode 100644 index 00000000000..b2d201d1304 --- /dev/null +++ b/packages/magento-graphql/schema-247/AttributeValueInput.graphqls @@ -0,0 +1,48 @@ +input CustomerAddressInput { + """ + Custom attributes assigned to the customer address. + """ + custom_attributesV2: [AttributeValueInput] @deprecated(reason: "Magento >= 2.4.7") +} + +""" +Specifies the value for attribute. +""" +input AttributeValueInput { + """ + The code of the attribute. + """ + attribute_code: String! + """ + An array containing selected options for a select or multiselect attribute. + """ + selected_options: [AttributeInputSelectedOption] + """ + The value assigned to the attribute. + """ + value: String +} + +""" +Specifies selected option for a select or multiselect attribute value. +""" +input AttributeInputSelectedOption { + """ + The attribute option value. + """ + value: String! +} + +input CustomerCreateInput { + """ + The customer's custom attributes. + """ + custom_attributes: [AttributeValueInput] @deprecated(reason: "Magento >= 2.4.7") +} + +input CustomerUpdateInput { + """ + The customer's custom attributes. + """ + custom_attributes: [AttributeValueInput] @deprecated(reason: "Magento >= 2.4.7") +} diff --git a/packages/magento-graphql/schema-247/Cart-itemsV2.graphqls b/packages/magento-graphql/schema-247/Cart.graphqls similarity index 95% rename from packages/magento-graphql/schema-247/Cart-itemsV2.graphqls rename to packages/magento-graphql/schema-247/Cart.graphqls index eb2b6d47635..68aeba5ebc7 100644 --- a/packages/magento-graphql/schema-247/Cart-itemsV2.graphqls +++ b/packages/magento-graphql/schema-247/Cart.graphqls @@ -1,72 +1,72 @@ -type CartItems { - """ - An array of products that have been added to the cart. - """ - items: [CartItemInterface]! +type Cart { + itemsV2(currentPage: Int = 1, pageSize: Int = 20, sort: QuoteItemsSortInput): CartItems + @deprecated(reason: "Magento >= 2.4.7") +} + +""" +Specifies the field to use for sorting quote items +""" +input QuoteItemsSortInput { """ - Metadata for pagination rendering. + Specifies the quote items field to sort by """ - page_info: SearchResultPageInfo + field: SortQuoteItemsEnum! """ - The number of returned cart items. + Specifies the order of quote items' sorting """ - total_count: Int! + order: SortEnum! } """ Specifies the field to use for sorting quote items """ enum SortQuoteItemsEnum { - ITEM_ID - CREATED_AT - UPDATED_AT - PRODUCT_ID - SKU - NAME - DESCRIPTION - WEIGHT - QTY - PRICE + BASE_DISCOUNT_AMOUNT + BASE_DISCOUNT_TAX_COMPENSATION_AMOUNT BASE_PRICE + BASE_PRICE_INC_TAX + BASE_ROW_TOTAL + BASE_ROW_TOTAL_INC_TAX + BASE_TAX_AMOUNT + BASE_TAX_BEFORE_DISCOUNT + CREATED_AT CUSTOM_PRICE - DISCOUNT_PERCENT + DESCRIPTION DISCOUNT_AMOUNT - BASE_DISCOUNT_AMOUNT - TAX_PERCENT - TAX_AMOUNT - BASE_TAX_AMOUNT + DISCOUNT_PERCENT + DISCOUNT_TAX_COMPENSATION_AMOUNT + FREE_SHIPPING + ITEM_ID + NAME + ORIGINAL_CUSTOM_PRICE + PRICE + PRICE_INC_TAX + PRODUCT_ID + PRODUCT_TYPE + QTY ROW_TOTAL - BASE_ROW_TOTAL + ROW_TOTAL_INC_TAX ROW_TOTAL_WITH_DISCOUNT ROW_WEIGHT - PRODUCT_TYPE - BASE_TAX_BEFORE_DISCOUNT + SKU + TAX_AMOUNT TAX_BEFORE_DISCOUNT - ORIGINAL_CUSTOM_PRICE - PRICE_INC_TAX - BASE_PRICE_INC_TAX - ROW_TOTAL_INC_TAX - BASE_ROW_TOTAL_INC_TAX - DISCOUNT_TAX_COMPENSATION_AMOUNT - BASE_DISCOUNT_TAX_COMPENSATION_AMOUNT - FREE_SHIPPING + TAX_PERCENT + UPDATED_AT + WEIGHT } -""" -Specifies the field to use for sorting quote items -""" -input QuoteItemsSortInput { +type CartItems { """ - Specifies the quote items field to sort by + An array of products that have been added to the cart. """ - field: SortQuoteItemsEnum! + items: [CartItemInterface]! """ - Specifies the order of quote items' sorting + Metadata for pagination rendering. """ - order: SortEnum! -} - -type Cart { - itemsV2(pageSize: Int = 20, currentPage: Int = 1, sort: QuoteItemsSortInput): CartItems - @deprecated(reason: "Magento >= 2.4.7") + page_info: SearchResultPageInfo + """ + The number of returned cart items. + """ + total_count: Int! } diff --git a/packages/magento-graphql/schema-247/CartAddress.graphqls b/packages/magento-graphql/schema-247/CartAddress.graphqls index bdac78efc08..a7dfdf0ef2f 100644 --- a/packages/magento-graphql/schema-247/CartAddress.graphqls +++ b/packages/magento-graphql/schema-247/CartAddress.graphqls @@ -1,3 +1,22 @@ +type BillingCartAddress { + """ + The customer's fax number. + """ + fax: String @deprecated(reason: "Magento >= 2.4.7") + """ + The middle name of the person associated with the billing/shipping address. + """ + middlename: String @deprecated(reason: "Magento >= 2.4.7") + """ + An honorific, such as Dr., Mr., or Mrs. + """ + prefix: String @deprecated(reason: "Magento >= 2.4.7") + """ + A value such as Sr., Jr., or III. + """ + suffix: String @deprecated(reason: "Magento >= 2.4.7") +} + input CartAddressInput { """ The customer's fax number. @@ -17,7 +36,7 @@ input CartAddressInput { suffix: String @deprecated(reason: "Magento >= 2.4.7") } -type BillingCartAdress { +interface CartAddressInterface { """ The customer's fax number. """ diff --git a/packages/magento-graphql/schema-247/CartItem-product.graphqls b/packages/magento-graphql/schema-247/CartItem-product.graphqls deleted file mode 100644 index 773c1cff8bd..00000000000 --- a/packages/magento-graphql/schema-247/CartItem-product.graphqls +++ /dev/null @@ -1,15 +0,0 @@ -extend interface OrderItemInterface { - product: ProductInterface -} - -extend type OrderItem { - product: ProductInterface -} - -extend type BundleOrderItem { - product: ProductInterface -} - -extend type DownloadableOrderItem { - product: ProductInterface -} diff --git a/packages/magento-graphql/schema-247/CartItemInterface.graphqls b/packages/magento-graphql/schema-247/CartItemInterface.graphqls new file mode 100644 index 00000000000..20bc7f0c17b --- /dev/null +++ b/packages/magento-graphql/schema-247/CartItemInterface.graphqls @@ -0,0 +1,41 @@ +type BundleCartItem { + """ + True if requested quantity is less than available stock, false otherwise. + """ + is_available: Boolean! @deprecated(reason: "Magento >= 2.4.7") +} + +interface CartItemInterface { + """ + True if requested quantity is less than available stock, false otherwise. + """ + is_available: Boolean! @deprecated(reason: "Magento >= 2.4.7") +} + +type ConfigurableCartItem { + """ + True if requested quantity is less than available stock, false otherwise. + """ + is_available: Boolean! @deprecated(reason: "Magento >= 2.4.7") +} + +type DownloadableCartItem { + """ + True if requested quantity is less than available stock, false otherwise. + """ + is_available: Boolean! @deprecated(reason: "Magento >= 2.4.7") +} + +type SimpleCartItem { + """ + True if requested quantity is less than available stock, false otherwise. + """ + is_available: Boolean! @deprecated(reason: "Magento >= 2.4.7") +} + +type VirtualCartItem { + """ + True if requested quantity is less than available stock, false otherwise. + """ + is_available: Boolean! @deprecated(reason: "Magento >= 2.4.7") +} diff --git a/packages/magento-graphql/schema-247/Mutation-confirmEmail.graphqls b/packages/magento-graphql/schema-247/Confirmation.graphqls similarity index 78% rename from packages/magento-graphql/schema-247/Mutation-confirmEmail.graphqls rename to packages/magento-graphql/schema-247/Confirmation.graphqls index b42ba9a0bb9..3142fad4c8c 100644 --- a/packages/magento-graphql/schema-247/Mutation-confirmEmail.graphqls +++ b/packages/magento-graphql/schema-247/Confirmation.graphqls @@ -1,55 +1,53 @@ -# This is a commpatibility file: This does not implement any working functionality and only serves as a way to make the schema compatible with Magento 2.4.7 - -type StoreConfig { +type Mutation { """ - Indicates if the new accounts need confirmation. + Confirms the email address for a customer. """ - create_account_confirmation: Boolean + confirmEmail( + """ + An input object to identify the customer to confirm the email. + """ + input: ConfirmEmailInput! + ): CustomerOutput @deprecated(reason: "Magento >= 2.4.7") } """ -List of account confirmation statuses. +Contains details about a customer email address to confirm. """ -enum ConfirmationStatusEnum { +input ConfirmEmailInput { """ - Account confirmed + The key to confirm the email address. """ - ACCOUNT_CONFIRMED + confirmation_key: String! """ - Account confirmation not required + The email address to be confirmed. """ - ACCOUNT_CONFIRMATION_NOT_REQUIRED + email: String! } type Customer { """ The customer's confirmation status. """ - confirmation_status: ConfirmationStatusEnum! + confirmation_status: ConfirmationStatusEnum! @deprecated(reason: "Magento >= 2.4.7") } """ -Contains details about a customer email address to confirm. +List of account confirmation statuses. """ -input ConfirmEmailInput { +enum ConfirmationStatusEnum { """ - The key to confirm the email address. + Account confirmation not required """ - confirmation_key: String! + ACCOUNT_CONFIRMATION_NOT_REQUIRED """ - The email address to be confirmed. + Account confirmed """ - email: String! + ACCOUNT_CONFIRMED } -type Mutation { +type StoreConfig { """ - Confirms the email address for a customer. + Indicates if the new accounts need confirmation. """ - confirmEmail( - """ - An input object to identify the customer to confirm the email. - """ - input: ConfirmEmailInput! - ): CustomerOutput @deprecated(reason: "Magento >= 2.4.7") + create_account_confirmation: Boolean @deprecated(reason: "Magento >= 2.4.7") } diff --git a/packages/magento-graphql/schema-247/CustomAttributesV2.graphqls b/packages/magento-graphql/schema-247/CustomAttributesV2.graphqls deleted file mode 100644 index 7bda4eaed42..00000000000 --- a/packages/magento-graphql/schema-247/CustomAttributesV2.graphqls +++ /dev/null @@ -1,266 +0,0 @@ -""" -Specifies the value for attribute. -""" -input AttributeValueInput { - """ - The code of the attribute. - """ - attribute_code: String! - """ - An array containing selected options for a select or multiselect attribute. - """ - selected_options: [AttributeInputSelectedOption] - """ - The value assigned to the attribute. - """ - value: String -} - -""" -Specifies selected option for a select or multiselect attribute value. -""" -input AttributeInputSelectedOption { - """ - The attribute option value. - """ - value: String! -} - -input CustomerCreateInput { - """ - The customer's custom attributes. - """ - custom_attributes: [AttributeValueInput] -} - -input CustomerUpdateInput { - """ - The customer's custom attributes. - """ - custom_attributes: [AttributeValueInput] -} - -input CustomerAddressInput { - """ - Custom attributes assigned to the customer address. - """ - custom_attributesV2: [AttributeValueInput] -} - -type CustomerAddress { - """ - Custom attributes assigned to the customer address. - """ - custom_attributesV2(attributeCodes: [ID!]): [AttributeValueInterface] - @deprecated(reason: "Magento >= 2.4.7") -} - -type Customer { - """ - Customer's custom attributes. - """ - custom_attributes(attributeCodes: [ID!]): [AttributeValueInterface] - @deprecated(reason: "Magento >= 2.4.7") -} - -""" -An input object that specifies the filters used for attributes. -""" -input AttributeFilterInput { - """ - Whether a product or category attribute can be compared against another or not. - """ - is_comparable: Boolean - """ - Whether a product or category attribute can be filtered or not. - """ - is_filterable: Boolean - """ - Whether a product or category attribute can be filtered in search or not. - """ - is_filterable_in_search: Boolean - """ - Whether a product or category attribute can use HTML on front or not. - """ - is_html_allowed_on_front: Boolean - """ - Whether a product or category attribute can be searched or not. - """ - is_searchable: Boolean - """ - Whether a product or category attribute can be used for price rules or not. - """ - is_used_for_price_rules: Boolean - """ - Whether a product or category attribute is used for promo rules or not. - """ - is_used_for_promo_rules: Boolean - """ - Whether a product or category attribute is visible in advanced search or not. - """ - is_visible_in_advanced_search: Boolean - """ - Whether a product or category attribute is visible on front or not. - """ - is_visible_on_front: Boolean - """ - Whether a product or category attribute has WYSIWYG enabled or not. - """ - is_wysiwyg_enabled: Boolean - """ - Whether a product or category attribute is used in product listing or not. - """ - used_in_product_listing: Boolean -} - -interface ProductInterface { - """ - Product custom attributes. - """ - custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes - @deprecated(reason: "Magento >= 2.4.7") -} - -type VirtualProduct { - """ - Product custom attributes. - """ - custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes - @deprecated(reason: "Magento >= 2.4.7") -} - -type SimpleProduct { - """ - Product custom attributes. - """ - custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes - @deprecated(reason: "Magento >= 2.4.7") -} - -type ConfigurableProduct { - """ - Product custom attributes. - """ - custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes - @deprecated(reason: "Magento >= 2.4.7") -} - -type GroupedProduct { - """ - Product custom attributes. - """ - custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes - @deprecated(reason: "Magento >= 2.4.7") -} - -type BundleProduct { - """ - Product custom attributes. - """ - custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes - @deprecated(reason: "Magento >= 2.4.7") -} -type DownloadableProduct { - """ - Product custom attributes. - """ - custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes - @deprecated(reason: "Magento >= 2.4.7") -} -""" -Product custom attributes -""" -type ProductCustomAttributes { - """ - Errors when retrieving custom attributes metadata. - """ - errors: [AttributeMetadataError]! - """ - Requested custom attributes - """ - items: [AttributeValueInterface]! -} - -""" -Attribute metadata retrieval error. -""" -type AttributeMetadataError { - """ - Attribute metadata retrieval error message. - """ - message: String! - """ - Attribute metadata retrieval error type. - """ - type: AttributeMetadataErrorType! -} - -""" -Attribute metadata retrieval error types. -""" -enum AttributeMetadataErrorType { - """ - The requested entity was not found. - """ - ENTITY_NOT_FOUND - """ - The requested attribute was not found. - """ - ATTRIBUTE_NOT_FOUND - """ - The filter cannot be applied as it does not belong to the entity - """ - FILTER_NOT_FOUND - """ - Not categorized error, see the error message. - """ - UNDEFINED -} - -interface AttributeValueInterface { - """ - The attribute code. - """ - code: ID! -} - -type AttributeValue implements AttributeValueInterface { - """ - The attribute code. - """ - code: ID! - """ - The attribute value. - """ - value: String! -} - -type AttributeSelectedOptions implements AttributeValueInterface { - """ - The attribute code. - """ - code: ID! - selected_options: [AttributeSelectedOptionInterface]! -} - -interface AttributeSelectedOptionInterface { - """ - The attribute selected option label. - """ - label: String! - """ - The attribute selected option value. - """ - value: String! -} - -type AttributeSelectedOption implements AttributeSelectedOptionInterface { - """ - The attribute selected option label. - """ - label: String! - """ - The attribute selected option value. - """ - value: String! -} diff --git a/packages/magento-graphql/schema-247/CustomerOrder.graphqls b/packages/magento-graphql/schema-247/CustomerOrder.graphqls index 0a614b98082..cea6be0e4cc 100644 --- a/packages/magento-graphql/schema-247/CustomerOrder.graphqls +++ b/packages/magento-graphql/schema-247/CustomerOrder.graphqls @@ -1,3 +1,14 @@ type CustomerOrder { - applied_coupons: [AppliedCoupon] + """ + Coupons applied to the order. + """ + applied_coupons: [AppliedCoupon]! @deprecated(reason: "Magento >= 2.4.7") + """ + Order customer email. + """ + email: String @deprecated(reason: "Magento >= 2.4.7") + """ + The token that can be used to retrieve the order using order query. + """ + token: String! @deprecated(reason: "Magento >= 2.4.7") } diff --git a/packages/magento-graphql/schema-247/CustomizableOptionInput.graphqls b/packages/magento-graphql/schema-247/CustomizableOptionInput.graphqls new file mode 100644 index 00000000000..aebd35f198b --- /dev/null +++ b/packages/magento-graphql/schema-247/CustomizableOptionInput.graphqls @@ -0,0 +1,6 @@ +input CustomizableOptionInput { + """ + The unique ID for a `CartItemInterface` object. + """ + uid: ID @deprecated(reason: "Magento >= 2.4.7") +} diff --git a/packages/magento-graphql/schema-247/Discount.graphqls b/packages/magento-graphql/schema-247/Discount.graphqls new file mode 100644 index 00000000000..94f739e7290 --- /dev/null +++ b/packages/magento-graphql/schema-247/Discount.graphqls @@ -0,0 +1,15 @@ +type Discount { + """ + The type of the entity the discount is applied to. + """ + applied_to: CartDiscountType! @deprecated(reason: "Magento >= 2.4.7") + """ + The coupon related to the discount. + """ + coupon: AppliedCoupon @deprecated(reason: "Magento >= 2.4.7") +} + +enum CartDiscountType { + ITEM + SHIPPING +} diff --git a/packages/magento-graphql/schema-247/FilterMatchTypeInput.graphqls b/packages/magento-graphql/schema-247/FilterMatchTypeInput.graphqls new file mode 100644 index 00000000000..6aa3a93c7d2 --- /dev/null +++ b/packages/magento-graphql/schema-247/FilterMatchTypeInput.graphqls @@ -0,0 +1,11 @@ +input FilterMatchTypeInput { + """ + Filter match type for fine-tuned results. Possible values FULL or PARTIAL. If match_type is not provided, returned results will default to FULL match. + """ + match_type: FilterMatchTypeEnum @deprecated(reason: "Magento >= 2.4.7") +} + +enum FilterMatchTypeEnum { + FULL + PARTIAL +} diff --git a/packages/magento-graphql/schema-247/Query-guestOrder.graphqls b/packages/magento-graphql/schema-247/GuestOrder.graphqls similarity index 50% rename from packages/magento-graphql/schema-247/Query-guestOrder.graphqls rename to packages/magento-graphql/schema-247/GuestOrder.graphqls index 341c7cd13da..96fa5b41c09 100644 --- a/packages/magento-graphql/schema-247/Query-guestOrder.graphqls +++ b/packages/magento-graphql/schema-247/GuestOrder.graphqls @@ -1,8 +1,12 @@ -type CustomerOrder { +type Query { + """ + Retrieve guest order details based on number, email and postcode. + """ + guestOrder(input: OrderInformationInput!): CustomerOrder! @deprecated(reason: "Magento >= 2.4.7") """ - Order customer email. + Retrieve guest order details based on token. """ - email: String + guestOrderByToken(input: OrderTokenInput!): CustomerOrder! @deprecated(reason: "Magento >= 2.4.7") } """ @@ -23,9 +27,12 @@ input OrderInformationInput { postcode: String! } -type Query { +""" +Input to retrieve an order based on token. +""" +input OrderTokenInput { """ - Retrieve guest order details based on number, email and postcode. + Order token. """ - guestOrder(input: OrderInformationInput!): CustomerOrder @deprecated(reason: "Magento >= 2.4.7") + token: String! } diff --git a/packages/magento-graphql/schema-247/Mutation-contactUs.graphqls b/packages/magento-graphql/schema-247/Mutation-contactUs.graphqls index 5b584ab2043..6d2b6ec98d0 100644 --- a/packages/magento-graphql/schema-247/Mutation-contactUs.graphqls +++ b/packages/magento-graphql/schema-247/Mutation-contactUs.graphqls @@ -1,3 +1,15 @@ +type Mutation { + """ + Send a 'Contact Us' email to the merchant. + """ + contactUs( + """ + An input object that defines shopper information. + """ + input: ContactUsInput! + ): ContactUsOutput @deprecated(reason: "Magento >= 2.4.7") +} + input ContactUsInput { """ The shopper's comment to the merchant. @@ -26,15 +38,3 @@ type ContactUsOutput { """ status: Boolean! } - -type Mutation { - """ - Send a 'Contact Us' email to the merchant. - """ - contactUs( - """ - An input object that defines shopper information. - """ - input: ContactUsInput! - ): ContactUsOutput @deprecated(reason: "Magento >= 2.4.7") -} diff --git a/packages/magento-graphql/schema-247/Mutation-createGuestCart.graphqls b/packages/magento-graphql/schema-247/Mutation-createGuestCart.graphqls index ea358efbcef..1978e8ac5ea 100644 --- a/packages/magento-graphql/schema-247/Mutation-createGuestCart.graphqls +++ b/packages/magento-graphql/schema-247/Mutation-createGuestCart.graphqls @@ -1,3 +1,11 @@ +type Mutation { + """ + Create a new shopping cart + """ + createGuestCart(input: CreateGuestCartInput): CreateGuestCartOutput + @deprecated(reason: "Magento >= 2.4.7") +} + input CreateGuestCartInput { """ Optional client-generated ID @@ -11,11 +19,3 @@ type CreateGuestCartOutput { """ cart: Cart } - -type Mutation { - """ - Create a new shopping cart - """ - createGuestCart(input: CreateGuestCartInput): CreateGuestCartOutput - @deprecated(reason: "Magento >= 2.4.7") -} diff --git a/packages/magento-graphql/schema-247/Mutation-estimateShippingMethods.graphqls b/packages/magento-graphql/schema-247/Mutation-estimateShippingMethods.graphqls deleted file mode 100644 index eac73734b71..00000000000 --- a/packages/magento-graphql/schema-247/Mutation-estimateShippingMethods.graphqls +++ /dev/null @@ -1,44 +0,0 @@ -""" -Contains details about an address. -""" -input EstimateAddressInput { - """ - The two-letter code representing the customer's country. - """ - country_code: CountryCodeEnum! - """ - The customer's ZIP or postal code. - """ - postcode: String - """ - An object containing the region name, region code, and region ID. - """ - region: CustomerAddressRegionInput -} - -input EstimateTotalsInput { - """ - Customer's address to estimate totals. - """ - address: EstimateAddressInput! - """ - The unique ID of the cart to query. - """ - cart_id: String! - """ - Selected shipping method to estimate totals. - """ - shipping_method: ShippingMethodInput -} - -type Mutation { - """ - Estimate shipping method(s) for cart based on address - """ - estimateShippingMethods( - """ - An input object that specifies details for estimation of available shipping methods - """ - input: EstimateTotalsInput! - ): [AvailableShippingMethod] @deprecated(reason: "Magento >= 2.4.7") -} diff --git a/packages/magento-graphql/schema-247/Mutation-estimateTotals.graphqls b/packages/magento-graphql/schema-247/Mutation-estimateTotals.graphqls index a7790810a9b..a6dfa178b8a 100644 --- a/packages/magento-graphql/schema-247/Mutation-estimateTotals.graphqls +++ b/packages/magento-graphql/schema-247/Mutation-estimateTotals.graphqls @@ -1,13 +1,3 @@ -""" -Estimate totals output. -""" -type EstimateTotalsOutput { - """ - Cart after totals estimation - """ - cart: Cart -} - type Mutation { """ Estimate totals for cart based on the address @@ -17,5 +7,57 @@ type Mutation { An input object that specifies details for cart totals estimation """ input: EstimateTotalsInput! - ): EstimateTotalsOutput @deprecated(reason: "Magento >= 2.4.7") + ): EstimateTotalsOutput! @deprecated(reason: "Magento >= 2.4.7") + """ + Estimate shipping method(s) for cart based on address + """ + estimateShippingMethods( + """ + An input object that specifies details for estimation of available shipping methods + """ + input: EstimateTotalsInput! + ): [AvailableShippingMethod] @deprecated(reason: "Magento >= 2.4.7") +} + +input EstimateTotalsInput { + """ + Customer's address to estimate totals. + """ + address: EstimateAddressInput! + """ + The unique ID of the cart to query. + """ + cart_id: String! + """ + Selected shipping method to estimate totals. + """ + shipping_method: ShippingMethodInput +} + +""" +Contains details about an address. +""" +input EstimateAddressInput { + """ + The two-letter code representing the customer's country. + """ + country_code: CountryCodeEnum! + """ + The customer's ZIP or postal code. + """ + postcode: String + """ + An object containing the region name, region code, and region ID. + """ + region: CustomerAddressRegionInput +} + +""" +Estimate totals output. +""" +type EstimateTotalsOutput { + """ + Cart after totals estimation + """ + cart: Cart } diff --git a/packages/magento-graphql/schema-247/Mutation-cancelOrder.graphqls b/packages/magento-graphql/schema-247/OrderCancellation.graphqls similarity index 81% rename from packages/magento-graphql/schema-247/Mutation-cancelOrder.graphqls rename to packages/magento-graphql/schema-247/OrderCancellation.graphqls index 4678d844da8..83dc1d3bded 100644 --- a/packages/magento-graphql/schema-247/Mutation-cancelOrder.graphqls +++ b/packages/magento-graphql/schema-247/OrderCancellation.graphqls @@ -1,3 +1,10 @@ +type Mutation { + """ + Cancel the specified customer order. + """ + cancelOrder(input: CancelOrderInput!): CancelOrderOutput @deprecated(reason: "Magento >= 2.4.7") +} + """ Defines the order to cancel. """ @@ -26,24 +33,17 @@ type CancelOrderOutput { order: CustomerOrder } -type Mutation { +type StoreConfig { """ - Cancel the specified customer order. + An array containing available cancellation reasons. """ - cancelOrder(input: CancelOrderInput!): CancelOrderOutput @deprecated(reason: "Magento >= 2.4.7") + order_cancellation_reasons: [CancellationReason]! @deprecated(reason: "Magento >= 2.4.7") + """ + Indicates whether orders can be cancelled by customers or not. + """ + order_cancellation_enabled: Boolean! @deprecated(reason: "Magento >= 2.4.7") } type CancellationReason { description: String! } - -type StoreConfig { - """ - Indicates whether orders can be cancelled by customers or not. - """ - order_cancellation_enabled: Boolean - """ - An array containing available cancellation reasons. - """ - order_cancellation_reasons: [CancellationReason] -} diff --git a/packages/magento-graphql/schema-247/OrderItemInterface.graphqls b/packages/magento-graphql/schema-247/OrderItemInterface.graphqls new file mode 100644 index 00000000000..2052669da0f --- /dev/null +++ b/packages/magento-graphql/schema-247/OrderItemInterface.graphqls @@ -0,0 +1,27 @@ +type BundleOrderItem { + """ + The ProductInterface object, which contains details about the base product + """ + product: ProductInterface @deprecated(reason: "Magento >= 2.4.7") +} + +type DownloadableOrderItem { + """ + The ProductInterface object, which contains details about the base product + """ + product: ProductInterface @deprecated(reason: "Magento >= 2.4.7") +} + +type OrderItem { + """ + The ProductInterface object, which contains details about the base product + """ + product: ProductInterface @deprecated(reason: "Magento >= 2.4.7") +} + +interface OrderItemInterface { + """ + The ProductInterface object, which contains details about the base product + """ + product: ProductInterface @deprecated(reason: "Magento >= 2.4.7") +} diff --git a/packages/magento-graphql/schema-247/Mutation-placeOrder.graphqls b/packages/magento-graphql/schema-247/PlaceOrderOutput.graphqls similarity index 81% rename from packages/magento-graphql/schema-247/Mutation-placeOrder.graphqls rename to packages/magento-graphql/schema-247/PlaceOrderOutput.graphqls index 55006762935..890329176ce 100644 --- a/packages/magento-graphql/schema-247/Mutation-placeOrder.graphqls +++ b/packages/magento-graphql/schema-247/PlaceOrderOutput.graphqls @@ -1,3 +1,14 @@ +type PlaceOrderOutput { + """ + An array of place order errors. + """ + errors: [PlaceOrderError]! @deprecated(reason: "Magento >= 2.4.7") + """ + Full order information. + """ + orderV2: CustomerOrder @deprecated(reason: "Magento >= 2.4.7") +} + """ An error encountered while placing an order. """ @@ -13,25 +24,9 @@ type PlaceOrderError { } enum PlaceOrderErrorCodes { - CART_NOT_FOUND CART_NOT_ACTIVE + CART_NOT_FOUND GUEST_EMAIL_MISSING UNABLE_TO_PLACE_ORDER UNDEFINED } - -type PlaceOrderOutput { - """ - The ID of the order. - """ - order: Order - """ - An array of place order errors. - """ - errors: [PlaceOrderError] @deprecated(reason: "Magento >= 2.4.7") - - """ - Full order information. - """ - orderV2: CustomerOrder @deprecated(reason: "Magento >= 2.4.7") -} diff --git a/packages/magento-graphql/schema-247/ProductAttributeFilterInput-category_url_path.graphqls b/packages/magento-graphql/schema-247/ProductAttributeFilterInput-category_url_path.graphqls deleted file mode 100644 index 96cedf4ca96..00000000000 --- a/packages/magento-graphql/schema-247/ProductAttributeFilterInput-category_url_path.graphqls +++ /dev/null @@ -1,3 +0,0 @@ -input ProductAttributeFilterInput { - category_url_path: FilterEqualTypeInput @deprecated(reason: "Magento >= 2.4.7") -} diff --git a/packages/magento-graphql/schema-247/ProductAttributeFilterInput.graphqls b/packages/magento-graphql/schema-247/ProductAttributeFilterInput.graphqls new file mode 100644 index 00000000000..4a1228f7ee6 --- /dev/null +++ b/packages/magento-graphql/schema-247/ProductAttributeFilterInput.graphqls @@ -0,0 +1,26 @@ +input ProductAttributeFilterInput { + """ + Filter product by category URL path. + """ + category_url_path: FilterEqualTypeInput @deprecated(reason: "Magento >= 2.4.7") + """ + Attribute label: Description + """ + description: FilterMatchTypeInput @deprecated(reason: "Magento >= 2.4.7") + """ + Attribute label: Product Name + """ + name: FilterMatchTypeInput @deprecated(reason: "Magento >= 2.4.7") + """ + Attribute label: Price + """ + price: FilterRangeTypeInput @deprecated(reason: "Magento >= 2.4.7") + """ + Attribute label: Short Description + """ + short_description: FilterMatchTypeInput @deprecated(reason: "Magento >= 2.4.7") + """ + Attribute label: SKU + """ + sku: FilterEqualTypeInput @deprecated(reason: "Magento >= 2.4.7") +} diff --git a/packages/magento-graphql/schema-247/ProductAttributeSortInput.graphqls b/packages/magento-graphql/schema-247/ProductAttributeSortInput.graphqls new file mode 100644 index 00000000000..94d42ca2cb7 --- /dev/null +++ b/packages/magento-graphql/schema-247/ProductAttributeSortInput.graphqls @@ -0,0 +1,10 @@ +input ProductAttributeSortInput { + """ + Attribute label: Product Name + """ + name: SortEnum @deprecated(reason: "Magento >= 2.4.7") + """ + Attribute label: Price + """ + price: SortEnum @deprecated(reason: "Magento >= 2.4.7") +} diff --git a/packages/magento-graphql/schema-247/ProductInterface.graphqls b/packages/magento-graphql/schema-247/ProductInterface.graphqls new file mode 100644 index 00000000000..61a57968cad --- /dev/null +++ b/packages/magento-graphql/schema-247/ProductInterface.graphqls @@ -0,0 +1,24 @@ +type BundleProduct { + """ + The price details of the main product + """ + price_details: PriceDetails @deprecated(reason: "Magento >= 2.4.7") +} + +""" +Can be used to retrieve the main price details in case of bundle product +""" +type PriceDetails { + """ + The percentage of discount applied to the main product price + """ + discount_percentage: Float + """ + The final price after applying the discount to the main product + """ + main_final_price: Float + """ + The regular price of the main product + """ + main_price: Float +} diff --git a/packages/magento-graphql/schema-247/Query-attributesList.graphqls b/packages/magento-graphql/schema-247/Query-attributesList.graphqls index 972dcc63388..6f9746ce3d0 100644 --- a/packages/magento-graphql/schema-247/Query-attributesList.graphqls +++ b/packages/magento-graphql/schema-247/Query-attributesList.graphqls @@ -1,13 +1,4 @@ type Query { - """ - Retrieve EAV attributes associated to a frontend form. Use countries query provided by DirectoryGraphQl module to retrieve region_id and country_id attribute options. - """ - attributesForm( - """ - Form code. - """ - formCode: String! - ): AttributesFormOutput @deprecated(reason: "Magento >= 2.4.7") """ Returns a list of attributes metadata for a given entity type. """ @@ -21,20 +12,80 @@ type Query { """ filters: AttributeFilterInput ): AttributesMetadataOutput @deprecated(reason: "Magento >= 2.4.7") + """ + Retrieve EAV attributes associated to a frontend form. Use countries query provided by DirectoryGraphQl module to retrieve region_id and country_id attribute options. + """ + attributesForm( + """ + Form code. + """ + formCode: String! + ): AttributesFormOutput! @deprecated(reason: "Magento >= 2.4.7") + """ + Retrieve EAV attributes metadata. + """ + customAttributeMetadataV2(attributes: [AttributeInput!]): AttributesMetadataOutput! + @deprecated(reason: "Magento >= 2.4.7") } """ -Metadata of EAV attributes associated to form +List of all entity types. Populated by the modules introducing EAV entities. """ -type AttributesFormOutput { +enum AttributeEntityTypeEnum { + CATALOG_CATEGORY + CATALOG_PRODUCT + CUSTOMER + CUSTOMER_ADDRESS +} + +""" +An input object that specifies the filters used for attributes. +""" +input AttributeFilterInput { """ - Errors of retrieving certain attributes metadata. + Whether a product or category attribute can be compared against another or not. """ - errors: [AttributeMetadataError]! + is_comparable: Boolean """ - Requested attributes metadata. + Whether a product or category attribute can be filtered or not. """ - items: [CustomAttributeMetadataInterface]! + is_filterable: Boolean + """ + Whether a product or category attribute can be filtered in search or not. + """ + is_filterable_in_search: Boolean + """ + Whether a product or category attribute can use HTML on front or not. + """ + is_html_allowed_on_front: Boolean + """ + Whether a product or category attribute can be searched or not. + """ + is_searchable: Boolean + """ + Whether a product or category attribute can be used for price rules or not. + """ + is_used_for_price_rules: Boolean + """ + Whether a product or category attribute is used for promo rules or not. + """ + is_used_for_promo_rules: Boolean + """ + Whether a product or category attribute is visible in advanced search or not. + """ + is_visible_in_advanced_search: Boolean + """ + Whether a product or category attribute is visible on front or not. + """ + is_visible_on_front: Boolean + """ + Whether a product or category attribute has WYSIWYG enabled or not. + """ + is_wysiwyg_enabled: Boolean + """ + Whether a product or category attribute is used in product listing or not. + """ + used_in_product_listing: Boolean } """ @@ -51,24 +102,40 @@ type AttributesMetadataOutput { items: [CustomAttributeMetadataInterface]! } -enum CatalogAttributeApplyToEnum { - SIMPLE - VIRTUAL - BUNDLE - DOWNLOADABLE - CONFIGURABLE - GROUPED - CATEGORY +""" +Attribute metadata retrieval error. +""" +type AttributeMetadataError { + """ + Attribute metadata retrieval error message. + """ + message: String! + """ + Attribute metadata retrieval error type. + """ + type: AttributeMetadataErrorType! } """ -List of all entity types. Populated by the modules introducing EAV entities. +Attribute metadata retrieval error types. """ -enum AttributeEntityTypeEnum { - CATALOG_PRODUCT - CATALOG_CATEGORY - CUSTOMER - CUSTOMER_ADDRESS +enum AttributeMetadataErrorType { + """ + The requested attribute was not found. + """ + ATTRIBUTE_NOT_FOUND + """ + The requested entity was not found. + """ + ENTITY_NOT_FOUND + """ + The filter cannot be applied as it does not belong to the entity + """ + FILTER_NOT_FOUND + """ + Not categorized error, see the error message. + """ + UNDEFINED } """ @@ -113,6 +180,150 @@ interface CustomAttributeMetadataInterface { options: [CustomAttributeOptionInterface]! } +""" +EAV attribute frontend input types. +""" +enum AttributeFrontendInputEnum { + BOOLEAN + DATE + DATETIME + FILE + GALLERY + HIDDEN + IMAGE + MEDIA_IMAGE + MULTILINE + MULTISELECT + PRICE + SELECT + TEXT + TEXTAREA + UNDEFINED + WEIGHT +} + +interface CustomAttributeOptionInterface { + """ + Is the option value default. + """ + is_default: Boolean! + """ + The label assigned to the attribute option. + """ + label: String! + """ + The attribute option value. + """ + value: String! +} + +""" +Metadata of EAV attributes associated to form +""" +type AttributesFormOutput { + """ + Errors of retrieving certain attributes metadata. + """ + errors: [AttributeMetadataError]! + """ + Requested attributes metadata. + """ + items: [CustomAttributeMetadataInterface]! +} + +type BundleProduct { + """ + Product custom attributes. + """ + custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes + @deprecated(reason: "Magento >= 2.4.7") +} + +""" +Product custom attributes +""" +type ProductCustomAttributes { + """ + Errors when retrieving custom attributes metadata. + """ + errors: [AttributeMetadataError]! + """ + Requested custom attributes + """ + items: [AttributeValueInterface]! +} + +interface AttributeValueInterface { + """ + The attribute code. + """ + code: ID! +} + +type ConfigurableProduct { + """ + Product custom attributes. + """ + custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes + @deprecated(reason: "Magento >= 2.4.7") +} + +type DownloadableProduct { + """ + Product custom attributes. + """ + custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes + @deprecated(reason: "Magento >= 2.4.7") +} + +type GroupedProduct { + """ + Product custom attributes. + """ + custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes + @deprecated(reason: "Magento >= 2.4.7") +} + +interface ProductInterface { + """ + Product custom attributes. + """ + custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes + @deprecated(reason: "Magento >= 2.4.7") +} + +type SimpleProduct { + """ + Product custom attributes. + """ + custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes + @deprecated(reason: "Magento >= 2.4.7") +} + +type VirtualProduct { + """ + Product custom attributes. + """ + custom_attributesV2(filters: AttributeFilterInput): ProductCustomAttributes + @deprecated(reason: "Magento >= 2.4.7") +} + +type Customer { + """ + Customer's custom attributes. + """ + custom_attributes(attributeCodes: [ID!]): [AttributeValueInterface] + @deprecated(reason: "Magento >= 2.4.7") +} + +type CustomerAddress { + """ + Custom attributes assigned to the customer address. + """ + custom_attributesV2(attributeCodes: [ID!]): [AttributeValueInterface]! + @deprecated(reason: "Magento >= 2.4.7") +} + """ Base EAV implementation of CustomAttributeMetadataInterface. """ @@ -155,6 +366,75 @@ type AttributeMetadata implements CustomAttributeMetadataInterface { options: [CustomAttributeOptionInterface]! } +""" +Base EAV implementation of CustomAttributeOptionInterface. +""" +type AttributeOptionMetadata implements CustomAttributeOptionInterface { + """ + Is the option value default. + """ + is_default: Boolean! + """ + The label assigned to the attribute option. + """ + label: String! + """ + The attribute option value. + """ + value: String! +} + +type AttributeSelectedOption implements AttributeSelectedOptionInterface { + """ + The attribute selected option label. + """ + label: String! + """ + The attribute selected option value. + """ + value: String! +} + +interface AttributeSelectedOptionInterface { + """ + The attribute selected option label. + """ + label: String! + """ + The attribute selected option value. + """ + value: String! +} + +type AttributeSelectedOptions implements AttributeValueInterface { + """ + The attribute code. + """ + code: ID! + selected_options: [AttributeSelectedOptionInterface]! +} + +type AttributeValue implements AttributeValueInterface { + """ + The attribute code. + """ + code: ID! + """ + The attribute value. + """ + value: String! +} + +enum CatalogAttributeApplyToEnum { + BUNDLE + CATEGORY + CONFIGURABLE + DOWNLOADABLE + GROUPED + SIMPLE + VIRTUAL +} + """ Swatch attribute metadata. """ @@ -258,12 +538,13 @@ type CatalogAttributeMetadata implements CustomAttributeMetadataInterface { } """ -EAV attribute frontend input types. +Swatch attribute metadata input types. """ -enum AttributeFrontendInputEnum { +enum SwatchInputTypeEnum { BOOLEAN DATE DATETIME + DROPDOWN FILE GALLERY HIDDEN @@ -275,8 +556,9 @@ enum AttributeFrontendInputEnum { SELECT TEXT TEXTAREA - WEIGHT UNDEFINED + VISUAL + WEIGHT } """ @@ -337,6 +619,32 @@ type CustomerAttributeMetadata implements CustomAttributeMetadataInterface { validate_rules: [ValidationRule] } +""" +List of templates/filters applied to customer attribute input. +""" +enum InputFilterEnum { + """ + Forces attribute input to follow the date format. + """ + DATE + """ + Escape HTML Entities. + """ + ESCAPEHTML + """ + There are no templates or filters to be applied. + """ + NONE + """ + Strip HTML Tags. + """ + STRIPTAGS + """ + Strip whitespace (or other characters) from the beginning and end of the input. + """ + TRIM +} + """ Defines a customer attribute validation rule. """ @@ -359,92 +667,9 @@ enum ValidationRuleEnum { DATE_RANGE_MIN FILE_EXTENSIONS INPUT_VALIDATION - MAX_TEXT_LENGTH - MIN_TEXT_LENGTH MAX_FILE_SIZE MAX_IMAGE_HEIGHT MAX_IMAGE_WIDTH -} - -interface CustomAttributeOptionInterface { - """ - Is the option value default. - """ - is_default: Boolean! - """ - The label assigned to the attribute option. - """ - label: String! - """ - The attribute option value. - """ - value: String! -} - -""" -Base EAV implementation of CustomAttributeOptionInterface. -""" -type AttributeOptionMetadata implements CustomAttributeOptionInterface { - """ - Is the option value default. - """ - is_default: Boolean! - """ - The label assigned to the attribute option. - """ - label: String! - """ - The attribute option value. - """ - value: String! -} - -""" -Swatch attribute metadata input types. -""" -enum SwatchInputTypeEnum { - BOOLEAN - DATE - DATETIME - DROPDOWN - FILE - GALLERY - HIDDEN - IMAGE - MEDIA_IMAGE - MULTILINE - MULTISELECT - PRICE - SELECT - TEXT - TEXTAREA - UNDEFINED - VISUAL - WEIGHT -} - -""" -List of templates/filters applied to customer attribute input. -""" -enum InputFilterEnum { - """ - There are no templates or filters to be applied. - """ - NONE - """ - Forces attribute input to follow the date format. - """ - DATE - """ - Strip whitespace (or other characters) from the beginning and end of the input. - """ - TRIM - """ - Strip HTML Tags. - """ - STRIPTAGS - """ - Escape HTML Entities. - """ - ESCAPEHTML + MAX_TEXT_LENGTH + MIN_TEXT_LENGTH } diff --git a/packages/magento-graphql/schema-247/Query-customAttributeMetadataV2.graphqls b/packages/magento-graphql/schema-247/Query-customAttributeMetadataV2.graphqls deleted file mode 100644 index a97bdd2d2fc..00000000000 --- a/packages/magento-graphql/schema-247/Query-customAttributeMetadataV2.graphqls +++ /dev/null @@ -1,7 +0,0 @@ -type Query { - """ - Retrieve EAV attributes metadata. - """ - customAttributeMetadataV2(attributes: [AttributeInput!]): AttributesMetadataOutput - @deprecated(reason: "Magento >= 2.4.7") -} diff --git a/packages/magento-graphql/schema-247/Query-guestOrderByToken.graphqls b/packages/magento-graphql/schema-247/Query-guestOrderByToken.graphqls deleted file mode 100644 index 6e618c675ee..00000000000 --- a/packages/magento-graphql/schema-247/Query-guestOrderByToken.graphqls +++ /dev/null @@ -1,30 +0,0 @@ -type PlaceOrderOutput { - """ - Full order information. - """ - orderV2: CustomerOrder -} - -type CustomerOrder { - """ - The token that can be used to retrieve the order using order query. - """ - token: String! -} - -""" -Input to retrieve an order based on token. -""" -input OrderTokenInput { - """ - Order token. - """ - token: String! -} - -type Query { - """ - Retrieve guest order details based on token. - """ - guestOrderByToken(input: OrderTokenInput!): CustomerOrder @deprecated(reason: "Magento >= 2.4.7") -} diff --git a/packages/magento-graphql/schema-247/Query-recaptchaV3Config.graphqls b/packages/magento-graphql/schema-247/ReCaptcha.graphqls similarity index 100% rename from packages/magento-graphql/schema-247/Query-recaptchaV3Config.graphqls rename to packages/magento-graphql/schema-247/ReCaptcha.graphqls index 03f87ea843e..8727641b4f1 100644 --- a/packages/magento-graphql/schema-247/Query-recaptchaV3Config.graphqls +++ b/packages/magento-graphql/schema-247/ReCaptcha.graphqls @@ -1,3 +1,10 @@ +type Query { + """ + Returns details about Google reCAPTCHA V3-Invisible configuration. + """ + recaptchaV3Config: ReCaptchaConfigurationV3 @deprecated(reason: "Magento >= 2.4.7") +} + """ Contains reCAPTCHA V3-Invisible configuration details. """ @@ -33,21 +40,14 @@ type ReCaptchaConfigurationV3 { } enum ReCaptchaFormEnum { - PLACE_ORDER + BRAINTREE CONTACT - CUSTOMER_LOGIN - CUSTOMER_FORGOT_PASSWORD CUSTOMER_CREATE CUSTOMER_EDIT + CUSTOMER_FORGOT_PASSWORD + CUSTOMER_LOGIN NEWSLETTER + PLACE_ORDER PRODUCT_REVIEW SENDFRIEND - BRAINTREE -} - -type Query { - """ - Returns details about Google reCAPTCHA V3-Invisible configuration. - """ - recaptchaV3Config: ReCaptchaConfigurationV3 @deprecated(reason: "Magento >= 2.4.7") } diff --git a/packages/magento-graphql/schema-247/RoutableUrl.graphqls b/packages/magento-graphql/schema-247/RoutableUrl.graphqls new file mode 100644 index 00000000000..3c22d171286 --- /dev/null +++ b/packages/magento-graphql/schema-247/RoutableUrl.graphqls @@ -0,0 +1,17 @@ +""" +Default implementation of RoutableInterface. This type is returned when the URL is not linked to an entity. +""" +type RoutableUrl implements RoutableInterface { + """ + Contains 0 when there is no redirect error. A value of 301 indicates the URL of the requested resource has been changed permanently, while a value of 302 indicates a temporary redirect. + """ + redirect_code: Int! + """ + The internal relative URL. If the specified URL is a redirect, the query returns the redirected URL, not the original. + """ + relative_url: String + """ + One of PRODUCT, CATEGORY, or CMS_PAGE. + """ + type: UrlRewriteEntityTypeEnum +} diff --git a/packages/magento-graphql/schema-247/StoreConfig.graphqls b/packages/magento-graphql/schema-247/StoreConfig.graphqls index 7f0c3ccd4d3..717604079bc 100644 --- a/packages/magento-graphql/schema-247/StoreConfig.graphqls +++ b/packages/magento-graphql/schema-247/StoreConfig.graphqls @@ -1,3 +1,70 @@ type StoreConfig { - contact_enabled: Boolean @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - checkout/cart/delete_quote_after + """ + cart_expires_in_days: Int @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - checkout/cart_link/use_qty + """ + cart_summary_display_quantity: Int @deprecated(reason: "Magento >= 2.4.7") + """ + Indicates whether the Contact Us form in enabled. + """ + contact_enabled: Boolean! @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - general/region/state_required + """ + countries_with_required_region: String @deprecated(reason: "Magento >= 2.4.7") + """ + Customer access token lifetime. + """ + customer_access_token_lifetime: Float @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - general/country/default + """ + default_country: String @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - general/region/display_all + """ + display_state_if_optional: Boolean @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - checkout/options/guest_checkout + """ + is_guest_checkout_enabled: Boolean @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - checkout/options/onepage_checkout_enabled + """ + is_one_page_checkout_enabled: Boolean @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - checkout/options/max_items_display_count + """ + max_items_in_order_summary: Int @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - checkout/sidebar/display + """ + minicart_display: Boolean @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - checkout/sidebar/count + """ + minicart_max_items: Int @deprecated(reason: "Magento >= 2.4.7") + """ + Indicates whether newsletters are enabled. + """ + newsletter_enabled: Boolean! @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - general/country/optional_zip_countries + """ + optional_zip_countries: String @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - tax/cart_display/full_summary + """ + shopping_cart_display_full_summary: Boolean @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - tax/cart_display/price + """ + shopping_cart_display_price: Int @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - tax/cart_display/shipping + """ + shopping_cart_display_shipping: Int @deprecated(reason: "Magento >= 2.4.7") } diff --git a/packages/magento-graphql/schema-247/Totals.graphqls b/packages/magento-graphql/schema-247/Totals.graphqls new file mode 100644 index 00000000000..de2b225931e --- /dev/null +++ b/packages/magento-graphql/schema-247/Totals.graphqls @@ -0,0 +1,24 @@ +type StoreConfig { + """ + Extended Config Data - tax/cart_display/gift_wrapping + """ + shopping_cart_display_tax_gift_wrapping: TaxWrappingEnum @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - tax/cart_display/grandtotal + """ + shopping_cart_display_grand_total: Boolean @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - tax/cart_display/subtotal + """ + shopping_cart_display_subtotal: Int @deprecated(reason: "Magento >= 2.4.7") + """ + Extended Config Data - tax/cart_display/zero_tax + """ + shopping_cart_display_zero_tax: Boolean @deprecated(reason: "Magento >= 2.4.7") +} + +enum TaxWrappingEnum { + DISPLAY_EXCLUDING_TAX + DISPLAY_INCLUDING_TAX + DISPLAY_TYPE_BOTH +} diff --git a/packages/magento-graphql/schema-248/CartAddress.graphqls b/packages/magento-graphql/schema-248/CartAddress.graphqls new file mode 100644 index 00000000000..8f3a2fae869 --- /dev/null +++ b/packages/magento-graphql/schema-248/CartAddress.graphqls @@ -0,0 +1,24 @@ +type BillingCartAddress { + """ + Id of the customer address. + """ + id: Int @deprecated(reason: "Magento >= 2.4.8") +} + +interface CartAddressInterface { + """ + Id of the customer address. + """ + id: Int @deprecated(reason: "Magento >= 2.4.8") +} + +type ShippingCartAddress { + """ + Id of the customer address. + """ + id: Int @deprecated(reason: "Magento >= 2.4.8") + """ + Indicates whether the shipping address is same as billing address. + """ + same_as_billing: Boolean! @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/CartItemInterface.graphqls b/packages/magento-graphql/schema-248/CartItemInterface.graphqls new file mode 100644 index 00000000000..dd1d0f759a8 --- /dev/null +++ b/packages/magento-graphql/schema-248/CartItemInterface.graphqls @@ -0,0 +1,41 @@ +type BundleCartItem { + """ + Message to display when the product is not available with this selected option. + """ + not_available_message: String @deprecated(reason: "Magento >= 2.4.8") +} + +interface CartItemInterface { + """ + Message to display when the product is not available with this selected option. + """ + not_available_message: String @deprecated(reason: "Magento >= 2.4.8") +} + +type ConfigurableCartItem { + """ + Message to display when the product is not available with this selected option. + """ + not_available_message: String @deprecated(reason: "Magento >= 2.4.8") +} + +type DownloadableCartItem { + """ + Message to display when the product is not available with this selected option. + """ + not_available_message: String @deprecated(reason: "Magento >= 2.4.8") +} + +type SimpleCartItem { + """ + Message to display when the product is not available with this selected option. + """ + not_available_message: String @deprecated(reason: "Magento >= 2.4.8") +} + +type VirtualCartItem { + """ + Message to display when the product is not available with this selected option. + """ + not_available_message: String @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/CartItemPrices.graphqls b/packages/magento-graphql/schema-248/CartItemPrices.graphqls new file mode 100644 index 00000000000..1845894b6e8 --- /dev/null +++ b/packages/magento-graphql/schema-248/CartItemPrices.graphqls @@ -0,0 +1,14 @@ +type CartItemPrices { + """ + The price discount for the unit price of the item represents the difference between its regular price and final price. + """ + catalog_discount: ProductDiscount @deprecated(reason: "Magento >= 2.4.8") + """ + The value of the original unit price for the item, including discounts. + """ + original_item_price: Money! @deprecated(reason: "Magento >= 2.4.8") + """ + The price discount multiplied by the item quantity represents the total difference between the regular price and the final price for the entire quote item. + """ + row_catalog_discount: ProductDiscount @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/CartUserInputErrorType.graphqls b/packages/magento-graphql/schema-248/CartUserInputErrorType.graphqls new file mode 100644 index 00000000000..663532a3da2 --- /dev/null +++ b/packages/magento-graphql/schema-248/CartUserInputErrorType.graphqls @@ -0,0 +1,5 @@ +enum CartUserInputErrorType { + COULD_NOT_FIND_CART_ITEM @deprecated(reason: "Magento >= 2.4.8") + INVALID_PARAMETER_VALUE @deprecated(reason: "Magento >= 2.4.8") + REQUIRED_PARAMETER_MISSING @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/Confirmation.graphqls b/packages/magento-graphql/schema-248/Confirmation.graphqls new file mode 100644 index 00000000000..1c5dcb2052a --- /dev/null +++ b/packages/magento-graphql/schema-248/Confirmation.graphqls @@ -0,0 +1,11 @@ +type Mutation { + """ + Resends the confirmation email to a customer. + """ + resendConfirmationEmail( + """ + The email address to send the confirmation email to. + """ + email: String! + ): Boolean @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/CustomerAddress.graphqls b/packages/magento-graphql/schema-248/CustomerAddress.graphqls new file mode 100644 index 00000000000..a59b77610e7 --- /dev/null +++ b/packages/magento-graphql/schema-248/CustomerAddress.graphqls @@ -0,0 +1,30 @@ +type Customer { + """ + An array containing the customer's shipping and billing addresses. + """ + addressesV2( + """ + Specifies which page of results to return. The default value is 1. + """ + currentPage: Int = 1 + """ + Specifies the maximum number of results to return at once. The default value is 5. + """ + pageSize: Int = 5 + ): CustomerAddresses @deprecated(reason: "Magento >= 2.4.8") +} + +type CustomerAddresses { + """ + An array containing the customer's shipping and billing addresses. + """ + items: [CustomerAddress] + """ + Contains pagination metadata. + """ + page_info: SearchResultPageInfo + """ + The total count of customer addresses. + """ + total_count: Int +} diff --git a/packages/magento-graphql/schema-248/CustomerOrder.graphqls b/packages/magento-graphql/schema-248/CustomerOrder.graphqls new file mode 100644 index 00000000000..a10fbd7f63a --- /dev/null +++ b/packages/magento-graphql/schema-248/CustomerOrder.graphqls @@ -0,0 +1,71 @@ +type CustomerOrder { + """ + List of available order actions. + """ + available_actions: [OrderActionType]! @deprecated(reason: "Magento >= 2.4.8") + """ + Returns customer information from order. + """ + customer_info: OrderCustomerInfo! @deprecated(reason: "Magento >= 2.4.8") + """ + `TRUE` if the order is virtual + """ + is_virtual: Boolean! @deprecated(reason: "Magento >= 2.4.8") + """ + The date the order status was last updated. + """ + order_status_change_date: String! @deprecated(reason: "Magento >= 2.4.8") +} + +""" +The list of available order actions. +""" +enum OrderActionType { + CANCEL + REORDER +} + +type OrderCustomerInfo { + """ + First name of the customer + """ + firstname: String! + """ + Last name of the customer + """ + lastname: String + """ + Middle name of the customer + """ + middlename: String + """ + Prefix of the customer + """ + prefix: String + """ + Suffix of the customer + """ + suffix: String +} + +type CustomerOrders { + """ + Date of the first order placed in the store + """ + date_of_first_order: String @deprecated(reason: "Magento >= 2.4.8") +} + +input CustomerOrdersFilterInput { + """ + Filters by order base grand total value. + """ + grand_total: FilterRangeTypeInput @deprecated(reason: "Magento >= 2.4.8") + """ + Filters by order created_at time. + """ + order_date: FilterRangeTypeInput @deprecated(reason: "Magento >= 2.4.8") + """ + Filters by order status. + """ + status: FilterEqualTypeInput @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/InsufficientStockError.graphqls b/packages/magento-graphql/schema-248/InsufficientStockError.graphqls new file mode 100644 index 00000000000..4947a9e4b77 --- /dev/null +++ b/packages/magento-graphql/schema-248/InsufficientStockError.graphqls @@ -0,0 +1,28 @@ +type InsufficientStockError implements Error { + """ + A cart-specific error code. + """ + code: CartUserInputErrorType! + """ + A localized error message. + """ + message: String! + """ + Amount of available stock + """ + quantity: Float +} + +""" +An error encountered while adding an item to the the cart. +""" +interface Error { + """ + A cart-specific error code. + """ + code: CartUserInputErrorType! + """ + A localized error message. + """ + message: String! +} diff --git a/packages/magento-graphql/schema-248/OrderCancellation.graphqls b/packages/magento-graphql/schema-248/OrderCancellation.graphqls new file mode 100644 index 00000000000..8a01104eef4 --- /dev/null +++ b/packages/magento-graphql/schema-248/OrderCancellation.graphqls @@ -0,0 +1,61 @@ +type Mutation { + """ + Cancel the specified guest customer order. + """ + confirmCancelOrder(input: ConfirmCancelOrderInput!): CancelOrderOutput + @deprecated(reason: "Magento >= 2.4.8") + """ + Request to cancel specified guest order. + """ + requestGuestOrderCancel(input: GuestOrderCancelInput!): CancelOrderOutput + @deprecated(reason: "Magento >= 2.4.8") +} + +input ConfirmCancelOrderInput { + """ + Confirmation Key to cancel the order. + """ + confirmation_key: String! + """ + The unique ID of an `Order` type. + """ + order_id: ID! +} + +""" +Input to retrieve a guest order based on token. +""" +input GuestOrderCancelInput { + """ + Cancellation reason. + """ + reason: String! + """ + Order token. + """ + token: String! +} + +type CancelOrderOutput { + errorV2: CancelOrderError @deprecated(reason: "Magento >= 2.4.8") +} + +type CancelOrderError { + """ + An error code that is specific to cancel order. + """ + code: CancelOrderErrorCode! + """ + A localized error message. + """ + message: String! +} + +enum CancelOrderErrorCode { + INVALID_ORDER_STATUS + ORDER_CANCELLATION_DISABLED + ORDER_NOT_FOUND + PARTIAL_ORDER_ITEM_SHIPPED + UNAUTHORISED + UNDEFINED +} diff --git a/packages/magento-graphql/schema-248/OrderInformationInput.graphqls b/packages/magento-graphql/schema-248/OrderInformationInput.graphqls new file mode 100644 index 00000000000..e00090f5e93 --- /dev/null +++ b/packages/magento-graphql/schema-248/OrderInformationInput.graphqls @@ -0,0 +1,6 @@ +input OrderInformationInput { + """ + Order billing address lastname. + """ + lastname: String! @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/OrderItemInterface.graphqls b/packages/magento-graphql/schema-248/OrderItemInterface.graphqls new file mode 100644 index 00000000000..f558fb09a4c --- /dev/null +++ b/packages/magento-graphql/schema-248/OrderItemInterface.graphqls @@ -0,0 +1,6 @@ +type BundleOrderItem { + """ + The SKU of parent product. + """ + parent_sku: String @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/OrderItemPrices.graphqls b/packages/magento-graphql/schema-248/OrderItemPrices.graphqls new file mode 100644 index 00000000000..48c26241987 --- /dev/null +++ b/packages/magento-graphql/schema-248/OrderItemPrices.graphqls @@ -0,0 +1,154 @@ +type BundleOrderItem { + """ + Contains details about the price of the item, including taxes and discounts. + """ + prices: OrderItemPrices @deprecated(reason: "Magento >= 2.4.8") +} + +type OrderItemPrices { + """ + An array of discounts to be applied to the cart item. + """ + discounts: [Discount] + fixed_product_taxes: [FixedProductTax]! + """ + The original price of the item. + """ + original_price: Money + """ + The original price of the item including tax. + """ + original_price_including_tax: Money + """ + The value of the original price multiplied by the quantity of the item. + """ + original_row_total: Money! + """ + The value of the original price multiplied by the quantity of the item including tax. + """ + original_row_total_including_tax: Money! + """ + The price of the item before any discounts were applied. The price that might include tax, depending on the configured display settings for cart. + """ + price: Money! + """ + The price of the item before any discounts were applied. The price that might include tax, depending on the configured display settings for cart. + """ + price_including_tax: Money! + """ + The value of the price multiplied by the quantity of the item. + """ + row_total: Money! + """ + The value of `row_total` plus the tax applied to the item. + """ + row_total_including_tax: Money! + """ + The total of all discounts applied to the item. + """ + total_item_discount: Money! +} + +type DownloadableOrderItem { + """ + Contains details about the price of the item, including taxes and discounts. + """ + prices: OrderItemPrices @deprecated(reason: "Magento >= 2.4.8") +} + +type OrderItem { + """ + Contains details about the price of the item, including taxes and discounts. + """ + prices: OrderItemPrices @deprecated(reason: "Magento >= 2.4.8") +} + +interface OrderItemInterface { + """ + Contains details about the price of the item, including taxes and discounts. + """ + prices: OrderItemPrices @deprecated(reason: "Magento >= 2.4.8") +} + +type ConfigurableOrderItem implements OrderItemInterface { + """ + The final discount information for the product. + """ + discounts: [Discount] + """ + The entered option for the base product, such as a logo or image. + """ + entered_options: [OrderItemOption] + """ + The selected gift message for the order item + """ + gift_message: GiftMessage + """ + The unique ID for an `OrderItemInterface` object. + """ + id: ID! + """ + The SKU of parent product. + """ + parent_sku: String + """ + Contains details about the price of the item, including taxes and discounts. + """ + prices: OrderItemPrices + """ + The ProductInterface object, which contains details about the base product + """ + product: ProductInterface + """ + The name of the base product. + """ + product_name: String + """ + The sale price of the base product, including selected options. + """ + product_sale_price: Money! + """ + The SKU of the base product. + """ + product_sku: String! + """ + The type of product, such as simple, configurable, etc. + """ + product_type: String + """ + URL key of the base product. + """ + product_url_key: String + """ + The number of canceled items. + """ + quantity_canceled: Float + """ + The number of invoiced items. + """ + quantity_invoiced: Float + """ + The number of units ordered for this item. + """ + quantity_ordered: Float + """ + The number of refunded items. + """ + quantity_refunded: Float + """ + The number of returned items. + """ + quantity_returned: Float + """ + The number of shipped items. + """ + quantity_shipped: Float + """ + The selected options for the base product, such as color or size. + """ + selected_options: [OrderItemOption] + """ + The status of the order item. + """ + status: String +} diff --git a/packages/magento-graphql/schema-248/ProductImageThumbnail.graphqls b/packages/magento-graphql/schema-248/ProductImageThumbnail.graphqls new file mode 100644 index 00000000000..7bd753a27a3 --- /dev/null +++ b/packages/magento-graphql/schema-248/ProductImageThumbnail.graphqls @@ -0,0 +1,21 @@ +type StoreConfig { + """ + checkout/cart/configurable_product_image: which image to use for configurable products. + """ + configurable_product_image: ProductImageThumbnail! @deprecated(reason: "Magento >= 2.4.8") + """ + checkout/cart/grouped_product_image: which image to use for grouped products. + """ + grouped_product_image: ProductImageThumbnail! @deprecated(reason: "Magento >= 2.4.8") +} + +enum ProductImageThumbnail { + """ + Use thumbnail of product as image. + """ + ITSELF + """ + Use thumbnail of product's parent as image. + """ + PARENT +} diff --git a/packages/magento-graphql/schema-248/ProductInterface.graphqls b/packages/magento-graphql/schema-248/ProductInterface.graphqls new file mode 100644 index 00000000000..289f1e3c11f --- /dev/null +++ b/packages/magento-graphql/schema-248/ProductInterface.graphqls @@ -0,0 +1,104 @@ +type BundleProduct { + """ + Maximum Qty Allowed in Shopping Cart + """ + max_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Minimum Qty Allowed in Shopping Cart + """ + min_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Amount of available stock + """ + quantity: Float @deprecated(reason: "Magento >= 2.4.8") +} + +type ConfigurableProduct { + """ + Maximum Qty Allowed in Shopping Cart + """ + max_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Minimum Qty Allowed in Shopping Cart + """ + min_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Amount of available stock + """ + quantity: Float @deprecated(reason: "Magento >= 2.4.8") +} + +type DownloadableProduct { + """ + Maximum Qty Allowed in Shopping Cart + """ + max_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Minimum Qty Allowed in Shopping Cart + """ + min_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Amount of available stock + """ + quantity: Float @deprecated(reason: "Magento >= 2.4.8") +} + +type GroupedProduct { + """ + Maximum Qty Allowed in Shopping Cart + """ + max_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Minimum Qty Allowed in Shopping Cart + """ + min_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Amount of available stock + """ + quantity: Float @deprecated(reason: "Magento >= 2.4.8") +} + +interface ProductInterface { + """ + Maximum Qty Allowed in Shopping Cart + """ + max_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Minimum Qty Allowed in Shopping Cart + """ + min_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Amount of available stock + """ + quantity: Float @deprecated(reason: "Magento >= 2.4.8") +} + +type SimpleProduct { + """ + Maximum Qty Allowed in Shopping Cart + """ + max_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Minimum Qty Allowed in Shopping Cart + """ + min_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Amount of available stock + """ + quantity: Float @deprecated(reason: "Magento >= 2.4.8") +} + +type VirtualProduct { + """ + Maximum Qty Allowed in Shopping Cart + """ + max_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Minimum Qty Allowed in Shopping Cart + """ + min_sale_qty: Float @deprecated(reason: "Magento >= 2.4.8") + """ + Amount of available stock + """ + quantity: Float @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/ReCaptcha.graphqls b/packages/magento-graphql/schema-248/ReCaptcha.graphqls new file mode 100644 index 00000000000..68952b51580 --- /dev/null +++ b/packages/magento-graphql/schema-248/ReCaptcha.graphqls @@ -0,0 +1,67 @@ +type Query { + recaptchaFormConfig(formType: ReCaptchaFormEnum!): ReCaptchaConfigOutput + @deprecated(reason: "Magento >= 2.4.8") +} + +type ReCaptchaConfigOutput { + """ + Configuration details for reCaptcha type + """ + configurations: ReCaptchaConfiguration + """ + Indicates whether reCaptcha type is enabled + """ + is_enabled: Boolean! +} + +""" +Contains reCAPTCHA form configuration details. +""" +type ReCaptchaConfiguration { + """ + The position of the invisible reCAPTCHA badge on each page. + """ + badge_position: String + """ + A two-character code that specifies the language that is used for Google reCAPTCHA text and messaging. + """ + language_code: String + """ + The minimum score that identifies a user interaction as a potential risk. + """ + minimum_score: Float + re_captcha_type: ReCaptchaTypeEmum! + """ + The message that appears when reCaptcha fails. + """ + technical_failure_message: String! + """ + Theme to be used to render reCaptcha. + """ + theme: String! + """ + The message that appears to the user if validation fails. + """ + validation_failure_message: String! + """ + The website key generated when the Google reCAPTCHA account was registered. + """ + website_key: String! +} + +enum ReCaptchaTypeEmum { + INVISIBLE + RECAPTCHA + RECAPTCHA_V3 +} + +type ReCaptchaConfigurationV3 { + """ + Theme to be used to render reCaptcha. + """ + theme: String! @deprecated(reason: "Magento >= 2.4.8") +} + +enum ReCaptchaFormEnum { + RESEND_CONFIRMATION_EMAIL @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/SelectedBundleOptionValue.graphqls b/packages/magento-graphql/schema-248/SelectedBundleOptionValue.graphqls new file mode 100644 index 00000000000..96b62b67ffa --- /dev/null +++ b/packages/magento-graphql/schema-248/SelectedBundleOptionValue.graphqls @@ -0,0 +1,10 @@ +type SelectedBundleOptionValue { + """ + The original price of the value for the selected bundle product option. + """ + original_price: Money! @deprecated(reason: "Magento >= 2.4.8") + """ + The price of the value for the selected bundle product option. + """ + priceV2: Money! @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/StoreConfig.graphqls b/packages/magento-graphql/schema-248/StoreConfig.graphqls new file mode 100644 index 00000000000..ac5ed444b33 --- /dev/null +++ b/packages/magento-graphql/schema-248/StoreConfig.graphqls @@ -0,0 +1,27 @@ +type StoreConfig { + """ + Configuration data from tax/display/type + """ + display_product_prices_in_catalog: Int! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/display/shipping + """ + display_shipping_prices: Int! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from checkout/options/enable_agreements + """ + is_checkout_agreements_enabled: Boolean! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/sales_display/full_summary + """ + orders_invoices_credit_memos_display_full_summary: Boolean! + @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/sales_display/price + """ + orders_invoices_credit_memos_display_price: Int! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/sales_display/shipping + """ + orders_invoices_credit_memos_display_shipping_amount: Int! @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/Totals.graphqls b/packages/magento-graphql/schema-248/Totals.graphqls new file mode 100644 index 00000000000..ce0bac205c7 --- /dev/null +++ b/packages/magento-graphql/schema-248/Totals.graphqls @@ -0,0 +1,68 @@ +type CartItemPrices { + """ + The value of the original price multiplied by the quantity of the item. + """ + original_row_total: Money! @deprecated(reason: "Magento >= 2.4.8") +} + +type CartPrices { + """ + The total of the cart, including discounts, shipping, and other fees without tax. + """ + grand_total_excluding_tax: Money @deprecated(reason: "Magento >= 2.4.8") +} + +type OrderTotal { + """ + The subtotal of the order, excluding taxes. + """ + subtotal_excl_tax: Money! @deprecated(reason: "Magento >= 2.4.8") + """ + The subtotal of the order, including taxes. + """ + subtotal_incl_tax: Money! @deprecated(reason: "Magento >= 2.4.8") +} + +type StoreConfig { + """ + Configuration data from tax/weee/apply_vat + """ + fixed_product_taxes_apply_tax_to_fpt: Boolean! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/weee/display_email + """ + fixed_product_taxes_display_prices_in_emails: Int! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/weee/display_list + """ + fixed_product_taxes_display_prices_in_product_lists: Int! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/weee/display_sales + """ + fixed_product_taxes_display_prices_in_sales_modules: Int! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/weee/display + """ + fixed_product_taxes_display_prices_on_product_view_page: Int! + @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/weee/enable + """ + fixed_product_taxes_enable: Boolean! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/weee/include_in_subtotal + """ + fixed_product_taxes_include_fpt_in_subtotal: Boolean! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/sales_display/grandtotal + """ + orders_invoices_credit_memos_display_grandtotal: Boolean! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/sales_display/subtotal + """ + orders_invoices_credit_memos_display_subtotal: Int! @deprecated(reason: "Magento >= 2.4.8") + """ + Configuration data from tax/sales_display/zero_tax + """ + orders_invoices_credit_memos_display_zero_tax: Boolean! @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-248/UpdateCartItemsOutput.graphqls b/packages/magento-graphql/schema-248/UpdateCartItemsOutput.graphqls new file mode 100644 index 00000000000..562ba9c1844 --- /dev/null +++ b/packages/magento-graphql/schema-248/UpdateCartItemsOutput.graphqls @@ -0,0 +1,6 @@ +type UpdateCartItemsOutput { + """ + Contains errors encountered while updating an item to the cart. + """ + errors: [CartUserInputError]! @deprecated(reason: "Magento >= 2.4.8") +} diff --git a/packages/magento-graphql/schema-249/CartAddress.graphqls b/packages/magento-graphql/schema-249/CartAddress.graphqls new file mode 100644 index 00000000000..251f22ecb82 --- /dev/null +++ b/packages/magento-graphql/schema-249/CartAddress.graphqls @@ -0,0 +1,20 @@ +type BillingCartAddress { + """ + The unique ID from the customer's address book that uniquely identifies the address. + """ + customer_address_uid: ID @deprecated(reason: "Magento >= 2.4.9") +} + +interface CartAddressInterface { + """ + The unique ID from the customer's address book that uniquely identifies the address. + """ + customer_address_uid: ID @deprecated(reason: "Magento >= 2.4.9") +} + +type ShippingCartAddress { + """ + The unique ID from the customer's address book that uniquely identifies the address. + """ + customer_address_uid: ID @deprecated(reason: "Magento >= 2.4.9") +} diff --git a/packages/magento-graphql/schema-249/CartRule.graphqls b/packages/magento-graphql/schema-249/CartRule.graphqls new file mode 100644 index 00000000000..709561141f4 --- /dev/null +++ b/packages/magento-graphql/schema-249/CartRule.graphqls @@ -0,0 +1,13 @@ +type StoreConfig { + """ + Configuration data from promo/graphql/share_applied_cart_rule + """ + share_applied_cart_rule: Boolean @deprecated(reason: "Magento >= 2.4.9") +} + +type CartRuleStorefront { + """ + The unique ID for a `CartRule` object. + """ + uid: ID! +} diff --git a/packages/magento-graphql/schema-249/CustomerAddress.graphqls b/packages/magento-graphql/schema-249/CustomerAddress.graphqls new file mode 100644 index 00000000000..cbcd15d559e --- /dev/null +++ b/packages/magento-graphql/schema-249/CustomerAddress.graphqls @@ -0,0 +1,45 @@ +type Mutation { + """ + Delete the billing or shipping address of a customer. + """ + deleteCustomerAddressV2( + """ + The unique ID of the customer address to be deleted. + """ + uid: ID! + ): Boolean @deprecated(reason: "Magento >= 2.4.9") + """ + Update the billing or shipping address of a customer or guest. + """ + updateCustomerAddressV2( + """ + An input object that contains changes to the customer address. + """ + input: CustomerAddressInput + """ + The unique ID of the customer address. + """ + uid: ID! + ): CustomerAddress @deprecated(reason: "Magento >= 2.4.9") +} + +input BillingAddressInput { + """ + The unique ID from the customer's address book that uniquely identifies the address to be used for billing. + """ + customer_address_uid: ID @deprecated(reason: "Magento >= 2.4.9") +} + +type CustomerAddress { + """ + The unique ID for a `CustomerAddress` object. + """ + uid: ID @deprecated(reason: "Magento >= 2.4.9") +} + +input ShippingAddressInput { + """ + The unique ID from the customer's address book that uniquely identifies the address to be used for shipping. + """ + customer_address_uid: ID @deprecated(reason: "Magento >= 2.4.9") +} diff --git a/packages/magento-graphql/schema-249/CustomerGroupStorefront.graphqls b/packages/magento-graphql/schema-249/CustomerGroupStorefront.graphqls new file mode 100644 index 00000000000..9988baa4511 --- /dev/null +++ b/packages/magento-graphql/schema-249/CustomerGroupStorefront.graphqls @@ -0,0 +1,9 @@ +""" +Data of customer group. +""" +type CustomerGroupStorefront { + """ + The unique ID for a `CustomerGroup` object. + """ + uid: ID! +} diff --git a/packages/magento-graphql/schema-249/GuestOrder.graphqls b/packages/magento-graphql/schema-249/GuestOrder.graphqls new file mode 100644 index 00000000000..71641a0b276 --- /dev/null +++ b/packages/magento-graphql/schema-249/GuestOrder.graphqls @@ -0,0 +1,17 @@ +""" +Input to retrieve an order based on details. +""" +input GuestOrderInformationInput { + """ + Order billing address email. + """ + email: String! + """ + Order billing address lastname. + """ + lastname: String! + """ + Order number. + """ + number: String! +} diff --git a/packages/magento-graphql/schema-249/MediaGalleryInterface.graphqls b/packages/magento-graphql/schema-249/MediaGalleryInterface.graphqls new file mode 100644 index 00000000000..e33b63bd2ab --- /dev/null +++ b/packages/magento-graphql/schema-249/MediaGalleryInterface.graphqls @@ -0,0 +1,20 @@ +interface MediaGalleryInterface { + """ + Array of image types. It can have the following values: image, small_image, thumbnail. + """ + types: [String] @deprecated(reason: "Magento >= 2.4.9") +} + +type ProductImage { + """ + Array of image types. It can have the following values: image, small_image, thumbnail. + """ + types: [String] @deprecated(reason: "Magento >= 2.4.9") +} + +type ProductVideo { + """ + Array of image types. It can have the following values: image, small_image, thumbnail. + """ + types: [String] @deprecated(reason: "Magento >= 2.4.9") +} diff --git a/packages/magento-graphql/schema-249/Mutation-clearCart.graphqls b/packages/magento-graphql/schema-249/Mutation-clearCart.graphqls new file mode 100644 index 00000000000..ef7314b6975 --- /dev/null +++ b/packages/magento-graphql/schema-249/Mutation-clearCart.graphqls @@ -0,0 +1,56 @@ +type Mutation { + """ + Remove all items from the specified cart. + """ + clearCart( + """ + An input object that defines cart ID of the shopper. + """ + input: ClearCartInput! + ): ClearCartOutput! @deprecated(reason: "Magento >= 2.4.9") +} + +""" +Assigns a specific `cart_id` to the empty cart. +""" +input ClearCartInput { + """ + The unique ID of a `Cart` object. + """ + uid: ID! +} + +""" +Output of the request to clear the customer cart. +""" +type ClearCartOutput { + """ + The cart after clear cart items. + """ + cart: Cart + """ + An array of errors encountered while clearing the cart item + """ + errors: [ClearCartError] +} + +""" +Contains details about errors encountered when a customer clear cart. +""" +type ClearCartError { + """ + A localized error message + """ + message: String! + """ + A cart-specific error type. + """ + type: ClearCartErrorType! +} + +enum ClearCartErrorType { + INACTIVE + NOT_FOUND + UNAUTHORISED + UNDEFINED +} diff --git a/packages/magento-graphql/schema-249/OrderInformationInput.graphqls b/packages/magento-graphql/schema-249/OrderInformationInput.graphqls new file mode 100644 index 00000000000..bd3016bd2ab --- /dev/null +++ b/packages/magento-graphql/schema-249/OrderInformationInput.graphqls @@ -0,0 +1,6 @@ +input OrderInformationInput { + """ + Order billing address postcode + """ + postcode: String @deprecated(reason: "Magento >= 2.4.9") +} diff --git a/packages/magento-graphql/schema-249/StoreConfig.graphqls b/packages/magento-graphql/schema-249/StoreConfig.graphqls new file mode 100644 index 00000000000..4bb3389550c --- /dev/null +++ b/packages/magento-graphql/schema-249/StoreConfig.graphqls @@ -0,0 +1,6 @@ +type StoreConfig { + """ + Configuration data from checkout/cart/cart_merge_preference + """ + cart_merge_preference: String! @deprecated(reason: "Magento >= 2.4.9") +} diff --git a/packages/magento-graphql/schema-249/Totals.graphqls b/packages/magento-graphql/schema-249/Totals.graphqls new file mode 100644 index 00000000000..569e8f9e4f3 --- /dev/null +++ b/packages/magento-graphql/schema-249/Totals.graphqls @@ -0,0 +1,6 @@ +type OrderTotal { + """ + The grand total of the order, excluding taxes. + """ + grand_total_excl_tax: Money! @deprecated(reason: "Magento >= 2.4.9") +} diff --git a/packages/magento-graphql/schema-249/Wishlist.graphqls b/packages/magento-graphql/schema-249/Wishlist.graphqls new file mode 100644 index 00000000000..d00840dd685 --- /dev/null +++ b/packages/magento-graphql/schema-249/Wishlist.graphqls @@ -0,0 +1,15 @@ +type Mutation { + """ + Remove all the products from the specified wish list. + """ + clearWishlist( + """ + The ID of a wish list. + """ + wishlistId: ID! + ): RemoveProductsFromWishlistOutput @deprecated(reason: "Magento >= 2.4.9") +} + +enum WishlistCartUserInputErrorType { + REQUIRED_PARAMETER_MISSING @deprecated(reason: "Magento >= 2.4.9") +} From 53f31517180e55646ea437d86f26a9a22ae6ed08 Mon Sep 17 00:00:00 2001 From: Paul Hachmang Date: Fri, 31 Jul 2026 08:54:44 +0200 Subject: [PATCH 2/3] Create fifty-cycles-crash.md --- .changeset/fifty-cycles-crash.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/fifty-cycles-crash.md diff --git a/.changeset/fifty-cycles-crash.md b/.changeset/fifty-cycles-crash.md new file mode 100644 index 00000000000..6316b97782f --- /dev/null +++ b/.changeset/fifty-cycles-crash.md @@ -0,0 +1,5 @@ +--- +"@graphcommerce/magento-graphql": patch +--- + +Schema defintions for 246,247 and 248 From f6cd026591ad4fc1dbd6a455b8fce6a7743cad55 Mon Sep 17 00:00:00 2001 From: Paul Hachmang Date: Fri, 31 Jul 2026 09:17:49 +0200 Subject: [PATCH 3/3] fix(magento-graphql): don't deprecate re-added required input fields MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OrderInformationInput.lastname (2.4.8) and .postcode (2.4.9) were emitted with @deprecated, but the GraphQL spec forbids deprecating a required input field — and postcode oscillates (String! in 2.4.7, removed in 2.4.8, re-added nullable in 2.4.9), so mergeTypeDefs unions our marker onto the earlier non-null declaration. Both broke `buildSchema`/mesh ("Required input field X cannot be deprecated"). Regenerated without the marker on those fields. Co-Authored-By: Claude Opus 4.8 --- .../magento-graphql/schema-248/OrderInformationInput.graphqls | 2 +- .../magento-graphql/schema-249/OrderInformationInput.graphqls | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/magento-graphql/schema-248/OrderInformationInput.graphqls b/packages/magento-graphql/schema-248/OrderInformationInput.graphqls index e00090f5e93..6e3b144507f 100644 --- a/packages/magento-graphql/schema-248/OrderInformationInput.graphqls +++ b/packages/magento-graphql/schema-248/OrderInformationInput.graphqls @@ -2,5 +2,5 @@ input OrderInformationInput { """ Order billing address lastname. """ - lastname: String! @deprecated(reason: "Magento >= 2.4.8") + lastname: String! } diff --git a/packages/magento-graphql/schema-249/OrderInformationInput.graphqls b/packages/magento-graphql/schema-249/OrderInformationInput.graphqls index bd3016bd2ab..2ce97c38c10 100644 --- a/packages/magento-graphql/schema-249/OrderInformationInput.graphqls +++ b/packages/magento-graphql/schema-249/OrderInformationInput.graphqls @@ -2,5 +2,5 @@ input OrderInformationInput { """ Order billing address postcode """ - postcode: String @deprecated(reason: "Magento >= 2.4.9") + postcode: String }