forked from fa/breadcrumb-the-shire
AddressBookAuthorizationPolicy requires PermissionService in its constructor, so ModuleClassResolver cannot auto-instantiate it. Register it explicitly in the container registrar so the addressbook.view ability resolves correctly for sidebar visibility. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
38 lines
1.5 KiB
PHP
38 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace MintyPHP\Module\AddressBook;
|
|
|
|
use MintyPHP\App\AppContainer;
|
|
use MintyPHP\App\Container\ContainerRegistrar;
|
|
use MintyPHP\Module\AddressBook\Service\AddressBookService;
|
|
use MintyPHP\Service\Access\PermissionService;
|
|
use MintyPHP\Service\Access\RoleService;
|
|
use MintyPHP\Service\CustomField\UserCustomFieldValueService;
|
|
use MintyPHP\Service\Org\DepartmentService;
|
|
use MintyPHP\Service\Tenant\TenantScopeService;
|
|
use MintyPHP\Service\Tenant\TenantService;
|
|
use MintyPHP\Service\User\UserAccountService;
|
|
use MintyPHP\Service\User\UserAssignmentService;
|
|
use MintyPHP\Service\User\UserAvatarService;
|
|
|
|
final class AddressBookContainerRegistrar implements ContainerRegistrar
|
|
{
|
|
public function register(AppContainer $container): void
|
|
{
|
|
$container->set(AddressBookAuthorizationPolicy::class, static fn (AppContainer $c): AddressBookAuthorizationPolicy => new AddressBookAuthorizationPolicy(
|
|
$c->get(PermissionService::class)
|
|
));
|
|
|
|
$container->set(AddressBookService::class, static fn (AppContainer $c): AddressBookService => new AddressBookService(
|
|
$c->get(UserAccountService::class),
|
|
$c->get(UserAssignmentService::class),
|
|
$c->get(TenantService::class),
|
|
$c->get(DepartmentService::class),
|
|
$c->get(RoleService::class),
|
|
$c->get(TenantScopeService::class),
|
|
$c->get(UserCustomFieldValueService::class),
|
|
$c->get(UserAvatarService::class)
|
|
));
|
|
}
|
|
}
|