From a8697ba4770bd937435cb8c10f62d2a8b55ab612 Mon Sep 17 00:00:00 2001 From: Sebastian Krupinski Date: Mon, 31 Aug 2026 22:40:53 -0400 Subject: [PATCH] refactor(module): register integrations through runtime contexts Signed-off-by: Sebastian Krupinski --- lib/Module.php | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/lib/Module.php b/lib/Module.php index e75537e..a2da52e 100644 --- a/lib/Module.php +++ b/lib/Module.php @@ -7,13 +7,14 @@ 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\ProviderLocalChrono\Listeners\UserEventListener; use KTXM\ProviderLocalChrono\Providers\Provider; -class Module extends ModuleInstanceAbstract implements ModuleBrowserInterface +class Module extends ModuleInstanceAbstract { public function __construct( private readonly ProviderManager $providerManager, @@ -65,15 +66,11 @@ class Module extends ModuleInstanceAbstract implements ModuleBrowserInterface $this->providerManager->register(ProviderInterface::TYPE_CHRONO, 'default', Provider::class); } - public function registerBI(): array { - return [ - 'handle' => $this->handle(), - 'namespace' => 'ProviderLocalChrono', - 'version' => $this->version(), - 'label' => $this->label(), - 'author' => $this->author(), - 'description' => $this->description() - ]; + public function configure(ModuleContextInterface $context): void + { + if ($context instanceof BrowserModuleContextInterface) { + $context->registerModule($this, 'ProviderLocalChrono'); + } } }