<?php
/**
 * Hyvä Themes - https://hyva.io
 * Copyright © Hyvä Themes. All rights reserved.
 * See COPYING.txt for license details.
 */

declare(strict_types=1);

use Hyva\Theme\Model\ViewModelRegistry;
use Hyva\Theme\ViewModel\ProductPage;
use Hyva\Theme\ViewModel\SendFriend;
use Magento\Catalog\Api\Data\ProductAttributeInterface;
use Magento\Framework\Escaper;
use Magento\Framework\View\Element\Template;

/** @var Template $block */
/** @var Escaper $escaper */
/** @var ViewModelRegistry $viewModels */
/** @var SendFriend $sendFriend */
/** @var ProductPage $productViewModel */
$sendFriend = $viewModels->require(SendFriend::class);
$productViewModel = $viewModels->require(ProductPage::class);

$product = $sendFriend->getProduct();
if (!$product) {
    return '';
}

$productImage = $sendFriend->getImage($product);
$description = $product->getData('short_description');

?>

<div class="item product product-item card card-interactive">
    <div class="block-title">
        <h2 class="sm:text-2xl text-xl font-medium title-font mb-4 text-gray-900 pb-2 border-b xl:border-none"
            role="heading" aria-level="2"
        ><?= $escaper->escapeHtml(__('You are sharing')) ?></h2>
    </div>
    <div class="flex flex-col grow">
        <a href="<?= $escaper->escapeUrl($product->getProductUrl()) ?>"
           class="product photo product-item-photo block mx-auto mb-3"
           tabindex="-1">
            <img loading="lazy"
                 alt="<?= $escaper->escapeHtmlAttr($productImage->getLabel()) ?>"
                 title="<?= $escaper->escapeHtmlAttr($productImage->getLabel()) ?>"
                 src="<?= $escaper->escapeUrl($productImage->getUrl()) ?>"
                 width="<?= $escaper->escapeHtmlAttr($productImage->getWidth()) ?>"
                 height="<?= $escaper->escapeHtmlAttr($productImage->getHeight()) ?>"
            >
        </a>
    </div>
    <div class="product-info flex flex-col grow">
        <div class="mt-2 mb-1 items-center justify-center font-semibold text-lg text-center">
            <a class="product-item-link"
               href="<?= $escaper->escapeUrl($product->getProductUrl()) ?>">
                <?= $escaper->escapeHtml($product->getName()) ?>
            </a>
        </div>
    </div>
    <div class="product-sku text-center"><?= $escaper->escapeHtml($product->getSku()) ?></div>
    <div class="product-description ">
        <?= /** @noEscape */ $productViewModel->productAttributeHtml($product, $description, 'short_description') ?>
    </div>
</div>