@@ 24-39 (lines=16) @@ | ||
21 | { |
|
22 | $aggregateThemeFactory = null; |
|
23 | return [ |
|
24 | AggregateThemeFactory::class => function(ContainerInterface $container) use (&$aggregateThemeFactory): AggregateThemeFactory |
|
25 | { |
|
26 | if ($aggregateThemeFactory === null) { |
|
27 | $aggregateThemeFactory = new AggregateThemeFactory([]); |
|
28 | } else { |
|
29 | return $aggregateThemeFactory; |
|
30 | } |
|
31 | $aggregateThemeFactory = new AggregateThemeFactory(); |
|
32 | ||
33 | $subThemeFactory = new SubThemeFactory($aggregateThemeFactory); |
|
34 | $twigThemeFactory = new TwigThemeFactory($container->get(\Twig_Environment::class), $container->get(BlockRendererInterface::class)); |
|
35 | ||
36 | $aggregateThemeFactory->addThemeFactory($twigThemeFactory); |
|
37 | $aggregateThemeFactory->addThemeFactory($subThemeFactory); |
|
38 | return $aggregateThemeFactory; |
|
39 | }, |
|
40 | ThemeFactoryInterface::class => new Alias(AggregateThemeFactory::class), |
|
41 | BlockRendererInterface::class => new Alias(BlockRenderer::class), |
|
42 | BlockRenderer::class => function(ContainerInterface $container) use (&$aggregateThemeFactory): BlockRenderer |
|
@@ 42-57 (lines=16) @@ | ||
39 | }, |
|
40 | ThemeFactoryInterface::class => new Alias(AggregateThemeFactory::class), |
|
41 | BlockRendererInterface::class => new Alias(BlockRenderer::class), |
|
42 | BlockRenderer::class => function(ContainerInterface $container) use (&$aggregateThemeFactory): BlockRenderer |
|
43 | { |
|
44 | if ($aggregateThemeFactory === null) { |
|
45 | $aggregateThemeFactory = new AggregateThemeFactory([]); |
|
46 | } |
|
47 | ||
48 | $blockRenderer = new BlockRenderer($aggregateThemeFactory); |
|
49 | ||
50 | $subThemeFactory = new SubThemeFactory($aggregateThemeFactory); |
|
51 | $twigThemeFactory = new TwigThemeFactory($container->get(\Twig_Environment::class), $blockRenderer); |
|
52 | ||
53 | $aggregateThemeFactory->addThemeFactory($subThemeFactory); |
|
54 | $aggregateThemeFactory->addThemeFactory($twigThemeFactory); |
|
55 | ||
56 | return $blockRenderer; |
|
57 | }, |
|
58 | ||
59 | ]; |
|
60 | } |