{"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"keywords":["grep","recursive","recursion","synchronous","nested","map","filter"],"dist-tags":{"latest":"0.4.2"},"author":{"name":"Jane Arc","email":"jane.arc@gsa.gov","url":"http://github.com/janearc"},"description":"Scours arbitrarily-nested objects finding the things you want.","readme":"deep-grep\n=========\n\nToo many haystacks, not enough needles &mdash; or, \"when you have a grep,\neverything looks like a list.\"\n\n```javascript\nvar needles = dg.deeply( [\n\tfoo, [\n\t\tbar, baz, [\n\t\t\tbletch, [\n\t\t\t\tqip\n\t\t\t]\n\t\t]\n\t] ], function (t) { if t == qip return t }\n)\n```\n\nusage\n====\n\nFor grep on simple, flat (non-nested) lists:\n\n* `dg.in()`\n  - `dg.in( list, 'value' )` - returns `true` or `false` depending upon\n     whether `list` contains `value`.\n* `dg.all_in()`\n  - `dg.all_in( list_a, list_b )` - returns a list of all values in `list_a`\n   that exist in `list_b`.\n* `dg.unique()`\n  - `dg.unique( list )` - returns all unique values of `list`. Note: flattens.\n* `dg.flatten( )`\n  - `dg.flatten( nested_list )` - returns a list of all the lists contained in\n    `nested_list`, concatenated into a single scope.\n\nFor doing greppy things on nested lists:\n\n```javascript\nvar haystack = [\n\t'zebra', 'lion', [\n\t\t'tiger', 'unicorn', 'emperor penguin'\n\t],\n\t'leprechaun',\n\t'cockerel'\n];\n\nvar needles  = dg.deeply( list, function (t) {\n\tif (new RegExp( ('(unicorn|leprechaun)s?' ).test(t))) return true\n} );\n```\n\nFor more complex data, options are available to you:\n\n```javascript\nvar needles  = dg.deeply( arks['Noah'], function (t) { ... }, {\n\t// Any of these may be defined\n\t//\n\n\t// If items in the provided object have methods, check these methods for\n\t// return values that evaluate as true in the provided function.\n\t//\n\t'check-object-methods': [ 'get_species', 'list_passengers' ],\n\n\t// Provide optionally as argument to calls from check-object-methods, above\n\t//\n\t'object-method-arguments': [ argument, function, 'etc' ],\n\n\t// Return hash keys that evaluate true also?\n\t//   default: false\n\t//\n\t'check-keys': true,\n\n\t// Return hash values that evaluate true?\n\t//   default: false\n\t//\n\t'check-values': true,\n\n\t// Return key/value tuples rather than just keys or just values?\n\t//   default: false\n\t//\n\t'return-hash-tuples': true,\n} );\n```\n\ndeprecated methods\n====\n\n* `dg.sync()`\n  - `dg.sync( list, expression )` - evaluates `list`, returning a new list of every\n     element that matches `expression.test` (like `RegExp`).\n  - `dg.sync( list, func )` - same as above, only executes `func` for every element\n     of list, returning a new list.\n* `dg.async()`\n  - `dg.async( list, expression )` - same as with `sync()`, above, only\n     returns a promise to the list of matches.\n  - `dg.async( list, func, callback )` - same as `sync()`, above, except the\n     callback is called with a promise to the list of matches.\n\nauthor\n====\n\n[@janearc](https://github.com/janearc), jane@cpan.org\n","repository":{"type":"git","url":"https://github.com/janearc/deep-grep.git"},"bugs":{"url":"https://github.com/janearc/deep-grep/issues"},"license":"CC0-1.0","versions":{"0.0.1":{"name":"deep-grep","version":"0.0.1","description":"Recurses through nested lists finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/avriette/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map"],"author":{"name":"Jane Avriette","email":"jane.avriette@gsa.gov","url":"http://github.com/avriette"},"license":"CC0-1.0","bugs":{"url":"https://github.com/avriette/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","jagrep":">=0.2.0"},"homepage":"https://github.com/avriette/deep-grep","gitHead":"86e77dd59a7486ece8a9a329345a07cfceb2cbfb","_id":"deep-grep@0.0.1","_shasum":"3556205c74451522df759a8d0170dd5ebfce3999","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"3556205c74451522df759a8d0170dd5ebfce3999","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.0.1.tgz","integrity":"sha512-tvPKofpAlf471r6knaX9jMDW8ru6zdGN+3e0mzMrRytpr8ThPYUiEWQhO3BAhzV8665gjctfWcyPQwzI40JJWA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3ZapFB8sw+U86BYNoiitclP1Ef2w78cF8LyJ1gLAWygIhALqwEttrxMTmfHTmEcmpPZ3y2bl8Wkg3RULP7IeQryWG"}]}},"0.0.2":{"name":"deep-grep","version":"0.0.2","description":"Recurses through nested lists finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/avriette/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map"],"author":{"name":"Jane Avriette","email":"jane.avriette@gsa.gov","url":"http://github.com/avriette"},"license":"CC0-1.0","bugs":{"url":"https://github.com/avriette/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","jagrep":">=0.2.0"},"homepage":"https://github.com/avriette/deep-grep","_id":"deep-grep@0.0.2","_shasum":"0ef7885d8d5c8b94217e65c60cfc1d1b92fe64bb","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"0ef7885d8d5c8b94217e65c60cfc1d1b92fe64bb","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.0.2.tgz","integrity":"sha512-dtznuOizM8ZKwpZWTiUBXI3ZRY/JMVUGilIuAAIWeOK/hV/4PsYmck5/laXPi+ndpv8MTvwvMivj1FVULfLqZA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFjE9aFrCTsgOYr0jN9GcoMA6PegxB7x5HJleV88taP0AiEAzaYmV8YeKknP2hFoLkBZIPhyhybyZVvTDzqIV7RV08w="}]}},"0.3.0":{"name":"deep-grep","version":"0.3.0","description":"Recurses through nested lists finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/avriette/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map"],"author":{"name":"Jane Avriette","email":"jane.avriette@gsa.gov","url":"http://github.com/avriette"},"license":"CC0-1.0","bugs":{"url":"https://github.com/avriette/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","q":"*"},"homepage":"https://github.com/avriette/deep-grep","gitHead":"be8b9763c50b3c7368cca500303e50fb6d43df4d","_id":"deep-grep@0.3.0","_shasum":"eece516d927563d2632ad5df4a5f31e7b30d3f72","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"eece516d927563d2632ad5df4a5f31e7b30d3f72","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.3.0.tgz","integrity":"sha512-sqkKGzVOAwmkqTwKCM3XPZOhn+/1r4+qFtO+8zOzAljyWWcN2L+FvQsBRsHzlw3PjdZ2YtrUe03/MhZUe53VJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBINgOyv9emhF9/T8gfLJbTxDMSBcRm8ShRzxUb9VAqwIgO8KcAU5fl+MPNRR3ONgf7vQhPSD/cm9/N2VC/LMCUh0="}]}},"0.3.2":{"name":"deep-grep","version":"0.3.2","description":"Recurses through nested lists finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/avriette/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map"],"author":{"name":"Jane Avriette","email":"jane.avriette@gsa.gov","url":"http://github.com/avriette"},"license":"CC0-1.0","bugs":{"url":"https://github.com/avriette/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","q":"*"},"homepage":"https://github.com/avriette/deep-grep","gitHead":"4a17a61464b5019a511d0f29345541a4147b4654","_id":"deep-grep@0.3.2","_shasum":"23ddf60071e3f2f25942f266a9f60162e0581d25","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"23ddf60071e3f2f25942f266a9f60162e0581d25","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.3.2.tgz","integrity":"sha512-VhCnHS5eHnAwbetTu/X/l5G3rf6xTZr5gOO9EhqTvPEJaaL/17otq70QEMQSdqxCKvf7H3Uu5la7AHnyUMwQ4A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHB7Klf3DwICITSAfS9m0QAaSf37igMUr/sRZdkcacAeAiArN1h0Jf1sfxfYEnhYBCWGd57PVEVqYhBiGrHVFWDbXA=="}]}},"0.3.3":{"name":"deep-grep","version":"0.3.3","description":"Recurses through nested lists finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/janearc/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map"],"author":{"name":"Jane Arc","email":"jane.arc@gsa.gov","url":"http://github.com/janearc"},"license":"CC0-1.0","bugs":{"url":"https://github.com/janearc/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","q":"*","singleton":"*","log4js":"*"},"homepage":"https://github.com/janearc/deep-grep","gitHead":"5aa3f4db51e9032532a6c8fd970f7a4f7d263ec7","_id":"deep-grep@0.3.3","_shasum":"2039e8b76f62e311dd55cf9afd564418e27ec84b","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"2039e8b76f62e311dd55cf9afd564418e27ec84b","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.3.3.tgz","integrity":"sha512-C6Z7R+NNAOH9ypfXcb7fc2mraE4hRnkamyCDfRr2/hmYYf8rydK6EV166fiP87Z7fF2wk+s3Fk8wvhfWqsyNTg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHQ9nGuBpqagpf55ez/+r459gxcfXTkGCNdoldm/DUEPAiEAutBbbwoalZ26fAflRH4JnDS+O+hE01nTjqBSsd71z78="}]}},"0.3.4":{"name":"deep-grep","version":"0.3.4","description":"Recurses through nested lists finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/janearc/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map"],"author":{"name":"Jane Arc","email":"jane.arc@gsa.gov","url":"http://github.com/janearc"},"license":"CC0-1.0","bugs":{"url":"https://github.com/janearc/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","q":"*","singleton":"*","log4js":"*"},"homepage":"https://github.com/janearc/deep-grep","gitHead":"75dbdb550e5e90a1741e2d757434ecdd31f51657","_id":"deep-grep@0.3.4","_shasum":"836156c95e4187572bc5f83ff2866e9087ad2057","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"836156c95e4187572bc5f83ff2866e9087ad2057","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.3.4.tgz","integrity":"sha512-jN4NfMiYKJnc/p5YLdNIRdZFsSDVM8D8HRCzDPDclGhKRZqsycbh6YSpPD1ly7T6uFMT0e9EubMa9nKIJ0dlow==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA2eBEcn2V02E3zBoUK+A1We6hdoQfge78DFqOFyc/jpAiAI85UAXNaPwOBe0/7lnTJH63Twnk6hCqHTYAeA7G7Fzw=="}]}},"0.3.5":{"name":"deep-grep","version":"0.3.5","description":"Recurses through nested lists finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/janearc/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map"],"author":{"name":"Jane Arc","email":"jane.arc@gsa.gov","url":"http://github.com/janearc"},"license":"CC0-1.0","bugs":{"url":"https://github.com/janearc/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","q":"*","singleton":"*","log4js":"*"},"homepage":"https://github.com/janearc/deep-grep","gitHead":"d0f8ccfb7399ebdcd7cc0fc0bd63a8c021dfd339","_id":"deep-grep@0.3.5","_shasum":"e31f34d60928fad5afa6a4f0ca72a1f699708741","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"e31f34d60928fad5afa6a4f0ca72a1f699708741","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.3.5.tgz","integrity":"sha512-hBgizdrocfc9pXeS88DMPmqq5cgZ9TIogGCtJTdSVGJReEjbVOUCjuOox5VWlQZiTyVf77Q9ZfwA3MJUsSSlrA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDxIRIvKnaB9pfGyf5UXWuJfTVQ/FFH+ZKG07ShOdqnbQIhAIK2dBLRmQrSy8YxV3jdEeLyDh5njfK6X4sKjHCXsgQy"}]}},"0.4.0":{"name":"deep-grep","version":"0.4.0","description":"Scours arbitrarily-nested objects finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/janearc/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map","filter"],"author":{"name":"Jane Arc","email":"jane.arc@gsa.gov","url":"http://github.com/janearc"},"license":"CC0-1.0","bugs":{"url":"https://github.com/janearc/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","q":"*","xact-id-tiny":">=0.0.4","log4js":"*"},"homepage":"https://github.com/janearc/deep-grep","gitHead":"6d35d1371fc6df1020edcc2fc3eff93b32acd8cd","_id":"deep-grep@0.4.0","_shasum":"10205c372e3888e163c14e4d88a716dc5effcc09","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"10205c372e3888e163c14e4d88a716dc5effcc09","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.4.0.tgz","integrity":"sha512-54HSdVwyTsuystkoLR/GSMfhBOcbsBU94Yntb6RR+02h8kdcV3jiurhRy+8/0mWlWBiOOg/Hn3BX5TLciA8OlQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHO4aoV2TJqWFZRtL1P2engda8+QLAiYlolxCxPu3tUiAiBs4swhRRqcmgRJhZyhGdYKzxvESIgTqx07J/Xnd0/dww=="}]}},"0.4.1":{"name":"deep-grep","version":"0.4.1","description":"Scours arbitrarily-nested objects finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/janearc/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map","filter"],"author":{"name":"Jane Arc","email":"jane.arc@gsa.gov","url":"http://github.com/janearc"},"license":"CC0-1.0","bugs":{"url":"https://github.com/janearc/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","q":"*","xact-id-tiny":">=0.0.6","log4js":"*"},"homepage":"https://github.com/janearc/deep-grep","gitHead":"3bc77503c4918419f35f23e06ef7d3b1a7a40370","_id":"deep-grep@0.4.1","_shasum":"fab5eb0ff525f2a8a7d8c96d549af7a563a38892","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"fab5eb0ff525f2a8a7d8c96d549af7a563a38892","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.4.1.tgz","integrity":"sha512-6UmKPjSpC4/hPyLGx+Sv9D0wiPhxp8wQy/Bb0YoFQjk546ppJqssb8bqeTXqLy8Oc7ViAzBRNNU+KkPLZ6B1kg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG/p/gZ+bWhrcSIviwVeEi7uWTKaDP7fdfV9w8Vdq9wIAiEAtRo7GzYt5HhBdFjD7KAahZktB3/YAH3ShDBA+gWxL9M="}]}},"0.4.2":{"name":"deep-grep","version":"0.4.2","description":"Scours arbitrarily-nested objects finding the things you want.","main":"lib/dg.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"https://github.com/janearc/deep-grep.git"},"keywords":["grep","recursive","recursion","synchronous","nested","map","filter"],"author":{"name":"Jane Arc","email":"jane.arc@gsa.gov","url":"http://github.com/janearc"},"license":"CC0-1.0","bugs":{"url":"https://github.com/janearc/deep-grep/issues"},"dependencies":{"mocha":"*","chai":"*","q":"*","xact-id-tiny":">=0.0.6","log4js":"*"},"homepage":"https://github.com/janearc/deep-grep","gitHead":"c74804579e41f51c3e2f368dfbed8523918b92ac","_id":"deep-grep@0.4.2","_shasum":"01cfb10561934b6f65a64ae4f5a52d675754e74f","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"anonymous","email":"jane@cpan.org"},"maintainers":[{"name":"anonymous","email":"jane@cpan.org"}],"dist":{"shasum":"01cfb10561934b6f65a64ae4f5a52d675754e74f","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/deep-grep/-/deep-grep-0.4.2.tgz","integrity":"sha512-BKSt03t5gTp+wK3rZl6VnUlVKS7+9pCuxms85/t+JefiuyKf9EkXN6oXDoB3uLN39gqnk6kaZpdxi/er1i7KYg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC+JyFBInnqOS6ix1uAF5lkrrBy9vU12mwWh1WVZ+mtcAIgGHQfxUpTmUO3KNiSRiwidc502rt4oBTtCU76iZtrnKQ="}]}}},"name":"deep-grep","time":{"modified":"2022-06-14T22:54:20.706Z","created":"2014-11-24T15:29:15.414Z","0.0.1":"2014-11-24T15:29:15.414Z","0.0.2":"2014-11-24T18:58:24.068Z","0.3.0":"2014-12-22T08:11:31.527Z","0.3.2":"2014-12-23T06:32:40.070Z","0.3.3":"2015-01-15T16:27:34.447Z","0.3.4":"2015-01-15T16:28:49.210Z","0.3.5":"2015-01-20T14:40:19.757Z","0.4.0":"2015-02-20T19:00:22.840Z","0.4.1":"2015-02-27T04:09:20.364Z","0.4.2":"2015-03-13T13:04:04.460Z"},"readmeFilename":"README.md","homepage":"https://github.com/janearc/deep-grep"}