|
12 | 12 | use phpDocumentor\Guides\Interlink\InventoryLoader; |
13 | 13 | use phpDocumentor\Guides\Interlink\InventoryRepository; |
14 | 14 | use phpDocumentor\Guides\Interlink\JsonLoader; |
15 | | -use phpDocumentor\Guides\NodeRenderers\DefaultNodeRenderer; |
16 | | -use phpDocumentor\Guides\NodeRenderers\DelegatingNodeRenderer; |
17 | 15 | use phpDocumentor\Guides\NodeRenderers\Html\BreadCrumbNodeRenderer; |
18 | 16 | use phpDocumentor\Guides\NodeRenderers\Html\DocumentNodeRenderer; |
19 | 17 | use phpDocumentor\Guides\NodeRenderers\Html\MenuEntryRenderer; |
20 | 18 | use phpDocumentor\Guides\NodeRenderers\Html\MenuNodeRenderer; |
21 | 19 | use phpDocumentor\Guides\NodeRenderers\Html\TableNodeRenderer; |
22 | | -use phpDocumentor\Guides\NodeRenderers\InMemoryNodeRendererFactory; |
23 | | -use phpDocumentor\Guides\NodeRenderers\NodeRendererFactory; |
24 | 20 | use phpDocumentor\Guides\NodeRenderers\NodeRendererFactoryAware; |
25 | | -use phpDocumentor\Guides\NodeRenderers\PreRenderers\PreNodeRendererFactory; |
| 21 | +use phpDocumentor\Guides\NodeRenderers\OutputAwareDelegatingNodeRenderer; |
26 | 22 | use phpDocumentor\Guides\Parser; |
27 | 23 | use phpDocumentor\Guides\ReferenceResolvers\AnchorReducer; |
28 | 24 | use phpDocumentor\Guides\ReferenceResolvers\AnchorReferenceResolver; |
|
145 | 141 | ->arg('$resolvers', tagged_iterator('phpdoc.guides.reference_resolver', defaultPriorityMethod: 'getPriority')) |
146 | 142 |
|
147 | 143 | ->set(HtmlRenderer::class) |
148 | | - ->tag('phpdoc.renderer.typerenderer') |
| 144 | + ->tag( |
| 145 | + 'phpdoc.renderer.typerenderer', |
| 146 | + [ |
| 147 | + 'noderender_tag' => 'phpdoc.guides.noderenderer.html', |
| 148 | + 'format' => 'html', |
| 149 | + ], |
| 150 | + ) |
149 | 151 | ->args( |
150 | 152 | ['$commandBus' => service(CommandBus::class)], |
151 | 153 | ) |
152 | 154 | ->set(LatexRenderer::class) |
153 | | - ->tag('phpdoc.renderer.typerenderer') |
154 | | - ->args( |
155 | | - ['$commandBus' => service(CommandBus::class)], |
| 155 | + ->tag( |
| 156 | + 'phpdoc.renderer.typerenderer', |
| 157 | + [ |
| 158 | + 'noderender_tag' => 'phpdoc.guides.noderenderer.tex', |
| 159 | + 'format' => 'tex', |
| 160 | + ], |
156 | 161 | ) |
157 | 162 |
|
158 | 163 | ->set(InterlinkObjectsRenderer::class) |
159 | | - ->tag('phpdoc.renderer.typerenderer') |
| 164 | + ->tag( |
| 165 | + 'phpdoc.renderer.typerenderer', |
| 166 | + ['format' => 'interlink'], |
| 167 | + ) |
160 | 168 |
|
161 | 169 | ->set(DocumentNodeRenderer::class) |
162 | 170 | ->tag('phpdoc.guides.noderenderer.html') |
|
169 | 177 | ->set(BreadCrumbNodeRenderer::class) |
170 | 178 | ->tag('phpdoc.guides.noderenderer.html') |
171 | 179 |
|
172 | | - ->set(DefaultNodeRenderer::class) |
173 | | - |
174 | | - ->set(InMemoryNodeRendererFactory::class) |
175 | | - ->args([ |
176 | | - '$nodeRenderers' => tagged_iterator('phpdoc.guides.noderenderer.html'), |
177 | | - '$defaultNodeRenderer' => new Reference(DefaultNodeRenderer::class), |
178 | | - ]) |
179 | | - ->alias(NodeRendererFactory::class, InMemoryNodeRendererFactory::class) |
180 | | - |
181 | | - ->set(PreNodeRendererFactory::class) |
182 | | - ->decorate(NodeRendererFactory::class) |
183 | | - ->arg('$innerFactory', service('.inner')) |
184 | | - ->arg('$preRenderers', tagged_iterator('phpdoc.guides.prerenderer')) |
185 | | - |
186 | 180 | ->set(ReferenceResolverPreRender::class) |
187 | 181 | ->tag('phpdoc.guides.prerenderer') |
188 | 182 |
|
189 | 183 | ->set(InMemoryRendererFactory::class) |
190 | | - ->arg('$renderSets', tagged_iterator('phpdoc.renderer.typerenderer')) |
| 184 | + ->arg('$renderSets', tagged_iterator('phpdoc.renderer.typerenderer', 'format')) |
191 | 185 | ->alias(TypeRendererFactory::class, InMemoryRendererFactory::class) |
192 | 186 |
|
193 | 187 | ->set(SluggerAnchorReducer::class) |
194 | 188 | ->alias(AnchorReducer::class, SluggerAnchorReducer::class) |
195 | 189 |
|
| 190 | + ->set('phpdoc.guides.output_node_renderer', OutputAwareDelegatingNodeRenderer::class) |
| 191 | + ->arg('$nodeRenderers', tagged_iterator('phpdoc.guides.output_node_renderer', 'format')) |
196 | 192 |
|
197 | 193 | ->set(AssetsExtension::class) |
198 | | - ->arg('$nodeRenderer', service(DelegatingNodeRenderer::class)) |
| 194 | + ->arg('$nodeRenderer', service('phpdoc.guides.output_node_renderer')) |
199 | 195 | ->tag('twig.extension') |
200 | 196 | ->autowire() |
201 | 197 |
|
|
0 commit comments