aboutsummaryrefslogtreecommitdiff
path: root/plugins/templating
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/templating')
-rw-r--r--plugins/templating/api/templating.api14
-rw-r--r--plugins/templating/src/main/kotlin/templates/JsonElementBasedTemplateProcessingStrategy.kt6
-rw-r--r--plugins/templating/src/main/kotlin/templates/ProjectNameSubstitutor.kt13
-rw-r--r--plugins/templating/src/main/kotlin/templates/TemplatingPlugin.kt11
-rw-r--r--plugins/templating/src/test/kotlin/templates/AddToSearchCommandResolutionTest.kt2
5 files changed, 25 insertions, 21 deletions
diff --git a/plugins/templating/api/templating.api b/plugins/templating/api/templating.api
index ecf4a0b6..0965020b 100644
--- a/plugins/templating/api/templating.api
+++ b/plugins/templating/api/templating.api
@@ -8,13 +8,6 @@ public abstract class org/jetbrains/dokka/allModulesPage/templates/BaseJsonNavig
public fun process (Ljava/io/File;Ljava/io/File;Lorg/jetbrains/dokka/DokkaConfiguration$DokkaModuleDescription;)Z
}
-public final class org/jetbrains/dokka/allModulesPage/templates/NavigationSearchTemplateStrategy : org/jetbrains/dokka/allModulesPage/templates/BaseJsonNavigationTemplateProcessingStrategy {
- public fun <init> (Lorg/jetbrains/dokka/plugability/DokkaContext;)V
- public final fun getDokkaContext ()Lorg/jetbrains/dokka/plugability/DokkaContext;
- public fun getNavigationFileNameWithoutExtension ()Ljava/lang/String;
- public fun getPath ()Ljava/lang/String;
-}
-
public final class org/jetbrains/dokka/allModulesPage/templates/PackageListProcessingStrategy : org/jetbrains/dokka/templates/TemplateProcessingStrategy {
public fun <init> (Lorg/jetbrains/dokka/plugability/DokkaContext;)V
public fun finish (Ljava/io/File;)V
@@ -133,10 +126,10 @@ public final class org/jetbrains/dokka/templates/TemplatingPlugin : org/jetbrain
public final fun getDirectiveBasedHtmlTemplateProcessingStrategy ()Lorg/jetbrains/dokka/plugability/Extension;
public final fun getFallbackProcessingStrategy ()Lorg/jetbrains/dokka/plugability/Extension;
public final fun getMultimoduleTemplateProcessor ()Lorg/jetbrains/dokka/plugability/ExtensionPoint;
- public final fun getNavigationSearchTemplateStrategy ()Lorg/jetbrains/dokka/plugability/Extension;
public final fun getPackageListProcessingStrategy ()Lorg/jetbrains/dokka/plugability/Extension;
public final fun getPagesSearchTemplateStrategy ()Lorg/jetbrains/dokka/plugability/Extension;
public final fun getPathToRootSubstitutor ()Lorg/jetbrains/dokka/plugability/Extension;
+ public final fun getProjectNameSubstitutor ()Lorg/jetbrains/dokka/plugability/Extension;
public final fun getSourcesetDependencyProcessingStrategy ()Lorg/jetbrains/dokka/plugability/Extension;
public final fun getSubmoduleTemplateProcessor ()Lorg/jetbrains/dokka/plugability/ExtensionPoint;
public final fun getSubstitutionCommandHandler ()Lorg/jetbrains/dokka/plugability/Extension;
@@ -158,6 +151,11 @@ public final class org/jetbrains/dokka/templates/TemplatingResult {
public fun toString ()Ljava/lang/String;
}
+public final class templates/ProjectNameSubstitutor : org/jetbrains/dokka/templates/Substitutor {
+ public fun <init> (Lorg/jetbrains/dokka/plugability/DokkaContext;)V
+ public fun trySubstitute (Lorg/jetbrains/dokka/templates/TemplatingContext;Lkotlin/text/MatchResult;)Ljava/lang/String;
+}
+
public final class templates/SourcesetDependencyProcessingStrategy : org/jetbrains/dokka/templates/TemplateProcessingStrategy {
public fun <init> (Lorg/jetbrains/dokka/plugability/DokkaContext;)V
public fun finish (Ljava/io/File;)V
diff --git a/plugins/templating/src/main/kotlin/templates/JsonElementBasedTemplateProcessingStrategy.kt b/plugins/templating/src/main/kotlin/templates/JsonElementBasedTemplateProcessingStrategy.kt
index 9e064a6a..533c12f6 100644
--- a/plugins/templating/src/main/kotlin/templates/JsonElementBasedTemplateProcessingStrategy.kt
+++ b/plugins/templating/src/main/kotlin/templates/JsonElementBasedTemplateProcessingStrategy.kt
@@ -53,12 +53,6 @@ abstract class BaseJsonNavigationTemplateProcessingStrategy(val context: DokkaCo
}
-class NavigationSearchTemplateStrategy(val dokkaContext: DokkaContext) :
- BaseJsonNavigationTemplateProcessingStrategy(dokkaContext) {
- override val navigationFileNameWithoutExtension: String = "navigation-pane"
- override val path: String = "scripts"
-}
-
class PagesSearchTemplateStrategy(val dokkaContext: DokkaContext) :
BaseJsonNavigationTemplateProcessingStrategy(dokkaContext) {
override val navigationFileNameWithoutExtension: String = "pages"
diff --git a/plugins/templating/src/main/kotlin/templates/ProjectNameSubstitutor.kt b/plugins/templating/src/main/kotlin/templates/ProjectNameSubstitutor.kt
new file mode 100644
index 00000000..8fc12b6c
--- /dev/null
+++ b/plugins/templating/src/main/kotlin/templates/ProjectNameSubstitutor.kt
@@ -0,0 +1,13 @@
+package templates
+
+import org.jetbrains.dokka.base.templating.ProjectNameSubstitutionCommand
+import org.jetbrains.dokka.base.templating.SubstitutionCommand
+import org.jetbrains.dokka.plugability.DokkaContext
+import org.jetbrains.dokka.templates.Substitutor
+import org.jetbrains.dokka.templates.TemplatingContext
+
+class ProjectNameSubstitutor(private val dokkaContext: DokkaContext) : Substitutor {
+
+ override fun trySubstitute(context: TemplatingContext<SubstitutionCommand>, match: MatchResult): String? =
+ dokkaContext.configuration.moduleName.takeIf { context.command is ProjectNameSubstitutionCommand }
+} \ No newline at end of file
diff --git a/plugins/templating/src/main/kotlin/templates/TemplatingPlugin.kt b/plugins/templating/src/main/kotlin/templates/TemplatingPlugin.kt
index 0842bb2b..1a02d41f 100644
--- a/plugins/templating/src/main/kotlin/templates/TemplatingPlugin.kt
+++ b/plugins/templating/src/main/kotlin/templates/TemplatingPlugin.kt
@@ -1,9 +1,9 @@
package org.jetbrains.dokka.templates
-import org.jetbrains.dokka.allModulesPage.templates.NavigationSearchTemplateStrategy
import org.jetbrains.dokka.allModulesPage.templates.PackageListProcessingStrategy
import org.jetbrains.dokka.allModulesPage.templates.PagesSearchTemplateStrategy
import org.jetbrains.dokka.plugability.DokkaPlugin
+import templates.ProjectNameSubstitutor
import templates.SourcesetDependencyProcessingStrategy
class TemplatingPlugin : DokkaPlugin() {
@@ -28,11 +28,6 @@ class TemplatingPlugin : DokkaPlugin() {
before(fallbackProcessingStrategy)
}
}
- val navigationSearchTemplateStrategy by extending {
- templateProcessingStrategy providing ::NavigationSearchTemplateStrategy order {
- before(fallbackProcessingStrategy)
- }
- }
val sourcesetDependencyProcessingStrategy by extending {
templateProcessingStrategy providing ::SourcesetDependencyProcessingStrategy order {
@@ -60,6 +55,10 @@ class TemplatingPlugin : DokkaPlugin() {
substitutor providing ::PathToRootSubstitutor
}
+ val projectNameSubstitutor by extending {
+ substitutor providing ::ProjectNameSubstitutor
+ }
+
val addToNavigationCommandHandler by extending {
directiveBasedCommandHandlers providing ::AddToNavigationCommandHandler
}
diff --git a/plugins/templating/src/test/kotlin/templates/AddToSearchCommandResolutionTest.kt b/plugins/templating/src/test/kotlin/templates/AddToSearchCommandResolutionTest.kt
index aba668f7..96fcc8dd 100644
--- a/plugins/templating/src/test/kotlin/templates/AddToSearchCommandResolutionTest.kt
+++ b/plugins/templating/src/test/kotlin/templates/AddToSearchCommandResolutionTest.kt
@@ -32,7 +32,7 @@ class AddToSearchCommandResolutionTest : TemplatingAbstractTest() {
val folder: TemporaryFolder = TemporaryFolder()
@ParameterizedTest
- @ValueSource(strings = ["navigation-pane.json", "pages.json"])
+ @ValueSource(strings = ["pages.json"])
fun `should merge navigation templates`(fileName: String) {
val (module1Navigation, module2Navigation) = setupTestDirectoriesWithContent(fileName)