diff --git a/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/Identifier.kt b/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/Identifier.kt new file mode 100644 index 000000000..98ce164a7 --- /dev/null +++ b/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/Identifier.kt @@ -0,0 +1,6 @@ +package cz.frantisekmasa.wfrp_master.common.core.domain + +import dev.icerock.moko.parcelize.Parcelable +import java.io.Serializable + +interface Identifier : Parcelable, Serializable diff --git a/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/identifiers/CharacterId.kt b/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/identifiers/CharacterId.kt index bb39e2142..98abd7d8d 100644 --- a/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/identifiers/CharacterId.kt +++ b/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/identifiers/CharacterId.kt @@ -1,8 +1,8 @@ package cz.frantisekmasa.wfrp_master.common.core.domain.identifiers +import cz.frantisekmasa.wfrp_master.common.core.domain.Identifier import cz.frantisekmasa.wfrp_master.common.core.domain.party.PartyId -import dev.icerock.moko.parcelize.Parcelable import dev.icerock.moko.parcelize.Parcelize @Parcelize -data class CharacterId(val partyId: PartyId, val id: String) : Parcelable +data class CharacterId(val partyId: PartyId, val id: String) : Identifier diff --git a/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/identifiers/EncounterId.kt b/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/identifiers/EncounterId.kt index 45760af10..30a5b28f2 100644 --- a/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/identifiers/EncounterId.kt +++ b/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/identifiers/EncounterId.kt @@ -1,8 +1,8 @@ package cz.frantisekmasa.wfrp_master.common.core.domain.identifiers import androidx.compose.runtime.Immutable +import cz.frantisekmasa.wfrp_master.common.core.domain.Identifier import cz.frantisekmasa.wfrp_master.common.core.domain.party.PartyId -import dev.icerock.moko.parcelize.Parcelable import dev.icerock.moko.parcelize.Parcelize import kotlinx.serialization.Contextual import kotlinx.serialization.Serializable @@ -14,4 +14,4 @@ import java.util.UUID data class EncounterId( val partyId: PartyId, @Contextual val encounterId: UUID, -) : Parcelable +) : Identifier diff --git a/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/party/PartyId.kt b/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/party/PartyId.kt index 9ca85cb61..35d142d73 100644 --- a/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/party/PartyId.kt +++ b/common/src/commonMain/kotlin/cz/frantisekmasa/wfrp_master/common/core/domain/party/PartyId.kt @@ -3,7 +3,7 @@ package cz.frantisekmasa.wfrp_master.common.core.domain.party import androidx.compose.runtime.Immutable import com.benasher44.uuid.Uuid import com.benasher44.uuid.uuid4 -import dev.icerock.moko.parcelize.Parcelable +import cz.frantisekmasa.wfrp_master.common.core.domain.Identifier import dev.icerock.moko.parcelize.Parcelize import kotlinx.serialization.Contextual import kotlinx.serialization.Serializable @@ -13,7 +13,7 @@ import kotlin.jvm.JvmInline @Serializable @Parcelize @Immutable -value class PartyId(@Contextual private val value: Uuid) : Parcelable { +value class PartyId(@Contextual private val value: Uuid) : Identifier { companion object { fun generate(): PartyId = PartyId(uuid4()) }