summaryrefslogtreecommitdiff
path: root/www/lib/moment/moment.js
diff options
context:
space:
mode:
authorPliablePixels <pliablepixels@gmail.com>2015-07-02 10:33:26 -0400
committerPliablePixels <pliablepixels@gmail.com>2015-07-02 10:33:26 -0400
commitf3136eefe9105deb1d97123629dae80c2de66304 (patch)
tree5389bd34d555ab4c3c065292e17cd41576db33ae /www/lib/moment/moment.js
parent5e523cf0d1a3644f6a41709b777b08f73ec71d49 (diff)
updated libraries, squashed the problem of not getting bar handles on click, optimized montage view
Diffstat (limited to 'www/lib/moment/moment.js')
-rw-r--r--www/lib/moment/moment.js160
1 files changed, 94 insertions, 66 deletions
diff --git a/www/lib/moment/moment.js b/www/lib/moment/moment.js
index 5942f73d..f70d530d 100644
--- a/www/lib/moment/moment.js
+++ b/www/lib/moment/moment.js
@@ -1,5 +1,5 @@
//! moment.js
-//! version : 2.10.2
+//! version : 2.10.3
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
//! license : MIT
//! momentjs.com
@@ -22,28 +22,12 @@
hookCallback = callback;
}
- function defaultParsingFlags() {
- // We need to deep clone this object.
- return {
- empty : false,
- unusedTokens : [],
- unusedInput : [],
- overflow : -2,
- charsLeftOver : 0,
- nullInput : false,
- invalidMonth : null,
- invalidFormat : false,
- userInvalidated : false,
- iso : false
- };
- }
-
function isArray(input) {
return Object.prototype.toString.call(input) === '[object Array]';
}
function isDate(input) {
- return Object.prototype.toString.call(input) === '[object Date]' || input instanceof Date;
+ return input instanceof Date || Object.prototype.toString.call(input) === '[object Date]';
}
function map(arr, fn) {
@@ -80,21 +64,45 @@
return createLocalOrUTC(input, format, locale, strict, true).utc();
}
+ function defaultParsingFlags() {
+ // We need to deep clone this object.
+ return {
+ empty : false,
+ unusedTokens : [],
+ unusedInput : [],
+ overflow : -2,
+ charsLeftOver : 0,
+ nullInput : false,
+ invalidMonth : null,
+ invalidFormat : false,
+ userInvalidated : false,
+ iso : false
+ };
+ }
+
+ function getParsingFlags(m) {
+ if (m._pf == null) {
+ m._pf = defaultParsingFlags();
+ }
+ return m._pf;
+ }
+
function valid__isValid(m) {
if (m._isValid == null) {
+ var flags = getParsingFlags(m);
m._isValid = !isNaN(m._d.getTime()) &&
- m._pf.overflow < 0 &&
- !m._pf.empty &&
- !m._pf.invalidMonth &&
- !m._pf.nullInput &&
- !m._pf.invalidFormat &&
- !m._pf.userInvalidated;
+ flags.overflow < 0 &&
+ !flags.empty &&
+ !flags.invalidMonth &&
+ !flags.nullInput &&
+ !flags.invalidFormat &&
+ !flags.userInvalidated;
if (m._strict) {
m._isValid = m._isValid &&
- m._pf.charsLeftOver === 0 &&
- m._pf.unusedTokens.length === 0 &&
- m._pf.bigHour === undefined;
+ flags.charsLeftOver === 0 &&
+ flags.unusedTokens.length === 0 &&
+ flags.bigHour === undefined;
}
}
return m._isValid;
@@ -103,10 +111,10 @@
function valid__createInvalid (flags) {
var m = create_utc__createUTC(NaN);
if (flags != null) {
- extend(m._pf, flags);
+ extend(getParsingFlags(m), flags);
}
else {
- m._pf.userInvalidated = true;
+ getParsingFlags(m).userInvalidated = true;
}
return m;
@@ -142,7 +150,7 @@
to._offset = from._offset;
}
if (typeof from._pf !== 'undefined') {
- to._pf = from._pf;
+ to._pf = getParsingFlags(from);
}
if (typeof from._locale !== 'undefined') {
to._locale = from._locale;
@@ -177,7 +185,7 @@
}
function isMoment (obj) {
- return obj instanceof Moment || (obj != null && hasOwnProp(obj, '_isAMomentObject'));
+ return obj instanceof Moment || (obj != null && obj._isAMomentObject != null);
}
function toInt(argumentForCoercion) {
@@ -615,7 +623,7 @@
if (month != null) {
array[MONTH] = month;
} else {
- config._pf.invalidMonth = input;
+ getParsingFlags(config).invalidMonth = input;
}
});
@@ -699,7 +707,7 @@
var overflow;
var a = m._a;
- if (a && m._pf.overflow === -2) {
+ if (a && getParsingFlags(m).overflow === -2) {
overflow =
a[MONTH] < 0 || a[MONTH] > 11 ? MONTH :
a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE :
@@ -709,11 +717,11 @@
a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND :
-1;
- if (m._pf._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {
+ if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {
overflow = DATE;
}
- m._pf.overflow = overflow;
+ getParsingFlags(m).overflow = overflow;
}
return m;
@@ -726,10 +734,12 @@
}
function deprecate(msg, fn) {
- var firstTime = true;
+ var firstTime = true,
+ msgWithStack = msg + '\n' + (new Error()).stack;
+
return extend(function () {
if (firstTime) {
- warn(msg);
+ warn(msgWithStack);
firstTime = false;
}
return fn.apply(this, arguments);
@@ -774,7 +784,7 @@
match = from_string__isoRegex.exec(string);
if (match) {
- config._pf.iso = true;
+ getParsingFlags(config).iso = true;
for (i = 0, l = isoDates.length; i < l; i++) {
if (isoDates[i][1].exec(string)) {
// match[5] should be 'T' or undefined
@@ -1054,7 +1064,7 @@
yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);
if (config._dayOfYear > daysInYear(yearToUse)) {
- config._pf._overflowDayOfYear = true;
+ getParsingFlags(config)._overflowDayOfYear = true;
}
date = createUTCDate(yearToUse, 0, config._dayOfYear);
@@ -1150,7 +1160,7 @@
}
config._a = [];
- config._pf.empty = true;
+ getParsingFlags(config).empty = true;
// This array is used to make a Date, either with `new Date` or `Date.UTC`
var string = '' + config._i,
@@ -1166,7 +1176,7 @@
if (parsedInput) {
skipped = string.substr(0, string.indexOf(parsedInput));
if (skipped.length > 0) {
- config._pf.unusedInput.push(skipped);
+ getParsingFlags(config).unusedInput.push(skipped);
}
string = string.slice(string.indexOf(parsedInput) + parsedInput.length);
totalParsedInputLength += parsedInput.length;
@@ -1174,27 +1184,29 @@
// don't parse if it's not a known token
if (formatTokenFunctions[token]) {
if (parsedInput) {
- config._pf.empty = false;
+ getParsingFlags(config).empty = false;
}
else {
- config._pf.unusedTokens.push(token);
+ getParsingFlags(config).unusedTokens.push(token);
}
addTimeToArrayFromToken(token, parsedInput, config);
}
else if (config._strict && !parsedInput) {
- config._pf.unusedTokens.push(token);
+ getParsingFlags(config).unusedTokens.push(token);
}
}
// add remaining unparsed input length to the string
- config._pf.charsLeftOver = stringLength - totalParsedInputLength;
+ getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;
if (string.length > 0) {
- config._pf.unusedInput.push(string);
+ getParsingFlags(config).unusedInput.push(string);
}
// clear _12h flag if hour is <= 12
- if (config._pf.bigHour === true && config._a[HOUR] <= 12) {
- config._pf.bigHour = undefined;
+ if (getParsingFlags(config).bigHour === true &&
+ config._a[HOUR] <= 12 &&
+ config._a[HOUR] > 0) {
+ getParsingFlags(config).bigHour = undefined;
}
// handle meridiem
config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem);
@@ -1238,7 +1250,7 @@
currentScore;
if (config._f.length === 0) {
- config._pf.invalidFormat = true;
+ getParsingFlags(config).invalidFormat = true;
config._d = new Date(NaN);
return;
}
@@ -1249,7 +1261,6 @@
if (config._useUTC != null) {
tempConfig._useUTC = config._useUTC;
}
- tempConfig._pf = defaultParsingFlags();
tempConfig._f = config._f[i];
configFromStringAndFormat(tempConfig);
@@ -1258,12 +1269,12 @@
}
// if there is any input that was not parsed add a penalty for that format
- currentScore += tempConfig._pf.charsLeftOver;
+ currentScore += getParsingFlags(tempConfig).charsLeftOver;
//or tokens
- currentScore += tempConfig._pf.unusedTokens.length * 10;
+ currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;
- tempConfig._pf.score = currentScore;
+ getParsingFlags(tempConfig).score = currentScore;
if (scoreToBeat == null || currentScore < scoreToBeat) {
scoreToBeat = currentScore;
@@ -1306,6 +1317,8 @@
configFromStringAndArray(config);
} else if (format) {
configFromStringAndFormat(config);
+ } else if (isDate(input)) {
+ config._d = input;
} else {
configFromInput(config);
}
@@ -1358,7 +1371,6 @@
c._i = input;
c._f = format;
c._strict = strict;
- c._pf = defaultParsingFlags();
return createFromConfig(c);
}
@@ -1932,6 +1944,9 @@
}
function from (time, withoutSuffix) {
+ if (!this.isValid()) {
+ return this.localeData().invalidDate();
+ }
return create__createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix);
}
@@ -1939,6 +1954,17 @@
return this.from(local__createLocal(), withoutSuffix);
}
+ function to (time, withoutSuffix) {
+ if (!this.isValid()) {
+ return this.localeData().invalidDate();
+ }
+ return create__createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix);
+ }
+
+ function toNow (withoutSuffix) {
+ return this.to(local__createLocal(), withoutSuffix);
+ }
+
function locale (key) {
var newLocaleData;
@@ -2041,11 +2067,11 @@
}
function parsingFlags () {
- return extend({}, this._pf);
+ return extend({}, getParsingFlags(this));
}
function invalidAt () {
- return this._pf.overflow;
+ return getParsingFlags(this).overflow;
}
addFormatToken(0, ['gg', 2], 0, function () {
@@ -2196,7 +2222,7 @@
if (weekday != null) {
week.d = weekday;
} else {
- config._pf.invalidWeekday = input;
+ getParsingFlags(config).invalidWeekday = input;
}
});
@@ -2321,7 +2347,7 @@
});
addParseToken(['h', 'hh'], function (input, array, config) {
array[HOUR] = toInt(input);
- config._pf.bigHour = true;
+ getParsingFlags(config).bigHour = true;
});
// LOCALES
@@ -2438,6 +2464,8 @@
momentPrototype__proto.format = format;
momentPrototype__proto.from = from;
momentPrototype__proto.fromNow = fromNow;
+ momentPrototype__proto.to = to;
+ momentPrototype__proto.toNow = toNow;
momentPrototype__proto.get = getSet;
momentPrototype__proto.invalidAt = invalidAt;
momentPrototype__proto.isAfter = isAfter;
@@ -2626,7 +2654,7 @@
}
// Lenient ordinal parsing accepts just a number in addition to
// number + (possibly) stuff coming from _ordinalParseLenient.
- this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + /\d{1,2}/.source);
+ this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + (/\d{1,2}/).source);
}
var prototype__proto = Locale.prototype;
@@ -2843,13 +2871,13 @@
// handle milliseconds separately because of floating point math errors (issue #1867)
days = this._days + Math.round(yearsToDays(this._months / 12));
switch (units) {
- case 'week' : return days / 7 + milliseconds / 6048e5;
- case 'day' : return days + milliseconds / 864e5;
- case 'hour' : return days * 24 + milliseconds / 36e5;
- case 'minute' : return days * 24 * 60 + milliseconds / 6e4;
- case 'second' : return days * 24 * 60 * 60 + milliseconds / 1000;
+ case 'week' : return days / 7 + milliseconds / 6048e5;
+ case 'day' : return days + milliseconds / 864e5;
+ case 'hour' : return days * 24 + milliseconds / 36e5;
+ case 'minute' : return days * 1440 + milliseconds / 6e4;
+ case 'second' : return days * 86400 + milliseconds / 1000;
// Math.floor prevents floating point math errors here
- case 'millisecond': return Math.floor(days * 24 * 60 * 60 * 1000) + milliseconds;
+ case 'millisecond': return Math.floor(days * 864e5) + milliseconds;
default: throw new Error('Unknown unit ' + units);
}
}
@@ -3050,7 +3078,7 @@
// Side effect imports
- utils_hooks__hooks.version = '2.10.2';
+ utils_hooks__hooks.version = '2.10.3';
setHookCallback(local__createLocal);