{"action":"created","issue":{"url":"https://api.github.com/repos/glenjamin/skin-deep/issues/9","labels_url":"https://api.github.com/repos/glenjamin/skin-deep/issues/9/labels{/name}","comments_url":"https://api.github.com/repos/glenjamin/skin-deep/issues/9/comments","events_url":"https://api.github.com/repos/glenjamin/skin-deep/issues/9/events","html_url":"https://github.com/glenjamin/skin-deep/issues/9","id":107242672,"number":9,"title":"More granular query methods with predicate function and/or props","user":{"login":"jrunning","id":117983,"avatar_url":"https://avatars.githubusercontent.com/u/117983?v=3","gravatar_id":"","url":"https://api.github.com/users/jrunning","html_url":"https://github.com/jrunning","followers_url":"https://api.github.com/users/jrunning/followers","following_url":"https://api.github.com/users/jrunning/following{/other_user}","gists_url":"https://api.github.com/users/jrunning/gists{/gist_id}","starred_url":"https://api.github.com/users/jrunning/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jrunning/subscriptions","organizations_url":"https://api.github.com/users/jrunning/orgs","repos_url":"https://api.github.com/users/jrunning/repos","events_url":"https://api.github.com/users/jrunning/events{/privacy}","received_events_url":"https://api.github.com/users/jrunning/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/glenjamin/skin-deep/labels/Accepted","name":"Accepted","color":"fef2c0"},{"url":"https://api.github.com/repos/glenjamin/skin-deep/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":13,"created_at":"2015-09-18T17:20:18Z","updated_at":"2015-11-16T20:10:28Z","closed_at":null,"body":"It would be great to be able to do more granular searches by passing a props or function argument to query methods):\r\n\r\n```js\r\n// Given the following tree:\r\n<div>\r\n  <Widget title=\"First\" count=\"10\" active />\r\n  <Widget title=\"Second\" count=\"20\"/>\r\n  <Widget title=\"Third\" count=\"30\"/>\r\n</div>\r\n\r\ntree.findComponent('Widget', { title: 'First' });\r\n// => <Widget title=\"First\" .../>\r\n\r\ntree.findComponent('Widget', { active: false });\r\n// => <Widget title=\"Second\" .../>\r\n\r\ntree.findComponent('Widget', (props) => props.count > 25);\r\n// => <Widget title=\"Third\" .../>\r\n```\r\n\r\nOn a related note, it would be nice if there was an `everySubTreeLike` method analogous to `findComponentLike` and more \"plural\" methods to return multiple nodes/components e.g. `findNodes`/`findComponents(Like)`/whathaveyou."},"comment":{"url":"https://api.github.com/repos/glenjamin/skin-deep/issues/comments/157155637","html_url":"https://github.com/glenjamin/skin-deep/issues/9#issuecomment-157155637","issue_url":"https://api.github.com/repos/glenjamin/skin-deep/issues/9","id":157155637,"user":{"login":"glenjamin","id":151272,"avatar_url":"https://avatars.githubusercontent.com/u/151272?v=3","gravatar_id":"","url":"https://api.github.com/users/glenjamin","html_url":"https://github.com/glenjamin","followers_url":"https://api.github.com/users/glenjamin/followers","following_url":"https://api.github.com/users/glenjamin/following{/other_user}","gists_url":"https://api.github.com/users/glenjamin/gists{/gist_id}","starred_url":"https://api.github.com/users/glenjamin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/glenjamin/subscriptions","organizations_url":"https://api.github.com/users/glenjamin/orgs","repos_url":"https://api.github.com/users/glenjamin/repos","events_url":"https://api.github.com/users/glenjamin/events{/privacy}","received_events_url":"https://api.github.com/users/glenjamin/received_events","type":"User","site_admin":false},"created_at":"2015-11-16T20:10:28Z","updated_at":"2015-11-16T20:10:28Z","body":"I thought about dropping 0.13, but we've not upgraded at work yet, and the compat layer is quite thin so I'll probably keep it.\r\n\r\nMight do 0.99 and save 1.0 for when 0.13 drops"}}