Fixed search
This commit is contained in:
+10
-4
@@ -2,7 +2,13 @@ import { getBooks, loadBible, type Verse } from './bible'
|
||||
|
||||
const ROLLOVER_LOCAL_HOUR = 2
|
||||
|
||||
let flatNT: Verse[] | null = null
|
||||
export interface DailyVerse extends Verse {
|
||||
book: string
|
||||
chapter: number
|
||||
verse: number
|
||||
}
|
||||
|
||||
let flatNT: DailyVerse[] | null = null
|
||||
|
||||
export function daySeed(now: Date = new Date()): number {
|
||||
const shifted = new Date(now.getTime() - ROLLOVER_LOCAL_HOUR * 3600_000)
|
||||
@@ -26,13 +32,13 @@ function mulberry32(seed: number): () => number {
|
||||
}
|
||||
}
|
||||
|
||||
export function pickForDay(verses: Verse[], seed: number): Verse {
|
||||
export function pickForDay(verses: DailyVerse[], seed: number): DailyVerse {
|
||||
const rand = mulberry32(seed)
|
||||
const index = Math.floor(rand() * verses.length)
|
||||
return verses[index]
|
||||
}
|
||||
|
||||
export async function loadKJV(): Promise<Verse[]> {
|
||||
export async function loadKJV(): Promise<DailyVerse[]> {
|
||||
if (flatNT) return flatNT
|
||||
await loadBible()
|
||||
flatNT = []
|
||||
@@ -44,7 +50,7 @@ export async function loadKJV(): Promise<Verse[]> {
|
||||
for (const chapter of book.chapters) {
|
||||
const chapterNumber = Number(chapter.chapter)
|
||||
for (const v of chapter.verses) {
|
||||
flatNT.push({ text: v.text, reference: `${name} ${chapterNumber}:${v.verse}` })
|
||||
flatNT.push({ text: v.text, reference: `${name} ${chapterNumber}:${v.verse}`, book: book.book, chapter: chapterNumber, verse: v.verse })
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user