New reading surface with paper/sepia/dark themes, slim top and bottom bars, and sheets for navigation, search, settings, audio and per-verse study tools. Plan progress is built into the reader. Page-flip mode removed. ESV added via the server-side proxy (ESV_API_KEY). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9e8420a1ae
commit
9e722a296d
17 files changed
+903
-791
No files matched your search
@@ -5,7 +5,7 @@ import {
|
||||
COMMENTARIES, loadCommentary, loadTheographic, loadPerson, pickCommentaryEntry, useAsync,
|
||||
} from '../hooks/useVerseStudy.js';
|
||||
|
||||
function CommentaryTab({ book, chapter, verse }) {
|
||||
export function CommentaryTab({ book, chapter, verse }) {
|
||||
const [sourceId, setSourceId] = useState(() => {
|
||||
try { return localStorage.getItem('reader-commentary') || COMMENTARIES[0].id; } catch { return COMMENTARIES[0].id; }
|
||||
});
|
||||
@@ -77,7 +77,7 @@ function PersonCard({ person }) {
|
||||
);
|
||||
}
|
||||
|
||||
function PeoplePlacesTab({ book, chapter, verse }) {
|
||||
export function PeoplePlacesTab({ book, chapter, verse }) {
|
||||
const { status, data } = useAsync(() => loadTheographic(book, chapter), [book, chapter]);
|
||||
if (status === 'loading') return <p className="text-xs text-slate-500">Loading…</p>;
|
||||
if (status === 'empty') return <p className="text-xs text-slate-500">No people or places data for this chapter.</p>;
|
||||
|
||||
Reference in new issue
Block a user