UNPKG

quran-meta

Version:

Library with meta data and functionality related to Holy Quran

43 lines (30 loc) 1.08 kB
import { checkValidManzil } from "./validation.js"; import { findSurahAyahByAyahId } from "./findSurahAyahByAyahId.js"; import { ManzilList } from "./lists/manzilList.js"; //#region src/getManzilMeta.ts /** * Retrieves metadata for a specific Manzil (section) of the Quran * * @param manzilNum - The number of the Manzil (1-7) * @returns The metadata for the specified Manzil containing: * - manzilNum: The Manzil number * - firstAyahId: ID of the first ayah in the Manzil * - lastAyahId: ID of the last ayah in the Manzil * - first: Surah and ayah details of the first ayah * - last: Surah and ayah details of the last ayah * @throws Will throw an error if manzilNum is invalid */ function getManzilMeta(manzilNum) { checkValidManzil(manzilNum); const [firstAyahId, nextManzilAyahId] = [ManzilList[manzilNum], ManzilList[manzilNum + 1]]; const lastAyahId = nextManzilAyahId - 1; return { manzilNum, firstAyahId, lastAyahId, first: findSurahAyahByAyahId(firstAyahId), last: findSurahAyahByAyahId(lastAyahId) }; } //#endregion export { getManzilMeta };