feat: define board detail domain and mutation contracts

This commit is contained in:
2026-03-16 00:08:03 -04:00
parent c820b413aa
commit 3af47ba55a
3 changed files with 98 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
package space.hackenslacker.kanbn4droid.app.boarddetail
data class BoardDetail(
val id: String,
val title: String,
val lists: List<BoardListDetail>,
)
data class BoardListDetail(
val id: String,
val title: String,
val cards: List<BoardCardSummary>,
)
data class BoardCardSummary(
val id: String,
val title: String,
val tags: List<BoardTagSummary>,
val dueAtEpochMillis: Long?,
)
data class BoardTagSummary(
val id: String,
val name: String,
val colorHex: String,
)
sealed interface CardBatchMutationResult {
data object Success : CardBatchMutationResult
data class PartialSuccess(
val failedCardIds: Set<String>,
val message: String,
) : CardBatchMutationResult
data class Failure(
val message: String,
) : CardBatchMutationResult
}