diff options
| author | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-07-08 21:21:08 +0200 |
|---|---|---|
| committer | Ruben Beltran del Rio <git@r.bdr.sh> | 2025-07-08 21:21:08 +0200 |
| commit | c21a68c807dcb84b4ce910ee0f73238a8019ffe9 (patch) | |
| tree | ae1e5e0fc7a846daf74623c6cd6270612ff0e56f /Map/Presentation/Preferences/TemplatesPreferencesView.swift | |
| parent | 8f6da65a680cdd30ec541b3b226137004a1e4681 (diff) | |
Allow export/import of preferences
Diffstat (limited to 'Map/Presentation/Preferences/TemplatesPreferencesView.swift')
| -rw-r--r-- | Map/Presentation/Preferences/TemplatesPreferencesView.swift | 34 |
1 files changed, 2 insertions, 32 deletions
diff --git a/Map/Presentation/Preferences/TemplatesPreferencesView.swift b/Map/Presentation/Preferences/TemplatesPreferencesView.swift index 5de2428..375ed68 100644 --- a/Map/Presentation/Preferences/TemplatesPreferencesView.swift +++ b/Map/Presentation/Preferences/TemplatesPreferencesView.swift @@ -37,7 +37,8 @@ struct Template: Identifiable, Codable, Hashable { } struct TemplatesPreferencesView: View { - @AppStorage("mapTemplates") private var templatesData: Data = Data() + @AppStorage("mapTemplates") private var templatesData: Data = UserPreferences.Defaults + .mapTemplates @State private var selectedTemplate: Template? @State private var showingAddSheet = false @State private var newTemplateName = "" @@ -183,12 +184,6 @@ struct TemplatesPreferencesView: View { .frame(maxWidth: .infinity, maxHeight: .infinity) } .onAppear { - // Initialize default templates if needed - if templates.wrappedValue.isEmpty - || !templates.wrappedValue.contains(where: { $0.isDefault }) - { - createDefaultTemplates() - } // Set first template as selected if none is selected if selectedTemplate == nil && !templates.wrappedValue.isEmpty { selectedTemplate = templates.wrappedValue.first @@ -244,31 +239,6 @@ struct TemplatesPreferencesView: View { .padding(.horizontal, Dimensions.Spacing.indulgent) } - private func createDefaultTemplates() { - let defaultTemplate = Template( - name: String(localized: "map_template.default.title"), - content: String(localized: "map_template.default.content"), - isDefault: true - ) - - let emptyTemplate = Template( - name: String(localized: "map_template.empty.title"), - content: "", - isDefault: false - ) - - if templates.wrappedValue.isEmpty { - templates.wrappedValue = [defaultTemplate, emptyTemplate] - } else { - // Add default template if none exists - if !templates.wrappedValue.contains(where: { $0.isDefault }) { - var currentTemplates = templates.wrappedValue - currentTemplates.insert(defaultTemplate, at: 0) - templates.wrappedValue = currentTemplates - } - } - } - private func addTemplate() { let newTemplate = Template( name: newTemplateName.isEmpty |