piper-app/Piper/Sources/Logic/ViewModels/RepositoriesViewModel.swift

38 lines
768 B
Swift

//
// RepositoriesViewModel.swift
// Piper ~ App
//
// Created by Javier Cicchelli on 21/10/2024.
// Copyright © 2024 Röck+Cöde. All rights reserved.
//
import Foundation
import Observation
import SwiftData
@Observable
final class RepositoriesViewModel {
// MARK: Properties
var fileImporterOpened: Bool = false
var rowsSelected: Set<Repository.ID> = []
// MARK: Functions
func addRepository(
_ result: Result<URL, any Error>,
into context: ModelContext
) {
do {
let url = try result.get()
let repository = Repository(url)
context.insert(repository)
} catch {
// TODO: Handle this error gracefully.
}
}
}