function filterObject()

in src/utils/theme.js [24:43]


function filterObject(obj, predicate) {
  if (Array.isArray(obj)) {
    return obj.filter(predicate)
  }

  return Object.entries(obj).reduce((acc, [key, value]) => {
    if (isObject(value)) {
      const result = filterObject(value, predicate)

      // Don't include empty objects or arrays
      if (!isEmpty(result)) {
        acc[key] = result
      }
    } else if (predicate(value)) {
      acc[key] = value
    }

    return acc
  }, {})
}