Reorganize docs and update reader search flows
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# ReadViewSDK UML 类图
|
||||
|
||||
> 最后更新:2026-06-04
|
||||
> 最后更新:2026-06-09
|
||||
> 图表格式:Mermaid(可在 GitHub / VS Code / Mermaid Live Editor 中渲染)
|
||||
|
||||
---
|
||||
@@ -426,7 +426,14 @@ classDiagram
|
||||
+chapterLoader: RDEPUBChapterLoader
|
||||
+chapterRuntimeStore: RDEPUBChapterRuntimeStore
|
||||
+summaryDiskCache: RDEPUBChapterSummaryDiskCache
|
||||
+viewportMonitor: RDEPUBViewportMonitor
|
||||
+pageResolver: RDEPUBPageResolver
|
||||
+loadCoordinator: RDEPUBReaderLoadCoordinator
|
||||
+paginationCoordinator: RDEPUBReaderPaginationCoordinator
|
||||
+locationCoordinator: RDEPUBReaderLocationCoordinator
|
||||
+searchCoordinator: RDEPUBReaderSearchCoordinator
|
||||
+chromeCoordinator: RDEPUBReaderChromeCoordinator
|
||||
+annotationCoordinator: RDEPUBReaderAnnotationCoordinator
|
||||
+viewportMonitor: RDEPUBReaderViewportMonitor
|
||||
+applyBookPageMap(_:restoreLocation:)
|
||||
+refreshBookPageMapInPlace(_:)
|
||||
}
|
||||
@@ -440,6 +447,29 @@ classDiagram
|
||||
-buildPageMap(from:summaries:) RDEPUBBookPageMap
|
||||
}
|
||||
|
||||
class RDEPUBReaderLoadCoordinator {
|
||||
-context: RDEPUBReaderContext
|
||||
+startInitialLoadIfNeeded()
|
||||
-loadPublication()
|
||||
-applyParsedPublication()
|
||||
}
|
||||
|
||||
class RDEPUBReaderSearchCoordinator {
|
||||
-context: RDEPUBReaderContext
|
||||
+search(keyword:)
|
||||
+goToNextMatch()
|
||||
+goToPreviousMatch()
|
||||
+clearSearch()
|
||||
}
|
||||
|
||||
class RDEPUBReaderAnnotationCoordinator {
|
||||
-context: RDEPUBReaderContext
|
||||
+addHighlight(from:)
|
||||
+removeHighlight(id:)
|
||||
+toggleBookmark(at:)
|
||||
+handleSelectionMenuAction(_:)
|
||||
}
|
||||
|
||||
class RDEPUBChapterLoader {
|
||||
-context: RDEPUBReaderContext
|
||||
+loadChapter(spineIndex:store:) async throws RDEPUBRuntimeChapter
|
||||
@@ -496,6 +526,9 @@ classDiagram
|
||||
RDEPUBReaderRuntime --> RDEPUBChapterLoader : owns
|
||||
RDEPUBReaderRuntime --> RDEPUBChapterRuntimeStore : owns
|
||||
RDEPUBReaderRuntime --> RDEPUBChapterSummaryDiskCache : owns
|
||||
RDEPUBReaderRuntime --> RDEPUBReaderLoadCoordinator : owns
|
||||
RDEPUBReaderRuntime --> RDEPUBReaderSearchCoordinator : owns
|
||||
RDEPUBReaderRuntime --> RDEPUBReaderAnnotationCoordinator : owns
|
||||
RDEPUBReaderPaginationCoordinator --> RDEPUBReaderContext : uses
|
||||
RDEPUBChapterLoader --> RDEPUBReaderContext : uses
|
||||
RDEPUBChapterLoader --> RDEPUBChapterRuntimeStore : uses
|
||||
@@ -566,9 +599,13 @@ classDiagram
|
||||
|
||||
class RDEPUBAnnotation {
|
||||
+id: String
|
||||
+bookIdentifier: String?
|
||||
+kind: RDEPUBAnnotationKind
|
||||
+location: RDEPUBLocation
|
||||
+text: String?
|
||||
+rangeInfo: String?
|
||||
+chapterTitle: String?
|
||||
+createdAt: Date
|
||||
+bookmark: RDEPUBBookmark?
|
||||
+highlight: RDEPUBHighlight?
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user