coreHelper = $coreHelper; $this->shortcutFactory = $shortcutFactory; } public function execute(Observer $observer) { /** @var \Magento\Catalog\Block\ShortcutButtons $shortcutButtons */ $shortcutButtons = $observer->getEvent()->getContainer(); if ($this->coreHelper->isPwaEnabled() && $this->coreHelper->isCurrentCurrencySupportedByAmazon()) { $params = [ 'shortcutValidator' => $this->shortcutFactory->create($observer->getEvent()->getCheckoutSession()), ]; $params['checkoutSession'] = $observer->getEvent()->getCheckoutSession(); /** @var \Magento\Framework\View\Element\Template $shortcut */ $shortcut = $shortcutButtons->getLayout()->createBlock( \Amazon\Payment\Block\Minicart\Button::class, '', $params ); $shortcut->setIsInCatalogProduct( $observer->getEvent()->getIsCatalogProduct() )->setShowOrPosition( $observer->getEvent()->getOrPosition() ); $shortcut->setIsCart(get_class($shortcutButtons) == \Magento\Checkout\Block\QuoteShortcutButtons::class); $shortcutButtons->addShortcut($shortcut); } } }