Skip to content

Commit

Permalink
refactor(utils): Exctract webpack stats path into a constant
Browse files Browse the repository at this point in the history
  • Loading branch information
vio committed Nov 9, 2019
1 parent 526a7fd commit 1b7987d
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 11 deletions.
3 changes: 3 additions & 0 deletions packages/utils/src/config/index.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
export * from './metrics';

export const PACKAGES_SEPARATOR = ':';

export const SOURCE_PATH_WEBPACK_STATS = 'webpack.stats';
export const SOURCE_PATHS = [SOURCE_PATH_WEBPACK_STATS];
12 changes: 6 additions & 6 deletions packages/utils/src/jobs/create.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import {
get, isEmpty, last, merge, omit, set, reverse,
} from 'lodash';

import { SOURCE_PATH_WEBPACK_STATS, SOURCE_PATHS } from '../config';
import { createStats } from '../stats/create';
import { createStatsSummary } from '../stats/create-summary';
import {
Expand All @@ -11,14 +12,13 @@ import {
packagesModulesBundleTransform,
} from '../transforms';

const RAW_DATA_IDS = ['webpack.stats'];
const SOURCE_IDS = RAW_DATA_IDS.map((id) => id.split('.')[0]);
const SOURCE_IDS = SOURCE_PATHS.map((id) => id.split('.')[0]);

/*
* Create job from stats
*/
export const createJob = (source, baseline) => {
const data = RAW_DATA_IDS.reduce((agg, rawDataPath) => {
const data = SOURCE_PATHS.reduce((agg, rawDataPath) => {
const rawData = get(source, rawDataPath);

if (!rawData) {
Expand All @@ -32,15 +32,15 @@ export const createJob = (source, baseline) => {
rawData: set({}, rawDataPath, rawData),
},
);
}, omit(source, SOURCE_IDS)); // @TODO Why ?
}, omit(source, SOURCE_IDS));

const stats = createStats(baseline && baseline.rawData, data.rawData);
const summary = createStatsSummary(baseline && baseline.stats, stats);
const { meta } = metaWebpackTransform(get(data, 'rawData.webpack.stats'));
const { meta } = metaWebpackTransform(get(data.rawData, SOURCE_PATH_WEBPACK_STATS));

const { warnings: duplicatePackagesWarnings } = duplicatePackagesBundleTransform(
packagesModulesBundleTransform({
...modulesWebpackTransform(get(data, 'rawData.webpack.stats')),
...modulesWebpackTransform(get(data.rawData, SOURCE_PATH_WEBPACK_STATS)),
}),
);

Expand Down
5 changes: 3 additions & 2 deletions packages/utils/src/stats/create.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { get, merge, set } from 'lodash';

import { SOURCE_PATH_WEBPACK_STATS } from '../config';
import {
assetsWebpackTransform,
packagesModulesBundleTransform,
Expand Down Expand Up @@ -53,13 +54,13 @@ export const generateAssetCount = (key) => (_, current) => {
};

export const createStats = (baselineRawData, currentRawData) => {
const baselineWebpackStats = get(baselineRawData, 'webpack.stats');
const baselineWebpackStats = get(baselineRawData, SOURCE_PATH_WEBPACK_STATS);
const baselineBundle = {
...assetsWebpackTransform(baselineWebpackStats),
...modulesWebpackTransform(baselineWebpackStats),
};

const currentWebpackStats = get(currentRawData, 'webpack.stats');
const currentWebpackStats = get(currentRawData, SOURCE_PATH_WEBPACK_STATS);
const currentBundle = {
...assetsWebpackTransform(currentWebpackStats),
...modulesWebpackTransform(currentWebpackStats),
Expand Down
4 changes: 3 additions & 1 deletion packages/utils/src/transforms/meta-webpack-transform.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
import { get, set } from 'lodash';

import { SOURCE_PATH_WEBPACK_STATS } from '../config';

const getBuiltAt = (webpackStats, key) => {
let builtAt = '';
const builtAtTime = get(webpackStats, key);
Expand All @@ -21,5 +23,5 @@ export const metaWebpackTransform = (webpackStats) => {
const builtAt = getBuiltAt(webpackStats, 'builtAt');
const hash = get(webpackStats, 'hash', '');

return set({}, 'meta.webpack.stats', { builtAt, hash });
return set({}, `meta.${SOURCE_PATH_WEBPACK_STATS}`, { builtAt, hash });
};
4 changes: 2 additions & 2 deletions packages/utils/src/utils/create-report.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import {
flatMap, get, isEmpty, map, uniq,
} from 'lodash';

import { METRIC_TYPE_FILE_SIZE } from '../config/metrics';
import { METRIC_TYPE_FILE_SIZE, SOURCE_PATH_WEBPACK_STATS } from '../config';
import { getMetricChanged, getMetricType, mergeRunsById } from '../metrics';
import { getStatsByMetrics } from '../stats/get-stats-by-metrics';
import {
Expand Down Expand Up @@ -71,7 +71,7 @@ export const addMetricsData = (entries, metricType) => entries.map((entry) => {
export const createRuns = (jobs) => jobs.map(({
meta, internalBuildNumber, stats, rawData,
}) => {
const webpackStats = get(rawData, 'webpack.stats');
const webpackStats = get(rawData, SOURCE_PATH_WEBPACK_STATS);
const { modules } = modulesWebpackTransform(webpackStats);

return {
Expand Down

0 comments on commit 1b7987d

Please sign in to comment.