sameElse : 'L'
};
+import isFunction from '../utils/is-function';
+
export function calendar (key, mom, now) {
var output = this._calendar[key];
- return typeof output === 'function' ? output.call(mom, now) : output;
+ return isFunction(output) ? output.call(mom, now) : output;
}
yy : '%d years'
};
+import isFunction from '../utils/is-function';
+
export function relativeTime (number, withoutSuffix, string, isFuture) {
var output = this._relativeTime[string];
- return (typeof output === 'function') ?
+ return (isFunction(output)) ?
output(number, withoutSuffix, string, isFuture) :
output.replace(/%d/i, number);
}
export function pastFuture (diff, output) {
var format = this._relativeTime[diff > 0 ? 'future' : 'past'];
- return typeof format === 'function' ? format(output) : format.replace(/%s/i, output);
+ return isFunction(format) ? format(output) : format.replace(/%s/i, output);
}
+import isFunction from '../utils/is-function';
+
export function set (config) {
var prop, i;
for (i in config) {
prop = config[i];
- if (typeof prop === 'function') {
+ if (isFunction(prop)) {
this[i] = prop;
} else {
this['_' + i] = prop;
import { formatMoment } from '../format/format';
import { hooks } from '../utils/hooks';
+import isFunction from '../utils/is-function';
hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';
export function toISOString () {
var m = this.clone().utc();
if (0 < m.year() && m.year() <= 9999) {
- if ('function' === typeof Date.prototype.toISOString) {
+ if (isFunction(Date.prototype.toISOString)) {
// native implementation is ~50x faster, use it when we can
return this.toDate().toISOString();
} else {
import { normalizeUnits } from '../units/aliases';
import { hooks } from '../utils/hooks';
+import isFunction from '../utils/is-function';
export function makeGetSet (unit, keepTime) {
return function (value) {
}
} else {
units = normalizeUnits(units);
- if (typeof this[units] === 'function') {
+ if (isFunction(this[units])) {
return this[units](value);
}
}
export var matchWord = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i;
import hasOwnProp from '../utils/has-own-prop';
+import isFunction from '../utils/is-function';
var regexes = {};
-function isFunction (sth) {
- // https://github.com/moment/moment/issues/2325
- return typeof sth === 'function' &&
- Object.prototype.toString.call(sth) === '[object Function]';
-}
-
-
export function addRegexToken (token, regex, strictRegex) {
regexes[token] = isFunction(regex) ? regex : function (isStrict) {
return (isStrict && strictRegex) ? strictRegex : regex;
--- /dev/null
+export default function isFunction(input) {
+ return input instanceof Function || Object.prototype.toString.call(input) === '[object Function]';
+}
//! author : Aggelos Karalias : https://github.com/mehiel
import moment from '../moment';
+import isFunction from '../lib/utils/is-function';
export default moment.defineLocale('el', {
monthsNominativeEl : 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split('_'),
calendar : function (key, mom) {
var output = this._calendarEl[key],
hours = mom && mom.hours();
- if (typeof output === 'function') {
+ if (isFunction(output)) {
output = output.apply(mom);
}
return output.replace('{}', (hours % 12 === 1 ? 'στη' : 'στις'));