diff --git a/Sources/Brave/Frontend/Browser/Helpers/LaunchHelper.swift b/Sources/Brave/Frontend/Browser/Helpers/LaunchHelper.swift index 1e9985d0600..a77fe353705 100644 --- a/Sources/Brave/Frontend/Browser/Helpers/LaunchHelper.swift +++ b/Sources/Brave/Frontend/Browser/Helpers/LaunchHelper.swift @@ -150,9 +150,8 @@ private extension FilterListStorage { if filterLists.isEmpty { // If we don't have filter lists yet loaded, use the settings return Set(allFilterListSettings.compactMap { setting in - guard let componentId = setting.componentId else { return nil } return .filterList( - componentId: componentId, + componentId: setting.componentId, isAlwaysAggressive: setting.isAlwaysAggressive ) }) diff --git a/Sources/Brave/WebFilters/FilterListResourceDownloader.swift b/Sources/Brave/WebFilters/FilterListResourceDownloader.swift index 2a9dfa8579d..94e5fe99bf5 100644 --- a/Sources/Brave/WebFilters/FilterListResourceDownloader.swift +++ b/Sources/Brave/WebFilters/FilterListResourceDownloader.swift @@ -75,7 +75,7 @@ public actor FilterListResourceDownloader { do { try await filterListSettings.asyncConcurrentForEach { setting in guard await setting.isEnabled == true else { return } - guard let componentId = await setting.componentId else { return } + let componentId = await setting.componentId guard FilterList.disabledComponentIDs.contains(componentId) else { return } // Try to load the filter list folder. We always have to compile this at start diff --git a/Sources/Brave/WebFilters/FilterListStorage.swift b/Sources/Brave/WebFilters/FilterListStorage.swift index 75accd392c3..b3c1750b5e0 100644 --- a/Sources/Brave/WebFilters/FilterListStorage.swift +++ b/Sources/Brave/WebFilters/FilterListStorage.swift @@ -47,7 +47,8 @@ import Combine func loadFilterListSettings() { var componentIds: Set = [] allFilterListSettings = FilterListSetting.loadAllSettings(fromMemory: !persistChanges).filter({ setting in - guard let componentId = setting.componentId, !componentId.isEmpty, !componentIds.contains(componentId) else { + let componentId = setting.componentId + guard !componentId.isEmpty, !componentIds.contains(componentId) else { setting.delete(inMemory: persistChanges) return false } diff --git a/Sources/Brave/WebFilters/ShieldStats/Adblock/AdBlockStats.swift b/Sources/Brave/WebFilters/ShieldStats/Adblock/AdBlockStats.swift index 58c52f962e3..a99ee9592a6 100644 --- a/Sources/Brave/WebFilters/ShieldStats/Adblock/AdBlockStats.swift +++ b/Sources/Brave/WebFilters/ShieldStats/Adblock/AdBlockStats.swift @@ -291,7 +291,6 @@ public actor AdBlockStats { extension FilterListSetting { @MainActor var engineSource: CachedAdBlockEngine.Source? { - guard let componentId = componentId else { return nil } return .filterList(componentId: componentId) } } diff --git a/Sources/Data/models/FilterListSetting.swift b/Sources/Data/models/FilterListSetting.swift index a4b039fbf4b..0ed0a878826 100644 --- a/Sources/Data/models/FilterListSetting.swift +++ b/Sources/Data/models/FilterListSetting.swift @@ -16,7 +16,7 @@ public final class FilterListSetting: NSManagedObject, CRUD { } @MainActor @NSManaged public var uuid: String - @MainActor @NSManaged public var componentId: String? + @MainActor @NSManaged public var componentId: String @MainActor @NSManaged public var isEnabled: Bool @MainActor @NSManaged public var isAlwaysAggressive: Bool @MainActor @NSManaged public var order: NSNumber? @@ -39,7 +39,7 @@ public final class FilterListSetting: NSManagedObject, CRUD { /// Create a filter list setting for the given UUID and enabled status @MainActor public class func create( - uuid: String, componentId: String?, isEnabled: Bool, order: Int, inMemory: Bool, isAlwaysAggressive: Bool + uuid: String, componentId: String, isEnabled: Bool, order: Int, inMemory: Bool, isAlwaysAggressive: Bool ) -> FilterListSetting { var newSetting: FilterListSetting! diff --git a/Sources/Data/models/Model.xcdatamodeld/.xccurrentversion b/Sources/Data/models/Model.xcdatamodeld/.xccurrentversion index 483172cbd80..bcbcdab8fd3 100644 --- a/Sources/Data/models/Model.xcdatamodeld/.xccurrentversion +++ b/Sources/Data/models/Model.xcdatamodeld/.xccurrentversion @@ -3,6 +3,6 @@ _XCCurrentVersionName - Model24.xcdatamodel + Model25.xcdatamodel diff --git a/Sources/Data/models/Model.xcdatamodeld/Model25.xcdatamodel/contents b/Sources/Data/models/Model.xcdatamodeld/Model25.xcdatamodel/contents new file mode 100644 index 00000000000..2937cb1a490 --- /dev/null +++ b/Sources/Data/models/Model.xcdatamodeld/Model25.xcdatamodel/contents @@ -0,0 +1,234 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file