* formatting * fix `typeof Symbol.prototype` Babel uses a helper function to return the correct value for `typeof obj` when obj is a Symbol and support for Symbol has been polyfilled. This function assumes that `obj.constructor === Symbol` implies `typeof obj === 'symbol'`. This isn't true when obj is `Symbol.prototype`. In that case (REPL from node 6, the same holds in Firefox): ``` > Symbol.prototype.constructor === Symbol true > typeof Symbol.prototype 'object' > ``` AFAICS, that's the only case where the assumption doesn't hold. The test added by this patch fails only on node 0.10, as 0.12 already has a native implementation of Symbol and the polyfill code doesn't run. This caused a problem in core-js when it's compiled with babel (the issue was isolated by @skozin here: https://github.com/zloirock/core-js/issues/189#issuecomment-209864582).
babel-helpers
Collection of helper functions used by Babel transforms.
Install
$ npm install babel-helpers
Usage
import * as helpers from 'babel-helpers';
import * as t from 'babel-types';
const typeofHelper = helpers.get('typeof');
t.isExpressionStatement(typeofHelper);
// true