- Auth: переключено на Pulse API (api.digital-home.site) вместо health - TabBar: Главная, Задачи, Привычки, Здоровье, Финансы - Models: TaskModels, HabitModels, FinanceModels, обновлённые AuthModels - Services: APIService (Pulse API), HealthAPIService (health отдельно) - Dashboard: обзор дня с задачами, привычками, readiness, балансом - Tasks: список, фильтр, создание, выполнение, удаление - Habits: список с прогресс-баром, отметка выполнения, стрики - Health: бывший DashboardView, HealthKit sync через health API key - Finance: баланс, список транзакций, добавление расхода/дохода - Health данные через x-api-key вместо JWT токена health сервиса
52 lines
1.3 KiB
Swift
52 lines
1.3 KiB
Swift
import Foundation
|
|
|
|
enum TaskPriority: String, Codable, CaseIterable {
|
|
case low, medium, high, urgent
|
|
var displayName: String {
|
|
switch self {
|
|
case .low: return "Низкий"
|
|
case .medium: return "Средний"
|
|
case .high: return "Высокий"
|
|
case .urgent: return "Срочный"
|
|
}
|
|
}
|
|
var color: String {
|
|
switch self {
|
|
case .low: return "8888aa"
|
|
case .medium: return "ffa502"
|
|
case .high: return "ff4757"
|
|
case .urgent: return "ff0000"
|
|
}
|
|
}
|
|
}
|
|
|
|
struct PulseTask: Codable, Identifiable {
|
|
let id: Int
|
|
var title: String
|
|
var description: String?
|
|
var done: Bool
|
|
var priority: TaskPriority?
|
|
var dueDate: String?
|
|
var reminderTime: String?
|
|
var createdAt: String?
|
|
|
|
enum CodingKeys: String, CodingKey {
|
|
case id, title, description, done, priority
|
|
case dueDate = "due_date"
|
|
case reminderTime = "reminder_time"
|
|
case createdAt = "created_at"
|
|
}
|
|
}
|
|
|
|
struct CreateTaskRequest: Codable {
|
|
var title: String
|
|
var description: String?
|
|
var priority: TaskPriority?
|
|
var dueDate: String?
|
|
|
|
enum CodingKeys: String, CodingKey {
|
|
case title, description, priority
|
|
case dueDate = "due_date"
|
|
}
|
|
}
|