You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1.1 KiB
28 lines
1.1 KiB
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } |
|
|
|
import assertString from './util/assertString'; |
|
import toString from './util/toString'; |
|
export default function isIn(str, options) { |
|
assertString(str); |
|
var i; |
|
|
|
if (Object.prototype.toString.call(options) === '[object Array]') { |
|
var array = []; |
|
|
|
for (i in options) { |
|
// https://github.com/gotwarlost/istanbul/blob/master/ignoring-code-for-coverage.md#ignoring-code-for-coverage-purposes |
|
// istanbul ignore else |
|
if ({}.hasOwnProperty.call(options, i)) { |
|
array[i] = toString(options[i]); |
|
} |
|
} |
|
|
|
return array.indexOf(str) >= 0; |
|
} else if (_typeof(options) === 'object') { |
|
return options.hasOwnProperty(str); |
|
} else if (options && typeof options.indexOf === 'function') { |
|
return options.indexOf(str) >= 0; |
|
} |
|
|
|
return false; |
|
} |