Files

31 lines
966 B
Swift

// SPDX-FileCopyrightText: 2026 Kaede Akino
// SPDX-License-Identifier: GPL-3.0-only
import Foundation
import TermindDomain
nonisolated extension RemoteFile.Kind {
public var symbol: String {
switch self {
case .directory: "folder.fill"
case .symbolicLink: "link"
case .file: "doc"
case .special, .unknown: "questionmark.square.dashed"
}
}
}
nonisolated extension RemoteFile {
public var sftpKindDescription: String {
switch kind {
case .directory: return String(localized: "Folder")
case .symbolicLink: return String(localized: "Symbolic Link")
case .special: return String(localized: "Special")
case .unknown: return String(localized: AppStrings.SFTP.unknown)
case .file:
let fileExtension = (name as NSString).pathExtension
return fileExtension.isEmpty ? String(localized: "File") : fileExtension.lowercased()
}
}
}