From fc87c009806dcc98867f6b58efe29b042aa01dee Mon Sep 17 00:00:00 2001 From: littleblack111 Date: Mon, 18 May 2026 23:10:59 +0800 Subject: node: update --- .../README.md | 49 --------- .../lib/index.js | 109 --------------------- .../package.json | 14 --- 3 files changed, 172 deletions(-) delete mode 100644 node_modules/babel-plugin-transform-simplify-comparison-operators/README.md delete mode 100644 node_modules/babel-plugin-transform-simplify-comparison-operators/lib/index.js delete mode 100644 node_modules/babel-plugin-transform-simplify-comparison-operators/package.json (limited to 'node_modules/babel-plugin-transform-simplify-comparison-operators') diff --git a/node_modules/babel-plugin-transform-simplify-comparison-operators/README.md b/node_modules/babel-plugin-transform-simplify-comparison-operators/README.md deleted file mode 100644 index 3cd9f2f9..00000000 --- a/node_modules/babel-plugin-transform-simplify-comparison-operators/README.md +++ /dev/null @@ -1,49 +0,0 @@ -# babel-plugin-transform-simplify-comparison-operators - -Convert `===` and `!==` to `==` and `!=` if their types are inferred to be the same. - -## Example - -**In** - -```javascript -typeof foo === "object"; -``` - -**Out** - -```javascript -typeof foo == "object"; -``` - -## Installation - -```sh -npm install babel-plugin-transform-simplify-comparison-operators --save-dev -``` - -## Usage - -### Via `.babelrc` (Recommended) - -**.babelrc** - -```json -{ - "plugins": ["transform-simplify-comparison-operators"] -} -``` - -### Via CLI - -```sh -babel --plugins transform-simplify-comparison-operators script.js -``` - -### Via Node API - -```javascript -require("@babel/core").transform("code", { - plugins: ["transform-simplify-comparison-operators"] -}); -``` diff --git a/node_modules/babel-plugin-transform-simplify-comparison-operators/lib/index.js b/node_modules/babel-plugin-transform-simplify-comparison-operators/lib/index.js deleted file mode 100644 index 008b34a2..00000000 --- a/node_modules/babel-plugin-transform-simplify-comparison-operators/lib/index.js +++ /dev/null @@ -1,109 +0,0 @@ -"use strict"; - -module.exports = function ({ - types: t -}) { - // custom implementation of getTypeAnnotation that fixes - // the type information that is lost during sequence expression transformation - // https://github.com/babel/minify/issues/323 - function customTypeAnnotation(path) { - if (path.typeAnnotation) { - return path.typeAnnotation; - } // We are not handling the case of literals and other base types - // since they are already handled via getTypeAnnotation - - - const node = path.node; - const binding = path.parentPath.scope.getBinding(node.name); - const types = []; - - if (binding && binding.constantViolations) { - if (binding.identifier.typeAnnotation) { - return binding.identifier.typeAnnotation; - } - - if (binding.constantViolations) { - const violations = binding.constantViolations; - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - try { - for (var _iterator = violations[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { - let violation = _step.value; - types.push(violation.getTypeAnnotation()); - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return != null) { - _iterator.return(); - } - } finally { - if (_didIteratorError) { - throw _iteratorError; - } - } - } - } - } - - if (types.length > 0) { - return t.createUnionTypeAnnotation(types); - } - - return types; - } // Based on the type inference in Babel - - - function baseTypeStrictlyMatches(left, right) { - let leftTypes, rightTypes; - - if (t.isIdentifier(left)) { - leftTypes = customTypeAnnotation(left); - } else if (t.isIdentifier(right)) { - rightTypes = customTypeAnnotation(right); - } // Early exit - - - if (t.isAnyTypeAnnotation(leftTypes) || t.isAnyTypeAnnotation(rightTypes)) { - return false; - } - - leftTypes = [].concat(leftTypes, left.getTypeAnnotation()); - rightTypes = [].concat(rightTypes, right.getTypeAnnotation()); - leftTypes = t.createUnionTypeAnnotation(leftTypes); - rightTypes = t.createUnionTypeAnnotation(rightTypes); - - if (!t.isAnyTypeAnnotation(leftTypes) && t.isFlowBaseAnnotation(leftTypes)) { - return leftTypes.type === rightTypes.type; - } - } - - return { - name: "transform-simplify-comparison-operators", - visitor: { - // simplify comparison operations if we're 100% certain - // that each value will always be of the same type - BinaryExpression(path) { - const node = path.node; - const op = node.operator; - - if (op !== "===" && op !== "!==") { - return; - } - - const left = path.get("left"); - const right = path.get("right"); - const strictMatch = baseTypeStrictlyMatches(left, right); - - if (strictMatch) { - node.operator = node.operator.slice(0, -1); - } - } - - } - }; -}; \ No newline at end of file diff --git a/node_modules/babel-plugin-transform-simplify-comparison-operators/package.json b/node_modules/babel-plugin-transform-simplify-comparison-operators/package.json deleted file mode 100644 index 70b27434..00000000 --- a/node_modules/babel-plugin-transform-simplify-comparison-operators/package.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "babel-plugin-transform-simplify-comparison-operators", - "version": "6.9.4", - "description": "Convert === and !== to == and != if their types are inferred to be the same.", - "keywords": [ - "babel-plugin" - ], - "homepage": "https://github.com/babel/minify#readme", - "bugs": "https://github.com/babel/minify/issues", - "license": "MIT", - "author": "amasad", - "main": "lib/index.js", - "repository": "https://github.com/babel/minify/tree/master/packages/babel-plugin-transform-simplify-comparison-operators" -} -- cgit v1.2.3