Viewing File: /home/maglabs/it/app/code/Magento/WishlistGraphQl/Model/CartItems/DownloadableLinkDataProvider.php
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare (strict_types = 1);
namespace Magento\WishlistGraphQl\Model\CartItems;
use Magento\Wishlist\Model\Item;
use Magento\Framework\GraphQl\Query\Uid;
/**
* Data provider for downloadable product links cart item request
*/
class DownloadableLinkDataProvider implements CartItemsRequestDataProviderInterface
{
/**
* @var Uid
*/
private $uidEncoder;
/**
* @param Uid $uidEncoder
*/
public function __construct(
Uid $uidEncoder
) {
$this->uidEncoder = $uidEncoder;
}
/**
* @inheritdoc
*/
public function execute(Item $wishlistItem, ?string $sku): array
{
$buyRequest = $wishlistItem->getBuyRequest();
$links = isset($buyRequest['links']) ? $buyRequest['links'] : [];
$selectedOptions = [];
$cartItems = [];
foreach ($links as $linkId) {
$selectedOptions[] = $this->uidEncoder->encode("downloadable/$linkId");
}
$cartItems['selected_options'] = $selectedOptions;
return $cartItems;
}
}
Back to Directory
File Manager