ReadKeep/readeck/Domain/UseCase/SearchBookmarksUseCase.swift
Ilyas Hallak 930779169b feat: introduce protocol-based UseCase architecture and mock factory
- Add protocols for all UseCases and implement them in their respective classes
- Add DefaultUseCaseFactory and MockUseCaseFactory for dependency injection
- Implement all mock UseCases with dummy data
- Start migration of view models and views to protocol-based UseCase injection (not all migrated yet)
- Refactor previews and some initializers for easier testing
- Move SectionHeader to Components, update server settings UI text
- Add sample article.html for mock content
2025-07-18 00:46:07 +02:00

17 lines
464 B
Swift

import Foundation
protocol PSearchBookmarksUseCase {
func execute(search: String) async throws -> BookmarksPage
}
class SearchBookmarksUseCase: PSearchBookmarksUseCase {
private let repository: PBookmarksRepository
init(repository: PBookmarksRepository) {
self.repository = repository
}
func execute(search: String) async throws -> BookmarksPage {
return try await repository.searchBookmarks(search: search)
}
}