{"action":"created","comment":{"url":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/comments/46204177","id":46204177,"diff_hunk":"@@ -0,0 +1,5 @@\n+(function() {\n+  'use strict';\n+  angular.module('httpInterceptor.factory',[]);","path":"lib/scripts/http-interceptor/http-interceptor.module.js","position":3,"original_position":3,"commit_id":"a4db35351055d363659f470c77663a85008e41e2","original_commit_id":"a4db35351055d363659f470c77663a85008e41e2","user":{"login":"mcortez1497","id":6867918,"avatar_url":"https://avatars.githubusercontent.com/u/6867918?v=3","gravatar_id":"","url":"https://api.github.com/users/mcortez1497","html_url":"https://github.com/mcortez1497","followers_url":"https://api.github.com/users/mcortez1497/followers","following_url":"https://api.github.com/users/mcortez1497/following{/other_user}","gists_url":"https://api.github.com/users/mcortez1497/gists{/gist_id}","starred_url":"https://api.github.com/users/mcortez1497/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mcortez1497/subscriptions","organizations_url":"https://api.github.com/users/mcortez1497/orgs","repos_url":"https://api.github.com/users/mcortez1497/repos","events_url":"https://api.github.com/users/mcortez1497/events{/privacy}","received_events_url":"https://api.github.com/users/mcortez1497/received_events","type":"User","site_admin":false},"body":"I'm sort of open to this one. We could do:\r\n`canon.interceptors.request`\r\nor something more general like:\r\n`canon.utilities.httpRequest` or\r\n`canon.utilities.requestCount`\r\n\r\nFor the first one, I imagine that if we want to add more httpInterceptors in the future, we can structure them nicely (e.g. `canon.interceptors.tokens` if we want to handle web tokens in an httpInterceptor). Though it's a little unclear exactly what `canon.interceptors` is - since the naming scheme of `canon.[component]` doesn't really fit here. `interceptors` is not a component.\r\n\r\nFor the second one, `utilities` can be much more general, and encompass all the things we don't really have a component for (like make the data service and storage service possibly). It's also clear from the naming scheme that it's not a true component (like `canon.table` is), rather it's a utility (because of the `canon.utilities` prefix)! The only thing I would be wary of though, is dumping too much stuff into the `canon.utilities.*` prefix going forward. I think it may be lazy of us to dump stuff into this namespace instead of figuring out the right way to organize some things. For example, maybe there shouldn't even need to be a httpInterceptor that captures request counts! Maybe each component that cares about loading states should just trigger with a `.loading` class. It's a little backwards thinking I know, but just a thought.\r\n\r\nRegardless, that's more just long term thinking. I'm more partial to the 2nd way for now. ","created_at":"2015-11-30T21:11:13Z","updated_at":"2015-11-30T21:11:13Z","html_url":"https://github.com/rackerlabs/canon-directives/pull/3#discussion_r46204177","pull_request_url":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/3","_links":{"self":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/comments/46204177"},"html":{"href":"https://github.com/rackerlabs/canon-directives/pull/3#discussion_r46204177"},"pull_request":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/3"}}},"pull_request":{"url":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/3","id":51280849,"html_url":"https://github.com/rackerlabs/canon-directives/pull/3","diff_url":"https://github.com/rackerlabs/canon-directives/pull/3.diff","patch_url":"https://github.com/rackerlabs/canon-directives/pull/3.patch","issue_url":"https://api.github.com/repos/rackerlabs/canon-directives/issues/3","number":3,"state":"open","locked":false,"title":"MYRK-1374 refactor(httpInterceptor): refactor httpInterceptor to file…","user":{"login":"davismartin","id":4781472,"avatar_url":"https://avatars.githubusercontent.com/u/4781472?v=3","gravatar_id":"","url":"https://api.github.com/users/davismartin","html_url":"https://github.com/davismartin","followers_url":"https://api.github.com/users/davismartin/followers","following_url":"https://api.github.com/users/davismartin/following{/other_user}","gists_url":"https://api.github.com/users/davismartin/gists{/gist_id}","starred_url":"https://api.github.com/users/davismartin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davismartin/subscriptions","organizations_url":"https://api.github.com/users/davismartin/orgs","repos_url":"https://api.github.com/users/davismartin/repos","events_url":"https://api.github.com/users/davismartin/events{/privacy}","received_events_url":"https://api.github.com/users/davismartin/received_events","type":"User","site_admin":false},"body":"Made PR for Easier commenting not ready to be merged in","created_at":"2015-11-19T21:07:43Z","updated_at":"2015-11-30T21:11:13Z","closed_at":null,"merged_at":null,"merge_commit_sha":"22682609a92f86aded21e3ccc5022409fa68e888","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/3/commits","review_comments_url":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/3/comments","review_comment_url":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/comments{/number}","comments_url":"https://api.github.com/repos/rackerlabs/canon-directives/issues/3/comments","statuses_url":"https://api.github.com/repos/rackerlabs/canon-directives/statuses/a4db35351055d363659f470c77663a85008e41e2","head":{"label":"davismartin:MYRK-1374-break-down-common-library-2015-11-19","ref":"MYRK-1374-break-down-common-library-2015-11-19","sha":"a4db35351055d363659f470c77663a85008e41e2","user":{"login":"davismartin","id":4781472,"avatar_url":"https://avatars.githubusercontent.com/u/4781472?v=3","gravatar_id":"","url":"https://api.github.com/users/davismartin","html_url":"https://github.com/davismartin","followers_url":"https://api.github.com/users/davismartin/followers","following_url":"https://api.github.com/users/davismartin/following{/other_user}","gists_url":"https://api.github.com/users/davismartin/gists{/gist_id}","starred_url":"https://api.github.com/users/davismartin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davismartin/subscriptions","organizations_url":"https://api.github.com/users/davismartin/orgs","repos_url":"https://api.github.com/users/davismartin/repos","events_url":"https://api.github.com/users/davismartin/events{/privacy}","received_events_url":"https://api.github.com/users/davismartin/received_events","type":"User","site_admin":false},"repo":{"id":46004170,"name":"canon-directives","full_name":"davismartin/canon-directives","owner":{"login":"davismartin","id":4781472,"avatar_url":"https://avatars.githubusercontent.com/u/4781472?v=3","gravatar_id":"","url":"https://api.github.com/users/davismartin","html_url":"https://github.com/davismartin","followers_url":"https://api.github.com/users/davismartin/followers","following_url":"https://api.github.com/users/davismartin/following{/other_user}","gists_url":"https://api.github.com/users/davismartin/gists{/gist_id}","starred_url":"https://api.github.com/users/davismartin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davismartin/subscriptions","organizations_url":"https://api.github.com/users/davismartin/orgs","repos_url":"https://api.github.com/users/davismartin/repos","events_url":"https://api.github.com/users/davismartin/events{/privacy}","received_events_url":"https://api.github.com/users/davismartin/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/davismartin/canon-directives","description":"Collection of AngularJS components using canon design","fork":true,"url":"https://api.github.com/repos/davismartin/canon-directives","forks_url":"https://api.github.com/repos/davismartin/canon-directives/forks","keys_url":"https://api.github.com/repos/davismartin/canon-directives/keys{/key_id}","collaborators_url":"https://api.github.com/repos/davismartin/canon-directives/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/davismartin/canon-directives/teams","hooks_url":"https://api.github.com/repos/davismartin/canon-directives/hooks","issue_events_url":"https://api.github.com/repos/davismartin/canon-directives/issues/events{/number}","events_url":"https://api.github.com/repos/davismartin/canon-directives/events","assignees_url":"https://api.github.com/repos/davismartin/canon-directives/assignees{/user}","branches_url":"https://api.github.com/repos/davismartin/canon-directives/branches{/branch}","tags_url":"https://api.github.com/repos/davismartin/canon-directives/tags","blobs_url":"https://api.github.com/repos/davismartin/canon-directives/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/davismartin/canon-directives/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/davismartin/canon-directives/git/refs{/sha}","trees_url":"https://api.github.com/repos/davismartin/canon-directives/git/trees{/sha}","statuses_url":"https://api.github.com/repos/davismartin/canon-directives/statuses/{sha}","languages_url":"https://api.github.com/repos/davismartin/canon-directives/languages","stargazers_url":"https://api.github.com/repos/davismartin/canon-directives/stargazers","contributors_url":"https://api.github.com/repos/davismartin/canon-directives/contributors","subscribers_url":"https://api.github.com/repos/davismartin/canon-directives/subscribers","subscription_url":"https://api.github.com/repos/davismartin/canon-directives/subscription","commits_url":"https://api.github.com/repos/davismartin/canon-directives/commits{/sha}","git_commits_url":"https://api.github.com/repos/davismartin/canon-directives/git/commits{/sha}","comments_url":"https://api.github.com/repos/davismartin/canon-directives/comments{/number}","issue_comment_url":"https://api.github.com/repos/davismartin/canon-directives/issues/comments{/number}","contents_url":"https://api.github.com/repos/davismartin/canon-directives/contents/{+path}","compare_url":"https://api.github.com/repos/davismartin/canon-directives/compare/{base}...{head}","merges_url":"https://api.github.com/repos/davismartin/canon-directives/merges","archive_url":"https://api.github.com/repos/davismartin/canon-directives/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/davismartin/canon-directives/downloads","issues_url":"https://api.github.com/repos/davismartin/canon-directives/issues{/number}","pulls_url":"https://api.github.com/repos/davismartin/canon-directives/pulls{/number}","milestones_url":"https://api.github.com/repos/davismartin/canon-directives/milestones{/number}","notifications_url":"https://api.github.com/repos/davismartin/canon-directives/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/davismartin/canon-directives/labels{/name}","releases_url":"https://api.github.com/repos/davismartin/canon-directives/releases{/id}","created_at":"2015-11-11T19:19:45Z","updated_at":"2015-11-11T19:19:46Z","pushed_at":"2015-11-25T15:22:57Z","git_url":"git://github.com/davismartin/canon-directives.git","ssh_url":"git@github.com:davismartin/canon-directives.git","clone_url":"https://github.com/davismartin/canon-directives.git","svn_url":"https://github.com/davismartin/canon-directives","homepage":null,"size":42,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"rackerlabs:master","ref":"master","sha":"9d1568f3ec78f176f094ad37cb57639cdb2f673b","user":{"login":"rackerlabs","id":84293,"avatar_url":"https://avatars.githubusercontent.com/u/84293?v=3","gravatar_id":"","url":"https://api.github.com/users/rackerlabs","html_url":"https://github.com/rackerlabs","followers_url":"https://api.github.com/users/rackerlabs/followers","following_url":"https://api.github.com/users/rackerlabs/following{/other_user}","gists_url":"https://api.github.com/users/rackerlabs/gists{/gist_id}","starred_url":"https://api.github.com/users/rackerlabs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rackerlabs/subscriptions","organizations_url":"https://api.github.com/users/rackerlabs/orgs","repos_url":"https://api.github.com/users/rackerlabs/repos","events_url":"https://api.github.com/users/rackerlabs/events{/privacy}","received_events_url":"https://api.github.com/users/rackerlabs/received_events","type":"Organization","site_admin":false},"repo":{"id":45937783,"name":"canon-directives","full_name":"rackerlabs/canon-directives","owner":{"login":"rackerlabs","id":84293,"avatar_url":"https://avatars.githubusercontent.com/u/84293?v=3","gravatar_id":"","url":"https://api.github.com/users/rackerlabs","html_url":"https://github.com/rackerlabs","followers_url":"https://api.github.com/users/rackerlabs/followers","following_url":"https://api.github.com/users/rackerlabs/following{/other_user}","gists_url":"https://api.github.com/users/rackerlabs/gists{/gist_id}","starred_url":"https://api.github.com/users/rackerlabs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rackerlabs/subscriptions","organizations_url":"https://api.github.com/users/rackerlabs/orgs","repos_url":"https://api.github.com/users/rackerlabs/repos","events_url":"https://api.github.com/users/rackerlabs/events{/privacy}","received_events_url":"https://api.github.com/users/rackerlabs/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/rackerlabs/canon-directives","description":"Collection of AngularJS components using canon design","fork":false,"url":"https://api.github.com/repos/rackerlabs/canon-directives","forks_url":"https://api.github.com/repos/rackerlabs/canon-directives/forks","keys_url":"https://api.github.com/repos/rackerlabs/canon-directives/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rackerlabs/canon-directives/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rackerlabs/canon-directives/teams","hooks_url":"https://api.github.com/repos/rackerlabs/canon-directives/hooks","issue_events_url":"https://api.github.com/repos/rackerlabs/canon-directives/issues/events{/number}","events_url":"https://api.github.com/repos/rackerlabs/canon-directives/events","assignees_url":"https://api.github.com/repos/rackerlabs/canon-directives/assignees{/user}","branches_url":"https://api.github.com/repos/rackerlabs/canon-directives/branches{/branch}","tags_url":"https://api.github.com/repos/rackerlabs/canon-directives/tags","blobs_url":"https://api.github.com/repos/rackerlabs/canon-directives/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rackerlabs/canon-directives/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rackerlabs/canon-directives/git/refs{/sha}","trees_url":"https://api.github.com/repos/rackerlabs/canon-directives/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rackerlabs/canon-directives/statuses/{sha}","languages_url":"https://api.github.com/repos/rackerlabs/canon-directives/languages","stargazers_url":"https://api.github.com/repos/rackerlabs/canon-directives/stargazers","contributors_url":"https://api.github.com/repos/rackerlabs/canon-directives/contributors","subscribers_url":"https://api.github.com/repos/rackerlabs/canon-directives/subscribers","subscription_url":"https://api.github.com/repos/rackerlabs/canon-directives/subscription","commits_url":"https://api.github.com/repos/rackerlabs/canon-directives/commits{/sha}","git_commits_url":"https://api.github.com/repos/rackerlabs/canon-directives/git/commits{/sha}","comments_url":"https://api.github.com/repos/rackerlabs/canon-directives/comments{/number}","issue_comment_url":"https://api.github.com/repos/rackerlabs/canon-directives/issues/comments{/number}","contents_url":"https://api.github.com/repos/rackerlabs/canon-directives/contents/{+path}","compare_url":"https://api.github.com/repos/rackerlabs/canon-directives/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rackerlabs/canon-directives/merges","archive_url":"https://api.github.com/repos/rackerlabs/canon-directives/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rackerlabs/canon-directives/downloads","issues_url":"https://api.github.com/repos/rackerlabs/canon-directives/issues{/number}","pulls_url":"https://api.github.com/repos/rackerlabs/canon-directives/pulls{/number}","milestones_url":"https://api.github.com/repos/rackerlabs/canon-directives/milestones{/number}","notifications_url":"https://api.github.com/repos/rackerlabs/canon-directives/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rackerlabs/canon-directives/labels{/name}","releases_url":"https://api.github.com/repos/rackerlabs/canon-directives/releases{/id}","created_at":"2015-11-10T20:19:17Z","updated_at":"2015-11-10T20:53:20Z","pushed_at":"2015-11-25T18:36:31Z","git_url":"git://github.com/rackerlabs/canon-directives.git","ssh_url":"git@github.com:rackerlabs/canon-directives.git","clone_url":"https://github.com/rackerlabs/canon-directives.git","svn_url":"https://github.com/rackerlabs/canon-directives","homepage":null,"size":23,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"open_issues_count":8,"forks":3,"open_issues":8,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/3"},"html":{"href":"https://github.com/rackerlabs/canon-directives/pull/3"},"issue":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/issues/3"},"comments":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/issues/3/comments"},"review_comments":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/3/comments"},"review_comment":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/pulls/3/commits"},"statuses":{"href":"https://api.github.com/repos/rackerlabs/canon-directives/statuses/a4db35351055d363659f470c77663a85008e41e2"}}}}