![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/cartforge.co/vendor/paypal/module-braintree-core/Model/Ui/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace PayPal\Braintree\Model\Ui; use Magento\Vault\Api\Data\PaymentTokenInterface; use Magento\Vault\Model\Ui\TokenUiComponentInterface; use Magento\Vault\Model\Ui\TokenUiComponentProviderInterface; use Magento\Vault\Model\Ui\TokenUiComponentInterfaceFactory; use Magento\Framework\UrlInterface; class TokenUiComponentProvider implements TokenUiComponentProviderInterface { /** * @var TokenUiComponentInterfaceFactory */ private $componentFactory; /** * @var UrlInterface */ private $urlBuilder; /** * @param TokenUiComponentInterfaceFactory $componentFactory * @param UrlInterface $urlBuilder */ public function __construct( TokenUiComponentInterfaceFactory $componentFactory, UrlInterface $urlBuilder ) { $this->componentFactory = $componentFactory; $this->urlBuilder = $urlBuilder; } /** * Get UI component for token * * @param PaymentTokenInterface $paymentToken * @return TokenUiComponentInterface */ public function getComponentForToken(PaymentTokenInterface $paymentToken) { $jsonDetails = json_decode($paymentToken->getTokenDetails() ?: '{}', true); $component = $this->componentFactory->create( [ 'config' => [ 'code' => ConfigProvider::CC_VAULT_CODE, 'nonceUrl' => $this->getNonceRetrieveUrl(), TokenUiComponentProviderInterface::COMPONENT_DETAILS => $jsonDetails, TokenUiComponentProviderInterface::COMPONENT_PUBLIC_HASH => $paymentToken->getPublicHash() ], 'name' => 'PayPal_Braintree/js/view/payment/method-renderer/vault' ] ); return $component; } /** * Get url to retrieve payment method nonce * * @return string */ private function getNonceRetrieveUrl(): string { return $this->urlBuilder->getUrl(ConfigProvider::CODE . '/payment/getnonce', ['_secure' => true]); } }