youmightnotneed 0.1.0 → 0.1.2
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/dist/bin.d.ts +3 -1
- package/dist/bin.d.ts.map +1 -1
- package/dist/bin.js +50 -32
- package/dist/bin.js.map +1 -1
- package/package.json +2 -2
package/dist/bin.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
2
|
+
/** Walks up from a directory looking for a package.json. */
|
|
3
|
+
export declare function findPackageJson(start: string): string | null;
|
|
4
|
+
export declare function resolveTarget(input: string | undefined): string;
|
|
3
5
|
//# sourceMappingURL=bin.d.ts.map
|
package/dist/bin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AAgGA,4DAA4D;AAC5D,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc5D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAiC/D"}
|
package/dist/bin.js
CHANGED
|
@@ -75,7 +75,7 @@ function parseArgs(argv) {
|
|
|
75
75
|
return args;
|
|
76
76
|
}
|
|
77
77
|
/** Walks up from a directory looking for a package.json. */
|
|
78
|
-
function findPackageJson(start) {
|
|
78
|
+
export function findPackageJson(start) {
|
|
79
79
|
let dir = resolve(start);
|
|
80
80
|
for (let depth = 0; depth < 40; depth += 1) {
|
|
81
81
|
const candidate = join(dir, "package.json");
|
|
@@ -92,7 +92,7 @@ function findPackageJson(start) {
|
|
|
92
92
|
}
|
|
93
93
|
return null;
|
|
94
94
|
}
|
|
95
|
-
function resolveTarget(input) {
|
|
95
|
+
export function resolveTarget(input) {
|
|
96
96
|
if (!input) {
|
|
97
97
|
const found = findPackageJson(process.cwd());
|
|
98
98
|
if (!found) {
|
|
@@ -104,13 +104,23 @@ function resolveTarget(input) {
|
|
|
104
104
|
const target = resolve(input);
|
|
105
105
|
if (basename(target) === "package.json")
|
|
106
106
|
return target;
|
|
107
|
+
// A file path under any other name: read it directly rather than assuming
|
|
108
|
+
// it must be a directory. Covers a renamed manifest, or one written by
|
|
109
|
+
// another tool.
|
|
110
|
+
try {
|
|
111
|
+
readFileSync(target, "utf8");
|
|
112
|
+
return target;
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
// Not a readable file. Fall through and try it as a directory.
|
|
116
|
+
}
|
|
107
117
|
const inDir = join(target, "package.json");
|
|
108
118
|
try {
|
|
109
119
|
readFileSync(inDir, "utf8");
|
|
110
120
|
return inDir;
|
|
111
121
|
}
|
|
112
122
|
catch {
|
|
113
|
-
console.error(`No package.json at ${
|
|
123
|
+
console.error(`No package.json at ${target}`);
|
|
114
124
|
process.exit(1);
|
|
115
125
|
}
|
|
116
126
|
}
|
|
@@ -144,35 +154,43 @@ function readOwnVersion() {
|
|
|
144
154
|
return "unknown";
|
|
145
155
|
}
|
|
146
156
|
}
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
157
|
+
function main() {
|
|
158
|
+
const args = parseArgs(process.argv.slice(2));
|
|
159
|
+
if (args.help) {
|
|
160
|
+
console.info(HELP);
|
|
161
|
+
process.exit(0);
|
|
162
|
+
}
|
|
163
|
+
if (args.version) {
|
|
164
|
+
console.info(readOwnVersion());
|
|
165
|
+
process.exit(0);
|
|
166
|
+
}
|
|
167
|
+
const target = resolveTarget(args.path);
|
|
168
|
+
const pkg = readPackageJson(target);
|
|
169
|
+
const report = analyze(pkg);
|
|
170
|
+
if (args.json) {
|
|
171
|
+
console.info(renderJson(report));
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
const useColor = args.color && process.stdout.isTTY === true;
|
|
175
|
+
console.info(renderReport(report, {
|
|
176
|
+
palette: createPalette(useColor),
|
|
177
|
+
projectName: pkg.name ?? basename(dirname(target)),
|
|
178
|
+
provenance: {
|
|
179
|
+
baselineOn: BASELINE_DATA_DATE,
|
|
180
|
+
webFeaturesVersion: WEB_FEATURES_VERSION,
|
|
181
|
+
sizesOn: packageSizes.fetchedOn,
|
|
182
|
+
},
|
|
183
|
+
verbose: args.verbose,
|
|
184
|
+
}));
|
|
185
|
+
}
|
|
186
|
+
// The report is informational, so a clean run always exits 0. A CI-friendly
|
|
187
|
+
// threshold flag can come later, once the catalog has settled.
|
|
154
188
|
process.exit(0);
|
|
155
189
|
}
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
const
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
else {
|
|
163
|
-
const useColor = args.color && process.stdout.isTTY === true;
|
|
164
|
-
console.info(renderReport(report, {
|
|
165
|
-
palette: createPalette(useColor),
|
|
166
|
-
projectName: pkg.name ?? basename(dirname(target)),
|
|
167
|
-
provenance: {
|
|
168
|
-
baselineOn: BASELINE_DATA_DATE,
|
|
169
|
-
webFeaturesVersion: WEB_FEATURES_VERSION,
|
|
170
|
-
sizesOn: packageSizes.fetchedOn,
|
|
171
|
-
},
|
|
172
|
-
verbose: args.verbose,
|
|
173
|
-
}));
|
|
174
|
-
}
|
|
175
|
-
// The report is informational, so a clean run always exits 0. A CI-friendly
|
|
176
|
-
// threshold flag can come later, once the catalog has settled.
|
|
177
|
-
process.exit(0);
|
|
190
|
+
// Only run as a side effect when this file is the process entry point, not
|
|
191
|
+
// when a test imports it to exercise resolveTarget() or findPackageJson().
|
|
192
|
+
const isEntryPoint = process.argv[1] !== undefined &&
|
|
193
|
+
import.meta.url === `file://${resolve(process.argv[1])}`;
|
|
194
|
+
if (isEntryPoint)
|
|
195
|
+
main();
|
|
178
196
|
//# sourceMappingURL=bin.js.map
|
package/dist/bin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EACL,OAAO,EACP,kBAAkB,EAElB,YAAY,EACZ,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEvD,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;CAuBZ,CAAC;AAWF,SAAS,SAAS,CAAC,IAAuB;IACxC,MAAM,IAAI,GAAS;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ;QAC5B,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,KAAK;KACf,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,IAAI,CAAC;YACV,KAAK,WAAW;gBACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,QAAQ;gBACX,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,MAAM;YACR;gBACE,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxB,OAAO,CAAC,KAAK,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;oBAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;gBAChB,MAAM;QACV,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,4DAA4D;AAC5D,
|
|
1
|
+
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7D,OAAO,EACL,OAAO,EACP,kBAAkB,EAElB,YAAY,EACZ,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEvD,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;CAuBZ,CAAC;AAWF,SAAS,SAAS,CAAC,IAAuB;IACxC,MAAM,IAAI,GAAS;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ;QAC5B,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,KAAK;KACf,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,IAAI,CAAC;YACV,KAAK,WAAW;gBACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,MAAM;YACR,KAAK,IAAI,CAAC;YACV,KAAK,QAAQ;gBACX,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,MAAM;YACR;gBACE,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxB,OAAO,CAAC,KAAK,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;oBAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;gBAChB,MAAM;QACV,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,IAAI,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IACzB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC;YACH,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAChC,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5B,IAAI,MAAM,KAAK,GAAG;gBAAE,OAAO,IAAI,CAAC;YAChC,GAAG,GAAG,MAAM,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CACX,iHAAiH,CAClH,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,cAAc;QAAE,OAAO,MAAM,CAAC;IAEvD,0EAA0E;IAC1E,uEAAuE;IACvE,gBAAgB;IAChB,IAAI,CAAC;QACH,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7B,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,+DAA+D;IACjE,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC3C,IAAI,CAAC;QACH,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CAAC,sBAAsB,MAAM,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,MAAyB,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,qBAAqB,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,cAAc;IACrB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CACpB,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAC1C,CAAC;QAC1B,OAAO,GAAG,CAAC,OAAO,IAAI,SAAS,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,IAAI;IACX,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9C,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAE5B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC;QAC7D,OAAO,CAAC,IAAI,CACV,YAAY,CAAC,MAAM,EAAE;YACnB,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC;YAChC,WAAW,EAAE,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAClD,UAAU,EAAE;gBACV,UAAU,EAAE,kBAAkB;gBAC9B,kBAAkB,EAAE,oBAAoB;gBACxC,OAAO,EAAE,YAAY,CAAC,SAAS;aAChC;YACD,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CACH,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,+DAA+D;IAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,2EAA2E;AAC3E,2EAA2E;AAC3E,MAAM,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS;IAC7B,OAAO,IAAI,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAE3D,IAAI,YAAY;IAAE,IAAI,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "youmightnotneed",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Find the modern CSS and HTML that replaces your JavaScript dependencies.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"access": "public"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@jomae/catalog": "0.
|
|
32
|
+
"@jomae/catalog": "0.2.0"
|
|
33
33
|
},
|
|
34
34
|
"engines": {
|
|
35
35
|
"node": ">=22.18.0"
|