UNPKG

2.61 kBJavaScriptView Raw
1"use strict";
2var __importDefault = (this && this.__importDefault) || function (mod) {
3 return (mod && mod.__esModule) ? mod : { "default": mod };
4};
5Object.defineProperty(exports, "__esModule", { value: true });
6exports.createConfiguration = exports.createCasualConfiguration = exports.parseDate = exports.parse = exports.strict = exports.casual = void 0;
7const configurations_1 = require("../../configurations");
8const chrono_1 = require("../../chrono");
9const SlashDateFormatParser_1 = __importDefault(require("../../common/parsers/SlashDateFormatParser"));
10const ISOFormatParser_1 = __importDefault(require("../../common/parsers/ISOFormatParser"));
11const DETimeExpressionParser_1 = __importDefault(require("./parsers/DETimeExpressionParser"));
12const DEWeekdayParser_1 = __importDefault(require("./parsers/DEWeekdayParser"));
13const DEMergeDateRangeRefiner_1 = __importDefault(require("./refiners/DEMergeDateRangeRefiner"));
14const DEMergeDateTimeRefiner_1 = __importDefault(require("./refiners/DEMergeDateTimeRefiner"));
15const DECasualDateParser_1 = __importDefault(require("./parsers/DECasualDateParser"));
16const DECasualTimeParser_1 = __importDefault(require("./parsers/DECasualTimeParser"));
17const DEMonthNameLittleEndianParser_1 = __importDefault(require("./parsers/DEMonthNameLittleEndianParser"));
18exports.casual = new chrono_1.Chrono(createCasualConfiguration());
19exports.strict = new chrono_1.Chrono(createConfiguration(true));
20function parse(text, ref, option) {
21 return exports.casual.parse(text, ref, option);
22}
23exports.parse = parse;
24function parseDate(text, ref, option) {
25 return exports.casual.parseDate(text, ref, option);
26}
27exports.parseDate = parseDate;
28function createCasualConfiguration(littleEndian = true) {
29 const option = createConfiguration(false, littleEndian);
30 option.parsers.unshift(new DECasualTimeParser_1.default());
31 option.parsers.unshift(new DECasualDateParser_1.default());
32 return option;
33}
34exports.createCasualConfiguration = createCasualConfiguration;
35function createConfiguration(strictMode = true, littleEndian = true) {
36 return configurations_1.includeCommonConfiguration({
37 parsers: [
38 new ISOFormatParser_1.default(),
39 new SlashDateFormatParser_1.default(littleEndian),
40 new DETimeExpressionParser_1.default(),
41 new DEMonthNameLittleEndianParser_1.default(),
42 new DEWeekdayParser_1.default(),
43 ],
44 refiners: [new DEMergeDateRangeRefiner_1.default(), new DEMergeDateTimeRefiner_1.default()],
45 }, strictMode);
46}
47exports.createConfiguration = createConfiguration;