@luke-zhang-04/dateplus
Version:
A simple program to assist with date manipulation
1 lines • 40.7 kB
Source Map (JSON)
{"version":3,"file":"dateplus.min.cjs","sources":["../../lib/conversions.js","../../lib/values.js","../../lib/utils.js","../../lib/dateplus.js"],"sourcesContent":["/**\n * DatePlus A simple program to assist with date manipulation\n *\n * @license MIT\n * @version 4.0.0-beta2\n * @author Luke Zhang luke-zhang-04.github.io\n * @copyright Copyright (C) 2020 - 2021 Luke Zhang\n */\n/**\n * Converts milliseconds to seconds with remainders\n *\n * @param ms - Milliseconds to convert\n * @returns Object with seconds and milliseconds\n */\nexport const msToSecs = (ms) => ({\n ms: ms % 1000 /* MsPerSec */,\n seconds: (ms - (ms % 1000 /* MsPerSec */)) / 1000 /* MsPerSec */,\n});\nexport const msToSeconds = msToSecs;\n/**\n * Converts milliseconds to minutes with remainders\n *\n * @param ms - Milliseconds to convert\n * @returns Object with minutes, seconds, and milliseconds\n */\nexport const msToMins = (ms) => {\n const milliseconds = (ms % 1000 /* MsPerSec */) % 1000 /* MsPerSec */;\n const seconds = ((ms - (ms % 1000 /* MsPerSec */)) / 1000 /* MsPerSec */) % 60 /* SecsPerMin */;\n const minutes = (ms - seconds * 1000 /* MsPerSec */ - milliseconds) / (1000 /* MsPerSec */ * 60 /* SecsPerMin */);\n return {\n ms: milliseconds,\n seconds,\n minutes,\n };\n};\nexport const msToMinutes = msToMins;\n/**\n * Converts milliseconds to hours with remainders\n *\n * @param ms - Milliseconds to convert\n * @returns Object with hours, minutes, seconds, and milliseconds\n */\nexport const msToHrs = (ms) => {\n const milliseconds = (ms % 1000 /* MsPerSec */) % 1000 /* MsPerSec */;\n const seconds = ((ms - (ms % 1000 /* MsPerSec */)) / 1000 /* MsPerSec */) % 60 /* SecsPerMin */;\n const minutes = ((ms - seconds * 1000 /* MsPerSec */ - milliseconds) / (1000 /* MsPerSec */ * 60 /* SecsPerMin */)) %\n 60 /* MinsPerHr */;\n const hours = (ms -\n minutes * 1000 /* MsPerSec */ * 60 /* SecsPerMin */ -\n seconds * 1000 /* MsPerSec */ -\n milliseconds) /\n (1000 /* MsPerSec */ * 60 /* SecsPerMin */ * 60 /* MinsPerHr */);\n return {\n ms: milliseconds,\n seconds,\n minutes,\n hours,\n };\n};\nexport const msToHours = msToHrs;\n/**\n * Converts milliseconds to days with remainders\n *\n * @param ms - Milliseconds to convert\n * @returns Object with days, hours, minutes, seconds, and milliseconds\n */\nexport const msToDays = (ms) => {\n const milliseconds = (ms % 1000 /* MsPerSec */) % 1000 /* MsPerSec */;\n const seconds = ((ms - (ms % 1000 /* MsPerSec */)) / 1000 /* MsPerSec */) % 60 /* SecsPerMin */;\n const minutes = ((ms - seconds * 1000 /* MsPerSec */ - milliseconds) / (1000 /* MsPerSec */ * 60 /* SecsPerMin */)) %\n 60 /* MinsPerHr */;\n const hours = ((ms -\n minutes * 1000 /* MsPerSec */ * 60 /* SecsPerMin */ -\n seconds * 1000 /* MsPerSec */ -\n milliseconds) /\n (1000 /* MsPerSec */ * 60 /* SecsPerMin */ * 60 /* MinsPerHr */)) %\n 24 /* HrsPerDay */;\n const days = (ms -\n hours * 1000 /* MsPerSec */ * 60 /* SecsPerMin */ * 60 /* MinsPerHr */ -\n minutes * 1000 /* MsPerSec */ * 60 /* SecsPerMin */ -\n seconds * 1000 /* MsPerSec */ -\n milliseconds) /\n (1000 /* MsPerSec */ * 60 /* SecsPerMin */ * 60 /* MinsPerHr */ * 24 /* HrsPerDay */);\n return {\n ms: milliseconds,\n seconds,\n minutes,\n hours,\n days,\n };\n};\n/* eslint-disable max-len */\n/**\n * Converts seconds to milliseconds\n *\n * @param secs - Seconds to convert\n * @returns Converted milliseconds\n */\nexport const secsToMs = (secs) => secs * 1000 /* MsPerSec */;\nexport const secondsToMs = secsToMs;\n/**\n * Converts seconds to minutes with remainders\n *\n * @param secs - Seconds to convert\n * @returns Converted minutes\n */\nexport const secsToMins = (secs) => msToMins(secsToMs(secs));\nexport const secondsToMinutes = secsToMins;\n/**\n * Converts seconds to hours with remainders\n *\n * @param secs - Seconds to convert\n * @returns Converted hours\n */\nexport const secsToHrs = (secs) => msToHrs(secsToMs(secs));\nexport const secondsToHours = secsToHrs;\n/**\n * Converts seconds to days with remainders\n *\n * @param secs - Seconds to convert\n * @returns Converted days\n */\nexport const secsToDays = (secs) => msToDays(secsToMs(secs));\nexport const secondsToDays = secsToDays;\n/**\n * Converts hours to milliseconds\n *\n * @param mins - Minutes to convert\n * @returns Converted milliseconds\n */\nexport const minsToMs = (mins) => mins * 60 /* SecsPerMin */ * 1000 /* MsPerSec */;\nexport const minutesToMs = secsToDays;\n/**\n * Converts hours to seconds\n *\n * @param mins - Minutes to convert\n * @returns Converted seconds\n */\nexport const minsToSecs = (mins) => mins * 60 /* SecsPerMin */;\nexport const minutesToSeconds = minsToSecs;\n/**\n * Converts minutes to hours with remainders\n *\n * @param mins - Minutes to convert\n * @returns Converted hours\n */\nexport const minsToHrs = (mins) => msToHrs(minsToMs(mins));\nexport const minutesToHours = minsToHrs;\n/**\n * Converts minutes to days with remainders\n *\n * @param mins - Minutes to convert\n * @returns Converted days\n */\nexport const minsToDays = (mins) => msToDays(minsToMs(mins));\nexport const minutesToDays = minsToDays;\n/**\n * Converts hours to milliseconds\n *\n * @param hours - Hours to convert\n * @returns Converted milliseconds\n */\nexport const hrsToMs = (hours) => hours * 60 /* MinsPerHr */ * 60 /* SecsPerMin */ * 1000 /* MsPerSec */;\nexport const hoursToMs = hrsToMs;\n/**\n * Converts hours to seconds\n *\n * @param hours - Hours to convert\n * @returns Converted seconds\n */\nexport const hrsToSecs = (hours) => hours * 60 /* MinsPerHr */ * 60 /* SecsPerMin */;\nexport const hoursToSeconds = hrsToSecs;\n/**\n * Converts hours to minutes\n *\n * @param hours - Hours to convert\n * @returns Converted minutes\n */\nexport const hrsToMins = (hours) => hours * 60 /* MinsPerHr */;\nexport const hoursToMinutes = hrsToMins;\n/**\n * Converts hours to days with remainders\n *\n * @param hrs - Hours to convert\n * @returns Converted days\n */\nexport const hrsToDays = (hrs) => msToDays(hrsToMs(hrs));\nexport const hoursToDays = hrsToDays;\n/**\n * Converts days to milliseconds\n *\n * @param days - Days to convert\n * @returns Converted milliseconds\n */\nexport const daysToMs = (days) => days * 24 /* HrsPerDay */ * 60 /* MinsPerHr */ * 60 /* SecsPerMin */ * 1000 /* MsPerSec */;\n/**\n * Converts days to seconds\n *\n * @param days - Days to convert\n * @returns Converted seconds\n */\nexport const daysToSecs = (days) => days * 24 /* HrsPerDay */ * 60 /* MinsPerHr */ * 60 /* SecsPerMin */;\nexport const daysToSeconds = daysToSecs;\n/**\n * Converts days to minutes\n *\n * @param days - Days to convert\n * @returns Converted minutes\n */\nexport const daysToMins = (days) => days * 24 /* HrsPerDay */ * 60 /* MinsPerHr */;\nexport const daysToMinutes = daysToMins;\n/**\n * Converts days to hours\n *\n * @param days - Days to convert\n * @returns Converted hours\n */\nexport const daysToHrs = (days) => days * 24 /* HrsPerDay */;\nexport const daysToHours = daysToHrs;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29udmVyc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQTZGSDs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLEVBQVUsRUFBYyxFQUFFLENBQUMsQ0FBQztJQUNqRCxFQUFFLEVBQUUsRUFBRSxzQkFBa0I7SUFDeEIsT0FBTyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxzQkFBa0IsQ0FBQyxDQUFDLHNCQUFrQjtDQUMzRCxDQUFDLENBQUE7QUFDRixNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFBO0FBRW5DOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLENBQUMsRUFBVSxFQUFjLEVBQUU7SUFDL0MsTUFBTSxZQUFZLEdBQUcsQ0FBQyxFQUFFLHNCQUFrQixDQUFDLHNCQUFrQixDQUFBO0lBQzdELE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLHNCQUFrQixDQUFDLENBQUMsc0JBQWtCLENBQUMsc0JBQW9CLENBQUE7SUFDckYsTUFBTSxPQUFPLEdBQ1QsQ0FBQyxFQUFFLEdBQUcsT0FBTyxzQkFBa0IsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLHlDQUFtQyxDQUFDLENBQUE7SUFFM0YsT0FBTztRQUNILEVBQUUsRUFBRSxZQUFZO1FBQ2hCLE9BQU87UUFDUCxPQUFPO0tBQ1YsQ0FBQTtBQUNMLENBQUMsQ0FBQTtBQUNELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUE7QUFFbkM7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFVLEVBQVksRUFBRTtJQUM1QyxNQUFNLFlBQVksR0FBRyxDQUFDLEVBQUUsc0JBQWtCLENBQUMsc0JBQWtCLENBQUE7SUFDN0QsTUFB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","/**\n * DatePlus A simple program to assist with date manipulation\n *\n * @license MIT\n * @version 4.0.0-beta2\n * @author Luke Zhang luke-zhang-04.github.io\n * @copyright Copyright (C) 2020 - 2021 Luke Zhang\n */\nexport const values = {\n hrsPerDay: 24,\n minsPerHr: 60,\n secsPerMin: 60,\n msPerSec: 1000,\n};\n/**\n * Reference to days of the week, zero indexed\n */\nexport const daysReference = {\n 0: \"Sunday\",\n 1: \"Monday\",\n 2: \"Tuesday\",\n 3: \"Wednesday\",\n 4: \"Thursday\",\n 5: \"Friday\",\n 6: \"Saturday\",\n};\n/**\n * Reference to months of a year, zero indexed\n */\nexport const monthsReference = {\n 0: \"January\",\n 1: \"Feburary\",\n 2: \"March\",\n 3: \"April\",\n 4: \"May\",\n 5: \"June\",\n 6: \"July\",\n 7: \"August\",\n 8: \"September\",\n 9: \"October\",\n 10: \"November\",\n 11: \"December\",\n};\n/**\n * One minutes in ms\n */\nexport const oneMinute = 60 /* SecsPerMin */ * 1000 /* MsPerSec */;\n/**\n * One hour in ms\n */\nexport const oneHour = 60 /* MinsPerHr */ * oneMinute;\n/**\n * One day in ms\n */\nexport const oneDay = 24 /* HrsPerDay */ * oneHour;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3ZhbHVlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztHQU9HO0FBU0gsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHO0lBQ2xCLFNBQVMsRUFBRSxFQUFFO0lBQ2IsU0FBUyxFQUFFLEVBQUU7SUFDYixVQUFVLEVBQUUsRUFBRTtJQUNkLFFBQVEsRUFBRSxJQUFJO0NBQ2pCLENBQUE7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUN6QixDQUFDLEVBQUUsUUFBUTtJQUNYLENBQUMsRUFBRSxRQUFRO0lBQ1gsQ0FBQyxFQUFFLFNBQVM7SUFDWixDQUFDLEVBQUUsV0FBVztJQUNkLENBQUMsRUFBRSxVQUFVO0lBQ2IsQ0FBQyxFQUFFLFFBQVE7SUFDWCxDQUFDLEVBQUUsVUFBVTtDQUNoQixDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUc7SUFDM0IsQ0FBQyxFQUFFLFNBQVM7SUFDWixDQUFDLEVBQUUsVUFBVTtJQUNiLENBQUMsRUFBRSxPQUFPO0lBQ1YsQ0FBQyxFQUFFLE9BQU87SUFDVixDQUFDLEVBQUUsS0FBSztJQUNSLENBQUMsRUFBRSxNQUFNO0lBQ1QsQ0FBQyxFQUFFLE1BQU07SUFDVCxDQUFDLEVBQUUsUUFBUTtJQUNYLENBQUMsRUFBRSxXQUFXO0lBQ2QsQ0FBQyxFQUFFLFNBQVM7SUFDWixFQUFFLEVBQUUsVUFBVTtJQUNkLEVBQUUsRUFBRSxVQUFVO0NBQ2pCLENBQUE7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyx5Q0FBbUMsQ0FBQTtBQUU1RDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxxQkFBbUIsU0FBUyxDQUFBO0FBRW5EOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLHFCQUFtQixPQUFPLENBQUEifQ==","/**\n * DatePlus A simple program to assist with date manipulation\n *\n * @license MIT\n * @version 4.0.0-beta2\n * @author Luke Zhang luke-zhang-04.github.io\n * @copyright Copyright (C) 2020 - 2021 Luke Zhang\n */\nimport { daysReference, monthsReference, oneDay, oneHour, oneMinute } from \"./values\";\n/* eslint-disable id-length */\n/**\n * Reference to months of a year, zero indexed\n */\nconst keysReference = {\n y: \"year\",\n m: \"month\",\n d: \"day\",\n};\n/* eslint-enable id-length */\n/**\n * Add's 0s to date (e.g 2020/4/3 => 2020/04/03)\n *\n * @param date - String date to format\n * @param seperator - Char the date is seperatred by\n * @returns - Date with zeros\n */\nexport const addZeros = (date, seperator = \"/\") => {\n const splitDate = date.split(seperator);\n const newDateValues = splitDate.map((section) => section.length < 2 ? `0${section}` : section);\n return newDateValues.join(seperator);\n};\n/**\n * Format date into a string in the form YYYY{seperator}MM{seperator}DD\n *\n * @param date - Date object to format\n * @param format - Format of string date\n * @param seperator - String to seperate date values with\n * @returns Formatted date\n */\nexport const formatDate = (date, format = \"y:m:d\", seperator = \"/\") => {\n const month = (date.getMonth() + 1).toString();\n const day = date.getDate().toString();\n /* eslint-disable id-length */\n const year = date.getFullYear().toString();\n const values = {\n m: month,\n d: day,\n y: year,\n };\n /* eslint-enable id-length */\n const formatArray = format.split(\":\");\n return formatArray.map((val) => values[val]).join(seperator);\n};\n/**\n * Gets date values and outputs an object\n *\n * @param date - Date to extract values from, months zero indexed\n * @param format - Format of string date\n * @param seperator - Seperator the date works with; leave auto for auto detection, limited to 1 char\n * @returns Object with all values\n */\nexport const getDateValues = (date, format = \"y:m:d\", seperator = \"auto\") => {\n let _seperator = \"/\";\n if (seperator === \"auto\") {\n for (const letter of date) {\n if (isNaN(Number(letter))) {\n _seperator = letter;\n break;\n }\n }\n }\n else {\n _seperator = seperator;\n }\n const splitDate = date.split(_seperator);\n const dateFormat = format.split(\":\");\n const output = {};\n for (let index = 0; index < 3; index++) {\n const key = keysReference[dateFormat[index]];\n output[key] = Number(splitDate[index]);\n }\n return output;\n};\n/**\n * Converts numerical day of week into word form (e.g 0 => \"Sunday\")\n *\n * @param numerical - Numerical day of week, 0 indexed (0-6)\n * @returns Stringed day of week\n */\nexport const getWordDay = (numerical) => daysReference[numerical];\n/**\n * Converts numerical month into word form (e.g 0 => \"January\")\n *\n * @param numerical - Numerical day of week, 0 indexed (0-11)\n * @returns Stringed worded month\n */\nexport const getWordMonth = (numerical) => monthsReference[numerical];\n/**\n * Calculates number of elapsed days between date1 and date2\n *\n * @param date1 - Starting date object to calculate\n * @param date2 - Ending date object to calculate\n * @returns - Number of elapsed days\n */\nexport const getElapsedDays = (date1, date2) => Math.round((date1.getTime() - date2.getTime()) / oneDay) * -1;\n/**\n * Calculates number of elapsed hours between date1 and date2\n *\n * @param date1 - Starting date object to calculate\n * @param date2 - Ending date object to calculate\n * @returns - Number of elapsed hours\n */\nexport const getElapsedHours = (date1, date2) => Math.round((date1.getTime() - date2.getTime()) / oneHour) * -1;\n/**\n * Calculates number of elapsed minutes between date1 and date2\n *\n * @param date1 - Starting date object to calculate\n * @param date2 - Ending date object to calculate\n * @returns - Number of elapsed minutes\n */\nexport const getElapsedMinutes = (date1, date2) => Math.round((date1.getTime() - date2.getTime()) / oneMinute) * -1;\n/**\n * Calculates number of elapsed seconds between date1 and date2\n *\n * @param date1 - Starting date object to calculate\n * @param date2 - Ending date object to calculate\n * @returns - Number of elapsed seconds\n */\nexport const getElapsedSeconds = (date1, date2) => Math.round((date1.getTime() - date2.getTime()) / 1000 /* MsPerSec */) * -1;\n/**\n * Calculates number of elapsed milliseconds between date1 and date2\n *\n * @param date1 - Starting date object to calculate\n * @param date2 - Ending date object to calculate\n * @returns - Number of elapsed milliseconds\n */\nexport const getElapsedMs = (date1, date2) => Math.round(date1.getTime() - date2.getTime()) * -1;\n/**\n * Calculates elapsed time between current and previous\n *\n * @param start- Start date\n * @param end - End date\n * @param approx - Text to append to values from days and on, e.g *about* 1 day aga\n * @returns Time difference in string form, e.g \"3 seconds ago\"\n */\nexport const getElapsedString = (start, end, approx = \"about\") => {\n const daysPerMonth = 30;\n const daysPerYear = 365;\n const msPerMonth = oneDay * daysPerMonth;\n const msPerYear = oneDay * daysPerYear;\n const elapsed = getElapsedMs(start, end);\n let val;\n if (elapsed < oneMinute) {\n val = Math.round(elapsed / 1000 /* MsPerSec */);\n return `${val} second${val === 1 ? \"\" : \"s\"} ago`;\n }\n else if (elapsed < oneHour) {\n val = Math.round(elapsed / oneMinute);\n return `${val} minute${val === 1 ? \"\" : \"s\"} ago`;\n }\n else if (elapsed < oneDay) {\n val = Math.round(elapsed / oneHour);\n return `${val} hour${val === 1 ? \"\" : \"s\"} ago`;\n }\n else if (elapsed < msPerMonth) {\n val = Math.round(elapsed / oneDay);\n return `${approx} ${val} day${val === 1 ? \"\" : \"s\"} ago`;\n }\n else if (elapsed < msPerYear) {\n val = Math.round(elapsed / msPerMonth);\n return `${approx} ${val} month${val === 1 ? \"\" : \"s\"} ago`;\n }\n val = Math.round(elapsed / msPerYear);\n return `${approx} ${val} year${val === 1 ? \"\" : \"s\"} ago`;\n};\n// The next 2 functions are too hard to test for\n/* istanbul ignore next */\n/**\n * Convert a utc date to local\n *\n * @param date - Date to use. Note that the parameter will never be mutated.\n * @returns A new date object with the time converted form UTC\n */\nexport const utcToLocal = (date) => {\n const newDate = date.constructor(date.getTime());\n newDate.setMinutes(date.getMinutes() - date.getTimezoneOffset());\n return newDate;\n};\n/* istanbul ignore next */\n/**\n * Get the current UTC Time\n *\n * @returns UTC Time\n */\nexport const getUtcTime = () => {\n const now = new Date();\n return Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds(), now.getUTCMilliseconds());\n};\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUVILE9BQU8sRUFBUyxhQUFhLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFDLE1BQU0sVUFBVSxDQUFBO0FBZ0IzRiw4QkFBOEI7QUFDOUI7O0dBRUc7QUFDSCxNQUFNLGFBQWEsR0FBUztJQUN4QixDQUFDLEVBQUUsTUFBTTtJQUNULENBQUMsRUFBRSxPQUFPO0lBQ1YsQ0FBQyxFQUFFLEtBQUs7Q0FDWCxDQUFBO0FBQ0QsNkJBQTZCO0FBRTdCOzs7Ozs7R0FNRztBQUNILE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxDQUFDLElBQVksRUFBRSxTQUFTLEdBQUcsR0FBRyxFQUFVLEVBQUU7SUFDOUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQTtJQUV2QyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDNUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDL0MsQ0FBQTtJQUVELE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUN4QyxDQUFDLENBQUE7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBVSxFQUFFLFNBQXFCLE9BQU8sRUFBRSxTQUFTLEdBQUcsR0FBRyxFQUFVLEVBQUU7SUFDNUYsTUFBTSxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDOUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8s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QUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFBO0tBQ3BEO1NBQU0sSUFBSSxPQUFPLEdBQUcsT0FBTyxFQUFFO1FBQzFCLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUMsQ0FBQTtRQUVyQyxPQUFPLEdBQUcsR0FBRyxVQUFVLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUE7S0FDcEQ7U0FBTSxJQUFJLE9BQU8sR0FBRyxNQUFNLEVBQUU7UUFDekIsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxDQUFBO1FBRW5DLE9BQU8sR0FBRyxHQUFHLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQTtLQUNsRDtTQUFNLElBQUksT0FBTyxHQUFHLFVBQVUsRUFBRTtRQUM3QixHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLENBQUE7UUFFbEMsT0FBTyxHQUFHLE1BQU0sSUFBSSxHQUFHLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQTtLQUMzRDtTQUFNLElBQUksT0FBTyxHQUFHLFNBQVMsRUFBRTtRQUM1QixHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLENBQUE7UUFFdEMsT0FBTyxHQUFHLE1BQU0sSUFBSSxHQUFHLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQTtLQUM3RDtJQUVELEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUMsQ0FBQTtJQUVyQyxPQUFPLEdBQUcsTUFBTSxJQUFJLEdBQUcsUUFBUSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFBO0FBQzdELENBQUMsQ0FBQTtBQUVELGdEQUFnRDtBQUNoRCwwQkFBMEI7QUFDMUI7Ozs7O0dBS0c7QUFDSCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBaUIsSUFBTyxFQUFLLEVBQUU7SUFDckQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQU0sQ0FBQTtJQUVyRCxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFBO0lBRWhFLE9BQU8sT0FBTyxDQUFBO0FBQ2xCLENBQUMsQ0FBQTtBQUVELDBCQUEwQjtBQUMxQjs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLEdBQVcsRUFBRTtJQUNuQyxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFBO0lBRXRCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FDWCxHQUFHLENBQUMsY0FBYyxFQUFFLEVBQ3BCLEdBQUcsQ0FBQyxXQUFXLEVBQUUsRUFDakIsR0FBRyxDQUFDLFVBQVUsRUFBRSxFQUNoQixHQUFHLENBQUMsV0FBVyxFQUFFLEVBQ2pCLEdBQUcsQ0FBQyxhQUFhLEVBQUUsRUFDbkIsR0FBRyxDQUFDLGFBQWEsRUFBRSxFQUNuQixHQUFHLENBQUMsa0JBQWtCLEVBQUUsQ0FDM0IsQ0FBQTtBQUNMLENBQUMsQ0FBQSJ9","/**\n * DatePlus A simple program to assist with date manipulation\n *\n * @license MIT\n * @version 4.0.0-beta2\n * @author Luke Zhang luke-zhang-04.github.io\n * @copyright Copyright (C) 2020 - 2021 Luke Zhang\n */\nimport * as utils from \"./utils\";\nimport * as values from \"./values\";\n/**\n * Dateplus - A class and namespace program to assist with date manipulation\n */\nexport class DatePlus extends Date {\n /**\n * Add's 0s to date (e.g 2020/4/3 => 2020/04/03)\n *\n * @param date - String date to format\n * @param seperator - Char the date is seperatred by\n * @returns - Date with zeros\n */\n addZeros(seperator = \"/\") {\n return utils.addZeros(this.formatDate(), seperator);\n }\n /**\n * Format instantiated into a string in the form YYYY{seperator}MM{seperator}DD\n *\n * @param seperator - Char to seperate date with\n * @param format - Format of string date\n * @returns Formatted date\n */\n formatDate(format = \"y:m:d\", seperator = \"/\") {\n return utils.formatDate(this, format, seperator);\n }\n /**\n * Gets instantiated day of week in word form (e.g 0 => \"Sunday\")\n *\n * @returns Stringed day of week\n */\n getWordDay() {\n return values.daysReference[this.getDay()];\n }\n /**\n * Gets instantiated month in word form (e.g 0 => \"January\")\n *\n * @returns Stringed worded month\n */\n getWordMonth() {\n return values.monthsReference[this.getMonth()];\n }\n /**\n * Calculates number of elapsed days between instantiated date and dae\n *\n * @param date - Ending date object to calculate\n * @returns - Number of elapsed days\n */\n getElapsedDays(date) {\n return utils.getElapsedDays(this, date);\n }\n /**\n * Calculates number of elapsed hours between date1 and date2\n *\n * @param date - Ending date object to calculate\n * @returns - Number of elapsed hours\n */\n getElapsedHours(date) {\n return utils.getElapsedHours(this, date);\n }\n /**\n * Calculates number of elapsed minutes between date1 and date2\n *\n * @param date - Ending date object to calculate\n * @returns - Number of elapsed minutes\n */\n getElapsedMinutes(date) {\n return utils.getElapsedMinutes(this, date);\n }\n /**\n * Calculates number of elapsed seconds between date1 and date2\n *\n * @param date - Ending date object to calculate\n * @returns - Number of elapsed seconds\n */\n getElapsedSeconds(date) {\n return utils.getElapsedSeconds(this, date);\n }\n /**\n * Calculates number of elapsed milliseconds between date1 and date2\n *\n * @param date - Ending date object to calculate\n * @returns - Number of elapsed milliseconds\n */\n getElapsedMs(date) {\n return utils.getElapsedMs(this, date);\n }\n /**\n * Calculates elapsed time between current and previous\n *\n * @param date - End date\n * @param approx - Text to append to values from days and on, e.g *about* 1 day aga\n * @returns Time difference in string form, e.g \"3 seconds ago\"\n */\n getElapsedString(date, approx = \"about\") {\n return utils.getElapsedString(this, date, approx);\n }\n}\nexport default DatePlus;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBsdXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZGF0ZXBsdXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7R0FPRztBQUVILE9BQU8sS0FBSyxLQUFLLE1BQU0sU0FBUyxDQUFBO0FBQ2hDLE9BQU8sS0FBSyxNQUFNLE1BQU0sVUFBVSxDQUFBO0FBRWxDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFFBQVMsU0FBUSxJQUFJO0lBQzlCOzs7Ozs7T0FNRztJQUNJLFFBQVEsQ0FBQyxTQUFTLEdBQUcsR0FBRztRQUMzQixPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ3ZELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxVQUFVLENBQUMsU0FBMkIsT0FBTyxFQUFFLFNBQVMsR0FBRyxHQUFHO1FBQ2pFLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ3BELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksVUFBVTtRQUNiLE9BQU8sTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUF1QyxDQUFDLENBQUE7SUFDbkYsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxZQUFZO1FBQ2YsT0FBTyxNQUFNLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQXlDLENBQUMsQ0FBQTtJQUN6RixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxjQUFjLENBQUMsSUFBVTtRQUM1QixPQUFPLEtBQUssQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGVBQWUsQ0FBQyxJQUFVO1FBQzdCLE9BQU8sS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDNUMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksaUJBQWlCLENBQUMsSUFBVTtRQUMvQixPQUFPLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDOUMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksaUJBQWlCLENBQUMsSUFBVTtRQUMvQixPQUFPLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUE7SUFDOUMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksWUFBWSxDQUFDLElBQVU7UUFDMUIsT0FBTyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksZ0JBQWdCLENBQUMsSUFBVSxFQUFFLE1BQU0sR0FBRyxPQUFPO1FBQ2hELE9BQU8sS0FBSyxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDckQsQ0FBQztDQUNKO0FBRUQsZUFBZSxRQUFRLENBQUEifQ=="],"names":["msToSecs","ms","seconds","msToSeconds","msToMins","milliseconds","minutes","msToMinutes","msToHrs","hours","msToHours","msToDays","days","secsToMs","secs","secondsToMs","secsToMins","secondsToMinutes","secsToHrs","secondsToHours","secsToDays","secondsToDays","minsToMs","mins","minutesToMs","minsToSecs","minutesToSeconds","minsToHrs","minutesToHours","minsToDays","minutesToDays","hrsToMs","hoursToMs","hrsToSecs","hoursToSeconds","hrsToMins","hoursToMinutes","hrsToDays","hrs","hoursToDays","daysToSecs","daysToSeconds","daysToMins","daysToMinutes","daysToHrs","daysToHours","daysReference","0","1","2","3","4","5","6","monthsReference","7","8","9","10","11","keysReference","y","m","d","addZeros","date","seperator","split","map","section","length","join","formatDate","format","values","getMonth","toString","getDate","getFullYear","val","getElapsedDays","date1","date2","Math","round","getTime","getElapsedHours","getElapsedMinutes","getElapsedSeconds","getElapsedMs","getElapsedString","start","end","approx","msPerMonth","oneDay","msPerYear","elapsed","DatePlus","Date","[object Object]","utils.addZeros","this","utils.formatDate","values.daysReference","getDay","values.monthsReference","utils.getElapsedDays","utils.getElapsedHours","utils.getElapsedMinutes","utils.getElapsedSeconds","utils.getElapsedMs","utils.getElapsedString","_seperator","letter","isNaN","Number","splitDate","dateFormat","output","index","now","UTC","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","numerical","newDate","constructor","setMinutes","getMinutes","getTimezoneOffset","hrsPerDay","minsPerHr","secsPerMin","msPerSec"],"mappings":"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"}