UNPKG

mingo

Version:

MongoDB query language for in-memory objects

15 lines (14 loc) 506 B
import { computeValue } from "../../../core/_internal"; import { assert, isArray, isEqual } from "../../../util"; import { errInvalidArgs } from "../_internal"; const $in = (obj, expr, options) => { assert(isArray(expr) && expr.length === 2, "$in expects array(2)"); const args = computeValue(obj, expr, null, options); const [item, arr] = args; if (!isArray(arr)) return errInvalidArgs(options.failOnError, "$in arg2 <array>"); return arr.some((v) => isEqual(v, item)); }; export { $in };