2026-02-23 12:58:19 +01:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace MintyPHP\Service\Branding;
|
|
|
|
|
|
2026-03-06 00:44:52 +01:00
|
|
|
use MintyPHP\Service\Settings\SettingsAppGateway;
|
2026-02-23 12:58:19 +01:00
|
|
|
|
|
|
|
|
class BrandingServicesFactory
|
|
|
|
|
{
|
|
|
|
|
private ?BrandingLogoService $brandingLogoService = null;
|
|
|
|
|
private ?BrandingFaviconService $brandingFaviconService = null;
|
|
|
|
|
|
2026-03-04 15:56:58 +01:00
|
|
|
public function __construct(
|
2026-03-06 00:44:52 +01:00
|
|
|
private readonly SettingsAppGateway $settingsAppGateway
|
2026-03-04 15:56:58 +01:00
|
|
|
) {
|
|
|
|
|
}
|
|
|
|
|
|
2026-02-23 12:58:19 +01:00
|
|
|
public function createBrandingLogoService(): BrandingLogoService
|
|
|
|
|
{
|
|
|
|
|
return $this->brandingLogoService ??= new BrandingLogoService();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function createBrandingFaviconService(): BrandingFaviconService
|
|
|
|
|
{
|
2026-03-06 00:44:52 +01:00
|
|
|
return $this->brandingFaviconService ??= new BrandingFaviconService($this->createSettingsAppGateway());
|
2026-02-23 12:58:19 +01:00
|
|
|
}
|
|
|
|
|
|
2026-03-06 00:44:52 +01:00
|
|
|
private function createSettingsAppGateway(): SettingsAppGateway
|
2026-02-23 12:58:19 +01:00
|
|
|
{
|
2026-03-06 00:44:52 +01:00
|
|
|
return $this->settingsAppGateway;
|
2026-02-23 12:58:19 +01:00
|
|
|
}
|
|
|
|
|
}
|