summaryrefslogtreecommitdiff
path: root/Xmission/Code/Home/ViewModels
diff options
context:
space:
mode:
authorChristian Segundo2023-07-24 10:45:15 +0200
committerChristian Segundo2023-07-24 10:45:15 +0200
commit01ce93653d86f2a47eda58d2e74c3926981b22cf (patch)
treedef1c1599a0a044ab9c64d48b89c704f4cbb0938 /Xmission/Code/Home/ViewModels
parent864b644e8ecafccaf84b40168524e47351a6d111 (diff)
downloadxmission-ios-01ce93653d86f2a47eda58d2e74c3926981b22cf.tar.gz
Diffstat (limited to 'Xmission/Code/Home/ViewModels')
-rw-r--r--Xmission/Code/Home/ViewModels/HomeViewModel.swift35
1 files changed, 35 insertions, 0 deletions
diff --git a/Xmission/Code/Home/ViewModels/HomeViewModel.swift b/Xmission/Code/Home/ViewModels/HomeViewModel.swift
new file mode 100644
index 0000000..f1b95e5
--- /dev/null
+++ b/Xmission/Code/Home/ViewModels/HomeViewModel.swift
@@ -0,0 +1,35 @@
+import Foundation
+
+class HomeViewModel: ObservableObject {
+ @Published var torrents: ListTorrentResponse = []
+
+ var timer: Timer?
+
+ init() {
+ timer = Timer.scheduledTimer(
+ withTimeInterval: 1,
+ repeats: true,
+ block: { _ in
+ self.refresh()
+ }
+ )
+ }
+
+ deinit {
+ timer?.invalidate()
+ }
+
+ func refresh() {
+ let randomFloat = Float.random(in: 1 ..< 100)
+
+ torrents = [
+ Torrent(
+ name: "foo",
+ completionPercent: randomFloat, ratio: 0,
+ rateDownload: 1,
+ rateUpload: 1,
+ labels: ["foo", "bar"]
+ )
+ ]
+ }
+}