44 lines
1.4 KiB
JavaScript
44 lines
1.4 KiB
JavaScript
|
/* --------------------------------------------------------------------------------------------
|
||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||
|
* ------------------------------------------------------------------------------------------ */
|
||
|
'use strict';
|
||
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||
|
const toString = Object.prototype.toString;
|
||
|
function boolean(value) {
|
||
|
return value === true || value === false;
|
||
|
}
|
||
|
exports.boolean = boolean;
|
||
|
function string(value) {
|
||
|
return toString.call(value) === '[object String]';
|
||
|
}
|
||
|
exports.string = string;
|
||
|
function number(value) {
|
||
|
return toString.call(value) === '[object Number]';
|
||
|
}
|
||
|
exports.number = number;
|
||
|
function error(value) {
|
||
|
return toString.call(value) === '[object Error]';
|
||
|
}
|
||
|
exports.error = error;
|
||
|
function func(value) {
|
||
|
return toString.call(value) === '[object Function]';
|
||
|
}
|
||
|
exports.func = func;
|
||
|
function array(value) {
|
||
|
return Array.isArray(value);
|
||
|
}
|
||
|
exports.array = array;
|
||
|
function stringArray(value) {
|
||
|
return array(value) && value.every(elem => string(elem));
|
||
|
}
|
||
|
exports.stringArray = stringArray;
|
||
|
function typedArray(value, check) {
|
||
|
return Array.isArray(value) && value.every(check);
|
||
|
}
|
||
|
exports.typedArray = typedArray;
|
||
|
function thenable(value) {
|
||
|
return value && func(value.then);
|
||
|
}
|
||
|
exports.thenable = thenable;
|