@bundle-stats/utils 4.7.5-beta.0 → 4.7.5-beta.3
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/browsertime/metrics.js +22 -22
- package/lib/browsertime/metrics.js.map +1 -1
- package/lib/config/index.js +1 -2
- package/lib/config/index.js.map +1 -1
- package/lib/config/metric-types.js +28 -0
- package/lib/config/metric-types.js.map +1 -0
- package/lib/constants.js +9 -19
- package/lib/constants.js.map +1 -1
- package/lib/lighthouse/metrics.js +13 -13
- package/lib/lighthouse/metrics.js.map +1 -1
- package/lib/report/add-row-metric-data.js +2 -2
- package/lib/report/add-row-metric-data.js.map +1 -1
- package/lib/report/create.js.map +1 -1
- package/lib/utils/delta.js +29 -26
- package/lib/utils/delta.js.map +1 -1
- package/lib/utils/metrics.js +47 -29
- package/lib/utils/metrics.js.map +1 -1
- package/lib/webpack/compare.js +11 -11
- package/lib/webpack/compare.js.map +1 -1
- package/lib/webpack/metrics.js +23 -23
- package/lib/webpack/metrics.js.map +1 -1
- package/lib-esm/browsertime/metrics.js +22 -22
- package/lib-esm/browsertime/metrics.js.map +1 -1
- package/lib-esm/config/index.js +1 -2
- package/lib-esm/config/index.js.map +1 -1
- package/lib-esm/config/metric-types.js +25 -0
- package/lib-esm/config/metric-types.js.map +1 -0
- package/lib-esm/constants.js +8 -18
- package/lib-esm/constants.js.map +1 -1
- package/lib-esm/lighthouse/metrics.js +13 -13
- package/lib-esm/lighthouse/metrics.js.map +1 -1
- package/lib-esm/report/add-row-metric-data.js +2 -2
- package/lib-esm/report/add-row-metric-data.js.map +1 -1
- package/lib-esm/report/create.js.map +1 -1
- package/lib-esm/utils/delta.js +29 -26
- package/lib-esm/utils/delta.js.map +1 -1
- package/lib-esm/utils/metrics.js +44 -27
- package/lib-esm/utils/metrics.js.map +1 -1
- package/lib-esm/webpack/compare.js +4 -4
- package/lib-esm/webpack/compare.js.map +1 -1
- package/lib-esm/webpack/metrics.js +24 -24
- package/lib-esm/webpack/metrics.js.map +1 -1
- package/package.json +4 -4
- package/src/browsertime/metrics.js +22 -22
- package/src/config/index.js +1 -2
- package/src/config/metric-types.ts +25 -0
- package/src/constants.ts +64 -28
- package/src/lighthouse/metrics.js +13 -15
- package/src/report/add-row-metric-data.ts +3 -2
- package/src/report/create.ts +1 -1
- package/src/utils/delta.ts +91 -0
- package/src/utils/metrics.ts +81 -0
- package/src/webpack/compare.js +19 -12
- package/src/webpack/metrics.ts +26 -41
- package/types/browsertime/metrics.d.ts +43 -23
- package/types/config/index.d.ts +1 -2
- package/types/config/metric-types.d.ts +2 -0
- package/types/constants.d.ts +24 -22
- package/types/lighthouse/metrics.d.ts +25 -17
- package/types/report/add-row-metric-data.d.ts +4 -3
- package/types/utils/delta.d.ts +4 -6
- package/types/utils/metrics.d.ts +4 -3
- package/types/webpack/metrics.d.ts +3 -11
- package/types/webpack/utils.d.ts +1 -1
- package/lib/config/delta.js +0 -13
- package/lib/config/delta.js.map +0 -1
- package/lib/config/metrics.js +0 -32
- package/lib/config/metrics.js.map +0 -1
- package/lib-esm/config/delta.js +0 -10
- package/lib-esm/config/delta.js.map +0 -1
- package/lib-esm/config/metrics.js +0 -29
- package/lib-esm/config/metrics.js.map +0 -1
- package/src/config/delta.js +0 -11
- package/src/config/metrics.js +0 -31
- package/src/utils/delta.js +0 -94
- package/src/utils/metrics.js +0 -92
- package/types/config/delta.d.ts +0 -9
- package/types/config/metrics.d.ts +0 -6
|
@@ -1,91 +1,91 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.metrics = void 0;
|
|
4
|
-
const
|
|
4
|
+
const constants_1 = require("../constants");
|
|
5
5
|
exports.metrics = {
|
|
6
6
|
firstPaint: {
|
|
7
7
|
label: 'First Paint',
|
|
8
|
-
type:
|
|
8
|
+
type: constants_1.MetricTypes.Duration,
|
|
9
9
|
},
|
|
10
10
|
fullyLoaded: {
|
|
11
11
|
label: 'Fully Loaded',
|
|
12
|
-
type:
|
|
12
|
+
type: constants_1.MetricTypes.Duration,
|
|
13
13
|
},
|
|
14
14
|
backEndTime: {
|
|
15
15
|
label: 'BackEnd Time',
|
|
16
|
-
type:
|
|
16
|
+
type: constants_1.MetricTypes.Duration,
|
|
17
17
|
},
|
|
18
18
|
domContentLoadedTime: {
|
|
19
19
|
label: 'DOM Content Loaded Time',
|
|
20
|
-
type:
|
|
20
|
+
type: constants_1.MetricTypes.Duration,
|
|
21
21
|
},
|
|
22
22
|
domInteractiveTime: {
|
|
23
23
|
label: 'DOM Interactive Time',
|
|
24
|
-
type:
|
|
24
|
+
type: constants_1.MetricTypes.Duration,
|
|
25
25
|
},
|
|
26
26
|
domainLookupTime: {
|
|
27
27
|
label: 'Domain Lookup Time',
|
|
28
|
-
type:
|
|
28
|
+
type: constants_1.MetricTypes.Duration,
|
|
29
29
|
},
|
|
30
30
|
frontEndTime: {
|
|
31
31
|
label: 'FrontEnd Time',
|
|
32
|
-
type:
|
|
32
|
+
type: constants_1.MetricTypes.Duration,
|
|
33
33
|
},
|
|
34
34
|
pageDownloadTime: {
|
|
35
35
|
label: 'Page Download Time',
|
|
36
|
-
type:
|
|
36
|
+
type: constants_1.MetricTypes.Duration,
|
|
37
37
|
},
|
|
38
38
|
pageLoadTime: {
|
|
39
39
|
label: 'Page Load Time',
|
|
40
|
-
type:
|
|
40
|
+
type: constants_1.MetricTypes.Duration,
|
|
41
41
|
},
|
|
42
42
|
redirectionTime: {
|
|
43
43
|
label: 'Redirection Time',
|
|
44
|
-
type:
|
|
44
|
+
type: constants_1.MetricTypes.Duration,
|
|
45
45
|
},
|
|
46
46
|
serverConnectionTime: {
|
|
47
47
|
label: 'Server Connection Time',
|
|
48
|
-
type:
|
|
48
|
+
type: constants_1.MetricTypes.Duration,
|
|
49
49
|
},
|
|
50
50
|
serverResponseTime: {
|
|
51
51
|
label: 'Server Response Time',
|
|
52
|
-
type:
|
|
52
|
+
type: constants_1.MetricTypes.Duration,
|
|
53
53
|
},
|
|
54
54
|
firstContentfulPaint: {
|
|
55
55
|
label: 'First Contentful Paint',
|
|
56
|
-
type:
|
|
56
|
+
type: constants_1.MetricTypes.Duration,
|
|
57
57
|
},
|
|
58
58
|
rumSpeedIndex: {
|
|
59
59
|
label: 'RUM Speed Index',
|
|
60
|
-
type:
|
|
60
|
+
type: constants_1.MetricTypes.Duration,
|
|
61
61
|
},
|
|
62
62
|
firstVisualChange: {
|
|
63
63
|
label: 'First Visual Change',
|
|
64
|
-
type:
|
|
64
|
+
type: constants_1.MetricTypes.Duration,
|
|
65
65
|
},
|
|
66
66
|
lastVisualChange: {
|
|
67
67
|
label: 'Last Visual Change',
|
|
68
|
-
type:
|
|
68
|
+
type: constants_1.MetricTypes.Duration,
|
|
69
69
|
},
|
|
70
70
|
perceptualSpeedIndex: {
|
|
71
71
|
label: 'Perceptual SpeedIndex',
|
|
72
|
-
type:
|
|
72
|
+
type: constants_1.MetricTypes.Duration,
|
|
73
73
|
},
|
|
74
74
|
speedIndex: {
|
|
75
75
|
label: 'Speed Index',
|
|
76
|
-
type:
|
|
76
|
+
type: constants_1.MetricTypes.Duration,
|
|
77
77
|
},
|
|
78
78
|
visualComplete85: {
|
|
79
79
|
label: 'Visual Complete 85',
|
|
80
|
-
type:
|
|
80
|
+
type: constants_1.MetricTypes.Duration,
|
|
81
81
|
},
|
|
82
82
|
visualComplete95: {
|
|
83
83
|
label: 'Visual Complete 95',
|
|
84
|
-
type:
|
|
84
|
+
type: constants_1.MetricTypes.Duration,
|
|
85
85
|
},
|
|
86
86
|
visualComplete99: {
|
|
87
87
|
label: 'Visual Complete 99',
|
|
88
|
-
type:
|
|
88
|
+
type: constants_1.MetricTypes.Duration,
|
|
89
89
|
},
|
|
90
90
|
};
|
|
91
91
|
//# sourceMappingURL=metrics.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/browsertime/metrics.js"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/browsertime/metrics.js"],"names":[],"mappings":";;;AAAA,4CAA2C;AAE9B,QAAA,OAAO,GAAG;IACrB,UAAU,EAAE;QACV,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,WAAW,EAAE;QACX,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,WAAW,EAAE;QACX,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE,yBAAyB;QAChC,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,kBAAkB,EAAE;QAClB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,oBAAoB;QAC3B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,oBAAoB;QAC3B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,YAAY,EAAE;QACZ,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,eAAe,EAAE;QACf,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE,wBAAwB;QAC/B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,kBAAkB,EAAE;QAClB,KAAK,EAAE,sBAAsB;QAC7B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE,wBAAwB;QAC/B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,aAAa,EAAE;QACb,KAAK,EAAE,iBAAiB;QACxB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,iBAAiB,EAAE;QACjB,KAAK,EAAE,qBAAqB;QAC5B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,oBAAoB;QAC3B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE,uBAAuB;QAC9B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,UAAU,EAAE;QACV,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,oBAAoB;QAC3B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,oBAAoB;QAC3B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,oBAAoB;QAC3B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;CACF,CAAC"}
|
package/lib/config/index.js
CHANGED
|
@@ -17,8 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.PACKAGE_ID_SEPARATOR = exports.PACKAGES_SEPARATOR = void 0;
|
|
18
18
|
__exportStar(require("./component-links"), exports);
|
|
19
19
|
__exportStar(require("./file-types"), exports);
|
|
20
|
-
__exportStar(require("./
|
|
21
|
-
__exportStar(require("./delta"), exports);
|
|
20
|
+
__exportStar(require("./metric-types"), exports);
|
|
22
21
|
exports.PACKAGES_SEPARATOR = ':';
|
|
23
22
|
exports.PACKAGE_ID_SEPARATOR = '~';
|
|
24
23
|
//# sourceMappingURL=index.js.map
|
package/lib/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,+CAA6B;AAC7B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,+CAA6B;AAC7B,iDAA+B;AAElB,QAAA,kBAAkB,GAAG,GAAG,CAAC;AACzB,QAAA,oBAAoB,GAAG,GAAG,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.METRIC_TYPE_CONFIGS = void 0;
|
|
4
|
+
const format_1 = require("../utils/format");
|
|
5
|
+
const constants_1 = require("../constants");
|
|
6
|
+
exports.METRIC_TYPE_CONFIGS = {
|
|
7
|
+
[constants_1.MetricTypes.Numeric]: {
|
|
8
|
+
biggerIsBetter: false,
|
|
9
|
+
formatter: format_1.formatNumber,
|
|
10
|
+
},
|
|
11
|
+
[constants_1.MetricTypes.Score]: {
|
|
12
|
+
biggerIsBetter: true,
|
|
13
|
+
formatter: format_1.formatNumber,
|
|
14
|
+
},
|
|
15
|
+
[constants_1.MetricTypes.Duration]: {
|
|
16
|
+
biggerIsBetter: false,
|
|
17
|
+
formatter: format_1.formatDuration,
|
|
18
|
+
},
|
|
19
|
+
[constants_1.MetricTypes.FileSize]: {
|
|
20
|
+
biggerIsBetter: false,
|
|
21
|
+
formatter: format_1.formatFileSize,
|
|
22
|
+
},
|
|
23
|
+
[constants_1.MetricTypes.Percentage]: {
|
|
24
|
+
biggerIsBetter: true,
|
|
25
|
+
formatter: format_1.formatPercentage,
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=metric-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metric-types.js","sourceRoot":"","sources":["../../src/config/metric-types.ts"],"names":[],"mappings":";;;AAAA,4CAAiG;AACjG,4CAA6D;AAEhD,QAAA,mBAAmB,GAA0C;IACxE,CAAC,uBAAW,CAAC,OAAO,CAAC,EAAE;QACrB,cAAc,EAAE,KAAK;QACrB,SAAS,EAAE,qBAAY;KACxB;IACD,CAAC,uBAAW,CAAC,KAAK,CAAC,EAAE;QACnB,cAAc,EAAE,IAAI;QACpB,SAAS,EAAE,qBAAY;KACxB;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE;QACtB,cAAc,EAAE,KAAK;QACrB,SAAS,EAAE,uBAAc;KAC1B;IACD,CAAC,uBAAW,CAAC,QAAQ,CAAC,EAAE;QACtB,cAAc,EAAE,KAAK;QACrB,SAAS,EAAE,uBAAc;KAC1B;IACD,CAAC,uBAAW,CAAC,UAAU,CAAC,EAAE;QACxB,cAAc,EAAE,IAAI;QACpB,SAAS,EAAE,yBAAgB;KAC5B;CACF,CAAC"}
|
package/lib/constants.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.JobSectionId = exports.
|
|
3
|
+
exports.JobSectionId = exports.MetricTypes = exports.InsightType = exports.Source = void 0;
|
|
4
4
|
var Source;
|
|
5
5
|
(function (Source) {
|
|
6
6
|
Source["webpack"] = "webpack";
|
|
@@ -13,24 +13,14 @@ var InsightType;
|
|
|
13
13
|
InsightType["INFO"] = "info";
|
|
14
14
|
InsightType["WARNING"] = "warning";
|
|
15
15
|
})(InsightType || (exports.InsightType = InsightType = {}));
|
|
16
|
-
var
|
|
17
|
-
(function (
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
})(
|
|
24
|
-
var MetricRunInfoDeltaType;
|
|
25
|
-
(function (MetricRunInfoDeltaType) {
|
|
26
|
-
MetricRunInfoDeltaType["HIGH_NEGATIVE"] = "HIGH_NEGATIVE";
|
|
27
|
-
MetricRunInfoDeltaType["NEGATIVE"] = "NEGATIVE";
|
|
28
|
-
MetricRunInfoDeltaType["LOW_NEGATIVE"] = "LOW_NEGATIVE";
|
|
29
|
-
MetricRunInfoDeltaType["NO_CHANGE"] = "NO_CHANGE";
|
|
30
|
-
MetricRunInfoDeltaType["LOW_POSITIVE"] = "LOW_POSITIVE";
|
|
31
|
-
MetricRunInfoDeltaType["POSITIVE"] = "POSITIVE";
|
|
32
|
-
MetricRunInfoDeltaType["HIGH_POSITIVE"] = "HIGH_POSITIVE";
|
|
33
|
-
})(MetricRunInfoDeltaType || (exports.MetricRunInfoDeltaType = MetricRunInfoDeltaType = {}));
|
|
16
|
+
var MetricTypes;
|
|
17
|
+
(function (MetricTypes) {
|
|
18
|
+
MetricTypes["Numeric"] = "METRIC_TYPE_NUMERIC";
|
|
19
|
+
MetricTypes["Score"] = "METRIC_TYPE_SCORE";
|
|
20
|
+
MetricTypes["FileSize"] = "METRIC_TYPE_FILE_SIZE";
|
|
21
|
+
MetricTypes["Duration"] = "METRIC_TYPE_DURATION";
|
|
22
|
+
MetricTypes["Percentage"] = "METRIC_TYPE_PERCENTAGE";
|
|
23
|
+
})(MetricTypes || (exports.MetricTypes = MetricTypes = {}));
|
|
34
24
|
var JobSectionId;
|
|
35
25
|
(function (JobSectionId) {
|
|
36
26
|
JobSectionId["meta"] = "meta";
|
package/lib/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,MAIX;AAJD,WAAY,MAAM;IAChB,6BAAmB,CAAA;IACnB,mCAAyB,CAAA;IACzB,qCAA2B,CAAA;AAC7B,CAAC,EAJW,MAAM,sBAAN,MAAM,QAIjB;AAID,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,8BAAe,CAAA;IACf,4BAAa,CAAA;IACb,kCAAmB,CAAA;AACrB,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,MAIX;AAJD,WAAY,MAAM;IAChB,6BAAmB,CAAA;IACnB,mCAAyB,CAAA;IACzB,qCAA2B,CAAA;AAC7B,CAAC,EAJW,MAAM,sBAAN,MAAM,QAIjB;AAID,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,8BAAe,CAAA;IACf,4BAAa,CAAA;IACb,kCAAmB,CAAA;AACrB,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB;AAKD,IAAY,WAMX;AAND,WAAY,WAAW;IACrB,8CAA+B,CAAA;IAC/B,0CAA2B,CAAA;IAC3B,iDAAkC,CAAA;IAClC,gDAAiC,CAAA;IACjC,oDAAqC,CAAA;AACvC,CAAC,EANW,WAAW,2BAAX,WAAW,QAMtB;AAuED,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,6BAAa,CAAA;IACb,qCAAqB,CAAA;IACrB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;AACrB,CAAC,EANW,YAAY,4BAAZ,YAAY,QAMvB"}
|
|
@@ -1,55 +1,55 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.metrics = void 0;
|
|
4
|
-
const
|
|
4
|
+
const constants_1 = require("../constants");
|
|
5
5
|
exports.metrics = {
|
|
6
6
|
score: {
|
|
7
7
|
label: 'Score',
|
|
8
|
-
type:
|
|
8
|
+
type: constants_1.MetricTypes.Score,
|
|
9
9
|
},
|
|
10
10
|
performanceScore: {
|
|
11
11
|
label: 'Performance',
|
|
12
|
-
type:
|
|
12
|
+
type: constants_1.MetricTypes.Score,
|
|
13
13
|
},
|
|
14
14
|
accessibilityScore: {
|
|
15
15
|
label: 'Accessibility',
|
|
16
|
-
type:
|
|
16
|
+
type: constants_1.MetricTypes.Score,
|
|
17
17
|
},
|
|
18
18
|
bestPracticesScore: {
|
|
19
19
|
label: 'Best Practices',
|
|
20
|
-
type:
|
|
20
|
+
type: constants_1.MetricTypes.Score,
|
|
21
21
|
},
|
|
22
22
|
seoScore: {
|
|
23
23
|
label: 'SEO',
|
|
24
|
-
type:
|
|
24
|
+
type: constants_1.MetricTypes.Score,
|
|
25
25
|
},
|
|
26
26
|
pwaScore: {
|
|
27
27
|
label: 'PWA',
|
|
28
|
-
type:
|
|
28
|
+
type: constants_1.MetricTypes.Score,
|
|
29
29
|
},
|
|
30
30
|
speedIndex: {
|
|
31
31
|
label: 'Perceptual Speed Index',
|
|
32
|
-
type:
|
|
32
|
+
type: constants_1.MetricTypes.Duration,
|
|
33
33
|
},
|
|
34
34
|
firstMeaningfulPaint: {
|
|
35
35
|
label: 'First Meaningful Paint',
|
|
36
|
-
type:
|
|
36
|
+
type: constants_1.MetricTypes.Duration,
|
|
37
37
|
},
|
|
38
38
|
timeToFirstByte: {
|
|
39
39
|
label: 'Time To First Byte',
|
|
40
|
-
type:
|
|
40
|
+
type: constants_1.MetricTypes.Duration,
|
|
41
41
|
},
|
|
42
42
|
firstInteractive: {
|
|
43
43
|
label: 'First Interactive',
|
|
44
|
-
type:
|
|
44
|
+
type: constants_1.MetricTypes.Duration,
|
|
45
45
|
},
|
|
46
46
|
totalByteWeight: {
|
|
47
47
|
label: 'Total Weight',
|
|
48
|
-
type:
|
|
48
|
+
type: constants_1.MetricTypes.FileSize,
|
|
49
49
|
},
|
|
50
50
|
domSize: {
|
|
51
51
|
label: 'DOM Size',
|
|
52
|
-
type:
|
|
52
|
+
type: constants_1.MetricTypes.Numeric,
|
|
53
53
|
},
|
|
54
54
|
};
|
|
55
55
|
//# sourceMappingURL=metrics.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/lighthouse/metrics.js"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/lighthouse/metrics.js"],"names":[],"mappings":";;;AAAA,4CAA2C;AAE9B,QAAA,OAAO,GAAG;IACrB,KAAK,EAAE;QACL,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,uBAAW,CAAC,KAAK;KACxB;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,uBAAW,CAAC,KAAK;KACxB;IACD,kBAAkB,EAAE;QAClB,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,uBAAW,CAAC,KAAK;KACxB;IACD,kBAAkB,EAAE;QAClB,KAAK,EAAE,gBAAgB;QACvB,IAAI,EAAE,uBAAW,CAAC,KAAK;KACxB;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,uBAAW,CAAC,KAAK;KACxB;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,uBAAW,CAAC,KAAK;KACxB;IAED,UAAU,EAAE;QACV,KAAK,EAAE,wBAAwB;QAC/B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,oBAAoB,EAAE;QACpB,KAAK,EAAE,wBAAwB;QAC/B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,eAAe,EAAE;QACf,KAAK,EAAE,oBAAoB;QAC3B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,gBAAgB,EAAE;QAChB,KAAK,EAAE,mBAAmB;QAC1B,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,eAAe,EAAE;QACf,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,uBAAW,CAAC,QAAQ;KAC3B;IACD,OAAO,EAAE;QACP,KAAK,EAAE,UAAU;QACjB,IAAI,EAAE,uBAAW,CAAC,OAAO;KAC1B;CACF,CAAC"}
|
|
@@ -9,13 +9,13 @@ const metrics_1 = require("../utils/metrics");
|
|
|
9
9
|
const get_metric_changed_1 = require("./get-metric-changed");
|
|
10
10
|
const getAddRowMetricData = (metricType) => (row) => {
|
|
11
11
|
const { key, runs } = row;
|
|
12
|
-
const metric = (0, metrics_1.getGlobalMetricType)(key, typeof metricType === 'string'
|
|
12
|
+
const metric = (0, metrics_1.getGlobalMetricType)(key, typeof metricType === 'string' ? metricType : undefined);
|
|
13
13
|
const { biggerIsBetter, label } = metric;
|
|
14
14
|
const processedRuns = runs.map((run, index) => {
|
|
15
15
|
if (!run || typeof run.value === 'undefined' || run.value === null) {
|
|
16
16
|
return null;
|
|
17
17
|
}
|
|
18
|
-
const metricRunInfo = (0, metrics_1.getMetricRunInfo)(metric, run.value,
|
|
18
|
+
const metricRunInfo = (0, metrics_1.getMetricRunInfo)(metric, run.value, index + 1 < runs.length ? (0, get_1.default)(runs, [index + 1, 'value'], 0) : undefined);
|
|
19
19
|
return {
|
|
20
20
|
...run,
|
|
21
21
|
...metricRunInfo,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-row-metric-data.js","sourceRoot":"","sources":["../../src/report/add-row-metric-data.ts"],"names":[],"mappings":";;;;;;AAAA,qDAA6B;AAE7B,8CAAyE;AACzE,6DAAwD;
|
|
1
|
+
{"version":3,"file":"add-row-metric-data.js","sourceRoot":"","sources":["../../src/report/add-row-metric-data.ts"],"names":[],"mappings":";;;;;;AAAA,qDAA6B;AAE7B,8CAAyE;AACzE,6DAAwD;AAOjD,MAAM,mBAAmB,GAAG,CAAC,UAAmB,EAAE,EAAE,CAAC,CAAC,GAAoB,EAAE,EAAE;IACnF,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;IAK1B,MAAM,MAAM,GAAG,IAAA,6BAAmB,EAChC,GAAG,EACH,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAE,UAA0B,CAAC,CAAC,CAAC,SAAS,CACzE,CAAC;IACF,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAEzC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAC5C,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,WAAW,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,EAAE;YAClE,OAAO,IAAI,CAAC;SACb;QAED,MAAM,aAAa,GAAG,IAAA,0BAAgB,EACpC,MAAM,EACN,GAAG,CAAC,KAAK,EAET,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAA,aAAG,EAAC,IAAI,EAAE,CAAC,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CACzE,CAAC;QAEF,OAAO;YACL,GAAG,GAAG;YACN,GAAG,aAAa;SACjB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,GAAG,GAAG;QAGN,cAAc;QACd,KAAK;QAGL,OAAO,EAAE,IAAA,qCAAgB,EAAC,IAAI,CAAC;QAG/B,IAAI,EAAE,aAAa;KACpB,CAAC;AACJ,CAAC,CAAC;AA3CW,QAAA,mBAAmB,uBA2C9B"}
|
package/lib/report/create.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/report/create.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAAqC;AAErC,4CAA4E;AAC5E,8CAAyE;AACzE,oDAAsC;AAEtC,qDAA6C;AAmBtC,MAAM,YAAY,GAAG,CAAC,IAAgB,EAAU,EAAE;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;IAGnC,MAAM,OAAO,GAA+C,EAAE,CAAC;IAE/D,MAAM,CAAC,MAAM,CAAC,kBAAM,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QACzC,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAqB,CAAC;QAEvE,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE;YACnF,MAAM,MAAM,GAAG,IAAA,6BAAmB,EAAC,GAAG,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAC;YAC9D,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC;YAClD,MAAM,IAAI,GAAG,IAAA,0BAAgB,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEzD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,QAAQ,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/report/create.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAAqC;AAErC,4CAA4E;AAC5E,8CAAyE;AACzE,oDAAsC;AAEtC,qDAA6C;AAmBtC,MAAM,YAAY,GAAG,CAAC,IAAgB,EAAU,EAAE;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;IAGnC,MAAM,OAAO,GAA+C,EAAE,CAAC;IAE/D,MAAM,CAAC,MAAM,CAAC,kBAAM,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QACzC,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAqB,CAAC;QAEvE,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO;SACR;QAED,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE;YACnF,MAAM,MAAM,GAAG,IAAA,6BAAmB,EAAC,GAAG,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAC;YAC9D,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC;YAClD,MAAM,IAAI,GAAG,IAAA,0BAAgB,EAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAEzD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,QAAQ,CAAC,GAAG,cAAqB,CAAC;IAC5C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3C,OAAO,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE;QACjC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,OAAO,EAAP,sBAAO;QAEP,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YACjD,GAAG,IAAI;YACP,mBAAmB;SACpB,CAAC,CAAC;QAEH,OAAO;QAGP,GAAG,CAAC,CAAC,IAAA,iBAAO,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC,CAAC;AACL,CAAC,CAAC;AAxCW,QAAA,YAAY,gBAwCvB"}
|
package/lib/utils/delta.js
CHANGED
|
@@ -5,10 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.getDeltaType = exports.formatDelta = exports.getDelta = void 0;
|
|
7
7
|
const round_1 = __importDefault(require("lodash/round"));
|
|
8
|
-
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const currentValue = (current && current.value) || 0;
|
|
8
|
+
function getDelta(baseline, current) {
|
|
9
|
+
const baselineValue = baseline?.value || 0;
|
|
10
|
+
const currentValue = current?.value || 0;
|
|
12
11
|
if (baselineValue === currentValue) {
|
|
13
12
|
return {
|
|
14
13
|
delta: 0,
|
|
@@ -25,12 +24,16 @@ const getDelta = (baseline, current) => {
|
|
|
25
24
|
delta: currentValue - baselineValue,
|
|
26
25
|
deltaPercentage: (0, round_1.default)((currentValue / baselineValue) * 100 - 100, 8),
|
|
27
26
|
};
|
|
28
|
-
}
|
|
27
|
+
}
|
|
29
28
|
exports.getDelta = getDelta;
|
|
30
|
-
|
|
31
|
-
let sign =
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
function formatDelta(value, formatter) {
|
|
30
|
+
let sign = '';
|
|
31
|
+
if (value > 0) {
|
|
32
|
+
sign = '+';
|
|
33
|
+
}
|
|
34
|
+
else if (value < 0) {
|
|
35
|
+
sign = '-';
|
|
36
|
+
}
|
|
34
37
|
let absValue = Math.abs(value);
|
|
35
38
|
if (absValue > 0 && absValue < 0.01) {
|
|
36
39
|
sign = `~${sign}`;
|
|
@@ -40,28 +43,28 @@ const formatDelta = (value, formatter) => {
|
|
|
40
43
|
absValue = (0, round_1.default)(absValue, 2);
|
|
41
44
|
}
|
|
42
45
|
return `${sign}${formatter(absValue)}`;
|
|
43
|
-
}
|
|
46
|
+
}
|
|
44
47
|
exports.formatDelta = formatDelta;
|
|
45
|
-
|
|
46
|
-
if (
|
|
47
|
-
return
|
|
48
|
+
function getDeltaType(deltaPercentageValue, biggerIsBetter) {
|
|
49
|
+
if (deltaPercentageValue < -50) {
|
|
50
|
+
return biggerIsBetter ? 'HIGH_NEGATIVE' : 'HIGH_POSITIVE';
|
|
48
51
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
if (absDiff <= 5) {
|
|
52
|
-
level = delta_1.DELTA_TYPE_LEVEL_LOW;
|
|
52
|
+
if (deltaPercentageValue < -5) {
|
|
53
|
+
return biggerIsBetter ? 'NEGATIVE' : 'POSITIVE';
|
|
53
54
|
}
|
|
54
|
-
if (
|
|
55
|
-
|
|
55
|
+
if (deltaPercentageValue < 0) {
|
|
56
|
+
return biggerIsBetter ? 'LOW_NEGATIVE' : 'LOW_POSITIVE';
|
|
56
57
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
type = delta_1.DELTA_TYPE_POSITIVE;
|
|
58
|
+
if (deltaPercentageValue === 0) {
|
|
59
|
+
return 'NO_CHANGE';
|
|
60
60
|
}
|
|
61
|
-
|
|
62
|
-
|
|
61
|
+
if (deltaPercentageValue <= 5) {
|
|
62
|
+
return biggerIsBetter ? 'LOW_POSITIVE' : 'LOW_NEGATIVE';
|
|
63
63
|
}
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
if (deltaPercentageValue <= 50) {
|
|
65
|
+
return biggerIsBetter ? 'POSITIVE' : 'NEGATIVE';
|
|
66
|
+
}
|
|
67
|
+
return biggerIsBetter ? 'HIGH_POSITIVE' : 'HIGH_NEGATIVE';
|
|
68
|
+
}
|
|
66
69
|
exports.getDeltaType = getDeltaType;
|
|
67
70
|
//# sourceMappingURL=delta.js.map
|
package/lib/utils/delta.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delta.js","sourceRoot":"","sources":["../../src/utils/delta.
|
|
1
|
+
{"version":3,"file":"delta.js","sourceRoot":"","sources":["../../src/utils/delta.ts"],"names":[],"mappings":";;;;;;AAAA,yDAAiC;AASjC,SAAgB,QAAQ,CAAC,QAA2B,EAAE,OAA0B;IAC9E,MAAM,aAAa,GAAG,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC;IAEzC,IAAI,aAAa,KAAK,YAAY,EAAE;QAClC,OAAO;YACL,KAAK,EAAE,CAAC;YACR,eAAe,EAAE,CAAC;SACnB,CAAC;KACH;IAED,IAAI,aAAa,KAAK,CAAC,EAAE;QACvB,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,eAAe,EAAE,GAAG;SACrB,CAAC;KACH;IAED,OAAO;QACL,KAAK,EAAE,YAAY,GAAG,aAAa;QACnC,eAAe,EAAE,IAAA,eAAK,EAAC,CAAC,YAAY,GAAG,aAAa,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC;KACtE,CAAC;AACJ,CAAC;AAtBD,4BAsBC;AAKD,SAAgB,WAAW,CAAC,KAAa,EAAE,SAAwC;IACjF,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,IAAI,KAAK,GAAG,CAAC,EAAE;QACb,IAAI,GAAG,GAAG,CAAC;KACZ;SAAM,IAAI,KAAK,GAAG,CAAC,EAAE;QACpB,IAAI,GAAG,GAAG,CAAC;KACZ;IAED,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAE/B,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,IAAI,EAAE;QACnC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,QAAQ,GAAG,IAAI,CAAC;KACjB;IAED,IAAI,QAAQ,GAAG,IAAI,EAAE;QACnB,QAAQ,GAAG,IAAA,eAAK,EAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;KAC/B;IAED,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;AACzC,CAAC;AArBD,kCAqBC;AAKD,SAAgB,YAAY,CAC1B,oBAA4B,EAC5B,cAAmD;IAEnD,IAAI,oBAAoB,GAAG,CAAC,EAAE,EAAE;QAC9B,OAAO,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;KAC3D;IACD,IAAI,oBAAoB,GAAG,CAAC,CAAC,EAAE;QAC7B,OAAO,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;KACjD;IAED,IAAI,oBAAoB,GAAG,CAAC,EAAE;QAC5B,OAAO,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;KACzD;IAED,IAAI,oBAAoB,KAAK,CAAC,EAAE;QAC9B,OAAO,WAAW,CAAC;KACpB;IAED,IAAI,oBAAoB,IAAI,CAAC,EAAE;QAC7B,OAAO,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;KACzD;IAED,IAAI,oBAAoB,IAAI,EAAE,EAAE;QAC9B,OAAO,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;KACjD;IAED,OAAO,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;AAC5D,CAAC;AA5BD,oCA4BC"}
|
package/lib/utils/metrics.js
CHANGED
|
@@ -5,43 +5,60 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.getMetricRunInfo = exports.getGlobalMetricType = exports.createGetMetricType = void 0;
|
|
7
7
|
const get_1 = __importDefault(require("lodash/get"));
|
|
8
|
-
const
|
|
9
|
-
const
|
|
8
|
+
const constants_1 = require("../constants");
|
|
9
|
+
const config_1 = require("../config");
|
|
10
|
+
const metrics_1 = require("../webpack/metrics");
|
|
11
|
+
const metrics_2 = require("../lighthouse/metrics");
|
|
12
|
+
const metrics_3 = require("../browsertime/metrics");
|
|
10
13
|
const format_1 = require("./format");
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
const delta_1 = require("./delta");
|
|
15
|
+
function createGetMetricType(metrics) {
|
|
16
|
+
return function getMetricType(key, type) {
|
|
17
|
+
const metric = (0, get_1.default)(metrics, key);
|
|
18
|
+
if (metric?.type) {
|
|
19
|
+
return {
|
|
20
|
+
...config_1.METRIC_TYPE_CONFIGS[metric.type],
|
|
21
|
+
...metric,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
const resolvedType = type || constants_1.MetricTypes.Numeric;
|
|
17
25
|
return {
|
|
18
|
-
...
|
|
19
|
-
|
|
26
|
+
...config_1.METRIC_TYPE_CONFIGS[resolvedType],
|
|
27
|
+
type: resolvedType,
|
|
28
|
+
label: key,
|
|
20
29
|
};
|
|
21
|
-
}
|
|
22
|
-
const resolvedType = type || metrics_1.METRIC_TYPE_NUMERIC;
|
|
23
|
-
return {
|
|
24
|
-
...metrics_1.METRIC_TYPES[resolvedType],
|
|
25
|
-
type: resolvedType,
|
|
26
|
-
label: key,
|
|
27
30
|
};
|
|
28
|
-
}
|
|
31
|
+
}
|
|
29
32
|
exports.createGetMetricType = createGetMetricType;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
function getGlobalMetricType(key, type) {
|
|
34
|
+
const getMetricType = createGetMetricType({
|
|
35
|
+
webpack: metrics_1.metrics,
|
|
36
|
+
lighthouse: metrics_2.metrics,
|
|
37
|
+
browsertime: metrics_3.metrics,
|
|
38
|
+
});
|
|
39
|
+
return getMetricType(key, type);
|
|
40
|
+
}
|
|
41
|
+
exports.getGlobalMetricType = getGlobalMetricType;
|
|
42
|
+
function getMetricRunInfo(metricType, current, baseline) {
|
|
43
|
+
const { formatter, biggerIsBetter } = metricType;
|
|
37
44
|
const runInfo = {
|
|
38
|
-
value:
|
|
39
|
-
displayValue: formatter(
|
|
45
|
+
value: current,
|
|
46
|
+
displayValue: formatter(current),
|
|
40
47
|
};
|
|
41
|
-
if (typeof
|
|
48
|
+
if (typeof baseline === 'undefined') {
|
|
42
49
|
return runInfo;
|
|
43
50
|
}
|
|
44
|
-
const { delta, deltaPercentage } = (0, delta_1.getDelta)({ value:
|
|
51
|
+
const { delta, deltaPercentage } = (0, delta_1.getDelta)({ value: baseline }, { value: current });
|
|
52
|
+
let regression;
|
|
53
|
+
if (biggerIsBetter === null) {
|
|
54
|
+
regression = null;
|
|
55
|
+
}
|
|
56
|
+
else if ((biggerIsBetter === true && delta > 0) || (biggerIsBetter === false && delta < 0)) {
|
|
57
|
+
regression = false;
|
|
58
|
+
}
|
|
59
|
+
else if ((biggerIsBetter === false && delta > 0) || (biggerIsBetter === true && delta < 0)) {
|
|
60
|
+
regression = true;
|
|
61
|
+
}
|
|
45
62
|
return {
|
|
46
63
|
...runInfo,
|
|
47
64
|
delta,
|
|
@@ -49,7 +66,8 @@ const getMetricRunInfo = (metric, currentValue, baselineValue) => {
|
|
|
49
66
|
displayDelta: (0, delta_1.formatDelta)(delta, formatter),
|
|
50
67
|
displayDeltaPercentage: (0, delta_1.formatDelta)(deltaPercentage, format_1.formatPercentage),
|
|
51
68
|
deltaType: (0, delta_1.getDeltaType)(deltaPercentage, biggerIsBetter),
|
|
69
|
+
regression,
|
|
52
70
|
};
|
|
53
|
-
}
|
|
71
|
+
}
|
|
54
72
|
exports.getMetricRunInfo = getMetricRunInfo;
|
|
55
73
|
//# sourceMappingURL=metrics.js.map
|
package/lib/utils/metrics.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/utils/metrics.
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/utils/metrics.ts"],"names":[],"mappings":";;;;;;AAAA,qDAA6B;AAE7B,4CAAkG;AAClG,sCAAgD;AAChD,gDAAmE;AACnE,mDAAyE;AACzE,oDAA0E;AAC1E,qCAA4C;AAC5C,mCAA8D;AAE9D,SAAgB,mBAAmB,CAAC,OAAgC;IAClE,OAAO,SAAS,aAAa,CAAC,GAAW,EAAE,IAAkB;QAC3D,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,OAAO,EAAE,GAAG,CAAiB,CAAC;QAEjD,IAAI,MAAM,EAAE,IAAI,EAAE;YAChB,OAAO;gBACL,GAAG,4BAAmB,CAAC,MAAM,CAAC,IAAI,CAAC;gBACnC,GAAG,MAAM;aACV,CAAC;SACH;QAED,MAAM,YAAY,GAAG,IAAI,IAAI,uBAAW,CAAC,OAAO,CAAC;QAEjD,OAAO;YACL,GAAG,4BAAmB,CAAC,YAAY,CAAC;YACpC,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,GAAG;SACX,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAnBD,kDAmBC;AAED,SAAgB,mBAAmB,CAAC,GAAW,EAAE,IAAkB;IACjE,MAAM,aAAa,GAAG,mBAAmB,CAAC;QACxC,OAAO,EAAE,iBAAkB;QAC3B,UAAU,EAAE,iBAAqB;QACjC,WAAW,EAAE,iBAAqB;KACnC,CAAC,CAAC;IAEH,OAAO,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAClC,CAAC;AARD,kDAQC;AAED,SAAgB,gBAAgB,CAC9B,UAA4B,EAC5B,OAAe,EACf,QAAiB;IAEjB,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;IAEjD,MAAM,OAAO,GAAG;QACd,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC;KACjC,CAAC;IAGF,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;QACnC,OAAO,OAAO,CAAC;KAChB;IAED,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,IAAA,gBAAQ,EAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAGrF,IAAI,UAAU,CAAC;IAEf,IAAI,cAAc,KAAK,IAAI,EAAE;QAC3B,UAAU,GAAG,IAAI,CAAC;KACnB;SAAM,IAAI,CAAC,cAAc,KAAK,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;QAC5F,UAAU,GAAG,KAAK,CAAC;KACpB;SAAM,IAAI,CAAC,cAAc,KAAK,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,KAAK,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;QAC5F,UAAU,GAAG,IAAI,CAAC;KACnB;IAED,OAAO;QACL,GAAG,OAAO;QACV,KAAK;QACL,eAAe;QACf,YAAY,EAAE,IAAA,mBAAW,EAAC,KAAK,EAAE,SAAS,CAAC;QAC3C,sBAAsB,EAAE,IAAA,mBAAW,EAAC,eAAe,EAAE,yBAAgB,CAAC;QACtE,SAAS,EAAE,IAAA,oBAAY,EAAC,eAAe,EAAE,cAAc,CAAC;QACxD,UAAU;KACX,CAAC;AACJ,CAAC;AAvCD,4CAuCC"}
|
package/lib/webpack/compare.js
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.compare = exports.compareBySection = void 0;
|
|
4
|
-
const
|
|
4
|
+
const constants_1 = require("../constants");
|
|
5
5
|
const compare_metrics_1 = require("../report/compare-metrics");
|
|
6
|
-
const
|
|
6
|
+
const constants_2 = require("./constants");
|
|
7
7
|
const selectors_1 = require("./selectors");
|
|
8
8
|
const compareStats = (jobs, rowTransformers) => (0, compare_metrics_1.compareMetrics)(jobs, selectors_1.selectors.stats, undefined, rowTransformers);
|
|
9
9
|
const compareSizes = (jobs, rowTransformers) => (0, compare_metrics_1.compareMetrics)(jobs, selectors_1.selectors.sizes, undefined, rowTransformers);
|
|
10
|
-
const compareAssets = (jobs, rowTransformers) => (0, compare_metrics_1.compareMetrics)(jobs, selectors_1.selectors.assets,
|
|
11
|
-
const compareModules = (jobs, rowTransformers) => (0, compare_metrics_1.compareMetrics)(jobs, selectors_1.selectors.modules,
|
|
12
|
-
const comparePackages = (jobs, rowTransformers) => (0, compare_metrics_1.compareMetrics)(jobs, selectors_1.selectors.packages,
|
|
10
|
+
const compareAssets = (jobs, rowTransformers) => (0, compare_metrics_1.compareMetrics)(jobs, selectors_1.selectors.assets, constants_1.MetricTypes.FileSize, rowTransformers);
|
|
11
|
+
const compareModules = (jobs, rowTransformers) => (0, compare_metrics_1.compareMetrics)(jobs, selectors_1.selectors.modules, constants_1.MetricTypes.FileSize, rowTransformers);
|
|
12
|
+
const comparePackages = (jobs, rowTransformers) => (0, compare_metrics_1.compareMetrics)(jobs, selectors_1.selectors.packages, constants_1.MetricTypes.FileSize, rowTransformers);
|
|
13
13
|
exports.compareBySection = {
|
|
14
|
-
[
|
|
15
|
-
[
|
|
16
|
-
[
|
|
17
|
-
[
|
|
18
|
-
[
|
|
14
|
+
[constants_2.SECTION_WEBPACK_STATS]: compareStats,
|
|
15
|
+
[constants_2.SECTION_WEBPACK_SIZES]: compareSizes,
|
|
16
|
+
[constants_2.SECTION_WEBPACK_ASSETS]: compareAssets,
|
|
17
|
+
[constants_2.SECTION_WEBPACK_MODULES]: compareModules,
|
|
18
|
+
[constants_2.SECTION_WEBPACK_PACKAGES]: comparePackages,
|
|
19
19
|
};
|
|
20
|
-
const compare = (jobs) =>
|
|
20
|
+
const compare = (jobs) => constants_2.SECTIONS.reduce((agg, sectionId) => ({
|
|
21
21
|
...agg,
|
|
22
22
|
[sectionId]: exports.compareBySection[sectionId](jobs),
|
|
23
23
|
}), {});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/webpack/compare.js"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/webpack/compare.js"],"names":[],"mappings":";;;AAAA,4CAA2C;AAC3C,+DAA2D;AAC3D,2CAOqB;AACrB,2CAAwC;AAUxC,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,CAC7C,IAAA,gCAAc,EAAC,IAAI,EAAE,qBAAS,CAAC,KAAK,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AAUpE,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,CAC7C,IAAA,gCAAc,EAAC,IAAI,EAAE,qBAAS,CAAC,KAAK,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;AAUpE,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,CAC9C,IAAA,gCAAc,EAAC,IAAI,EAAE,qBAAS,CAAC,MAAM,EAAE,uBAAW,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;AAShF,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,CAC/C,IAAA,gCAAc,EAAC,IAAI,EAAE,qBAAS,CAAC,OAAO,EAAE,uBAAW,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;AAUjF,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,CAChD,IAAA,gCAAc,EAAC,IAAI,EAAE,qBAAS,CAAC,QAAQ,EAAE,uBAAW,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;AAErE,QAAA,gBAAgB,GAAG;IAC9B,CAAC,iCAAqB,CAAC,EAAE,YAAY;IACrC,CAAC,iCAAqB,CAAC,EAAE,YAAY;IACrC,CAAC,kCAAsB,CAAC,EAAE,aAAa;IACvC,CAAC,mCAAuB,CAAC,EAAE,cAAc;IACzC,CAAC,oCAAwB,CAAC,EAAE,eAAe;CAC5C,CAAC;AAQK,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,EAAE,CAC9B,oBAAQ,CAAC,MAAM,CACf,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IACnB,GAAG,GAAG;IACN,CAAC,SAAS,CAAC,EAAE,wBAAgB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;CAC/C,CAAC,EACF,EAAE,CACH,CAAC;AAPW,QAAA,OAAO,WAOlB"}
|