core/modules/big_pipe/big_pipe.module | 14 ++++++++++++++ .../templates/big-pipe-interface-preview.html.twig | 5 +++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/core/modules/big_pipe/big_pipe.module b/core/modules/big_pipe/big_pipe.module index cbe7928c6b..1314106257 100644 --- a/core/modules/big_pipe/big_pipe.module +++ b/core/modules/big_pipe/big_pipe.module @@ -95,6 +95,10 @@ function big_pipe_theme() { * Implements hook_theme_suggestions_HOOK(). */ function big_pipe_theme_suggestions_big_pipe_interface_preview(array $variables) { + $common_callbacks_simplified_suggestions = [ + 'Drupal-block-BlockViewBuilder--lazyBuilder' => 'block', + ]; + $suggestions = []; $suggestion = 'big_pipe_interface_preview'; if ($variables['callback']) { @@ -102,6 +106,16 @@ function big_pipe_theme_suggestions_big_pipe_interface_preview(array $variables) if (is_array($callback)) { $callback = implode('__', $callback); } + + // Use simplified template suggestion, if any. + // For example, this simplifies + // big-pipe-interface-preview--Drupal-block-BlockViewBuilder--lazyBuilder--.html.twig + // to + // big-pipe-interface-preview--block--.html.twig + if (isset($common_callbacks_simplified_suggestions[$callback])) { + $callback = $common_callbacks_simplified_suggestions[$callback]; + } + $suggestions[] = $suggestion .= '__' . $callback; if (is_array($variables['arguments'])) { $arguments = preg_replace('/[^a-zA-Z0-9]/', '_', $variables['arguments']); diff --git a/core/modules/big_pipe/templates/big-pipe-interface-preview.html.twig b/core/modules/big_pipe/templates/big-pipe-interface-preview.html.twig index 3da869ba0c..06a2d13c11 100644 --- a/core/modules/big_pipe/templates/big-pipe-interface-preview.html.twig +++ b/core/modules/big_pipe/templates/big-pipe-interface-preview.html.twig @@ -1,8 +1,9 @@ {# /** * @file - * Default theme implementation to display the interface preview on big - * pipe content placeholder. + * Default theme implementation for a BigPipe JS placeholder interface preview. + * + * @see \Drupal\big_pipe\Render\Placeholder\BigPipeStrategy::createBigPipeJsPlaceholder() */ #} {{ preview }}