@@ -8,6 +8,7 @@ import 'package:dartdoc/src/model/model.dart';
88abstract class HtmlOptions {
99 String get relCanonicalPrefix;
1010 String get toolVersion;
11+ bool get useBaseHref;
1112}
1213
1314abstract class TemplateData <T extends Documentable > {
@@ -38,6 +39,7 @@ abstract class TemplateData<T extends Documentable> {
3839 T get self;
3940 String get version => htmlOptions.toolVersion;
4041 String get relCanonicalPrefix => htmlOptions.relCanonicalPrefix;
42+ bool get useBaseHref => htmlOptions.useBaseHref;
4143
4244 String _layoutTitle (String name, String kind, bool isDeprecated) =>
4345 _renderHelper.composeLayoutTitle (name, kind, isDeprecated);
@@ -67,9 +69,9 @@ class PackageTemplateData extends TemplateData<Package> {
6769 bool get hasHomepage => package.hasHomepage;
6870 String get homepage => package.homepage;
6971
70- /// `null` for packages because they are at the root – not needed
72+ /// empty for packages because they are at the root – not needed
7173 @override
72- String get htmlBase => null ;
74+ String get htmlBase => '' ;
7375}
7476
7577class CategoryTemplateData extends TemplateData <Category > {
@@ -83,7 +85,7 @@ class CategoryTemplateData extends TemplateData<Category> {
8385 String get title => '${category .name } ${category .kind } - Dart API' ;
8486
8587 @override
86- String get htmlBase => '..' ;
88+ String get htmlBase => '../ ' ;
8789
8890 @override
8991 String get layoutTitle => _layoutTitle (category.name, category.kind, false );
@@ -109,7 +111,7 @@ class LibraryTemplateData extends TemplateData<Library> {
109111 @override
110112 String get title => '${library .name } library - Dart API' ;
111113 @override
112- String get htmlBase => '..' ;
114+ String get htmlBase => '../ ' ;
113115 @override
114116 String get metaDescription =>
115117 '${library .name } library API docs, for the Dart programming language.' ;
@@ -164,7 +166,7 @@ class ClassTemplateData<T extends Class> extends TemplateData<T> {
164166 @override
165167 List get navLinks => [packageGraph.defaultPackage, library];
166168 @override
167- String get htmlBase => '..' ;
169+ String get htmlBase => '../ ' ;
168170
169171 Class get objectType {
170172 if (_objectType != null ) {
@@ -207,7 +209,7 @@ class ExtensionTemplateData<T extends Extension> extends TemplateData<T> {
207209 @override
208210 List get navLinks => [packageGraph.defaultPackage, library];
209211 @override
210- String get htmlBase => '..' ;
212+ String get htmlBase => '../ ' ;
211213}
212214
213215class ConstructorTemplateData extends TemplateData <Constructor > {
@@ -235,7 +237,7 @@ class ConstructorTemplateData extends TemplateData<Constructor> {
235237 List get navLinksWithGenerics => [clazz];
236238 @override
237239 @override
238- String get htmlBase => '../..' ;
240+ String get htmlBase => '../../ ' ;
239241 @override
240242 String get title => '${constructor .name } constructor - ${clazz .name } class - '
241243 '${library .name } library - Dart API' ;
@@ -279,7 +281,7 @@ class FunctionTemplateData extends TemplateData<ModelFunction> {
279281 @override
280282 List get navLinks => [packageGraph.defaultPackage, library];
281283 @override
282- String get htmlBase => '..' ;
284+ String get htmlBase => '../ ' ;
283285}
284286
285287class MethodTemplateData extends TemplateData <Method > {
@@ -317,7 +319,7 @@ class MethodTemplateData extends TemplateData<Method> {
317319 @override
318320 List get navLinksWithGenerics => [container];
319321 @override
320- String get htmlBase => '../..' ;
322+ String get htmlBase => '../../ ' ;
321323}
322324
323325class PropertyTemplateData extends TemplateData <Field > {
@@ -356,7 +358,7 @@ class PropertyTemplateData extends TemplateData<Field> {
356358 @override
357359 List get navLinksWithGenerics => [container];
358360 @override
359- String get htmlBase => '../..' ;
361+ String get htmlBase => '../../ ' ;
360362
361363 String get type => 'property' ;
362364}
@@ -400,7 +402,7 @@ class TypedefTemplateData extends TemplateData<Typedef> {
400402 @override
401403 List get navLinks => [packageGraph.defaultPackage, library];
402404 @override
403- String get htmlBase => '..' ;
405+ String get htmlBase => '../ ' ;
404406}
405407
406408class TopLevelPropertyTemplateData extends TemplateData <TopLevelVariable > {
@@ -431,7 +433,7 @@ class TopLevelPropertyTemplateData extends TemplateData<TopLevelVariable> {
431433 @override
432434 List get navLinks => [packageGraph.defaultPackage, library];
433435 @override
434- String get htmlBase => '..' ;
436+ String get htmlBase => '../ ' ;
435437
436438 String get _type => 'property' ;
437439}
0 commit comments