UNPKG

quran-meta

Version:

Library with meta data and functionality related to Holy Quran

19 lines (18 loc) 804 B
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 }; }