diff --git a/.github/workflows/d4l-ci-latest-version.yml b/.github/workflows/d4l-ci-latest-version.yml
index 35b9ea6..19aee2c 100644
--- a/.github/workflows/d4l-ci-latest-version.yml
+++ b/.github/workflows/d4l-ci-latest-version.yml
@@ -9,11 +9,13 @@ on:
jobs:
latest-version:
- runs-on: [self-hosted, macos]
+ runs-on: macos-latest
env:
- PACKAGE_REGISTRY_USERNAME: ${{ secrets.PACKAGE_REGISTRY_USERNAME }}
- PACKAGE_REGISTRY_TOKEN: ${{ secrets.PACKAGE_REGISTRY_TOKEN }}
+ PACKAGE_REGISTRY_DOWNLOAD_USERNAME: ${{ secrets.PACKAGE_REGISTRY_DOWNLOAD_USERNAME }}
+ PACKAGE_REGISTRY_DOWNLOAD_TOKEN: ${{ secrets.PACKAGE_REGISTRY_DOWNLOAD_TOKEN }}
+ PACKAGE_REGISTRY_UPLOAD_USERNAME: ${{ secrets.PACKAGE_REGISTRY_UPLOAD_USERNAME }}
+ PACKAGE_REGISTRY_UPLOAD_TOKEN: ${{ secrets.PACKAGE_REGISTRY_UPLOAD_TOKEN }}
steps:
- name: Display runner context
diff --git a/.github/workflows/d4l-ci-publish-release.yml b/.github/workflows/d4l-ci-publish-release.yml
index 6e101e2..2085d8d 100644
--- a/.github/workflows/d4l-ci-publish-release.yml
+++ b/.github/workflows/d4l-ci-publish-release.yml
@@ -8,11 +8,13 @@ on:
jobs:
publish-release:
- runs-on: [self-hosted, macos]
+ runs-on: macos-latest
env:
- PACKAGE_REGISTRY_USERNAME: ${{ secrets.PACKAGE_REGISTRY_USERNAME }}
- PACKAGE_REGISTRY_TOKEN: ${{ secrets.PACKAGE_REGISTRY_TOKEN }}
+ PACKAGE_REGISTRY_DOWNLOAD_USERNAME: ${{ secrets.PACKAGE_REGISTRY_DOWNLOAD_USERNAME }}
+ PACKAGE_REGISTRY_DOWNLOAD_TOKEN: ${{ secrets.PACKAGE_REGISTRY_DOWNLOAD_TOKEN }}
+ PACKAGE_REGISTRY_UPLOAD_USERNAME: ${{ secrets.PACKAGE_REGISTRY_UPLOAD_USERNAME }}
+ PACKAGE_REGISTRY_UPLOAD_TOKEN: ${{ secrets.PACKAGE_REGISTRY_UPLOAD_TOKEN }}
steps:
- name: Display runner context
diff --git a/.github/workflows/d4l-ci-pull-request-validation.yml b/.github/workflows/d4l-ci-pull-request-validation.yml
index 977747a..ace1480 100644
--- a/.github/workflows/d4l-ci-pull-request-validation.yml
+++ b/.github/workflows/d4l-ci-pull-request-validation.yml
@@ -10,11 +10,17 @@ on:
jobs:
pull-request-validation:
- runs-on: [self-hosted, macos]
+ runs-on: macos-latest
+
+ concurrency:
+ group: validation-${{ github.head_ref }}
+ cancel-in-progress: true
env:
- PACKAGE_REGISTRY_USERNAME: ${{ secrets.PACKAGE_REGISTRY_USERNAME }}
- PACKAGE_REGISTRY_TOKEN: ${{ secrets.PACKAGE_REGISTRY_TOKEN }}
+ PACKAGE_REGISTRY_DOWNLOAD_USERNAME: ${{ secrets.PACKAGE_REGISTRY_DOWNLOAD_USERNAME }}
+ PACKAGE_REGISTRY_DOWNLOAD_TOKEN: ${{ secrets.PACKAGE_REGISTRY_DOWNLOAD_TOKEN }}
+ PACKAGE_REGISTRY_UPLOAD_USERNAME: ${{ secrets.PACKAGE_REGISTRY_UPLOAD_USERNAME }}
+ PACKAGE_REGISTRY_UPLOAD_TOKEN: ${{ secrets.PACKAGE_REGISTRY_UPLOAD_TOKEN }}
steps:
- name: Display runner context
diff --git a/.gitignore b/.gitignore
index 87d22a4..ac414b0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
# Gradle
.gradle/
+.gradle/*
build/
out/
local.properties
@@ -16,7 +17,6 @@ local.properties
!.idea/codeStyles/
!.idea/encoding.xml
!.idea/copyright/
-!.idea/compiler.xml
# generated
diff --git a/.gradle/6.5/fileChanges/last-build.bin b/.gradle/6.5/fileChanges/last-build.bin
deleted file mode 100644
index f76dd23..0000000
Binary files a/.gradle/6.5/fileChanges/last-build.bin and /dev/null differ
diff --git a/.gradle/6.5/fileHashes/fileHashes.bin b/.gradle/6.5/fileHashes/fileHashes.bin
deleted file mode 100644
index 2ddaabd..0000000
Binary files a/.gradle/6.5/fileHashes/fileHashes.bin and /dev/null differ
diff --git a/.gradle/6.5/fileHashes/fileHashes.lock b/.gradle/6.5/fileHashes/fileHashes.lock
deleted file mode 100644
index 582b3a5..0000000
Binary files a/.gradle/6.5/fileHashes/fileHashes.lock and /dev/null differ
diff --git a/.gradle/6.5/gc.properties b/.gradle/6.5/gc.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/.gradle/6.8.3/fileChanges/last-build.bin b/.gradle/6.8.3/fileChanges/last-build.bin
deleted file mode 100644
index f76dd23..0000000
Binary files a/.gradle/6.8.3/fileChanges/last-build.bin and /dev/null differ
diff --git a/.gradle/6.8.3/fileHashes/fileHashes.bin b/.gradle/6.8.3/fileHashes/fileHashes.bin
deleted file mode 100644
index 8d69f2c..0000000
Binary files a/.gradle/6.8.3/fileHashes/fileHashes.bin and /dev/null differ
diff --git a/.gradle/6.8.3/fileHashes/fileHashes.lock b/.gradle/6.8.3/fileHashes/fileHashes.lock
deleted file mode 100644
index d65e5de..0000000
Binary files a/.gradle/6.8.3/fileHashes/fileHashes.lock and /dev/null differ
diff --git a/.gradle/6.8.3/gc.properties b/.gradle/6.8.3/gc.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock
deleted file mode 100644
index c7482dc..0000000
Binary files a/.gradle/buildOutputCleanup/buildOutputCleanup.lock and /dev/null differ
diff --git a/.gradle/buildOutputCleanup/cache.properties b/.gradle/buildOutputCleanup/cache.properties
deleted file mode 100644
index 14bd8b9..0000000
--- a/.gradle/buildOutputCleanup/cache.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-#Thu Aug 05 11:15:45 CEST 2021
-gradle.version=6.8.3
diff --git a/.gradle/buildOutputCleanup/outputFiles.bin b/.gradle/buildOutputCleanup/outputFiles.bin
deleted file mode 100644
index 35a25da..0000000
Binary files a/.gradle/buildOutputCleanup/outputFiles.bin and /dev/null differ
diff --git a/.gradle/checksums/checksums.lock b/.gradle/checksums/checksums.lock
deleted file mode 100644
index 3313506..0000000
Binary files a/.gradle/checksums/checksums.lock and /dev/null differ
diff --git a/.gradle/checksums/md5-checksums.bin b/.gradle/checksums/md5-checksums.bin
deleted file mode 100644
index 8d5957f..0000000
Binary files a/.gradle/checksums/md5-checksums.bin and /dev/null differ
diff --git a/.gradle/checksums/sha1-checksums.bin b/.gradle/checksums/sha1-checksums.bin
deleted file mode 100644
index 8dd6ddf..0000000
Binary files a/.gradle/checksums/sha1-checksums.bin and /dev/null differ
diff --git a/.gradle/configuration-cache/gc.properties b/.gradle/configuration-cache/gc.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/.gradle/vcs-1/gc.properties b/.gradle/vcs-1/gc.properties
deleted file mode 100644
index e69de29..0000000
diff --git a/.gradle/workspace-id.txt b/.gradle/workspace-id.txt
deleted file mode 100644
index ff53118..0000000
Binary files a/.gradle/workspace-id.txt and /dev/null differ
diff --git a/.gradle/workspace-id.txt.lock b/.gradle/workspace-id.txt.lock
deleted file mode 100644
index 12a0a38..0000000
Binary files a/.gradle/workspace-id.txt.lock and /dev/null differ
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
deleted file mode 100644
index 234ecfd..0000000
--- a/.idea/compiler.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/README.adoc b/README.adoc
index 3e40da0..2a8b055 100644
--- a/README.adoc
+++ b/README.adoc
@@ -1,5 +1,5 @@
-= Data4Life Result Util SDK
-:result-util-sdk-version: 0.1.0
+= Data4Life Result SDK
+:result-sdk-version: 0.1.0
:doctype: article
:!showtitle:
:toc: macro
diff --git a/build.gradle.kts b/build.gradle.kts
index 9cf0fa2..1e0a173 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -13,22 +13,17 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
-
-buildscript {
- dependencies {
- classpath(GradlePlugins.kotlin)
- classpath(GradlePlugins.android)
- }
-}
+import care.data4life.sdk.result.dependency.d4l
+import care.data4life.sdk.result.dependency.gitHub
plugins {
- kotlinMultiplatform(false)
+ id("care.data4life.sdk.result.dependency")
- id("scripts.dependency-updates")
- id("scripts.download-scripts")
- id("scripts.publishing")
- id("scripts.quality-spotless")
- id("scripts.versioning")
+ id("care.data4life.sdk.result.dependency-updates")
+ id("care.data4life.sdk.result.download-scripts")
+ id("care.data4life.sdk.result.publishing")
+ id("care.data4life.sdk.result.quality-spotless")
+ id("care.data4life.sdk.result.versioning")
}
allprojects {
@@ -43,6 +38,6 @@ allprojects {
}
tasks.named("wrapper") {
- gradleVersion = "6.8.3"
+ gradleVersion = "6.9"
distributionType = Wrapper.DistributionType.ALL
}
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
index 03ca8a1..c3ee132 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
@@ -16,14 +16,20 @@
plugins {
`kotlin-dsl`
+
+ id("care.data4life.sdk.result.dependency")
}
repositories {
gradlePluginPortal()
mavenCentral()
+ google()
}
dependencies {
+ implementation(care.data4life.sdk.result.dependency.GradlePlugin.kotlin)
+ implementation(care.data4life.sdk.result.dependency.GradlePlugin.android)
+
// dependency-updates
implementation("com.github.ben-manes:gradle-versions-plugin:0.38.0")
// download-scripts
diff --git a/buildSrc/src/main/kotlin/LibraryConfig.kt b/buildSrc/src/main/kotlin/care/data4life/sdk/result/LibraryConfig.kt
similarity index 91%
rename from buildSrc/src/main/kotlin/LibraryConfig.kt
rename to buildSrc/src/main/kotlin/care/data4life/sdk/result/LibraryConfig.kt
index 45f0f49..269529f 100644
--- a/buildSrc/src/main/kotlin/LibraryConfig.kt
+++ b/buildSrc/src/main/kotlin/care/data4life/sdk/result/LibraryConfig.kt
@@ -13,22 +13,23 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
+package care.data4life.sdk.result
object LibraryConfig {
+ val publishConfig = PublishConfig
+ val android = AndroidLibraryConfig
+
const val group = "care.data4life"
const val name = "hc-result-sdk-kmp"
const val githubOwner = "d4l-data4life"
const val githubRepository = "hc-result-sdk-kmp"
- val publish = PublishConfig
-
object PublishConfig {
- const val name = LibraryConfig.name
+ const val groupId = "care.data4life.hc-result-sdk-kmp"
const val description = "This is the Result SDK which provides unified result types and errors for other SDK's."
- const val groupId = "${LibraryConfig.group}.${LibraryConfig.name}"
- const val year = "2020"
+ const val year = "2021"
// URL
const val host = "github.com"
@@ -52,8 +53,6 @@ object LibraryConfig {
const val scmDeveloperConnection = scmConnection
}
- val android = AndroidLibraryConfig
-
object AndroidLibraryConfig {
const val minSdkVersion = 23
const val compileSdkVersion = 30
diff --git a/buildSrc/src/main/kotlin/scripts/dependency-updates.gradle.kts b/buildSrc/src/main/kotlin/care/data4life/sdk/result/dependency-updates.gradle.kts
similarity index 98%
rename from buildSrc/src/main/kotlin/scripts/dependency-updates.gradle.kts
rename to buildSrc/src/main/kotlin/care/data4life/sdk/result/dependency-updates.gradle.kts
index 79ae582..57ad4ef 100644
--- a/buildSrc/src/main/kotlin/scripts/dependency-updates.gradle.kts
+++ b/buildSrc/src/main/kotlin/care/data4life/sdk/result/dependency-updates.gradle.kts
@@ -14,7 +14,7 @@
* contact D4L by email to help@data4life.care.
*/
-package scripts
+package care.data4life.sdk.result
/**
* [DependencyUpdates](https://github.com/ben-manes/gradle-versions-plugin)
diff --git a/buildSrc/src/main/kotlin/scripts/download-scripts.gradle.kts b/buildSrc/src/main/kotlin/care/data4life/sdk/result/download-scripts.gradle.kts
similarity index 98%
rename from buildSrc/src/main/kotlin/scripts/download-scripts.gradle.kts
rename to buildSrc/src/main/kotlin/care/data4life/sdk/result/download-scripts.gradle.kts
index e311c63..1b40817 100644
--- a/buildSrc/src/main/kotlin/scripts/download-scripts.gradle.kts
+++ b/buildSrc/src/main/kotlin/care/data4life/sdk/result/download-scripts.gradle.kts
@@ -14,7 +14,7 @@
* contact D4L by email to help@data4life.care.
*/
-package scripts
+package care.data4life.sdk.result
import de.undercouch.gradle.tasks.download.Download
diff --git a/buildSrc/src/main/kotlin/scripts/publishing-config.gradle.kts b/buildSrc/src/main/kotlin/care/data4life/sdk/result/publishing-config.gradle.kts
similarity index 60%
rename from buildSrc/src/main/kotlin/scripts/publishing-config.gradle.kts
rename to buildSrc/src/main/kotlin/care/data4life/sdk/result/publishing-config.gradle.kts
index d760dbb..b782e83 100644
--- a/buildSrc/src/main/kotlin/scripts/publishing-config.gradle.kts
+++ b/buildSrc/src/main/kotlin/care/data4life/sdk/result/publishing-config.gradle.kts
@@ -14,26 +14,27 @@
* contact D4L by email to help@data4life.care.
*/
-package scripts
+package care.data4life.sdk.result
-import LibraryConfig
import org.gradle.api.publish.maven.MavenPublication
/**
- * Usage:
+ * Install:
*
- * Now just add id("scripts.publishing-config") to your projects build.gradle.kts plugins section
+ * Just add id("care.data4life.sdk.result.publishing-config") to your project module build.gradle.kts plugins section
*
* plugins {
- * id("scripts.publishing")
+ * id("care.data4life.sdk.result.publishing-config")
* }
*
+ * Usage:
+ *
* To publish to to https://github.com/d4l-data4life/maven-repository/ just run:
* - ./gradlew publishFeature
* - ./gradlew publishSnapshot
* - ./gradlew publishRelease
*
- * This requires a LibraryConfig as defined here https://github.com/d4l-data4life/hc-gradle-scripts/blob/main/buildSrc/src/main/kotlin/LibraryConfig.kt
+ * This requires a care.data4life.sdk.result.care.data4life.sdk.result.LibraryConfig configured
*/
plugins {
`maven-publish`
@@ -46,9 +47,9 @@ publishing {
setUrl("https://maven.pkg.github.com/${LibraryConfig.githubOwner}/${LibraryConfig.githubRepository}")
credentials {
username = (project.findProperty("gpr.user")
- ?: System.getenv("PACKAGE_REGISTRY_USERNAME")).toString()
+ ?: System.getenv("PACKAGE_REGISTRY_UPLOAD_USERNAME")).toString()
password = (project.findProperty("gpr.key")
- ?: System.getenv("PACKAGE_REGISTRY_TOKEN")).toString()
+ ?: System.getenv("PACKAGE_REGISTRY_UPLOAD_TOKEN")).toString()
}
}
@@ -72,34 +73,33 @@ publishing {
publications {
withType {
- groupId = LibraryConfig.publish.groupId
+ groupId = LibraryConfig.PublishConfig.groupId
pom {
- name.set(LibraryConfig.publish.name)
- description.set(LibraryConfig.publish.description)
- url.set(LibraryConfig.publish.url)
- inceptionYear.set(LibraryConfig.publish.year)
+ description.set(LibraryConfig.PublishConfig.description)
+ url.set(LibraryConfig.PublishConfig.url)
+ inceptionYear.set(LibraryConfig.PublishConfig.year)
licenses {
license {
- name.set(LibraryConfig.publish.licenseName)
- url.set(LibraryConfig.publish.licenseUrl)
- distribution.set(LibraryConfig.publish.licenseDistribution)
+ name.set(LibraryConfig.PublishConfig.licenseName)
+ url.set(LibraryConfig.PublishConfig.licenseUrl)
+ distribution.set(LibraryConfig.PublishConfig.licenseDistribution)
}
}
developers {
developer {
- id.set(LibraryConfig.publish.developerId)
- name.set(LibraryConfig.publish.developerName)
- email.set(LibraryConfig.publish.developerEmail)
+ id.set(LibraryConfig.PublishConfig.developerId)
+ name.set(LibraryConfig.PublishConfig.developerName)
+ email.set(LibraryConfig.PublishConfig.developerEmail)
}
}
scm {
- connection.set(LibraryConfig.publish.scmConnection)
- developerConnection.set(LibraryConfig.publish.scmDeveloperConnection)
- url.set(LibraryConfig.publish.scmUrl)
+ connection.set(LibraryConfig.PublishConfig.scmConnection)
+ developerConnection.set(LibraryConfig.PublishConfig.scmDeveloperConnection)
+ url.set(LibraryConfig.PublishConfig.scmUrl)
}
}
}
diff --git a/buildSrc/src/main/kotlin/scripts/publishing.gradle.kts b/buildSrc/src/main/kotlin/care/data4life/sdk/result/publishing.gradle.kts
similarity index 94%
rename from buildSrc/src/main/kotlin/scripts/publishing.gradle.kts
rename to buildSrc/src/main/kotlin/care/data4life/sdk/result/publishing.gradle.kts
index 8431398..19dc41f 100644
--- a/buildSrc/src/main/kotlin/scripts/publishing.gradle.kts
+++ b/buildSrc/src/main/kotlin/care/data4life/sdk/result/publishing.gradle.kts
@@ -14,9 +14,8 @@
* contact D4L by email to help@data4life.care.
*/
-package scripts
+package care.data4life.sdk.result
-import LibraryConfig
import org.eclipse.jgit.api.Git
import org.eclipse.jgit.api.ResetCommand
import org.eclipse.jgit.transport.PushResult
@@ -24,7 +23,9 @@ import org.eclipse.jgit.transport.RemoteRefUpdate
import org.eclipse.jgit.transport.UsernamePasswordCredentialsProvider
/**
- * Usage:
+ * Publish generated artefacts to our maven-repository using [jGit](https://www.eclipse.org/jgit/)
+ *
+ * Install:
*
* You need to add following dependencies to the buildSrc/build.gradle.kts
*
@@ -38,12 +39,14 @@ import org.eclipse.jgit.transport.UsernamePasswordCredentialsProvider
* mavenCentral()
* }
*
- * Now just add id("scripts.publishing") to your rootProject build.gradle.kts plugins
+ * Now just add id("care.data4life.sdk.result.publishing") to your rootProject build.gradle.kts plugins
*
* plugins {
- * id("scripts.publishing")
+ * id("care.data4life.sdk.result.publishing")
* }
*
+ * Usage:
+ *
* To publish to to https://github.com/d4l-data4life/maven-features/ just run:
* - ./gradlew publishFeature
* To publish to to https://github.com/d4l-data4life/maven-snapshots/ just run:
@@ -63,7 +66,7 @@ val releaseRepoName = "maven-releases"
val basePath = "${rootProject.buildDir}/gitPublish"
val gitHubToken = (project.findProperty("gpr.key")
- ?: System.getenv("PACKAGE_REGISTRY_TOKEN")).toString()
+ ?: System.getenv("PACKAGE_REGISTRY_UPLOAD_TOKEN")).toString()
task("publishFeature") {
diff --git a/buildSrc/src/main/kotlin/scripts/quality-spotless.gradle.kts b/buildSrc/src/main/kotlin/care/data4life/sdk/result/quality-spotless.gradle.kts
similarity index 98%
rename from buildSrc/src/main/kotlin/scripts/quality-spotless.gradle.kts
rename to buildSrc/src/main/kotlin/care/data4life/sdk/result/quality-spotless.gradle.kts
index 4638565..d64cc28 100644
--- a/buildSrc/src/main/kotlin/scripts/quality-spotless.gradle.kts
+++ b/buildSrc/src/main/kotlin/care/data4life/sdk/result/quality-spotless.gradle.kts
@@ -14,7 +14,7 @@
* contact D4L by email to help@data4life.care.
*/
-package scripts
+package care.data4life.sdk.result
/**
* You need to add following dependencies to the buildSrc/build.gradle.kts
diff --git a/buildSrc/src/main/kotlin/scripts/versioning.gradle.kts b/buildSrc/src/main/kotlin/care/data4life/sdk/result/versioning.gradle.kts
similarity index 99%
rename from buildSrc/src/main/kotlin/scripts/versioning.gradle.kts
rename to buildSrc/src/main/kotlin/care/data4life/sdk/result/versioning.gradle.kts
index 16868ae..dc9be08 100644
--- a/buildSrc/src/main/kotlin/scripts/versioning.gradle.kts
+++ b/buildSrc/src/main/kotlin/care/data4life/sdk/result/versioning.gradle.kts
@@ -13,7 +13,7 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
-package scripts
+package care.data4life.sdk.result
/**
* Usage:
diff --git a/error/build.gradle.kts b/error/build.gradle.kts
index b6c61f4..4da219c 100644
--- a/error/build.gradle.kts
+++ b/error/build.gradle.kts
@@ -13,15 +13,17 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
+import care.data4life.sdk.result.LibraryConfig
+import care.data4life.sdk.result.dependency.Dependency
plugins {
- kotlinMultiplatform()
+ id("org.jetbrains.kotlin.multiplatform")
// Android
- androidLibrary()
+ id("com.android.library")
// Publish
- id("scripts.publishing-config")
+ id("care.data4life.sdk.result.publishing-config")
}
group = LibraryConfig.group
@@ -33,62 +35,57 @@ kotlin {
jvm()
- ios {
- binaries {
- framework {
- baseName = LibraryConfig.name
- }
- }
- }
+ ios {}
sourceSets {
val commonMain by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.stdlibCommon)
+ implementation(Dependency.multiplatform.kotlin.stdlibCommon)
+ implementation(Dependency.multiplatform.d4l.sdkUtil)
}
}
val commonTest by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.testCommon)
- implementation(Dependencies.multiplatform.kotlin.testCommonAnnotations)
+ implementation(Dependency.multiplatform.kotlin.testCommon)
+ implementation(Dependency.multiplatform.kotlin.testCommonAnnotations)
}
}
val androidMain by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.stdlibAndroid)
+ implementation(Dependency.multiplatform.kotlin.stdlibAndroid)
}
}
val androidTest by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.testJvm)
- implementation(Dependencies.multiplatform.kotlin.testJvmJunit)
+ implementation(Dependency.multiplatform.kotlin.testJvm)
+ implementation(Dependency.multiplatform.kotlin.testJvmJunit)
}
}
val jvmMain by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.stdlibJdk8)
+ implementation(Dependency.multiplatform.kotlin.stdlibJdk8)
}
}
val jvmTest by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.testJvm)
- implementation(Dependencies.multiplatform.kotlin.testJvmJunit)
+ implementation(Dependency.multiplatform.kotlin.testJvm)
+ implementation(Dependency.multiplatform.kotlin.testJvmJunit)
}
}
val iosMain by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.stdlibNative)
+ implementation(Dependency.multiplatform.kotlin.stdlibNative)
}
}
val iosTest by getting {
dependencies {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.testCommon)
- implementation(Dependencies.multiplatform.kotlin.testCommonAnnotations)
+ implementation(Dependency.multiplatform.kotlin.testCommon)
+ implementation(Dependency.multiplatform.kotlin.testCommonAnnotations)
}
}
}
diff --git a/error/src/commonMain/kotlin/care/data4life/sdk/lang/DataRestrictionException.kt b/error/src/commonMain/kotlin/care/data4life/sdk/lang/DataRestrictionException.kt
new file mode 100644
index 0000000..348cb42
--- /dev/null
+++ b/error/src/commonMain/kotlin/care/data4life/sdk/lang/DataRestrictionException.kt
@@ -0,0 +1,38 @@
+/*
+ * Copyright (c) 2021 D4L data4life gGmbH / All rights reserved.
+ *
+ * D4L owns all legal rights, title and interest in and to the Software Development Kit ("SDK"),
+ * including any intellectual property rights that subsist in the SDK.
+ *
+ * The SDK and its documentation may be accessed and used for viewing/review purposes only.
+ * Any usage of the SDK for other purposes, including usage for the development of
+ * applications/third-party applications shall require the conclusion of a license agreement
+ * between you and D4L.
+ *
+ * If you are interested in licensing the SDK for your own applications/third-party
+ * applications and/or if you’d like to contribute to the development of the SDK, please
+ * contact D4L by email to help@data4life.care.
+ */
+
+package care.data4life.sdk.lang
+
+import care.data4life.sdk.config.DataRestriction.DATA_SIZE_MAX_MB
+
+/**
+ * Exception class that will be thrown in case of data restriction violations like file size is too large or
+ * file type is unsupported.
+ */
+@Deprecated(message = "This Error will move with the next release to the top level SDKs, since it is a DomainError.")
+sealed class DataRestrictionException(message: String? = null, cause: Throwable? = null) :
+ D4LException(message, cause) {
+
+ constructor() : this(null, null)
+ constructor(message: String?) : this(message, null)
+ constructor(cause: Throwable?) : this(cause?.toString(), cause)
+
+ class MaxDataSizeViolation :
+ DataRestrictionException(message = "The file size has to be smaller or equal to ${DATA_SIZE_MAX_MB}MB!")
+
+ class UnsupportedFileType :
+ DataRestrictionException(message = "Only this file types are supported: JPEG, PNG, TIFF, PDF and DCM!")
+}
diff --git a/flow/build.gradle.kts b/flow/build.gradle.kts
index 793c3d5..2bbe8c4 100644
--- a/flow/build.gradle.kts
+++ b/flow/build.gradle.kts
@@ -13,15 +13,17 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
+import care.data4life.sdk.result.LibraryConfig
+import care.data4life.sdk.result.dependency.Dependency
plugins {
- kotlinMultiplatform()
+ id("org.jetbrains.kotlin.multiplatform")
// Android
- androidLibrary()
+ id("com.android.library")
// Publish
- id("scripts.publishing-config")
+ id("care.data4life.sdk.result.publishing-config")
}
group = LibraryConfig.group
@@ -33,70 +35,63 @@ kotlin {
jvm()
- ios {
- binaries {
- framework {
- baseName = LibraryConfig.name
- }
- }
- }
+ ios {}
sourceSets {
val commonMain by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.stdlibCommon)
- implementation(Dependencies.multiplatform.coroutines.common)
- implementation(Dependencies.multiplatform.coroutines.stately) // TODO: Remove with Kotlin 1.5.x
- implementation(Dependencies.multiplatform.d4l.sdkUtil)
+ implementation(Dependency.multiplatform.kotlin.stdlibCommon)
+ implementation(Dependency.multiplatform.coroutines.common)
+ implementation(Dependency.multiplatform.coroutines.stately) // TODO: Remove with Kotlin 1.5.x
api(project(":error"))
}
}
val commonTest by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.testCommon)
- implementation(Dependencies.multiplatform.kotlin.testCommonAnnotations)
- implementation(Dependencies.multiplatform.d4l.sdkCoroutineTestUtil)
+ implementation(Dependency.multiplatform.kotlin.testCommon)
+ implementation(Dependency.multiplatform.kotlin.testCommonAnnotations)
+ implementation(Dependency.multiplatform.d4l.sdkTestUtilCoroutine)
}
}
val androidMain by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.stdlibAndroid)
+ implementation(Dependency.multiplatform.kotlin.stdlibAndroid)
}
}
val androidTest by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.testJvm)
- implementation(Dependencies.multiplatform.kotlin.testJvmJunit)
+ implementation(Dependency.multiplatform.kotlin.testJvm)
+ implementation(Dependency.multiplatform.kotlin.testJvmJunit)
- implementation(Dependencies.android.robolectric)
+ implementation(Dependency.android.robolectric)
}
}
val jvmMain by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.stdlibJdk8)
+ implementation(Dependency.multiplatform.kotlin.stdlibJdk8)
}
}
val jvmTest by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.testJvm)
- implementation(Dependencies.multiplatform.kotlin.testJvmJunit)
+ implementation(Dependency.multiplatform.kotlin.testJvm)
+ implementation(Dependency.multiplatform.kotlin.testJvmJunit)
}
}
val iosMain by getting {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.stdlibNative)
+ implementation(Dependency.multiplatform.kotlin.stdlibNative)
}
}
val iosTest by getting {
dependencies {
dependencies {
- implementation(Dependencies.multiplatform.kotlin.testCommon)
- implementation(Dependencies.multiplatform.kotlin.testCommonAnnotations)
- implementation(Dependencies.multiplatform.d4l.sdkUtil)
+ implementation(Dependency.multiplatform.kotlin.testCommon)
+ implementation(Dependency.multiplatform.kotlin.testCommonAnnotations)
+ implementation(Dependency.multiplatform.d4l.sdkObjcUtil)
}
}
}
diff --git a/flow/src/iosTest/kotlin/care/data4life/sdk/flow/D4lSDKFlowTest.kt b/flow/src/iosTest/kotlin/care/data4life/sdk/flow/D4lSDKFlowTest.kt
index 84b0e09..99d653b 100644
--- a/flow/src/iosTest/kotlin/care/data4life/sdk/flow/D4lSDKFlowTest.kt
+++ b/flow/src/iosTest/kotlin/care/data4life/sdk/flow/D4lSDKFlowTest.kt
@@ -17,7 +17,7 @@
package care.data4life.sdk.flow
import care.data4life.sdk.lang.PlatformError
-import care.data4life.sdk.util.NSErrorFactory
+import care.data4life.sdk.util.objc.NSErrorFactory
import care.data4life.sdk.util.test.coroutine.runBlockingTest
import co.touchlab.stately.isFrozen
import kotlinx.coroutines.CoroutineScope
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 8cf6eb5..7665b0f 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.9-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/gradlePlugin/result-dependency/build.gradle.kts b/gradlePlugin/result-dependency/build.gradle.kts
new file mode 100644
index 0000000..37be6fb
--- /dev/null
+++ b/gradlePlugin/result-dependency/build.gradle.kts
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2021 D4L data4life gGmbH / All rights reserved.
+ *
+ * D4L owns all legal rights, title and interest in and to the Software Development Kit ("SDK"),
+ * including any intellectual property rights that subsist in the SDK.
+ *
+ * The SDK and its documentation may be accessed and used for viewing/review purposes only.
+ * Any usage of the SDK for other purposes, including usage for the development of
+ * applications/third-party applications shall require the conclusion of a license agreement
+ * between you and D4L.
+ *
+ * If you are interested in licensing the SDK for your own applications/third-party
+ * applications and/or if you’d like to contribute to the development of the SDK, please
+ * contact D4L by email to help@data4life.care.
+ */
+
+plugins {
+ `kotlin-dsl`
+ `java-gradle-plugin`
+}
+
+// To make it available as direct dependency
+group = "care.data4life.sdk.result.dependency"
+version = "1.0.0-SNAPSHOT"
+
+repositories {
+ mavenCentral()
+}
+
+gradlePlugin {
+ plugins.register("care.data4life.sdk.result.dependency") {
+ id = "care.data4life.sdk.result.dependency"
+ implementationClass = "care.data4life.sdk.result.dependency.DependencyPlugin"
+ }
+}
diff --git a/buildSrc/src/main/kotlin/Dependencies.kt b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Dependency.kt
similarity index 63%
rename from buildSrc/src/main/kotlin/Dependencies.kt
rename to gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Dependency.kt
index 2ebf68c..06d9509 100644
--- a/buildSrc/src/main/kotlin/Dependencies.kt
+++ b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Dependency.kt
@@ -13,13 +13,12 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
+package care.data4life.sdk.result.dependency
-object Dependencies {
-
+object Dependency {
val kotlin = Kotlin
object Kotlin {
const val stdLib = multiplatform.kotlin.stdlibJdk
- const val reflect = "org.jetbrains.kotlin:kotlin-reflect:${Versions.kotlin}"
}
val multiplatform = Multiplatform
@@ -27,17 +26,17 @@ object Dependencies {
val kotlin = Kotlin
object Kotlin {
- const val stdlibCommon = "org.jetbrains.kotlin:kotlin-stdlib-common:${Versions.kotlin}"
- const val stdlibJdk = "org.jetbrains.kotlin:kotlin-stdlib:${Versions.kotlin}"
- const val stdlibJdk8 = "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${Versions.kotlin}"
- const val stdlibJs = "org.jetbrains.kotlin:kotlin-stdlib:${Versions.kotlin}"
- const val stdlibNative = "org.jetbrains.kotlin:kotlin-stdlib:${Versions.kotlin}"
- const val stdlibAndroid = "org.jetbrains.kotlin:kotlin-stdlib:${Versions.kotlin}"
-
- const val testCommon = "org.jetbrains.kotlin:kotlin-test-common:${Versions.kotlin}"
- const val testCommonAnnotations = "org.jetbrains.kotlin:kotlin-test-annotations-common:${Versions.kotlin}"
- const val testJvm = "org.jetbrains.kotlin:kotlin-test:${Versions.kotlin}"
- const val testJvmJunit = "org.jetbrains.kotlin:kotlin-test-junit:${Versions.kotlin}"
+ const val stdlibCommon = "org.jetbrains.kotlin:kotlin-stdlib-common:${Version.kotlin}"
+ const val stdlibJdk = "org.jetbrains.kotlin:kotlin-stdlib:${Version.kotlin}"
+ const val stdlibJdk8 = "org.jetbrains.kotlin:kotlin-stdlib-jdk8:${Version.kotlin}"
+ const val stdlibJs = "org.jetbrains.kotlin:kotlin-stdlib:${Version.kotlin}"
+ const val stdlibNative = "org.jetbrains.kotlin:kotlin-stdlib:${Version.kotlin}"
+ const val stdlibAndroid = "org.jetbrains.kotlin:kotlin-stdlib:${Version.kotlin}"
+
+ const val testCommon = "org.jetbrains.kotlin:kotlin-test-common:${Version.kotlin}"
+ const val testCommonAnnotations = "org.jetbrains.kotlin:kotlin-test-annotations-common:${Version.kotlin}"
+ const val testJvm = "org.jetbrains.kotlin:kotlin-test:${Version.kotlin}"
+ const val testJvmJunit = "org.jetbrains.kotlin:kotlin-test-junit:${Version.kotlin}"
}
val coroutines = Coroutines
@@ -45,71 +44,64 @@ object Dependencies {
object Coroutines {
// https://github.com/Kotlin/kotlinx.coroutines
const val common =
- "org.jetbrains.kotlinx:kotlinx-coroutines-core:${Versions.kotlinCoroutines}"
+ "org.jetbrains.kotlinx:kotlinx-coroutines-core:${Version.kotlinCoroutines}"
const val android =
- "org.jetbrains.kotlinx:kotlinx-coroutines-android:${Versions.kotlinCoroutines}"
- const val test = "org.jetbrains.kotlinx:kotlinx-coroutines-test:${Versions.kotlinCoroutines}"
-
- const val stately = "co.touchlab:stately-common:${Versions.stately}"
- }
-
- val ktor = Ktor
+ "org.jetbrains.kotlinx:kotlinx-coroutines-android:${Version.kotlinCoroutines}"
+ const val test = "org.jetbrains.kotlinx:kotlinx-coroutines-test:${Version.kotlinCoroutines}"
- object Ktor {
- const val common = "io.ktor:ktor-client-core:${Versions.ktor}"
- const val mock = "io.ktor:ktor-client-mock:${Versions.ktor}"
+ const val stately = "co.touchlab:stately-common:${Version.stately}"
}
val d4l = D4L
object D4L {
- const val sdkUtil = "care.data4life.hc-util-sdk-kmp:util:${Versions.sdkUtil}"
- const val sdkCoroutineTestUtil = "care.data4life.hc-util-sdk-kmp:util-coroutine-test:${Versions.sdkUtil}"
+ const val sdkUtil = "care.data4life.hc-util-sdk-kmp:util:${Version.sdkUtil}"
+ const val sdkObjcUtil = "care.data4life.hc-objc-util-sdk-kmp:objc-util:${Version.sdkObjcUtil}"
+ const val sdkTestUtilCoroutine = "care.data4life.hc-test-util-sdk-kmp:test-util-coroutine:${Version.sdkTestUtilCoroutine}"
}
}
val test = Test
object Test {
- const val junit = "junit:junit:${Versions.testJUnit}"
+ const val junit = "junit:junit:${Version.testJUnit}"
}
val android = Android
object Android {
// Kotlin
- const val kotlinStdLib = "org.jetbrains.kotlin:kotlin-stdlib:${Versions.kotlin}"
+ const val kotlinStdLib = "org.jetbrains.kotlin:kotlin-stdlib:${Version.kotlin}"
// Android
- const val desugar = "com.android.tools:desugar_jdk_libs:${Versions.androidDesugar}"
+ const val desugar = "com.android.tools:desugar_jdk_libs:${Version.androidDesugar}"
val androidX = AndroidX
object AndroidX {
// AndroidX
- const val ktx = "androidx.core:core-ktx:${Versions.androidXKtx}"
- const val appCompat = "androidx.appcompat:appcompat:${Versions.androidXAppCompat}"
- const val constraintLayout = "androidx.constraintlayout:constraintlayout:${Versions.androidXConstraintLayout}"
+ const val ktx = "androidx.core:core-ktx:${Version.androidXKtx}"
+ const val appCompat = "androidx.appcompat:appcompat:${Version.androidXAppCompat}"
+ const val constraintLayout = "androidx.constraintlayout:constraintlayout:${Version.androidXConstraintLayout}"
}
// Material
- const val material = "com.google.android.material:material:${Versions.material}"
+ const val material = "com.google.android.material:material:${Version.material}"
// Test
- const val robolectric = "org.robolectric:robolectric:${Versions.robolectric}"
+ const val robolectric = "org.robolectric:robolectric:${Version.robolectric}"
}
val androidTest = AndroidTest
object AndroidTest {
- const val core = "androidx.test:core:${Versions.androidXTest}"
- const val runner = "androidx.test:runner:${Versions.androidXTest}"
- const val rules = "androidx.test:rules:${Versions.androidXTest}"
+ const val core = "androidx.test:core:${Version.androidXTest}"
+ const val runner = "androidx.test:runner:${Version.androidXTest}"
+ const val rules = "androidx.test:rules:${Version.androidXTest}"
- const val junit = "androidx.test.ext:junit:${Versions.androidXTest}"
+ const val junit = "androidx.test.ext:junit:${Version.androidXTest}"
- const val espressoCore = "androidx.test.espresso:espresso-core:${Versions.androidXEspresso}"
+ const val espressoCore = "androidx.test.espresso:espresso-core:${Version.androidXEspresso}"
const val espressoIntents =
- "androidx.test.espresso:espresso-intents:${Versions.androidXEspresso}"
- const val espressoWeb = "androidx.test.espresso:espresso-web:${Versions.androidXEspresso}"
+ "androidx.test.espresso:espresso-intents:${Version.androidXEspresso}"
+ const val espressoWeb = "androidx.test.espresso:espresso-web:${Version.androidXEspresso}"
- const val uiAutomator =
- "androidx.test.uiautomator:uiautomator:${Versions.androidXUiAutomator}"
+ const val uiAutomator = "androidx.test.uiautomator:uiautomator:${Version.androidXUiAutomator}"
}
}
diff --git a/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/DependencyPlugin.kt b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/DependencyPlugin.kt
new file mode 100644
index 0000000..e66f2eb
--- /dev/null
+++ b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/DependencyPlugin.kt
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2021 D4L data4life gGmbH / All rights reserved.
+ *
+ * D4L owns all legal rights, title and interest in and to the Software Development Kit ("SDK"),
+ * including any intellectual property rights that subsist in the SDK.
+ *
+ * The SDK and its documentation may be accessed and used for viewing/review purposes only.
+ * Any usage of the SDK for other purposes, including usage for the development of
+ * applications/third-party applications shall require the conclusion of a license agreement
+ * between you and D4L.
+ *
+ * If you are interested in licensing the SDK for your own applications/third-party
+ * applications and/or if you’d like to contribute to the development of the SDK, please
+ * contact D4L by email to help@data4life.care.
+ */
+
+package care.data4life.sdk.result.dependency
+
+import org.gradle.api.Plugin
+import org.gradle.api.Project
+
+class DependencyPlugin : Plugin {
+
+ override fun apply(target: Project) {
+ // nothing to do
+ }
+}
diff --git a/buildSrc/src/main/kotlin/GradlePlugins.kt b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/GradlePlugin.kt
similarity index 53%
rename from buildSrc/src/main/kotlin/GradlePlugins.kt
rename to gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/GradlePlugin.kt
index 966c16f..a63c793 100644
--- a/buildSrc/src/main/kotlin/GradlePlugins.kt
+++ b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/GradlePlugin.kt
@@ -13,26 +13,9 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
+package care.data4life.sdk.result.dependency
-import org.gradle.plugin.use.PluginDependenciesSpec
-import org.gradle.plugin.use.PluginDependencySpec
-
-object GradlePlugins {
- const val android = "com.android.tools.build:gradle:${Versions.GradlePlugins.android}"
- const val kotlin = "org.jetbrains.kotlin:kotlin-gradle-plugin:${Versions.GradlePlugins.kotlin}"
+object GradlePlugin {
+ const val android = "com.android.tools.build:gradle:${Version.GradlePlugin.android}"
+ const val kotlin = "org.jetbrains.kotlin:kotlin-gradle-plugin:${Version.GradlePlugin.kotlin}"
}
-
-fun PluginDependenciesSpec.kotlinMultiplatform(apply: Boolean = true): PluginDependencySpec =
- id("org.jetbrains.kotlin.multiplatform").version(Versions.GradlePlugins.kotlin).apply(apply)
-
-fun PluginDependenciesSpec.kotlinMultiplatform(): PluginDependencySpec =
- id("org.jetbrains.kotlin.multiplatform")
-
-fun PluginDependenciesSpec.androidApp(): PluginDependencySpec =
- id("com.android.application")
-
-fun PluginDependenciesSpec.androidLibrary(): PluginDependencySpec =
- id("com.android.library")
-
-fun PluginDependenciesSpec.androidKotlin(): PluginDependencySpec =
- id("kotlin-android")
diff --git a/buildSrc/src/main/kotlin/Repository.kt b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Repository.kt
similarity index 86%
rename from buildSrc/src/main/kotlin/Repository.kt
rename to gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Repository.kt
index d02798c..e2ca277 100644
--- a/buildSrc/src/main/kotlin/Repository.kt
+++ b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Repository.kt
@@ -13,6 +13,7 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
+package care.data4life.sdk.result.dependency
import org.gradle.api.Project
import org.gradle.api.artifacts.dsl.RepositoryHandler
@@ -23,12 +24,16 @@ object Repository {
val github = listOf(
// GitHub organization, GitHub repository name, Maven dependency group
- listOf(gitHubOrgD4l, "hc-util-sdk-kmp", "care.data4life.hc-util-sdk-kmp")
+ listOf(gitHubOrgD4l, "hc-util-sdk-kmp", "care.data4life.hc-util-sdk-kmp"),
+ listOf(gitHubOrgD4l, "hc-objc-util-sdk-kmp", "care.data4life.hc-objc-util-sdk-kmp"),
+ listOf(gitHubOrgD4l, "hc-test-util-sdk-kmp", "care.data4life.hc-test-util-sdk-kmp")
)
val d4l = listOf(
// Maven dependency group
- "care.data4life.hc-util-sdk-kmp"
+ "care.data4life.hc-util-sdk-kmp",
+ "care.data4life.hc-objc-util-sdk-kmp",
+ "care.data4life.hc-test-util-sdk-kmp"
)
}
diff --git a/buildSrc/src/main/kotlin/Versions.kt b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Version.kt
similarity index 84%
rename from buildSrc/src/main/kotlin/Versions.kt
rename to gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Version.kt
index e285b39..b10d5dc 100644
--- a/buildSrc/src/main/kotlin/Versions.kt
+++ b/gradlePlugin/result-dependency/src/main/kotlin/care/data4life/sdk/result/dependency/Version.kt
@@ -13,11 +13,12 @@
* applications and/or if you’d like to contribute to the development of the SDK, please
* contact D4L by email to help@data4life.care.
*/
+package care.data4life.sdk.result.dependency
-object Versions {
+object Version {
- object GradlePlugins {
- const val kotlin = Versions.kotlin
+ object GradlePlugin {
+ const val kotlin = Version.kotlin
const val android = "4.2.2"
}
@@ -31,13 +32,15 @@ object Versions {
// https://github.com/touchlab/Stately
const val stately = "1.1.6"
- // Network
- // https://ktor.io/
- const val ktor = "1.5.4"
-
// D4L
// https://github.com/d4l-data4life/hc-util-sdk-kmp
- const val sdkUtil = "1.9.0-add-default-scope-SNAPSHOT"
+ const val sdkUtil = "1.10.0"
+
+ // https://github.com/d4l-data4life/hc-objc-util-sdk-kmp
+ const val sdkObjcUtil = "0.1.0"
+
+ // https://github.com/d4l-data4life/hc-test-util-sdk-kmp
+ const val sdkTestUtilCoroutine = "0.1.0"
// Android
// https://developer.android.com/studio/write/java8-support
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 63839a1..0c43187 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -18,6 +18,8 @@ pluginManagement {
gradlePluginPortal()
google()
}
+
+ includeBuild("gradlePlugin/result-dependency")
}
plugins {