import { isArray } from '../util/isArray'; export function isNumeric(val: any): val is number { // parseFloat NaNs numeric-cast false positives (null|true|false|"") // ...but misinterprets leading-number strings, particularly hex literals ("0x...") // subtraction forces infinities to NaN // adding 1 corrects loss of precision from parseFloat (#15100) return !isArray(val) && (val - parseFloat(val) + 1) >= 0; };