Skip to content

Commit dc2bd2e

Browse files
committed
Created transformer and UniWrapper, new mapping in LemmyApi, updated FeatureFlags, ACTIVE_CHANGES.md and tests
1 parent 3ca941b commit dc2bd2e

File tree

12 files changed

+3403
-977
lines changed

12 files changed

+3403
-977
lines changed

ACTIVE_CHANGES.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@
33
This document lists the changes that you will need to actively handle, through feature flags.
44

55

6+
## 0.19.11
7+
8+
- Added `last_donation_notification` field to LocalUser
9+
- Donation Dialog Shown Endpoint
10+
611
## 0.19.6
712

813
- ImageDetails

GeneratorScripts/src/main/kotlin/MapperGenerator0x19x11.kt

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ import io.mcarle.konvert.api.Konfig
44
import io.mcarle.konvert.api.Konverter
55
import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.*
66

7-
@Konverter(
8-
options = [
9-
Konfig(key = "konvert.konverter.generate-class", value = "true"),
10-
Konfig(key = "konvert.enable-converters", value = "FloatToIntConverter"),
11-
Konfig(key = "konvert.add-generated-konverter-annotation", value = "false"),
12-
],
13-
)
7+
//@Konverter(
8+
// options = [
9+
// Konfig(key = "konvert.konverter.generate-class", value = "true"),
10+
// Konfig(key = "konvert.enable-converters", value = "FloatToIntConverter"),
11+
// Konfig(key = "konvert.add-generated-konverter-annotation", value = "false"),
12+
// ],
13+
//)
1414
internal interface MapperGenerator0x19x11 {
1515

1616
fun toUni(d: AddAdminResponse): it.vercruysse.lemmyapi.datatypes.AddAdminResponse
@@ -116,7 +116,6 @@ internal interface MapperGenerator0x19x11 {
116116
fun toUni(d: ModTransferCommunity): it.vercruysse.lemmyapi.datatypes.ModTransferCommunity
117117
fun toUni(d: ModTransferCommunityView): it.vercruysse.lemmyapi.datatypes.ModTransferCommunityView
118118
fun toUni(d: MyUserInfo): it.vercruysse.lemmyapi.datatypes.MyUserInfo
119-
fun toUni(d: PaginationCursor): it.vercruysse.lemmyapi.datatypes.PaginationCursor
120119
fun toUni(d: Person): it.vercruysse.lemmyapi.datatypes.Person
121120
fun toUni(d: PersonAggregates): it.vercruysse.lemmyapi.datatypes.PersonAggregates
122121
fun toUni(d: PersonBlockView): it.vercruysse.lemmyapi.datatypes.PersonBlockView

app/src/commonMain/kotlin/it/vercruysse/lemmyapi/FeatureFlags.kt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ class FeatureFlags(val version: Version) {
1313
private val v0x19x2Plus = version.withoutSuffixes() >= "0.19.2".toVersion()
1414
private val v0x19x4Plus = version.withoutSuffixes() >= "0.19.4".toVersion()
1515
private val v0x19x6Plus = version.withoutSuffixes() >= "0.19.6".toVersion()
16+
private val v0x19x11Plus = version.withoutSuffixes() >= "0.19.11".toVersion()
1617

1718
/**
1819
* InstanceBlock Feature added in 0.19
@@ -98,4 +99,9 @@ class FeatureFlags(val version: Version) {
9899
* Search posts on title, feature added in 0.19.6
99100
*/
100101
fun searchPostsOnTitle(): Boolean = v0x19x6Plus
102+
103+
/**
104+
* Mark donation dialog as shown, feature added in 0.19.11
105+
*/
106+
fun donation_dialog_shown(): Boolean = v0x19x11Plus
101107
}

app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApi.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,8 @@ object LemmyApi {
140140
0, 1 -> it.vercruysse.lemmyapi.v0.x19.x0.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth)
141141
2, 3 -> it.vercruysse.lemmyapi.v0.x19.x3.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth)
142142
4, 5 -> it.vercruysse.lemmyapi.v0.x19.x4.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth)
143-
6, 7, 8 -> it.vercruysse.lemmyapi.v0.x19.x6.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth)
143+
6, 7, 8, 9, 10 -> it.vercruysse.lemmyapi.v0.x19.x6.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth)
144+
11 -> it.vercruysse.lemmyapi.v0.x19.x11.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth)
144145
else -> it.vercruysse.lemmyapi.v0.x19.x6.LemmyApiUniWrapper(client, semverV, baseUrlInstance, auth)
145146
}
146147

app/src/commonMain/kotlin/it/vercruysse/lemmyapi/LemmyApiBaseController.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import io.ktor.client.*
55
import it.vercruysse.lemmyapi.datatypes.*
66
import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse
77
import it.vercruysse.lemmyapi.dto.ImportUserSettings
8-
import it.vercruysse.lemmyapi.utils.postResult
98

109
abstract class LemmyApiBaseController(client: HttpClient, actualVersion: Version, baseUrl: String, override var auth: String?) :
1110
LemmyApiBase(

app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiController.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1+
package it.vercruysse.lemmyapi.v0.x19.x11
12

23
import io.ktor.client.HttpClient
34
import it.vercruysse.lemmyapi.dto.ExportUserSettingsResponse
45
import it.vercruysse.lemmyapi.dto.ImportUserSettings
56
import it.vercruysse.lemmyapi.utils.getResult
67
import it.vercruysse.lemmyapi.utils.postResult
78
import it.vercruysse.lemmyapi.utils.putResult
8-
import it.vercruysse.lemmyapi.v0.x19.x11.LemmyApiRouter
99
import it.vercruysse.lemmyapi.v0.x19.x11.datatypes.*
1010

1111
internal class LemmyApiController(client: HttpClient, auth: String?) :
@@ -762,7 +762,7 @@ internal class LemmyApiController(client: HttpClient, auth: String?) :
762762
*
763763
* @GET("user/list_logins")
764764
*/
765-
override suspend fun listLogins(): Result<Unit> =
765+
override suspend fun listLogins(): Result<List<LoginToken>> =
766766
client.getResult("user/list_logins")
767767

768768
/**

app/src/commonMain/kotlin/it/vercruysse/lemmyapi/v0/x19/x11/LemmyApiRouter.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -664,7 +664,7 @@ internal abstract class LemmyApiRouter(client: HttpClient, auth: String?) : Auth
664664
*
665665
* @GET("user/list_logins")
666666
*/
667-
abstract suspend fun listLogins(): Result<Unit>
667+
abstract suspend fun listLogins(): Result<List<LoginToken>>
668668

669669
/**
670670
* Returns an error message if your auth token is invalid

0 commit comments

Comments
 (0)