UNPKG

quran-meta

Version:

Library with meta data and functionality related to Holy Quran

26 lines (24 loc) 761 B
import { checkValidAyahId } from "./validation.js"; import { binarySearch } from "./utils.js"; import { PageList } from "./lists/pageList.js"; //#region src/findPagebyAyahId.ts /** * Returns the page number for a given ayah ID in the Quran. * * @param ayahId - A numeric identifier representing a verse (ayah) in the Quran * @returns The page number where the specified ayah can be found * @throws Will throw an error if the ayahId is invalid * * @example * ```ts * const page = findPagebyAyahId(142); // Returns the page number containing ayah 142 * ``` */ function findPagebyAyahId(ayahId) { checkValidAyahId(ayahId); const jj = binarySearch(PageList, ayahId); const page = jj < 0 ? -jj - 2 : jj; return page; } //#endregion export { findPagebyAyahId };