<?php
declare(strict_types=1);

namespace Autogedal\Manufacturers\Block\Adminhtml\Page\Edit;

use Magento\Framework\App\RequestInterface;
use Magento\Framework\UrlInterface;
use Magento\Framework\View\Element\UiComponent\Control\ButtonProviderInterface;

class DeleteButton implements ButtonProviderInterface
{
    public function __construct(
        private readonly RequestInterface $request,
        private readonly UrlInterface $urlBuilder
    ) {
    }

    public function getButtonData(): array
    {
        $pageId = $this->request->getParam('id');
        if (!$pageId) {
            return [];
        }

        return [
            'label' => __('Delete'),
            'class' => 'delete',
            'on_click' => sprintf(
                "deleteConfirm('%s', '%s')",
                __('Are you sure you want to delete this page?'),
                $this->urlBuilder->getUrl('*/*/delete', ['id' => $pageId])
            ),
            'sort_order' => 20,
        ];
    }
}
