registration

This commit is contained in:
User
2025-02-02 16:08:03 +03:00
parent 7f6495eb4d
commit 78afbaed71
6334 changed files with 196774 additions and 165754 deletions

View File

@@ -1,18 +1,12 @@
"use strict";
exports.dayPeriodEnumToHours = dayPeriodEnumToHours;
exports.isLeapYearIndex = isLeapYearIndex;
exports.mapValue = mapValue;
exports.normalizeTwoDigitYear = normalizeTwoDigitYear;
exports.parseAnyDigitsSigned = parseAnyDigitsSigned;
exports.parseNDigits = parseNDigits;
exports.parseNDigitsSigned = parseNDigitsSigned;
exports.parseNumericPattern = parseNumericPattern;
exports.parseTimezonePattern = parseTimezonePattern;
var _index = require("../../constants.js");
import {
millisecondsInHour,
millisecondsInMinute,
millisecondsInSecond,
} from "../../constants.js";
var _constants = require("./constants.js");
import { numericPatterns } from "./constants.js";
function mapValue(parseFnResult, mapFn) {
export function mapValue(parseFnResult, mapFn) {
if (!parseFnResult) {
return parseFnResult;
}
@@ -23,7 +17,7 @@ function mapValue(parseFnResult, mapFn) {
};
}
function parseNumericPattern(pattern, dateString) {
export function parseNumericPattern(pattern, dateString) {
const matchResult = dateString.match(pattern);
if (!matchResult) {
@@ -36,7 +30,7 @@ function parseNumericPattern(pattern, dateString) {
};
}
function parseTimezonePattern(pattern, dateString) {
export function parseTimezonePattern(pattern, dateString) {
const matchResult = dateString.match(pattern);
if (!matchResult) {
@@ -59,75 +53,48 @@ function parseTimezonePattern(pattern, dateString) {
return {
value:
sign *
(hours * _index.millisecondsInHour +
minutes * _index.millisecondsInMinute +
seconds * _index.millisecondsInSecond),
(hours * millisecondsInHour +
minutes * millisecondsInMinute +
seconds * millisecondsInSecond),
rest: dateString.slice(matchResult[0].length),
};
}
function parseAnyDigitsSigned(dateString) {
return parseNumericPattern(
_constants.numericPatterns.anyDigitsSigned,
dateString,
);
export function parseAnyDigitsSigned(dateString) {
return parseNumericPattern(numericPatterns.anyDigitsSigned, dateString);
}
function parseNDigits(n, dateString) {
export function parseNDigits(n, dateString) {
switch (n) {
case 1:
return parseNumericPattern(
_constants.numericPatterns.singleDigit,
dateString,
);
return parseNumericPattern(numericPatterns.singleDigit, dateString);
case 2:
return parseNumericPattern(
_constants.numericPatterns.twoDigits,
dateString,
);
return parseNumericPattern(numericPatterns.twoDigits, dateString);
case 3:
return parseNumericPattern(
_constants.numericPatterns.threeDigits,
dateString,
);
return parseNumericPattern(numericPatterns.threeDigits, dateString);
case 4:
return parseNumericPattern(
_constants.numericPatterns.fourDigits,
dateString,
);
return parseNumericPattern(numericPatterns.fourDigits, dateString);
default:
return parseNumericPattern(new RegExp("^\\d{1," + n + "}"), dateString);
}
}
function parseNDigitsSigned(n, dateString) {
export function parseNDigitsSigned(n, dateString) {
switch (n) {
case 1:
return parseNumericPattern(
_constants.numericPatterns.singleDigitSigned,
dateString,
);
return parseNumericPattern(numericPatterns.singleDigitSigned, dateString);
case 2:
return parseNumericPattern(
_constants.numericPatterns.twoDigitsSigned,
dateString,
);
return parseNumericPattern(numericPatterns.twoDigitsSigned, dateString);
case 3:
return parseNumericPattern(
_constants.numericPatterns.threeDigitsSigned,
dateString,
);
return parseNumericPattern(numericPatterns.threeDigitsSigned, dateString);
case 4:
return parseNumericPattern(
_constants.numericPatterns.fourDigitsSigned,
dateString,
);
return parseNumericPattern(numericPatterns.fourDigitsSigned, dateString);
default:
return parseNumericPattern(new RegExp("^-?\\d{1," + n + "}"), dateString);
}
}
function dayPeriodEnumToHours(dayPeriod) {
export function dayPeriodEnumToHours(dayPeriod) {
switch (dayPeriod) {
case "morning":
return 4;
@@ -145,7 +112,7 @@ function dayPeriodEnumToHours(dayPeriod) {
}
}
function normalizeTwoDigitYear(twoDigitYear, currentYear) {
export function normalizeTwoDigitYear(twoDigitYear, currentYear) {
const isCommonEra = currentYear > 0;
// Absolute number of the current year:
// 1 -> 1 AC
@@ -166,6 +133,6 @@ function normalizeTwoDigitYear(twoDigitYear, currentYear) {
return isCommonEra ? result : 1 - result;
}
function isLeapYearIndex(year) {
export function isLeapYearIndex(year) {
return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0);
}