Skip to content

Commit a012c7d

Browse files
committed
fix: Compose navigation route 경로에 url 문자열로인한 path 검증 실패가 수정됩니다
1 parent 47f2489 commit a012c7d

2 files changed

Lines changed: 27 additions & 6 deletions

File tree

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,35 @@
11
package com.lanpet.domain.model
22

3+
import kotlinx.serialization.KSerializer
34
import kotlinx.serialization.Serializable
5+
import kotlinx.serialization.builtins.serializer
6+
import kotlinx.serialization.descriptors.SerialDescriptor
7+
import kotlinx.serialization.encoding.Decoder
8+
import kotlinx.serialization.encoding.Encoder
49

510
@Serializable
611
data class Profile(
712
val nickname: String,
13+
@Serializable(with = Base64StringSerializer::class)
814
val profileImage: String?,
915
)
16+
17+
object Base64StringSerializer : KSerializer<String> {
18+
override val descriptor: SerialDescriptor
19+
get() = String.serializer().descriptor
20+
21+
override fun serialize(
22+
encoder: Encoder,
23+
value: String,
24+
) {
25+
val base64Encoded =
26+
android.util.Base64.encode(value.toByteArray(), android.util.Base64.DEFAULT)
27+
encoder.encodeString(String(base64Encoded))
28+
}
29+
30+
override fun deserialize(decoder: Decoder): String {
31+
val base64Decoded =
32+
android.util.Base64.decode(decoder.decodeString(), android.util.Base64.DEFAULT)
33+
return String(base64Decoded)
34+
}
35+
}

domain/model/src/main/java/com/lanpet/domain/model/free/FreeBoardComment.kt

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ package com.lanpet.domain.model.free
22

33
import com.lanpet.domain.model.Profile
44
import kotlinx.serialization.Serializable
5-
import java.util.SortedSet
6-
import java.util.TreeSet
75

86
@Serializable
97
data class FreeBoardComment(
@@ -12,10 +10,7 @@ data class FreeBoardComment(
1210
val comment: String?,
1311
val createdAt: String,
1412
val subComments: List<FreeBoardSubComment> = emptyList(),
15-
) {
16-
val subCommentsTree: SortedSet<FreeBoardSubComment>
17-
get() = TreeSet(subComments).toSortedSet(compareBy { it.createdAt })
18-
}
13+
)
1914

2015
@Serializable
2116
data class FreeBoardSubComment(

0 commit comments

Comments
 (0)