Przeglądaj źródła

feat: pull out TaskView skeleton

Sam Jaffe 3 tygodni temu
rodzic
commit
b62ef476d7
2 zmienionych plików z 29 dodań i 8 usunięć
  1. 1 8
      Todos/View/CategoryPanelView.swift
  2. 28 0
      Todos/View/TaskView.swift

+ 1 - 8
Todos/View/CategoryPanelView.swift

@@ -25,14 +25,7 @@ struct CategoryPanelView: View {
     Text("Created on \(item.timestamp, format: style)")
     List {
       ForEach($item.tasks) { task in
-        HStack {
-          Toggle("", isOn: task.isComplete)
-          TextField("Task Name", text: task.name)
-        }
-        HStack {
-          Spacer(minLength: 30)
-          TextField("Notes", text: task.notes).font(.footnote)
-        }
+        TaskView(task: task)
       }
     }
   }

+ 28 - 0
Todos/View/TaskView.swift

@@ -0,0 +1,28 @@
+//
+//  TaskView.swift
+//  Todos
+//
+//  Created by Sam Jaffe on 2/28/26.
+//
+
+import SwiftUI
+
+struct TaskView: View {
+  @Binding var task: Task
+  
+  var body: some View {
+    HStack {
+      Toggle("", isOn: $task.isComplete)
+      TextField("Task Name", text: $task.name)
+    }
+    HStack {
+      Spacer(minLength: 30)
+      TextField("Notes", text: $task.notes).font(.footnote)
+    }
+  }
+}
+
+#Preview {
+  @Previewable @State var task = Task(name: "New Task")
+  TaskView(task: $task)
+}