first commit
This commit is contained in:
125
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/BaseFolder.js
generated
vendored
Normal file
125
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/BaseFolder.js
generated
vendored
Normal file
@ -0,0 +1,125 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
|
||||
var _Node = _interopRequireDefault(require("./Node"));
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
class BaseFolder extends _Node.default {
|
||||
constructor(name, parent) {
|
||||
super(name, parent);
|
||||
this.children = Object.create(null);
|
||||
}
|
||||
|
||||
get src() {
|
||||
if (!Object.prototype.hasOwnProperty.call(this, '_src')) {
|
||||
this._src = this.walk((node, src) => src += node.src || '', '', false);
|
||||
}
|
||||
|
||||
return this._src;
|
||||
}
|
||||
|
||||
get size() {
|
||||
if (!Object.prototype.hasOwnProperty.call(this, '_size')) {
|
||||
this._size = this.walk((node, size) => size + node.size, 0, false);
|
||||
}
|
||||
|
||||
return this._size;
|
||||
}
|
||||
|
||||
getChild(name) {
|
||||
return this.children[name];
|
||||
}
|
||||
|
||||
addChildModule(module) {
|
||||
const {
|
||||
name
|
||||
} = module;
|
||||
const currentChild = this.children[name]; // For some reason we already have this node in children and it's a folder.
|
||||
|
||||
if (currentChild && currentChild instanceof BaseFolder) return;
|
||||
|
||||
if (currentChild) {
|
||||
// We already have this node in children and it's a module.
|
||||
// Merging it's data.
|
||||
currentChild.mergeData(module.data);
|
||||
} else {
|
||||
// Pushing new module
|
||||
module.parent = this;
|
||||
this.children[name] = module;
|
||||
}
|
||||
|
||||
delete this._size;
|
||||
delete this._src;
|
||||
}
|
||||
|
||||
addChildFolder(folder) {
|
||||
folder.parent = this;
|
||||
this.children[folder.name] = folder;
|
||||
delete this._size;
|
||||
delete this._src;
|
||||
return folder;
|
||||
}
|
||||
|
||||
walk(walker, state = {}, deep = true) {
|
||||
let stopped = false;
|
||||
Object.values(this.children).forEach(child => {
|
||||
if (deep && child.walk) {
|
||||
state = child.walk(walker, state, stop);
|
||||
} else {
|
||||
state = walker(child, state, stop);
|
||||
}
|
||||
|
||||
if (stopped) return false;
|
||||
});
|
||||
return state;
|
||||
|
||||
function stop(finalState) {
|
||||
stopped = true;
|
||||
return finalState;
|
||||
}
|
||||
}
|
||||
|
||||
mergeNestedFolders() {
|
||||
if (!this.isRoot) {
|
||||
let childNames;
|
||||
|
||||
while ((childNames = Object.keys(this.children)).length === 1) {
|
||||
const childName = childNames[0];
|
||||
const onlyChild = this.children[childName];
|
||||
|
||||
if (onlyChild instanceof this.constructor) {
|
||||
this.name += `/${onlyChild.name}`;
|
||||
this.children = onlyChild.children;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.walk(child => {
|
||||
child.parent = this;
|
||||
|
||||
if (child.mergeNestedFolders) {
|
||||
child.mergeNestedFolders();
|
||||
}
|
||||
}, null, false);
|
||||
}
|
||||
|
||||
toChartData() {
|
||||
return {
|
||||
label: this.name,
|
||||
path: this.path,
|
||||
statSize: this.size,
|
||||
groups: Object.values(this.children).map(child => child.toChartData())
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
exports.default = BaseFolder;
|
||||
;
|
106
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/ConcatenatedModule.js
generated
vendored
Normal file
106
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/ConcatenatedModule.js
generated
vendored
Normal file
@ -0,0 +1,106 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
|
||||
var _Module = _interopRequireDefault(require("./Module"));
|
||||
|
||||
var _ContentModule = _interopRequireDefault(require("./ContentModule"));
|
||||
|
||||
var _ContentFolder = _interopRequireDefault(require("./ContentFolder"));
|
||||
|
||||
var _utils = require("./utils");
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
class ConcatenatedModule extends _Module.default {
|
||||
constructor(name, data, parent) {
|
||||
super(name, data, parent);
|
||||
this.name += ' (concatenated)';
|
||||
this.children = Object.create(null);
|
||||
this.fillContentModules();
|
||||
}
|
||||
|
||||
get parsedSize() {
|
||||
var _this$getParsedSize;
|
||||
|
||||
return (_this$getParsedSize = this.getParsedSize()) !== null && _this$getParsedSize !== void 0 ? _this$getParsedSize : this.getEstimatedSize('parsedSize');
|
||||
}
|
||||
|
||||
get gzipSize() {
|
||||
var _this$getGzipSize;
|
||||
|
||||
return (_this$getGzipSize = this.getGzipSize()) !== null && _this$getGzipSize !== void 0 ? _this$getGzipSize : this.getEstimatedSize('gzipSize');
|
||||
}
|
||||
|
||||
getEstimatedSize(sizeType) {
|
||||
const parentModuleSize = this.parent[sizeType];
|
||||
|
||||
if (parentModuleSize !== undefined) {
|
||||
return Math.floor(this.size / this.parent.size * parentModuleSize);
|
||||
}
|
||||
}
|
||||
|
||||
fillContentModules() {
|
||||
this.data.modules.forEach(moduleData => this.addContentModule(moduleData));
|
||||
}
|
||||
|
||||
addContentModule(moduleData) {
|
||||
const pathParts = (0, _utils.getModulePathParts)(moduleData);
|
||||
|
||||
if (!pathParts) {
|
||||
return;
|
||||
}
|
||||
|
||||
const [folders, fileName] = [pathParts.slice(0, -1), pathParts[pathParts.length - 1]];
|
||||
let currentFolder = this;
|
||||
folders.forEach(folderName => {
|
||||
let childFolder = currentFolder.getChild(folderName);
|
||||
|
||||
if (!childFolder) {
|
||||
childFolder = currentFolder.addChildFolder(new _ContentFolder.default(folderName, this));
|
||||
}
|
||||
|
||||
currentFolder = childFolder;
|
||||
});
|
||||
const ModuleConstructor = moduleData.modules ? ConcatenatedModule : _ContentModule.default;
|
||||
const module = new ModuleConstructor(fileName, moduleData, this);
|
||||
currentFolder.addChildModule(module);
|
||||
}
|
||||
|
||||
getChild(name) {
|
||||
return this.children[name];
|
||||
}
|
||||
|
||||
addChildModule(module) {
|
||||
module.parent = this;
|
||||
this.children[module.name] = module;
|
||||
}
|
||||
|
||||
addChildFolder(folder) {
|
||||
folder.parent = this;
|
||||
this.children[folder.name] = folder;
|
||||
return folder;
|
||||
}
|
||||
|
||||
mergeNestedFolders() {
|
||||
Object.values(this.children).forEach(child => {
|
||||
if (child.mergeNestedFolders) {
|
||||
child.mergeNestedFolders();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
toChartData() {
|
||||
return { ...super.toChartData(),
|
||||
concatenated: true,
|
||||
groups: Object.values(this.children).map(child => child.toChartData())
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
exports.default = ConcatenatedModule;
|
||||
;
|
45
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/ContentFolder.js
generated
vendored
Normal file
45
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/ContentFolder.js
generated
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
|
||||
var _BaseFolder = _interopRequireDefault(require("./BaseFolder"));
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
class ContentFolder extends _BaseFolder.default {
|
||||
constructor(name, ownerModule, parent) {
|
||||
super(name, parent);
|
||||
this.ownerModule = ownerModule;
|
||||
}
|
||||
|
||||
get parsedSize() {
|
||||
return this.getSize('parsedSize');
|
||||
}
|
||||
|
||||
get gzipSize() {
|
||||
return this.getSize('gzipSize');
|
||||
}
|
||||
|
||||
getSize(sizeType) {
|
||||
const ownerModuleSize = this.ownerModule[sizeType];
|
||||
|
||||
if (ownerModuleSize !== undefined) {
|
||||
return Math.floor(this.size / this.ownerModule.size * ownerModuleSize);
|
||||
}
|
||||
}
|
||||
|
||||
toChartData() {
|
||||
return { ...super.toChartData(),
|
||||
parsedSize: this.parsedSize,
|
||||
gzipSize: this.gzipSize,
|
||||
inaccurateSizes: true
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
exports.default = ContentFolder;
|
||||
;
|
43
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/ContentModule.js
generated
vendored
Normal file
43
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/ContentModule.js
generated
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
|
||||
var _Module = _interopRequireDefault(require("./Module"));
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
class ContentModule extends _Module.default {
|
||||
constructor(name, data, ownerModule, parent) {
|
||||
super(name, data, parent);
|
||||
this.ownerModule = ownerModule;
|
||||
}
|
||||
|
||||
get parsedSize() {
|
||||
return this.getSize('parsedSize');
|
||||
}
|
||||
|
||||
get gzipSize() {
|
||||
return this.getSize('gzipSize');
|
||||
}
|
||||
|
||||
getSize(sizeType) {
|
||||
const ownerModuleSize = this.ownerModule[sizeType];
|
||||
|
||||
if (ownerModuleSize !== undefined) {
|
||||
return Math.floor(this.size / this.ownerModule.size * ownerModuleSize);
|
||||
}
|
||||
}
|
||||
|
||||
toChartData() {
|
||||
return { ...super.toChartData(),
|
||||
inaccurateSizes: true
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
exports.default = ContentModule;
|
||||
;
|
71
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/Folder.js
generated
vendored
Normal file
71
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/Folder.js
generated
vendored
Normal file
@ -0,0 +1,71 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
|
||||
var _gzipSize = _interopRequireDefault(require("gzip-size"));
|
||||
|
||||
var _Module = _interopRequireDefault(require("./Module"));
|
||||
|
||||
var _BaseFolder = _interopRequireDefault(require("./BaseFolder"));
|
||||
|
||||
var _ConcatenatedModule = _interopRequireDefault(require("./ConcatenatedModule"));
|
||||
|
||||
var _utils = require("./utils");
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
class Folder extends _BaseFolder.default {
|
||||
get parsedSize() {
|
||||
return this.src ? this.src.length : 0;
|
||||
}
|
||||
|
||||
get gzipSize() {
|
||||
if (!Object.prototype.hasOwnProperty.call(this, '_gzipSize')) {
|
||||
this._gzipSize = this.src ? _gzipSize.default.sync(this.src) : 0;
|
||||
}
|
||||
|
||||
return this._gzipSize;
|
||||
}
|
||||
|
||||
addModule(moduleData) {
|
||||
const pathParts = (0, _utils.getModulePathParts)(moduleData);
|
||||
|
||||
if (!pathParts) {
|
||||
return;
|
||||
}
|
||||
|
||||
const [folders, fileName] = [pathParts.slice(0, -1), pathParts[pathParts.length - 1]];
|
||||
let currentFolder = this;
|
||||
folders.forEach(folderName => {
|
||||
let childNode = currentFolder.getChild(folderName);
|
||||
|
||||
if ( // Folder is not created yet
|
||||
!childNode || // In some situations (invalid usage of dynamic `require()`) webpack generates a module with empty require
|
||||
// context, but it's moduleId points to a directory in filesystem.
|
||||
// In this case we replace this `File` node with `Folder`.
|
||||
// See `test/stats/with-invalid-dynamic-require.json` as an example.
|
||||
!(childNode instanceof Folder)) {
|
||||
childNode = currentFolder.addChildFolder(new Folder(folderName));
|
||||
}
|
||||
|
||||
currentFolder = childNode;
|
||||
});
|
||||
const ModuleConstructor = moduleData.modules ? _ConcatenatedModule.default : _Module.default;
|
||||
const module = new ModuleConstructor(fileName, moduleData, this);
|
||||
currentFolder.addChildModule(module);
|
||||
}
|
||||
|
||||
toChartData() {
|
||||
return { ...super.toChartData(),
|
||||
parsedSize: this.parsedSize,
|
||||
gzipSize: this.gzipSize
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
exports.default = Folder;
|
||||
;
|
81
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/Module.js
generated
vendored
Normal file
81
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/Module.js
generated
vendored
Normal file
@ -0,0 +1,81 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
|
||||
var _gzipSize = _interopRequireDefault(require("gzip-size"));
|
||||
|
||||
var _Node = _interopRequireDefault(require("./Node"));
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
class Module extends _Node.default {
|
||||
constructor(name, data, parent) {
|
||||
super(name, parent);
|
||||
this.data = data;
|
||||
}
|
||||
|
||||
get src() {
|
||||
return this.data.parsedSrc;
|
||||
}
|
||||
|
||||
set src(value) {
|
||||
this.data.parsedSrc = value;
|
||||
delete this._gzipSize;
|
||||
}
|
||||
|
||||
get size() {
|
||||
return this.data.size;
|
||||
}
|
||||
|
||||
set size(value) {
|
||||
this.data.size = value;
|
||||
}
|
||||
|
||||
get parsedSize() {
|
||||
return this.getParsedSize();
|
||||
}
|
||||
|
||||
get gzipSize() {
|
||||
return this.getGzipSize();
|
||||
}
|
||||
|
||||
getParsedSize() {
|
||||
return this.src ? this.src.length : undefined;
|
||||
}
|
||||
|
||||
getGzipSize() {
|
||||
if (!('_gzipSize' in this)) {
|
||||
this._gzipSize = this.src ? _gzipSize.default.sync(this.src) : undefined;
|
||||
}
|
||||
|
||||
return this._gzipSize;
|
||||
}
|
||||
|
||||
mergeData(data) {
|
||||
if (data.size) {
|
||||
this.size += data.size;
|
||||
}
|
||||
|
||||
if (data.parsedSrc) {
|
||||
this.src = (this.src || '') + data.parsedSrc;
|
||||
}
|
||||
}
|
||||
|
||||
toChartData() {
|
||||
return {
|
||||
id: this.data.id,
|
||||
label: this.name,
|
||||
path: this.path,
|
||||
statSize: this.size,
|
||||
parsedSize: this.parsedSize,
|
||||
gzipSize: this.gzipSize
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
exports.default = Module;
|
||||
;
|
33
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/Node.js
generated
vendored
Normal file
33
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/Node.js
generated
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
|
||||
class Node {
|
||||
constructor(name, parent) {
|
||||
this.name = name;
|
||||
this.parent = parent;
|
||||
}
|
||||
|
||||
get path() {
|
||||
const path = [];
|
||||
let node = this;
|
||||
|
||||
while (node) {
|
||||
path.push(node.name);
|
||||
node = node.parent;
|
||||
}
|
||||
|
||||
return path.reverse().join('/');
|
||||
}
|
||||
|
||||
get isRoot() {
|
||||
return !this.parent;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
exports.default = Node;
|
||||
;
|
21
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/utils.js
generated
vendored
Normal file
21
app_vue/node_modules/webpack-bundle-analyzer/lib/tree/utils.js
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.getModulePathParts = getModulePathParts;
|
||||
const MULTI_MODULE_REGEXP = /^multi /u;
|
||||
|
||||
function getModulePathParts(moduleData) {
|
||||
if (MULTI_MODULE_REGEXP.test(moduleData.identifier)) {
|
||||
return [moduleData.identifier];
|
||||
}
|
||||
|
||||
const loaders = moduleData.name.split('!'); // Removing loaders from module path: they're joined by `!` and the last part is a raw module path
|
||||
|
||||
const parsedPath = loaders[loaders.length - 1] // Splitting module path into parts
|
||||
.split('/') // Removing first `.`
|
||||
.slice(1) // Replacing `~` with `node_modules`
|
||||
.map(part => part === '~' ? 'node_modules' : part);
|
||||
return parsedPath.length ? parsedPath : null;
|
||||
}
|
Reference in New Issue
Block a user