aboutsummaryrefslogtreecommitdiffstats
path: root/library/moment/src/lib/create
diff options
context:
space:
mode:
Diffstat (limited to 'library/moment/src/lib/create')
-rw-r--r--library/moment/src/lib/create/check-overflow.js28
-rw-r--r--library/moment/src/lib/create/date-from-array.js19
-rw-r--r--library/moment/src/lib/create/from-anything.js96
-rw-r--r--library/moment/src/lib/create/from-array.js124
-rw-r--r--library/moment/src/lib/create/from-object.js13
-rw-r--r--library/moment/src/lib/create/from-string-and-array.js50
-rw-r--r--library/moment/src/lib/create/from-string-and-format.js102
-rw-r--r--library/moment/src/lib/create/from-string.js83
-rw-r--r--library/moment/src/lib/create/local.js5
-rw-r--r--library/moment/src/lib/create/parsing-flags.js22
-rw-r--r--library/moment/src/lib/create/utc.js5
-rw-r--r--library/moment/src/lib/create/valid.js37
12 files changed, 0 insertions, 584 deletions
diff --git a/library/moment/src/lib/create/check-overflow.js b/library/moment/src/lib/create/check-overflow.js
deleted file mode 100644
index 88a62ae54..000000000
--- a/library/moment/src/lib/create/check-overflow.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import { daysInMonth } from '../units/month';
-import { YEAR, MONTH, DATE, HOUR, MINUTE, SECOND, MILLISECOND } from '../units/constants';
-import getParsingFlags from '../create/parsing-flags';
-
-export default function checkOverflow (m) {
- var overflow;
- var a = m._a;
-
- 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 :
- a[HOUR] < 0 || a[HOUR] > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR :
- a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE :
- a[SECOND] < 0 || a[SECOND] > 59 ? SECOND :
- a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND :
- -1;
-
- if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {
- overflow = DATE;
- }
-
- getParsingFlags(m).overflow = overflow;
- }
-
- return m;
-}
-
diff --git a/library/moment/src/lib/create/date-from-array.js b/library/moment/src/lib/create/date-from-array.js
deleted file mode 100644
index 349eebcc4..000000000
--- a/library/moment/src/lib/create/date-from-array.js
+++ /dev/null
@@ -1,19 +0,0 @@
-export function createDate (y, m, d, h, M, s, ms) {
- //can't just apply() to create a date:
- //http://stackoverflow.com/questions/181348/instantiating-a-javascript-object-by-calling-prototype-constructor-apply
- var date = new Date(y, m, d, h, M, s, ms);
-
- //the date constructor doesn't accept years < 1970
- if (y < 1970) {
- date.setFullYear(y);
- }
- return date;
-}
-
-export function createUTCDate (y) {
- var date = new Date(Date.UTC.apply(null, arguments));
- if (y < 1970) {
- date.setUTCFullYear(y);
- }
- return date;
-}
diff --git a/library/moment/src/lib/create/from-anything.js b/library/moment/src/lib/create/from-anything.js
deleted file mode 100644
index 5a69dc55b..000000000
--- a/library/moment/src/lib/create/from-anything.js
+++ /dev/null
@@ -1,96 +0,0 @@
-import isArray from '../utils/is-array';
-import isDate from '../utils/is-date';
-import map from '../utils/map';
-import { createInvalid } from './valid';
-import { Moment, isMoment } from '../moment/constructor';
-import { getLocale } from '../locale/locales';
-import { hooks } from '../utils/hooks';
-import checkOverflow from './check-overflow';
-
-import { configFromStringAndArray } from './from-string-and-array';
-import { configFromStringAndFormat } from './from-string-and-format';
-import { configFromString } from './from-string';
-import { configFromArray } from './from-array';
-import { configFromObject } from './from-object';
-
-function createFromConfig (config) {
- var res = new Moment(checkOverflow(prepareConfig(config)));
- if (res._nextDay) {
- // Adding is smart enough around DST
- res.add(1, 'd');
- res._nextDay = undefined;
- }
-
- return res;
-}
-
-export function prepareConfig (config) {
- var input = config._i,
- format = config._f;
-
- config._locale = config._locale || getLocale(config._l);
-
- if (input === null || (format === undefined && input === '')) {
- return createInvalid({nullInput: true});
- }
-
- if (typeof input === 'string') {
- config._i = input = config._locale.preparse(input);
- }
-
- if (isMoment(input)) {
- return new Moment(checkOverflow(input));
- } else if (isArray(format)) {
- configFromStringAndArray(config);
- } else if (format) {
- configFromStringAndFormat(config);
- } else if (isDate(input)) {
- config._d = input;
- } else {
- configFromInput(config);
- }
-
- return config;
-}
-
-function configFromInput(config) {
- var input = config._i;
- if (input === undefined) {
- config._d = new Date();
- } else if (isDate(input)) {
- config._d = new Date(+input);
- } else if (typeof input === 'string') {
- configFromString(config);
- } else if (isArray(input)) {
- config._a = map(input.slice(0), function (obj) {
- return parseInt(obj, 10);
- });
- configFromArray(config);
- } else if (typeof(input) === 'object') {
- configFromObject(config);
- } else if (typeof(input) === 'number') {
- // from milliseconds
- config._d = new Date(input);
- } else {
- hooks.createFromInputFallback(config);
- }
-}
-
-export function createLocalOrUTC (input, format, locale, strict, isUTC) {
- var c = {};
-
- if (typeof(locale) === 'boolean') {
- strict = locale;
- locale = undefined;
- }
- // object construction must be done this way.
- // https://github.com/moment/moment/issues/1423
- c._isAMomentObject = true;
- c._useUTC = c._isUTC = isUTC;
- c._l = locale;
- c._i = input;
- c._f = format;
- c._strict = strict;
-
- return createFromConfig(c);
-}
diff --git a/library/moment/src/lib/create/from-array.js b/library/moment/src/lib/create/from-array.js
deleted file mode 100644
index c4239cb72..000000000
--- a/library/moment/src/lib/create/from-array.js
+++ /dev/null
@@ -1,124 +0,0 @@
-import { createDate, createUTCDate } from './date-from-array';
-import { daysInYear } from '../units/year';
-import { weekOfYear } from '../units/week';
-import { dayOfYearFromWeeks } from '../units/day-of-year';
-import { YEAR, MONTH, DATE, HOUR, MINUTE, SECOND, MILLISECOND } from '../units/constants';
-import { createLocal } from './local';
-import defaults from '../utils/defaults';
-import getParsingFlags from './parsing-flags';
-
-function currentDateArray(config) {
- var now = new Date();
- if (config._useUTC) {
- return [now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate()];
- }
- return [now.getFullYear(), now.getMonth(), now.getDate()];
-}
-
-// convert an array to a date.
-// the array should mirror the parameters below
-// note: all values past the year are optional and will default to the lowest possible value.
-// [year, month, day , hour, minute, second, millisecond]
-export function configFromArray (config) {
- var i, date, input = [], currentDate, yearToUse;
-
- if (config._d) {
- return;
- }
-
- currentDate = currentDateArray(config);
-
- //compute day of the year from weeks and weekdays
- if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {
- dayOfYearFromWeekInfo(config);
- }
-
- //if the day of the year is set, figure out what it is
- if (config._dayOfYear) {
- yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);
-
- if (config._dayOfYear > daysInYear(yearToUse)) {
- getParsingFlags(config)._overflowDayOfYear = true;
- }
-
- date = createUTCDate(yearToUse, 0, config._dayOfYear);
- config._a[MONTH] = date.getUTCMonth();
- config._a[DATE] = date.getUTCDate();
- }
-
- // Default to current date.
- // * if no year, month, day of month are given, default to today
- // * if day of month is given, default month and year
- // * if month is given, default only year
- // * if year is given, don't default anything
- for (i = 0; i < 3 && config._a[i] == null; ++i) {
- config._a[i] = input[i] = currentDate[i];
- }
-
- // Zero out whatever was not defaulted, including time
- for (; i < 7; i++) {
- config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i];
- }
-
- // Check for 24:00:00.000
- if (config._a[HOUR] === 24 &&
- config._a[MINUTE] === 0 &&
- config._a[SECOND] === 0 &&
- config._a[MILLISECOND] === 0) {
- config._nextDay = true;
- config._a[HOUR] = 0;
- }
-
- config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
- // Apply timezone offset from input. The actual utcOffset can be changed
- // with parseZone.
- if (config._tzm != null) {
- config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
- }
-
- if (config._nextDay) {
- config._a[HOUR] = 24;
- }
-}
-
-function dayOfYearFromWeekInfo(config) {
- var w, weekYear, week, weekday, dow, doy, temp;
-
- w = config._w;
- if (w.GG != null || w.W != null || w.E != null) {
- dow = 1;
- doy = 4;
-
- // TODO: We need to take the current isoWeekYear, but that depends on
- // how we interpret now (local, utc, fixed offset). So create
- // a now version of current config (take local/utc/offset flags, and
- // create now).
- weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(createLocal(), 1, 4).year);
- week = defaults(w.W, 1);
- weekday = defaults(w.E, 1);
- } else {
- dow = config._locale._week.dow;
- doy = config._locale._week.doy;
-
- weekYear = defaults(w.gg, config._a[YEAR], weekOfYear(createLocal(), dow, doy).year);
- week = defaults(w.w, 1);
-
- if (w.d != null) {
- // weekday -- low day numbers are considered next week
- weekday = w.d;
- if (weekday < dow) {
- ++week;
- }
- } else if (w.e != null) {
- // local weekday -- counting starts from begining of week
- weekday = w.e + dow;
- } else {
- // default to begining of week
- weekday = dow;
- }
- }
- temp = dayOfYearFromWeeks(weekYear, week, weekday, doy, dow);
-
- config._a[YEAR] = temp.year;
- config._dayOfYear = temp.dayOfYear;
-}
diff --git a/library/moment/src/lib/create/from-object.js b/library/moment/src/lib/create/from-object.js
deleted file mode 100644
index af8e082f4..000000000
--- a/library/moment/src/lib/create/from-object.js
+++ /dev/null
@@ -1,13 +0,0 @@
-import { normalizeObjectUnits } from '../units/aliases';
-import { configFromArray } from './from-array';
-
-export function configFromObject(config) {
- if (config._d) {
- return;
- }
-
- var i = normalizeObjectUnits(config._i);
- config._a = [i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond];
-
- configFromArray(config);
-}
diff --git a/library/moment/src/lib/create/from-string-and-array.js b/library/moment/src/lib/create/from-string-and-array.js
deleted file mode 100644
index 1d8a7a806..000000000
--- a/library/moment/src/lib/create/from-string-and-array.js
+++ /dev/null
@@ -1,50 +0,0 @@
-import { copyConfig } from '../moment/constructor';
-import { configFromStringAndFormat } from './from-string-and-format';
-import getParsingFlags from './parsing-flags';
-import { isValid } from './valid';
-import extend from '../utils/extend';
-
-// date from string and array of format strings
-export function configFromStringAndArray(config) {
- var tempConfig,
- bestMoment,
-
- scoreToBeat,
- i,
- currentScore;
-
- if (config._f.length === 0) {
- getParsingFlags(config).invalidFormat = true;
- config._d = new Date(NaN);
- return;
- }
-
- for (i = 0; i < config._f.length; i++) {
- currentScore = 0;
- tempConfig = copyConfig({}, config);
- if (config._useUTC != null) {
- tempConfig._useUTC = config._useUTC;
- }
- tempConfig._f = config._f[i];
- configFromStringAndFormat(tempConfig);
-
- if (!isValid(tempConfig)) {
- continue;
- }
-
- // if there is any input that was not parsed add a penalty for that format
- currentScore += getParsingFlags(tempConfig).charsLeftOver;
-
- //or tokens
- currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;
-
- getParsingFlags(tempConfig).score = currentScore;
-
- if (scoreToBeat == null || currentScore < scoreToBeat) {
- scoreToBeat = currentScore;
- bestMoment = tempConfig;
- }
- }
-
- extend(config, bestMoment || tempConfig);
-}
diff --git a/library/moment/src/lib/create/from-string-and-format.js b/library/moment/src/lib/create/from-string-and-format.js
deleted file mode 100644
index ae48b9038..000000000
--- a/library/moment/src/lib/create/from-string-and-format.js
+++ /dev/null
@@ -1,102 +0,0 @@
-import { configFromISO } from './from-string';
-import { configFromArray } from './from-array';
-import { getParseRegexForToken } from '../parse/regex';
-import { addTimeToArrayFromToken } from '../parse/token';
-import { expandFormat, formatTokenFunctions, formattingTokens } from '../format/format';
-import checkOverflow from './check-overflow';
-import { HOUR } from '../units/constants';
-import { hooks } from '../utils/hooks';
-import getParsingFlags from './parsing-flags';
-
-// constant that refers to the ISO standard
-hooks.ISO_8601 = function () {};
-
-// date from string and format string
-export function configFromStringAndFormat(config) {
- // TODO: Move this to another part of the creation flow to prevent circular deps
- if (config._f === hooks.ISO_8601) {
- configFromISO(config);
- return;
- }
-
- config._a = [];
- getParsingFlags(config).empty = true;
-
- // This array is used to make a Date, either with `new Date` or `Date.UTC`
- var string = '' + config._i,
- i, parsedInput, tokens, token, skipped,
- stringLength = string.length,
- totalParsedInputLength = 0;
-
- tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];
-
- for (i = 0; i < tokens.length; i++) {
- token = tokens[i];
- parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];
- if (parsedInput) {
- skipped = string.substr(0, string.indexOf(parsedInput));
- if (skipped.length > 0) {
- getParsingFlags(config).unusedInput.push(skipped);
- }
- string = string.slice(string.indexOf(parsedInput) + parsedInput.length);
- totalParsedInputLength += parsedInput.length;
- }
- // don't parse if it's not a known token
- if (formatTokenFunctions[token]) {
- if (parsedInput) {
- getParsingFlags(config).empty = false;
- }
- else {
- getParsingFlags(config).unusedTokens.push(token);
- }
- addTimeToArrayFromToken(token, parsedInput, config);
- }
- else if (config._strict && !parsedInput) {
- getParsingFlags(config).unusedTokens.push(token);
- }
- }
-
- // add remaining unparsed input length to the string
- getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;
- if (string.length > 0) {
- getParsingFlags(config).unusedInput.push(string);
- }
-
- // clear _12h flag if hour is <= 12
- 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);
-
- configFromArray(config);
- checkOverflow(config);
-}
-
-
-function meridiemFixWrap (locale, hour, meridiem) {
- var isPm;
-
- if (meridiem == null) {
- // nothing to do
- return hour;
- }
- if (locale.meridiemHour != null) {
- return locale.meridiemHour(hour, meridiem);
- } else if (locale.isPM != null) {
- // Fallback
- isPm = locale.isPM(meridiem);
- if (isPm && hour < 12) {
- hour += 12;
- }
- if (!isPm && hour === 12) {
- hour = 0;
- }
- return hour;
- } else {
- // this is not supposed to happen
- return hour;
- }
-}
diff --git a/library/moment/src/lib/create/from-string.js b/library/moment/src/lib/create/from-string.js
deleted file mode 100644
index 4a7163b2d..000000000
--- a/library/moment/src/lib/create/from-string.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import { matchOffset } from '../parse/regex';
-import { configFromStringAndFormat } from './from-string-and-format';
-import { hooks } from '../utils/hooks';
-import { deprecate } from '../utils/deprecate';
-import getParsingFlags from './parsing-flags';
-
-// iso 8601 regex
-// 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00)
-var isoRegex = /^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/;
-
-var isoDates = [
- ['YYYYYY-MM-DD', /[+-]\d{6}-\d{2}-\d{2}/],
- ['YYYY-MM-DD', /\d{4}-\d{2}-\d{2}/],
- ['GGGG-[W]WW-E', /\d{4}-W\d{2}-\d/],
- ['GGGG-[W]WW', /\d{4}-W\d{2}/],
- ['YYYY-DDD', /\d{4}-\d{3}/]
-];
-
-// iso time formats and regexes
-var isoTimes = [
- ['HH:mm:ss.SSSS', /(T| )\d\d:\d\d:\d\d\.\d+/],
- ['HH:mm:ss', /(T| )\d\d:\d\d:\d\d/],
- ['HH:mm', /(T| )\d\d:\d\d/],
- ['HH', /(T| )\d\d/]
-];
-
-var aspNetJsonRegex = /^\/?Date\((\-?\d+)/i;
-
-// date from iso format
-export function configFromISO(config) {
- var i, l,
- string = config._i,
- match = isoRegex.exec(string);
-
- if (match) {
- getParsingFlags(config).iso = true;
- for (i = 0, l = isoDates.length; i < l; i++) {
- if (isoDates[i][1].exec(string)) {
- config._f = isoDates[i][0];
- break;
- }
- }
- for (i = 0, l = isoTimes.length; i < l; i++) {
- if (isoTimes[i][1].exec(string)) {
- // match[6] should be 'T' or space
- config._f += (match[6] || ' ') + isoTimes[i][0];
- break;
- }
- }
- if (string.match(matchOffset)) {
- config._f += 'Z';
- }
- configFromStringAndFormat(config);
- } else {
- config._isValid = false;
- }
-}
-
-// date from iso format or fallback
-export function configFromString(config) {
- var matched = aspNetJsonRegex.exec(config._i);
-
- if (matched !== null) {
- config._d = new Date(+matched[1]);
- return;
- }
-
- configFromISO(config);
- if (config._isValid === false) {
- delete config._isValid;
- hooks.createFromInputFallback(config);
- }
-}
-
-hooks.createFromInputFallback = deprecate(
- 'moment construction falls back to js Date. This is ' +
- 'discouraged and will be removed in upcoming major ' +
- 'release. Please refer to ' +
- 'https://github.com/moment/moment/issues/1407 for more info.',
- function (config) {
- config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));
- }
-);
diff --git a/library/moment/src/lib/create/local.js b/library/moment/src/lib/create/local.js
deleted file mode 100644
index 88c1e2692..000000000
--- a/library/moment/src/lib/create/local.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import { createLocalOrUTC } from './from-anything';
-
-export function createLocal (input, format, locale, strict) {
- return createLocalOrUTC(input, format, locale, strict, false);
-}
diff --git a/library/moment/src/lib/create/parsing-flags.js b/library/moment/src/lib/create/parsing-flags.js
deleted file mode 100644
index 2bfbcb341..000000000
--- a/library/moment/src/lib/create/parsing-flags.js
+++ /dev/null
@@ -1,22 +0,0 @@
-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
- };
-}
-
-export default function getParsingFlags(m) {
- if (m._pf == null) {
- m._pf = defaultParsingFlags();
- }
- return m._pf;
-}
diff --git a/library/moment/src/lib/create/utc.js b/library/moment/src/lib/create/utc.js
deleted file mode 100644
index 96139530e..000000000
--- a/library/moment/src/lib/create/utc.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import { createLocalOrUTC } from './from-anything';
-
-export function createUTC (input, format, locale, strict) {
- return createLocalOrUTC(input, format, locale, strict, true).utc();
-}
diff --git a/library/moment/src/lib/create/valid.js b/library/moment/src/lib/create/valid.js
deleted file mode 100644
index ad56bfe06..000000000
--- a/library/moment/src/lib/create/valid.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import extend from '../utils/extend';
-import { createUTC } from './utc';
-import getParsingFlags from '../create/parsing-flags';
-
-export function isValid(m) {
- if (m._isValid == null) {
- var flags = getParsingFlags(m);
- m._isValid = !isNaN(m._d.getTime()) &&
- flags.overflow < 0 &&
- !flags.empty &&
- !flags.invalidMonth &&
- !flags.invalidWeekday &&
- !flags.nullInput &&
- !flags.invalidFormat &&
- !flags.userInvalidated;
-
- if (m._strict) {
- m._isValid = m._isValid &&
- flags.charsLeftOver === 0 &&
- flags.unusedTokens.length === 0 &&
- flags.bigHour === undefined;
- }
- }
- return m._isValid;
-}
-
-export function createInvalid (flags) {
- var m = createUTC(NaN);
- if (flags != null) {
- extend(getParsingFlags(m), flags);
- }
- else {
- getParsingFlags(m).userInvalidated = true;
- }
-
- return m;
-}