Files
Termind/TFI/Application/FeatureModels/MobileConnectionProtocol.swift
T
Kaede AkinoandClaude Code 8b6325db7b refactor(connections): centralize default terminal resolution
Share default transport ordering and connection-kind resolution across desktop and mobile opening paths. Keep explicit transport choices intact and skip unavailable default terminals before admission.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-18 13:20:49 +08:00

25 lines
568 B
Swift

import TermindApplication
import TermindDomain
import struct TermindDomain.Host
nonisolated enum MobileConnectionProtocol: Hashable {
case ssh
case sftp
var useCase: HostUseCase {
switch self {
case .ssh: .preferredTerminal
case .sftp: .sftp
}
}
func kind(for host: Host) -> ConnectionHistoryEntry.Kind? {
guard host.supports(useCase.protocolRequirement) else { return nil }
switch self {
case .ssh: return .preferredTerminal(for: host)
case .sftp: return .sftp
}
}
}