Socket
Socket
Sign inDemoInstall

@babel/plugin-transform-typeof-symbol

Package Overview
Dependencies
Maintainers
4
Versions
76
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/plugin-transform-typeof-symbol - npm Package Compare versions

Comparing version 7.22.5 to 8.0.0-alpha.0

24

lib/index.js

@@ -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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc