{"action":"created","comment":{"url":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/comments/228010819","pull_request_review_id":167094076,"id":228010819,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyODAxMDgxOQ==","diff_hunk":"@@ -13,13 +13,15 @@ const externals = {\n \t'@wordpress/blocks': 'wp.blocks',\n \t'@wordpress/editor': 'wp.editor',\n \t'@wordpress/compose': 'wp.compose',\n+\t'@wordpress/hooks': 'wp.hooks',\n \treact: 'eejs.vendor.react',\n \t'react-dom': 'eejs.vendor.reactDom',\n \t'react-redux': 'eejs.vendor.reactRedux',\n \tredux: 'eejs.vendor.redux',\n \tclassnames: 'eejs.vendor.classnames',\n \tlodash: 'eejs.vendor.lodash',\n \t'moment-timezone': 'eejs.vendor.moment',\n+\tcuid: 'eejs.vendor.cuid',","path":"webpack.common.js","position":12,"original_position":12,"commit_id":"7dde346a74c0b8096fcbe30ee7b5e911f190513e","original_commit_id":"7dde346a74c0b8096fcbe30ee7b5e911f190513e","user":{"login":"nerrad","id":1429108,"node_id":"MDQ6VXNlcjE0MjkxMDg=","avatar_url":"https://avatars1.githubusercontent.com/u/1429108?v=4","gravatar_id":"","url":"https://api.github.com/users/nerrad","html_url":"https://github.com/nerrad","followers_url":"https://api.github.com/users/nerrad/followers","following_url":"https://api.github.com/users/nerrad/following{/other_user}","gists_url":"https://api.github.com/users/nerrad/gists{/gist_id}","starred_url":"https://api.github.com/users/nerrad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nerrad/subscriptions","organizations_url":"https://api.github.com/users/nerrad/orgs","repos_url":"https://api.github.com/users/nerrad/repos","events_url":"https://api.github.com/users/nerrad/events{/privacy}","received_events_url":"https://api.github.com/users/nerrad/received_events","type":"User","site_admin":false},"body":"cuid is exposed on the `eejs.vendor` so it can be used by add-ons as well via `eejs.vendor.cuid`","created_at":"2018-10-25T01:33:32Z","updated_at":"2018-10-25T01:33:41Z","html_url":"https://github.com/eventespresso/event-espresso-core/pull/637#discussion_r228010819","pull_request_url":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/637","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/comments/228010819"},"html":{"href":"https://github.com/eventespresso/event-espresso-core/pull/637#discussion_r228010819"},"pull_request":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/637"}}},"pull_request":{"url":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/637","id":207397283,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA3Mzk3Mjgz","html_url":"https://github.com/eventespresso/event-espresso-core/pull/637","diff_url":"https://github.com/eventespresso/event-espresso-core/pull/637.diff","patch_url":"https://github.com/eventespresso/event-espresso-core/pull/637.patch","issue_url":"https://api.github.com/repos/eventespresso/event-espresso-core/issues/637","number":637,"state":"open","locked":false,"title":"Add model entity constructor factory and update stores to use it. (wip)","user":{"login":"nerrad","id":1429108,"node_id":"MDQ6VXNlcjE0MjkxMDg=","avatar_url":"https://avatars1.githubusercontent.com/u/1429108?v=4","gravatar_id":"","url":"https://api.github.com/users/nerrad","html_url":"https://github.com/nerrad","followers_url":"https://api.github.com/users/nerrad/followers","following_url":"https://api.github.com/users/nerrad/following{/other_user}","gists_url":"https://api.github.com/users/nerrad/gists{/gist_id}","starred_url":"https://api.github.com/users/nerrad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nerrad/subscriptions","organizations_url":"https://api.github.com/users/nerrad/orgs","repos_url":"https://api.github.com/users/nerrad/repos","events_url":"https://api.github.com/users/nerrad/events{/privacy}","received_events_url":"https://api.github.com/users/nerrad/received_events","type":"User","site_admin":false},"body":"<!-- Thanks for your pull request.  Comments within these type of tags will be hidden and not show up when you submit your pull request -->\r\n<!-- Please answer the following questions in order to expediate acceptance -->\r\n\r\n## Problem this Pull Request solves\r\n<!-- Please describe your changes in the context of the problem they solve -->\r\n\r\nCurrently there is need for a lot of boilerplate code to handle any components utilizing response data from our REST endpoints related to models.  It would help to reduce a lot of boilerplate if instead of passing around the response objects, properly constructed model entity instances are passes around instead.  Any typechecking is thus much simpler and it makes for more straighforward usage of model data in components.\r\n\r\n### Current Targets\r\n\r\n* [x] Create a model entity constructor factory that allows for lazy loading of a model entity constructor used to construct model entity instances.\r\n* [x] Within the factory when a model entity constructor is created, it will hit the schema endpoint for the given model name and use that to define the validation property in the created constructor.\r\n* [x] Created constructors will be cached so we only ever have to hit that model schema endpoint once.\r\n* [x] Rewire the existing stores so instead of using generic objects from the rest response, we're using the model entities instances.\r\n* [x] Currently, there is one model that does not have primary keys (`Term_Relationship`) and the js entity/repository/store work does not account for models that may not have primary keys.  This is something that will have to be thought through regarding how we handle this.  Possibly done as a part of this pull or a separate pull. We may be able to do it server side (i.e. provide a \"computed\" primary key) so client code doesn't have to go through gymnastics to account for primary keyless models.\r\n\r\n### EventAttendeesBlock\r\n\r\nSince the work in here affects the attendees shortcode block (our first block) I'm going to work on refining the block as well in this branch to get it ship ready.\r\n\r\n* [x] Make any necessary changes for block (or related code) to use new model-entities\r\n* [x] Allow for expired entities by default\r\n* [x] Add some editor only error notice for when there's an issue.\r\n* [x] Don't pass attributes for server side render that are set to 0.  This causes the shortcode parser to behave differently than the native shortcode defaults.\r\n* [x] Only show ticket/datetime selectors when the necessary id is available.\r\n* [x] Ensure any selected Event/DateTime/Ticket persists in the inspector settings for that block.\r\n* [x] Order entities in selectors by date descending.\r\n* [x] ~If there are no events selected and there would be a default active event used for the ServerSideRender, make sure that active event is pre-selected in the selector.  This one will be a bit trickier to do because I'm not sure how the block will receive communication that there is an active event in time to set that on the selector...  I might have to pre-set the attributes based on that.~ I simply could not do this because of the way `ServerSideRender` works.  Instead what I've done is added a notice when a default list of attendees is provided by SSR.  The alternative is to have anything shown on initial block setup and just have a placeholder.\r\n* [x] ~ Fix the limit for attendees not working. ~ it actually works, its just kind of laggy because of the nature for how SSR works.  The ultimate fix will be not using SSR!\r\n\r\n### Dependencies\r\n\r\nWe also discussed in slack the necessity to have the rest response for models include any direct foreign key references on the model.  For instance, currently, datetimes are not returned in the rest response with a `EVT_ID` field even though that is a field on the model server side.   See #636 \r\n\r\n## How has this been tested\r\n<!-- Please describe in detail how you tested your changes and how testing can be reproduced -->\r\n<!-- Include details of your testing environment, and tests ran to see how your changes affect other areas of code -->\r\n<!-- Include any notes about automated tests you've written for this pull request.  Pull requests with automated tests are preferred. -->\r\n\r\n* [ ] passing unit tests (new/updated/existing)\r\n* [x] EventAttendees block usage.\r\n\r\n## Checklist\r\n\r\n* [x] I have read the documentation relating to systems affected by this pull request, see https://github.com/eventespresso/event-espresso-core/tree/master/docs\r\n* [x] User input is adequately validated and sanitized\r\n* [x] all publicly displayed strings are internationalized (usually using `esc_html__()`, see https://codex.wordpress.org/I18n_for_WordPress_Developers)\r\n* [x] My code is tested.\r\n* [x] My code follows the Event Espresso code style.\r\n* [x] My code has proper inline documentation.\r\n* [x] My code accounts for when the site is Maintenance Mode (MM2 especially disallows usage of models)\r\n\r\n### Things for `/docs/`\r\n\r\n* [ ] Model select (and various entity selects) updates/changes\r\n* [ ] Changes in `eventespresso/core` and `eventespresso/lists`.  Also document new `eventespresso/schema`\r\n* [ ] model-entity factory and model-entities (including all the various exposed public api stuff)\r\n* [ ] edits to any existing documentation (endpoints etc)\r\n* [ ] new exceptions\r\n* [ ] `eejs/utils`\r\n* [ ] changes to vo/hoc documentation\r\n\r\n### Known issues\r\n\r\n* [ ] There's extra unnecessary requests.  You can see this if you leave the network tab open and watch the outgoing requests.  At most there should be one request each schema and one request for each query string.\r\n* [ ] (not major) Each initial value in the entityIds arrays is an empty object.\r\n* [ ] When the EA block is initially added to content, it serves default content via the SSR block.  There is no way to communicate _efficiently_ with the block inspector about what default event was used for the attendees so the selector can have that set.  This is a deficiency with using SSR.  _Ideally_ the block would be converted to js/html rendering only but that does mean any existing hooks/filters php side will be useless and we'd have to introduce some new hooks for the block.\r\n* [ ] Status selector is not showing localized labels for status.\r\n\r\n## Remaining work\r\n\r\n* [ ] Documentation for model entity work\r\n* [ ] Fix unit tests\r\n* [ ] Create issue documenting testing steps etc for EventAttendees block (which indirectly also tests the new model-entity work)\r\n* [x] Document known issues with EventAttendees block that we'll have to make decisions on.","created_at":"2018-08-09T18:02:00Z","updated_at":"2018-10-25T01:33:40Z","closed_at":null,"merged_at":null,"merge_commit_sha":"62f6c49e7190db3b107f69230442d5572b9dfab0","assignee":{"login":"nerrad","id":1429108,"node_id":"MDQ6VXNlcjE0MjkxMDg=","avatar_url":"https://avatars1.githubusercontent.com/u/1429108?v=4","gravatar_id":"","url":"https://api.github.com/users/nerrad","html_url":"https://github.com/nerrad","followers_url":"https://api.github.com/users/nerrad/followers","following_url":"https://api.github.com/users/nerrad/following{/other_user}","gists_url":"https://api.github.com/users/nerrad/gists{/gist_id}","starred_url":"https://api.github.com/users/nerrad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nerrad/subscriptions","organizations_url":"https://api.github.com/users/nerrad/orgs","repos_url":"https://api.github.com/users/nerrad/repos","events_url":"https://api.github.com/users/nerrad/events{/privacy}","received_events_url":"https://api.github.com/users/nerrad/received_events","type":"User","site_admin":false},"assignees":[{"login":"nerrad","id":1429108,"node_id":"MDQ6VXNlcjE0MjkxMDg=","avatar_url":"https://avatars1.githubusercontent.com/u/1429108?v=4","gravatar_id":"","url":"https://api.github.com/users/nerrad","html_url":"https://github.com/nerrad","followers_url":"https://api.github.com/users/nerrad/followers","following_url":"https://api.github.com/users/nerrad/following{/other_user}","gists_url":"https://api.github.com/users/nerrad/gists{/gist_id}","starred_url":"https://api.github.com/users/nerrad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nerrad/subscriptions","organizations_url":"https://api.github.com/users/nerrad/orgs","repos_url":"https://api.github.com/users/nerrad/repos","events_url":"https://api.github.com/users/nerrad/events{/privacy}","received_events_url":"https://api.github.com/users/nerrad/received_events","type":"User","site_admin":false}],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":886064778,"node_id":"MDU6TGFiZWw4ODYwNjQ3Nzg=","url":"https://api.github.com/repos/eventespresso/event-espresso-core/labels/category:assets","name":"category:assets","color":"abc2c1","default":false},{"id":883825333,"node_id":"MDU6TGFiZWw4ODM4MjUzMzM=","url":"https://api.github.com/repos/eventespresso/event-espresso-core/labels/category:gutenberg","name":"category:gutenberg","color":"abc2c1","default":false},{"id":904083603,"node_id":"MDU6TGFiZWw5MDQwODM2MDM=","url":"https://api.github.com/repos/eventespresso/event-espresso-core/labels/category:models-and-data-infrastructure","name":"category:models-and-data-infrastructure","color":"abc2c1","default":false},{"id":22687539,"node_id":"MDU6TGFiZWwyMjY4NzUzOQ==","url":"https://api.github.com/repos/eventespresso/event-espresso-core/labels/type:enhancement%20%F0%9F%8E%89","name":"type:enhancement 🎉","color":"efefef","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/637/commits","review_comments_url":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/637/comments","review_comment_url":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/comments{/number}","comments_url":"https://api.github.com/repos/eventespresso/event-espresso-core/issues/637/comments","statuses_url":"https://api.github.com/repos/eventespresso/event-espresso-core/statuses/7dde346a74c0b8096fcbe30ee7b5e911f190513e","head":{"label":"eventespresso:Gutenberg/model-entities","ref":"Gutenberg/model-entities","sha":"7dde346a74c0b8096fcbe30ee7b5e911f190513e","user":{"login":"eventespresso","id":3077278,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwNzcyNzg=","avatar_url":"https://avatars2.githubusercontent.com/u/3077278?v=4","gravatar_id":"","url":"https://api.github.com/users/eventespresso","html_url":"https://github.com/eventespresso","followers_url":"https://api.github.com/users/eventespresso/followers","following_url":"https://api.github.com/users/eventespresso/following{/other_user}","gists_url":"https://api.github.com/users/eventespresso/gists{/gist_id}","starred_url":"https://api.github.com/users/eventespresso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eventespresso/subscriptions","organizations_url":"https://api.github.com/users/eventespresso/orgs","repos_url":"https://api.github.com/users/eventespresso/repos","events_url":"https://api.github.com/users/eventespresso/events{/privacy}","received_events_url":"https://api.github.com/users/eventespresso/received_events","type":"Organization","site_admin":false},"repo":{"id":7252233,"node_id":"MDEwOlJlcG9zaXRvcnk3MjUyMjMz","name":"event-espresso-core","full_name":"eventespresso/event-espresso-core","private":false,"owner":{"login":"eventespresso","id":3077278,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwNzcyNzg=","avatar_url":"https://avatars2.githubusercontent.com/u/3077278?v=4","gravatar_id":"","url":"https://api.github.com/users/eventespresso","html_url":"https://github.com/eventespresso","followers_url":"https://api.github.com/users/eventespresso/followers","following_url":"https://api.github.com/users/eventespresso/following{/other_user}","gists_url":"https://api.github.com/users/eventespresso/gists{/gist_id}","starred_url":"https://api.github.com/users/eventespresso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eventespresso/subscriptions","organizations_url":"https://api.github.com/users/eventespresso/orgs","repos_url":"https://api.github.com/users/eventespresso/repos","events_url":"https://api.github.com/users/eventespresso/events{/privacy}","received_events_url":"https://api.github.com/users/eventespresso/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/eventespresso/event-espresso-core","description":"Event Espresso 4 Core for WordPress: Build an Event Ticketing Website Today!","fork":false,"url":"https://api.github.com/repos/eventespresso/event-espresso-core","forks_url":"https://api.github.com/repos/eventespresso/event-espresso-core/forks","keys_url":"https://api.github.com/repos/eventespresso/event-espresso-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/eventespresso/event-espresso-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/eventespresso/event-espresso-core/teams","hooks_url":"https://api.github.com/repos/eventespresso/event-espresso-core/hooks","issue_events_url":"https://api.github.com/repos/eventespresso/event-espresso-core/issues/events{/number}","events_url":"https://api.github.com/repos/eventespresso/event-espresso-core/events","assignees_url":"https://api.github.com/repos/eventespresso/event-espresso-core/assignees{/user}","branches_url":"https://api.github.com/repos/eventespresso/event-espresso-core/branches{/branch}","tags_url":"https://api.github.com/repos/eventespresso/event-espresso-core/tags","blobs_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/eventespresso/event-espresso-core/statuses/{sha}","languages_url":"https://api.github.com/repos/eventespresso/event-espresso-core/languages","stargazers_url":"https://api.github.com/repos/eventespresso/event-espresso-core/stargazers","contributors_url":"https://api.github.com/repos/eventespresso/event-espresso-core/contributors","subscribers_url":"https://api.github.com/repos/eventespresso/event-espresso-core/subscribers","subscription_url":"https://api.github.com/repos/eventespresso/event-espresso-core/subscription","commits_url":"https://api.github.com/repos/eventespresso/event-espresso-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/eventespresso/event-espresso-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/eventespresso/event-espresso-core/issues/comments{/number}","contents_url":"https://api.github.com/repos/eventespresso/event-espresso-core/contents/{+path}","compare_url":"https://api.github.com/repos/eventespresso/event-espresso-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/eventespresso/event-espresso-core/merges","archive_url":"https://api.github.com/repos/eventespresso/event-espresso-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/eventespresso/event-espresso-core/downloads","issues_url":"https://api.github.com/repos/eventespresso/event-espresso-core/issues{/number}","pulls_url":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls{/number}","milestones_url":"https://api.github.com/repos/eventespresso/event-espresso-core/milestones{/number}","notifications_url":"https://api.github.com/repos/eventespresso/event-espresso-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/eventespresso/event-espresso-core/labels{/name}","releases_url":"https://api.github.com/repos/eventespresso/event-espresso-core/releases{/id}","deployments_url":"https://api.github.com/repos/eventespresso/event-espresso-core/deployments","created_at":"2012-12-20T04:38:57Z","updated_at":"2018-10-24T00:24:14Z","pushed_at":"2018-10-25T01:06:55Z","git_url":"git://github.com/eventespresso/event-espresso-core.git","ssh_url":"git@github.com:eventespresso/event-espresso-core.git","clone_url":"https://github.com/eventespresso/event-espresso-core.git","svn_url":"https://github.com/eventespresso/event-espresso-core","homepage":"https://eventespresso.com","size":130289,"stargazers_count":86,"watchers_count":86,"language":"PHP","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":54,"mirror_url":null,"archived":false,"open_issues_count":110,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":54,"open_issues":110,"watchers":86,"default_branch":"master"}},"base":{"label":"eventespresso:Gutenberg/master","ref":"Gutenberg/master","sha":"c8440055bbaad0aa54baa6e57be9622d9c972a8d","user":{"login":"eventespresso","id":3077278,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwNzcyNzg=","avatar_url":"https://avatars2.githubusercontent.com/u/3077278?v=4","gravatar_id":"","url":"https://api.github.com/users/eventespresso","html_url":"https://github.com/eventespresso","followers_url":"https://api.github.com/users/eventespresso/followers","following_url":"https://api.github.com/users/eventespresso/following{/other_user}","gists_url":"https://api.github.com/users/eventespresso/gists{/gist_id}","starred_url":"https://api.github.com/users/eventespresso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eventespresso/subscriptions","organizations_url":"https://api.github.com/users/eventespresso/orgs","repos_url":"https://api.github.com/users/eventespresso/repos","events_url":"https://api.github.com/users/eventespresso/events{/privacy}","received_events_url":"https://api.github.com/users/eventespresso/received_events","type":"Organization","site_admin":false},"repo":{"id":7252233,"node_id":"MDEwOlJlcG9zaXRvcnk3MjUyMjMz","name":"event-espresso-core","full_name":"eventespresso/event-espresso-core","private":false,"owner":{"login":"eventespresso","id":3077278,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMwNzcyNzg=","avatar_url":"https://avatars2.githubusercontent.com/u/3077278?v=4","gravatar_id":"","url":"https://api.github.com/users/eventespresso","html_url":"https://github.com/eventespresso","followers_url":"https://api.github.com/users/eventespresso/followers","following_url":"https://api.github.com/users/eventespresso/following{/other_user}","gists_url":"https://api.github.com/users/eventespresso/gists{/gist_id}","starred_url":"https://api.github.com/users/eventespresso/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/eventespresso/subscriptions","organizations_url":"https://api.github.com/users/eventespresso/orgs","repos_url":"https://api.github.com/users/eventespresso/repos","events_url":"https://api.github.com/users/eventespresso/events{/privacy}","received_events_url":"https://api.github.com/users/eventespresso/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/eventespresso/event-espresso-core","description":"Event Espresso 4 Core for WordPress: Build an Event Ticketing Website Today!","fork":false,"url":"https://api.github.com/repos/eventespresso/event-espresso-core","forks_url":"https://api.github.com/repos/eventespresso/event-espresso-core/forks","keys_url":"https://api.github.com/repos/eventespresso/event-espresso-core/keys{/key_id}","collaborators_url":"https://api.github.com/repos/eventespresso/event-espresso-core/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/eventespresso/event-espresso-core/teams","hooks_url":"https://api.github.com/repos/eventespresso/event-espresso-core/hooks","issue_events_url":"https://api.github.com/repos/eventespresso/event-espresso-core/issues/events{/number}","events_url":"https://api.github.com/repos/eventespresso/event-espresso-core/events","assignees_url":"https://api.github.com/repos/eventespresso/event-espresso-core/assignees{/user}","branches_url":"https://api.github.com/repos/eventespresso/event-espresso-core/branches{/branch}","tags_url":"https://api.github.com/repos/eventespresso/event-espresso-core/tags","blobs_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/refs{/sha}","trees_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/trees{/sha}","statuses_url":"https://api.github.com/repos/eventespresso/event-espresso-core/statuses/{sha}","languages_url":"https://api.github.com/repos/eventespresso/event-espresso-core/languages","stargazers_url":"https://api.github.com/repos/eventespresso/event-espresso-core/stargazers","contributors_url":"https://api.github.com/repos/eventespresso/event-espresso-core/contributors","subscribers_url":"https://api.github.com/repos/eventespresso/event-espresso-core/subscribers","subscription_url":"https://api.github.com/repos/eventespresso/event-espresso-core/subscription","commits_url":"https://api.github.com/repos/eventespresso/event-espresso-core/commits{/sha}","git_commits_url":"https://api.github.com/repos/eventespresso/event-espresso-core/git/commits{/sha}","comments_url":"https://api.github.com/repos/eventespresso/event-espresso-core/comments{/number}","issue_comment_url":"https://api.github.com/repos/eventespresso/event-espresso-core/issues/comments{/number}","contents_url":"https://api.github.com/repos/eventespresso/event-espresso-core/contents/{+path}","compare_url":"https://api.github.com/repos/eventespresso/event-espresso-core/compare/{base}...{head}","merges_url":"https://api.github.com/repos/eventespresso/event-espresso-core/merges","archive_url":"https://api.github.com/repos/eventespresso/event-espresso-core/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/eventespresso/event-espresso-core/downloads","issues_url":"https://api.github.com/repos/eventespresso/event-espresso-core/issues{/number}","pulls_url":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls{/number}","milestones_url":"https://api.github.com/repos/eventespresso/event-espresso-core/milestones{/number}","notifications_url":"https://api.github.com/repos/eventespresso/event-espresso-core/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/eventespresso/event-espresso-core/labels{/name}","releases_url":"https://api.github.com/repos/eventespresso/event-espresso-core/releases{/id}","deployments_url":"https://api.github.com/repos/eventespresso/event-espresso-core/deployments","created_at":"2012-12-20T04:38:57Z","updated_at":"2018-10-24T00:24:14Z","pushed_at":"2018-10-25T01:06:55Z","git_url":"git://github.com/eventespresso/event-espresso-core.git","ssh_url":"git@github.com:eventespresso/event-espresso-core.git","clone_url":"https://github.com/eventespresso/event-espresso-core.git","svn_url":"https://github.com/eventespresso/event-espresso-core","homepage":"https://eventespresso.com","size":130289,"stargazers_count":86,"watchers_count":86,"language":"PHP","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":54,"mirror_url":null,"archived":false,"open_issues_count":110,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":54,"open_issues":110,"watchers":86,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/637"},"html":{"href":"https://github.com/eventespresso/event-espresso-core/pull/637"},"issue":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/issues/637"},"comments":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/issues/637/comments"},"review_comments":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/637/comments"},"review_comment":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/pulls/637/commits"},"statuses":{"href":"https://api.github.com/repos/eventespresso/event-espresso-core/statuses/7dde346a74c0b8096fcbe30ee7b5e911f190513e"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"nerrad"}}