woocommerce-paypal-payments/modules/ppcp-card-fields/services.php

34 lines
1.3 KiB
PHP

<?php
/**
* The Card Fields module services.
*
* @package WooCommerce\PayPalCommerce\CardFields
*/
declare(strict_types=1);
namespace WooCommerce\PayPalCommerce\CardFields;
use WooCommerce\PayPalCommerce\CardFields\Helper\CardFieldsApplies;
use WooCommerce\PayPalCommerce\CardFields\Service\CardCaptureValidator;
use WooCommerce\PayPalCommerce\Vendor\Psr\Container\ContainerInterface;
return array(
'card-fields.eligibility.check' => static function ( ContainerInterface $container ): callable {
$save_payment_methods_applies = $container->get( 'card-fields.helpers.save-payment-methods-applies' );
assert( $save_payment_methods_applies instanceof CardFieldsApplies );
return static function () use ( $save_payment_methods_applies ): bool {
return $save_payment_methods_applies->for_country() && $save_payment_methods_applies->for_merchant();
};
},
'card-fields.helpers.save-payment-methods-applies' => static function ( ContainerInterface $container ): CardFieldsApplies {
return new CardFieldsApplies(
$container->get( 'api.dcc-supported-country-currency-matrix' ),
$container->get( 'api.merchant.country' )
);
},
'card-fields.service.card-capture-validator' => static function ( ContainerInterface $container ): CardCaptureValidator {
return new CardCaptureValidator();
},
);