safers
Version:
Safely convert to the desired data and error-free refine values.
2 lines (1 loc) • 809 B
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("../utils/isArray.js"),o=require("../utils/isBoolean.js"),c=require("../utils/isObject.js"),l=require("../utils/isFunction.js"),q=require("../utils/isNullish.js"),a=require("../utils/isNumber.js"),b=require("../utils/isString.js");require("../../lib/identifyType-7484d147.js");require("../utils/isNull.js");require("../utils/isUndefined.js");const f={string:i=>b.isString(i),number:i=>a.isNumber(i),boolean:i=>o.isBoolean(i),object:i=>c.isObject(i),array:i=>u.isArray(i),noNullish:i=>!q.isNullish(i),function:null};function _(i,r,t=[]){if(!u.isArray(i)||i.length===0)return t;const e=l.isFunction(r)?"function":r,n=f[e];try{return n&&e!=="function"?i.filter(s=>n(s)):i.filter(r)}catch{return t}}exports.filter=_;