@babel/plugin-transform-typeof-symbol
Advanced tools
Comparing version
@@ -1,10 +0,5 @@ | ||
"use strict"; | ||
import { declare } from '@babel/helper-plugin-utils'; | ||
import { types } from '@babel/core'; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = void 0; | ||
var _helperPluginUtils = require("@babel/helper-plugin-utils"); | ||
var _core = require("@babel/core"); | ||
var _default = (0, _helperPluginUtils.declare)(api => { | ||
var index = declare(api => { | ||
api.assertVersion(7); | ||
@@ -28,3 +23,3 @@ return { | ||
if (node.operator !== "typeof") return; | ||
if (path.parentPath.isBinaryExpression() && _core.types.EQUALITY_BINARY_OPERATORS.indexOf(parent.operator) >= 0) { | ||
if (path.parentPath.isBinaryExpression() && types.EQUALITY_BINARY_OPERATORS.indexOf(parent.operator) >= 0) { | ||
const opposite = path.getOpposite(); | ||
@@ -37,4 +32,3 @@ if (opposite.isStringLiteral() && opposite.node.value !== "symbol" && opposite.node.value !== "object") { | ||
if (path.isFunction()) { | ||
var _path$get; | ||
return ((_path$get = path.get("body.directives.0")) == null ? void 0 : _path$get.node.value.value) === "@babel/helpers - typeof"; | ||
return path.get("body.directives.0")?.node.value.value === "@babel/helpers - typeof"; | ||
} | ||
@@ -50,7 +44,7 @@ }); | ||
} | ||
const call = _core.types.callExpression(helper, [node.argument]); | ||
const call = types.callExpression(helper, [node.argument]); | ||
const arg = path.get("argument"); | ||
if (arg.isIdentifier() && !path.scope.hasBinding(arg.node.name, true)) { | ||
const unary = _core.types.unaryExpression("typeof", _core.types.cloneNode(node.argument)); | ||
path.replaceWith(_core.types.conditionalExpression(_core.types.binaryExpression("===", unary, _core.types.stringLiteral("undefined")), _core.types.stringLiteral("undefined"), call)); | ||
const unary = types.unaryExpression("typeof", types.cloneNode(node.argument)); | ||
path.replaceWith(types.conditionalExpression(types.binaryExpression("===", unary, types.stringLiteral("undefined")), types.stringLiteral("undefined"), call)); | ||
} else { | ||
@@ -63,4 +57,4 @@ path.replaceWith(call); | ||
}); | ||
exports.default = _default; | ||
export { index as default }; | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "@babel/plugin-transform-typeof-symbol", | ||
"version": "7.22.5", | ||
"version": "8.0.0-alpha.0", | ||
"description": "This transformer wraps all typeof expressions with a method that replicates native behaviour. (ie. returning “symbol” for symbols)", | ||
@@ -19,20 +19,24 @@ "repository": { | ||
"dependencies": { | ||
"@babel/helper-plugin-utils": "^7.22.5" | ||
"@babel/helper-plugin-utils": "^8.0.0-alpha.0" | ||
}, | ||
"peerDependencies": { | ||
"@babel/core": "^7.0.0-0" | ||
"@babel/core": "^8.0.0-alpha.0" | ||
}, | ||
"devDependencies": { | ||
"@babel/core": "^7.22.5", | ||
"@babel/helper-plugin-test-runner": "^7.22.5", | ||
"@babel/runtime": "^7.22.5", | ||
"@babel/runtime-corejs2": "^7.22.5", | ||
"@babel/runtime-corejs3": "^7.22.5" | ||
"@babel/core": "^8.0.0-alpha.0", | ||
"@babel/helper-plugin-test-runner": "^8.0.0-alpha.0", | ||
"@babel/runtime": "^8.0.0-alpha.0", | ||
"@babel/runtime-corejs2": "^8.0.0-alpha.0", | ||
"@babel/runtime-corejs3": "^8.0.0-alpha.0" | ||
}, | ||
"homepage": "https://babel.dev/docs/en/next/babel-plugin-transform-typeof-symbol", | ||
"engines": { | ||
"node": ">=6.9.0" | ||
"node": "^16.20.0 || ^18.16.0 || >=20.0.0" | ||
}, | ||
"author": "The Babel Team (https://babel.dev/team)", | ||
"type": "commonjs" | ||
"exports": { | ||
".": "./lib/index.js", | ||
"./package.json": "./package.json" | ||
}, | ||
"type": "module" | ||
} |
@@ -5,3 +5,3 @@ # @babel/plugin-transform-typeof-symbol | ||
See our website [@babel/plugin-transform-typeof-symbol](https://babeljs.io/docs/en/babel-plugin-transform-typeof-symbol) for more information. | ||
See our website [@babel/plugin-transform-typeof-symbol](https://babeljs.io/docs/babel-plugin-transform-typeof-symbol) for more information. | ||
@@ -8,0 +8,0 @@ ## Install |
Sorry, the diff of this file is not supported yet
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
Yes
NaN10452
-0.66%54
-10%1
Infinity%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed
- Removed