aboutsummaryrefslogtreecommitdiff
path: root/Hotline/iOS/ServerView.swift
diff options
context:
space:
mode:
Diffstat (limited to 'Hotline/iOS/ServerView.swift')
-rw-r--r--Hotline/iOS/ServerView.swift51
1 files changed, 51 insertions, 0 deletions
diff --git a/Hotline/iOS/ServerView.swift b/Hotline/iOS/ServerView.swift
new file mode 100644
index 0000000..09ab877
--- /dev/null
+++ b/Hotline/iOS/ServerView.swift
@@ -0,0 +1,51 @@
+import SwiftUI
+
+struct ServerView: View {
+ @Environment(Hotline.self) private var model: Hotline
+ @Environment(\.colorScheme) var colorScheme
+
+ enum Tab {
+ case chat, users, news, messageBoard, files
+ }
+
+ var body: some View {
+ TabView {
+ ChatView()
+ .tabItem {
+ Image(systemName: "bubble")
+ }
+ .tag(Tab.chat)
+
+ UsersView()
+ .tabItem {
+ Image(systemName: "person.2")
+ }
+ .tag(Tab.users)
+
+ if let v = model.serverVersion, v >= 150 {
+ NewsView()
+ .tabItem {
+ Image(systemName: "newspaper")
+ }
+ .tag(Tab.news)
+ }
+
+ MessageBoardView()
+ .tabItem {
+ Image(systemName: "book.closed")
+ }
+ .tag(Tab.messageBoard)
+
+ FilesView()
+ .tabItem {
+ Image(systemName: "folder").tint(.black)
+ }
+ .tag(Tab.files)
+ }
+ .accentColor(colorScheme == .dark ? .white : .black)
+ }
+}
+
+#Preview {
+ ServerView()
+}