@@ -8,6 +8,7 @@ import 'dart:io' show File;
88
99import 'package:collection/collection.dart' show compareNatural;
1010import 'package:dartdoc/src/html/html_generator.dart' show HtmlGeneratorOptions;
11+ import 'package:dartdoc/src/html/template_render_helper.dart' ;
1112import 'package:dartdoc/src/html/resource_loader.dart' as loader;
1213import 'package:dartdoc/src/html/resources.g.dart' as resources;
1314import 'package:dartdoc/src/html/template_data.dart' ;
@@ -28,6 +29,7 @@ class HtmlGeneratorInstance {
2829 final PackageGraph _packageGraph;
2930 final List <Indexable > _indexedElements = < Indexable > [];
3031 final FileWriter _writer;
32+ final HtmlRenderHelper _templateHelper = HtmlRenderHelper ();
3133
3234 HtmlGeneratorInstance (
3335 this ._options, this ._templates, this ._packageGraph, this ._writer);
@@ -273,7 +275,8 @@ class HtmlGeneratorInstance {
273275 }
274276
275277 void generatePackage (PackageGraph packageGraph, Package package) {
276- TemplateData data = PackageTemplateData (_options, packageGraph, package);
278+ TemplateData data =
279+ PackageTemplateData (_options, packageGraph, _templateHelper, package);
277280 logInfo ('documenting ${package .name }' );
278281
279282 _build ('index.html' , _templates.indexTemplate, data);
@@ -283,7 +286,8 @@ class HtmlGeneratorInstance {
283286 void generateCategory (PackageGraph packageGraph, Category category) {
284287 logInfo (
285288 'Generating docs for category ${category .name } from ${category .package .fullyQualifiedName }...' );
286- TemplateData data = CategoryTemplateData (_options, packageGraph, category);
289+ TemplateData data =
290+ CategoryTemplateData (_options, packageGraph, _templateHelper, category);
287291
288292 _build (path.joinAll (category.href.split ('/' )), _templates.categoryTemplate,
289293 data);
@@ -295,102 +299,107 @@ class HtmlGeneratorInstance {
295299 if (! lib.isAnonymous && ! lib.hasDocumentation) {
296300 packageGraph.warnOnElement (lib, PackageWarning .noLibraryLevelDocs);
297301 }
298- TemplateData data = LibraryTemplateData (_options, packageGraph, lib);
302+ TemplateData data =
303+ LibraryTemplateData (_options, packageGraph, _templateHelper, lib);
299304
300305 _build (path.join (lib.dirName, '${lib .fileName }' ),
301306 _templates.libraryTemplate, data);
302307 }
303308
304309 void generateClass (PackageGraph packageGraph, Library lib, Class clazz) {
305- TemplateData data = ClassTemplateData (_options, packageGraph, lib, clazz);
310+ TemplateData data =
311+ ClassTemplateData (_options, packageGraph, _templateHelper, lib, clazz);
306312 _build (path.joinAll (clazz.href.split ('/' )), _templates.classTemplate, data);
307313 }
308314
309315 void generateExtension (
310316 PackageGraph packageGraph, Library lib, Extension ext) {
311- TemplateData data = ExtensionTemplateData (_options, packageGraph, lib, ext);
317+ TemplateData data = ExtensionTemplateData (
318+ _options, packageGraph, _templateHelper, lib, ext);
312319 _build (
313320 path.joinAll (ext.href.split ('/' )), _templates.extensionTemplate, data);
314321 }
315322
316323 void generateMixins (PackageGraph packageGraph, Library lib, Mixin mixin ) {
317- TemplateData data = MixinTemplateData (_options, packageGraph, lib, mixin );
324+ TemplateData data =
325+ MixinTemplateData (_options, packageGraph, _templateHelper, lib, mixin );
318326 _build (path.joinAll (mixin .href.split ('/' )), _templates.mixinTemplate, data);
319327 }
320328
321329 void generateConstructor (PackageGraph packageGraph, Library lib, Class clazz,
322330 Constructor constructor) {
323331 TemplateData data = ConstructorTemplateData (
324- _options, packageGraph, lib, clazz, constructor);
332+ _options, packageGraph, _templateHelper, lib, clazz, constructor);
325333
326334 _build (path.joinAll (constructor.href.split ('/' )),
327335 _templates.constructorTemplate, data);
328336 }
329337
330338 void generateEnum (PackageGraph packageGraph, Library lib, Enum eNum) {
331- TemplateData data = EnumTemplateData (_options, packageGraph, lib, eNum);
339+ TemplateData data =
340+ EnumTemplateData (_options, packageGraph, _templateHelper, lib, eNum);
332341
333342 _build (path.joinAll (eNum.href.split ('/' )), _templates.enumTemplate, data);
334343 }
335344
336345 void generateFunction (
337346 PackageGraph packageGraph, Library lib, ModelFunction function) {
338- TemplateData data =
339- FunctionTemplateData ( _options, packageGraph, lib, function);
347+ TemplateData data = FunctionTemplateData (
348+ _options, packageGraph, _templateHelper , lib, function);
340349
341350 _build (path.joinAll (function.href.split ('/' )), _templates.functionTemplate,
342351 data);
343352 }
344353
345354 void generateMethod (
346355 PackageGraph packageGraph, Library lib, Container clazz, Method method) {
347- TemplateData data =
348- MethodTemplateData ( _options, packageGraph, lib, clazz, method);
356+ TemplateData data = MethodTemplateData (
357+ _options, packageGraph, _templateHelper , lib, clazz, method);
349358
350359 _build (
351360 path.joinAll (method.href.split ('/' )), _templates.methodTemplate, data);
352361 }
353362
354363 void generateConstant (
355364 PackageGraph packageGraph, Library lib, Container clazz, Field property) {
356- TemplateData data =
357- ConstantTemplateData ( _options, packageGraph, lib, clazz, property);
365+ TemplateData data = ConstantTemplateData (
366+ _options, packageGraph, _templateHelper , lib, clazz, property);
358367
359368 _build (path.joinAll (property.href.split ('/' )), _templates.constantTemplate,
360369 data);
361370 }
362371
363372 void generateProperty (
364373 PackageGraph packageGraph, Library lib, Container clazz, Field property) {
365- TemplateData data =
366- PropertyTemplateData ( _options, packageGraph, lib, clazz, property);
374+ TemplateData data = PropertyTemplateData (
375+ _options, packageGraph, _templateHelper , lib, clazz, property);
367376
368377 _build (path.joinAll (property.href.split ('/' )), _templates.propertyTemplate,
369378 data);
370379 }
371380
372381 void generateTopLevelProperty (
373382 PackageGraph packageGraph, Library lib, TopLevelVariable property) {
374- TemplateData data =
375- TopLevelPropertyTemplateData ( _options, packageGraph, lib, property);
383+ TemplateData data = TopLevelPropertyTemplateData (
384+ _options, packageGraph, _templateHelper , lib, property);
376385
377386 _build (path.joinAll (property.href.split ('/' )),
378387 _templates.topLevelPropertyTemplate, data);
379388 }
380389
381390 void generateTopLevelConstant (
382391 PackageGraph packageGraph, Library lib, TopLevelVariable property) {
383- TemplateData data =
384- TopLevelConstTemplateData ( _options, packageGraph, lib, property);
392+ TemplateData data = TopLevelConstTemplateData (
393+ _options, packageGraph, _templateHelper , lib, property);
385394
386395 _build (path.joinAll (property.href.split ('/' )),
387396 _templates.topLevelConstantTemplate, data);
388397 }
389398
390399 void generateTypeDef (
391400 PackageGraph packageGraph, Library lib, Typedef typeDef) {
392- TemplateData data =
393- TypedefTemplateData ( _options, packageGraph, lib, typeDef);
401+ TemplateData data = TypedefTemplateData (
402+ _options, packageGraph, _templateHelper , lib, typeDef);
394403
395404 _build (path.joinAll (typeDef.href.split ('/' )), _templates.typeDefTemplate,
396405 data);
0 commit comments