From 4b4ba7b8f063de4d5fa8a56b7bee2c6f034e7061 Mon Sep 17 00:00:00 2001 From: Bart Jaskulski <bjaskulski@protonmail.com> Date: Fri, 5 Jul 2024 13:49:50 +0200 Subject: [PATCH] fix: move requirements checker to conditional extensions Signed-off-by: Bart Jaskulski <bjaskulski@protonmail.com> --- src/Extension/ConditionalExtension.php | 9 +++++++++ src/Resources/bindings/index.php | 2 -- src/Resources/services.inc.php | 8 ++++---- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/Extension/ConditionalExtension.php b/src/Extension/ConditionalExtension.php index f77d8e0..6ecf12f 100644 --- a/src/Extension/ConditionalExtension.php +++ b/src/Extension/ConditionalExtension.php @@ -15,6 +15,7 @@ use WPDesk\Init\Binding\Loader\ArrayDefinitions; use WPDesk\Init\Binding\Loader\BindingDefinitions; use WPDesk\Init\Configuration\ReadableConfig; use WPDesk\Init\DependencyInjection\ContainerBuilder; +use WPDesk\Init\Extension\CommonBinding\RequirementsCheck; use WPDesk\Init\Extension\CommonBinding\WPDeskLicenseBridge; use WPDesk\Init\Extension\CommonBinding\WPDeskTrackerBridge; use WPDesk\Init\Plugin\Plugin; @@ -25,6 +26,10 @@ class ConditionalExtension implements Extension { public function bindings( ContainerInterface $c ): BindingDefinitions { $bindings = []; + if ( class_exists( \WPDesk_Basic_Requirement_Checker::class ) ) { + $bindings[] = RequirementsCheck::class; + } + if ( class_exists( \WPDesk\License\PluginRegistrator::class ) ) { $bindings[] = WPDeskLicenseBridge::class; } @@ -39,6 +44,10 @@ class ConditionalExtension implements Extension { public function build( ContainerBuilder $builder, Plugin $plugin, ReadableConfig $config ): void { $definitions = []; + if ( class_exists( \WPDesk_Basic_Requirement_Checker::class ) ) { + $definitions[ RequirementsCheck::class ] = new AutowireDefinitionHelper(); + } + if ( class_exists( \WPDesk\License\PluginRegistrator::class ) ) { $definitions[ WPDeskLicenseBridge::class ] = new AutowireDefinitionHelper(); } diff --git a/src/Resources/bindings/index.php b/src/Resources/bindings/index.php index 1fd46fc..5116161 100644 --- a/src/Resources/bindings/index.php +++ b/src/Resources/bindings/index.php @@ -1,11 +1,9 @@ <?php use WPDesk\Init\Extension\CommonBinding\I18n; -use WPDesk\Init\Extension\CommonBinding\RequirementsCheck; use WPDesk\Init\Extension\CommonBinding\CustomOrderTableCompatibility; return [ - RequirementsCheck::class, I18n::class, CustomOrderTableCompatibility::class, ]; diff --git a/src/Resources/services.inc.php b/src/Resources/services.inc.php index 21b1c0d..276657c 100644 --- a/src/Resources/services.inc.php +++ b/src/Resources/services.inc.php @@ -1,16 +1,16 @@ <?php use DI\Definition\Helper\AutowireDefinitionHelper; +use WPDesk\Init\Extension\CommonBinding\CustomOrdersTableCompatibility; use WPDesk\Init\Extension\CommonBinding\I18n; -use WPDesk\Init\Extension\CommonBinding\RequirementsCheck; return [ - wpdb::class => static function () { + wpdb::class => static function () { global $wpdb; return $wpdb; }, - I18n::class => new AutowireDefinitionHelper(), - RequirementsCheck::class => new AutowireDefinitionHelper(), + I18n::class => new AutowireDefinitionHelper(), + CustomOrdersTableCompatibility::class => new AutowireDefinitionHelper(), ]; -- GitLab