Skip to content

Commit

Permalink
Merge pull request webpackmonitor#41 from gordonu/master
Browse files Browse the repository at this point in the history
fixed edge case for build data
  • Loading branch information
roachjc authored Oct 10, 2017
2 parents fb5754f + b8cdfd9 commit b9a65c2
Show file tree
Hide file tree
Showing 2 changed files with 43 additions and 39 deletions.
2 changes: 1 addition & 1 deletion client/BuildComponents/Changes.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ const Changes = (props) => {
let original = dirFinalFiles.map((item) => item[0])
return !original.includes(curr[0])
});


const additions = [];
if (added.length === 0) {
Expand Down
80 changes: 42 additions & 38 deletions client/BuildComponents/Dashboard.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,60 +12,64 @@ const Dashboard = (props) => {
return `${(number / 1000000).toFixed(2)} MB`;
};

const Parse = (props, i) => {
const data = props.build;
const build = data[i];
const findUniquePaths = [];
const filePaths = [];
const totalSizes = build.size
const Parse = (props, i) => {
const data = props.build;
const build = data[i];
const findUniquePaths = [];
const filePaths = [];
const totalSizes = build.size

for (let j = 0; j < build.chunks.length; j++) {
for (let k = 0; k < build.chunks[j].modules.length; k++) {
const path = build.chunks[j].modules[k].name.split('/');
const sizes = build.chunks[j].modules[k].size;
const percent = `${((sizes / totalSizes) * 100).toFixed(2)}%`;
filePaths.push([path.slice(1, path.length).join('/'), sizes, percent]);
findUniquePaths.push(path.slice(1, path.length - 1).join('/'));
for (let j = 0; j < build.chunks.length; j++) {
for (let k = 0; k < build.chunks[j].modules.length; k++) {
const path = build.chunks[j].modules[k].name.split('/');
const sizes = build.chunks[j].modules[k].size;
const percent = `${((sizes / totalSizes) * 100).toFixed(2)}%`;
filePaths.push([path.slice(1, path.length).join('/'), sizes, percent]);
findUniquePaths.push(path.slice(1, path.length - 1).join('/'));
}
}
}

const uniqueArray = findUniquePaths
.filter((item, pos) => item && findUniquePaths.indexOf(item) === pos)
.sort();
const uniqueArray = findUniquePaths
.filter((item, pos) => item && findUniquePaths.indexOf(item) === pos)
.sort();

var filePathAry = [];
var finalArray = [];
var dirFinalArray = [];
var filePathAry = [];
var finalArray = [];
var dirFinalArray = [];

for (var l = 0; l < uniqueArray.length; l++) {
for (var k = 0; k < filePaths.length; k++) {
filePathAry = [filePaths[k][0].split('/'), filePaths[k][1], filePaths[k][2]]
let uniquePathCheck = filePathAry[0].slice(0, filePathAry[0].length - 1).join('/')
if (uniqueArray[l] === uniquePathCheck) {
finalArray.push({
filename: filePathAry[0][filePathAry[0].length - 1],
size: filePathAry[1],
percentage: filePathAry[2],
});
for (var l = 0; l < uniqueArray.length; l++) {
for (var k = 0; k < filePaths.length; k++) {
filePathAry = [filePaths[k][0].split('/'), filePaths[k][1], filePaths[k][2]]
let uniquePathCheck = filePathAry[0].slice(0, filePathAry[0].length - 1).join('/')
if (uniqueArray[l] === uniquePathCheck) {
finalArray.push({
filename: filePathAry[0][filePathAry[0].length - 1],
size: filePathAry[1],
percentage: filePathAry[2],
});
}
}
dirFinalArray.push([uniqueArray[l], finalArray]);
finalArray = [];
}
dirFinalArray.push([uniqueArray[l], finalArray]);
finalArray = [];

return dirFinalArray
}

return dirFinalArray
}
let dirFinalArray = Parse(props, props.activeBuild)

let dirFinalArray = Parse(props, props.activeBuild)
let dirFinalArrayPrev = Parse(props, props.activeBuild-1)
let dirFinalArrayPrev = [];
if (props.activeBuild > 0) {
dirFinalArrayPrev = Parse(props, props.activeBuild - 1)
}

return (
<div className="container">
<Cards build={props.build} activeBuild={props.activeBuild} handleIncrement={props.handleIncrement} handleDecrement={props.handleDecrement}/>
<Cards build={props.build} activeBuild={props.activeBuild} handleIncrement={props.handleIncrement} handleDecrement={props.handleDecrement} />
<Changes build={props.build} activeBuild={props.activeBuild} getBytes={getBytes} dirFinalArray={dirFinalArray} dirFinalArrayPrev={dirFinalArrayPrev} />
<Assets build={props.build} activeBuild={props.activeBuild} getBytes={getBytes} />
<Errors build={props.build} activeBuild={props.activeBuild} />
<Modules build={props.build} activeBuild={props.activeBuild} getBytes={getBytes} dirFinalArray={dirFinalArray}/>
<Modules build={props.build} activeBuild={props.activeBuild} getBytes={getBytes} dirFinalArray={dirFinalArray} />
</div>
);
};
Expand Down

0 comments on commit b9a65c2

Please sign in to comment.