-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from SpineEventEngine/initial-content
Add initial content for the Chords library
- Loading branch information
Showing
47 changed files
with
6,883 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
# Set the default behavior, in case people don't have core.autocrlf set. | ||
* text=auto | ||
|
||
# Explicitly declare text files you want to always be normalized and converted | ||
# to native line endings on checkout. | ||
|
||
# Common formats | ||
*.html text | ||
*.xml text | ||
*.css text | ||
*.scss text | ||
*.js text | ||
*.properties text | ||
*.rtf text | ||
*.yaml text | ||
*.yml text | ||
*.md text | ||
|
||
LICENSE text | ||
|
||
# SQL scripts | ||
*.sql text | ||
|
||
# Java sources | ||
*.java text | ||
|
||
# Python sources | ||
*.py text | ||
|
||
# Gradle build files | ||
*.gradle text | ||
|
||
# Google protocol buffers | ||
*.proto text | ||
|
||
# Miscellaneous | ||
*.rb text | ||
|
||
# Declare files that will always have CRLF line endings on checkout. | ||
*.bat text eol=crlf | ||
|
||
# Declare files that will always have LF line endings on checkout. | ||
*.sh text eol=lf | ||
gradlew text eol=lf | ||
pull text eol=lf | ||
|
||
# Denote all files that are truly binary and should not be modified. | ||
*.png binary | ||
*.jpg binary | ||
*.gif binary | ||
*.swf binary | ||
*.jar binary | ||
*.desc binary | ||
|
||
*.scpt binary | ||
*.scssc binary | ||
|
||
# Encrypted files | ||
*.enc binary | ||
*.gpg binary | ||
*.weis binary |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
name: CI Build (under Ubuntu) | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- master | ||
|
||
jobs: | ||
build: | ||
|
||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up JDK 11 | ||
uses: actions/setup-java@v4 | ||
with: | ||
java-version: '11' | ||
distribution: 'temurin' | ||
|
||
- name: Build all libraries | ||
run: ./gradlew clean build --stacktrace |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
name: CI Build (under Windows) | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- master | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
build: | ||
|
||
runs-on: windows-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up JDK 11 | ||
uses: actions/setup-java@v4 | ||
with: | ||
java-version: '11' | ||
distribution: 'temurin' | ||
|
||
- name: Build all libraries | ||
shell: cmd | ||
run: gradlew.bat build --stacktrace |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
# | ||
# This file is used for two purposes: | ||
# 1. ignoring files in the `config` project. | ||
# 2. ignoring files in the projects that import `config` as a sub-module. | ||
# | ||
# Therefore, instructions below are superset of instructions required for all the projects. | ||
|
||
# IntelliJ IDEA modules and interim config files. | ||
*.iml | ||
.idea/*.xml | ||
.idea/.name | ||
.idea/artifacts | ||
.idea/libraries | ||
.idea/modules | ||
.idea/shelf | ||
|
||
codegen-plugins/.idea/** | ||
|
||
# Do not ignore the following IDEA settings | ||
!.idea/misc.xml | ||
!.idea/codeStyleSettings.xml | ||
!.idea/codeStyles/ | ||
!.idea/copyright/ | ||
|
||
# Gradle interim configs | ||
**/.gradle/** | ||
|
||
# Generated source code | ||
**/generated/** | ||
|
||
# Gradle build files | ||
**/build/** | ||
|
||
# Build files produced by the IDE | ||
**/out/** | ||
|
||
# Ignore Gradle GUI config | ||
gradle-app.setting | ||
|
||
# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) | ||
!gradle-wrapper.jar | ||
|
||
# Cache of project | ||
.gradletasknamecache | ||
|
||
# # Work around https://youtrack.jetbrains.com/issue/IDEA-116898 | ||
# gradle/wrapper/gradle-wrapper.properties | ||
|
||
# Spine internal directory for storing intermediate artifacts | ||
**/.spine/** | ||
|
||
# Spine model compiler auto-generated resources | ||
/tools/gradle-plugins/model-compiler/src/main/resources/spine-protoc.gradle | ||
|
||
# Login details to Maven repository. | ||
# Each workstation should have developer's login defined in this file. | ||
credentials.tar | ||
credentials.properties | ||
cloudrepo.properties | ||
deploy_key_rsa | ||
gcs-auth-key.json | ||
|
||
# Log files | ||
*.log | ||
|
||
# Package Files # | ||
*.war | ||
*.ear | ||
*.zip | ||
*.tar.gz | ||
*.rar | ||
|
||
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml | ||
hs_err_pid* | ||
|
||
.packages | ||
pubspec.lock | ||
|
||
# jenv java version settings | ||
.java-version | ||
|
||
# Firebase credetials | ||
/firebase/src/main/resources/firebase_credentials.json | ||
|
||
# Ignore Gradle project-specific cache directory | ||
.gradle | ||
|
||
# Ignore Gradle build output directory | ||
build |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,5 @@ | ||
# Chords | ||
UI components for Compose Multiplatform toolkit | ||
A suite of libraries for UI development with Compose Multiplatform toolkit | ||
|
||
This suite contains the following libraries: | ||
- [chords](chords/README.md) — UI components for Compose Multiplatform toolkit. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
/* | ||
* Copyright (c) 2024 TeamDev. All rights reserved. | ||
* TeamDev PROPRIETARY and CONFIDENTIAL. | ||
* Use is subject to license terms. | ||
*/ | ||
|
||
plugins { | ||
`kotlin-dsl` | ||
|
||
// NOTE: If changing Kotlin version here, make sure to update the same in | ||
// the `kotlinVersion` variable below. | ||
kotlin("jvm") version "1.8.20" apply false | ||
} | ||
|
||
repositories { | ||
mavenCentral() | ||
gradlePluginPortal() | ||
} | ||
|
||
/** | ||
* A version of the Kotlin language. | ||
* | ||
* NOTE: If updating here, make sure to also update the same in the `plugins` | ||
* section above. | ||
*/ | ||
val kotlinVersion = "1.8.20" | ||
|
||
/** | ||
* A version of the Spine Gradle plugin. | ||
* | ||
*/ | ||
val spineVersion = "1.9.0" | ||
|
||
/** | ||
* A version of detekt (static code analysis tool for Kotlin). | ||
* | ||
* See [https://github.com/detekt/detekt](https://github.com/detekt/detekt) | ||
*/ | ||
val detektVersion = "1.23.0" | ||
|
||
/** | ||
* The version of the Jib Gradle plugin. | ||
*/ | ||
val jibVersion = "3.2.1" | ||
|
||
/** | ||
* The version of the Kotest library. | ||
*/ | ||
val kotestPluginVersion = "0.4.10" | ||
|
||
dependencies { | ||
implementation("io.spine.tools:spine-bootstrap:${spineVersion}") | ||
implementation("org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:$kotlinVersion") | ||
implementation("io.gitlab.arturbosch.detekt:detekt-gradle-plugin:$detektVersion") | ||
implementation("gradle.plugin.com.google.cloud.tools:jib-gradle-plugin:${jibVersion}") | ||
implementation("io.kotest:kotest-gradle-plugin:$kotestPluginVersion") | ||
} |
20 changes: 20 additions & 0 deletions
20
buildSrc/src/main/kotlin/io/spine/chords/dependency/Kotest.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
/* | ||
* Copyright (c) 2024 TeamDev. All rights reserved. | ||
* TeamDev PROPRIETARY and CONFIDENTIAL. | ||
* Use is subject to license terms. | ||
*/ | ||
|
||
package io.spine.chords.dependency | ||
|
||
/** | ||
* Testing framework for Kotlin. | ||
* | ||
* @see <a href="https://kotest.io/">Kotest site</a> | ||
*/ | ||
object Kotest { | ||
private const val version = "5.8.0" | ||
|
||
object Runner { | ||
const val lib = "io.kotest:kotest-runner-junit5:$version" | ||
} | ||
} |
15 changes: 15 additions & 0 deletions
15
buildSrc/src/main/kotlin/io/spine/chords/dependency/Material3.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
/* | ||
* Copyright (c) 2024 TeamDev. All rights reserved. | ||
* TeamDev PROPRIETARY and CONFIDENTIAL. | ||
* Use is subject to license terms. | ||
*/ | ||
|
||
package io.spine.chords.dependency | ||
|
||
// https://github.com/JetBrains/compose-jb | ||
object Material3 { | ||
object Desktop { | ||
private const val version = "1.5.12" | ||
const val lib = "org.jetbrains.compose.material3:material3-desktop:${version}" | ||
} | ||
} |
33 changes: 33 additions & 0 deletions
33
buildSrc/src/main/kotlin/io/spine/chords/detekt-code-analysis.gradle.kts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
/* | ||
* Copyright (c) 2024 TeamDev. All rights reserved. | ||
* TeamDev PROPRIETARY and CONFIDENTIAL. | ||
* Use is subject to license terms. | ||
*/ | ||
|
||
import io.gitlab.arturbosch.detekt.Detekt | ||
|
||
/** | ||
* Sets up Kotlin code analysis with detekt. | ||
* See https://github.com/detekt/detekt | ||
*/ | ||
|
||
plugins { | ||
id("io.gitlab.arturbosch.detekt") | ||
} | ||
|
||
detekt { | ||
buildUponDefaultConfig = true | ||
config.setFrom("${rootDir}/quality/detekt-config.yml") | ||
} | ||
|
||
tasks { | ||
withType<Detekt>().configureEach { | ||
reports { | ||
html.required.set(true) // Only HTML report is generated. | ||
xml.required.set(false) | ||
txt.required.set(false) | ||
sarif.required.set(false) | ||
md.required.set(false) | ||
} | ||
} | ||
} |
36 changes: 36 additions & 0 deletions
36
buildSrc/src/main/kotlin/io/spine/chords/kotlin-settings.gradle.kts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
/* | ||
* Copyright (c) 2024 TeamDev. All rights reserved. | ||
* TeamDev PROPRIETARY and CONFIDENTIAL. | ||
* Use is subject to license terms. | ||
*/ | ||
|
||
import org.gradle.kotlin.dsl.repositories | ||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile | ||
|
||
/** | ||
* Configures Kotlin-related plugins and tasks. | ||
*/ | ||
|
||
plugins { | ||
kotlin("jvm") | ||
id("detekt-code-analysis") | ||
} | ||
|
||
repositories { | ||
mavenCentral() | ||
} | ||
|
||
tasks.withType<KotlinCompile> { | ||
kotlinOptions { | ||
jvmTarget = "11" | ||
freeCompilerArgs = listOf("-Xcontext-receivers") | ||
} | ||
} | ||
|
||
tasks.withType<Test> { | ||
useJUnitPlatform() | ||
} | ||
|
||
kotlin { | ||
explicitApi() | ||
} |
Oops, something went wrong.