UNPKG

@naverpay/hidash

Version:

improved lodash

41 lines (40 loc) 957 B
function l(r, t) { try { if (r == null) return !1; if (!t) return r[t]; const e = Array.isArray(t) ? t : [t]; let n = r; const f = e.length - 1; for (let u = 0; u < f; u++) { const s = e[u]; if (s in n) n = n[s]; else return !1; } const i = e[f]; return typeof n == "object" ? i in n : n === i; } catch (e) { return !1; } } function y(r, t) { return typeof r != "object" ? r === t : Object.entries(t).every(([e, n]) => Array.isArray(r) || typeof r != "object" ? r === t : e in r ? y(r[e], n) : !1); } function a(r) { return r == null ? (t) => !!t : typeof r == "function" ? r : !Array.isArray(r) && typeof r == "object" ? (t) => y(t, r) : (t) => l(t, r); } function c(r, t) { if (r == null) return; const e = a(t), n = Array.isArray(r) ? r : Object.values(r); for (const f of n) if (e(f)) return f; } export { c as default, c as find };