From 1b406341f5ee73544d24eb7a41667b24f2bf8c0d Mon Sep 17 00:00:00 2001 From: Florent Torregrosa <florent.torregrosa@gmail.com> Date: Wed, 26 Jun 2024 15:54:02 +0300 Subject: [PATCH] Issue #3435188 by Grimreaper: Automated Drupal 11 compatibility fixes for ui_patterns --- modules/ui_patterns_ds/ui_patterns_ds.info.yml | 2 +- .../ui_patterns_field_group.info.yml | 2 +- .../ui_patterns_layouts.info.yml | 2 +- .../UiPatternsLibraryOverviewTest.php | 2 +- .../ui_patterns_library.info.yml | 2 +- .../ui_patterns_views/ui_patterns_views.info.yml | 2 +- src/Template/TwigExtension.php | 14 ++++---------- .../src/Unit/Definition/PatternDefinitionTest.php | 8 ++++---- .../Definition/PatternDefinitionVariantTest.php | 2 +- tests/src/Unit/Template/TwigExtensionTest.php | 4 ++-- ui_patterns.info.yml | 2 +- 11 files changed, 18 insertions(+), 24 deletions(-) diff --git a/modules/ui_patterns_ds/ui_patterns_ds.info.yml b/modules/ui_patterns_ds/ui_patterns_ds.info.yml index 2bbdfa216..dfbcdb450 100644 --- a/modules/ui_patterns_ds/ui_patterns_ds.info.yml +++ b/modules/ui_patterns_ds/ui_patterns_ds.info.yml @@ -1,7 +1,7 @@ name: 'UI Patterns Display Suite' type: module description: 'Use patterns as Display Suite field templates. It also provides Display Suite pattern sources.' -core_version_requirement: ^9 || ^10 +core_version_requirement: ^9 || ^10 || ^11 package: 'User interface' dependencies: - ds:ds diff --git a/modules/ui_patterns_field_group/ui_patterns_field_group.info.yml b/modules/ui_patterns_field_group/ui_patterns_field_group.info.yml index d2a376ebd..4825bca49 100644 --- a/modules/ui_patterns_field_group/ui_patterns_field_group.info.yml +++ b/modules/ui_patterns_field_group/ui_patterns_field_group.info.yml @@ -1,7 +1,7 @@ name: 'UI Patterns Field Group' type: module description: 'Use patterns as field groups templates.' -core_version_requirement: ^9 || ^10 +core_version_requirement: ^9 || ^10 || ^11 package: 'User interface' dependencies: - field_group:field_group diff --git a/modules/ui_patterns_layouts/ui_patterns_layouts.info.yml b/modules/ui_patterns_layouts/ui_patterns_layouts.info.yml index 8cd17ba86..1a18f8262 100644 --- a/modules/ui_patterns_layouts/ui_patterns_layouts.info.yml +++ b/modules/ui_patterns_layouts/ui_patterns_layouts.info.yml @@ -1,7 +1,7 @@ name: 'UI Patterns Layouts' type: module description: 'Use patterns as layouts via the Layout Discovery module.' -core_version_requirement: ^9 || ^10 +core_version_requirement: ^9 || ^10 || ^11 package: 'User interface' dependencies: - drupal:layout_discovery diff --git a/modules/ui_patterns_library/tests/src/FunctionalJavascript/UiPatternsLibraryOverviewTest.php b/modules/ui_patterns_library/tests/src/FunctionalJavascript/UiPatternsLibraryOverviewTest.php index a0abd0814..581063db5 100644 --- a/modules/ui_patterns_library/tests/src/FunctionalJavascript/UiPatternsLibraryOverviewTest.php +++ b/modules/ui_patterns_library/tests/src/FunctionalJavascript/UiPatternsLibraryOverviewTest.php @@ -18,7 +18,7 @@ class UiPatternsLibraryOverviewTest extends WebDriverTestBase { * * Currently no interface to rely on. * - * @var \Drupal\Core\Extension\ModuleExtensionList + * @var \Drupal\Core\Extension\ThemeExtensionList */ protected $moduleExtensionList; diff --git a/modules/ui_patterns_library/ui_patterns_library.info.yml b/modules/ui_patterns_library/ui_patterns_library.info.yml index 627d19d4c..b561a7328 100644 --- a/modules/ui_patterns_library/ui_patterns_library.info.yml +++ b/modules/ui_patterns_library/ui_patterns_library.info.yml @@ -1,7 +1,7 @@ name: 'UI Patterns Library' type: module description: 'Exposed patterns in you modules and themes and display them in a pattern library page.' -core_version_requirement: ^9 || ^10 +core_version_requirement: ^9 || ^10 || ^11 package: 'User interface' dependencies: - ui_patterns:ui_patterns diff --git a/modules/ui_patterns_views/ui_patterns_views.info.yml b/modules/ui_patterns_views/ui_patterns_views.info.yml index 957fc8555..4126e5157 100644 --- a/modules/ui_patterns_views/ui_patterns_views.info.yml +++ b/modules/ui_patterns_views/ui_patterns_views.info.yml @@ -1,7 +1,7 @@ name: 'UI Patterns Views' type: module description: 'Use patterns as Views templates.' -core_version_requirement: ^9 || ^10 +core_version_requirement: ^9 || ^10 || ^11 package: 'User interface' dependencies: - drupal:views diff --git a/src/Template/TwigExtension.php b/src/Template/TwigExtension.php index 09bd26674..6479fe395 100644 --- a/src/Template/TwigExtension.php +++ b/src/Template/TwigExtension.php @@ -27,14 +27,8 @@ class TwigExtension extends AbstractExtension { */ public function getFunctions() { return [ - new TwigFunction('pattern', [ - $this, - 'renderPattern', - ]), - new TwigFunction('pattern_preview', [ - $this, - 'renderPatternPreview', - ]), + new TwigFunction('pattern', $this->renderPattern(...)), + new TwigFunction('pattern_preview', $this->renderPatternPreview(...)), ]; } @@ -43,8 +37,8 @@ class TwigExtension extends AbstractExtension { */ public function getFilters() { return [ - new TwigFilter('add_class', [$this, 'addClass']), - new TwigFilter('set_attribute', [$this, 'setAttribute']), + new TwigFilter('add_class', $this->addClass(...)), + new TwigFilter('set_attribute', $this->setAttribute(...)), ]; } diff --git a/tests/src/Unit/Definition/PatternDefinitionTest.php b/tests/src/Unit/Definition/PatternDefinitionTest.php index 66fb0459b..9d595df43 100644 --- a/tests/src/Unit/Definition/PatternDefinitionTest.php +++ b/tests/src/Unit/Definition/PatternDefinitionTest.php @@ -45,7 +45,7 @@ class PatternDefinitionTest extends UiPatternsTestBase { * @return array * Data. */ - public function definitionGettersProvider() { + public static function definitionGettersProvider() { return [ ['getProvider', 'provider', 'my_module'], ['id', 'id', 'pattern_id'], @@ -176,7 +176,7 @@ class PatternDefinitionTest extends UiPatternsTestBase { * @return array * Data. */ - public function hasUseProvider(): array { + public static function hasUseProvider(): array { return [ 'pattern_without_use' => [ [ @@ -267,7 +267,7 @@ class PatternDefinitionTest extends UiPatternsTestBase { * @return array * Data. */ - public function definitionGetLinksProvider(): array { + public static function definitionGetLinksProvider(): array { return [ [ [ @@ -332,7 +332,7 @@ class PatternDefinitionTest extends UiPatternsTestBase { * @return array * Data. */ - public function definitionGetRenderLinksProvider(): array { + public static function definitionGetRenderLinksProvider(): array { return [ [ [ diff --git a/tests/src/Unit/Definition/PatternDefinitionVariantTest.php b/tests/src/Unit/Definition/PatternDefinitionVariantTest.php index 017d26b8a..9683221c7 100644 --- a/tests/src/Unit/Definition/PatternDefinitionVariantTest.php +++ b/tests/src/Unit/Definition/PatternDefinitionVariantTest.php @@ -93,7 +93,7 @@ class PatternDefinitionVariantTest extends UiPatternsTestBase { * @return array * Data. */ - public function definitionGettersProvider(): array { + public static function definitionGettersProvider(): array { return [ ['getName', 'name', 'Variant name'], ['getLabel', 'label', 'Variant label'], diff --git a/tests/src/Unit/Template/TwigExtensionTest.php b/tests/src/Unit/Template/TwigExtensionTest.php index c692735a7..295572ac4 100644 --- a/tests/src/Unit/Template/TwigExtensionTest.php +++ b/tests/src/Unit/Template/TwigExtensionTest.php @@ -49,7 +49,7 @@ class TwigExtensionTest extends UnitTestCase { * @return \Iterator * An iterator. */ - public function providerTestTwigAddClass(): \Iterator { + public static function providerTestTwigAddClass(): \Iterator { yield 'should add a class on element' => [ ['#type' => 'container'], 'my-class', @@ -136,7 +136,7 @@ class TwigExtensionTest extends UnitTestCase { * @return \Iterator * An iterator. */ - public function providerTestTwigSetAttribute(): \Iterator { + public static function providerTestTwigSetAttribute(): \Iterator { yield 'should add attributes on element' => [ ['#theme' => 'image'], 'title', diff --git a/ui_patterns.info.yml b/ui_patterns.info.yml index cf1fbdb00..d3d0db0dc 100644 --- a/ui_patterns.info.yml +++ b/ui_patterns.info.yml @@ -1,5 +1,5 @@ name: 'UI Patterns' type: module description: 'UI patterns.' -core_version_requirement: ^9 || ^10 +core_version_requirement: ^9 || ^10 || ^11 package: 'User interface' -- GitLab