mirror of
https://github.com/woocommerce/woocommerce-paypal-payments.git
synced 2025-09-04 08:47:23 +08:00
56 lines
2.3 KiB
PHP
56 lines
2.3 KiB
PHP
<?php
|
|
/**
|
|
* The services
|
|
*
|
|
* @package WooCommerce\PayPalCommerce\Subscription
|
|
*/
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace WooCommerce\PayPalCommerce\Subscription;
|
|
|
|
use WooCommerce\PayPalCommerce\Subscription\Helper\SubscriptionHelper;
|
|
use WooCommerce\PayPalCommerce\Vendor\Psr\Container\ContainerInterface;
|
|
use WooCommerce\PayPalCommerce\Vaulting\PaymentTokenRepository;
|
|
|
|
return array(
|
|
'subscription.helper' => static function ( ContainerInterface $container ): SubscriptionHelper {
|
|
return new SubscriptionHelper();
|
|
},
|
|
'subscription.renewal-handler' => static function ( ContainerInterface $container ): RenewalHandler {
|
|
$logger = $container->get( 'woocommerce.logger.woocommerce' );
|
|
$repository = $container->get( 'vaulting.repository.payment-token' );
|
|
$endpoint = $container->get( 'api.endpoint.order' );
|
|
$purchase_unit_factory = $container->get( 'api.factory.purchase-unit' );
|
|
$payer_factory = $container->get( 'api.factory.payer' );
|
|
$environment = $container->get( 'onboarding.environment' );
|
|
$settings = $container->get( 'wcgateway.settings' );
|
|
$authorized_payments_processor = $container->get( 'wcgateway.processor.authorized-payments' );
|
|
return new RenewalHandler(
|
|
$logger,
|
|
$repository,
|
|
$endpoint,
|
|
$purchase_unit_factory,
|
|
$container->get( 'api.factory.shipping-preference' ),
|
|
$payer_factory,
|
|
$environment,
|
|
$settings,
|
|
$authorized_payments_processor
|
|
);
|
|
},
|
|
'subscription.repository.payment-token' => static function ( ContainerInterface $container ): PaymentTokenRepository {
|
|
$factory = $container->get( 'api.factory.payment-token' );
|
|
$endpoint = $container->get( 'api.endpoint.payment-token' );
|
|
return new PaymentTokenRepository( $factory, $endpoint );
|
|
},
|
|
'subscription.api-handler' => static function( ContainerInterface $container ): SubscriptionsApiHandler {
|
|
return new SubscriptionsApiHandler(
|
|
$container->get( 'api.endpoint.catalog-products' ),
|
|
$container->get( 'api.factory.product' ),
|
|
$container->get( 'api.endpoint.billing-plans' ),
|
|
$container->get( 'api.factory.billing-cycle' ),
|
|
$container->get( 'api.factory.payment-preferences' ),
|
|
$container->get( 'woocommerce.logger.woocommerce' )
|
|
);
|
|
},
|
|
);
|