1
0
mirror of https://github.com/S2-/minifyfromhtml.git synced 2025-08-03 04:10:04 +02:00

add some packages

This commit is contained in:
s2
2018-05-05 13:54:07 +02:00
parent 48c1138518
commit ff6e20677d
3738 changed files with 215920 additions and 0 deletions

91
node_modules/babel-plugin-minify-replace/README.md generated vendored Normal file
View File

@@ -0,0 +1,91 @@
# babel-plugin-minify-replace
Configurable "search and replace" plugin. Replaces matching nodes in the tree with a given replacement node. For example you can replace `process.NODE_ENV` with `"production"`.
## Example
**Options**
```javascript
[
{
identifierName: "__DEV__",
replacement: {
type: "numericLiteral",
value: 0,
},
},
]
```
**In**
```javascript
if (!__DEV__) {
foo();
}
if (a.__DEV__) {
foo();
}
```
**Out**
```javascript
if (!0) {
foo();
}
if (a.__DEV__) {
foo();
}
```
## Installation
```sh
npm install babel-plugin-minify-replace
```
## Usage
### Via `.babelrc` (Recommended)
**.babelrc**
```json
// without options
{
"plugins": ["minify-replace"]
}
```
```json
// with options
{
"plugins": [
["minify-replace", {
"replacements": [{
"identifierName": "__DEV__",
"replacement": {
"type": "booleanLiteral",
"value": true
}
}]
}]
]
}
```
### Via CLI
```sh
babel --plugins minify-replace script.js
```
### Via Node API
```javascript
require("@babel/core").transform("code", {
plugins: ["minify-replace"]
});
```

100
node_modules/babel-plugin-minify-replace/lib/index.js generated vendored Normal file
View File

@@ -0,0 +1,100 @@
"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
});
}
}
};
};

46
node_modules/babel-plugin-minify-replace/package.json generated vendored Normal file
View File

@@ -0,0 +1,46 @@
{
"_from": "babel-plugin-minify-replace@^0.4.1",
"_id": "babel-plugin-minify-replace@0.4.1",
"_inBundle": false,
"_integrity": "sha1-xRnYhYxiKySWo2SmE1rSd1V42UM=",
"_location": "/babel-plugin-minify-replace",
"_phantomChildren": {},
"_requested": {
"type": "range",
"registry": true,
"raw": "babel-plugin-minify-replace@^0.4.1",
"name": "babel-plugin-minify-replace",
"escapedName": "babel-plugin-minify-replace",
"rawSpec": "^0.4.1",
"saveSpec": null,
"fetchSpec": "^0.4.1"
},
"_requiredBy": [
"/babel-preset-minify"
],
"_resolved": "https://registry.npmjs.org/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.4.1.tgz",
"_shasum": "c519d8858c622b2496a364a6135ad2775578d943",
"_spec": "babel-plugin-minify-replace@^0.4.1",
"_where": "/home/s2/Documents/Code/minifyfromhtml/node_modules/babel-preset-minify",
"author": {
"name": "amasad"
},
"bugs": {
"url": "https://github.com/babel/minify/issues"
},
"bundleDependencies": false,
"deprecated": false,
"description": "Configurable \"search and replace\" plugin. Replaces matching nodes in the tree with a given replacement node. For example you can replace `process.NODE_ENV` with `\"production\"`.",
"homepage": "https://github.com/babel/minify#readme",
"keywords": [
"babel-plugin"
],
"license": "MIT",
"main": "lib/index.js",
"name": "babel-plugin-minify-replace",
"repository": {
"type": "git",
"url": "https://github.com/babel/minify/tree/master/packages/babel-plugin-minify-replace"
},
"version": "0.4.1"
}