init
This commit is contained in:
74
node_modules/moment/src/lib/utils/is-moment-input.js
generated
vendored
Normal file
74
node_modules/moment/src/lib/utils/is-moment-input.js
generated
vendored
Normal file
@@ -0,0 +1,74 @@
|
||||
import isObjectEmpty from './is-object-empty';
|
||||
import hasOwnProp from './has-own-prop';
|
||||
import isObject from './is-object';
|
||||
import isDate from './is-date';
|
||||
import isNumber from './is-number';
|
||||
import isString from './is-string';
|
||||
import { isMoment } from '../moment/constructor';
|
||||
import isArray from './is-array';
|
||||
|
||||
// type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined
|
||||
export function isMomentInput(input) {
|
||||
return (
|
||||
isMoment(input) ||
|
||||
isDate(input) ||
|
||||
isString(input) ||
|
||||
isNumber(input) ||
|
||||
isNumberOrStringArray(input) ||
|
||||
isMomentInputObject(input) ||
|
||||
input === null ||
|
||||
input === undefined
|
||||
);
|
||||
}
|
||||
|
||||
export function isMomentInputObject(input) {
|
||||
var objectTest = isObject(input) && !isObjectEmpty(input),
|
||||
propertyTest = false,
|
||||
properties = [
|
||||
'years',
|
||||
'year',
|
||||
'y',
|
||||
'months',
|
||||
'month',
|
||||
'M',
|
||||
'days',
|
||||
'day',
|
||||
'd',
|
||||
'dates',
|
||||
'date',
|
||||
'D',
|
||||
'hours',
|
||||
'hour',
|
||||
'h',
|
||||
'minutes',
|
||||
'minute',
|
||||
'm',
|
||||
'seconds',
|
||||
'second',
|
||||
's',
|
||||
'milliseconds',
|
||||
'millisecond',
|
||||
'ms',
|
||||
],
|
||||
i,
|
||||
property;
|
||||
|
||||
for (i = 0; i < properties.length; i += 1) {
|
||||
property = properties[i];
|
||||
propertyTest = propertyTest || hasOwnProp(input, property);
|
||||
}
|
||||
|
||||
return objectTest && propertyTest;
|
||||
}
|
||||
|
||||
function isNumberOrStringArray(input) {
|
||||
var arrayTest = isArray(input),
|
||||
dataTypeTest = false;
|
||||
if (arrayTest) {
|
||||
dataTypeTest =
|
||||
input.filter(function (item) {
|
||||
return !isNumber(item) && isString(input);
|
||||
}).length === 0;
|
||||
}
|
||||
return arrayTest && dataTypeTest;
|
||||
}
|
||||
Reference in New Issue
Block a user