@genexus/web-standard-functions
Version:
GeneXus JavaScript standard functions library for web generators
51 lines • 1.46 kB
JavaScript
;
/**
* Returns a Date from its parts
* @param {number} year
* @param {number} month
* @param {number} day
* @param {number} fy20c
* @return Date
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.newInstance = void 0;
const gxdate_1 = require("../types/gxdate");
const core_1 = require("./core");
const newInstance = (year, month, day, fy20c) => {
let ret = new gxdate_1.GxDate(year, month - 1, day, 0, 0, 0, 0);
let yearAux = 0;
if (!fy20c) {
fy20c = 40;
}
switch (year.toString().length) {
case 2:
if (year < fy20c) {
yearAux = Number("20" + year.toString());
}
if (year >= fy20c) {
yearAux = Number("19" + year.toString());
}
break;
case 1:
if (year === 0) {
yearAux = 2000;
}
else if (year < fy20c) {
yearAux = Number("200" + year.toString());
}
break;
case 4:
yearAux = year;
break;
default:
break;
}
ret = new gxdate_1.GxDate(yearAux, month - 1, day, 0, 0, 0, 0);
return ret.getFullYear() === yearAux &&
ret.getMonth() === month - 1 &&
ret.getDate() === day
? ret
: new gxdate_1.GxDate(core_1.EMPTY_DATE_VALUE);
};
exports.newInstance = newInstance;
//# sourceMappingURL=newInstance.js.map