foop
Version:
interfaces that describe their intentions.
28 lines (26 loc) • 2.41 kB
JavaScript
var traverse = require('../traverse')
var defaultTo = require('../cast/defaultTo')
var isMatchWith = require('../is/matchWith')
// moved to deps 5.0.0-beta.6
// https://github.com/fluents/chain-able/issues/32
// module.exports = function find(path, arg, fallback) {
// const data = defaultTo(x => this.entries(true), arg)
// let val = null
// // console.debug(`key: ${key} `)
// const cb = (key, x, traverser) => {
// if (isMatchWith(path, key) || traverser.path.includes(key)) {
// val = x
// traverser.stop()
// // console.error({x})
// }
// // console.debug(`path: ${traverser.path.join('.')} prop: ${traverser.key}`)
// // console.dir({x, path: traverser.path, key: traverser.key})
// }
//
// traverse(data).forEach(function(x) {
// cb(x, this)
// })
//
// return val
// }
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZC5qcyIsInNvdXJjZXMiOlsiZmluZC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCB0cmF2ZXJzZSA9IHJlcXVpcmUoJy4uL3RyYXZlcnNlJylcbmNvbnN0IGRlZmF1bHRUbyA9IHJlcXVpcmUoJy4uL2Nhc3QvZGVmYXVsdFRvJylcbmNvbnN0IGlzTWF0Y2hXaXRoID0gcmVxdWlyZSgnLi4vaXMvbWF0Y2hXaXRoJylcblxuLy8gbW92ZWQgdG8gZGVwcyA1LjAuMC1iZXRhLjZcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mbHVlbnRzL2NoYWluLWFibGUvaXNzdWVzLzMyXG4vLyBtb2R1bGUuZXhwb3J0cyA9IGZ1bmN0aW9uIGZpbmQocGF0aCwgYXJnLCBmYWxsYmFjaykge1xuLy8gICBjb25zdCBkYXRhID0gZGVmYXVsdFRvKHggPT4gdGhpcy5lbnRyaWVzKHRydWUpLCBhcmcpXG4vLyAgIGxldCB2YWwgPSBudWxsXG4vLyAgIC8vIGNvbnNvbGUuZGVidWcoYGtleTogJHtrZXl9IGApXG4vLyAgIGNvbnN0IGNiID0gKGtleSwgeCwgdHJhdmVyc2VyKSA9PiB7XG4vLyAgICAgaWYgKGlzTWF0Y2hXaXRoKHBhdGgsIGtleSkgfHwgdHJhdmVyc2VyLnBhdGguaW5jbHVkZXMoa2V5KSkge1xuLy8gICAgICAgdmFsID0geFxuLy8gICAgICAgdHJhdmVyc2VyLnN0b3AoKVxuLy8gICAgICAgLy8gY29uc29sZS5lcnJvcih7eH0pXG4vLyAgICAgfVxuLy8gICAgIC8vIGNvbnNvbGUuZGVidWcoYHBhdGg6ICR7dHJhdmVyc2VyLnBhdGguam9pbignLicpfSBwcm9wOiAke3RyYXZlcnNlci5rZXl9YClcbi8vICAgICAvLyBjb25zb2xlLmRpcih7eCwgcGF0aDogdHJhdmVyc2VyLnBhdGgsIGtleTogdHJhdmVyc2VyLmtleX0pXG4vLyAgIH1cbi8vXG4vLyAgIHRyYXZlcnNlKGRhdGEpLmZvckVhY2goZnVuY3Rpb24oeCkge1xuLy8gICAgIGNiKHgsIHRoaXMpXG4vLyAgIH0pXG4vL1xuLy8gICByZXR1cm4gdmFsXG4vLyB9XG4iXSwibmFtZXMiOlsiY29uc3QiXSwibWFwcGluZ3MiOiJBQUFBQSxHQUFLLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUM7QUFDdkNBLEdBQUssQ0FBQyxTQUFTLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixDQUFDO0FBQzlDQSxHQUFLLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9