UNPKG

@genexus/web-standard-functions

Version:

GeneXus JavaScript standard functions library for web generators

47 lines 1.3 kB
/** * Returns a Date from its parts * @param {number} year * @param {number} month * @param {number} day * @param {number} fy20c * @return Date */ import { GxDate } from "../types/gxdate"; import { EMPTY_DATE_VALUE } from "./core"; export const newInstance = (year, month, day, fy20c) => { let ret = new 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(yearAux, month - 1, day, 0, 0, 0, 0); return ret.getFullYear() === yearAux && ret.getMonth() === month - 1 && ret.getDate() === day ? ret : new GxDate(EMPTY_DATE_VALUE); }; //# sourceMappingURL=newInstance.js.map