62 lines
1.2 KiB
JavaScript
62 lines
1.2 KiB
JavaScript
|
"use strict";
|
||
|
|
||
|
Object.defineProperty(exports, "__esModule", {
|
||
|
value: true
|
||
|
});
|
||
|
exports.dontSetMe = dontSetMe;
|
||
|
exports.findInArray = findInArray;
|
||
|
exports.int = int;
|
||
|
exports.isFunction = isFunction;
|
||
|
exports.isNum = isNum;
|
||
|
|
||
|
// @credits https://gist.github.com/rogozhnikoff/a43cfed27c41e4e68cdc
|
||
|
function findInArray(array
|
||
|
/*: Array<any> | TouchList*/
|
||
|
, callback
|
||
|
/*: Function*/
|
||
|
)
|
||
|
/*: any*/
|
||
|
{
|
||
|
for (var i = 0, length = array.length; i < length; i++) {
|
||
|
if (callback.apply(callback, [array[i], i, array])) return array[i];
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function isFunction(func
|
||
|
/*: any*/
|
||
|
)
|
||
|
/*: boolean %checks*/
|
||
|
{
|
||
|
// $FlowIgnore[method-unbinding]
|
||
|
return typeof func === 'function' || Object.prototype.toString.call(func) === '[object Function]';
|
||
|
}
|
||
|
|
||
|
function isNum(num
|
||
|
/*: any*/
|
||
|
)
|
||
|
/*: boolean %checks*/
|
||
|
{
|
||
|
return typeof num === 'number' && !isNaN(num);
|
||
|
}
|
||
|
|
||
|
function int(a
|
||
|
/*: string*/
|
||
|
)
|
||
|
/*: number*/
|
||
|
{
|
||
|
return parseInt(a, 10);
|
||
|
}
|
||
|
|
||
|
function dontSetMe(props
|
||
|
/*: Object*/
|
||
|
, propName
|
||
|
/*: string*/
|
||
|
, componentName
|
||
|
/*: string*/
|
||
|
)
|
||
|
/*: ?Error*/
|
||
|
{
|
||
|
if (props[propName]) {
|
||
|
return new Error("Invalid prop ".concat(propName, " passed to ").concat(componentName, " - do not set this, set it on the child."));
|
||
|
}
|
||
|
}
|