@xylabs/ts-scripts-yarn3 3.0.82 → 3.0.84

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.
@@ -36,6 +36,23 @@ module.exports = __toCommonJS(lint_exports);
36
36
  var import_chalk = __toESM(require("chalk"));
37
37
  var import_eslint = require("eslint");
38
38
  var import_lib = require("../lib");
39
+ const dumpMessages = (lintResults) => {
40
+ const colors = ["white", "yellow", "red"];
41
+ const severity = ["none", "warning", "error"];
42
+ lintResults.forEach((lintResult) => {
43
+ if (lintResult.messages.length > 0) {
44
+ console.log(import_chalk.default.gray(`${lintResult.filePath}`));
45
+ lintResult.messages.forEach((message) => {
46
+ console.log(
47
+ import_chalk.default.gray(` ${message.line}:${message.column}`),
48
+ import_chalk.default[colors[message.severity]](` ${severity[message.severity]}`),
49
+ import_chalk.default.white(` ${message.message}`),
50
+ import_chalk.default.gray(` ${message.ruleId}`)
51
+ );
52
+ });
53
+ }
54
+ });
55
+ };
39
56
  const lintPackage = async ({ pkg }) => {
40
57
  const workspace = (0, import_lib.yarnWorkspaces)().find((workspace2) => workspace2.name === pkg);
41
58
  if (!workspace) {
@@ -44,14 +61,14 @@ const lintPackage = async ({ pkg }) => {
44
61
  }
45
62
  const engine = new import_eslint.ESLint({ cache: true });
46
63
  const lintResults = await engine.lintFiles(workspace.location);
47
- console.log(lintResults);
64
+ dumpMessages(lintResults);
48
65
  const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0);
49
66
  return errorCount;
50
67
  };
51
68
  const lintAll = async () => {
52
69
  const engine = new import_eslint.ESLint({ cache: true });
53
70
  const lintResults = await engine.lintFiles("./**/*.*");
54
- console.log(lintResults);
71
+ dumpMessages(lintResults);
55
72
  const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0);
56
73
  return errorCount;
57
74
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/actions/lint.ts"],"sourcesContent":["import chalk from 'chalk'\nimport { ESLint } from 'eslint'\n\nimport { runSteps, yarnWorkspaces } from '../lib'\n\nexport interface LintParams {\n pkg?: string\n verbose?: boolean\n}\n\nexport interface LintPackageParams {\n pkg: string\n verbose?: boolean\n}\n\nexport const lintPackage = async ({ pkg }: LintParams) => {\n const workspace = yarnWorkspaces().find((workspace) => workspace.name === pkg)\n if (!workspace) {\n console.error(chalk.red(`Unable to locate package [${chalk.magenta(pkg)}]`))\n process.exit(1)\n }\n\n const engine = new ESLint({ cache: true })\n\n const lintResults = await engine.lintFiles(workspace.location)\n\n console.log(lintResults)\n\n const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n\n return errorCount\n}\n\nexport const lintAll = async () => {\n const engine = new ESLint({ cache: true })\n\n const lintResults = await engine.lintFiles('./**/*.*')\n\n console.log(lintResults)\n\n const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n\n return errorCount\n}\n\nexport const lint = async ({ pkg }: LintParams = {}) => {\n return pkg ? await lintPackage({ pkg }) : runSteps('Lint-Caching [All]', [['yarn', ['eslint', '.', '--cache']]])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAClB,oBAAuB;AAEvB,iBAAyC;AAYlC,MAAM,cAAc,OAAO,EAAE,IAAI,MAAkB;AACxD,QAAM,gBAAY,2BAAe,EAAE,KAAK,CAACA,eAAcA,WAAU,SAAS,GAAG;AAC7E,MAAI,CAAC,WAAW;AACd,YAAQ,MAAM,aAAAC,QAAM,IAAI,6BAA6B,aAAAA,QAAM,QAAQ,GAAG,CAAC,GAAG,CAAC;AAC3E,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,QAAM,SAAS,IAAI,qBAAO,EAAE,OAAO,KAAK,CAAC;AAEzC,QAAM,cAAc,MAAM,OAAO,UAAU,UAAU,QAAQ;AAE7D,UAAQ,IAAI,WAAW;AAEvB,QAAM,aAAa,YAAY,OAAO,CAAC,MAAM,eAAe,OAAO,WAAW,YAAY,CAAC;AAE3F,SAAO;AACT;AAEO,MAAM,UAAU,YAAY;AACjC,QAAM,SAAS,IAAI,qBAAO,EAAE,OAAO,KAAK,CAAC;AAEzC,QAAM,cAAc,MAAM,OAAO,UAAU,UAAU;AAErD,UAAQ,IAAI,WAAW;AAEvB,QAAM,aAAa,YAAY,OAAO,CAAC,MAAM,eAAe,OAAO,WAAW,YAAY,CAAC;AAE3F,SAAO;AACT;AAEO,MAAM,OAAO,OAAO,EAAE,IAAI,IAAgB,CAAC,MAAM;AACtD,SAAO,MAAM,MAAM,YAAY,EAAE,IAAI,CAAC,QAAI,qBAAS,sBAAsB,CAAC,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC;AACjH;","names":["workspace","chalk"]}
1
+ {"version":3,"sources":["../../src/actions/lint.ts"],"sourcesContent":["import chalk from 'chalk'\nimport { ESLint } from 'eslint'\n\nimport { runSteps, yarnWorkspaces } from '../lib'\n\nexport interface LintParams {\n pkg?: string\n verbose?: boolean\n}\n\nexport interface LintPackageParams {\n pkg: string\n verbose?: boolean\n}\n\nconst dumpMessages = (lintResults: ESLint.LintResult[]) => {\n const colors: ('white' | 'red' | 'yellow')[] = ['white', 'yellow', 'red']\n const severity: string[] = ['none', 'warning', 'error']\n\n lintResults.forEach((lintResult) => {\n if (lintResult.messages.length > 0) {\n console.log(chalk.gray(`${lintResult.filePath}`))\n lintResult.messages.forEach((message) => {\n console.log(\n chalk.gray(`\\t${message.line}:${message.column}`),\n chalk[colors[message.severity]](`\\t${severity[message.severity]}`),\n chalk.white(`\\t${message.message}`),\n chalk.gray(`\\t${message.ruleId}`),\n )\n })\n }\n })\n}\n\nexport const lintPackage = async ({ pkg }: LintParams) => {\n const workspace = yarnWorkspaces().find((workspace) => workspace.name === pkg)\n if (!workspace) {\n console.error(chalk.red(`Unable to locate package [${chalk.magenta(pkg)}]`))\n process.exit(1)\n }\n\n const engine = new ESLint({ cache: true })\n\n const lintResults = await engine.lintFiles(workspace.location)\n\n dumpMessages(lintResults)\n\n const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n\n return errorCount\n}\n\nexport const lintAll = async () => {\n const engine = new ESLint({ cache: true })\n\n const lintResults = await engine.lintFiles('./**/*.*')\n\n dumpMessages(lintResults)\n\n const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n\n return errorCount\n}\n\nexport const lint = async ({ pkg }: LintParams = {}) => {\n return pkg ? await lintPackage({ pkg }) : runSteps('Lint-Caching [All]', [['yarn', ['eslint', '.', '--cache']]])\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAClB,oBAAuB;AAEvB,iBAAyC;AAYzC,MAAM,eAAe,CAAC,gBAAqC;AACzD,QAAM,SAAyC,CAAC,SAAS,UAAU,KAAK;AACxE,QAAM,WAAqB,CAAC,QAAQ,WAAW,OAAO;AAEtD,cAAY,QAAQ,CAAC,eAAe;AAClC,QAAI,WAAW,SAAS,SAAS,GAAG;AAClC,cAAQ,IAAI,aAAAA,QAAM,KAAK,GAAG,WAAW,QAAQ,EAAE,CAAC;AAChD,iBAAW,SAAS,QAAQ,CAAC,YAAY;AACvC,gBAAQ;AAAA,UACN,aAAAA,QAAM,KAAK,IAAK,QAAQ,IAAI,IAAI,QAAQ,MAAM,EAAE;AAAA,UAChD,aAAAA,QAAM,OAAO,QAAQ,QAAQ,CAAC,EAAE,IAAK,SAAS,QAAQ,QAAQ,CAAC,EAAE;AAAA,UACjE,aAAAA,QAAM,MAAM,IAAK,QAAQ,OAAO,EAAE;AAAA,UAClC,aAAAA,QAAM,KAAK,IAAK,QAAQ,MAAM,EAAE;AAAA,QAClC;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AACH;AAEO,MAAM,cAAc,OAAO,EAAE,IAAI,MAAkB;AACxD,QAAM,gBAAY,2BAAe,EAAE,KAAK,CAACC,eAAcA,WAAU,SAAS,GAAG;AAC7E,MAAI,CAAC,WAAW;AACd,YAAQ,MAAM,aAAAD,QAAM,IAAI,6BAA6B,aAAAA,QAAM,QAAQ,GAAG,CAAC,GAAG,CAAC;AAC3E,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,QAAM,SAAS,IAAI,qBAAO,EAAE,OAAO,KAAK,CAAC;AAEzC,QAAM,cAAc,MAAM,OAAO,UAAU,UAAU,QAAQ;AAE7D,eAAa,WAAW;AAExB,QAAM,aAAa,YAAY,OAAO,CAAC,MAAM,eAAe,OAAO,WAAW,YAAY,CAAC;AAE3F,SAAO;AACT;AAEO,MAAM,UAAU,YAAY;AACjC,QAAM,SAAS,IAAI,qBAAO,EAAE,OAAO,KAAK,CAAC;AAEzC,QAAM,cAAc,MAAM,OAAO,UAAU,UAAU;AAErD,eAAa,WAAW;AAExB,QAAM,aAAa,YAAY,OAAO,CAAC,MAAM,eAAe,OAAO,WAAW,YAAY,CAAC;AAE3F,SAAO;AACT;AAEO,MAAM,OAAO,OAAO,EAAE,IAAI,IAAgB,CAAC,MAAM;AACtD,SAAO,MAAM,MAAM,YAAY,EAAE,IAAI,CAAC,QAAI,qBAAS,sBAAsB,CAAC,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC;AACjH;","names":["chalk","workspace"]}
@@ -1,6 +1,23 @@
1
1
  import chalk from "chalk";
2
2
  import { ESLint } from "eslint";
3
3
  import { runSteps, yarnWorkspaces } from "../lib";
4
+ const dumpMessages = (lintResults) => {
5
+ const colors = ["white", "yellow", "red"];
6
+ const severity = ["none", "warning", "error"];
7
+ lintResults.forEach((lintResult) => {
8
+ if (lintResult.messages.length > 0) {
9
+ console.log(chalk.gray(`${lintResult.filePath}`));
10
+ lintResult.messages.forEach((message) => {
11
+ console.log(
12
+ chalk.gray(` ${message.line}:${message.column}`),
13
+ chalk[colors[message.severity]](` ${severity[message.severity]}`),
14
+ chalk.white(` ${message.message}`),
15
+ chalk.gray(` ${message.ruleId}`)
16
+ );
17
+ });
18
+ }
19
+ });
20
+ };
4
21
  const lintPackage = async ({ pkg }) => {
5
22
  const workspace = yarnWorkspaces().find((workspace2) => workspace2.name === pkg);
6
23
  if (!workspace) {
@@ -9,14 +26,14 @@ const lintPackage = async ({ pkg }) => {
9
26
  }
10
27
  const engine = new ESLint({ cache: true });
11
28
  const lintResults = await engine.lintFiles(workspace.location);
12
- console.log(lintResults);
29
+ dumpMessages(lintResults);
13
30
  const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0);
14
31
  return errorCount;
15
32
  };
16
33
  const lintAll = async () => {
17
34
  const engine = new ESLint({ cache: true });
18
35
  const lintResults = await engine.lintFiles("./**/*.*");
19
- console.log(lintResults);
36
+ dumpMessages(lintResults);
20
37
  const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0);
21
38
  return errorCount;
22
39
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/actions/lint.ts"],"sourcesContent":["import chalk from 'chalk'\nimport { ESLint } from 'eslint'\n\nimport { runSteps, yarnWorkspaces } from '../lib'\n\nexport interface LintParams {\n pkg?: string\n verbose?: boolean\n}\n\nexport interface LintPackageParams {\n pkg: string\n verbose?: boolean\n}\n\nexport const lintPackage = async ({ pkg }: LintParams) => {\n const workspace = yarnWorkspaces().find((workspace) => workspace.name === pkg)\n if (!workspace) {\n console.error(chalk.red(`Unable to locate package [${chalk.magenta(pkg)}]`))\n process.exit(1)\n }\n\n const engine = new ESLint({ cache: true })\n\n const lintResults = await engine.lintFiles(workspace.location)\n\n console.log(lintResults)\n\n const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n\n return errorCount\n}\n\nexport const lintAll = async () => {\n const engine = new ESLint({ cache: true })\n\n const lintResults = await engine.lintFiles('./**/*.*')\n\n console.log(lintResults)\n\n const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n\n return errorCount\n}\n\nexport const lint = async ({ pkg }: LintParams = {}) => {\n return pkg ? await lintPackage({ pkg }) : runSteps('Lint-Caching [All]', [['yarn', ['eslint', '.', '--cache']]])\n}\n"],"mappings":"AAAA,OAAO,WAAW;AAClB,SAAS,cAAc;AAEvB,SAAS,UAAU,sBAAsB;AAYlC,MAAM,cAAc,OAAO,EAAE,IAAI,MAAkB;AACxD,QAAM,YAAY,eAAe,EAAE,KAAK,CAACA,eAAcA,WAAU,SAAS,GAAG;AAC7E,MAAI,CAAC,WAAW;AACd,YAAQ,MAAM,MAAM,IAAI,6BAA6B,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC;AAC3E,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,QAAM,SAAS,IAAI,OAAO,EAAE,OAAO,KAAK,CAAC;AAEzC,QAAM,cAAc,MAAM,OAAO,UAAU,UAAU,QAAQ;AAE7D,UAAQ,IAAI,WAAW;AAEvB,QAAM,aAAa,YAAY,OAAO,CAAC,MAAM,eAAe,OAAO,WAAW,YAAY,CAAC;AAE3F,SAAO;AACT;AAEO,MAAM,UAAU,YAAY;AACjC,QAAM,SAAS,IAAI,OAAO,EAAE,OAAO,KAAK,CAAC;AAEzC,QAAM,cAAc,MAAM,OAAO,UAAU,UAAU;AAErD,UAAQ,IAAI,WAAW;AAEvB,QAAM,aAAa,YAAY,OAAO,CAAC,MAAM,eAAe,OAAO,WAAW,YAAY,CAAC;AAE3F,SAAO;AACT;AAEO,MAAM,OAAO,OAAO,EAAE,IAAI,IAAgB,CAAC,MAAM;AACtD,SAAO,MAAM,MAAM,YAAY,EAAE,IAAI,CAAC,IAAI,SAAS,sBAAsB,CAAC,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC;AACjH;","names":["workspace"]}
1
+ {"version":3,"sources":["../../src/actions/lint.ts"],"sourcesContent":["import chalk from 'chalk'\nimport { ESLint } from 'eslint'\n\nimport { runSteps, yarnWorkspaces } from '../lib'\n\nexport interface LintParams {\n pkg?: string\n verbose?: boolean\n}\n\nexport interface LintPackageParams {\n pkg: string\n verbose?: boolean\n}\n\nconst dumpMessages = (lintResults: ESLint.LintResult[]) => {\n const colors: ('white' | 'red' | 'yellow')[] = ['white', 'yellow', 'red']\n const severity: string[] = ['none', 'warning', 'error']\n\n lintResults.forEach((lintResult) => {\n if (lintResult.messages.length > 0) {\n console.log(chalk.gray(`${lintResult.filePath}`))\n lintResult.messages.forEach((message) => {\n console.log(\n chalk.gray(`\\t${message.line}:${message.column}`),\n chalk[colors[message.severity]](`\\t${severity[message.severity]}`),\n chalk.white(`\\t${message.message}`),\n chalk.gray(`\\t${message.ruleId}`),\n )\n })\n }\n })\n}\n\nexport const lintPackage = async ({ pkg }: LintParams) => {\n const workspace = yarnWorkspaces().find((workspace) => workspace.name === pkg)\n if (!workspace) {\n console.error(chalk.red(`Unable to locate package [${chalk.magenta(pkg)}]`))\n process.exit(1)\n }\n\n const engine = new ESLint({ cache: true })\n\n const lintResults = await engine.lintFiles(workspace.location)\n\n dumpMessages(lintResults)\n\n const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n\n return errorCount\n}\n\nexport const lintAll = async () => {\n const engine = new ESLint({ cache: true })\n\n const lintResults = await engine.lintFiles('./**/*.*')\n\n dumpMessages(lintResults)\n\n const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)\n\n return errorCount\n}\n\nexport const lint = async ({ pkg }: LintParams = {}) => {\n return pkg ? await lintPackage({ pkg }) : runSteps('Lint-Caching [All]', [['yarn', ['eslint', '.', '--cache']]])\n}\n"],"mappings":"AAAA,OAAO,WAAW;AAClB,SAAS,cAAc;AAEvB,SAAS,UAAU,sBAAsB;AAYzC,MAAM,eAAe,CAAC,gBAAqC;AACzD,QAAM,SAAyC,CAAC,SAAS,UAAU,KAAK;AACxE,QAAM,WAAqB,CAAC,QAAQ,WAAW,OAAO;AAEtD,cAAY,QAAQ,CAAC,eAAe;AAClC,QAAI,WAAW,SAAS,SAAS,GAAG;AAClC,cAAQ,IAAI,MAAM,KAAK,GAAG,WAAW,QAAQ,EAAE,CAAC;AAChD,iBAAW,SAAS,QAAQ,CAAC,YAAY;AACvC,gBAAQ;AAAA,UACN,MAAM,KAAK,IAAK,QAAQ,IAAI,IAAI,QAAQ,MAAM,EAAE;AAAA,UAChD,MAAM,OAAO,QAAQ,QAAQ,CAAC,EAAE,IAAK,SAAS,QAAQ,QAAQ,CAAC,EAAE;AAAA,UACjE,MAAM,MAAM,IAAK,QAAQ,OAAO,EAAE;AAAA,UAClC,MAAM,KAAK,IAAK,QAAQ,MAAM,EAAE;AAAA,QAClC;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AACH;AAEO,MAAM,cAAc,OAAO,EAAE,IAAI,MAAkB;AACxD,QAAM,YAAY,eAAe,EAAE,KAAK,CAACA,eAAcA,WAAU,SAAS,GAAG;AAC7E,MAAI,CAAC,WAAW;AACd,YAAQ,MAAM,MAAM,IAAI,6BAA6B,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC;AAC3E,YAAQ,KAAK,CAAC;AAAA,EAChB;AAEA,QAAM,SAAS,IAAI,OAAO,EAAE,OAAO,KAAK,CAAC;AAEzC,QAAM,cAAc,MAAM,OAAO,UAAU,UAAU,QAAQ;AAE7D,eAAa,WAAW;AAExB,QAAM,aAAa,YAAY,OAAO,CAAC,MAAM,eAAe,OAAO,WAAW,YAAY,CAAC;AAE3F,SAAO;AACT;AAEO,MAAM,UAAU,YAAY;AACjC,QAAM,SAAS,IAAI,OAAO,EAAE,OAAO,KAAK,CAAC;AAEzC,QAAM,cAAc,MAAM,OAAO,UAAU,UAAU;AAErD,eAAa,WAAW;AAExB,QAAM,aAAa,YAAY,OAAO,CAAC,MAAM,eAAe,OAAO,WAAW,YAAY,CAAC;AAE3F,SAAO;AACT;AAEO,MAAM,OAAO,OAAO,EAAE,IAAI,IAAgB,CAAC,MAAM;AACtD,SAAO,MAAM,MAAM,YAAY,EAAE,IAAI,CAAC,IAAI,SAAS,sBAAsB,CAAC,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC;AACjH;","names":["workspace"]}
@@ -46,17 +46,23 @@ const packageDeps = async () => {
46
46
  const error = ex;
47
47
  console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`);
48
48
  }
49
- ignoreMatches.push("@xylabs/ts-scripts-yarn3");
50
- ignoreMatches.push("@xylabs/tsconfig");
51
- ignoreMatches.push("@xylabs/tsconfig-dom");
52
- ignoreMatches.push("@xylabs/tsconfig-react");
53
- ignoreMatches.push("@xylabs/tsconfig-jest");
54
- ignoreMatches.push("typescript");
49
+ const defaultIgnorePatterns = ["*.d.ts", "dist", ".*"];
50
+ const defaultIgnoreMatches = [
51
+ "@xylabs/ts-scripts-yarn3",
52
+ "@xylabs/tsconfig",
53
+ "@xylabs/tsconfig-dom",
54
+ "@xylabs/tsconfig-react",
55
+ "@xylabs/tsconfig-jest",
56
+ "typescript"
57
+ ];
55
58
  const unusedList = await Promise.all([
56
- (0, import_depcheck.default)(`${pkg}/.`, { ignoreMatches, ignorePatterns: ["*.stories.*", "*.spec.*", "*.d.ts", "dist", ".*"] }),
57
59
  (0, import_depcheck.default)(`${pkg}/.`, {
58
- ignoreMatches,
59
- ignorePatterns: ["*.ts", "*.d.ts", "dist", ".*"],
60
+ ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],
61
+ ignorePatterns: ["*.stories.*", "*.spec.*", ...defaultIgnorePatterns]
62
+ }),
63
+ (0, import_depcheck.default)(`${pkg}/.`, {
64
+ ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],
65
+ ignorePatterns: [...defaultIgnorePatterns],
60
66
  specials: [import_depcheck.special.eslint, import_depcheck.special.babel, import_depcheck.special.bin, import_depcheck.special.prettier, import_depcheck.special.jest, import_depcheck.special.mocha]
61
67
  })
62
68
  ]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/actions/package/deps.ts"],"sourcesContent":["/* eslint-disable max-statements */\nimport chalk from 'chalk'\nimport depcheck, { special } from 'depcheck'\nimport { existsSync, readFileSync } from 'fs'\n\nimport { checkResult } from '../../lib'\n\nexport const packageDeps = async () => {\n const pkg = process.env.INIT_CWD\n const pkgName = process.env.npm_package_name\n\n const rawIgnore = existsSync(`${pkg}/.depcheckrc`)\n ? readFileSync(`${pkg}/.depcheckrc`, { encoding: 'utf8' }).replace('ignores:', '\"ignores\":')\n : undefined\n let ignoreMatches: string[] = []\n try {\n ignoreMatches = rawIgnore ? (JSON.parse(`{${rawIgnore}}`).ignores as string[]) : []\n } catch (ex) {\n const error = ex as Error\n console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`)\n }\n\n ignoreMatches.push('@xylabs/ts-scripts-yarn3')\n ignoreMatches.push('@xylabs/tsconfig')\n ignoreMatches.push('@xylabs/tsconfig-dom')\n ignoreMatches.push('@xylabs/tsconfig-react')\n ignoreMatches.push('@xylabs/tsconfig-jest')\n ignoreMatches.push('typescript')\n\n const unusedList = await Promise.all([\n depcheck(`${pkg}/.`, { ignoreMatches, ignorePatterns: ['*.stories.*', '*.spec.*', '*.d.ts', 'dist', '.*'] }),\n depcheck(`${pkg}/.`, {\n ignoreMatches,\n ignorePatterns: ['*.ts', '*.d.ts', 'dist', '.*'],\n specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha],\n }),\n ])\n\n const unusedCode = unusedList[0]\n const unusedTests = unusedList[1]\n\n const unused: depcheck.Results = {\n ...unusedCode,\n /* we only reports the unused devDeps if both are not using it */\n devDependencies: unusedTests.devDependencies.filter((value) => !!unusedCode.devDependencies.find((devValue) => devValue === value)),\n }\n\n const errorCount =\n unused.dependencies.length +\n unused.devDependencies.length +\n Object.entries(unused.invalidDirs).length +\n Object.entries(unused.invalidFiles).length +\n Object.entries(unused.missing).length\n\n if (errorCount > 0) {\n console.log(`Deps [${pkgName}]`)\n } else {\n console.log(`Deps [${pkgName}] - Ok`)\n }\n\n if (unused.dependencies.length) {\n const message = [chalk.yellow(`${unused.dependencies.length} Unused dependencies`)]\n unused.dependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (unused.devDependencies.length) {\n const message = [chalk.yellow(`${unused.devDependencies.length} Unused devDependencies`)]\n unused.devDependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (Object.entries(unused.invalidDirs).length) {\n Object.entries(unused.invalidDirs).forEach(([key, value]) => console.warn(chalk.gray(`Invalid Dir: ${key}: ${value}`)))\n }\n\n if (Object.entries(unused.invalidFiles).length) {\n Object.entries(unused.invalidFiles).forEach(([key, value]) => console.warn(chalk.gray(`Invalid File: ${key}: ${value}`)))\n }\n\n if (Object.entries(unusedCode.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedCode.missing).length} Missing dependencies`)]\n Object.entries(unusedCode.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n if (Object.entries(unusedTests.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedTests.missing).length} Missing devDependencies`)]\n Object.entries(unusedTests.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n checkResult(`Deps [${pkgName}]`, errorCount, 'warn', false)\n\n //returning 0 here since we never want deps to be fatal\n return 0\n}\n"],"mappings":"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","names":["depcheck","chalk"]}
1
+ {"version":3,"sources":["../../../src/actions/package/deps.ts"],"sourcesContent":["/* eslint-disable max-statements */\nimport chalk from 'chalk'\nimport depcheck, { special } from 'depcheck'\nimport { existsSync, readFileSync } from 'fs'\n\nimport { checkResult } from '../../lib'\n\nexport const packageDeps = async () => {\n const pkg = process.env.INIT_CWD\n const pkgName = process.env.npm_package_name\n\n const rawIgnore = existsSync(`${pkg}/.depcheckrc`)\n ? readFileSync(`${pkg}/.depcheckrc`, { encoding: 'utf8' }).replace('ignores:', '\"ignores\":')\n : undefined\n let ignoreMatches: string[] = []\n try {\n ignoreMatches = rawIgnore ? (JSON.parse(`{${rawIgnore}}`).ignores as string[]) : []\n } catch (ex) {\n const error = ex as Error\n console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`)\n }\n\n const defaultIgnorePatterns = ['*.d.ts', 'dist', '.*']\n const defaultIgnoreMatches = [\n '@xylabs/ts-scripts-yarn3',\n '@xylabs/tsconfig',\n '@xylabs/tsconfig-dom',\n '@xylabs/tsconfig-react',\n '@xylabs/tsconfig-jest',\n 'typescript',\n ]\n\n const unusedList = await Promise.all([\n depcheck(`${pkg}/.`, {\n ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],\n ignorePatterns: ['*.stories.*', '*.spec.*', ...defaultIgnorePatterns],\n }),\n depcheck(`${pkg}/.`, {\n ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],\n ignorePatterns: [...defaultIgnorePatterns],\n specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha],\n }),\n ])\n\n const unusedCode = unusedList[0]\n const unusedTests = unusedList[1]\n\n const unused: depcheck.Results = {\n ...unusedCode,\n /* we only reports the unused devDeps if both are not using it */\n devDependencies: unusedTests.devDependencies.filter((value) => !!unusedCode.devDependencies.find((devValue) => devValue === value)),\n }\n\n const errorCount =\n unused.dependencies.length +\n unused.devDependencies.length +\n Object.entries(unused.invalidDirs).length +\n Object.entries(unused.invalidFiles).length +\n Object.entries(unused.missing).length\n\n if (errorCount > 0) {\n console.log(`Deps [${pkgName}]`)\n } else {\n console.log(`Deps [${pkgName}] - Ok`)\n }\n\n if (unused.dependencies.length) {\n const message = [chalk.yellow(`${unused.dependencies.length} Unused dependencies`)]\n unused.dependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (unused.devDependencies.length) {\n const message = [chalk.yellow(`${unused.devDependencies.length} Unused devDependencies`)]\n unused.devDependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (Object.entries(unused.invalidDirs).length) {\n Object.entries(unused.invalidDirs).forEach(([key, value]) => console.warn(chalk.gray(`Invalid Dir: ${key}: ${value}`)))\n }\n\n if (Object.entries(unused.invalidFiles).length) {\n Object.entries(unused.invalidFiles).forEach(([key, value]) => console.warn(chalk.gray(`Invalid File: ${key}: ${value}`)))\n }\n\n if (Object.entries(unusedCode.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedCode.missing).length} Missing dependencies`)]\n Object.entries(unusedCode.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n if (Object.entries(unusedTests.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedTests.missing).length} Missing devDependencies`)]\n Object.entries(unusedTests.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n checkResult(`Deps [${pkgName}]`, errorCount, 'warn', false)\n\n //returning 0 here since we never want deps to be fatal\n return 0\n}\n"],"mappings":"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","names":["depcheck","chalk"]}
@@ -13,17 +13,23 @@ const packageDeps = async () => {
13
13
  const error = ex;
14
14
  console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`);
15
15
  }
16
- ignoreMatches.push("@xylabs/ts-scripts-yarn3");
17
- ignoreMatches.push("@xylabs/tsconfig");
18
- ignoreMatches.push("@xylabs/tsconfig-dom");
19
- ignoreMatches.push("@xylabs/tsconfig-react");
20
- ignoreMatches.push("@xylabs/tsconfig-jest");
21
- ignoreMatches.push("typescript");
16
+ const defaultIgnorePatterns = ["*.d.ts", "dist", ".*"];
17
+ const defaultIgnoreMatches = [
18
+ "@xylabs/ts-scripts-yarn3",
19
+ "@xylabs/tsconfig",
20
+ "@xylabs/tsconfig-dom",
21
+ "@xylabs/tsconfig-react",
22
+ "@xylabs/tsconfig-jest",
23
+ "typescript"
24
+ ];
22
25
  const unusedList = await Promise.all([
23
- depcheck(`${pkg}/.`, { ignoreMatches, ignorePatterns: ["*.stories.*", "*.spec.*", "*.d.ts", "dist", ".*"] }),
24
26
  depcheck(`${pkg}/.`, {
25
- ignoreMatches,
26
- ignorePatterns: ["*.ts", "*.d.ts", "dist", ".*"],
27
+ ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],
28
+ ignorePatterns: ["*.stories.*", "*.spec.*", ...defaultIgnorePatterns]
29
+ }),
30
+ depcheck(`${pkg}/.`, {
31
+ ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],
32
+ ignorePatterns: [...defaultIgnorePatterns],
27
33
  specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha]
28
34
  })
29
35
  ]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/actions/package/deps.ts"],"sourcesContent":["/* eslint-disable max-statements */\nimport chalk from 'chalk'\nimport depcheck, { special } from 'depcheck'\nimport { existsSync, readFileSync } from 'fs'\n\nimport { checkResult } from '../../lib'\n\nexport const packageDeps = async () => {\n const pkg = process.env.INIT_CWD\n const pkgName = process.env.npm_package_name\n\n const rawIgnore = existsSync(`${pkg}/.depcheckrc`)\n ? readFileSync(`${pkg}/.depcheckrc`, { encoding: 'utf8' }).replace('ignores:', '\"ignores\":')\n : undefined\n let ignoreMatches: string[] = []\n try {\n ignoreMatches = rawIgnore ? (JSON.parse(`{${rawIgnore}}`).ignores as string[]) : []\n } catch (ex) {\n const error = ex as Error\n console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`)\n }\n\n ignoreMatches.push('@xylabs/ts-scripts-yarn3')\n ignoreMatches.push('@xylabs/tsconfig')\n ignoreMatches.push('@xylabs/tsconfig-dom')\n ignoreMatches.push('@xylabs/tsconfig-react')\n ignoreMatches.push('@xylabs/tsconfig-jest')\n ignoreMatches.push('typescript')\n\n const unusedList = await Promise.all([\n depcheck(`${pkg}/.`, { ignoreMatches, ignorePatterns: ['*.stories.*', '*.spec.*', '*.d.ts', 'dist', '.*'] }),\n depcheck(`${pkg}/.`, {\n ignoreMatches,\n ignorePatterns: ['*.ts', '*.d.ts', 'dist', '.*'],\n specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha],\n }),\n ])\n\n const unusedCode = unusedList[0]\n const unusedTests = unusedList[1]\n\n const unused: depcheck.Results = {\n ...unusedCode,\n /* we only reports the unused devDeps if both are not using it */\n devDependencies: unusedTests.devDependencies.filter((value) => !!unusedCode.devDependencies.find((devValue) => devValue === value)),\n }\n\n const errorCount =\n unused.dependencies.length +\n unused.devDependencies.length +\n Object.entries(unused.invalidDirs).length +\n Object.entries(unused.invalidFiles).length +\n Object.entries(unused.missing).length\n\n if (errorCount > 0) {\n console.log(`Deps [${pkgName}]`)\n } else {\n console.log(`Deps [${pkgName}] - Ok`)\n }\n\n if (unused.dependencies.length) {\n const message = [chalk.yellow(`${unused.dependencies.length} Unused dependencies`)]\n unused.dependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (unused.devDependencies.length) {\n const message = [chalk.yellow(`${unused.devDependencies.length} Unused devDependencies`)]\n unused.devDependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (Object.entries(unused.invalidDirs).length) {\n Object.entries(unused.invalidDirs).forEach(([key, value]) => console.warn(chalk.gray(`Invalid Dir: ${key}: ${value}`)))\n }\n\n if (Object.entries(unused.invalidFiles).length) {\n Object.entries(unused.invalidFiles).forEach(([key, value]) => console.warn(chalk.gray(`Invalid File: ${key}: ${value}`)))\n }\n\n if (Object.entries(unusedCode.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedCode.missing).length} Missing dependencies`)]\n Object.entries(unusedCode.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n if (Object.entries(unusedTests.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedTests.missing).length} Missing devDependencies`)]\n Object.entries(unusedTests.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n checkResult(`Deps [${pkgName}]`, errorCount, 'warn', false)\n\n //returning 0 here since we never want deps to be fatal\n return 0\n}\n"],"mappings":"AACA,OAAO,WAAW;AAClB,OAAO,YAAY,eAAe;AAClC,SAAS,YAAY,oBAAoB;AAEzC,SAAS,mBAAmB;AAErB,MAAM,cAAc,YAAY;AACrC,QAAM,MAAM,QAAQ,IAAI;AACxB,QAAM,UAAU,QAAQ,IAAI;AAE5B,QAAM,YAAY,WAAW,GAAG,GAAG,cAAc,IAC7C,aAAa,GAAG,GAAG,gBAAgB,EAAE,UAAU,OAAO,CAAC,EAAE,QAAQ,YAAY,YAAY,IACzF;AACJ,MAAI,gBAA0B,CAAC;AAC/B,MAAI;AACF,oBAAgB,YAAa,KAAK,MAAM,IAAI,SAAS,GAAG,EAAE,UAAuB,CAAC;AAAA,EACpF,SAAS,IAAI;AACX,UAAM,QAAQ;AACd,YAAQ,IAAI,GAAG,OAAO,KAAK,MAAM,OAAO,kCAAkC,SAAS,GAAG;AAAA,EACxF;AAEA,gBAAc,KAAK,0BAA0B;AAC7C,gBAAc,KAAK,kBAAkB;AACrC,gBAAc,KAAK,sBAAsB;AACzC,gBAAc,KAAK,wBAAwB;AAC3C,gBAAc,KAAK,uBAAuB;AAC1C,gBAAc,KAAK,YAAY;AAE/B,QAAM,aAAa,MAAM,QAAQ,IAAI;AAAA,IACnC,SAAS,GAAG,GAAG,MAAM,EAAE,eAAe,gBAAgB,CAAC,eAAe,YAAY,UAAU,QAAQ,IAAI,EAAE,CAAC;AAAA,IAC3G,SAAS,GAAG,GAAG,MAAM;AAAA,MACnB;AAAA,MACA,gBAAgB,CAAC,QAAQ,UAAU,QAAQ,IAAI;AAAA,MAC/C,UAAU,CAAC,QAAQ,QAAQ,QAAQ,OAAO,QAAQ,KAAK,QAAQ,UAAU,QAAQ,MAAM,QAAQ,KAAK;AAAA,IACtG,CAAC;AAAA,EACH,CAAC;AAED,QAAM,aAAa,WAAW,CAAC;AAC/B,QAAM,cAAc,WAAW,CAAC;AAEhC,QAAM,SAA2B;AAAA,IAC/B,GAAG;AAAA;AAAA,IAEH,iBAAiB,YAAY,gBAAgB,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,gBAAgB,KAAK,CAAC,aAAa,aAAa,KAAK,CAAC;AAAA,EACpI;AAEA,QAAM,aACJ,OAAO,aAAa,SACpB,OAAO,gBAAgB,SACvB,OAAO,QAAQ,OAAO,WAAW,EAAE,SACnC,OAAO,QAAQ,OAAO,YAAY,EAAE,SACpC,OAAO,QAAQ,OAAO,OAAO,EAAE;AAEjC,MAAI,aAAa,GAAG;AAClB,YAAQ,IAAI,SAAS,OAAO,GAAG;AAAA,EACjC,OAAO;AACL,YAAQ,IAAI,SAAS,OAAO,QAAQ;AAAA,EACtC;AAEA,MAAI,OAAO,aAAa,QAAQ;AAC9B,UAAM,UAAU,CAAC,MAAM,OAAO,GAAG,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAClF,WAAO,aAAa,QAAQ,CAAC,UAAU,QAAQ,KAAK,MAAM,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;AAC7E,YAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC;AAAA,EAChC;AAEA,MAAI,OAAO,gBAAgB,QAAQ;AACjC,UAAM,UAAU,CAAC,MAAM,OAAO,GAAG,OAAO,gBAAgB,MAAM,yBAAyB,CAAC;AACxF,WAAO,gBAAgB,QAAQ,CAAC,UAAU,QAAQ,KAAK,MAAM,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;AAChF,YAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC;AAAA,EAChC;AAEA,MAAI,OAAO,QAAQ,OAAO,WAAW,EAAE,QAAQ;AAC7C,WAAO,QAAQ,OAAO,WAAW,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM,QAAQ,KAAK,MAAM,KAAK,gBAAgB,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;AAAA,EACxH;AAEA,MAAI,OAAO,QAAQ,OAAO,YAAY,EAAE,QAAQ;AAC9C,WAAO,QAAQ,OAAO,YAAY,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM,QAAQ,KAAK,MAAM,KAAK,iBAAiB,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;AAAA,EAC1H;AAEA,MAAI,OAAO,QAAQ,WAAW,OAAO,EAAE,QAAQ;AAC7C,UAAM,UAAU,CAAC,MAAM,OAAO,GAAG,OAAO,QAAQ,WAAW,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAClG,WAAO,QAAQ,WAAW,OAAO,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC3D,cAAQ,KAAK,GAAG,GAAG,EAAE;AACrB,cAAQ,KAAK,MAAM,KAAK,KAAK,MAAM,IAAI,CAAC,EAAE,CAAC;AAAA,IAC7C,CAAC;AACD,YAAQ,IAAI,MAAM,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC;AAAA,EAC9C;AAEA,MAAI,OAAO,QAAQ,YAAY,OAAO,EAAE,QAAQ;AAC9C,UAAM,UAAU,CAAC,MAAM,OAAO,GAAG,OAAO,QAAQ,YAAY,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACtG,WAAO,QAAQ,YAAY,OAAO,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC5D,cAAQ,KAAK,GAAG,GAAG,EAAE;AACrB,cAAQ,KAAK,MAAM,KAAK,KAAK,MAAM,IAAI,CAAC,EAAE,CAAC;AAAA,IAC7C,CAAC;AACD,YAAQ,IAAI,MAAM,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC;AAAA,EAC9C;AAEA,cAAY,SAAS,OAAO,KAAK,YAAY,QAAQ,KAAK;AAG1D,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../src/actions/package/deps.ts"],"sourcesContent":["/* eslint-disable max-statements */\nimport chalk from 'chalk'\nimport depcheck, { special } from 'depcheck'\nimport { existsSync, readFileSync } from 'fs'\n\nimport { checkResult } from '../../lib'\n\nexport const packageDeps = async () => {\n const pkg = process.env.INIT_CWD\n const pkgName = process.env.npm_package_name\n\n const rawIgnore = existsSync(`${pkg}/.depcheckrc`)\n ? readFileSync(`${pkg}/.depcheckrc`, { encoding: 'utf8' }).replace('ignores:', '\"ignores\":')\n : undefined\n let ignoreMatches: string[] = []\n try {\n ignoreMatches = rawIgnore ? (JSON.parse(`{${rawIgnore}}`).ignores as string[]) : []\n } catch (ex) {\n const error = ex as Error\n console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`)\n }\n\n const defaultIgnorePatterns = ['*.d.ts', 'dist', '.*']\n const defaultIgnoreMatches = [\n '@xylabs/ts-scripts-yarn3',\n '@xylabs/tsconfig',\n '@xylabs/tsconfig-dom',\n '@xylabs/tsconfig-react',\n '@xylabs/tsconfig-jest',\n 'typescript',\n ]\n\n const unusedList = await Promise.all([\n depcheck(`${pkg}/.`, {\n ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],\n ignorePatterns: ['*.stories.*', '*.spec.*', ...defaultIgnorePatterns],\n }),\n depcheck(`${pkg}/.`, {\n ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],\n ignorePatterns: [...defaultIgnorePatterns],\n specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha],\n }),\n ])\n\n const unusedCode = unusedList[0]\n const unusedTests = unusedList[1]\n\n const unused: depcheck.Results = {\n ...unusedCode,\n /* we only reports the unused devDeps if both are not using it */\n devDependencies: unusedTests.devDependencies.filter((value) => !!unusedCode.devDependencies.find((devValue) => devValue === value)),\n }\n\n const errorCount =\n unused.dependencies.length +\n unused.devDependencies.length +\n Object.entries(unused.invalidDirs).length +\n Object.entries(unused.invalidFiles).length +\n Object.entries(unused.missing).length\n\n if (errorCount > 0) {\n console.log(`Deps [${pkgName}]`)\n } else {\n console.log(`Deps [${pkgName}] - Ok`)\n }\n\n if (unused.dependencies.length) {\n const message = [chalk.yellow(`${unused.dependencies.length} Unused dependencies`)]\n unused.dependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (unused.devDependencies.length) {\n const message = [chalk.yellow(`${unused.devDependencies.length} Unused devDependencies`)]\n unused.devDependencies.forEach((value) => message.push(chalk.gray(` ${value}`)))\n console.log(message.join('\\n'))\n }\n\n if (Object.entries(unused.invalidDirs).length) {\n Object.entries(unused.invalidDirs).forEach(([key, value]) => console.warn(chalk.gray(`Invalid Dir: ${key}: ${value}`)))\n }\n\n if (Object.entries(unused.invalidFiles).length) {\n Object.entries(unused.invalidFiles).forEach(([key, value]) => console.warn(chalk.gray(`Invalid File: ${key}: ${value}`)))\n }\n\n if (Object.entries(unusedCode.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedCode.missing).length} Missing dependencies`)]\n Object.entries(unusedCode.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n if (Object.entries(unusedTests.missing).length) {\n const message = [chalk.yellow(`${Object.entries(unusedTests.missing).length} Missing devDependencies`)]\n Object.entries(unusedTests.missing).forEach(([key, value]) => {\n message.push(`${key}`)\n message.push(chalk.gray(` ${value.pop()}`))\n })\n console.log(chalk.yellow(message.join('\\n')))\n }\n\n checkResult(`Deps [${pkgName}]`, errorCount, 'warn', false)\n\n //returning 0 here since we never want deps to be fatal\n return 0\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -66,7 +66,7 @@
66
66
  "@types/yargs": "^17.0.26",
67
67
  "@typescript-eslint/eslint-plugin": "^6.7.3",
68
68
  "@typescript-eslint/parser": "^6.7.3",
69
- "@xylabs/tsconfig": "~3.0.82",
69
+ "@xylabs/tsconfig": "~3.0.84",
70
70
  "chalk": "^4.1.2",
71
71
  "cosmiconfig": "^8.3.6",
72
72
  "cpy": "^8.1.2",
@@ -111,8 +111,8 @@
111
111
  "@types/license-checker": "^25.0.4",
112
112
  "@types/lodash": "^4.14.199",
113
113
  "@types/parse-git-config": "^3.0.2",
114
- "@xylabs/eslint-config": "^3.0.82",
115
- "@xylabs/tsconfig": "^3.0.82",
114
+ "@xylabs/eslint-config": "^3.0.84",
115
+ "@xylabs/tsconfig": "^3.0.84",
116
116
  "publint": "^0.2.3",
117
117
  "typescript": "^5.2.2"
118
118
  },
@@ -171,5 +171,5 @@
171
171
  "package-clean": "echo Not cleaning..."
172
172
  },
173
173
  "sideEffects": false,
174
- "version": "3.0.82"
174
+ "version": "3.0.84"
175
175
  }
@@ -13,6 +13,25 @@ export interface LintPackageParams {
13
13
  verbose?: boolean
14
14
  }
15
15
 
16
+ const dumpMessages = (lintResults: ESLint.LintResult[]) => {
17
+ const colors: ('white' | 'red' | 'yellow')[] = ['white', 'yellow', 'red']
18
+ const severity: string[] = ['none', 'warning', 'error']
19
+
20
+ lintResults.forEach((lintResult) => {
21
+ if (lintResult.messages.length > 0) {
22
+ console.log(chalk.gray(`${lintResult.filePath}`))
23
+ lintResult.messages.forEach((message) => {
24
+ console.log(
25
+ chalk.gray(`\t${message.line}:${message.column}`),
26
+ chalk[colors[message.severity]](`\t${severity[message.severity]}`),
27
+ chalk.white(`\t${message.message}`),
28
+ chalk.gray(`\t${message.ruleId}`),
29
+ )
30
+ })
31
+ }
32
+ })
33
+ }
34
+
16
35
  export const lintPackage = async ({ pkg }: LintParams) => {
17
36
  const workspace = yarnWorkspaces().find((workspace) => workspace.name === pkg)
18
37
  if (!workspace) {
@@ -24,7 +43,7 @@ export const lintPackage = async ({ pkg }: LintParams) => {
24
43
 
25
44
  const lintResults = await engine.lintFiles(workspace.location)
26
45
 
27
- console.log(lintResults)
46
+ dumpMessages(lintResults)
28
47
 
29
48
  const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)
30
49
 
@@ -36,7 +55,7 @@ export const lintAll = async () => {
36
55
 
37
56
  const lintResults = await engine.lintFiles('./**/*.*')
38
57
 
39
- console.log(lintResults)
58
+ dumpMessages(lintResults)
40
59
 
41
60
  const errorCount = lintResults.reduce((prev, lintResult) => prev + lintResult.errorCount, 0)
42
61
 
@@ -20,18 +20,24 @@ export const packageDeps = async () => {
20
20
  console.log(`${pkgName} [${error.message}] Failed to parse .depcheckrc [${rawIgnore}]`)
21
21
  }
22
22
 
23
- ignoreMatches.push('@xylabs/ts-scripts-yarn3')
24
- ignoreMatches.push('@xylabs/tsconfig')
25
- ignoreMatches.push('@xylabs/tsconfig-dom')
26
- ignoreMatches.push('@xylabs/tsconfig-react')
27
- ignoreMatches.push('@xylabs/tsconfig-jest')
28
- ignoreMatches.push('typescript')
23
+ const defaultIgnorePatterns = ['*.d.ts', 'dist', '.*']
24
+ const defaultIgnoreMatches = [
25
+ '@xylabs/ts-scripts-yarn3',
26
+ '@xylabs/tsconfig',
27
+ '@xylabs/tsconfig-dom',
28
+ '@xylabs/tsconfig-react',
29
+ '@xylabs/tsconfig-jest',
30
+ 'typescript',
31
+ ]
29
32
 
30
33
  const unusedList = await Promise.all([
31
- depcheck(`${pkg}/.`, { ignoreMatches, ignorePatterns: ['*.stories.*', '*.spec.*', '*.d.ts', 'dist', '.*'] }),
32
34
  depcheck(`${pkg}/.`, {
33
- ignoreMatches,
34
- ignorePatterns: ['*.ts', '*.d.ts', 'dist', '.*'],
35
+ ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],
36
+ ignorePatterns: ['*.stories.*', '*.spec.*', ...defaultIgnorePatterns],
37
+ }),
38
+ depcheck(`${pkg}/.`, {
39
+ ignoreMatches: [...defaultIgnoreMatches, ...ignoreMatches],
40
+ ignorePatterns: [...defaultIgnorePatterns],
35
41
  specials: [special.eslint, special.babel, special.bin, special.prettier, special.jest, special.mocha],
36
42
  }),
37
43
  ])