Download apps/ios/Sources/Gateway/GatewaySetupCode.swift from Darochin/openskynet: direct link, hf CLI and curl.
- Browser
- Download file 1.42 kB
-
https://huggingface.co/Darochin/openskynet/resolve/main/apps/ios/Sources/Gateway/GatewaySetupCode.swift
- Command line
-
hf download hf://Darochin/openskynet/apps/ios/Sources/Gateway/GatewaySetupCode.swift
-
curl -L -o GatewaySetupCode.swift https://huggingface.co/Darochin/openskynet/resolve/main/apps/ios/Sources/Gateway/GatewaySetupCode.swift
1.42 kB
| import Foundation | |
| struct GatewaySetupPayload: Codable { | |
| var url: String? | |
| var host: String? | |
| var port: Int? | |
| var tls: Bool? | |
| var bootstrapToken: String? | |
| var token: String? | |
| var password: String? | |
| } | |
| enum GatewaySetupCode { | |
| static func decode(raw: String) -> GatewaySetupPayload? { | |
| if let payload = decodeFromJSON(raw) { | |
| return payload | |
| } | |
| if let decoded = decodeBase64Payload(raw), | |
| let payload = decodeFromJSON(decoded) | |
| { | |
| return payload | |
| } | |
| return nil | |
| } | |
| private static func decodeFromJSON(_ json: String) -> GatewaySetupPayload? { | |
| guard let data = json.data(using: .utf8) else { return nil } | |
| return try? JSONDecoder().decode(GatewaySetupPayload.self, from: data) | |
| } | |
| private static func decodeBase64Payload(_ raw: String) -> String? { | |
| let trimmed = raw.trimmingCharacters(in: .whitespacesAndNewlines) | |
| guard !trimmed.isEmpty else { return nil } | |
| let normalized = trimmed | |
| .replacingOccurrences(of: "-", with: "+") | |
| .replacingOccurrences(of: "_", with: "/") | |
| let padding = normalized.count % 4 | |
| let padded = padding == 0 ? normalized : normalized + String(repeating: "=", count: 4 - padding) | |
| guard let data = Data(base64Encoded: padded) else { return nil } | |
| return String(data: data, encoding: .utf8) | |
| } | |
| } | |