From 682147c550ae1d6512b2fc5984993f395ff44e06 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Mon, 3 Mar 2025 03:15:53 -0800 Subject: feat: Development commit --- Sora/Data/Settings/SettingsManager.swift | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'Sora/Data/Settings/SettingsManager.swift') diff --git a/Sora/Data/Settings/SettingsManager.swift b/Sora/Data/Settings/SettingsManager.swift index 7d38d0f..0ad3973 100644 --- a/Sora/Data/Settings/SettingsManager.swift +++ b/Sora/Data/Settings/SettingsManager.swift @@ -129,6 +129,14 @@ class SettingsManager: ObservableObject { try JSONEncoder().encode(bookmarks) } + func importBookmarks(from data: Data) throws { + let importedBookmarks = try JSONDecoder().decode([SettingsBookmark].self, from: data) + let existingIDs = Set(bookmarks.map(\.id)) + let newBookmarks = importedBookmarks.filter { !existingIDs.contains($0.id) } + + bookmarks.append(contentsOf: newBookmarks) + } + // MARK: - Search History Management func removeSearchHistoryEntry(at offsets: IndexSet) { searchHistory.remove(atOffsets: offsets) -- cgit v1.2.3