UNPKG

chrono-node

Version:

A natural language date parser in Javascript

131 lines 5.17 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.noon = exports.afternoon = exports.morning = exports.midnight = exports.yesterdayEvening = exports.evening = exports.lastNight = exports.tonight = exports.theDayAfter = exports.tomorrow = exports.theDayBefore = exports.yesterday = exports.today = exports.now = void 0; const results_1 = require("../results"); const dayjs_1 = __importDefault(require("dayjs")); const dayjs_2 = require("../utils/dayjs"); const index_1 = require("../index"); function now(reference) { const targetDate = dayjs_1.default(reference.instant); const component = new results_1.ParsingComponents(reference, {}); dayjs_2.assignSimilarDate(component, targetDate); dayjs_2.assignSimilarTime(component, targetDate); if (reference.timezoneOffset !== null) { component.assign("timezoneOffset", targetDate.utcOffset()); } return component; } exports.now = now; function today(reference) { const targetDate = dayjs_1.default(reference.instant); const component = new results_1.ParsingComponents(reference, {}); dayjs_2.assignSimilarDate(component, targetDate); dayjs_2.implySimilarTime(component, targetDate); return component; } exports.today = today; function yesterday(reference) { return theDayBefore(reference, 1); } exports.yesterday = yesterday; function theDayBefore(reference, numDay) { return theDayAfter(reference, -numDay); } exports.theDayBefore = theDayBefore; function tomorrow(reference) { return theDayAfter(reference, 1); } exports.tomorrow = tomorrow; function theDayAfter(reference, nDays) { let targetDate = dayjs_1.default(reference.instant); const component = new results_1.ParsingComponents(reference, {}); targetDate = targetDate.add(nDays, "day"); dayjs_2.assignSimilarDate(component, targetDate); dayjs_2.implySimilarTime(component, targetDate); return component; } exports.theDayAfter = theDayAfter; function tonight(reference, implyHour = 22) { const targetDate = dayjs_1.default(reference.instant); const component = new results_1.ParsingComponents(reference, {}); component.imply("hour", implyHour); component.imply("meridiem", index_1.Meridiem.PM); dayjs_2.assignSimilarDate(component, targetDate); return component; } exports.tonight = tonight; function lastNight(reference, implyHour = 0) { let targetDate = dayjs_1.default(reference.instant); const component = new results_1.ParsingComponents(reference, {}); if (targetDate.hour() < 6) { targetDate = targetDate.add(-1, "day"); } dayjs_2.assignSimilarDate(component, targetDate); component.imply("hour", implyHour); return component; } exports.lastNight = lastNight; function evening(reference, implyHour = 20) { const component = new results_1.ParsingComponents(reference, {}); component.imply("meridiem", index_1.Meridiem.PM); component.imply("hour", implyHour); return component; } exports.evening = evening; function yesterdayEvening(reference, implyHour = 20) { let targetDate = dayjs_1.default(reference.instant); const component = new results_1.ParsingComponents(reference, {}); targetDate = targetDate.add(-1, "day"); dayjs_2.assignSimilarDate(component, targetDate); component.imply("hour", implyHour); component.imply("meridiem", index_1.Meridiem.PM); return component; } exports.yesterdayEvening = yesterdayEvening; function midnight(reference) { const component = new results_1.ParsingComponents(reference, {}); const targetDate = dayjs_1.default(reference.instant); if (targetDate.hour() > 2) { dayjs_2.implyTheNextDay(component, targetDate); } component.assign("hour", 0); component.imply("minute", 0); component.imply("second", 0); component.imply("millisecond", 0); return component; } exports.midnight = midnight; function morning(reference, implyHour = 6) { const component = new results_1.ParsingComponents(reference, {}); component.imply("meridiem", index_1.Meridiem.AM); component.imply("hour", implyHour); component.imply("minute", 0); component.imply("second", 0); component.imply("millisecond", 0); return component; } exports.morning = morning; function afternoon(reference, implyHour = 15) { const component = new results_1.ParsingComponents(reference, {}); component.imply("meridiem", index_1.Meridiem.PM); component.imply("hour", implyHour); component.imply("minute", 0); component.imply("second", 0); component.imply("millisecond", 0); return component; } exports.afternoon = afternoon; function noon(reference) { const component = new results_1.ParsingComponents(reference, {}); component.imply("meridiem", index_1.Meridiem.AM); component.imply("hour", 12); component.imply("minute", 0); component.imply("second", 0); component.imply("millisecond", 0); return component; } exports.noon = noon; //# sourceMappingURL=casualReferences.js.map