UNPKG

@elgervb/mock-data

Version:

Mock data made easy, while maintaining type safety

34 lines 1.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.calculateMaxDayForMonth = exports.randomDay = void 0; var is_leap_year_1 = require("../assert/is-leap-year"); var date_month_1 = require("./date-month"); var number_1 = require("./number"); /** * Returns a random day for a month. 1=january, etc. */ function randomDay(month, year) { var currentMonth = month ? month : (0, date_month_1.randomMonth)(); var leapYear = !!year && (0, is_leap_year_1.isLeapYear)(year); var maxDay = calculateMaxDayForMonth(currentMonth, leapYear); return (0, number_1.randomNumber)(1, maxDay); } exports.randomDay = randomDay; function calculateMaxDayForMonth(month, isLeapYear) { switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: return 31; case 2: return isLeapYear ? 29 : 28; default: return 30; } } exports.calculateMaxDayForMonth = calculateMaxDayForMonth; //# sourceMappingURL=date-day.js.map