{"action":"created","issue":{"url":"https://api.github.com/repos/angular/angular/issues/633","labels_url":"https://api.github.com/repos/angular/angular/issues/633/labels{/name}","comments_url":"https://api.github.com/repos/angular/angular/issues/633/comments","events_url":"https://api.github.com/repos/angular/angular/issues/633/events","html_url":"https://github.com/angular/angular/issues/633","id":57540327,"number":633,"title":"Add support for flag attributes in components","user":{"login":"jelbourn","id":838736,"avatar_url":"https://avatars.githubusercontent.com/u/838736?v=3","gravatar_id":"","url":"https://api.github.com/users/jelbourn","html_url":"https://github.com/jelbourn","followers_url":"https://api.github.com/users/jelbourn/followers","following_url":"https://api.github.com/users/jelbourn/following{/other_user}","gists_url":"https://api.github.com/users/jelbourn/gists{/gist_id}","starred_url":"https://api.github.com/users/jelbourn/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jelbourn/subscriptions","organizations_url":"https://api.github.com/users/jelbourn/orgs","repos_url":"https://api.github.com/users/jelbourn/repos","events_url":"https://api.github.com/users/jelbourn/events{/privacy}","received_events_url":"https://api.github.com/users/jelbourn/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/angular/angular/milestones/18","labels_url":"https://api.github.com/repos/angular/angular/milestones/18/labels","id":972334,"number":18,"title":"M6: Material Design Support","description":"Clear the way to enable building Material Design components on Angular","creator":{"login":"mhevery","id":111951,"avatar_url":"https://avatars.githubusercontent.com/u/111951?v=3","gravatar_id":"","url":"https://api.github.com/users/mhevery","html_url":"https://github.com/mhevery","followers_url":"https://api.github.com/users/mhevery/followers","following_url":"https://api.github.com/users/mhevery/following{/other_user}","gists_url":"https://api.github.com/users/mhevery/gists{/gist_id}","starred_url":"https://api.github.com/users/mhevery/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mhevery/subscriptions","organizations_url":"https://api.github.com/users/mhevery/orgs","repos_url":"https://api.github.com/users/mhevery/repos","events_url":"https://api.github.com/users/mhevery/events{/privacy}","received_events_url":"https://api.github.com/users/mhevery/received_events","type":"User","site_admin":false},"open_issues":14,"closed_issues":0,"state":"open","created_at":"2015-02-09T18:48:43Z","updated_at":"2015-02-19T05:02:50Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2015-02-13T00:10:05Z","updated_at":"2015-02-21T16:27:11Z","closed_at":null,"body":"There should be a way, from a Component, to check whether some attributes were provided. For example, if the end user has:\r\n```html\r\n<!-- Attribute specified with no value. -->\r\n<scary-button no-scream>Boo!</scary-button>\r\n\r\n<!-- Attribute not specified -->\r\n<scary-button>Ahh!</scary-button>\r\n```\r\nThe Component should be able to know the difference between an attribute being present and empty (top example) vs. an attribute being absent (bottom example). "},"comment":{"url":"https://api.github.com/repos/angular/angular/issues/comments/75379079","html_url":"https://github.com/angular/angular/issues/633#issuecomment-75379079","issue_url":"https://api.github.com/repos/angular/angular/issues/633","id":75379079,"user":{"login":"pkozlowski-opensource","id":973550,"avatar_url":"https://avatars.githubusercontent.com/u/973550?v=3","gravatar_id":"","url":"https://api.github.com/users/pkozlowski-opensource","html_url":"https://github.com/pkozlowski-opensource","followers_url":"https://api.github.com/users/pkozlowski-opensource/followers","following_url":"https://api.github.com/users/pkozlowski-opensource/following{/other_user}","gists_url":"https://api.github.com/users/pkozlowski-opensource/gists{/gist_id}","starred_url":"https://api.github.com/users/pkozlowski-opensource/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pkozlowski-opensource/subscriptions","organizations_url":"https://api.github.com/users/pkozlowski-opensource/orgs","repos_url":"https://api.github.com/users/pkozlowski-opensource/repos","events_url":"https://api.github.com/users/pkozlowski-opensource/events{/privacy}","received_events_url":"https://api.github.com/users/pkozlowski-opensource/received_events","type":"User","site_admin":false},"created_at":"2015-02-21T16:27:11Z","updated_at":"2015-02-21T16:27:11Z","body":"@jelbourn wouldn't proposal from #622 sufficient to cover your use-case? With that proposal one could do:\r\n\r\n```javascript\r\nComponentDecorator({\r\n    selector: 'scary-button'\r\n})\r\nclass ScaryButton {\r\n    constructor(@Static('no-scream') noScream:string){\r\n        //noScream gets null when an attribute is not present here\r\n    }\r\n}\r\n```"}}