Full page content, fixes, cleaner settings

This commit is contained in:
Christoph Hagen
2024-12-13 11:26:34 +01:00
parent efc9234917
commit b3b8c9a610
50 changed files with 1351 additions and 607 deletions

View File

@ -3,10 +3,11 @@ import Foundation
final class Settings: ObservableObject {
@Published
var outputDirectoryPath: String
var paths: PathSettings
/// The tags to show in the navigation bar
@Published
var navigationBar: NavigationBarSettings
var navigationTags: [Tag]
@Published
var posts: PostSettings
@ -15,24 +16,28 @@ final class Settings: ObservableObject {
var pages: PageSettings
@Published
var german: LocalizedSettings
var german: LocalizedPostSettings
@Published
var english: LocalizedSettings
var english: LocalizedPostSettings
init(outputDirectoryPath: String, navigationBar: NavigationBarSettings, posts: PostSettings, pages: PageSettings, german: LocalizedSettings, english: LocalizedSettings) {
self.outputDirectoryPath = outputDirectoryPath
self.navigationBar = navigationBar
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) -> LocalizedSettings {
func localized(in language: ContentLanguage) -> LocalizedPostSettings {
switch language {
case .english: return english
case .german: return german
}
}
var outputDirectory: URL {
URL(fileURLWithPath: paths.outputDirectoryPath)
}
}