UNPKG

@hebcal/core

Version:

A perpetual Jewish Calendar API

53 lines (50 loc) 1.44 kB
/*! @hebcal/core v5.10.1, distributed under GPLv2 https://www.gnu.org/licenses/gpl-2.0.txt */ import { months } from '@hebcal/hdate'; import { flags } from './event.js'; const NONE = 0; const HALF = 1; const WHOLE = 2; /** * @private */ function hallel_(events, hdate) { const whole = events .filter(ev => { const desc = ev.getDesc(); const hd = ev.getDate(); const month = hd.getMonth(); const mday = hd.getDate(); return (desc.startsWith('Chanukah') || desc.startsWith('Shavuot') || desc.startsWith('Sukkot') || (month === months.NISAN && (mday === 15 || mday === 16) && ev.getFlags() & flags.CHAG) || // Pesach desc === "Yom HaAtzma'ut" || desc === 'Yom Yerushalayim'); }) .map(ev => { return ev.getDate().abs(); }); const abs = hdate.abs(); if (whole.includes(abs)) { return WHOLE; } const half = events .filter(ev => { const desc = ev.getDesc(); return (ev.getFlags() & flags.ROSH_CHODESH || (desc.startsWith('Pesach') && desc !== 'Pesach I' && desc !== 'Pesach II')); }) .map(ev => { return ev.getDate().abs(); }); if (half.includes(abs)) { return HALF; } return NONE; } export { hallel_ }; //# sourceMappingURL=hallel.js.map