import Foundation struct SettingsHostPort: Equatable { var host: String var port: Int } enum SettingsNetworkingHelpers { static func parseHostPort(from address: String) -> SettingsHostPort? { let trimmed = address.trimmingCharacters(in: .whitespacesAndNewlines) guard !trimmed.isEmpty else { return nil } if trimmed.hasPrefix("["), let close = trimmed.firstIndex(of: "]"), close < trimmed.endIndex { let host = String(trimmed[trimmed.index(after: trimmed.startIndex).. String { if let host, let port { let needsBrackets = host.contains(":") && !host.hasPrefix("[") && !host.hasSuffix("]") let hostPart = needsBrackets ? "[\(host)]" : host return "http://\(hostPart):\(port)" } return "http://\(fallback)" } }