aboutsummaryrefslogtreecommitdiff
path: root/Hotline/Models
diff options
context:
space:
mode:
Diffstat (limited to 'Hotline/Models')
-rw-r--r--Hotline/Models/FileDetails.swift13
-rw-r--r--Hotline/Models/Hotline.swift11
2 files changed, 24 insertions, 0 deletions
diff --git a/Hotline/Models/FileDetails.swift b/Hotline/Models/FileDetails.swift
new file mode 100644
index 0000000..20b1ee2
--- /dev/null
+++ b/Hotline/Models/FileDetails.swift
@@ -0,0 +1,13 @@
+import UniformTypeIdentifiers
+
+struct FileDetails:Identifiable {
+ let id = UUID()
+ var name: String
+ var path: [String]
+ var size: Int
+ var comment: String
+ var type: String
+ var creator: String
+ var created: Date
+ var modified: Date
+}
diff --git a/Hotline/Models/Hotline.swift b/Hotline/Models/Hotline.swift
index 6b5e3a7..7c05778 100644
--- a/Hotline/Models/Hotline.swift
+++ b/Hotline/Models/Hotline.swift
@@ -440,6 +440,17 @@ final class Hotline: HotlineClientDelegate, HotlineFileClientDelegate {
}
}
}
+
+ @MainActor func fileDetails(_ fileName: String, path: [String], complete callback: ((FileDetails?) -> Void)? = nil) {
+ var fullPath: [String] = []
+ if path.count > 1 {
+ fullPath = Array(path[0..<path.count-1])
+ }
+
+ self.client.sendGetFileInfo(name: fileName, path: fullPath) { info in
+ callback?(info)
+ }
+ }
@MainActor func previewFile(_ fileName: String, path: [String], complete callback: ((PreviewFileInfo?) -> Void)? = nil) {
var fullPath: [String] = []