mirror of
https://github.com/S2-/minifyfromhtml.git
synced 2025-08-04 04:40:05 +02:00
add some packages
This commit is contained in:
105
node_modules/babel-plugin-minify-mangle-names/lib/bfs-traverse.js
generated
vendored
Normal file
105
node_modules/babel-plugin-minify-mangle-names/lib/bfs-traverse.js
generated
vendored
Normal file
@@ -0,0 +1,105 @@
|
||||
"use strict";
|
||||
|
||||
module.exports = function bfsTraverseCreator({
|
||||
types: t,
|
||||
traverse
|
||||
}) {
|
||||
function getFields(path) {
|
||||
return t.VISITOR_KEYS[path.type];
|
||||
}
|
||||
|
||||
return function bfsTraverse(path, _visitor) {
|
||||
if (!path.node) {
|
||||
throw new Error("Not a valid path");
|
||||
}
|
||||
|
||||
const visitor = traverse.explode(_visitor);
|
||||
const queue = [path];
|
||||
let current;
|
||||
|
||||
while (queue.length > 0) {
|
||||
current = queue.shift(); // call
|
||||
|
||||
if (visitor && visitor[current.type] && Array.isArray(visitor[current.type].enter)) {
|
||||
const fns = visitor[current.type].enter;
|
||||
var _iteratorNormalCompletion = true;
|
||||
var _didIteratorError = false;
|
||||
var _iteratorError = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator = fns[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
||||
const fn = _step.value;
|
||||
if (typeof fn === "function") fn(current);
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError = true;
|
||||
_iteratorError = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
||||
_iterator.return();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError) {
|
||||
throw _iteratorError;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const fields = getFields(current);
|
||||
var _iteratorNormalCompletion2 = true;
|
||||
var _didIteratorError2 = false;
|
||||
var _iteratorError2 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator2 = fields[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
|
||||
const field = _step2.value;
|
||||
const child = current.get(field);
|
||||
|
||||
if (Array.isArray(child)) {
|
||||
// visit container left to right
|
||||
var _iteratorNormalCompletion3 = true;
|
||||
var _didIteratorError3 = false;
|
||||
var _iteratorError3 = undefined;
|
||||
|
||||
try {
|
||||
for (var _iterator3 = child[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
|
||||
const c = _step3.value;
|
||||
if (c.node) queue.push(c);
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError3 = true;
|
||||
_iteratorError3 = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion3 && _iterator3.return != null) {
|
||||
_iterator3.return();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError3) {
|
||||
throw _iteratorError3;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (child.node) queue.push(child);
|
||||
}
|
||||
}
|
||||
} catch (err) {
|
||||
_didIteratorError2 = true;
|
||||
_iteratorError2 = err;
|
||||
} finally {
|
||||
try {
|
||||
if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
|
||||
_iterator2.return();
|
||||
}
|
||||
} finally {
|
||||
if (_didIteratorError2) {
|
||||
throw _iteratorError2;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
Reference in New Issue
Block a user