{"action":"created","issue":{"url":"https://api.github.com/repos/dojo/widget-core/issues/809","repository_url":"https://api.github.com/repos/dojo/widget-core","labels_url":"https://api.github.com/repos/dojo/widget-core/issues/809/labels{/name}","comments_url":"https://api.github.com/repos/dojo/widget-core/issues/809/comments","events_url":"https://api.github.com/repos/dojo/widget-core/issues/809/events","html_url":"https://github.com/dojo/widget-core/issues/809","id":283641325,"number":809,"title":"Custom elements do not have access to the properties of their children","user":{"login":"pottedmeat","id":38750,"avatar_url":"https://avatars3.githubusercontent.com/u/38750?v=4","gravatar_id":"","url":"https://api.github.com/users/pottedmeat","html_url":"https://github.com/pottedmeat","followers_url":"https://api.github.com/users/pottedmeat/followers","following_url":"https://api.github.com/users/pottedmeat/following{/other_user}","gists_url":"https://api.github.com/users/pottedmeat/gists{/gist_id}","starred_url":"https://api.github.com/users/pottedmeat/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pottedmeat/subscriptions","organizations_url":"https://api.github.com/users/pottedmeat/orgs","repos_url":"https://api.github.com/users/pottedmeat/repos","events_url":"https://api.github.com/users/pottedmeat/events{/privacy}","received_events_url":"https://api.github.com/users/pottedmeat/received_events","type":"User","site_admin":false},"labels":[{"id":354756276,"url":"https://api.github.com/repos/dojo/widget-core/labels/bug","name":"bug","color":"ee0701","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2017-12-20T17:36:19Z","updated_at":"2018-02-14T14:01:21Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"**Bug** <!-- delete as appropriate -->\r\n\r\nIn order to leverage custom elements, we wrap our rendering system in a special `WNode` that links the custom element with the widget instance.\r\n\r\nUnfortunately, this means that widgets that look through their children and read property values (and in tab containers look to see if their children have children) are going to instead see the properties and children that are part of this special `WNode` wrapper.\r\n\r\nI have a [branch](https://github.com/pottedmeat/widget-core/tree/bug-attach-custom-elements) that adds getters to our `WNode` for `properties` and `children` that pass through the values of the widget instance. Another [branch](https://github.com/pottedmeat/widgets/tree/bug-attach-custom-elements) exists for widgets with a demo page to load the tab container as a custom element.\r\n\r\nEven though my code looks like it's making changes to the previous functionality, I've written the code to make every attempt to leave it exactly as it was. All I've done is to add the getters I mentioned above to the `WNode` object, which was previously a Plan Old JavaScript Object."},"comment":{"url":"https://api.github.com/repos/dojo/widget-core/issues/comments/365615554","html_url":"https://github.com/dojo/widget-core/issues/809#issuecomment-365615554","issue_url":"https://api.github.com/repos/dojo/widget-core/issues/809","id":365615554,"user":{"login":"matt-gadd","id":2183490,"avatar_url":"https://avatars0.githubusercontent.com/u/2183490?v=4","gravatar_id":"","url":"https://api.github.com/users/matt-gadd","html_url":"https://github.com/matt-gadd","followers_url":"https://api.github.com/users/matt-gadd/followers","following_url":"https://api.github.com/users/matt-gadd/following{/other_user}","gists_url":"https://api.github.com/users/matt-gadd/gists{/gist_id}","starred_url":"https://api.github.com/users/matt-gadd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matt-gadd/subscriptions","organizations_url":"https://api.github.com/users/matt-gadd/orgs","repos_url":"https://api.github.com/users/matt-gadd/repos","events_url":"https://api.github.com/users/matt-gadd/events{/privacy}","received_events_url":"https://api.github.com/users/matt-gadd/received_events","type":"User","site_admin":false},"created_at":"2018-02-14T14:01:21Z","updated_at":"2018-02-14T14:01:21Z","author_association":"CONTRIBUTOR","body":"The detailed write up and examples were extremely useful for some of the rewrite I have been working on here: https://github.com/dojo/widget-core/pull/864 👍 , unfortunately Custom Element support for children with the same authoring patterns is quite a tough/awful slog!"}}
{"actor":{"display_login":"matt-gadd"}}