2024-12-13 11:26:34 +01:00

44 lines
1.0 KiB
Swift

import Foundation
final class Settings: ObservableObject {
@Published
var paths: PathSettings
/// The tags to show in the navigation bar
@Published
var navigationTags: [Tag]
@Published
var posts: PostSettings
@Published
var pages: PageSettings
@Published
var german: LocalizedPostSettings
@Published
var english: LocalizedPostSettings
init(paths: PathSettings, navigationTags: [Tag], posts: PostSettings, pages: PageSettings, german: LocalizedPostSettings, english: LocalizedPostSettings) {
self.paths = paths
self.navigationTags = navigationTags
self.posts = posts
self.pages = pages
self.german = german
self.english = english
}
func localized(in language: ContentLanguage) -> LocalizedPostSettings {
switch language {
case .english: return english
case .german: return german
}
}
var outputDirectory: URL {
URL(fileURLWithPath: paths.outputDirectoryPath)
}
}