UNPKG

mobx-autoform

Version:

Ridiculously simple form state management with mobx

18 lines (17 loc) 622 B
import _ from "lodash/fp.js"; import F from "futil"; let treePath = (x, xk, p, pk) => _.map(_.toString, [xk, ...pk].reverse().slice(1)); let omitByPrefixes = (prefixes, obj) => F.pickByIndexed((x, k) => !_.some((p) => _.startsWith(p, k), prefixes), obj); let pickByPrefixes = (prefixes, obj) => F.pickByIndexed((x, k) => _.some((p) => _.startsWith(p, k), prefixes), obj); let reduceTreePost = (next = F.traverse) => _.curry((f, result, tree) => { F.walk(next)(_.noop, (...x) => { result = f(result, ...x); })(tree); return result; }); export { omitByPrefixes, pickByPrefixes, reduceTreePost, treePath };