39 lines
947 B
Swift
39 lines
947 B
Swift
import Foundation
|
|
|
|
final class Settings: ObservableObject {
|
|
|
|
@Published
|
|
var outputDirectoryPath: String
|
|
|
|
@Published
|
|
var navigationBar: NavigationBarSettings
|
|
|
|
@Published
|
|
var posts: PostSettings
|
|
|
|
@Published
|
|
var pages: PageSettings
|
|
|
|
@Published
|
|
var german: LocalizedSettings
|
|
|
|
@Published
|
|
var english: LocalizedSettings
|
|
|
|
init(outputDirectoryPath: String, navigationBar: NavigationBarSettings, posts: PostSettings, pages: PageSettings, german: LocalizedSettings, english: LocalizedSettings) {
|
|
self.outputDirectoryPath = outputDirectoryPath
|
|
self.navigationBar = navigationBar
|
|
self.posts = posts
|
|
self.pages = pages
|
|
self.german = german
|
|
self.english = english
|
|
}
|
|
|
|
func localized(in language: ContentLanguage) -> LocalizedSettings {
|
|
switch language {
|
|
case .english: return english
|
|
case .german: return german
|
|
}
|
|
}
|
|
}
|