From d02fef490f844ee5a75d947ff90fe24b113e7246 Mon Sep 17 00:00:00 2001 From: shannon Date: Wed, 26 Mar 2025 09:21:25 -0400 Subject: [PATCH] Correct handling of approval_required on V2 instances --- .../Onboarding/Register/MastodonRegisterViewModel.swift | 1 + .../MastodonSDK/Entity/Mastodon+Entity+InstanceV2.swift | 5 ++--- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel.swift b/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel.swift index 105f0a088..e4247d2ad 100644 --- a/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel.swift +++ b/Mastodon/Scene/Onboarding/Register/MastodonRegisterViewModel.swift @@ -524,4 +524,5 @@ extension Mastodon.Entity.V2.Instance: RegistrationInstance { var minAge: Int? { return registrations?.minAge } var isBeyondVersion1: Bool { return true } var isOpenToNewRegistrations: Bool? { return registrations?.enabled } + var approvalRequired: Bool? { return registrations?.approvalRequired } } diff --git a/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+InstanceV2.swift b/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+InstanceV2.swift index c8bcc35a6..20d2d550e 100644 --- a/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+InstanceV2.swift +++ b/MastodonSDK/Sources/MastodonSDK/Entity/Mastodon+Entity+InstanceV2.swift @@ -19,7 +19,6 @@ extension Mastodon.Entity.V2 { public let apiVersions: [String : Int]? public let languages: [String]? // (ISO 639 Part 1-5 language codes) public let registrations: Mastodon.Entity.V2.Instance.Registrations? - public let approvalRequired: Bool? public let invitesEnabled: Bool? public let urls: Mastodon.Entity.Instance.InstanceURL? public let statistics: Mastodon.Entity.Instance.Statistics? @@ -41,7 +40,6 @@ extension Mastodon.Entity.V2 { self.apiVersions = nil self.languages = nil self.registrations = nil - self.approvalRequired = approvalRequired self.invitesEnabled = nil self.urls = nil self.statistics = nil @@ -59,7 +57,6 @@ extension Mastodon.Entity.V2 { case apiVersions = "api_versions" case languages case registrations - case approvalRequired = "approval_required" case invitesEnabled = "invites_enabled" case urls case statistics = "stats" @@ -93,10 +90,12 @@ extension Mastodon.Entity.V2.Instance { public struct Registrations: Codable { public let enabled: Bool public let minAge: Int? + public let approvalRequired: Bool? enum CodingKeys: String, CodingKey { case enabled case minAge = "min_age" + case approvalRequired = "approval_required" } } }