timetable-fns
Advanced tools
Comparing version 0.1.0 to 0.1.1
34
index.js
@@ -1,14 +0,16 @@ | ||
const moment = require('moment-timezone') | ||
var moment = require('moment-timezone') | ||
const reDate = /^(\d{4})-(\d{2})-(\d{2})$/ | ||
const reTime = /^(\d{2}):(\d{2})$/ | ||
var reDate = /^(\d{4})-(\d{2})-(\d{2})$/ | ||
var reTime = /^(\d{2}):(\d{2})$/ | ||
const INVALID = 'Invalid' | ||
var INVALID = 'Invalid' | ||
function _g (str) { | ||
const arr = _parse(str) | ||
var arr = _parse(str) | ||
if (!arr || arr.includes(NaN)) { | ||
return NaN | ||
} | ||
let [ y, m, d ] = arr | ||
var y = arr[0] | ||
var m = arr[1] | ||
var d = arr[2] | ||
m = (m + 9) % 12 | ||
@@ -28,4 +30,4 @@ y = y - Math.floor(m / 10) | ||
} | ||
let y = Math.floor((10000 * g + 14780) / 3652425) | ||
let ddd = g - (365 * y + | ||
var y = Math.floor((10000 * g + 14780) / 3652425) | ||
var ddd = g - (365 * y + | ||
Math.floor(y / 4) - | ||
@@ -41,6 +43,6 @@ Math.floor(y / 100) + | ||
} | ||
let mi = Math.floor((100 * ddd + 52) / 3060) | ||
let mm = (mi + 2) % 12 + 1 | ||
var mi = Math.floor((100 * ddd + 52) / 3060) | ||
var mm = (mi + 2) % 12 + 1 | ||
y = y + Math.floor((mi + 2) / 12) | ||
let dd = ddd - Math.floor((mi * 306 + 5) / 10) + 1 | ||
var dd = ddd - Math.floor((mi * 306 + 5) / 10) + 1 | ||
return _str(y, mm, dd) | ||
@@ -51,3 +53,3 @@ } | ||
if (str && typeof str === 'string') { | ||
const r = reDate.exec(str) | ||
var r = reDate.exec(str) | ||
if (r) { | ||
@@ -91,3 +93,3 @@ return [ parseInt(r[1]), parseInt(r[2]), parseInt(r[3]) ] | ||
function today () { | ||
const m = moment() | ||
var m = moment() | ||
return _str(m.year(), m.month() + 1, m.date()) | ||
@@ -102,6 +104,6 @@ } | ||
if (dt && typeof dt === 'string') { | ||
const r = reTime.exec(dt) | ||
var r = reTime.exec(dt) | ||
if (r) { | ||
const h = parseInt(r[1]) | ||
const m = parseInt(r[2]) | ||
var h = parseInt(r[1]) | ||
var m = parseInt(r[2]) | ||
return h >= 0 && h <= 23 && m >= 0 && m <= 59 | ||
@@ -108,0 +110,0 @@ } |
{ | ||
"name": "timetable-fns", | ||
"version": "0.1.0", | ||
"version": "0.1.1", | ||
"description": "Useful date and time utility functions for working with timetables.", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
3806
104