import com.fasterxml.jackson.databind.JsonNode
import net.pterodactylus.rhynodge.Filter
import net.pterodactylus.rhynodge.State
-import net.pterodactylus.rhynodge.states.AbstractState
import net.pterodactylus.rhynodge.states.JsonState
import java.time.Instant
private fun getPromotionalOfferDate(gameJson: JsonNode, date: String) = listOf("promotionalOffers", "upcomingPromotionalOffers")
.map { "/promotions/$it/0/promotionalOffers/0/$date" }
- .map { gameJson.at(it) }
- .filter { !it.isMissingNode }
- .map { it.asText() }
+ .map(gameJson::at)
+ .filterNot(JsonNode::isMissingNode)
+ .map(JsonNode::asText)
.map(Instant::parse)
.first()
}
-
-data class FreeGame(
- val title: String,
- val imageUrl: String,
- val startDate: Instant,
- val endDate: Instant
-)
-
-class FreeGamesState(val games: Set<FreeGame>) : AbstractState(true) {
-
- override fun plainText(): String {
- TODO("Not yet implemented")
- }
-
-}