quran-meta
Version:
Library with meta data and functionality related to Holy Quran
19 lines (18 loc) • 804 B
JavaScript
import { findAyahIdBySurah } from "./findAyahIdBySurah.mjs";
import { findJuzByAyahId } from "./findJuzByAyahId.mjs";
import { findSurahByAyahId } from "./findSurahByAyahId.mjs";
import { JuzList } from "./lists/juzList.mjs";
import { SurahList } from "./lists/surahList.mjs";
import { checkValidAyahId, checkValidSurah } from "./validation.mjs";
export function findJuzAndShift(surah, ayah, ayahMode = false) {
const ayahId = ayahMode ? checkValidAyahId(ayah) && ayah : checkValidSurah(surah) && findAyahIdBySurah(surah, ayah);
const juz = findJuzByAyahId(ayahId);
const leftAyahId = JuzList[juz];
if (ayahMode) [surah] = findSurahByAyahId(ayahId);
const [surahStartAyahId] = SurahList[surah];
return {
juz,
ayahsBetweenJuzSurah: surahStartAyahId - leftAyahId,
leftAyahId
};
}