diff --git a/Loop/Models/ServiceAuthentication/AmplitudeService.swift b/Loop/Models/ServiceAuthentication/AmplitudeService.swift index 923285eb41..f9a2e496d4 100644 --- a/Loop/Models/ServiceAuthentication/AmplitudeService.swift +++ b/Loop/Models/ServiceAuthentication/AmplitudeService.swift @@ -53,7 +53,7 @@ class AmplitudeService: ServiceAuthentication { } func reset() { - credentials[0].value = nil + credentials[0].reset() isAuthorized = false client = nil } diff --git a/Loop/Models/ServiceAuthentication/LogglyService.swift b/Loop/Models/ServiceAuthentication/LogglyService.swift index b97e541c48..f233bbca53 100644 --- a/Loop/Models/ServiceAuthentication/LogglyService.swift +++ b/Loop/Models/ServiceAuthentication/LogglyService.swift @@ -48,7 +48,7 @@ class LogglyService: ServiceAuthentication { } func reset() { - credentials[0].value = nil + credentials[0].reset() isAuthorized = false client = nil } diff --git a/Loop/Models/ServiceAuthentication/MLabService.swift b/Loop/Models/ServiceAuthentication/MLabService.swift index 0330e69e6f..7465669283 100644 --- a/Loop/Models/ServiceAuthentication/MLabService.swift +++ b/Loop/Models/ServiceAuthentication/MLabService.swift @@ -67,8 +67,8 @@ class MLabService: ServiceAuthentication { } func reset() { - credentials[0].value = nil - credentials[1].value = nil + credentials[0].reset() + credentials[1].reset() isAuthorized = false } diff --git a/Loop/Models/ServiceAuthentication/NightscoutService.swift b/Loop/Models/ServiceAuthentication/NightscoutService.swift index 05baa0733d..5b6e98186e 100644 --- a/Loop/Models/ServiceAuthentication/NightscoutService.swift +++ b/Loop/Models/ServiceAuthentication/NightscoutService.swift @@ -76,8 +76,8 @@ class NightscoutService: ServiceAuthentication { } func reset() { - credentials[0].value = nil - credentials[1].value = nil + credentials[0].reset() + credentials[1].reset() isAuthorized = false uploader = nil } diff --git a/Loop/Models/ServiceAuthentication/ServiceCredential.swift b/Loop/Models/ServiceAuthentication/ServiceCredential.swift index 211a4c60b6..36cc75e757 100644 --- a/Loop/Models/ServiceAuthentication/ServiceCredential.swift +++ b/Loop/Models/ServiceAuthentication/ServiceCredential.swift @@ -34,7 +34,11 @@ struct ServiceCredential { self.placeholder = placeholder self.isSecret = isSecret self.keyboardType = keyboardType - self.value = value + self.value = value ?? options?.first?.value self.options = options } + + mutating func reset() { + self.value = options?.first?.value + } } diff --git a/Loop/Models/ServiceAuthentication/ShareService.swift b/Loop/Models/ServiceAuthentication/ShareService.swift index 22bd3f78b1..573b1cda90 100644 --- a/Loop/Models/ServiceAuthentication/ShareService.swift +++ b/Loop/Models/ServiceAuthentication/ShareService.swift @@ -104,9 +104,9 @@ class ShareService: ServiceAuthentication { } func reset() { - credentials[0].value = nil - credentials[1].value = nil - credentials[2].value = nil + credentials[0].reset() + credentials[1].reset() + credentials[2].reset() isAuthorized = false client = nil }