{"action":"created","issue":{"url":"https://api.github.com/repos/allenhwkim/angularjs-google-maps/issues/468","labels_url":"https://api.github.com/repos/allenhwkim/angularjs-google-maps/issues/468/labels{/name}","comments_url":"https://api.github.com/repos/allenhwkim/angularjs-google-maps/issues/468/comments","events_url":"https://api.github.com/repos/allenhwkim/angularjs-google-maps/issues/468/events","html_url":"https://github.com/allenhwkim/angularjs-google-maps/issues/468","id":125678481,"number":468,"title":"(discussion) Version 2.0","user":{"login":"trainerbill","id":3578259,"avatar_url":"https://avatars.githubusercontent.com/u/3578259?v=3","gravatar_id":"","url":"https://api.github.com/users/trainerbill","html_url":"https://github.com/trainerbill","followers_url":"https://api.github.com/users/trainerbill/followers","following_url":"https://api.github.com/users/trainerbill/following{/other_user}","gists_url":"https://api.github.com/users/trainerbill/gists{/gist_id}","starred_url":"https://api.github.com/users/trainerbill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trainerbill/subscriptions","organizations_url":"https://api.github.com/users/trainerbill/orgs","repos_url":"https://api.github.com/users/trainerbill/repos","events_url":"https://api.github.com/users/trainerbill/events{/privacy}","received_events_url":"https://api.github.com/users/trainerbill/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2016-01-08T19:37:06Z","updated_at":"2016-01-11T04:36:42Z","closed_at":null,"body":"I wanted to start a discussion about a version 2 of this module.  It is great as is but could really use some new features that won't be possible without a core rewrite.  Some things that I can think of\r\n\r\n1.  Persistent maps and data.  If I switch states and return I should not have to add back all my data and render the map.  It should be in the same state I left it.  Maps should have ids so that they can be reloaded.  Data layers and Heatmaps have Ids so they can be reloaded.  All stored in the NgMap service and can be accessed outside of the module\r\n\r\n2.  Bindable attributes.  Separate attributes so that the ones core to ngmap are bindable.  Will allow us to bind a heatmap to a data source and have it automatically update.  I would like to prefix these with ngmap- and then we can parse the rest of the attributes as \"google maps\" attributes and pass them directly to google maps.\r\n\r\n3.  Conform to John Papa Angular styleguide\r\nhttps://github.com/johnpapa/angular-styleguide\r\n\r\n4.  Use NgLodash to make the code more readable\r\n\r\n5.  Use Promises as much as possible.\r\n\r\nI have started some preliminary work on what I would like to see.  I currently have a new map pool, map service, controller, heatmap and custom tools directives.\r\n\r\nYou can see the heatmap here:\r\n\r\nhttp://plnkr.co/edit/xaTb75PVBFG2mEdnNpQy?p=preview\r\n\r\nYou will see the heatmap dynamically change after 3 seconds.  @allenhwkim This is quite different from the current release of this module so if you are uncomfortable with these changes I will just run with a fork in my project.\r\n\r\nCurrent files updated:\r\nhttps://github.com/trainerbill/angularjs-google-maps/blob/2.0/services/google.map.api.js\r\nhttps://github.com/trainerbill/angularjs-google-maps/blob/2.0/services/map.service.js\r\nhttps://github.com/trainerbill/angularjs-google-maps/blob/2.0/services/pool.maps.factory.js\r\nhttps://github.com/trainerbill/angularjs-google-maps/blob/2.0/controllers/initialize.controller.js\r\nhttps://github.com/trainerbill/angularjs-google-maps/blob/2.0/directives/heatmap-layer.js\r\nhttps://github.com/trainerbill/angularjs-google-maps/blob/2.0/directives/custom-control.js\r\n\r\n\r\nUp for discussion!\r\n"},"comment":{"url":"https://api.github.com/repos/allenhwkim/angularjs-google-maps/issues/comments/170428768","html_url":"https://github.com/allenhwkim/angularjs-google-maps/issues/468#issuecomment-170428768","issue_url":"https://api.github.com/repos/allenhwkim/angularjs-google-maps/issues/468","id":170428768,"user":{"login":"trainerbill","id":3578259,"avatar_url":"https://avatars.githubusercontent.com/u/3578259?v=3","gravatar_id":"","url":"https://api.github.com/users/trainerbill","html_url":"https://github.com/trainerbill","followers_url":"https://api.github.com/users/trainerbill/followers","following_url":"https://api.github.com/users/trainerbill/following{/other_user}","gists_url":"https://api.github.com/users/trainerbill/gists{/gist_id}","starred_url":"https://api.github.com/users/trainerbill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trainerbill/subscriptions","organizations_url":"https://api.github.com/users/trainerbill/orgs","repos_url":"https://api.github.com/users/trainerbill/repos","events_url":"https://api.github.com/users/trainerbill/events{/privacy}","received_events_url":"https://api.github.com/users/trainerbill/received_events","type":"User","site_admin":false},"created_at":"2016-01-11T04:36:42Z","updated_at":"2016-01-11T04:36:42Z","body":"Drawing manager version 1 with bindable controls:\r\n\r\nhttp://plnkr.co/edit/SbgTKrinl55SxdJrqBg2?p=preview"}}