diff --git a/app/code/Magento/ConfigurableProductGraphQl/Model/Options/DataProvider/Variant.php b/app/code/Magento/ConfigurableProductGraphQl/Model/Options/DataProvider/Variant.php index 32b9b2a48a3c7..479905934509e 100644 --- a/app/code/Magento/ConfigurableProductGraphQl/Model/Options/DataProvider/Variant.php +++ b/app/code/Magento/ConfigurableProductGraphQl/Model/Options/DataProvider/Variant.php @@ -1,7 +1,7 @@ configurableType = $configurableType; $this->stockStatusFactory = $stockStatusFactory; + $this->scopeConfig = $scopeConfig; } /** @@ -56,8 +66,12 @@ public function getSalableVariantsByParent(ProductInterface $product): array $stockFlag = 'has_stock_status_filter'; if (!$collection->hasFlag($stockFlag)) { $stockStatusResource = $this->stockStatusFactory->create(); - $stockStatusResource->addStockDataToCollection($collection, true); - $collection->setFlag($stockFlag, true); + $showOutOfStock = $this->scopeConfig->isSetFlag( + 'cataloginventory/options/show_out_of_stock', + ScopeInterface::SCOPE_STORE + ); + $stockStatusResource->addStockDataToCollection($collection, !$showOutOfStock); + $collection->setFlag($stockFlag, !$showOutOfStock); } $collection->addMediaGalleryData(); $collection->addTierPriceData(); diff --git a/app/code/Magento/ConfigurableProductGraphQl/composer.json b/app/code/Magento/ConfigurableProductGraphQl/composer.json index 0998466b4def8..0ee3a795d7571 100644 --- a/app/code/Magento/ConfigurableProductGraphQl/composer.json +++ b/app/code/Magento/ConfigurableProductGraphQl/composer.json @@ -11,6 +11,7 @@ "magento/module-quote": "*", "magento/module-quote-graph-ql": "*", "magento/module-catalog-inventory": "*", + "magento/module-store": "*", "magento/framework": "*" }, "license": [