Skip to content

Commit 59e6874

Browse files
feat: implement votd API endpoint for Kotlin (#19)
* feat: implement votd API endpoint for Kotlin * style: add newlines to bottom of files
1 parent a4ee43c commit 59e6874

3 files changed

Lines changed: 38 additions & 1 deletion

File tree

android/src/main/java/com/youversion/reactnativesdk/RNYouVersionPlatformModule.kt

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package com.youversion.reactnativesdk
22

33
import com.youversion.platform.core.YouVersionPlatformConfiguration
4+
import com.youversion.reactnativesdk.api.YVPVotdApi
45
import expo.modules.kotlin.modules.Module
56
import expo.modules.kotlin.modules.ModuleDefinition
7+
import expo.modules.kotlin.functions.Coroutine
68

79
class RNYouVersionPlatformModule : Module() {
810
override fun definition() = ModuleDefinition {
@@ -25,5 +27,11 @@ class RNYouVersionPlatformModule : Module() {
2527
Function("getAccessToken") {
2628
YouVersionPlatformConfiguration.accessToken
2729
}
30+
31+
AsyncFunction("verseOfTheDay") Coroutine { dayOfYear: Int ->
32+
return@Coroutine YVPVotdApi.verseOfTheDay(
33+
dayOfYear = dayOfYear
34+
)
35+
}
2836
}
29-
}
37+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package com.youversion.reactnativesdk.api
2+
3+
import com.youversion.platform.core.votd.models.YouVersionVerseOfTheDay
4+
import expo.modules.kotlin.records.Field
5+
import expo.modules.kotlin.records.Record
6+
7+
data class YouVersionVerseOfTheDayRecord(
8+
@Field
9+
val passageId: String,
10+
@Field
11+
val day: Int
12+
) : Record {
13+
constructor(votd: YouVersionVerseOfTheDay) : this(
14+
passageId = votd.passageUsfm,
15+
day = votd.day
16+
)
17+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package com.youversion.reactnativesdk.api
2+
3+
import com.youversion.platform.core.api.YouVersionApi
4+
5+
object YVPVotdApi {
6+
suspend fun verseOfTheDay(dayOfYear: Int): YouVersionVerseOfTheDayRecord {
7+
val votd = YouVersionApi.votd
8+
.verseOfTheDay(dayOfTheYear = dayOfYear)
9+
10+
return YouVersionVerseOfTheDayRecord(votd)
11+
}
12+
}

0 commit comments

Comments
 (0)