quran-meta
Version:
Library with meta data and functionality related to Holy Quran
28 lines (26 loc) • 1.08 kB
JavaScript
const require_findSurahByAyahId = require('./findSurahByAyahId.cjs');
const require_findJuzAndShift = require('./findJuzAndShift.cjs');
//#region src/findJuzMetaBySurah.ts
/**
* Finds the SurahJuzMeta for a given Surah and Ayah.
*
* @param surah - The Surah (chapter) number.
* @param ayah - The Ayah (verse) number.
* @param data - The Lists object for the riwaya.
* @returns The SurahJuzMeta object containing the left juz, ayahs between juz and surah, right juz, ayah ID of first ayah in left juz, and last ayah ID of right juz .
*/
function findJuzMetaBySurah(surah, ayah = 1, data) {
const { juz: leftjuz, ayahsBetweenJuzSurah, leftAyahId } = require_findJuzAndShift.findJuzAndShift(surah, ayah, data);
const JuzList = data.JuzList;
let rightJuz = leftjuz;
while (rightJuz < data.meta.numJuzs && require_findSurahByAyahId.findSurahByAyahId(JuzList[rightJuz + 1], data) === surah) rightJuz++;
return {
leftjuz,
ayahsBetweenJuzSurah,
rightJuz,
leftAyahId,
rightAyahId: JuzList[rightJuz + 1]
};
}
//#endregion
exports.findJuzMetaBySurah = findJuzMetaBySurah;