summaryrefslogtreecommitdiff
path: root/node_modules/babel-plugin-minify-replace/lib/index.js
diff options
context:
space:
mode:
authorlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:10:59 +0800
committerlittleblack111 <littleblack11111@gmail.com>2026-05-18 23:41:44 +0800
commitfc87c009806dcc98867f6b58efe29b042aa01dee (patch)
tree8f59b3f4a5b66e9dfef2d40c8d318e258a521228 /node_modules/babel-plugin-minify-replace/lib/index.js
parent3336b2356ee6152d9c6ae59bd9b87ccbc0958407 (diff)
node: updatemain
Diffstat (limited to 'node_modules/babel-plugin-minify-replace/lib/index.js')
-rw-r--r--node_modules/babel-plugin-minify-replace/lib/index.js100
1 files changed, 0 insertions, 100 deletions
diff --git a/node_modules/babel-plugin-minify-replace/lib/index.js b/node_modules/babel-plugin-minify-replace/lib/index.js
deleted file mode 100644
index afc88a25..00000000
--- a/node_modules/babel-plugin-minify-replace/lib/index.js
+++ /dev/null
@@ -1,100 +0,0 @@
-"use strict";
-
-module.exports = ({
- types: t
-}) => {
- const NO_MEMBER = Symbol("no member");
- const replaceVisitor = {
- ReferencedIdentifier(path) {
- const _path = path,
- node = _path.node;
- const optionsMap = this.replacements[node.name];
-
- if (!optionsMap) {
- return;
- }
-
- let options;
-
- if (path.parentPath.isMemberExpression({
- object: node
- })) {
- const property = path.parent.property;
- const key = t.isIdentifier(property) && property.name;
-
- if (typeof key === "string") {
- options = optionsMap[key];
- path = path.parentPath;
- }
- }
-
- if (!options) {
- options = optionsMap[NO_MEMBER];
- }
-
- if (!options) {
- return;
- }
-
- path.replaceWith(options.node);
- }
-
- };
- return {
- name: "minify-replace",
- visitor: {
- Program(path) {
- /**
- Replacements is an array of objects like this:
- {
- identifierName: 'console',
- member: 'log', // optional
- replacement: {
- type: 'identifier',
- value: '',
- },
- }
- **/
- if (!this.opts.replacements) {
- // No replacements. Bail.
- return;
- }
-
- const map = Object.create(null);
- this.opts.replacements.forEach(({
- identifierName,
- replacement,
- member
- }) => {
- if (path.scope.globals[identifierName]) {
- // Convert to a node, we only allow identifiers and literals as replacements
- if (!replacement.type.match(/literal|identifier/i)) {
- throw new Error("Only literals and identifier are supported as replacements");
- }
-
- const node = t[replacement.type](replacement.value);
- const options = {
- identifierName,
- node,
- member
- };
-
- if (!map[identifierName]) {
- map[identifierName] = {};
- }
-
- if (member && map[identifierName][member]) {
- throw new Error(`Replacement collision ${identifierName}.${member}`);
- }
-
- map[identifierName][member || NO_MEMBER] = options;
- }
- });
- path.traverse(replaceVisitor, {
- replacements: map
- });
- }
-
- }
- };
-}; \ No newline at end of file