From 430d7d6453a0b63dcabecd54aea915410cd35103 Mon Sep 17 00:00:00 2001 From: Kamil Doległo Date: Tue, 5 May 2020 11:53:16 +0200 Subject: Add a draft version of divergent rendering --- core/src/main/kotlin/pages/ContentNodes.kt | 42 +++++- core/src/main/kotlin/pages/utils.kt | 30 ++++ plugins/base/src/main/kotlin/DokkaBase.kt | 1 + .../src/main/kotlin/renderers/DefaultRenderer.kt | 21 ++- .../src/main/kotlin/renderers/html/HtmlRenderer.kt | 95 ++++++++++-- .../kotlin/signatures/KotlinSignatureProvider.kt | 2 +- .../merger/SameMethodNamePageMergerStrategy.kt | 40 ++--- .../pages/sourcelinks/SourceLinksTransformer.kt | 2 +- .../documentables/DefaultPageCreator.kt | 77 ++++++---- .../documentables/PageContentBuilder.kt | 166 ++++++++++++++++++--- .../kotlin/linkableContent/LinkableContentTest.kt | 17 ++- plugins/gfm/src/main/kotlin/GfmPlugin.kt | 16 +- 12 files changed, 411 insertions(+), 98 deletions(-) create mode 100644 core/src/main/kotlin/pages/utils.kt diff --git a/core/src/main/kotlin/pages/ContentNodes.kt b/core/src/main/kotlin/pages/ContentNodes.kt index bb669199..e7f027e3 100644 --- a/core/src/main/kotlin/pages/ContentNodes.kt +++ b/core/src/main/kotlin/pages/ContentNodes.kt @@ -90,7 +90,7 @@ data class ContentResolvedLink( copy(extra = newExtras) } -/** All links that do not need to be resolved */ +/** Embedded resources like images */ data class ContentEmbeddedResource( override val children: List = emptyList(), val address: String, @@ -144,6 +144,43 @@ data class ContentGroup( override fun withNewExtras(newExtras: PropertyContainer): ContentGroup = copy(extra = newExtras) } +/** + * @property groupName is used for finding and copying [ContentDivergentInstance]s when merging [ContentPage]s + */ +data class ContentDivergentGroup( + override val children: List, + override val dci: DCI, + override val style: Set