49 lines
1.2 KiB
TypeScript
49 lines
1.2 KiB
TypeScript
/**
|
|
* Data access layer for Songs of the Vaiṣṇava Ācāryas (SVA).
|
|
*
|
|
* Delegates to the generic book data layer which calls the BFF API.
|
|
* SVA is a hierarchical book with parent chapters and sub-chapters (songs).
|
|
*/
|
|
|
|
import {
|
|
getBookMeta,
|
|
getIntroSegments,
|
|
getIntroSegment,
|
|
getChapter,
|
|
getContent,
|
|
getSidebarItems,
|
|
getNavigableItems,
|
|
type BookMeta,
|
|
type IntroSegment,
|
|
type Chapter,
|
|
type SidebarItem,
|
|
} from "@/lib/books";
|
|
|
|
const CODE = "sva";
|
|
|
|
export type SvaMeta = BookMeta;
|
|
export type SvaSubChapterEntry = { slug: string; title: string };
|
|
export type SvaIntroSegment = IntroSegment;
|
|
export type SvaChapter = Chapter;
|
|
export type SvaSidebarItem = SidebarItem;
|
|
|
|
export async function getSvaMeta() {
|
|
return getBookMeta(CODE);
|
|
}
|
|
export async function getSvaIntroSegments() {
|
|
return getIntroSegments(CODE);
|
|
}
|
|
export async function getSvaIntroSegment(slug: string) {
|
|
return getIntroSegment(CODE, slug);
|
|
}
|
|
export async function getSvaChapter(slug: string) {
|
|
return getChapter(CODE, slug);
|
|
}
|
|
export async function getSvaContent(slug: string) {
|
|
return getContent(CODE, slug);
|
|
}
|
|
export async function getSvaSidebarItems() {
|
|
return getSidebarItems(CODE);
|
|
}
|
|
export { getNavigableItems };
|