import Foundation final class LocalizedPostSettings: ObservableObject { @Published var title: String @Published var description: String @Published var feedUrlPrefix: String @Published var defaultPageLinkText: String init(title: String, description: String, feedUrlPrefix: String, defaultPageLinkText: String) { self.title = title self.description = description self.feedUrlPrefix = feedUrlPrefix self.defaultPageLinkText = defaultPageLinkText } // MARK: Storage init(file: LocalizedPostSettingsFile) { self.title = file.feedTitle self.description = file.feedDescription self.feedUrlPrefix = file.feedUrlPrefix self.defaultPageLinkText = file.defaultPageLinkText ?? "View" } var file: LocalizedPostSettingsFile { .init( feedTitle: title, feedDescription: description, feedUrlPrefix: feedUrlPrefix, defaultPageLinkText: defaultPageLinkText) } }