@bundle-stats/ui 4.2.1 → 4.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app/app.js +17 -5
- package/lib/app/app.js.map +1 -1
- package/lib/components/index.js +3 -1
- package/lib/components/index.js.map +1 -1
- package/lib/components/insight-icon/index.js +18 -0
- package/lib/components/insight-icon/index.js.map +1 -0
- package/lib/components/insight-icon/insight-icon.js +25 -0
- package/lib/components/insight-icon/insight-icon.js.map +1 -0
- package/lib/components/insight-icon/insight-icon.module.css +24 -0
- package/lib/components/insights/insights.js +6 -13
- package/lib/components/insights/insights.js.map +1 -1
- package/lib/components/insights/insights.module.css +0 -21
- package/lib-esm/app/app.js +18 -6
- package/lib-esm/app/app.js.map +1 -1
- package/lib-esm/components/index.js +1 -0
- package/lib-esm/components/index.js.map +1 -1
- package/lib-esm/components/insight-icon/index.js +2 -0
- package/lib-esm/components/insight-icon/index.js.map +1 -0
- package/lib-esm/components/insight-icon/insight-icon.js +18 -0
- package/lib-esm/components/insight-icon/insight-icon.js.map +1 -0
- package/lib-esm/components/insight-icon/insight-icon.module.css +24 -0
- package/lib-esm/components/insights/insights.js +7 -14
- package/lib-esm/components/insights/insights.js.map +1 -1
- package/lib-esm/components/insights/insights.module.css +0 -21
- package/package.json +5 -5
- package/src/app/app.jsx +21 -10
- package/src/components/index.js +1 -0
- package/src/components/insight-icon/index.ts +1 -0
- package/src/components/insight-icon/insight-icon.module.css +24 -0
- package/src/components/insight-icon/insight-icon.tsx +27 -0
- package/src/components/insights/insights.module.css +0 -21
- package/src/components/insights/insights.stories.tsx +26 -22
- package/src/components/insights/insights.tsx +8 -19
- package/types/components/index.d.ts +1 -0
- package/types/components/insight-icon/index.d.ts +1 -0
- package/types/components/insight-icon/insight-icon.d.ts +7 -0
- package/types/components/insights/insights.d.ts +2 -2
package/lib/app/app.js
CHANGED
|
@@ -29,6 +29,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
29
29
|
exports.App = void 0;
|
|
30
30
|
const react_1 = __importStar(require("react"));
|
|
31
31
|
const prop_types_1 = __importDefault(require("prop-types"));
|
|
32
|
+
const isEmpty_1 = __importDefault(require("lodash/isEmpty"));
|
|
32
33
|
const react_router_dom_1 = require("react-router-dom");
|
|
33
34
|
const utils_1 = require("@bundle-stats/utils");
|
|
34
35
|
const constants_1 = require("../constants");
|
|
@@ -79,15 +80,26 @@ JobsProvider.propTypes = {
|
|
|
79
80
|
};
|
|
80
81
|
const OverviewContent = () => {
|
|
81
82
|
const { jobs } = (0, react_1.useContext)(JobsContext);
|
|
82
|
-
const
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
const insightsByName = (0, react_1.useMemo)(() => {
|
|
84
|
+
const webpackInsights = jobs?.[0]?.insights?.webpack;
|
|
85
|
+
if (!webpackInsights) {
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
88
|
+
const res = {
|
|
89
|
+
...(webpackInsights.duplicatePackagesV3 && { duplicatePackages: webpackInsights.duplicatePackagesV3 }),
|
|
90
|
+
...(webpackInsights.newPackages && { newPackages: webpackInsights.newPackages }),
|
|
91
|
+
};
|
|
92
|
+
if ((0, isEmpty_1.default)(res)) {
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
return res;
|
|
96
|
+
}, [jobs]);
|
|
85
97
|
return (react_1.default.createElement(stack_1.Stack, { space: "medium" },
|
|
86
|
-
|
|
98
|
+
insightsByName && (react_1.default.createElement(container_1.Container, null,
|
|
87
99
|
react_1.default.createElement(stack_1.Stack, { space: "xsmall" },
|
|
88
100
|
react_1.default.createElement(components_1.MetricsTableTitle, { title: "Insights" }),
|
|
89
101
|
react_1.default.createElement(box_1.Box, { padding: "small", outline: true },
|
|
90
|
-
react_1.default.createElement(insights_1.Insights, {
|
|
102
|
+
react_1.default.createElement(insights_1.Insights, { insights: insightsByName }))))),
|
|
91
103
|
react_1.default.createElement(container_1.Container, null,
|
|
92
104
|
react_1.default.createElement(stack_1.Stack, { space: "small" },
|
|
93
105
|
react_1.default.createElement(total_size_type_title_1.TotalSizeTypeTitle, null),
|
package/lib/app/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app/app.jsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAA8D;AAC9D,4DAAmC;AACnC,uDAAmF;AACnF,+CAAgD;AAEhD,4CAMsB;AACtB,uCAAoC;AACpC,+CAA4C;AAC5C,mDAAgD;AAChD,+DAA2D;AAC3D,mGAA4F;AAC5F,qCAAkC;AAClC,6CAA0C;AAC1C,2CAAwC;AACxC,yFAAmF;AACnF,iEAA6D;AAC7D,mEAA+D;AAC/D,qDAAkD;AAClD,+EAAyE;AACzE,gDAA4E;AAC5E,mDAA2B;AAC3B,qCAAkC;AAClC,sEAAmC;AACnC,8CAAkD;AAElD,MAAM,WAAW,GAAG,GAAG,EAAE;IACvB,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,8BAAW,GAAE,CAAC;IAEnC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CAC9C,uCAAK,SAAS,EAAE,wBAAG,CAAC,IAAI;IACtB,8BAAC,eAAM,IAAC,SAAS,EAAE,wBAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,GAAI;IAC7C,wCAAM,SAAS,EAAE,wBAAG,CAAC,IAAI,KAAM,KAAK,GAAI;IACxC,8BAAC,eAAM,IAAC,OAAO,EAAE,OAAO,GAAI,CACxB,CACP,CAAC;AAEF,MAAM,CAAC,SAAS,GAAG;IACjB,IAAI,EAAE,oBAAS,CAAC,OAAO,CAAC,oBAAS,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,oBAAS,CAAC,MAAM;CAC1B,CAAC;AAEF,MAAM,CAAC,YAAY,GAAG;IACpB,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,MAAM,WAAW,GAAG,eAAK,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;AACtD,MAAM,YAAY,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,EAAE,EAAE;IAC9C,MAAM,KAAK,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,OAAO,8BAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,KAAM,SAAS,GAAI,CAAC;AAC/D,CAAC,CAAC;AAEF,YAAY,CAAC,SAAS,GAAG;IACvB,IAAI,EAAE,oBAAS,CAAC,OAAO,CAAC,oBAAS,CAAC,MAAM,CAAC,CAAC,UAAU;CACrD,CAAC;AAEF,MAAM,eAAe,GAAG,GAAG,EAAE;IAC3B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAA,kBAAU,EAAC,WAAW,CAAC,CAAC;IAEzC,MAAM,
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app/app.jsx"],"names":[],"mappings":"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"}
|
package/lib/components/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TotalSizeTypeTitle = exports.Summary = exports.SummaryItem = exports.ModuleInfo = exports.MetricsTableTitle = exports.MetricsTableSearch = exports.MetricsTableOptions = exports.MetricsTable = exports.Metric = exports.LighthouseTable = exports.JobsHeader = exports.JobHeader = exports.JobName = exports.Insights = exports.Delta = exports.ComponentLink = exports.BundleModules = exports.BundlePackages = exports.BundleAssetsTotalsChartBars = exports.BundleAssetsTotalsTable = exports.BundleAssets = exports.BrowsertimeTable = void 0;
|
|
3
|
+
exports.TotalSizeTypeTitle = exports.Summary = exports.SummaryItem = exports.ModuleInfo = exports.MetricsTableTitle = exports.MetricsTableSearch = exports.MetricsTableOptions = exports.MetricsTable = exports.Metric = exports.LighthouseTable = exports.JobsHeader = exports.JobHeader = exports.JobName = exports.Insights = exports.InsightIcon = exports.Delta = exports.ComponentLink = exports.BundleModules = exports.BundlePackages = exports.BundleAssetsTotalsChartBars = exports.BundleAssetsTotalsTable = exports.BundleAssets = exports.BrowsertimeTable = void 0;
|
|
4
4
|
var browsertime_table_1 = require("./browsertime-table");
|
|
5
5
|
Object.defineProperty(exports, "BrowsertimeTable", { enumerable: true, get: function () { return browsertime_table_1.BrowsertimeTable; } });
|
|
6
6
|
var bundle_assets_1 = require("./bundle-assets");
|
|
@@ -17,6 +17,8 @@ var component_link_1 = require("./component-link");
|
|
|
17
17
|
Object.defineProperty(exports, "ComponentLink", { enumerable: true, get: function () { return component_link_1.ComponentLink; } });
|
|
18
18
|
var delta_1 = require("./delta");
|
|
19
19
|
Object.defineProperty(exports, "Delta", { enumerable: true, get: function () { return delta_1.Delta; } });
|
|
20
|
+
var insight_icon_1 = require("./insight-icon");
|
|
21
|
+
Object.defineProperty(exports, "InsightIcon", { enumerable: true, get: function () { return insight_icon_1.InsightIcon; } });
|
|
20
22
|
var insights_1 = require("./insights");
|
|
21
23
|
Object.defineProperty(exports, "Insights", { enumerable: true, get: function () { return insights_1.Insights; } });
|
|
22
24
|
var job_name_1 = require("./job-name");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.js"],"names":[],"mappings":";;;AAAA,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AACzB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,2EAAuE;AAA9D,qIAAA,uBAAuB,OAAA;AAChC,qFAAgF;AAAvE,8IAAA,2BAA2B,OAAA;AACpC,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AACtB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AACtB,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AACd,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,uCAAqC;AAA5B,mGAAA,OAAO,OAAA;AAChB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAClB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AACxB,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,iEAA8D;AAArD,4HAAA,mBAAmB,OAAA;AAC5B,+DAA4D;AAAnD,0HAAA,kBAAkB,OAAA;AAC3B,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAC1B,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,iEAA6D;AAApD,2HAAA,kBAAkB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.js"],"names":[],"mappings":";;;AAAA,yDAAuD;AAA9C,qHAAA,gBAAgB,OAAA;AACzB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,2EAAuE;AAA9D,qIAAA,uBAAuB,OAAA;AAChC,qFAAgF;AAAvE,8IAAA,2BAA2B,OAAA;AACpC,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AACtB,mDAAiD;AAAxC,+GAAA,aAAa,OAAA;AACtB,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AACd,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,uCAAqC;AAA5B,mGAAA,OAAO,OAAA;AAChB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA;AAClB,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AACxB,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AACrB,iEAA8D;AAArD,4HAAA,mBAAmB,OAAA;AAC5B,+DAA4D;AAAnD,0HAAA,kBAAkB,OAAA;AAC3B,6DAA0D;AAAjD,wHAAA,iBAAiB,OAAA;AAC1B,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AACnB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AACpB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,iEAA6D;AAApD,2HAAA,kBAAkB,OAAA"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./insight-icon"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/insight-icon/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.InsightIcon = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const classnames_1 = __importDefault(require("classnames"));
|
|
9
|
+
const utils_1 = require("@bundle-stats/utils");
|
|
10
|
+
const icon_1 = require("../../ui/icon");
|
|
11
|
+
const insight_icon_module_css_1 = __importDefault(require("./insight-icon.module.css"));
|
|
12
|
+
const InsightTypeIconMap = new Map([
|
|
13
|
+
[utils_1.InsightType.ERROR, icon_1.Icon.ICONS.ERROR],
|
|
14
|
+
[utils_1.InsightType.WARNING, icon_1.Icon.ICONS.WARNING],
|
|
15
|
+
[utils_1.InsightType.INFO, icon_1.Icon.ICONS.INFO],
|
|
16
|
+
]);
|
|
17
|
+
const InsightIcon = (props) => {
|
|
18
|
+
const { className, type } = props;
|
|
19
|
+
const resolvedType = Object.values(utils_1.InsightType).includes(type) ? type : utils_1.InsightType.WARNING;
|
|
20
|
+
const rootClassName = (0, classnames_1.default)(insight_icon_module_css_1.default.root, insight_icon_module_css_1.default[resolvedType], className);
|
|
21
|
+
const glyph = InsightTypeIconMap.get(resolvedType);
|
|
22
|
+
return react_1.default.createElement(icon_1.Icon, { glyph: glyph, className: rootClassName });
|
|
23
|
+
};
|
|
24
|
+
exports.InsightIcon = InsightIcon;
|
|
25
|
+
//# sourceMappingURL=insight-icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insight-icon.js","sourceRoot":"","sources":["../../../src/components/insight-icon/insight-icon.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,4DAA4B;AAC5B,+CAAkD;AAElD,wCAAqC;AAErC,wFAA4C;AAE5C,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,CAAC,mBAAW,CAAC,KAAK,EAAE,WAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IACrC,CAAC,mBAAW,CAAC,OAAO,EAAE,WAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IACzC,CAAC,mBAAW,CAAC,IAAI,EAAE,WAAI,CAAC,KAAK,CAAC,IAAI,CAAC;CACpC,CAAC,CAAC;AAMI,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;IACrD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAClC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAW,CAAC,OAAO,CAAC;IAC5F,MAAM,aAAa,GAAG,IAAA,oBAAE,EAAC,iCAAG,CAAC,IAAI,EAAE,iCAAG,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAW,CAAC;IAE7D,OAAO,8BAAC,WAAI,IAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,GAAI,CAAC;AAC1D,CAAC,CAAC;AAPW,QAAA,WAAW,eAOtB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
.root {
|
|
2
|
+
width: calc(var(--space-small) + 6px);
|
|
3
|
+
height: calc(var(--space-small) + 6px);
|
|
4
|
+
padding: 3px;
|
|
5
|
+
border-radius: 50%;
|
|
6
|
+
background: var(--color-highlight);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.error {
|
|
10
|
+
background: var(--color-red-50);
|
|
11
|
+
color: var(--color-danger);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.warning {
|
|
15
|
+
padding-top: 1px;
|
|
16
|
+
background: var(--color-yellow-200);
|
|
17
|
+
color: var(--color-yellow-900);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.info {
|
|
21
|
+
background: var(--color-highlight-info);
|
|
22
|
+
color: var(--color-info);
|
|
23
|
+
}
|
|
24
|
+
|
|
@@ -5,26 +5,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.Insights = void 0;
|
|
7
7
|
const react_1 = __importDefault(require("react"));
|
|
8
|
-
const classnames_1 = __importDefault(require("classnames"));
|
|
9
8
|
const utils_1 = require("@bundle-stats/utils");
|
|
10
9
|
const flex_stack_1 = require("../../layout/flex-stack");
|
|
11
10
|
const stack_1 = require("../../layout/stack");
|
|
12
|
-
const icon_1 = require("../../ui/icon");
|
|
13
11
|
const component_link_1 = require("../component-link");
|
|
12
|
+
const insight_icon_1 = require("../insight-icon");
|
|
14
13
|
const insights_module_css_1 = __importDefault(require("./insights.module.css"));
|
|
15
|
-
const InsightTypeIconMap = new Map([
|
|
16
|
-
[utils_1.InsightType.ERROR, icon_1.Icon.ICONS.ERROR],
|
|
17
|
-
[utils_1.InsightType.WARNING, icon_1.Icon.ICONS.WARNING],
|
|
18
|
-
[utils_1.InsightType.INFO, icon_1.Icon.ICONS.INFO],
|
|
19
|
-
]);
|
|
20
14
|
const Insights = (props) => {
|
|
21
|
-
const {
|
|
22
|
-
const
|
|
23
|
-
return (react_1.default.createElement(stack_1.Stack, { space: "xxsmall", ...restProps },
|
|
24
|
-
const glyph = InsightTypeIconMap.get(insight.type);
|
|
15
|
+
const { insights, customComponentLink: CustomComponentLink = component_link_1.ComponentLink, ...restProps } = props;
|
|
16
|
+
const insightList = (0, utils_1.getInsightList)(insights);
|
|
17
|
+
return (react_1.default.createElement(stack_1.Stack, { space: "xxsmall", ...restProps }, insightList.map(({ name, insight, link }) => {
|
|
25
18
|
const { text } = insight.data;
|
|
26
|
-
return (react_1.default.createElement(flex_stack_1.FlexStack, { key: name, space: "xxsmall", alignItems: "center", as: CustomComponentLink, ...link, className:
|
|
27
|
-
|
|
19
|
+
return (react_1.default.createElement(flex_stack_1.FlexStack, { key: name, space: "xxsmall", alignItems: "center", as: CustomComponentLink, ...link, className: insights_module_css_1.default.entry },
|
|
20
|
+
react_1.default.createElement(insight_icon_1.InsightIcon, { type: insight.type, className: insights_module_css_1.default.icon }),
|
|
28
21
|
react_1.default.createElement("span", null, text)));
|
|
29
22
|
})));
|
|
30
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insights.js","sourceRoot":"","sources":["../../../src/components/insights/insights.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B
|
|
1
|
+
{"version":3,"file":"insights.js","sourceRoot":"","sources":["../../../src/components/insights/insights.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,+CAAsE;AAEtE,wDAAoD;AACpD,8CAA2C;AAC3C,sDAAkD;AAClD,kDAA8C;AAE9C,gFAAwC;AAOjC,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC/C,MAAM,EACJ,QAAQ,EACR,mBAAmB,EAAE,mBAAmB,GAAG,8BAAa,EACxD,GAAG,SAAS,EACb,GAAG,KAAK,CAAC;IAEV,MAAM,WAAW,GAAG,IAAA,sBAAc,EAAC,QAAQ,CAAC,CAAC;IAE7C,OAAO,CACL,8BAAC,aAAK,IAAC,KAAK,EAAC,SAAS,KAAK,SAAS,IACjC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE;QAC3C,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAwB,CAAC;QAClD,OAAO,CACL,8BAAC,sBAAS,IACR,GAAG,EAAE,IAAI,EACT,KAAK,EAAC,SAAS,EACf,UAAU,EAAC,QAAQ,EACnB,EAAE,EAAE,mBAAmB,KACnB,IAAI,EACR,SAAS,EAAE,6BAAG,CAAC,KAAK;YAEpB,8BAAC,0BAAW,IAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,6BAAG,CAAC,IAAI,GAAI;YACxD,4CAAO,IAAI,CAAQ,CACT,CACb,CAAC;IACJ,CAAC,CAAC,CACI,CACT,CAAC;AACJ,CAAC,CAAC;AA7BW,QAAA,QAAQ,YA6BnB"}
|
|
@@ -1,26 +1,5 @@
|
|
|
1
1
|
.icon {
|
|
2
2
|
flex: 0 0 auto;
|
|
3
|
-
width: calc(var(--space-small) + 6px);
|
|
4
|
-
height: calc(var(--space-small) + 6px);
|
|
5
|
-
padding: 3px;
|
|
6
|
-
border-radius: 50%;
|
|
7
|
-
background: var(--color-highlight);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
.error .icon {
|
|
11
|
-
background: var(--color-red-50);
|
|
12
|
-
color: var(--color-danger);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.warning .icon {
|
|
16
|
-
padding-top: 1px;
|
|
17
|
-
background: var(--color-yellow-200);
|
|
18
|
-
color: var(--color-yellow-900);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.info .icon {
|
|
22
|
-
background: var(--color-highlight-info);
|
|
23
|
-
color: var(--color-info);
|
|
24
3
|
}
|
|
25
4
|
|
|
26
5
|
.entry {
|
package/lib-esm/app/app.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { useContext, useEffect, useMemo } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
+
import isEmpty from 'lodash/isEmpty';
|
|
3
4
|
import { HashRouter, NavLink, Route, Switch, useLocation } from 'react-router-dom';
|
|
4
5
|
import { COMPONENT } from '@bundle-stats/utils';
|
|
5
6
|
import { METRICS_WEBPACK_ASSETS, METRICS_WEBPACK_GENERAL, METRICS_WEBPACK_MODULES, METRICS_WEBPACK_PACKAGES, URLS, } from '../constants';
|
|
@@ -49,17 +50,28 @@ JobsProvider.propTypes = {
|
|
|
49
50
|
jobs: PropTypes.arrayOf(PropTypes.object).isRequired,
|
|
50
51
|
};
|
|
51
52
|
const OverviewContent = () => {
|
|
52
|
-
var _a, _b, _c, _d, _e;
|
|
53
53
|
const { jobs } = useContext(JobsContext);
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
const insightsByName = useMemo(() => {
|
|
55
|
+
var _a, _b;
|
|
56
|
+
const webpackInsights = (_b = (_a = jobs === null || jobs === void 0 ? void 0 : jobs[0]) === null || _a === void 0 ? void 0 : _a.insights) === null || _b === void 0 ? void 0 : _b.webpack;
|
|
57
|
+
if (!webpackInsights) {
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
const res = {
|
|
61
|
+
...(webpackInsights.duplicatePackagesV3 && { duplicatePackages: webpackInsights.duplicatePackagesV3 }),
|
|
62
|
+
...(webpackInsights.newPackages && { newPackages: webpackInsights.newPackages }),
|
|
63
|
+
};
|
|
64
|
+
if (isEmpty(res)) {
|
|
65
|
+
return null;
|
|
66
|
+
}
|
|
67
|
+
return res;
|
|
68
|
+
}, [jobs]);
|
|
57
69
|
return (React.createElement(Stack, { space: "medium" },
|
|
58
|
-
|
|
70
|
+
insightsByName && (React.createElement(Container, null,
|
|
59
71
|
React.createElement(Stack, { space: "xsmall" },
|
|
60
72
|
React.createElement(MetricsTableTitle, { title: "Insights" }),
|
|
61
73
|
React.createElement(Box, { padding: "small", outline: true },
|
|
62
|
-
React.createElement(Insights, {
|
|
74
|
+
React.createElement(Insights, { insights: insightsByName }))))),
|
|
63
75
|
React.createElement(Container, null,
|
|
64
76
|
React.createElement(Stack, { space: "small" },
|
|
65
77
|
React.createElement(TotalSizeTypeTitle, null),
|
package/lib-esm/app/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app/app.jsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/app/app.jsx"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export { BundlePackages } from './bundle-packages';
|
|
|
6
6
|
export { BundleModules } from './bundle-modules';
|
|
7
7
|
export { ComponentLink } from './component-link';
|
|
8
8
|
export { Delta } from './delta';
|
|
9
|
+
export { InsightIcon } from './insight-icon';
|
|
9
10
|
export { Insights } from './insights';
|
|
10
11
|
export { JobName } from './job-name';
|
|
11
12
|
export { JobHeader } from './job-header';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/insight-icon/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import cx from 'classnames';
|
|
3
|
+
import { InsightType } from '@bundle-stats/utils';
|
|
4
|
+
import { Icon } from '../../ui/icon';
|
|
5
|
+
import css from './insight-icon.module.css';
|
|
6
|
+
const InsightTypeIconMap = new Map([
|
|
7
|
+
[InsightType.ERROR, Icon.ICONS.ERROR],
|
|
8
|
+
[InsightType.WARNING, Icon.ICONS.WARNING],
|
|
9
|
+
[InsightType.INFO, Icon.ICONS.INFO],
|
|
10
|
+
]);
|
|
11
|
+
export const InsightIcon = (props) => {
|
|
12
|
+
const { className, type } = props;
|
|
13
|
+
const resolvedType = Object.values(InsightType).includes(type) ? type : InsightType.WARNING;
|
|
14
|
+
const rootClassName = cx(css.root, css[resolvedType], className);
|
|
15
|
+
const glyph = InsightTypeIconMap.get(resolvedType);
|
|
16
|
+
return React.createElement(Icon, { glyph: glyph, className: rootClassName });
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=insight-icon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insight-icon.js","sourceRoot":"","sources":["../../../src/components/insight-icon/insight-icon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,OAAO,GAAG,MAAM,2BAA2B,CAAC;AAE5C,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IACrC,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IACzC,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;CACpC,CAAC,CAAC;AAMH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAE,EAAE;IACrD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAClC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC;IAC5F,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAW,CAAC;IAE7D,OAAO,oBAAC,IAAI,IAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,GAAI,CAAC;AAC1D,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
.root {
|
|
2
|
+
width: calc(var(--space-small) + 6px);
|
|
3
|
+
height: calc(var(--space-small) + 6px);
|
|
4
|
+
padding: 3px;
|
|
5
|
+
border-radius: 50%;
|
|
6
|
+
background: var(--color-highlight);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.error {
|
|
10
|
+
background: var(--color-red-50);
|
|
11
|
+
color: var(--color-danger);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.warning {
|
|
15
|
+
padding-top: 1px;
|
|
16
|
+
background: var(--color-yellow-200);
|
|
17
|
+
color: var(--color-yellow-900);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.info {
|
|
21
|
+
background: var(--color-highlight-info);
|
|
22
|
+
color: var(--color-info);
|
|
23
|
+
}
|
|
24
|
+
|
|
@@ -1,24 +1,17 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
3
|
-
import { InsightType, getInsightList } from '@bundle-stats/utils';
|
|
2
|
+
import { getInsightList } from '@bundle-stats/utils';
|
|
4
3
|
import { FlexStack } from '../../layout/flex-stack';
|
|
5
4
|
import { Stack } from '../../layout/stack';
|
|
6
|
-
import { Icon } from '../../ui/icon';
|
|
7
5
|
import { ComponentLink } from '../component-link';
|
|
6
|
+
import { InsightIcon } from '../insight-icon';
|
|
8
7
|
import css from './insights.module.css';
|
|
9
|
-
const InsightTypeIconMap = new Map([
|
|
10
|
-
[InsightType.ERROR, Icon.ICONS.ERROR],
|
|
11
|
-
[InsightType.WARNING, Icon.ICONS.WARNING],
|
|
12
|
-
[InsightType.INFO, Icon.ICONS.INFO],
|
|
13
|
-
]);
|
|
14
8
|
export const Insights = (props) => {
|
|
15
|
-
const {
|
|
16
|
-
const
|
|
17
|
-
return (React.createElement(Stack, { space: "xxsmall", ...restProps },
|
|
18
|
-
const glyph = InsightTypeIconMap.get(insight.type);
|
|
9
|
+
const { insights, customComponentLink: CustomComponentLink = ComponentLink, ...restProps } = props;
|
|
10
|
+
const insightList = getInsightList(insights);
|
|
11
|
+
return (React.createElement(Stack, { space: "xxsmall", ...restProps }, insightList.map(({ name, insight, link }) => {
|
|
19
12
|
const { text } = insight.data;
|
|
20
|
-
return (React.createElement(FlexStack, { key: name, space: "xxsmall", alignItems: "center", as: CustomComponentLink, ...link, className:
|
|
21
|
-
|
|
13
|
+
return (React.createElement(FlexStack, { key: name, space: "xxsmall", alignItems: "center", as: CustomComponentLink, ...link, className: css.entry },
|
|
14
|
+
React.createElement(InsightIcon, { type: insight.type, className: css.icon }),
|
|
22
15
|
React.createElement("span", null, text)));
|
|
23
16
|
})));
|
|
24
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insights.js","sourceRoot":"","sources":["../../../src/components/insights/insights.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,
|
|
1
|
+
{"version":3,"file":"insights.js","sourceRoot":"","sources":["../../../src/components/insights/insights.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAmB,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,GAAG,MAAM,uBAAuB,CAAC;AAOxC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAoB,EAAE,EAAE;IAC/C,MAAM,EACJ,QAAQ,EACR,mBAAmB,EAAE,mBAAmB,GAAG,aAAa,EACxD,GAAG,SAAS,EACb,GAAG,KAAK,CAAC;IAEV,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE7C,OAAO,CACL,oBAAC,KAAK,IAAC,KAAK,EAAC,SAAS,KAAK,SAAS,IACjC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE;QAC3C,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAwB,CAAC;QAClD,OAAO,CACL,oBAAC,SAAS,IACR,GAAG,EAAE,IAAI,EACT,KAAK,EAAC,SAAS,EACf,UAAU,EAAC,QAAQ,EACnB,EAAE,EAAE,mBAAmB,KACnB,IAAI,EACR,SAAS,EAAE,GAAG,CAAC,KAAK;YAEpB,oBAAC,WAAW,IAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,IAAI,GAAI;YACxD,kCAAO,IAAI,CAAQ,CACT,CACb,CAAC;IACJ,CAAC,CAAC,CACI,CACT,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -1,26 +1,5 @@
|
|
|
1
1
|
.icon {
|
|
2
2
|
flex: 0 0 auto;
|
|
3
|
-
width: calc(var(--space-small) + 6px);
|
|
4
|
-
height: calc(var(--space-small) + 6px);
|
|
5
|
-
padding: 3px;
|
|
6
|
-
border-radius: 50%;
|
|
7
|
-
background: var(--color-highlight);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
.error .icon {
|
|
11
|
-
background: var(--color-red-50);
|
|
12
|
-
color: var(--color-danger);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.warning .icon {
|
|
16
|
-
padding-top: 1px;
|
|
17
|
-
background: var(--color-yellow-200);
|
|
18
|
-
color: var(--color-yellow-900);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.info .icon {
|
|
22
|
-
background: var(--color-highlight-info);
|
|
23
|
-
color: var(--color-info);
|
|
24
3
|
}
|
|
25
4
|
|
|
26
5
|
.entry {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bundle-stats/ui",
|
|
3
|
-
"version": "4.2.
|
|
3
|
+
"version": "4.2.2",
|
|
4
4
|
"description": "UI components for BundleStats projects.",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib-esm/index.js",
|
|
@@ -58,9 +58,9 @@
|
|
|
58
58
|
"enzyme-to-json": "3.6.2",
|
|
59
59
|
"hex-rgb": "5.0.0",
|
|
60
60
|
"identity-obj-proxy": "3.0.0",
|
|
61
|
-
"jest": "29.4.
|
|
61
|
+
"jest": "29.4.3",
|
|
62
62
|
"jest-date-mock": "1.0.8",
|
|
63
|
-
"jest-environment-jsdom": "29.4.
|
|
63
|
+
"jest-environment-jsdom": "29.4.3",
|
|
64
64
|
"lodash": "4.17.21",
|
|
65
65
|
"postcss": "8.4.21",
|
|
66
66
|
"prop-types": "15.8.1",
|
|
@@ -80,11 +80,11 @@
|
|
|
80
80
|
"react-router-dom": "^5.0.0"
|
|
81
81
|
},
|
|
82
82
|
"dependencies": {
|
|
83
|
-
"@bundle-stats/utils": "^4.2.
|
|
83
|
+
"@bundle-stats/utils": "^4.2.2",
|
|
84
84
|
"ariakit": "2.0.0-next.43",
|
|
85
85
|
"modern-css-reset": "1.4.0",
|
|
86
86
|
"query-string": "7.1.3",
|
|
87
87
|
"use-query-params": "2.2.0"
|
|
88
88
|
},
|
|
89
|
-
"gitHead": "
|
|
89
|
+
"gitHead": "ee8246cd2e7b42961dd44f261e92b7433dbb8090"
|
|
90
90
|
}
|
package/src/app/app.jsx
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { useContext, useEffect, useMemo } from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
+
import isEmpty from 'lodash/isEmpty';
|
|
3
4
|
import { HashRouter, NavLink, Route, Switch, useLocation } from 'react-router-dom';
|
|
4
5
|
import { COMPONENT } from '@bundle-stats/utils';
|
|
5
6
|
|
|
@@ -70,24 +71,34 @@ JobsProvider.propTypes = {
|
|
|
70
71
|
const OverviewContent = () => {
|
|
71
72
|
const { jobs } = useContext(JobsContext);
|
|
72
73
|
|
|
73
|
-
const
|
|
74
|
-
|
|
74
|
+
const insightsByName = useMemo(() => {
|
|
75
|
+
const webpackInsights = jobs?.[0]?.insights?.webpack;
|
|
76
|
+
|
|
77
|
+
if (!webpackInsights) {
|
|
78
|
+
return null
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
const res = {
|
|
82
|
+
...(webpackInsights.duplicatePackagesV3 && { duplicatePackages: webpackInsights.duplicatePackagesV3 }),
|
|
83
|
+
...(webpackInsights.newPackages && { newPackages: webpackInsights.newPackages }),
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
if (isEmpty(res)) {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
return res;
|
|
91
|
+
}, [jobs]);
|
|
75
92
|
|
|
76
|
-
console.info(duplicatePackagesInsight, newPackagesInsight);
|
|
77
93
|
|
|
78
94
|
return (
|
|
79
95
|
<Stack space="medium">
|
|
80
|
-
{
|
|
96
|
+
{insightsByName && (
|
|
81
97
|
<Container>
|
|
82
98
|
<Stack space="xsmall">
|
|
83
99
|
<MetricsTableTitle title="Insights" />
|
|
84
100
|
<Box padding="small" outline>
|
|
85
|
-
<Insights
|
|
86
|
-
duplicatePackages={duplicatePackagesInsight}
|
|
87
|
-
newPackages={newPackagesInsight}
|
|
88
|
-
summary={jobs[0].summary?.webpack}
|
|
89
|
-
showDelta={jobs.length > 1}
|
|
90
|
-
/>
|
|
101
|
+
<Insights insights={insightsByName} />
|
|
91
102
|
</Box>
|
|
92
103
|
</Stack>
|
|
93
104
|
</Container>
|
package/src/components/index.js
CHANGED
|
@@ -6,6 +6,7 @@ export { BundlePackages } from './bundle-packages';
|
|
|
6
6
|
export { BundleModules } from './bundle-modules';
|
|
7
7
|
export { ComponentLink } from './component-link';
|
|
8
8
|
export { Delta } from './delta';
|
|
9
|
+
export { InsightIcon } from './insight-icon';
|
|
9
10
|
export { Insights } from './insights';
|
|
10
11
|
export { JobName } from './job-name';
|
|
11
12
|
export { JobHeader } from './job-header';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './insight-icon';
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
.root {
|
|
2
|
+
width: calc(var(--space-small) + 6px);
|
|
3
|
+
height: calc(var(--space-small) + 6px);
|
|
4
|
+
padding: 3px;
|
|
5
|
+
border-radius: 50%;
|
|
6
|
+
background: var(--color-highlight);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.error {
|
|
10
|
+
background: var(--color-red-50);
|
|
11
|
+
color: var(--color-danger);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.warning {
|
|
15
|
+
padding-top: 1px;
|
|
16
|
+
background: var(--color-yellow-200);
|
|
17
|
+
color: var(--color-yellow-900);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.info {
|
|
21
|
+
background: var(--color-highlight-info);
|
|
22
|
+
color: var(--color-info);
|
|
23
|
+
}
|
|
24
|
+
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import cx from 'classnames';
|
|
3
|
+
import { InsightType } from '@bundle-stats/utils';
|
|
4
|
+
|
|
5
|
+
import { Icon } from '../../ui/icon';
|
|
6
|
+
// @ts-ignore
|
|
7
|
+
import css from './insight-icon.module.css';
|
|
8
|
+
|
|
9
|
+
const InsightTypeIconMap = new Map([
|
|
10
|
+
[InsightType.ERROR, Icon.ICONS.ERROR],
|
|
11
|
+
[InsightType.WARNING, Icon.ICONS.WARNING],
|
|
12
|
+
[InsightType.INFO, Icon.ICONS.INFO],
|
|
13
|
+
]);
|
|
14
|
+
|
|
15
|
+
interface InsightIconProps extends React.HTMLAttributes<'span'> {
|
|
16
|
+
type: InsightType;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export const InsightIcon = (props: InsightIconProps) => {
|
|
20
|
+
const { className, type } = props;
|
|
21
|
+
const resolvedType = Object.values(InsightType).includes(type) ? type : InsightType.WARNING;
|
|
22
|
+
const rootClassName = cx(css.root, css[resolvedType], className);
|
|
23
|
+
const glyph = InsightTypeIconMap.get(resolvedType) as string;
|
|
24
|
+
|
|
25
|
+
return <Icon glyph={glyph} className={rootClassName} />;
|
|
26
|
+
};
|
|
27
|
+
|
|
@@ -1,26 +1,5 @@
|
|
|
1
1
|
.icon {
|
|
2
2
|
flex: 0 0 auto;
|
|
3
|
-
width: calc(var(--space-small) + 6px);
|
|
4
|
-
height: calc(var(--space-small) + 6px);
|
|
5
|
-
padding: 3px;
|
|
6
|
-
border-radius: 50%;
|
|
7
|
-
background: var(--color-highlight);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
.error .icon {
|
|
11
|
-
background: var(--color-red-50);
|
|
12
|
-
color: var(--color-danger);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
.warning .icon {
|
|
16
|
-
padding-top: 1px;
|
|
17
|
-
background: var(--color-yellow-200);
|
|
18
|
-
color: var(--color-yellow-900);
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
.info .icon {
|
|
22
|
-
background: var(--color-highlight-info);
|
|
23
|
-
color: var(--color-info);
|
|
24
3
|
}
|
|
25
4
|
|
|
26
5
|
.entry {
|
|
@@ -14,18 +14,20 @@ const Template = (props: any) => <Insights {...props} />;
|
|
|
14
14
|
export const Default = Template.bind({});
|
|
15
15
|
|
|
16
16
|
Default.args = {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
17
|
+
insights: {
|
|
18
|
+
duplicatePackages: {
|
|
19
|
+
type: 'error',
|
|
20
|
+
data: {
|
|
21
|
+
packages: { 'package-a': ['package-a', 'package-a~1'] },
|
|
22
|
+
text: 'Bundle introduced 1 and removed 2 duplicate packages',
|
|
23
|
+
},
|
|
22
24
|
},
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
newPackages: {
|
|
26
|
+
type: 'warning',
|
|
27
|
+
data: {
|
|
28
|
+
text: 'Bundle introduced 2 new packages: package-c, package-d',
|
|
29
|
+
packages: ['package-c', 'package-d'],
|
|
30
|
+
},
|
|
29
31
|
},
|
|
30
32
|
},
|
|
31
33
|
};
|
|
@@ -33,18 +35,20 @@ Default.args = {
|
|
|
33
35
|
export const Info = Template.bind({});
|
|
34
36
|
|
|
35
37
|
Info.args = {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
insights: {
|
|
39
|
+
duplicatePackages: {
|
|
40
|
+
type: 'info',
|
|
41
|
+
data: {
|
|
42
|
+
packages: { 'package-a': ['package-a', 'package-a~1'] },
|
|
43
|
+
text: 'Bundle removed 1 duplicate packages',
|
|
44
|
+
},
|
|
41
45
|
},
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
newPackages: {
|
|
47
|
+
type: 'warning',
|
|
48
|
+
data: {
|
|
49
|
+
text: 'Bundle introduced 2 new packages: package-c, package-d',
|
|
50
|
+
packages: ['package-c', 'package-d'],
|
|
51
|
+
},
|
|
48
52
|
},
|
|
49
53
|
},
|
|
50
54
|
};
|
|
@@ -1,42 +1,31 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
3
|
-
import { InsightType, getInsightList } from '@bundle-stats/utils';
|
|
2
|
+
import { JobInsightsInfo, getInsightList } from '@bundle-stats/utils';
|
|
4
3
|
|
|
5
4
|
import { FlexStack } from '../../layout/flex-stack';
|
|
6
5
|
import { Stack } from '../../layout/stack';
|
|
7
|
-
import { Icon } from '../../ui/icon';
|
|
8
6
|
import { ComponentLink } from '../component-link';
|
|
7
|
+
import { InsightIcon } from '../insight-icon';
|
|
9
8
|
// @ts-ignore
|
|
10
9
|
import css from './insights.module.css';
|
|
11
10
|
|
|
12
|
-
const InsightTypeIconMap = new Map([
|
|
13
|
-
[InsightType.ERROR, Icon.ICONS.ERROR],
|
|
14
|
-
[InsightType.WARNING, Icon.ICONS.WARNING],
|
|
15
|
-
[InsightType.INFO, Icon.ICONS.INFO],
|
|
16
|
-
]);
|
|
17
|
-
|
|
18
11
|
interface InsightsProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
19
|
-
|
|
20
|
-
newPackages: any;
|
|
12
|
+
insights: JobInsightsInfo;
|
|
21
13
|
customComponentLink?: React.ElementType;
|
|
22
14
|
}
|
|
23
15
|
|
|
24
16
|
export const Insights = (props: InsightsProps) => {
|
|
25
17
|
const {
|
|
26
|
-
|
|
27
|
-
newPackages,
|
|
18
|
+
insights,
|
|
28
19
|
customComponentLink: CustomComponentLink = ComponentLink,
|
|
29
20
|
...restProps
|
|
30
21
|
} = props;
|
|
31
22
|
|
|
32
|
-
const
|
|
23
|
+
const insightList = getInsightList(insights);
|
|
33
24
|
|
|
34
25
|
return (
|
|
35
26
|
<Stack space="xxsmall" {...restProps}>
|
|
36
|
-
{
|
|
37
|
-
const glyph = InsightTypeIconMap.get(insight.type);
|
|
27
|
+
{insightList.map(({ name, insight, link }) => {
|
|
38
28
|
const { text } = insight.data as { text: string };
|
|
39
|
-
|
|
40
29
|
return (
|
|
41
30
|
<FlexStack
|
|
42
31
|
key={name}
|
|
@@ -44,9 +33,9 @@ export const Insights = (props: InsightsProps) => {
|
|
|
44
33
|
alignItems="center"
|
|
45
34
|
as={CustomComponentLink}
|
|
46
35
|
{...link}
|
|
47
|
-
className={
|
|
36
|
+
className={css.entry}
|
|
48
37
|
>
|
|
49
|
-
|
|
38
|
+
<InsightIcon type={insight.type} className={css.icon} />
|
|
50
39
|
<span>{text}</span>
|
|
51
40
|
</FlexStack>
|
|
52
41
|
);
|
|
@@ -6,6 +6,7 @@ export { BundlePackages } from "./bundle-packages";
|
|
|
6
6
|
export { BundleModules } from "./bundle-modules";
|
|
7
7
|
export { ComponentLink } from "./component-link";
|
|
8
8
|
export { Delta } from "./delta";
|
|
9
|
+
export { InsightIcon } from "./insight-icon";
|
|
9
10
|
export { Insights } from "./insights";
|
|
10
11
|
export { JobName } from "./job-name";
|
|
11
12
|
export { JobHeader } from "./job-header";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './insight-icon';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import { JobInsightsInfo } from '@bundle-stats/utils';
|
|
2
3
|
interface InsightsProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
3
|
-
|
|
4
|
-
newPackages: any;
|
|
4
|
+
insights: JobInsightsInfo;
|
|
5
5
|
customComponentLink?: React.ElementType;
|
|
6
6
|
}
|
|
7
7
|
export declare const Insights: (props: InsightsProps) => JSX.Element;
|