{"action":"created","issue":{"url":"https://api.github.com/repos/paustint/soql-parser-js/issues/46","repository_url":"https://api.github.com/repos/paustint/soql-parser-js","labels_url":"https://api.github.com/repos/paustint/soql-parser-js/issues/46/labels{/name}","comments_url":"https://api.github.com/repos/paustint/soql-parser-js/issues/46/comments","events_url":"https://api.github.com/repos/paustint/soql-parser-js/issues/46/events","html_url":"https://github.com/paustint/soql-parser-js/issues/46","id":377735756,"node_id":"MDU6SXNzdWUzNzc3MzU3NTY=","number":46,"title":"composeQuery relationship clarification","user":{"login":"ChuckJonas","id":5217568,"node_id":"MDQ6VXNlcjUyMTc1Njg=","avatar_url":"https://avatars1.githubusercontent.com/u/5217568?v=4","gravatar_id":"","url":"https://api.github.com/users/ChuckJonas","html_url":"https://github.com/ChuckJonas","followers_url":"https://api.github.com/users/ChuckJonas/followers","following_url":"https://api.github.com/users/ChuckJonas/following{/other_user}","gists_url":"https://api.github.com/users/ChuckJonas/gists{/gist_id}","starred_url":"https://api.github.com/users/ChuckJonas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChuckJonas/subscriptions","organizations_url":"https://api.github.com/users/ChuckJonas/orgs","repos_url":"https://api.github.com/users/ChuckJonas/repos","events_url":"https://api.github.com/users/ChuckJonas/events{/privacy}","received_events_url":"https://api.github.com/users/ChuckJonas/received_events","type":"User","site_admin":false},"labels":[{"id":1029102701,"node_id":"MDU6TGFiZWwxMDI5MTAyNzAx","url":"https://api.github.com/repos/paustint/soql-parser-js/labels/question","name":"question","color":"d876e3","default":true}],"state":"open","locked":false,"assignee":{"login":"ChuckJonas","id":5217568,"node_id":"MDQ6VXNlcjUyMTc1Njg=","avatar_url":"https://avatars1.githubusercontent.com/u/5217568?v=4","gravatar_id":"","url":"https://api.github.com/users/ChuckJonas","html_url":"https://github.com/ChuckJonas","followers_url":"https://api.github.com/users/ChuckJonas/followers","following_url":"https://api.github.com/users/ChuckJonas/following{/other_user}","gists_url":"https://api.github.com/users/ChuckJonas/gists{/gist_id}","starred_url":"https://api.github.com/users/ChuckJonas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChuckJonas/subscriptions","organizations_url":"https://api.github.com/users/ChuckJonas/orgs","repos_url":"https://api.github.com/users/ChuckJonas/repos","events_url":"https://api.github.com/users/ChuckJonas/events{/privacy}","received_events_url":"https://api.github.com/users/ChuckJonas/received_events","type":"User","site_admin":false},"assignees":[{"login":"ChuckJonas","id":5217568,"node_id":"MDQ6VXNlcjUyMTc1Njg=","avatar_url":"https://avatars1.githubusercontent.com/u/5217568?v=4","gravatar_id":"","url":"https://api.github.com/users/ChuckJonas","html_url":"https://github.com/ChuckJonas","followers_url":"https://api.github.com/users/ChuckJonas/followers","following_url":"https://api.github.com/users/ChuckJonas/following{/other_user}","gists_url":"https://api.github.com/users/ChuckJonas/gists{/gist_id}","starred_url":"https://api.github.com/users/ChuckJonas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChuckJonas/subscriptions","organizations_url":"https://api.github.com/users/ChuckJonas/orgs","repos_url":"https://api.github.com/users/ChuckJonas/repos","events_url":"https://api.github.com/users/ChuckJonas/events{/privacy}","received_events_url":"https://api.github.com/users/ChuckJonas/received_events","type":"User","site_admin":false},{"login":"paustint","id":5461649,"node_id":"MDQ6VXNlcjU0NjE2NDk=","avatar_url":"https://avatars2.githubusercontent.com/u/5461649?v=4","gravatar_id":"","url":"https://api.github.com/users/paustint","html_url":"https://github.com/paustint","followers_url":"https://api.github.com/users/paustint/followers","following_url":"https://api.github.com/users/paustint/following{/other_user}","gists_url":"https://api.github.com/users/paustint/gists{/gist_id}","starred_url":"https://api.github.com/users/paustint/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paustint/subscriptions","organizations_url":"https://api.github.com/users/paustint/orgs","repos_url":"https://api.github.com/users/paustint/repos","events_url":"https://api.github.com/users/paustint/events{/privacy}","received_events_url":"https://api.github.com/users/paustint/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/paustint/soql-parser-js/milestones/1","html_url":"https://github.com/paustint/soql-parser-js/milestone/1","labels_url":"https://api.github.com/repos/paustint/soql-parser-js/milestones/1/labels","id":3736359,"node_id":"MDk6TWlsZXN0b25lMzczNjM1OQ==","number":1,"title":"Release-1","description":"","creator":{"login":"paustint","id":5461649,"node_id":"MDQ6VXNlcjU0NjE2NDk=","avatar_url":"https://avatars2.githubusercontent.com/u/5461649?v=4","gravatar_id":"","url":"https://api.github.com/users/paustint","html_url":"https://github.com/paustint","followers_url":"https://api.github.com/users/paustint/followers","following_url":"https://api.github.com/users/paustint/following{/other_user}","gists_url":"https://api.github.com/users/paustint/gists{/gist_id}","starred_url":"https://api.github.com/users/paustint/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paustint/subscriptions","organizations_url":"https://api.github.com/users/paustint/orgs","repos_url":"https://api.github.com/users/paustint/repos","events_url":"https://api.github.com/users/paustint/events{/privacy}","received_events_url":"https://api.github.com/users/paustint/received_events","type":"User","site_admin":false},"open_issues":10,"closed_issues":25,"state":"open","created_at":"2018-10-13T19:22:19Z","updated_at":"2018-11-09T03:53:42Z","due_on":null,"closed_at":null},"comments":8,"created_at":"2018-11-06T08:19:29Z","updated_at":"2018-11-10T15:46:57Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"<!--\r\n  Please include the following classification.\r\n  If your classification is not added, you can modify the list below\r\n-->\r\n- [ ] Feature\r\n- [ ] Bug Request\r\n- [x] Question\r\n\r\nFirst off, awesome work.  I started to write my own parser using antlr4ts and the grammar posted by Mulesoft and then (THANK GOD) I came across this pkg.  Seems like a really complete implementation.\r\n\r\nI do however have a question on how the `composeQuery()` is suppose to work in regards to relationship fields.  \r\n\r\nOn the field interface, I see the `relationshipFields: string[]` prop, however, it seems to ignore this array and instead just output whatever is in the `text` property.  Is this intended behavior?\r\n\r\nExample:\r\n\r\n```\r\nlet qryStr = composeQuery({\r\n    \"fields\":[\r\n        {\"text\":\"Name\"},\r\n        {\r\n            \"text\":\"Name\",\r\n            \"relationshipFields\":['Account']\r\n        }\r\n    ],\r\n    \"subqueries\":[],\r\n    \"sObject\":\"contact\"\r\n});\r\n\r\n//OUTPUT: \"SELECT Name, Name FROM contact\"\r\n```"},"comment":{"url":"https://api.github.com/repos/paustint/soql-parser-js/issues/comments/437592982","html_url":"https://github.com/paustint/soql-parser-js/issues/46#issuecomment-437592982","issue_url":"https://api.github.com/repos/paustint/soql-parser-js/issues/46","id":437592982,"node_id":"MDEyOklzc3VlQ29tbWVudDQzNzU5Mjk4Mg==","user":{"login":"paustint","id":5461649,"node_id":"MDQ6VXNlcjU0NjE2NDk=","avatar_url":"https://avatars2.githubusercontent.com/u/5461649?v=4","gravatar_id":"","url":"https://api.github.com/users/paustint","html_url":"https://github.com/paustint","followers_url":"https://api.github.com/users/paustint/followers","following_url":"https://api.github.com/users/paustint/following{/other_user}","gists_url":"https://api.github.com/users/paustint/gists{/gist_id}","starred_url":"https://api.github.com/users/paustint/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paustint/subscriptions","organizations_url":"https://api.github.com/users/paustint/orgs","repos_url":"https://api.github.com/users/paustint/repos","events_url":"https://api.github.com/users/paustint/events{/privacy}","received_events_url":"https://api.github.com/users/paustint/received_events","type":"User","site_admin":false},"created_at":"2018-11-10T15:46:57Z","updated_at":"2018-11-10T15:46:57Z","author_association":"OWNER","body":"@ChuckJonas - one other idea I have is to provide some utility functions for compose to soften some of the sharp edges when a compose is being built - A possible example using your suggested format:\r\n\r\n```typescript\r\ngetComposedFieds(\r\n    'Name',\r\n    {fn: 'COUNT', params: 'Id'},\r\n    {relationships: ['Account'], field: 'Name'}, // alternatively this could even be 'Account.Name'\r\n    {(...subquery...)}\r\n);\r\n```"}}
{"actor":{"display_login":"paustint"}}