Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,19 @@ import com.android.build.gradle.LibraryExtension
import io.gitlab.arturbosch.detekt.Detekt
import io.gitlab.arturbosch.detekt.extensions.DetektExtension
import tasks.docs.ExtractCodeSnippetsTask
import tasks.docs.ValidateCoreDocumentationTask
import utils.baseDetektConfigDirPath
import utils.baseDetektConfigPath
import utils.getDocsTemplateDir
import utils.isAndroidLib
import utils.isComposeLib
import utils.withVersionCatalogs


val docsDirPath = "docs"
val coreDocsTemplateDir = getDocsTemplateDir().resolve(
if (isComposeLib()) "compose-template" else "xml-template",
)

val kotlinCompilerDependencies = configurations.create("kotlinCompilerDependencies")

Expand All @@ -30,19 +36,31 @@ tasks.register<ExtractCodeSnippetsTask>("collectCodeSnippets") {
val namespace = project.extensions.getByType(LibraryExtension::class.java).namespace.orEmpty()
xmlNamespace.set(namespace)
}
outputKotlinDir.set(layout.buildDirectory.dir(docsDirPath))
outputXmlDir.set(layout.buildDirectory.dir(docsDirPath))
outputMeta.set(layout.buildDirectory.file("$docsDirPath/meta.json"))
outputKotlinDir.set(layout.buildDirectory.dir("$docsDirPath/assets/examples/kotlin"))
outputXmlDir.set(layout.buildDirectory.dir("$docsDirPath/assets/examples/xml"))
outputMeta.set(layout.buildDirectory.file("$docsDirPath/meta/samples.json"))
}

val docsJar = tasks.register<Jar>("docsJar") {
archiveClassifier.set("docs")

dependsOn("collectCodeSnippets")
dependsOn("collectCodeSnippets", "validateCoreDocumentation")

from(layout.buildDirectory.dir(docsDirPath)) {
into("META-INF/sdds-docs")
}
from(coreDocsTemplateDir) {
include("structure.json")
include("docs/**/*.md")
into("META-INF/sdds-docs")
}
}

tasks.register<ValidateCoreDocumentationTask>("validateCoreDocumentation") {
group = "verification"
description = "Проверяет соответствие structure.json Core markdown-шаблонам"
structureFile.set(coreDocsTemplateDir.resolve("structure.json"))
docsDirectory.set(coreDocsTemplateDir.resolve("docs"))
}

val docsVariantAttr: Attribute<String> = Attribute.of("com.sdds.docs.variant", String::class.java)
Expand All @@ -53,7 +71,7 @@ val docsElements by configurations.creating {
attributes {
attribute(Usage.USAGE_ATTRIBUTE, objects.named(Usage.JAVA_RUNTIME))
attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION))
attribute(docsVariantAttr, "snippets")
attribute(docsVariantAttr, "templates")
}

outgoing.artifact(docsJar)
Expand All @@ -79,4 +97,4 @@ configure<DetektExtension> {
if (file(integrationConfig).exists()) {
config = files(project.baseDetektConfigPath(), integrationConfig)
}
}
}

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,9 @@ val generateInstanceTask by tasks.register("docusaurusGenerate") {

copy {
duplicatesStrategy = DuplicatesStrategy.INCLUDE
from(overrideDocsDir)
from(overrideDocsDir) {
exclude("structure.json")
}
into(destinationDir)
}

Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import io.gitlab.arturbosch.detekt.Detekt
import io.gitlab.arturbosch.detekt.extensions.DetektExtension
import utils.baseDetektConfigDirPath
import utils.baseDetektConfigPath

tasks.withType<Detekt>().configureEach {
exclude("**/*Samples.kt")
}

configure<DetektExtension> {
val integrationConfig = "${project.baseDetektConfigDirPath()}/integration-config.yml"

if (file(integrationConfig).exists()) {
config = files(project.baseDetektConfigPath(), integrationConfig)
}
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import com.diffplug.gradle.spotless.SpotlessExtension
import com.diffplug.gradle.spotless.SpotlessPlugin
import utils.isSandboxIntegrationModule
import utils.withVersionCatalogs

apply<SpotlessPlugin>()
Expand All @@ -15,15 +14,10 @@ configure<SpotlessExtension> {

kotlin {
target("**/*.kt")
targetExclude("**/build/**", "**/buildSrc/**", "**/.*")
targetExclude("**/build/**", "**/buildSrc/**", "**/.sdds/**", "**/.*")
trimTrailingWhitespace()
indentWithSpaces()
endWithNewline()
val maxLineLengthValue = if (project.isSandboxIntegrationModule()) {
"disabled"
} else {
120
}
withVersionCatalogs {
ktlint(versions.staticAnalysis.ktlint.get())
.editorConfigOverride(
Expand All @@ -34,7 +28,7 @@ configure<SpotlessExtension> {
"ktlint_standard_package-name" to "disabled",
"ktlint_standard_enum-entry-name-case" to "disabled",
"ktlint_standard_filename" to "disabled",
"max_line_length" to maxLineLengthValue,
"max_line_length" to 120,
),
)
}
Expand Down
Loading
Loading