Feat(LibrariesScreen): Finish LibrariesScreen

Implement open source license display in LibrariesScreen
This commit is contained in:
2024-04-24 17:31:06 +08:00
parent c8f072c930
commit 32d19ae291
23 changed files with 622 additions and 10 deletions

View File

@@ -0,0 +1,12 @@
package top.fatweb.oxygen.toolbox.model.lib
import kotlinx.serialization.Serializable
@Serializable
data class Dependencies(
val metadata: Metadata,
val libraries: List<Library>,
val licenses: Map<String, License>
)

View File

@@ -0,0 +1,10 @@
package top.fatweb.oxygen.toolbox.model.lib
import kotlinx.serialization.Serializable
@Serializable
data class Developer(
val name: String? = null,
val organisationUrl: String? = null
)

View File

@@ -0,0 +1,10 @@
package top.fatweb.oxygen.toolbox.model.lib
import kotlinx.serialization.Serializable
@Serializable
data class Funding(
val platform: String,
val url: String
)

View File

@@ -0,0 +1,28 @@
package top.fatweb.oxygen.toolbox.model.lib
import kotlinx.serialization.Serializable
@Serializable
data class Library(
val uniqueId: String,
val artifactVersion: String? = null,
val name: String? = null,
val description: String? = null,
val website: String? = null,
val developers: List<Developer>,
val organization: Organization? = null,
val scm: Scm? = null,
val licenses: List<String>,
val funding: List<Funding>,
val tag: String? = null
)

View File

@@ -0,0 +1,20 @@
package top.fatweb.oxygen.toolbox.model.lib
import kotlinx.serialization.Serializable
@Serializable
data class License(
val name: String,
val url: String? = null,
val year: String? = null,
val content: String? = null,
val internalHash: String? = null,
val hash: String,
val spdxId: String? = null
)

View File

@@ -0,0 +1,8 @@
package top.fatweb.oxygen.toolbox.model.lib
import kotlinx.serialization.Serializable
@Serializable
data class Metadata(
val generated: String
)

View File

@@ -0,0 +1,10 @@
package top.fatweb.oxygen.toolbox.model.lib
import kotlinx.serialization.Serializable
@Serializable
data class Organization(
val name: String,
val url: String? = null
)

View File

@@ -0,0 +1,12 @@
package top.fatweb.oxygen.toolbox.model.lib
import kotlinx.serialization.Serializable
@Serializable
data class Scm(
val connection: String? = null,
val developerConnection: String? = null,
val url: String? = null
)