@bundle-stats/cli-utils 4.2.3-beta.0 → 4.2.3-beta.1

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/README.md CHANGED
@@ -2,7 +2,33 @@
2
2
 
3
3
  [![](https://img.shields.io/npm/v/@bundle-stats/cli-utils)](https://www.npmjs.com/package/@bundle-stats/cli-utils)
4
4
 
5
- CLI utilities for BundleStats
5
+ CLI utilities for [bundle-stats](https://github.com/relative-ci/bundle-stats)
6
+
7
+ ## Related projects
8
+
9
+ ### :cyclone: [relative-ci.com](https://relative-ci.com?utm_medium=bundle-stats-cli-utils)
10
+
11
+ #### Optimize your web app's performance with automated bundle stats analysis and monitoring.
12
+
13
+ - :crystal_ball: In-depth bundle stats analysis for every build
14
+ - :chart_with_upwards_trend: Monitor bundle stats changes and identify opportunities for optimizations
15
+ - :bell: [Rule based automated review flow](https://relative-ci.com/documentation/setup/configure/integrations/github-commit-status-review?utm_medium=bundle-stats-cli-utils), or get notified via [GitHub Pull Request comments](https://relative-ci.com/documentation/setup/configure/integrations/github-pull-request-comment?utm_medium=bundle-stats-cli-utils), [GitHub check reports](https://relative-ci.com/documentation/setup/configure/integrations/github-check-report?utm_medium=bundle-stats-cli-utils) and [Slack messages](https://relative-ci.com/documentation/setup/configure/integrations/slack-notification?utm_medium=bundle-stats-cli-utils)
16
+ - :wrench: Support for **webpack** and beta support for **Vite**/**Rollup**
17
+ - :hammer: Support for all major CI services(CircleCI, GitHub Actions, Gitlab CI, Jenkins, Travis CI)
18
+ - :nut_and_bolt: Support for **npm**, **yarn** and **pnpm**; support for monorepos
19
+ - :two_hearts: **Always free** for **Open Source**
20
+
21
+ [:rocket: Get started](https://relative-ci.com?utm_medium=bundle-stats-cli-utils)
22
+
23
+ ### :first_quarter_moon: [relative-ci/compare](https://compare.relative-ci.com)
24
+
25
+ Standalone web application to compare Webpack/Lighthouse/Browsertime stats.
26
+
27
+ [Compare bundle stats](https://compare.relative-ci.com)
28
+
29
+ ### :zap: [bundle-stats-action](https://github.com/vio/bundle-stats-action)
30
+
31
+ Github Action that generates [bundle-stats](https://github.com/relative-ci/bundle-stats) reports.
6
32
 
7
33
  ## Packages
8
34
 
@@ -16,7 +42,7 @@ CLI to generate bundle stats report.
16
42
 
17
43
  [![npm](https://img.shields.io/npm/v/bundle-stats-webpack-plugin)](https://www.npmjs.com/package/bundle-stats-webpack-plugin) [![npm](https://img.shields.io/npm/dm/bundle-stats-webpack-plugin)](https://www.npmjs.com/package/bundle-stats-webpack-plugin)
18
44
 
19
- Webpack plugin to generate bundle stats report.
45
+ Webpack plugin to generate bundle stats report for webpack/rspack.
20
46
 
21
47
  ### [`gatsby-plugin-bundle-stats`](https://github.com/relative-ci/bundle-stats/tree/master/packages/gatsby-plugin)
22
48
 
@@ -29,3 +55,10 @@ Webpack plugin to generate bundle stats report.
29
55
  [![npm](https://img.shields.io/npm/v/next-plugin-bundle-stats)](https://www.npmjs.com/package/next-plugin-bundle-stats) [![npm](https://img.shields.io/npm/dm/next-plugin-bundle-stats)](https://www.npmjs.com/package/next-plugin-bundle-stats)
30
56
 
31
57
  [Next.js](https://nextjs.org) plugin for [bundle-stats](https://github.com/relative-ci/bundle-stats/tree/master/packages/webpack-plugin).
58
+
59
+
60
+ ### [`rollup-plugin-bundle-stats`](https://github.com/relative-ci/bundle-stats/tree/master/packages/rollup-plugin)
61
+
62
+ [![npm](https://img.shields.io/npm/v/rollup-plugin-bundle-stats)](https://www.npmjs.com/package/rollup-plugin-bundle-stats) [![npm](https://img.shields.io/npm/dm/rollup-plugin-bundle-stats)](https://www.npmjs.com/package/rollup-plugin-bundle-stats)
63
+
64
+ Rollup plugin to generate bundle stats report for vite/rolldown/rollup.
package/lib/baseline.js CHANGED
@@ -3,25 +3,35 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.writeBaseline = exports.readBaseline = exports.getBaselineStatsFilepath = void 0;
6
+ exports.getBaselineRelativePath = exports.getBaselinePath = exports.BASELINE_STATS_BASE = exports.BASELINE_STATS_DIR = void 0;
7
+ exports.readBaseline = readBaseline;
8
+ exports.writeBaseline = writeBaseline;
7
9
  const path_1 = __importDefault(require("path"));
8
- const fs_extra_1 = require("fs-extra");
10
+ const promises_1 = __importDefault(require("fs/promises"));
9
11
  const find_cache_dir_1 = __importDefault(require("find-cache-dir"));
10
- const BASELINE_STATS_DIR = (0, find_cache_dir_1.default)({ name: 'bundle-stats' }) || path_1.default.join(process.cwd(), './node_modules/.cache');
11
- const BASELINE_STATS_BASE = 'baseline.json';
12
- function getBaselineStatsFilepath(from) {
13
- if (!from) {
14
- return path_1.default.join(BASELINE_STATS_DIR, BASELINE_STATS_BASE);
12
+ exports.BASELINE_STATS_DIR = (0, find_cache_dir_1.default)({ name: 'bundle-stats' }) || path_1.default.join(process.cwd(), './node_modules/.cache');
13
+ exports.BASELINE_STATS_BASE = 'baseline.json';
14
+ const getBaselinePath = (outputPath = process.cwd(), outputDir = '', filepath = '') => {
15
+ if (!filepath) {
16
+ return path_1.default.join(exports.BASELINE_STATS_DIR, exports.BASELINE_STATS_BASE);
15
17
  }
16
- return path_1.default.join(path_1.default.relative(from, BASELINE_STATS_DIR), BASELINE_STATS_BASE);
17
- }
18
- exports.getBaselineStatsFilepath = getBaselineStatsFilepath;
19
- async function readBaseline(from) {
20
- return (0, fs_extra_1.readJSON)(getBaselineStatsFilepath(from));
18
+ if (path_1.default.isAbsolute(filepath)) {
19
+ return filepath;
20
+ }
21
+ return path_1.default.join(outputPath, outputDir, filepath);
22
+ };
23
+ exports.getBaselinePath = getBaselinePath;
24
+ const getBaselineRelativePath = (outputPath = process.cwd(), outputDir = '', filepath = '') => {
25
+ const absoluteFilepath = (0, exports.getBaselinePath)(outputPath, outputDir, filepath);
26
+ return path_1.default.relative(outputPath, absoluteFilepath);
27
+ };
28
+ exports.getBaselineRelativePath = getBaselineRelativePath;
29
+ async function readBaseline(baselineFilepath) {
30
+ const file = await promises_1.default.readFile(baselineFilepath, 'utf-8');
31
+ return JSON.parse(file);
21
32
  }
22
- exports.readBaseline = readBaseline;
23
- async function writeBaseline(data) {
24
- return (0, fs_extra_1.outputJSON)(getBaselineStatsFilepath(), data);
33
+ async function writeBaseline(data, baselineFilepath) {
34
+ await promises_1.default.mkdir(path_1.default.dirname(baselineFilepath), { recursive: true });
35
+ return promises_1.default.writeFile(baselineFilepath, JSON.stringify(data), {});
25
36
  }
26
- exports.writeBaseline = writeBaseline;
27
37
  //# sourceMappingURL=baseline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseline.js","sourceRoot":"","sources":["../src/baseline.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,uCAAgD;AAChD,oEAA0C;AAE1C,MAAM,kBAAkB,GAAG,IAAA,wBAAY,EAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,IAAI,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uBAAuB,CAAC,CAAC;AACvH,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAE5C,SAAgB,wBAAwB,CAAC,IAAa;IACpD,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,cAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;KAC3D;IAED,OAAO,cAAI,CAAC,IAAI,CAAC,cAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,CAAC;AACjF,CAAC;AAND,4DAMC;AAEM,KAAK,UAAU,YAAY,CAAC,IAAa;IAC9C,OAAO,IAAA,mBAAQ,EAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC;AAFD,oCAEC;AAEM,KAAK,UAAU,aAAa,CAAC,IAAU;IAC5C,OAAO,IAAA,qBAAU,EAAC,wBAAwB,EAAE,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC;AAFD,sCAEC"}
1
+ {"version":3,"file":"baseline.js","sourceRoot":"","sources":["../src/baseline.ts"],"names":[],"mappings":";;;;;;AAuCA,oCAGC;AAED,sCAGC;AA/CD,gDAAwB;AACxB,2DAA6B;AAC7B,oEAA0C;AAE7B,QAAA,kBAAkB,GAC7B,IAAA,wBAAY,EAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,IAAI,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uBAAuB,CAAC,CAAC;AACjF,QAAA,mBAAmB,GAAG,eAAe,CAAC;AAK5C,MAAM,eAAe,GAAG,CAC7B,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAC1B,SAAS,GAAG,EAAE,EACd,QAAQ,GAAG,EAAE,EACL,EAAE;IACV,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,cAAI,CAAC,IAAI,CAAC,0BAAkB,EAAE,2BAAmB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,cAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC,CAAC;AAdW,QAAA,eAAe,mBAc1B;AAKK,MAAM,uBAAuB,GAAG,CACrC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAC1B,SAAS,GAAG,EAAE,EACd,QAAQ,GAAG,EAAE,EACL,EAAE;IACV,MAAM,gBAAgB,GAAG,IAAA,uBAAe,EAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC1E,OAAO,cAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;AACrD,CAAC,CAAC;AAPW,QAAA,uBAAuB,2BAOlC;AAEK,KAAK,UAAU,YAAY,CAAC,gBAAwB;IACzD,MAAM,IAAI,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAEM,KAAK,UAAU,aAAa,CAAC,IAAU,EAAE,gBAAwB;IACtE,MAAM,kBAAE,CAAC,KAAK,CAAC,cAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,OAAO,kBAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAClE,CAAC"}
package/lib/constants.js CHANGED
@@ -7,5 +7,5 @@ var OutputType;
7
7
  (function (OutputType) {
8
8
  OutputType["HTML"] = "html";
9
9
  OutputType["JSON"] = "json";
10
- })(OutputType = exports.OutputType || (exports.OutputType = {}));
10
+ })(OutputType || (exports.OutputType = OutputType = {}));
11
11
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,cAAc,CAAC;AAEjC,QAAA,oBAAoB,GAAG,iCAAiC,CAAC;AAEtE,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,2BAAa,CAAA;AACf,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,cAAc,CAAC;AAEjC,QAAA,oBAAoB,GAAG,iCAAiC,CAAC;AAEtE,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,2BAAa,CAAA;AACf,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB"}
@@ -3,7 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createArtifacts = exports.createJSONArtifact = exports.createHTMLArtifact = void 0;
6
+ exports.createJSONArtifact = exports.createHTMLArtifact = void 0;
7
+ exports.createArtifacts = createArtifacts;
7
8
  const html_templates_1 = __importDefault(require("@bundle-stats/html-templates"));
8
9
  const constants_1 = require("./constants");
9
10
  const createHTMLArtifact = (jobs) => {
@@ -36,5 +37,4 @@ function createArtifacts(jobs, report, options) {
36
37
  }
37
38
  return results;
38
39
  }
39
- exports.createArtifacts = createArtifacts;
40
40
  //# sourceMappingURL=create-artifacts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-artifacts.js","sourceRoot":"","sources":["../src/create-artifacts.ts"],"names":[],"mappings":";;;;;;AACA,kFAAyD;AAEzD,2CAAgF;AAIzE,MAAM,kBAAkB,GAAqB,CAAC,IAAI,EAAE,EAAE;IAE3D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAG1F,IAAI,MAAM,GAAG,wBAAa,CAAC,OAAO,CAChC,gCAAoB,EACpB,6BAA6B,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAC/D,CAAC;IAGF,MAAM,SAAS,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC;IAE5E,IAAI,SAAS,EAAE;QACb,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,UAAU,SAAS,eAAe,CAAC,CAAC;KACrF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAlBW,QAAA,kBAAkB,sBAkB7B;AAEK,MAAM,kBAAkB,GAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;IAChE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAcF,SAAgB,eAAe,CAC7B,IAAgB,EAChB,MAAW,EACX,OAAyB;IAEzB,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,OAAO,CAAC,sBAAU,CAAC,IAAI,CAAC,GAAG;YACzB,MAAM,EAAE,IAAA,0BAAkB,EAAC,IAAI,EAAE,MAAM,CAAC;YACxC,QAAQ,EAAE,GAAG,2BAAe,IAAI,sBAAU,CAAC,IAAI,EAAE;SAClD,CAAC;KACH;IAED,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,OAAO,CAAC,sBAAU,CAAC,IAAI,CAAC,GAAG;YACzB,MAAM,EAAE,IAAA,0BAAkB,EAAC,IAAI,EAAE,MAAM,CAAC;YACxC,QAAQ,EAAE,GAAG,2BAAe,IAAI,sBAAU,CAAC,IAAI,EAAE;SAClD,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAtBD,0CAsBC"}
1
+ {"version":3,"file":"create-artifacts.js","sourceRoot":"","sources":["../src/create-artifacts.ts"],"names":[],"mappings":";;;;;;AA2CA,0CAsBC;AAhED,kFAAyD;AAEzD,2CAAgF;AAIzE,MAAM,kBAAkB,GAAqB,CAAC,IAAI,EAAE,EAAE;IAE3D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAG1F,IAAI,MAAM,GAAG,wBAAa,CAAC,OAAO,CAChC,gCAAoB,EACpB,6BAA6B,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAC/D,CAAC;IAGF,MAAM,SAAS,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC;IAE5E,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,UAAU,SAAS,eAAe,CAAC,CAAC;IACtF,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAlBW,QAAA,kBAAkB,sBAkB7B;AAEK,MAAM,kBAAkB,GAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;IAChE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAcF,SAAgB,eAAe,CAC7B,IAAgB,EAChB,MAAW,EACX,OAAyB;IAEzB,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,sBAAU,CAAC,IAAI,CAAC,GAAG;YACzB,MAAM,EAAE,IAAA,0BAAkB,EAAC,IAAI,EAAE,MAAM,CAAC;YACxC,QAAQ,EAAE,GAAG,2BAAe,IAAI,sBAAU,CAAC,IAAI,EAAE;SAClD,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,sBAAU,CAAC,IAAI,CAAC,GAAG;YACzB,MAAM,EAAE,IAAA,0BAAkB,EAAC,IAAI,EAAE,MAAM,CAAC;YACxC,QAAQ,EAAE,GAAG,2BAAe,IAAI,sBAAU,CAAC,IAAI,EAAE;SAClD,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/lib/fs.js ADDED
@@ -0,0 +1,19 @@
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.readJSONStream = void 0;
7
+ const fs_1 = require("fs");
8
+ const stream_json_1 = require("stream-json");
9
+ const stream_chain_1 = require("stream-chain");
10
+ const Assembler_1 = __importDefault(require("stream-json/Assembler"));
11
+ const readJSONStream = (filepath) => {
12
+ const pipeline = (0, stream_chain_1.chain)([(0, fs_1.createReadStream)(filepath), (0, stream_json_1.parser)()]);
13
+ const asm = Assembler_1.default.connectTo(pipeline);
14
+ return new Promise((fulfill) => {
15
+ asm.on('done', (data) => fulfill(data.current));
16
+ });
17
+ };
18
+ exports.readJSONStream = readJSONStream;
19
+ //# sourceMappingURL=fs.js.map
package/lib/fs.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../src/fs.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAsC;AACtC,6CAAqC;AACrC,+CAAqC;AACrC,sEAAwC;AAEjC,MAAM,cAAc,GAAG,CAAc,QAAgB,EAAc,EAAE;IAC1E,MAAM,QAAQ,GAAG,IAAA,oBAAK,EAAC,CAAC,IAAA,qBAAgB,EAAC,QAAQ,CAAC,EAAE,IAAA,oBAAM,GAAE,CAAC,CAAC,CAAC;IAC/D,MAAM,GAAG,GAAG,mBAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAPW,QAAA,cAAc,kBAOzB"}
package/lib/index.js CHANGED
@@ -15,19 +15,30 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
37
  };
28
38
  Object.defineProperty(exports, "__esModule", { value: true });
29
39
  exports.TEXT = void 0;
30
40
  const T = __importStar(require("./text"));
41
+ __exportStar(require("./fs"), exports);
31
42
  __exportStar(require("./baseline"), exports);
32
43
  __exportStar(require("./create-artifacts"), exports);
33
44
  __exportStar(require("./constants"), exports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA4B;AAE5B,6CAA2B;AAC3B,qDAAmC;AACnC,8CAA4B;AAC5B,4CAA0B;AAEb,QAAA,IAAI,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAA4B;AAE5B,uCAAqB;AACrB,6CAA2B;AAC3B,qDAAmC;AACnC,8CAA4B;AAC5B,4CAA0B;AAEb,QAAA,IAAI,GAAG,CAAC,CAAC"}
package/lib/reports.js CHANGED
@@ -15,77 +15,94 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
28
38
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.generateReports = exports.getReportInfo = void 0;
39
+ exports.generateReports = void 0;
40
+ exports.getReportInfo = getReportInfo;
30
41
  const path_1 = __importDefault(require("path"));
31
42
  const merge_1 = __importDefault(require("lodash/merge"));
32
43
  const utils_1 = require("@bundle-stats/utils");
33
44
  const plugin_webpack_filter_1 = __importDefault(require("@bundle-stats/plugin-webpack-filter"));
34
- const plugin_webpack_validate_1 = __importDefault(require("@bundle-stats/plugin-webpack-validate"));
35
45
  const TEXT = __importStar(require("./text"));
36
46
  const create_artifacts_1 = require("./create-artifacts");
37
47
  const baseline_1 = require("./baseline");
38
48
  function getReportInfo(report) {
39
49
  return report?.insights?.webpack?.assetsSizeTotal?.data;
40
50
  }
41
- exports.getReportInfo = getReportInfo;
42
51
  const DEFAULT_OPTIONS = {
43
- compare: true,
44
- baseline: Boolean(process.env.BUNDLE_STATS_BASELINE),
45
52
  html: true,
46
53
  json: false,
54
+ compare: true,
55
+ baseline: process.env.BUNDLE_STATS_BASELINE === 'true',
47
56
  outDir: '',
48
57
  silent: false,
49
58
  };
50
59
  const generateReports = async (source, options, pluginOptions = {}) => {
51
60
  const { compare, baseline, html, json, outDir } = (0, merge_1.default)({}, DEFAULT_OPTIONS, options);
52
- const { invalidOptionsUrl: invalidParamsUrl, outputPath, logger = console } = pluginOptions;
61
+ const { outputPath = process.cwd(), logger = console } = pluginOptions;
53
62
  const newAssets = {};
54
- const invalid = (0, plugin_webpack_validate_1.default)(source);
55
- if (invalid) {
56
- logger.warn([invalid, invalidParamsUrl].join('\n'));
57
- }
58
63
  const data = (0, plugin_webpack_filter_1.default)(source);
59
64
  if (!data.builtAt) {
60
65
  data.builtAt = Date.now();
61
66
  }
62
- const baselineFilepath = (0, baseline_1.getBaselineStatsFilepath)(outputPath);
67
+ const baselineAbsolutePath = (0, baseline_1.getBaselinePath)(outputPath, outDir, options.baselineFilepath);
68
+ const baselinePath = (0, baseline_1.getBaselineRelativePath)(outputPath, outDir, baselineAbsolutePath);
63
69
  let baselineStats = null;
64
- try {
65
- if (compare) {
66
- const baselineStatsData = await (0, baseline_1.readBaseline)();
70
+ if (compare) {
71
+ try {
72
+ const baselineStatsData = await (0, baseline_1.readBaseline)(baselineAbsolutePath);
67
73
  baselineStats = (0, plugin_webpack_filter_1.default)(baselineStatsData);
68
- if (!options.silent)
69
- logger.info(`Read baseline from ${baselineFilepath}`);
74
+ if (!options.silent) {
75
+ logger.info(`${TEXT.BASELINE_READING} ${baselinePath}.`);
76
+ }
77
+ }
78
+ catch (err) {
79
+ logger.warn(`${TEXT.BASELINE_READING} ${baselinePath}. ${TEXT.BASELINE_MISSING}`);
70
80
  }
71
81
  }
72
- catch (err) {
73
- logger.warn(TEXT.PLUGIN_BASELINE_MISSING_WARN);
82
+ const sources = [{ webpack: data }];
83
+ if (baselineStats) {
84
+ sources.push({ webpack: baselineStats });
74
85
  }
75
- const jobs = (0, utils_1.createJobs)([
76
- { webpack: data },
77
- ...(compare && baselineStats ? [{ webpack: baselineStats }] : []),
78
- ]);
86
+ const jobs = (0, utils_1.createJobs)(sources);
79
87
  const report = (0, utils_1.createReport)(jobs);
80
88
  const artifacts = (0, create_artifacts_1.createArtifacts)(jobs, report, { html, json });
81
89
  Object.values(artifacts).forEach(({ filename, output }) => {
82
- const filepath = path_1.default.join(outDir, filename);
83
- newAssets[filepath] = output;
90
+ const relativeFilepath = path_1.default.join(outDir, filename);
91
+ newAssets[relativeFilepath] = {
92
+ type: 'report',
93
+ source: output,
94
+ filepath: path_1.default.join(outputPath, relativeFilepath),
95
+ };
84
96
  });
85
97
  if (baseline) {
86
- newAssets[baselineFilepath] = JSON.stringify(data);
87
- if (!options.silent)
88
- logger.info(`Write baseline data to ${baselineFilepath}`);
98
+ newAssets[baselinePath] = {
99
+ type: 'baseline',
100
+ source: JSON.stringify(data),
101
+ filepath: baselineAbsolutePath,
102
+ };
103
+ if (!options.silent) {
104
+ logger.info(`${TEXT.BASELINE_WRITING} ${baselinePath}`);
105
+ }
89
106
  }
90
107
  const info = getReportInfo(report);
91
108
  if (info && !options.silent) {
@@ -1 +1 @@
1
- {"version":3,"file":"reports.js","sourceRoot":"","sources":["../src/reports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reports.js","sourceRoot":"","sources":["../src/reports.ts"],"names":[],"mappings":"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"}
package/lib/text.js CHANGED
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CLI_NO_BASELINE = exports.CLI_MULTIPLE_STATS = exports.CLI_NO_COMPARE_MODE = exports.PLUGIN_BASELINE_MISSING_WARN = exports.CLI_BASELINE_MISSING_WARN = void 0;
4
- exports.CLI_BASELINE_MISSING_WARN = 'Missing baseline stats, see "--baseline" option.';
5
- exports.PLUGIN_BASELINE_MISSING_WARN = 'Missing baseline stats, see "baseline" option.';
3
+ exports.CLI_NO_BASELINE = exports.CLI_MULTIPLE_STATS = exports.CLI_NO_COMPARE_MODE = exports.BASELINE_WRITING = exports.BASELINE_READING = exports.BASELINE_MISSING = void 0;
4
+ exports.BASELINE_MISSING = 'Baseline stats file is missing, see "baseline" option.';
5
+ exports.BASELINE_READING = 'Reading baseline data from';
6
+ exports.BASELINE_WRITING = 'Writing baseline data to';
6
7
  exports.CLI_NO_COMPARE_MODE = 'Not in compare mode (see --compare).';
7
8
  exports.CLI_MULTIPLE_STATS = 'Multiple stat files already set.';
8
9
  exports.CLI_NO_BASELINE = 'Not a baseline job (see --baseline).';
package/lib/text.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":";;;AAAa,QAAA,yBAAyB,GAAG,kDAAkD,CAAC;AAC/E,QAAA,4BAA4B,GAAG,gDAAgD,CAAC;AAEhF,QAAA,mBAAmB,GAAG,sCAAsC,CAAC;AAC7D,QAAA,kBAAkB,GAAG,kCAAkC,CAAC;AACxD,QAAA,eAAe,GAAG,sCAAsC,CAAC"}
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,wDAAwD,CAAC;AAC5E,QAAA,gBAAgB,GAAG,4BAA4B,CAAC;AAChD,QAAA,gBAAgB,GAAG,0BAA0B,CAAC;AAE9C,QAAA,mBAAmB,GAAG,sCAAsC,CAAC;AAC7D,QAAA,kBAAkB,GAAG,kCAAkC,CAAC;AACxD,QAAA,eAAe,GAAG,sCAAsC,CAAC"}
@@ -1,18 +1,27 @@
1
1
  import path from 'path';
2
- import { readJSON, outputJSON } from 'fs-extra';
2
+ import fs from 'fs/promises';
3
3
  import findCacheDir from 'find-cache-dir';
4
- const BASELINE_STATS_DIR = findCacheDir({ name: 'bundle-stats' }) || path.join(process.cwd(), './node_modules/.cache');
5
- const BASELINE_STATS_BASE = 'baseline.json';
6
- export function getBaselineStatsFilepath(from) {
7
- if (!from) {
4
+ export const BASELINE_STATS_DIR = findCacheDir({ name: 'bundle-stats' }) || path.join(process.cwd(), './node_modules/.cache');
5
+ export const BASELINE_STATS_BASE = 'baseline.json';
6
+ export const getBaselinePath = (outputPath = process.cwd(), outputDir = '', filepath = '') => {
7
+ if (!filepath) {
8
8
  return path.join(BASELINE_STATS_DIR, BASELINE_STATS_BASE);
9
9
  }
10
- return path.join(path.relative(from, BASELINE_STATS_DIR), BASELINE_STATS_BASE);
11
- }
12
- export async function readBaseline(from) {
13
- return readJSON(getBaselineStatsFilepath(from));
10
+ if (path.isAbsolute(filepath)) {
11
+ return filepath;
12
+ }
13
+ return path.join(outputPath, outputDir, filepath);
14
+ };
15
+ export const getBaselineRelativePath = (outputPath = process.cwd(), outputDir = '', filepath = '') => {
16
+ const absoluteFilepath = getBaselinePath(outputPath, outputDir, filepath);
17
+ return path.relative(outputPath, absoluteFilepath);
18
+ };
19
+ export async function readBaseline(baselineFilepath) {
20
+ const file = await fs.readFile(baselineFilepath, 'utf-8');
21
+ return JSON.parse(file);
14
22
  }
15
- export async function writeBaseline(data) {
16
- return outputJSON(getBaselineStatsFilepath(), data);
23
+ export async function writeBaseline(data, baselineFilepath) {
24
+ await fs.mkdir(path.dirname(baselineFilepath), { recursive: true });
25
+ return fs.writeFile(baselineFilepath, JSON.stringify(data), {});
17
26
  }
18
27
  //# sourceMappingURL=baseline.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"baseline.js","sourceRoot":"","sources":["../src/baseline.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAE1C,MAAM,kBAAkB,GAAG,YAAY,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uBAAuB,CAAC,CAAC;AACvH,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAE5C,MAAM,UAAU,wBAAwB,CAAC,IAAa;IACpD,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;KAC3D;IAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC,EAAE,mBAAmB,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAa;IAC9C,OAAO,QAAQ,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAU;IAC5C,OAAO,UAAU,CAAC,wBAAwB,EAAE,EAAE,IAAI,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"baseline.js","sourceRoot":"","sources":["../src/baseline.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAE1C,MAAM,CAAC,MAAM,kBAAkB,GAC7B,YAAY,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uBAAuB,CAAC,CAAC;AAC9F,MAAM,CAAC,MAAM,mBAAmB,GAAG,eAAe,CAAC;AAKnD,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAC1B,SAAS,GAAG,EAAE,EACd,QAAQ,GAAG,EAAE,EACL,EAAE;IACV,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,mBAAmB,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC,CAAC;AAKF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,EAC1B,SAAS,GAAG,EAAE,EACd,QAAQ,GAAG,EAAE,EACL,EAAE;IACV,MAAM,gBAAgB,GAAG,eAAe,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC1E,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;AACrD,CAAC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,gBAAwB;IACzD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAU,EAAE,gBAAwB;IACtE,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,OAAO,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;AAClE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"create-artifacts.js","sourceRoot":"","sources":["../src/create-artifacts.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIhF,MAAM,CAAC,MAAM,kBAAkB,GAAqB,CAAC,IAAI,EAAE,EAAE;;IAE3D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAG1F,IAAI,MAAM,GAAG,aAAa,CAAC,OAAO,CAChC,oBAAoB,EACpB,6BAA6B,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAC/D,CAAC;IAGF,MAAM,SAAS,GAAG,MAAA,MAAA,MAAA,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,CAAC,CAAC,0CAAE,QAAQ,0CAAE,OAAO,0CAAE,eAAe,0CAAE,IAAI,0CAAE,IAAI,CAAC;IAE5E,IAAI,SAAS,EAAE;QACb,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,UAAU,SAAS,eAAe,CAAC,CAAC;KACrF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;IAChE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC;AAcF,MAAM,UAAU,eAAe,CAC7B,IAAgB,EAChB,MAAW,EACX,OAAyB;IAEzB,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG;YACzB,MAAM,EAAE,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC;YACxC,QAAQ,EAAE,GAAG,eAAe,IAAI,UAAU,CAAC,IAAI,EAAE;SAClD,CAAC;KACH;IAED,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG;YACzB,MAAM,EAAE,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC;YACxC,QAAQ,EAAE,GAAG,eAAe,IAAI,UAAU,CAAC,IAAI,EAAE;SAClD,CAAC;KACH;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"create-artifacts.js","sourceRoot":"","sources":["../src/create-artifacts.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,8BAA8B,CAAC;AAEzD,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIhF,MAAM,CAAC,MAAM,kBAAkB,GAAqB,CAAC,IAAI,EAAE,EAAE;;IAE3D,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IAG1F,IAAI,MAAM,GAAG,aAAa,CAAC,OAAO,CAChC,oBAAoB,EACpB,6BAA6B,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,CAC/D,CAAC;IAGF,MAAM,SAAS,GAAG,MAAA,MAAA,MAAA,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,CAAC,CAAC,0CAAE,QAAQ,0CAAE,OAAO,0CAAE,eAAe,0CAAE,IAAI,0CAAE,IAAI,CAAC;IAE5E,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,UAAU,SAAS,eAAe,CAAC,CAAC;IACtF,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAqB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;IAChE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC;AAcF,MAAM,UAAU,eAAe,CAC7B,IAAgB,EAChB,MAAW,EACX,OAAyB;IAEzB,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG;YACzB,MAAM,EAAE,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC;YACxC,QAAQ,EAAE,GAAG,eAAe,IAAI,UAAU,CAAC,IAAI,EAAE;SAClD,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG;YACzB,MAAM,EAAE,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC;YACxC,QAAQ,EAAE,GAAG,eAAe,IAAI,UAAU,CAAC,IAAI,EAAE;SAClD,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/lib-esm/fs.js ADDED
@@ -0,0 +1,12 @@
1
+ import { createReadStream } from 'fs';
2
+ import { parser } from 'stream-json';
3
+ import { chain } from 'stream-chain';
4
+ import Asm from 'stream-json/Assembler';
5
+ export const readJSONStream = (filepath) => {
6
+ const pipeline = chain([createReadStream(filepath), parser()]);
7
+ const asm = Asm.connectTo(pipeline);
8
+ return new Promise((fulfill) => {
9
+ asm.on('done', (data) => fulfill(data.current));
10
+ });
11
+ };
12
+ //# sourceMappingURL=fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../src/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,IAAI,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,GAAG,MAAM,uBAAuB,CAAC;AAExC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAc,QAAgB,EAAc,EAAE;IAC1E,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAC/D,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
package/lib-esm/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import * as T from './text';
2
+ export * from './fs';
2
3
  export * from './baseline';
3
4
  export * from './create-artifacts';
4
5
  export * from './constants';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAE1B,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC"}
@@ -2,61 +2,68 @@ import path from 'path';
2
2
  import merge from 'lodash/merge';
3
3
  import { createJobs, createReport } from '@bundle-stats/utils';
4
4
  import filter from '@bundle-stats/plugin-webpack-filter';
5
- import validate from '@bundle-stats/plugin-webpack-validate';
6
5
  import * as TEXT from './text';
7
6
  import { createArtifacts } from './create-artifacts';
8
- import { getBaselineStatsFilepath, readBaseline } from './baseline';
7
+ import { getBaselinePath, getBaselineRelativePath, readBaseline } from './baseline';
9
8
  export function getReportInfo(report) {
10
9
  var _a, _b, _c;
11
10
  return (_c = (_b = (_a = report === null || report === void 0 ? void 0 : report.insights) === null || _a === void 0 ? void 0 : _a.webpack) === null || _b === void 0 ? void 0 : _b.assetsSizeTotal) === null || _c === void 0 ? void 0 : _c.data;
12
11
  }
13
12
  const DEFAULT_OPTIONS = {
14
- compare: true,
15
- baseline: Boolean(process.env.BUNDLE_STATS_BASELINE),
16
13
  html: true,
17
14
  json: false,
15
+ compare: true,
16
+ baseline: process.env.BUNDLE_STATS_BASELINE === 'true',
18
17
  outDir: '',
19
18
  silent: false,
20
19
  };
21
20
  export const generateReports = async (source, options, pluginOptions = {}) => {
22
21
  const { compare, baseline, html, json, outDir } = merge({}, DEFAULT_OPTIONS, options);
23
- const { invalidOptionsUrl: invalidParamsUrl, outputPath, logger = console } = pluginOptions;
22
+ const { outputPath = process.cwd(), logger = console } = pluginOptions;
24
23
  const newAssets = {};
25
- const invalid = validate(source);
26
- if (invalid) {
27
- logger.warn([invalid, invalidParamsUrl].join('\n'));
28
- }
29
24
  const data = filter(source);
30
25
  if (!data.builtAt) {
31
26
  data.builtAt = Date.now();
32
27
  }
33
- const baselineFilepath = getBaselineStatsFilepath(outputPath);
28
+ const baselineAbsolutePath = getBaselinePath(outputPath, outDir, options.baselineFilepath);
29
+ const baselinePath = getBaselineRelativePath(outputPath, outDir, baselineAbsolutePath);
34
30
  let baselineStats = null;
35
- try {
36
- if (compare) {
37
- const baselineStatsData = await readBaseline();
31
+ if (compare) {
32
+ try {
33
+ const baselineStatsData = await readBaseline(baselineAbsolutePath);
38
34
  baselineStats = filter(baselineStatsData);
39
- if (!options.silent)
40
- logger.info(`Read baseline from ${baselineFilepath}`);
35
+ if (!options.silent) {
36
+ logger.info(`${TEXT.BASELINE_READING} ${baselinePath}.`);
37
+ }
38
+ }
39
+ catch (err) {
40
+ logger.warn(`${TEXT.BASELINE_READING} ${baselinePath}. ${TEXT.BASELINE_MISSING}`);
41
41
  }
42
42
  }
43
- catch (err) {
44
- logger.warn(TEXT.PLUGIN_BASELINE_MISSING_WARN);
43
+ const sources = [{ webpack: data }];
44
+ if (baselineStats) {
45
+ sources.push({ webpack: baselineStats });
45
46
  }
46
- const jobs = createJobs([
47
- { webpack: data },
48
- ...(compare && baselineStats ? [{ webpack: baselineStats }] : []),
49
- ]);
47
+ const jobs = createJobs(sources);
50
48
  const report = createReport(jobs);
51
49
  const artifacts = createArtifacts(jobs, report, { html, json });
52
50
  Object.values(artifacts).forEach(({ filename, output }) => {
53
- const filepath = path.join(outDir, filename);
54
- newAssets[filepath] = output;
51
+ const relativeFilepath = path.join(outDir, filename);
52
+ newAssets[relativeFilepath] = {
53
+ type: 'report',
54
+ source: output,
55
+ filepath: path.join(outputPath, relativeFilepath),
56
+ };
55
57
  });
56
58
  if (baseline) {
57
- newAssets[baselineFilepath] = JSON.stringify(data);
58
- if (!options.silent)
59
- logger.info(`Write baseline data to ${baselineFilepath}`);
59
+ newAssets[baselinePath] = {
60
+ type: 'baseline',
61
+ source: JSON.stringify(data),
62
+ filepath: baselineAbsolutePath,
63
+ };
64
+ if (!options.silent) {
65
+ logger.info(`${TEXT.BASELINE_WRITING} ${baselinePath}`);
66
+ }
60
67
  }
61
68
  const info = getReportInfo(report);
62
69
  if (info && !options.silent) {
@@ -1 +1 @@
1
- {"version":3,"file":"reports.js","sourceRoot":"","sources":["../src/reports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reports.js","sourceRoot":"","sources":["../src/reports.ts"],"names":[],"mappings":"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"}
package/lib-esm/text.js CHANGED
@@ -1,5 +1,6 @@
1
- export const CLI_BASELINE_MISSING_WARN = 'Missing baseline stats, see "--baseline" option.';
2
- export const PLUGIN_BASELINE_MISSING_WARN = 'Missing baseline stats, see "baseline" option.';
1
+ export const BASELINE_MISSING = 'Baseline stats file is missing, see "baseline" option.';
2
+ export const BASELINE_READING = 'Reading baseline data from';
3
+ export const BASELINE_WRITING = 'Writing baseline data to';
3
4
  export const CLI_NO_COMPARE_MODE = 'Not in compare mode (see --compare).';
4
5
  export const CLI_MULTIPLE_STATS = 'Multiple stat files already set.';
5
6
  export const CLI_NO_BASELINE = 'Not a baseline job (see --baseline).';