fsrs-algorithm
Version:
Free Spaced Repetition Scheduler (FSRS) algorithm implementation in TypeScript
20 lines • 724 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.calcElapsedDays = calcElapsedDays;
exports.isValidDate = isValidDate;
function calcElapsedDays(lastReviewDate, now) {
if (lastReviewDate) {
if (isValidDate(new Date(lastReviewDate))) {
return Math.max(0, Math.floor((now.getTime() - lastReviewDate.getTime()) / (1000 * 60 * 60 * 24)));
}
else {
console.warn("Invalid date provided, make sure your dates are valid dates!");
}
}
return 0;
}
function isValidDate(date) {
// An invalid date object returns NaN for getTime()
return date instanceof Date && !isNaN(date.getTime());
}
//# sourceMappingURL=timeFuncs.js.map