@node-cli/bundlesize 1.0.0 → 2.0.0

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.
@@ -12,7 +12,7 @@ const flags = config.flags;
12
12
  const configurationFile = path.join(CWD, flags.configuration);
13
13
  const outputFile = flags.output === "" || flags.output === undefined ? STDOUT : path.join(CWD, flags.output);
14
14
  const prefix = flags.prefix || Date.now().toString();
15
- const resultsMap = new Map();
15
+ const currentResults = {};
16
16
  const log = new Logger({
17
17
  boring: flags.boring
18
18
  });
@@ -35,17 +35,13 @@ try {
35
35
  if (passed === false) {
36
36
  failed = true;
37
37
  }
38
- resultsMap.set(artifact.path, {
39
- path: file,
38
+ currentResults[artifact.path] = {
40
39
  fileSize,
41
40
  fileSizeGzip,
42
41
  limit: artifact.limit,
43
42
  passed
44
- });
43
+ };
45
44
  }
46
- const results = [
47
- ...resultsMap.values()
48
- ];
49
45
  let existingResults = {};
50
46
  if (outputFile !== STDOUT) {
51
47
  try {
@@ -54,7 +50,7 @@ try {
54
50
  // nothing to declare officer
55
51
  }
56
52
  }
57
- existingResults[prefix] = results;
53
+ existingResults[prefix] = currentResults;
58
54
  if (outputFile !== STDOUT) {
59
55
  fs.outputJsonSync(outputFile, existingResults, {
60
56
  spaces: 2
@@ -64,7 +60,7 @@ try {
64
60
  log.info(`Configuration: ${flags.configuration}`);
65
61
  log.info(`Output: ${outputFile}`);
66
62
  log.info(`Output prefix: ${prefix}`);
67
- log.log(`\n${JSON.stringify(results, undefined, 2)}`);
63
+ log.log(`\n${JSON.stringify(currentResults, undefined, 2)}`);
68
64
  }
69
65
  } catch (error) {
70
66
  log.error(error);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/bundlesize.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport { Logger } from \"@node-cli/logger\";\nimport bytes from \"bytes\";\nimport { config } from \"./parse.js\";\nimport fs from \"fs-extra\";\nimport { gzipSizeFromFileSync } from \"gzip-size\";\nimport path from \"node:path\";\nimport { statSync } from \"node:fs\";\n\nconst STDOUT = \"stdout\";\nconst CWD = process.cwd();\n\nconst flags = config.flags;\nconst configurationFile = path.join(CWD, flags.configuration);\nconst outputFile =\n\tflags.output === \"\" || flags.output === undefined\n\t\t? STDOUT\n\t\t: path.join(CWD, flags.output);\nconst prefix = flags.prefix || Date.now().toString();\nconst resultsMap = new Map();\nconst log = new Logger({\n\tboring: flags.boring,\n});\n\nlet failed = false;\n\nif (flags.configuration === \"\") {\n\tlog.error(\"Please provide a configuration file\");\n\tprocess.exit(0);\n}\n\nif (fs.existsSync(configurationFile) === false) {\n\tlog.error(\"Invalid or missing configuration file!\");\n\tprocess.exit(0);\n}\n\ntry {\n\tconst configuration = await import(configurationFile).then((m) => m.default);\n\n\tfor (const artifact of configuration) {\n\t\tconst file = path.join(path.dirname(configurationFile), artifact.path);\n\t\tconst fileSize = statSync(file).size;\n\t\tconst fileSizeGzip = gzipSizeFromFileSync(file);\n\t\tconst passed = fileSizeGzip < bytes(artifact.limit);\n\n\t\tif (passed === false) {\n\t\t\tfailed = true;\n\t\t}\n\n\t\tresultsMap.set(artifact.path, {\n\t\t\tpath: file,\n\t\t\tfileSize,\n\t\t\tfileSizeGzip,\n\t\t\tlimit: artifact.limit,\n\t\t\tpassed,\n\t\t});\n\t}\n\n\tconst results = [...resultsMap.values()];\n\tlet existingResults = {};\n\tif (outputFile !== STDOUT) {\n\t\ttry {\n\t\t\texistingResults = fs.readJsonSync(outputFile);\n\t\t} catch {\n\t\t\t// nothing to declare officer\n\t\t}\n\t}\n\texistingResults[prefix] = results;\n\tif (outputFile !== STDOUT) {\n\t\tfs.outputJsonSync(outputFile, existingResults, { spaces: 2 });\n\t}\n\n\tif (outputFile === STDOUT) {\n\t\tlog.info(`Configuration: ${flags.configuration}`);\n\t\tlog.info(`Output: ${outputFile}`);\n\t\tlog.info(`Output prefix: ${prefix}`);\n\t\tlog.log(`\\n${JSON.stringify(results, undefined, 2)}`);\n\t}\n} catch (error) {\n\tlog.error(error);\n\tprocess.exit(0);\n}\n\nif (failed && flags.silent === false) {\n\tprocess.exit(1);\n}\n"],"names":["Logger","bytes","config","fs","gzipSizeFromFileSync","path","statSync","STDOUT","CWD","process","cwd","flags","configurationFile","join","configuration","outputFile","output","undefined","prefix","Date","now","toString","resultsMap","Map","log","boring","failed","error","exit","existsSync","then","m","default","artifact","file","dirname","fileSize","size","fileSizeGzip","passed","limit","set","results","values","existingResults","readJsonSync","outputJsonSync","spaces","info","JSON","stringify","silent"],"mappings":";AAEA,SAASA,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,WAAW,QAAQ;AAC1B,SAASC,MAAM,QAAQ,aAAa;AACpC,OAAOC,QAAQ,WAAW;AAC1B,SAASC,oBAAoB,QAAQ,YAAY;AACjD,OAAOC,UAAU,YAAY;AAC7B,SAASC,QAAQ,QAAQ,UAAU;AAEnC,MAAMC,SAAS;AACf,MAAMC,MAAMC,QAAQC,GAAG;AAEvB,MAAMC,QAAQT,OAAOS,KAAK;AAC1B,MAAMC,oBAAoBP,KAAKQ,IAAI,CAACL,KAAKG,MAAMG,aAAa;AAC5D,MAAMC,aACLJ,MAAMK,MAAM,KAAK,MAAML,MAAMK,MAAM,KAAKC,YACrCV,SACAF,KAAKQ,IAAI,CAACL,KAAKG,MAAMK,MAAM;AAC/B,MAAME,SAASP,MAAMO,MAAM,IAAIC,KAAKC,GAAG,GAAGC,QAAQ;AAClD,MAAMC,aAAa,IAAIC;AACvB,MAAMC,MAAM,IAAIxB,OAAO;IACtByB,QAAQd,MAAMc,MAAM;AACrB;AAEA,IAAIC,SAAS;AAEb,IAAIf,MAAMG,aAAa,KAAK,IAAI;IAC/BU,IAAIG,KAAK,CAAC;IACVlB,QAAQmB,IAAI,CAAC;AACd;AAEA,IAAIzB,GAAG0B,UAAU,CAACjB,uBAAuB,OAAO;IAC/CY,IAAIG,KAAK,CAAC;IACVlB,QAAQmB,IAAI,CAAC;AACd;AAEA,IAAI;IACH,MAAMd,gBAAgB,MAAM,MAAM,CAACF,mBAAmBkB,IAAI,CAAC,CAACC,IAAMA,EAAEC,OAAO;IAE3E,KAAK,MAAMC,YAAYnB,cAAe;QACrC,MAAMoB,OAAO7B,KAAKQ,IAAI,CAACR,KAAK8B,OAAO,CAACvB,oBAAoBqB,SAAS5B,IAAI;QACrE,MAAM+B,WAAW9B,SAAS4B,MAAMG,IAAI;QACpC,MAAMC,eAAelC,qBAAqB8B;QAC1C,MAAMK,SAASD,eAAerC,MAAMgC,SAASO,KAAK;QAElD,IAAID,WAAW,OAAO;YACrBb,SAAS;QACV;QAEAJ,WAAWmB,GAAG,CAACR,SAAS5B,IAAI,EAAE;YAC7BA,MAAM6B;YACNE;YACAE;YACAE,OAAOP,SAASO,KAAK;YACrBD;QACD;IACD;IAEA,MAAMG,UAAU;WAAIpB,WAAWqB,MAAM;KAAG;IACxC,IAAIC,kBAAkB,CAAC;IACvB,IAAI7B,eAAeR,QAAQ;QAC1B,IAAI;YACHqC,kBAAkBzC,GAAG0C,YAAY,CAAC9B;QACnC,EAAE,OAAM;QACP,6BAA6B;QAC9B;IACD;IACA6B,eAAe,CAAC1B,OAAO,GAAGwB;IAC1B,IAAI3B,eAAeR,QAAQ;QAC1BJ,GAAG2C,cAAc,CAAC/B,YAAY6B,iBAAiB;YAAEG,QAAQ;QAAE;IAC5D;IAEA,IAAIhC,eAAeR,QAAQ;QAC1BiB,IAAIwB,IAAI,CAAC,CAAC,eAAe,EAAErC,MAAMG,aAAa,CAAC,CAAC;QAChDU,IAAIwB,IAAI,CAAC,CAAC,QAAQ,EAAEjC,WAAW,CAAC;QAChCS,IAAIwB,IAAI,CAAC,CAAC,eAAe,EAAE9B,OAAO,CAAC;QACnCM,IAAIA,GAAG,CAAC,CAAC,EAAE,EAAEyB,KAAKC,SAAS,CAACR,SAASzB,WAAW,GAAG,CAAC;IACrD;AACD,EAAE,OAAOU,OAAO;IACfH,IAAIG,KAAK,CAACA;IACVlB,QAAQmB,IAAI,CAAC;AACd;AAEA,IAAIF,UAAUf,MAAMwC,MAAM,KAAK,OAAO;IACrC1C,QAAQmB,IAAI,CAAC;AACd"}
1
+ {"version":3,"sources":["../src/bundlesize.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport { Logger } from \"@node-cli/logger\";\nimport bytes from \"bytes\";\nimport { config } from \"./parse.js\";\nimport fs from \"fs-extra\";\nimport { gzipSizeFromFileSync } from \"gzip-size\";\nimport path from \"node:path\";\nimport { statSync } from \"node:fs\";\n\nconst STDOUT = \"stdout\";\nconst CWD = process.cwd();\n\nconst flags = config.flags;\nconst configurationFile = path.join(CWD, flags.configuration);\nconst outputFile =\n\tflags.output === \"\" || flags.output === undefined\n\t\t? STDOUT\n\t\t: path.join(CWD, flags.output);\nconst prefix = flags.prefix || Date.now().toString();\nconst currentResults = {};\nconst log = new Logger({\n\tboring: flags.boring,\n});\n\nlet failed = false;\n\nif (flags.configuration === \"\") {\n\tlog.error(\"Please provide a configuration file\");\n\tprocess.exit(0);\n}\n\nif (fs.existsSync(configurationFile) === false) {\n\tlog.error(\"Invalid or missing configuration file!\");\n\tprocess.exit(0);\n}\n\ntry {\n\tconst configuration = await import(configurationFile).then((m) => m.default);\n\n\tfor (const artifact of configuration) {\n\t\tconst file = path.join(path.dirname(configurationFile), artifact.path);\n\t\tconst fileSize = statSync(file).size;\n\t\tconst fileSizeGzip = gzipSizeFromFileSync(file);\n\t\tconst passed = fileSizeGzip < bytes(artifact.limit);\n\n\t\tif (passed === false) {\n\t\t\tfailed = true;\n\t\t}\n\t\tcurrentResults[artifact.path] = {\n\t\t\tfileSize,\n\t\t\tfileSizeGzip,\n\t\t\tlimit: artifact.limit,\n\t\t\tpassed,\n\t\t};\n\t}\n\n\tlet existingResults = {};\n\tif (outputFile !== STDOUT) {\n\t\ttry {\n\t\t\texistingResults = fs.readJsonSync(outputFile);\n\t\t} catch {\n\t\t\t// nothing to declare officer\n\t\t}\n\t}\n\texistingResults[prefix] = currentResults;\n\tif (outputFile !== STDOUT) {\n\t\tfs.outputJsonSync(outputFile, existingResults, { spaces: 2 });\n\t}\n\n\tif (outputFile === STDOUT) {\n\t\tlog.info(`Configuration: ${flags.configuration}`);\n\t\tlog.info(`Output: ${outputFile}`);\n\t\tlog.info(`Output prefix: ${prefix}`);\n\t\tlog.log(`\\n${JSON.stringify(currentResults, undefined, 2)}`);\n\t}\n} catch (error) {\n\tlog.error(error);\n\tprocess.exit(0);\n}\n\nif (failed && flags.silent === false) {\n\tprocess.exit(1);\n}\n"],"names":["Logger","bytes","config","fs","gzipSizeFromFileSync","path","statSync","STDOUT","CWD","process","cwd","flags","configurationFile","join","configuration","outputFile","output","undefined","prefix","Date","now","toString","currentResults","log","boring","failed","error","exit","existsSync","then","m","default","artifact","file","dirname","fileSize","size","fileSizeGzip","passed","limit","existingResults","readJsonSync","outputJsonSync","spaces","info","JSON","stringify","silent"],"mappings":";AAEA,SAASA,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,WAAW,QAAQ;AAC1B,SAASC,MAAM,QAAQ,aAAa;AACpC,OAAOC,QAAQ,WAAW;AAC1B,SAASC,oBAAoB,QAAQ,YAAY;AACjD,OAAOC,UAAU,YAAY;AAC7B,SAASC,QAAQ,QAAQ,UAAU;AAEnC,MAAMC,SAAS;AACf,MAAMC,MAAMC,QAAQC,GAAG;AAEvB,MAAMC,QAAQT,OAAOS,KAAK;AAC1B,MAAMC,oBAAoBP,KAAKQ,IAAI,CAACL,KAAKG,MAAMG,aAAa;AAC5D,MAAMC,aACLJ,MAAMK,MAAM,KAAK,MAAML,MAAMK,MAAM,KAAKC,YACrCV,SACAF,KAAKQ,IAAI,CAACL,KAAKG,MAAMK,MAAM;AAC/B,MAAME,SAASP,MAAMO,MAAM,IAAIC,KAAKC,GAAG,GAAGC,QAAQ;AAClD,MAAMC,iBAAiB,CAAC;AACxB,MAAMC,MAAM,IAAIvB,OAAO;IACtBwB,QAAQb,MAAMa,MAAM;AACrB;AAEA,IAAIC,SAAS;AAEb,IAAId,MAAMG,aAAa,KAAK,IAAI;IAC/BS,IAAIG,KAAK,CAAC;IACVjB,QAAQkB,IAAI,CAAC;AACd;AAEA,IAAIxB,GAAGyB,UAAU,CAAChB,uBAAuB,OAAO;IAC/CW,IAAIG,KAAK,CAAC;IACVjB,QAAQkB,IAAI,CAAC;AACd;AAEA,IAAI;IACH,MAAMb,gBAAgB,MAAM,MAAM,CAACF,mBAAmBiB,IAAI,CAAC,CAACC,IAAMA,EAAEC,OAAO;IAE3E,KAAK,MAAMC,YAAYlB,cAAe;QACrC,MAAMmB,OAAO5B,KAAKQ,IAAI,CAACR,KAAK6B,OAAO,CAACtB,oBAAoBoB,SAAS3B,IAAI;QACrE,MAAM8B,WAAW7B,SAAS2B,MAAMG,IAAI;QACpC,MAAMC,eAAejC,qBAAqB6B;QAC1C,MAAMK,SAASD,eAAepC,MAAM+B,SAASO,KAAK;QAElD,IAAID,WAAW,OAAO;YACrBb,SAAS;QACV;QACAH,cAAc,CAACU,SAAS3B,IAAI,CAAC,GAAG;YAC/B8B;YACAE;YACAE,OAAOP,SAASO,KAAK;YACrBD;QACD;IACD;IAEA,IAAIE,kBAAkB,CAAC;IACvB,IAAIzB,eAAeR,QAAQ;QAC1B,IAAI;YACHiC,kBAAkBrC,GAAGsC,YAAY,CAAC1B;QACnC,EAAE,OAAM;QACP,6BAA6B;QAC9B;IACD;IACAyB,eAAe,CAACtB,OAAO,GAAGI;IAC1B,IAAIP,eAAeR,QAAQ;QAC1BJ,GAAGuC,cAAc,CAAC3B,YAAYyB,iBAAiB;YAAEG,QAAQ;QAAE;IAC5D;IAEA,IAAI5B,eAAeR,QAAQ;QAC1BgB,IAAIqB,IAAI,CAAC,CAAC,eAAe,EAAEjC,MAAMG,aAAa,CAAC,CAAC;QAChDS,IAAIqB,IAAI,CAAC,CAAC,QAAQ,EAAE7B,WAAW,CAAC;QAChCQ,IAAIqB,IAAI,CAAC,CAAC,eAAe,EAAE1B,OAAO,CAAC;QACnCK,IAAIA,GAAG,CAAC,CAAC,EAAE,EAAEsB,KAAKC,SAAS,CAACxB,gBAAgBL,WAAW,GAAG,CAAC;IAC5D;AACD,EAAE,OAAOS,OAAO;IACfH,IAAIG,KAAK,CAACA;IACVjB,QAAQkB,IAAI,CAAC;AACd;AAEA,IAAIF,UAAUd,MAAMoC,MAAM,KAAK,OAAO;IACrCtC,QAAQkB,IAAI,CAAC;AACd"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@node-cli/bundlesize",
3
- "version": "1.0.0",
3
+ "version": "2.0.0",
4
4
  "license": "MIT",
5
5
  "author": "Arno Versini",
6
6
  "description": "Simple CLI tool that checks file(s) size and report if limits have been reached",
@@ -32,5 +32,5 @@
32
32
  "publishConfig": {
33
33
  "access": "public"
34
34
  },
35
- "gitHead": "e756a3b74a22b5668fa4ba87025eccfcc3645472"
35
+ "gitHead": "b9369507914aadaa0019f11f6b2db1eb277d35f7"
36
36
  }