{"action":"opened","issue":{"url":"https://api.github.com/repos/mui-org/material-ui/issues/10649","repository_url":"https://api.github.com/repos/mui-org/material-ui","labels_url":"https://api.github.com/repos/mui-org/material-ui/issues/10649/labels{/name}","comments_url":"https://api.github.com/repos/mui-org/material-ui/issues/10649/comments","events_url":"https://api.github.com/repos/mui-org/material-ui/issues/10649/events","html_url":"https://github.com/mui-org/material-ui/issues/10649","id":305249510,"number":10649,"title":"[material-ui-icons] load-order problem with SSR and ES6 use of material-ui; needs ES variant?","user":{"login":"estaub","id":1131334,"avatar_url":"https://avatars1.githubusercontent.com/u/1131334?v=4","gravatar_id":"","url":"https://api.github.com/users/estaub","html_url":"https://github.com/estaub","followers_url":"https://api.github.com/users/estaub/followers","following_url":"https://api.github.com/users/estaub/following{/other_user}","gists_url":"https://api.github.com/users/estaub/gists{/gist_id}","starred_url":"https://api.github.com/users/estaub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/estaub/subscriptions","organizations_url":"https://api.github.com/users/estaub/orgs","repos_url":"https://api.github.com/users/estaub/repos","events_url":"https://api.github.com/users/estaub/events{/privacy}","received_events_url":"https://api.github.com/users/estaub/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-03-14T17:08:10Z","updated_at":"2018-03-14T17:08:10Z","closed_at":null,"author_association":"NONE","body":"material-ui-icons uses `material-ui/SvgIcon`, which uses `material-ui/styles/withStyles`, which creates a static generateClassNames, resetting the static rule counter.\r\n\r\nIn an app that is otherwise using ES6 material-ui, including `material-ui/**es**/styles/withStyles`, this results in the counter being reset.  If that happens before any JssProvider is set up, all good.  But if it happens afterward, as is likely with chunked production client code, it resets the rule counter late, resulting in className skewage in hydration of the SSR rendering.\r\n\r\nA workaround in client code is to force early loading of `material-ui/styles/withStyles` in the browser, e.g.,\r\n\r\n```\r\nimport {default as wrongWithStyles} from 'material-ui/styles/withStyles'\r\nconst _fooWrongStyles = wrongWithStyles\r\n\r\n```\r\n"}}
{"actor":{"display_login":"estaub"}}