diff --git a/lib/src/html/html_generator_instance.dart b/lib/src/html/html_generator_instance.dart index 3fbe70779e..79052eccbc 100644 --- a/lib/src/html/html_generator_instance.dart +++ b/lib/src/html/html_generator_instance.dart @@ -15,8 +15,8 @@ import 'package:dartdoc/src/html/templates.dart'; import 'package:dartdoc/src/logging.dart'; import 'package:dartdoc/src/model.dart'; import 'package:dartdoc/src/model_utils.dart'; -import 'package:dartdoc/src/third_party/pkg/mustache4dart/lib/mustache4dart.dart'; import 'package:dartdoc/src/warnings.dart'; +import 'package:mustache/mustache.dart'; import 'package:path/path.dart' as pathLib; typedef void FileWriter(String path, Object content, {bool allowOverwrite}); @@ -377,9 +377,8 @@ class HtmlGeneratorInstance { } } - void _build(String filename, TemplateRenderer template, TemplateData data) { - String content = template(data, - assumeNullNonExistingProperty: false, errorOnMissingProperty: true); + void _build(String filename, Template template, TemplateData data) { + String content = template.renderString(data); _writer(filename, content); if (data.self is Indexable) _indexedElements.add(data.self as Indexable); diff --git a/lib/src/html/templates.dart b/lib/src/html/templates.dart index 55f1a2f3eb..178c40e161 100644 --- a/lib/src/html/templates.dart +++ b/lib/src/html/templates.dart @@ -8,7 +8,7 @@ import 'dart:async' show Future; import 'dart:io' show File; import 'package:dartdoc/src/html/resource_loader.dart' as loader; -import 'package:dartdoc/src/third_party/pkg/mustache4dart/lib/mustache4dart.dart'; +import 'package:mustache/mustache.dart'; const _partials = const [ 'callable', @@ -83,21 +83,21 @@ Future _getTemplateFile(String templateFileName) => loader.loadAsString('package:dartdoc/templates/$templateFileName'); class Templates { - final TemplateRenderer categoryTemplate; - final TemplateRenderer classTemplate; - final TemplateRenderer enumTemplate; - final TemplateRenderer constantTemplate; - final TemplateRenderer constructorTemplate; - final TemplateRenderer errorTemplate; - final TemplateRenderer functionTemplate; - final TemplateRenderer indexTemplate; - final TemplateRenderer libraryTemplate; - final TemplateRenderer methodTemplate; - final TemplateRenderer mixinTemplate; - final TemplateRenderer propertyTemplate; - final TemplateRenderer topLevelConstantTemplate; - final TemplateRenderer topLevelPropertyTemplate; - final TemplateRenderer typeDefTemplate; + final Template categoryTemplate; + final Template classTemplate; + final Template enumTemplate; + final Template constantTemplate; + final Template constructorTemplate; + final Template errorTemplate; + final Template functionTemplate; + final Template indexTemplate; + final Template libraryTemplate; + final Template methodTemplate; + final Template mixinTemplate; + final Template propertyTemplate; + final Template topLevelConstantTemplate; + final Template topLevelPropertyTemplate; + final Template typeDefTemplate; static Future create( {List headerPaths, @@ -106,17 +106,17 @@ class Templates { var partials = await _loadPartials(headerPaths, footerPaths, footerTextPaths); - String _partial(String name) { + Template _partial(String name) { String partial = partials[name]; if (partial == null || partial.isEmpty) { throw new StateError('Did not find partial "$name"'); } - return partial; + return Template(partial); } - Future _loadTemplate(String templatePath) async { + Future