feat(mac): add node ssh and compact versions
This commit is contained in:
@@ -38,7 +38,10 @@ struct NodeMenuEntryFormatter {
|
||||
static func detailRight(_ entry: InstanceInfo) -> String? {
|
||||
var parts: [String] = []
|
||||
if let platform = self.platformText(entry) { parts.append(platform) }
|
||||
if let version = entry.version?.nonEmpty { parts.append("v\(version)") }
|
||||
if let version = entry.version?.nonEmpty {
|
||||
let short = self.compactVersion(version)
|
||||
parts.append("v\(short)")
|
||||
}
|
||||
if parts.isEmpty { return nil }
|
||||
return parts.joined(separator: " · ")
|
||||
}
|
||||
@@ -84,6 +87,18 @@ struct NodeMenuEntryFormatter {
|
||||
return (prefix, versionToken)
|
||||
}
|
||||
|
||||
private static func compactVersion(_ raw: String) -> String {
|
||||
let trimmed = raw.trimmingCharacters(in: .whitespacesAndNewlines)
|
||||
guard !trimmed.isEmpty else { return trimmed }
|
||||
if let range = trimmed.range(
|
||||
of: #"\s*\([^)]*\d[^)]*\)$"#,
|
||||
options: .regularExpression
|
||||
) {
|
||||
return String(trimmed[..<range.lowerBound])
|
||||
}
|
||||
return trimmed
|
||||
}
|
||||
|
||||
static func leadingSymbol(_ entry: InstanceInfo) -> String {
|
||||
if self.isGateway(entry) { return self.safeSystemSymbol("dot.radiowaves.left.and.right", fallback: "network") }
|
||||
if let family = entry.deviceFamily?.lowercased() {
|
||||
|
||||
Reference in New Issue
Block a user