UNPKG

quran-meta

Version:

Library with meta data and functionality related to Holy Quran

29 lines (27 loc) 1.07 kB
const require_validation = require('./validation.cjs'); const require_findAyahIdBySurah = require('./findAyahIdBySurah.cjs'); const require_utils = require('./utils.cjs'); //#region src/isSurahAyahJuzFirst.ts /** * Determines if a given Surah and Ayah combination marks the beginning of a Juz. * * @param surah - The Surah number to check * @param ayah - The Ayah number within the Surah to check * @param data - The Lists object for the riwaya. * @returns The Juz number if the combination marks the start of a Juz, -1 otherwise * @throws Error When the provided Surah number is invalid * * @example * ```typescript * isSurahAyahJuzFirst(2, 142, HafsLists) // Returns 2 * isSurahAyahJuzFirst(2, 143, HafsLists) // Returns -1 * ``` */ function isSurahAyahJuzFirst(surah, ayah, data) { require_validation.checkValidSurah(surah, data.meta); const ayahId = require_findAyahIdBySurah.findAyahIdBySurah(surah, ayah, data); const JuzList = data.JuzList; return require_utils.binarySearch(JuzList, ayahId); } //#endregion exports.isSurahAyahJuzFirst = isSurahAyahJuzFirst;