From cbed7d1899481ec60256d9e26d47d75a3974f9ef Mon Sep 17 00:00:00 2001 From: Simon Ogorodnik Date: Thu, 4 Oct 2018 06:43:27 +0300 Subject: Hacky sort platforms on display --- .../kotlin/Formats/KotlinWebsiteHtmlFormatService.kt | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'core/src/main/kotlin') diff --git a/core/src/main/kotlin/Formats/KotlinWebsiteHtmlFormatService.kt b/core/src/main/kotlin/Formats/KotlinWebsiteHtmlFormatService.kt index b12075fb..3b2b2897 100644 --- a/core/src/main/kotlin/Formats/KotlinWebsiteHtmlFormatService.kt +++ b/core/src/main/kotlin/Formats/KotlinWebsiteHtmlFormatService.kt @@ -159,7 +159,9 @@ open class KotlinWebsiteHtmlOutputBuilder( val platformToVersion = calculatePlatforms(platforms).platformToVersion div(to, "tags") { div(to, "spacer") {} - platformToVersion.entries.forEach { (platform, version) -> + platformToVersion.entries.sortedBy { + platformSortWeight(it.key) + }.forEach { (platform, version) -> div(to, "tags__tag platform tag-value-$platform", otherAttributes = " data-tag-version=\"$version\"") { to.append(platform) @@ -184,8 +186,11 @@ open class KotlinWebsiteHtmlOutputBuilder( override fun appendPlatformsAsText(platforms: PlatformsData) { appendHeader(5) { - to.append("For ") - platforms.keys.filterNot { it.isJREVersion() }.joinTo(to) + val filtered = platforms.keys.filterNot { it.isJREVersion() }.sortedBy { platformSortWeight(it) } + if (filtered.isNotEmpty()) { + to.append("For ") + filtered.joinTo(to) + } } } @@ -225,6 +230,14 @@ open class KotlinWebsiteHtmlOutputBuilder( block(platforms) } } + + fun platformSortWeight(name: String) = when(name.toLowerCase()) { + "common" -> 0 + "jvm" -> 1 + "js" -> 3 + "native" -> 4 + else -> 2 // This is hack to support JRE/JUnit and so on + } } class KotlinWebsiteHtmlFormatService @Inject constructor( -- cgit