BibleSelector
A searchable dropdown component for selecting different Bible translations.Props
The currently selected Bible ID
Usage Example
The BibleSelector component automatically fetches available Bible translations using the
useBibles hook and handles navigation when a Bible is selected.BibleDropdown
A dual-select component for choosing Bible books and chapters.Props
The selected Bible translation ID
The currently selected chapter ID (format:
book.chapter)Usage Example
This component displays two select dropdowns: one for books and one for chapters. When a book is selected, it automatically navigates to the first chapter of that book.
ChapterNavigation
Navigation buttons for moving between Bible chapters.Props
Information about the previous chapter
Information about the next chapter
Usage Example
The navigation buttons are automatically disabled when there is no previous or next chapter available.
NoteEditor
A rich text editor component for creating and editing chapter notes.Props
The ID of the Bible chapter being annotated
The ID of the user creating or editing the note
Usage Example
The NoteEditor uses the Plate editor and automatically loads existing notes for the specified chapter. It includes a toolbar for formatting and provides Save/Reset buttons.
Features
- Rich text editing with formatting toolbar
- Auto-save functionality
- Loads existing notes on mount
- Form validation using Zod schemas
- Loading states during save operations
NotesView
A container component that conditionally displays the note editor with animations.Props
Whether the notes panel should be visible
Whether the user has access to the chapter/Bible combination
The ID of the Bible chapter
The ID of the user
Usage Example
This component includes transition animations and suspense boundaries for loading states. It renders the NoteEditor only when the user has access to the content.