Interface: ICommentaryRepository
Defined in: Data/Repositories/ICommentaryRepository.ts:47
Interface for Commentary repository Defines all operations for working with commentary databases
Methods
createEntry()
createEntry(
entry):CommentaryEntry
Defined in: Data/Repositories/ICommentaryRepository.ts:117
Parameters
entry
Returns
deleteEntry()
deleteEntry(
entryId):boolean
Defined in: Data/Repositories/ICommentaryRepository.ts:119
Parameters
entryId
number
Returns
boolean
getAllEntrySummaries()
getAllEntrySummaries():
CommentaryEntrySummary[]
Defined in: Data/Repositories/ICommentaryRepository.ts:114
Returns
getBestEntryAnchorsForRange()
getBestEntryAnchorsForRange(
startVerseId,endVerseId):CommentaryEntryAnchor[]
Defined in: Data/Repositories/ICommentaryRepository.ts:85
Bulk variant of getBestEntryForVerse: every entry ANCHOR (no
content blob) whose range overlaps the inclusive verse range, ordered by
verse_id_start.
VerseLinksService.getBatchVerseLinks reconstructs the per-verse answer by
taking the first row that covers each verse, which is exactly what
getBestEntryForVerse's ORDER BY verse_id_start LIMIT 1 returns. Reading
anchors rather than entries matters: a module like Matthew Henry stores the
same ~73 KB chapter blob on every verse row it covers, so a SELECT * over
a chapter reads tens of megabytes to answer "is there an entry here".
Parameters
startVerseId
number
endVerseId
number
Returns
getBestEntryForVerse()
getBestEntryForVerse(
verseId):CommentaryEntry|undefined
Defined in: Data/Repositories/ICommentaryRepository.ts:72
Get the single best-match entry for a verse (first match by verse_id_start).
Parameters
verseId
number
Returns
CommentaryEntry | undefined
getEntriesByLevel()
getEntriesByLevel(
level):CommentaryEntry[]
Defined in: Data/Repositories/ICommentaryRepository.ts:55
Parameters
level
"book" | "verse" | "passage" | "chapter"
Returns
getEntriesForRange()
getEntriesForRange(
startVerseId,endVerseId):CommentaryEntry[]
Defined in: Data/Repositories/ICommentaryRepository.ts:56
Parameters
startVerseId
number
endVerseId
number
Returns
getEntriesForVerse()
getEntriesForVerse(
verseId):CommentaryEntry[]
Defined in: Data/Repositories/ICommentaryRepository.ts:54
Parameters
verseId
number
Returns
getEntry()
getEntry(
entryId):CommentaryEntry|undefined
Defined in: Data/Repositories/ICommentaryRepository.ts:53
Parameters
entryId
number
Returns
CommentaryEntry | undefined
getEntryIdsReferencingVerse()
getEntryIdsReferencingVerse(
verseId):number[]
Defined in: Data/Repositories/ICommentaryRepository.ts:109
Entry ids whose verse_link rows reference the given verse. Empty on a v1 module.
Parameters
verseId
number
Returns
number[]
getEntrySummariesForRange()
getEntrySummariesForRange(
startVerseId,endVerseId):CommentaryEntrySummary[]
Defined in: Data/Repositories/ICommentaryRepository.ts:67
Anchors and sizes for a range, without the content blobs.
For callers that only need to know what exists and how big it is — the
chapter-overview endpoint and the client's prefetch budget. Reading full
entries for that is enormously wasteful: a module like Matthew Henry
stores the same ~73 KB chapter blob on every verse row it covers, so a
SELECT * over one chapter of every installed commentary reads tens of
megabytes to compute a handful of word counts.
Parameters
startVerseId
number
endVerseId
number
Returns
getModuleInfo()
getModuleInfo():
CommentaryModuleInfo|undefined
Defined in: Data/Repositories/ICommentaryRepository.ts:49
Returns
CommentaryModuleInfo | undefined
getNextVerseWithContent()
getNextVerseWithContent(
currentVerseId):number|undefined
Defined in: Data/Repositories/ICommentaryRepository.ts:112
Parameters
currentVerseId
number
Returns
number | undefined
getPreviousVerseWithContent()
getPreviousVerseWithContent(
currentVerseId):number|undefined
Defined in: Data/Repositories/ICommentaryRepository.ts:113
Parameters
currentVerseId
number
Returns
number | undefined
getVerseLinksForEntry()
getVerseLinksForEntry(
entryId):VerseLinkRecord[]
Defined in: Data/Repositories/ICommentaryRepository.ts:106
Scripture references carried by one entry, from the unified verse_link
table (source_type='commentary_entry'). Empty on a v1 module.
Parameters
entryId
number
Returns
getVerseMentionRowsForRange()
getVerseMentionRowsForRange(
startVerseId,endVerseId):CommentaryMentionRow[]
Defined in: Data/Repositories/ICommentaryRepository.ts:94
Bulk variant of getVerseMentions: one row per (entry, verse-link) pair whose link range overlaps [startVerseId, endVerseId].
Left un-aggregated on purpose — the per-verse counts getVerseMentions
returns depend on which verse is being asked about, and a link row may
span several of the verses in the range.
Parameters
startVerseId
number
endVerseId
number
Returns
getVerseMentions()
getVerseMentions(
verseId):object[]
Defined in: Data/Repositories/ICommentaryRepository.ts:100
Get entries from other verses that mention/reference this verse.
Reads the unified verse_link table (WS-3) on v2 modules and the legacy
verse_reference table on v1 modules.
Parameters
verseId
number
Returns
object[]
searchEntries()
searchEntries(
query,options?):CommentaryEntry[]
Defined in: Data/Repositories/ICommentaryRepository.ts:68
Parameters
query
string
options?
limit?
number
Returns
updateEntry()
updateEntry(
entry):CommentaryEntry
Defined in: Data/Repositories/ICommentaryRepository.ts:118
Parameters
entry
Returns
updateModuleInfo()
updateModuleInfo(
info):void
Defined in: Data/Repositories/ICommentaryRepository.ts:50
Parameters
info
Returns
void