woocommerce-paypal-payments/modules/ppcp-admin-notices/services.php

29 lines
1.5 KiB
PHP

<?php
/**
* The services of the admin notice module.
*
* @package WooCommerce\PayPalCommerce\AdminNotices
*/
declare (strict_types=1);
namespace WooCommerce\PayPalCommerce\AdminNotices;
use WooCommerce\PayPalCommerce\Assets\AssetGetter;
use WooCommerce\PayPalCommerce\Assets\AssetGetterFactory;
use WooCommerce\PayPalCommerce\Vendor\Psr\Container\ContainerInterface;
use WooCommerce\PayPalCommerce\AdminNotices\Renderer\Renderer;
use WooCommerce\PayPalCommerce\AdminNotices\Renderer\RendererInterface;
use WooCommerce\PayPalCommerce\AdminNotices\Repository\Repository;
use WooCommerce\PayPalCommerce\AdminNotices\Repository\RepositoryInterface;
use WooCommerce\PayPalCommerce\AdminNotices\Endpoint\MuteMessageEndpoint;
return array('admin-notices.asset_getter' => static function (ContainerInterface $container): AssetGetter {
$factory = $container->get('assets.asset_getter_factory');
assert($factory instanceof AssetGetterFactory);
return $factory->for_module('ppcp-admin-notices');
}, 'admin-notices.renderer' => static function (ContainerInterface $container): RendererInterface {
return new Renderer($container->get('admin-notices.repository'), $container->get('admin-notices.asset_getter'), $container->get('ppcp.asset-version'));
}, 'admin-notices.repository' => static function (ContainerInterface $container): RepositoryInterface {
return new Repository();
}, 'admin-notices.mute-message-endpoint' => static function (ContainerInterface $container): MuteMessageEndpoint {
return new MuteMessageEndpoint($container->get('button.request-data'));
});