summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorHyunWoo Lee <l2hyunwoo@gmail.com>2025-12-22 16:29:31 +0300
committerHyunWoo Lee <l2hyunwoo@gmail.com>2025-12-22 16:29:31 +0300
commit3da47b8d10890af4e07c10184534de5765d9367e (patch)
treebadf95a37418ed5ab74ca3c191cf7ab0b1465897 /docs
parentefe816e8c86132011ce0ae776b90d85e49b30b59 (diff)
downloadcolorpicker-compose-3da47b8d10890af4e07c10184534de5765d9367e.tar.xz
chore: add docs module
Diffstat (limited to 'docs')
-rw-r--r--docs/build.gradle.kts79
1 files changed, 79 insertions, 0 deletions
diff --git a/docs/build.gradle.kts b/docs/build.gradle.kts
new file mode 100644
index 0000000..c228de4
--- /dev/null
+++ b/docs/build.gradle.kts
@@ -0,0 +1,79 @@
+/*
+ * Designed and developed by 2022 skydoves (Jaewoong Eum)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import com.github.skydoves.colorpicker.compose.Configuration
+
+plugins {
+ id(libs.plugins.kotlin.multiplatform.get().pluginId)
+ id(libs.plugins.jetbrains.compose.get().pluginId)
+ id(libs.plugins.compose.compiler.get().pluginId)
+}
+
+// Generate BuildConfig with version information from Configuration
+val generateBuildConfig by tasks.registering {
+ val outputDir = layout.buildDirectory.dir("generated/source/buildConfig/wasmJsMain/kotlin")
+ outputs.dir(outputDir)
+
+ doLast {
+ val buildConfigDir = outputDir.get().asFile.resolve("docs/config")
+ buildConfigDir.mkdirs()
+
+ val buildConfigFile = buildConfigDir.resolve("BuildConfig.kt")
+ buildConfigFile.writeText(
+ """
+ |package docs.config
+ |
+ |object BuildConfig {
+ | const val VERSION = "${Configuration.versionName}"
+ |}
+ """.trimMargin()
+ )
+ }
+}
+
+kotlin {
+ wasmJs {
+ browser {
+ commonWebpackConfig {
+ outputFileName = "colorpicker-docs.js"
+ }
+ }
+ binaries.executable()
+ }
+
+ sourceSets {
+ commonMain.dependencies {
+ implementation(compose.components.resources)
+ }
+
+ wasmJsMain {
+ kotlin.srcDir(generateBuildConfig.map { it.outputs.files.singleFile })
+
+ dependencies {
+ implementation(project(":colorpicker-compose"))
+
+ implementation(compose.runtime)
+ implementation(compose.foundation)
+ implementation(compose.ui)
+ implementation(compose.material3)
+ implementation(compose.materialIconsExtended)
+ }
+ }
+ }
+}
+
+tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().configureEach {
+ dependsOn(generateBuildConfig)
+}