diff --git a/lib/Module.php b/lib/Module.php index 536c1db..af14ed8 100644 --- a/lib/Module.php +++ b/lib/Module.php @@ -14,7 +14,8 @@ use KTXC\User\Event\UserCreatedEvent; use KTXC\User\Event\UserDeletingEvent; use KTXF\Event\DeliveryMode; use KTXF\Event\EventListenerRegistrarInterface; -use KTXF\Module\ModuleBrowserInterface; +use KTXF\Module\Configuration\BrowserModuleContextInterface; +use KTXF\Module\Configuration\ModuleContextInterface; use KTXF\Module\ModuleInstanceAbstract; use KTXF\Resource\Provider\ProviderInterface; use KTXM\ProviderJmapc\Listeners\UserEventListener; @@ -28,7 +29,7 @@ use KTXM\ProviderJmapc\Providers\Document\Provider as DocumentProvider; * * Provides mail, calendar, and contacts services via JMAP protocol. */ -class Module extends ModuleInstanceAbstract implements ModuleBrowserInterface +class Module extends ModuleInstanceAbstract { public function __construct( private readonly ProviderManager $providerManager, @@ -83,15 +84,10 @@ class Module extends ModuleInstanceAbstract implements ModuleBrowserInterface $this->providerManager->register(ProviderInterface::TYPE_DOCUMENT, 'jmap', DocumentProvider::class); } - public function registerBI(): array { - return [ - 'handle' => $this->handle(), - 'namespace' => 'ProviderJmapc', - 'version' => $this->version(), - 'label' => $this->label(), - 'author' => $this->author(), - 'description' => $this->description(), - 'boot' => 'static/module.mjs', - ]; + public function configure(ModuleContextInterface $context): void + { + if ($context instanceof BrowserModuleContextInterface) { + $context->registerModule($this, 'ProviderJmapc', 'static/module.mjs'); + } } }