@macrulez/devtoolz 0.3.1 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"report.js","sourceRoot":"","sources":["../../../src/commands/image-hash/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,uBAAuB,CAAA;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,WAAW,EAAoB,MAAM,uBAAuB,CAAA;AACrE,OAAO,EAAE,SAAS,EAAiB,MAAM,WAAW,CAAA;AAGpD,MAAM,UAAU,GAA6B;IAC3C,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,SAAS;CACnB,CAAA;AAED,MAAM,kBAAkB,GAAG,EAAE,CAAA;AAE7B,SAAS,WAAW,CAAC,MAAuB;IAC1C,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAA;AAC9F,CAAC;AAED,SAAS,QAAQ,CAAC,IAAc,EAAE,KAAyB;IACzD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IAClC,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;QAC5D,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,GAAG,CAAC,CAAC,GAAG,CAAA;IACrD,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,cAAc,CAAC,MAAuB,EAAE,OAAqB;IACpE,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,SAAS,GAA+C;QAC5D,QAAQ,EAAE,CAAC,CAAC,IAAI;QAChB,SAAS,EAAE,CAAC,CAAC,MAAM;QACnB,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,OAAO,EAAE,CAAC,CAAC,GAAG;KACf,CAAA;IACD,MAAM,OAAO,GAAkB;QAC7B,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE;QAC/C,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE;QAChD,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KAC/E,CAAA;IACD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI;QACV,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE;QAChC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;KACpD,CAAC,CAAA;IACF,OAAO,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAuB,EAAE,UAAwB,EAAE;IACvF,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IAC9B,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAA;IAC1E,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO;QAAE,OAAO,EAAE,CAAA;IAEvC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;IAErE,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;IACpD,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAA;IACnC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAA;IAC/E,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,UAAU,GAAG,CAAC,CAAC,CAAA;IAElF,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,KAAK,CAAC,IAAI,CACR,EAAE,EACF,CAAC,CAAC,OAAO,CACP,OAAO,MAAM,CAAC,OAAO,eAAe,MAAM,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,cAAc,CACzF,CACF,CAAA;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CACR,EAAE,EACF,CAAC,CAAC,OAAO,CACP,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,OAAO,MAAM,CAAC,OAAO,eAAe,MAAM,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,eAAe,CAC5G,CACF,CAAA;YACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,yBAAyB,CAAA;gBAChF,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACzE,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC,CAAA;QACzF,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAA;QACpD,MAAM,OAAO,GAAG,GAAG,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,QAAQ,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA;QACjG,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;QACvE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACpE,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CACR,EAAE,EACF,CAAC,CAAC,IAAI,CACJ,WAAW,MAAM,CAAC,MAAM,QAAQ,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,gCAAgC,CAClG,CACF,CAAA;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CACR,EAAE,EACF,CAAC,CAAC,IAAI,CACJ,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YACvB,CAAC,CAAC,gEAAgE;YAClE,CAAC,CAAC,6BAA6B,CAClC,CACF,CAAA;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CACR,EAAE,EACF,CAAC,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CACtF,CAAA;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACjF,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACzB,CAAC"}
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../../src/commands/image-hash/report.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export interface ImageHashRunOptions {
14
14
  ignoreGlobs?: string[];
15
15
  respectGitignore?: boolean;
16
16
  components?: Components;
17
+ budget?: number;
17
18
  size?: number;
18
19
  maxPixels?: number;
19
20
  format?: OutputFormat;
@@ -1,7 +1,7 @@
1
1
  import { existsSync, mkdirSync, readFileSync, statSync, writeFileSync } from 'node:fs';
2
2
  import { basename, dirname, join, relative, resolve } from 'node:path';
3
3
  import { walk } from '../../utils/walk.js';
4
- import { ALL_TYPES, DEFAULT_BLURHASH_COMPONENTS, DEFAULT_EXPORT_NAME, DEFAULT_IMAGE_EXTENSIONS, DEFAULT_SAMPLE_SIZE, ImageHashUsageError, componentsLabel, formatAggregate, formatPerFile, isUrl, normalizeOutExtension, orderTypes, outputFileName, parseAggregate, splitPathArguments, validateExportName, validateSuffix, withUpperCaseVariants, } from './core.js';
4
+ import { ALL_TYPES, DEFAULT_BLURHASH_COMPONENTS, DEFAULT_HAZEHASH_BUDGET, DEFAULT_EXPORT_NAME, DEFAULT_IMAGE_EXTENSIONS, DEFAULT_SAMPLE_SIZE, ImageHashUsageError, componentsLabel, formatAggregate, formatPerFile, isUrl, normalizeOutExtension, orderTypes, outputFileName, parseAggregate, splitPathArguments, validateExportName, validateSuffix, withUpperCaseVariants, } from './core.js';
5
5
  import { cacheHit, emptyCache, loadCache, saveCache } from './cache.js';
6
6
  import { computeHashes, friendlyMessage } from './hash.js';
7
7
  import { loadSharp } from './sharp-loader.js';
@@ -130,7 +130,8 @@ export async function runImageHash(options) {
130
130
  const outExtension = normalizeOutExtension(options.outExtension, format);
131
131
  const size = options.size ?? DEFAULT_SAMPLE_SIZE;
132
132
  const components = options.components ?? DEFAULT_BLURHASH_COMPONENTS;
133
- const params = `${size}|${componentsLabel(components)}`;
133
+ const budget = options.budget ?? DEFAULT_HAZEHASH_BUDGET;
134
+ const params = `${size}|${componentsLabel(components)}|${budget}`;
134
135
  const keyBase = resolve(options.cwd, options.keyBase ?? '.');
135
136
  const keyPrefix = options.keyPrefix ?? '';
136
137
  const keyOf = (source) => source.url ? source.abs : `${keyPrefix}${toPosix(relative(keyBase, source.abs))}`;
@@ -155,6 +156,7 @@ export async function runImageHash(options) {
155
156
  types: options.types,
156
157
  size,
157
158
  components,
159
+ budget,
158
160
  ...(options.maxPixels !== undefined ? { maxPixels: options.maxPixels } : {}),
159
161
  };
160
162
  let done = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/commands/image-hash/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/commands/image-hash/run.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function splitList(value: string): string[];
@@ -0,0 +1,4 @@
1
+ export function splitList(value) {
2
+ return value.split(/[,\s]+/).filter(Boolean);
3
+ }
4
+ //# sourceMappingURL=split-list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"split-list.js","sourceRoot":"","sources":["../../src/utils/split-list.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;AAC9C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@macrulez/devtoolz",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "A small toolbox of CLI commands that automate routine dev chores — strip comments/console.log, find dead exports, catch case-sensitivity import bugs before Linux CI does",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -30,6 +30,7 @@
30
30
  },
31
31
  "scripts": {
32
32
  "build": "tsc -p tsconfig.json",
33
+ "prepublishOnly": "npm run build",
33
34
  "dev": "tsx src/cli.ts",
34
35
  "test": "vitest run",
35
36
  "test:watch": "vitest",
@@ -42,6 +43,7 @@
42
43
  "blurhash": "^2.0.5",
43
44
  "commander": "^13.1.0",
44
45
  "diff": "^7.0.0",
46
+ "hazehash": "^0.1.1",
45
47
  "ignore": "^6.0.2",
46
48
  "thumbhash": "^0.1.1",
47
49
  "typescript": "^5.7.3"
@@ -1,30 +0,0 @@
1
- export interface ExportedName {
2
- name: string;
3
- isType: boolean;
4
- isDefault: boolean;
5
- line: number;
6
- }
7
- export interface ReexportEntry {
8
- /** the raw specifier, e.g. './core.js' */
9
- from: string;
10
- /** the name as exported by the SOURCE module, or '*' for `export * from`/`export * as x from` */
11
- imported: string;
12
- /** the name this file re-exports it as (may differ via `as`); '*' mirrors `imported` */
13
- exportedAs: string;
14
- isType: boolean;
15
- }
16
- export interface ImportedName {
17
- /** the raw specifier */
18
- from: string;
19
- /** the name as exported by the source module, 'default', or '*' for a namespace import */
20
- imported: string;
21
- isType: boolean;
22
- }
23
- export interface FileAnalysis {
24
- exports: ExportedName[];
25
- reexports: ReexportEntry[];
26
- imports: ImportedName[];
27
- /** a dynamic import() whose argument isn't a string literal — can't be resolved, worth flagging */
28
- hasUnresolvableDynamicImport: boolean;
29
- }
30
- export declare function analyzeFile(text: string, file: string): FileAnalysis;
@@ -1,174 +0,0 @@
1
- // Per-file extraction of exports/imports via a real TS parse — no regex
2
- // guessing at `export`/`import` keywords, so a string/comment containing
3
- // those words is never mistaken for the real thing.
4
- import ts from 'typescript';
5
- function scriptKindFor(file) {
6
- return file.endsWith('.tsx')
7
- ? ts.ScriptKind.TSX
8
- : file.endsWith('.jsx')
9
- ? ts.ScriptKind.JSX
10
- : ts.ScriptKind.TS;
11
- }
12
- function hasExportModifier(node) {
13
- return (ts.canHaveModifiers(node) &&
14
- (ts.getModifiers(node)?.some((m) => m.kind === ts.SyntaxKind.ExportKeyword) ?? false));
15
- }
16
- function hasDefaultModifier(node) {
17
- return (ts.canHaveModifiers(node) &&
18
- (ts.getModifiers(node)?.some((m) => m.kind === ts.SyntaxKind.DefaultKeyword) ?? false));
19
- }
20
- // Not `ts.isImportCall` — that helper exists at runtime but isn't part of
21
- // this TypeScript version's typed public API. A dynamic `import(...)`
22
- // parses as a CallExpression whose callee is the `import` keyword itself
23
- // used as an expression; checking that structurally is exactly what the
24
- // untyped helper does internally.
25
- function isDynamicImportCall(node) {
26
- return ts.isCallExpression(node) && node.expression.kind === ts.SyntaxKind.ImportKeyword;
27
- }
28
- function collectBindingNames(name, out) {
29
- // Only plain identifiers are attributed — `export const { a, b } = obj`
30
- // (destructured) is a rare enough pattern for a top-level export that
31
- // skipping it (rather than guessing) is the safer default.
32
- if (ts.isIdentifier(name))
33
- out.push(name.text);
34
- }
35
- export function analyzeFile(text, file) {
36
- const sf = ts.createSourceFile(file, text, ts.ScriptTarget.Latest, true, scriptKindFor(file));
37
- function lineOf(node) {
38
- return sf.getLineAndCharacterOfPosition(node.getStart(sf)).line + 1;
39
- }
40
- const exports = [];
41
- const reexports = [];
42
- const imports = [];
43
- let hasUnresolvableDynamicImport = false;
44
- for (const stmt of sf.statements) {
45
- if (ts.isExportDeclaration(stmt)) {
46
- const isTypeOnly = stmt.isTypeOnly;
47
- const moduleSpecifier = stmt.moduleSpecifier && ts.isStringLiteral(stmt.moduleSpecifier)
48
- ? stmt.moduleSpecifier.text
49
- : null;
50
- if (stmt.exportClause) {
51
- if (ts.isNamedExports(stmt.exportClause)) {
52
- for (const el of stmt.exportClause.elements) {
53
- const importedName = (el.propertyName ?? el.name).text;
54
- const exportedAs = el.name.text;
55
- const elIsType = isTypeOnly || el.isTypeOnly;
56
- if (moduleSpecifier) {
57
- reexports.push({
58
- from: moduleSpecifier,
59
- imported: importedName,
60
- exportedAs,
61
- isType: elIsType,
62
- });
63
- }
64
- else {
65
- exports.push({
66
- name: exportedAs,
67
- isType: elIsType,
68
- isDefault: false,
69
- line: lineOf(el),
70
- });
71
- }
72
- }
73
- }
74
- else if (ts.isNamespaceExport(stmt.exportClause) && moduleSpecifier) {
75
- // `export * as ns from './y'` — ns itself is a real named export
76
- // of THIS file (a namespace object), not traced further.
77
- exports.push({
78
- name: stmt.exportClause.name.text,
79
- isType: isTypeOnly,
80
- isDefault: false,
81
- line: lineOf(stmt.exportClause),
82
- });
83
- }
84
- }
85
- else if (moduleSpecifier) {
86
- // `export * from './y'` — every name './y' exports becomes
87
- // reachable through this file too; resolved in core.ts once every
88
- // file's own export list is known.
89
- reexports.push({
90
- from: moduleSpecifier,
91
- imported: '*',
92
- exportedAs: '*',
93
- isType: isTypeOnly,
94
- });
95
- }
96
- continue;
97
- }
98
- if (ts.isExportAssignment(stmt)) {
99
- // `export default expr` and legacy `export = expr` both surface as
100
- // this file's default-like export — see FileAnalysis' isDefault
101
- // doc: usage detection for it is intentionally loose.
102
- exports.push({ name: 'default', isType: false, isDefault: true, line: lineOf(stmt) });
103
- continue;
104
- }
105
- if (ts.isImportDeclaration(stmt) && ts.isStringLiteral(stmt.moduleSpecifier)) {
106
- const from = stmt.moduleSpecifier.text;
107
- const clause = stmt.importClause;
108
- if (!clause)
109
- continue; // bare `import './x'` — side-effect only, not a usage of any named export
110
- if (clause.name)
111
- imports.push({ from, imported: 'default', isType: clause.isTypeOnly });
112
- if (clause.namedBindings) {
113
- if (ts.isNamespaceImport(clause.namedBindings)) {
114
- imports.push({ from, imported: '*', isType: clause.isTypeOnly });
115
- }
116
- else if (ts.isNamedImports(clause.namedBindings)) {
117
- for (const el of clause.namedBindings.elements) {
118
- const importedName = (el.propertyName ?? el.name).text;
119
- imports.push({
120
- from,
121
- imported: importedName,
122
- isType: clause.isTypeOnly || el.isTypeOnly,
123
- });
124
- }
125
- }
126
- }
127
- continue;
128
- }
129
- if (hasExportModifier(stmt)) {
130
- const isType = ts.isTypeAliasDeclaration(stmt) || ts.isInterfaceDeclaration(stmt);
131
- const isDefault = hasDefaultModifier(stmt);
132
- if (ts.isVariableStatement(stmt)) {
133
- for (const decl of stmt.declarationList.declarations) {
134
- const names = [];
135
- collectBindingNames(decl.name, names);
136
- for (const name of names) {
137
- exports.push({ name, isType: false, isDefault: false, line: lineOf(decl) });
138
- }
139
- }
140
- }
141
- else if ((ts.isFunctionDeclaration(stmt) ||
142
- ts.isClassDeclaration(stmt) ||
143
- ts.isInterfaceDeclaration(stmt) ||
144
- ts.isTypeAliasDeclaration(stmt) ||
145
- ts.isEnumDeclaration(stmt) ||
146
- ts.isModuleDeclaration(stmt)) &&
147
- stmt.name) {
148
- const name = ts.isIdentifier(stmt.name) ? stmt.name.text : stmt.name.text;
149
- exports.push({ name: isDefault ? 'default' : name, isType, isDefault, line: lineOf(stmt) });
150
- }
151
- }
152
- }
153
- // Dynamic import() calls can appear anywhere in an expression, not just
154
- // at the top level — a full walk (not just top-level statements) is
155
- // needed to find them all.
156
- function visit(node) {
157
- if (isDynamicImportCall(node)) {
158
- const arg = node.arguments[0];
159
- if (arg && ts.isStringLiteral(arg)) {
160
- // A literal path we can resolve — conservatively treat the whole
161
- // target module as used (see core.ts) rather than trying to trace
162
- // which bindings a `const { x } = await import(...)` destructures.
163
- imports.push({ from: arg.text, imported: '*', isType: false });
164
- }
165
- else {
166
- hasUnresolvableDynamicImport = true;
167
- }
168
- }
169
- ts.forEachChild(node, visit);
170
- }
171
- visit(sf);
172
- return { exports, reexports, imports, hasUnresolvableDynamicImport };
173
- }
174
- //# sourceMappingURL=parse.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../src/commands/dead-exports/parse.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Resolves a relative import specifier (`./foo`, `../bar/baz`) against
3
- * the file that contains it to a real, existing file on disk — or `null`
4
- * if nothing matches any of the conventions this project's commands rely
5
- * on elsewhere (extensionless imports, NodeNext `.js`-means-`.ts`,
6
- * directory-with-index). Only ever called with specifiers that already
7
- * look relative (`.`/`..`-prefixed) — bare package specifiers go through
8
- * workspace.ts instead.
9
- */
10
- export declare function resolveRelativeSpecifier(fromFile: string, specifier: string): string | null;
@@ -1,58 +0,0 @@
1
- import { existsSync } from 'node:fs';
2
- import { dirname, join, resolve } from 'node:path';
3
- const CANDIDATE_EXTENSIONS = ['.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs'];
4
- // A NodeNext-style project writes `import { x } from './core.js'` in a
5
- // .ts file even though the real file on disk is `./core.ts` — the
6
- // specifier names the file's post-build extension, not its source one
7
- // (devtoolz's own codebase does exactly this — see src/cli.ts). When the
8
- // literal specifier doesn't resolve, each of these swaps is tried too.
9
- const NODENEXT_SWAPS = {
10
- '.js': ['.ts', '.tsx'],
11
- '.mjs': ['.mts'],
12
- '.cjs': ['.cts'],
13
- };
14
- function tryFile(path) {
15
- return existsSync(path) ? path : null;
16
- }
17
- /**
18
- * Resolves a relative import specifier (`./foo`, `../bar/baz`) against
19
- * the file that contains it to a real, existing file on disk — or `null`
20
- * if nothing matches any of the conventions this project's commands rely
21
- * on elsewhere (extensionless imports, NodeNext `.js`-means-`.ts`,
22
- * directory-with-index). Only ever called with specifiers that already
23
- * look relative (`.`/`..`-prefixed) — bare package specifiers go through
24
- * workspace.ts instead.
25
- */
26
- export function resolveRelativeSpecifier(fromFile, specifier) {
27
- const base = resolve(dirname(fromFile), specifier);
28
- const direct = tryFile(base);
29
- if (direct)
30
- return direct;
31
- const lastDot = base.lastIndexOf('.');
32
- const lastSlash = Math.max(base.lastIndexOf('/'), base.lastIndexOf('\\'));
33
- const hasExt = lastDot > lastSlash;
34
- if (hasExt) {
35
- const ext = base.slice(lastDot);
36
- const withoutExt = base.slice(0, lastDot);
37
- for (const swap of NODENEXT_SWAPS[ext] ?? []) {
38
- const swapped = tryFile(withoutExt + swap);
39
- if (swapped)
40
- return swapped;
41
- }
42
- // Had an extension that didn't match anything above — don't also
43
- // try appending a second extension or treating it as a directory.
44
- return null;
45
- }
46
- for (const ext of CANDIDATE_EXTENSIONS) {
47
- const withExt = tryFile(base + ext);
48
- if (withExt)
49
- return withExt;
50
- }
51
- for (const ext of CANDIDATE_EXTENSIONS) {
52
- const withIndex = tryFile(join(base, `index${ext}`));
53
- if (withIndex)
54
- return withIndex;
55
- }
56
- return null;
57
- }
58
- //# sourceMappingURL=resolve.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../src/commands/dead-exports/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAElD,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAE3E,uEAAuE;AACvE,kEAAkE;AAClE,sEAAsE;AACtE,yEAAyE;AACzE,uEAAuE;AACvE,MAAM,cAAc,GAA6B;IAC/C,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,CAAC,MAAM,CAAC;IAChB,MAAM,EAAE,CAAC,MAAM,CAAC;CACjB,CAAA;AAED,SAAS,OAAO,CAAC,IAAY;IAC3B,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AACvC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CAAC,QAAgB,EAAE,SAAiB;IAC1E,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAA;IAElD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,IAAI,MAAM;QAAE,OAAO,MAAM,CAAA;IAEzB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IACrC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;IACzE,MAAM,MAAM,GAAG,OAAO,GAAG,SAAS,CAAA;IAClC,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;QACzC,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAA;YAC1C,IAAI,OAAO;gBAAE,OAAO,OAAO,CAAA;QAC7B,CAAC;QACD,iEAAiE;QACjE,kEAAkE;QAClE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;QACnC,IAAI,OAAO;YAAE,OAAO,OAAO,CAAA;IAC7B,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAA;QACpD,IAAI,SAAS;YAAE,OAAO,SAAS,CAAA;IACjC,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,14 +0,0 @@
1
- export interface WorkspacePackage {
2
- name: string;
3
- rootDir: string;
4
- packageJson: Record<string, unknown>;
5
- }
6
- export interface WorkspaceInfo {
7
- root: string;
8
- packages: WorkspacePackage[];
9
- }
10
- /**
11
- * Walks up from `startDir` looking for a pnpm/npm/yarn workspace root.
12
- * Returns `null` if none is found — a plain single-package project.
13
- */
14
- export declare function detectWorkspace(startDir: string): WorkspaceInfo | null;
@@ -1,99 +0,0 @@
1
- // Detects a pnpm/npm/yarn workspace so a sibling package's import of
2
- // another package's export (e.g. `@macrulez/inview-vue` importing from
3
- // `@macrulez/inview-core`, as it really does) doesn't read as a false
4
- // "dead export" just because the reference lives in a different package
5
- // directory than the one being checked — the exact case features.md's
6
- // contract calls out.
7
- import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs';
8
- import { dirname, join, resolve } from 'node:path';
9
- function readPackageJson(dir) {
10
- try {
11
- return JSON.parse(readFileSync(join(dir, 'package.json'), 'utf8'));
12
- }
13
- catch {
14
- return null;
15
- }
16
- }
17
- // Only the one shape pnpm-workspace.yaml realistically uses in practice —
18
- // a top-level `packages:` key followed by `- 'glob'` list items. Not a
19
- // general YAML parser; anything fancier (anchors, nested maps) isn't
20
- // recognized and the file is treated as if it weren't there.
21
- function parsePnpmWorkspaceYaml(text) {
22
- const lines = text.split('\n');
23
- const globs = [];
24
- let inPackages = false;
25
- for (const line of lines) {
26
- if (/^packages:\s*$/.test(line)) {
27
- inPackages = true;
28
- continue;
29
- }
30
- if (inPackages) {
31
- const item = line.match(/^\s*-\s*['"]?([^'"#]+)['"]?\s*(#.*)?$/);
32
- if (item) {
33
- globs.push(item[1].trim());
34
- continue;
35
- }
36
- if (/^\S/.test(line))
37
- break; // dedented past the packages: block
38
- }
39
- }
40
- return globs;
41
- }
42
- function expandGlob(root, glob) {
43
- // Only "dir/*" (one trailing wildcard segment) is supported — the
44
- // overwhelming common case for a workspace's packages list. A glob
45
- // without a wildcard is just a literal directory.
46
- if (!glob.includes('*')) {
47
- const dir = resolve(root, glob);
48
- return existsSync(dir) && statSync(dir).isDirectory() ? [dir] : [];
49
- }
50
- const starIndex = glob.indexOf('*');
51
- const prefix = glob.slice(0, starIndex).replace(/\/$/, '');
52
- const parentDir = resolve(root, prefix);
53
- if (!existsSync(parentDir))
54
- return [];
55
- return readdirSync(parentDir, { withFileTypes: true })
56
- .filter((e) => e.isDirectory())
57
- .map((e) => join(parentDir, e.name));
58
- }
59
- function packagesFromGlobs(root, globs) {
60
- const packages = [];
61
- for (const glob of globs) {
62
- for (const dir of expandGlob(root, glob)) {
63
- const pkgJson = readPackageJson(dir);
64
- const name = pkgJson && typeof pkgJson.name === 'string' ? pkgJson.name : null;
65
- if (pkgJson && name)
66
- packages.push({ name, rootDir: dir, packageJson: pkgJson });
67
- }
68
- }
69
- return packages;
70
- }
71
- /**
72
- * Walks up from `startDir` looking for a pnpm/npm/yarn workspace root.
73
- * Returns `null` if none is found — a plain single-package project.
74
- */
75
- export function detectWorkspace(startDir) {
76
- let dir = resolve(startDir);
77
- for (;;) {
78
- const pnpmWorkspacePath = join(dir, 'pnpm-workspace.yaml');
79
- if (existsSync(pnpmWorkspacePath)) {
80
- const globs = parsePnpmWorkspaceYaml(readFileSync(pnpmWorkspacePath, 'utf8'));
81
- return { root: dir, packages: packagesFromGlobs(dir, globs) };
82
- }
83
- const pkgJson = readPackageJson(dir);
84
- if (pkgJson?.workspaces) {
85
- const raw = pkgJson.workspaces;
86
- const globs = Array.isArray(raw)
87
- ? raw.filter((g) => typeof g === 'string')
88
- : Array.isArray(raw?.packages)
89
- ? raw.packages.filter((g) => typeof g === 'string')
90
- : [];
91
- return { root: dir, packages: packagesFromGlobs(dir, globs) };
92
- }
93
- const parent = dirname(dir);
94
- if (parent === dir)
95
- return null;
96
- dir = parent;
97
- }
98
- }
99
- //# sourceMappingURL=workspace.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../src/commands/dead-exports/workspace.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import ts from 'typescript';
2
- export interface LoadedCompilerOptions {
3
- options: ts.CompilerOptions;
4
- configPath: string;
5
- }
6
- export type LoadCompilerOptionsResult = LoadedCompilerOptions | {
7
- error: string;
8
- };
9
- export declare function loadCompilerOptions(packageDir: string, tsconfigOverride?: string): LoadCompilerOptionsResult;
@@ -1,26 +0,0 @@
1
- import ts from 'typescript';
2
- import { dirname, resolve } from 'node:path';
3
- export function loadCompilerOptions(packageDir, tsconfigOverride) {
4
- const configPath = tsconfigOverride
5
- ? resolve(packageDir, tsconfigOverride)
6
- : ts.findConfigFile(packageDir, ts.sys.fileExists, 'tsconfig.json');
7
- if (!configPath || !ts.sys.fileExists(configPath)) {
8
- return {
9
- error: `no tsconfig.json found under ${packageDir} — nothing to typecheck README code blocks against`,
10
- };
11
- }
12
- const read = ts.readConfigFile(configPath, ts.sys.readFile);
13
- if (read.error) {
14
- return { error: ts.flattenDiagnosticMessageText(read.error.messageText, '\n') };
15
- }
16
- const parsed = ts.parseJsonConfigFileContent(read.config, ts.sys, dirname(configPath));
17
- if (parsed.errors.length > 0) {
18
- return {
19
- error: parsed.errors
20
- .map((e) => ts.flattenDiagnosticMessageText(e.messageText, '\n'))
21
- .join('\n'),
22
- };
23
- }
24
- return { options: parsed.options, configPath };
25
- }
26
- //# sourceMappingURL=tsconfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tsconfig.js","sourceRoot":"","sources":["../../../src/commands/readme-check/tsconfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAS5C,MAAM,UAAU,mBAAmB,CACjC,UAAkB,EAClB,gBAAyB;IAEzB,MAAM,UAAU,GAAG,gBAAgB;QACjC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,gBAAgB,CAAC;QACvC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC,CAAA;IAErE,IAAI,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAClD,OAAO;YACL,KAAK,EAAE,gCAAgC,UAAU,oDAAoD;SACtG,CAAA;IACH,CAAC;IAED,MAAM,IAAI,GAAG,EAAE,CAAC,cAAc,CAAC,UAAU,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC3D,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,4BAA4B,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAA;IACjF,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;IACtF,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM;iBACjB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,4BAA4B,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;iBAChE,IAAI,CAAC,IAAI,CAAC;SACd,CAAA;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,CAAA;AAChD,CAAC"}