UNPKG

quran-meta

Version:

Library with meta data and functionality related to Holy Quran

28 lines (26 loc) 1.16 kB
import { findSurahAyahByAyahId } from "./findSurahAyahByAyahId.mjs"; import { getThumunAlHizb } from "./getThumunAlHizb.mjs"; //#region src/getThumunAlHizbMeta.ts /** * Retrieves the metadata for a specific quarter (rub' al-hizb) of the Quran. * * @param eighthIndex - The index of the Eighth (thumun' al-hizb) to retrieve metadata for, where 1 is the first quarter. * @param data - The Lists object for the riwaya. * @returns An object containing the metadata for the specified quarter, including the juz' (part), hizb (section), and the quarter (rub' al-hizb) index. */ function getThumunAlHizbMeta(eighthIndex, data) { const res = getThumunAlHizb(eighthIndex); const HizbEighthList = data.HizbEighthList; if (!HizbEighthList) throw new Error(`Riwaya ${data.meta.riwayaName} does not have Hizb Eighth List data.`); const [firstAyahId, nextJuzAyahId] = [HizbEighthList[eighthIndex], HizbEighthList[eighthIndex + 1]]; const lastAyahId = nextJuzAyahId - 1; return { firstAyahId, lastAyahId, first: findSurahAyahByAyahId(firstAyahId, data), last: findSurahAyahByAyahId(lastAyahId, data), ...res }; } //#endregion export { getThumunAlHizbMeta };