From 8e5c63d035ef44a269b8c43430f43f5c8eebfb63 Mon Sep 17 00:00:00 2001 From: Ignat Beresnev Date: Fri, 10 Nov 2023 11:46:54 +0100 Subject: Restructure the project to utilize included builds (#3174) * Refactor and simplify artifact publishing * Update Gradle to 8.4 * Refactor and simplify convention plugins and build scripts Fixes #3132 --------- Co-authored-by: Adam <897017+aSemy@users.noreply.github.com> Co-authored-by: Oleg Yukhnevich --- plugins/mathjax/src/main/kotlin/MathjaxPlugin.kt | 67 ---------------------- .../org.jetbrains.dokka.plugability.DokkaPlugin | 5 -- 2 files changed, 72 deletions(-) delete mode 100644 plugins/mathjax/src/main/kotlin/MathjaxPlugin.kt delete mode 100644 plugins/mathjax/src/main/resources/META-INF/services/org.jetbrains.dokka.plugability.DokkaPlugin (limited to 'plugins/mathjax/src/main') diff --git a/plugins/mathjax/src/main/kotlin/MathjaxPlugin.kt b/plugins/mathjax/src/main/kotlin/MathjaxPlugin.kt deleted file mode 100644 index 2a7ed6a4..00000000 --- a/plugins/mathjax/src/main/kotlin/MathjaxPlugin.kt +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. - */ - -package org.jetbrains.dokka.mathjax - - -import org.jetbrains.dokka.CoreExtensions -import org.jetbrains.dokka.DokkaConfiguration -import org.jetbrains.dokka.base.DokkaBase -import org.jetbrains.dokka.base.transformers.pages.tags.CustomTagContentProvider -import org.jetbrains.dokka.base.translators.documentables.PageContentBuilder.DocumentableContentBuilder -import org.jetbrains.dokka.model.doc.CustomTagWrapper -import org.jetbrains.dokka.pages.ContentPage -import org.jetbrains.dokka.pages.RootPageNode -import org.jetbrains.dokka.pages.WithDocumentables -import org.jetbrains.dokka.plugability.DokkaPlugin -import org.jetbrains.dokka.plugability.DokkaPluginApiPreview -import org.jetbrains.dokka.plugability.Extension -import org.jetbrains.dokka.plugability.PluginApiPreviewAcknowledgement -import org.jetbrains.dokka.transformers.pages.PageTransformer - -public class MathjaxPlugin : DokkaPlugin() { - - public val transformer: Extension by extending { - CoreExtensions.pageTransformer with MathjaxTransformer - } - - public val mathjaxTagContentProvider: Extension by extending { - plugin().customTagContentProvider with MathjaxTagContentProvider order { - before(plugin().sinceKotlinTagContentProvider) - } - } - - @OptIn(DokkaPluginApiPreview::class) - override fun pluginApiPreviewAcknowledgement(): PluginApiPreviewAcknowledgement = - PluginApiPreviewAcknowledgement -} - -private const val ANNOTATION = "usesMathJax" -internal const val LIB_PATH = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.6/MathJax.js?config=TeX-AMS_SVG&latest" - -public object MathjaxTransformer : PageTransformer { - - override fun invoke(input: RootPageNode): RootPageNode = input.transformContentPagesTree { - it.modified( - embeddedResources = it.embeddedResources + if (it.isNeedingMathjax) listOf(LIB_PATH) else emptyList() - ) - } - - private val ContentPage.isNeedingMathjax - get() = (this as WithDocumentables).documentables.any { it.documentation.values - .flatMap { it.children } - .any { (it as? CustomTagWrapper)?.name == ANNOTATION } } -} - -public object MathjaxTagContentProvider : CustomTagContentProvider { - - override fun isApplicable(customTag: CustomTagWrapper): Boolean = customTag.name == ANNOTATION - - override fun DocumentableContentBuilder.contentForDescription( - sourceSet: DokkaConfiguration.DokkaSourceSet, - customTag: CustomTagWrapper - ) { - comment(customTag.root, sourceSets = setOf(sourceSet)) - } -} diff --git a/plugins/mathjax/src/main/resources/META-INF/services/org.jetbrains.dokka.plugability.DokkaPlugin b/plugins/mathjax/src/main/resources/META-INF/services/org.jetbrains.dokka.plugability.DokkaPlugin deleted file mode 100644 index 4a9d7a9e..00000000 --- a/plugins/mathjax/src/main/resources/META-INF/services/org.jetbrains.dokka.plugability.DokkaPlugin +++ /dev/null @@ -1,5 +0,0 @@ -# -# Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license. -# - -org.jetbrains.dokka.mathjax.MathjaxPlugin -- cgit