feat: add types and IndexedDB cache manager for Bible reader 2025
Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -54,3 +54,43 @@ export interface PrayerRequest {
|
||||
createdAt: Date
|
||||
updatedAt: Date
|
||||
}
|
||||
|
||||
// Bible Reader 2025 Types
|
||||
export interface BibleChapter {
|
||||
id: string
|
||||
bookId: number
|
||||
bookName: string
|
||||
chapter: number
|
||||
verses: BibleVerse[]
|
||||
timestamp?: number
|
||||
}
|
||||
|
||||
export interface ReadingPreference {
|
||||
fontFamily: string // 'georgia', 'inter', 'atkinson', etc.
|
||||
fontSize: number // 12-32
|
||||
lineHeight: number // 1.4-2.2
|
||||
letterSpacing: number // 0-0.15
|
||||
textAlign: 'left' | 'center' | 'justify'
|
||||
backgroundColor: string // color code
|
||||
textColor: string // color code
|
||||
margin: 'narrow' | 'normal' | 'wide'
|
||||
preset: 'default' | 'dyslexia' | 'highContrast' | 'minimal' | 'custom'
|
||||
}
|
||||
|
||||
export interface UserAnnotation {
|
||||
id: string
|
||||
verseId: string
|
||||
chapterId: string
|
||||
type: 'bookmark' | 'highlight' | 'note' | 'crossRef'
|
||||
content?: string
|
||||
color?: string // for highlights
|
||||
timestamp: number
|
||||
synced: boolean
|
||||
}
|
||||
|
||||
export interface CacheEntry {
|
||||
chapterId: string
|
||||
data: BibleChapter
|
||||
timestamp: number
|
||||
expiresAt: number
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user