@component-compass/cli 0.1.3 → 0.1.5
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/auth/upload-auth.d.ts +7 -4
- package/dist/auth/upload-auth.js +20 -3
- package/dist/auth/upload-auth.js.map +1 -1
- package/dist/cli/help.d.ts +4 -0
- package/dist/cli/help.js +58 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/parse.d.ts +14 -0
- package/dist/cli/parse.js +78 -0
- package/dist/cli/parse.js.map +1 -0
- package/dist/cli/suggest.d.ts +4 -0
- package/dist/cli/suggest.js +38 -0
- package/dist/cli/suggest.js.map +1 -0
- package/dist/cli.js +115 -112
- package/dist/cli.js.map +1 -1
- package/dist/commands/auth.d.ts +9 -2
- package/dist/commands/auth.js +94 -25
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/init.d.ts +6 -1
- package/dist/commands/init.js +86 -30
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/scan.d.ts +4 -0
- package/dist/commands/scan.js +19 -9
- package/dist/commands/scan.js.map +1 -1
- package/dist/manifest/lazy-resolver.d.ts +5 -22
- package/dist/manifest/lazy-resolver.js +14 -46
- package/dist/manifest/lazy-resolver.js.map +1 -1
- package/dist/prompts/adapter.d.ts +43 -0
- package/dist/prompts/adapter.js +32 -0
- package/dist/prompts/adapter.js.map +1 -0
- package/dist/reporter/stdout.d.ts +2 -1
- package/dist/reporter/stdout.js +14 -13
- package/dist/reporter/stdout.js.map +1 -1
- package/dist/rollup.d.ts +0 -2
- package/dist/rollup.js +0 -1
- package/dist/rollup.js.map +1 -1
- package/dist/scan/wrap-aggregation.js +0 -1
- package/dist/scan/wrap-aggregation.js.map +1 -1
- package/dist/seeds.js +3 -4
- package/dist/seeds.js.map +1 -1
- package/dist/util/color.d.ts +24 -0
- package/dist/util/color.js +45 -0
- package/dist/util/color.js.map +1 -0
- package/dist/util/interactive.d.ts +17 -0
- package/dist/util/interactive.js +19 -0
- package/dist/util/interactive.js.map +1 -0
- package/dist/util/log.d.ts +3 -1
- package/dist/util/log.js +6 -3
- package/dist/util/log.js.map +1 -1
- package/dist/util/version.d.ts +7 -0
- package/dist/util/version.js +13 -0
- package/dist/util/version.js.map +1 -0
- package/package.json +9 -8
- package/dist/scan/stamp-deprecated.d.ts +0 -16
- package/dist/scan/stamp-deprecated.js +0 -33
- package/dist/scan/stamp-deprecated.js.map +0 -1
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The single gate deciding whether a prompt may be shown. A prompt is reachable
|
|
3
|
+
* only when this is true AND the value wasn't already supplied by flag/env/
|
|
4
|
+
* config. False in CI, under --yes, or without a TTY on both streams — those
|
|
5
|
+
* paths must fall back to the flag-or-error behaviour, never block on stdin.
|
|
6
|
+
*/
|
|
7
|
+
export function isInteractive(opts = {}) {
|
|
8
|
+
if (opts.yes)
|
|
9
|
+
return false;
|
|
10
|
+
const env = opts.env ?? process.env;
|
|
11
|
+
// biome-ignore lint/complexity/useLiteralKeys: env access
|
|
12
|
+
const ci = env["CI"];
|
|
13
|
+
if (ci !== undefined && ci !== "" && ci !== "false" && ci !== "0")
|
|
14
|
+
return false;
|
|
15
|
+
const stdin = opts.stdin ?? process.stdin;
|
|
16
|
+
const stdout = opts.stdout ?? process.stdout;
|
|
17
|
+
return Boolean(stdin.isTTY) && Boolean(stdout.isTTY);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=interactive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/util/interactive.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,OAA2B,EAAE;IACzD,IAAI,IAAI,CAAC,GAAG;QAAE,OAAO,KAAK,CAAC;IAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACpC,0DAA0D;IAC1D,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IACrB,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,OAAO,IAAI,EAAE,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IAChF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAC7C,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACvD,CAAC"}
|
package/dist/util/log.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { type Colorizer } from "./color.js";
|
|
1
2
|
export declare class Logger {
|
|
2
3
|
private quiet;
|
|
3
|
-
|
|
4
|
+
private readonly color;
|
|
5
|
+
constructor(quiet?: boolean, color?: Colorizer);
|
|
4
6
|
info(msg: string): void;
|
|
5
7
|
warn(msg: string): void;
|
|
6
8
|
error(msg: string): void;
|
package/dist/util/log.js
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
|
+
import { createColor } from "./color.js";
|
|
1
2
|
export class Logger {
|
|
2
3
|
quiet;
|
|
3
|
-
|
|
4
|
+
color;
|
|
5
|
+
constructor(quiet = false, color = createColor({ isTTY: Boolean(process.stderr.isTTY) })) {
|
|
4
6
|
this.quiet = quiet;
|
|
7
|
+
this.color = color;
|
|
5
8
|
}
|
|
6
9
|
info(msg) {
|
|
7
10
|
if (!this.quiet)
|
|
8
11
|
process.stdout.write(`${msg}\n`);
|
|
9
12
|
}
|
|
10
13
|
warn(msg) {
|
|
11
|
-
process.stderr.write(
|
|
14
|
+
process.stderr.write(`${this.color.yellow("⚠")} ${msg}\n`);
|
|
12
15
|
}
|
|
13
16
|
error(msg) {
|
|
14
|
-
process.stderr.write(
|
|
17
|
+
process.stderr.write(`${this.color.red("error:")} ${msg}\n`);
|
|
15
18
|
}
|
|
16
19
|
}
|
|
17
20
|
//# sourceMappingURL=log.js.map
|
package/dist/util/log.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/util/log.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/util/log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAkB,MAAM,YAAY,CAAC;AAEzD,MAAM,OAAO,MAAM;IAEP;IACS;IAFnB,YACU,QAAQ,KAAK,EACJ,QAAmB,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QADjF,UAAK,GAAL,KAAK,CAAQ;QACJ,UAAK,GAAL,KAAK,CAAmE;IACxF,CAAC;IACJ,IAAI,CAAC,GAAW;QACd,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,CAAC,GAAW;QACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAC9D,CAAC;IACD,KAAK,CAAC,GAAW;QACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAC/D,CAAC;CACF"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The CLI version, read from package.json at runtime so `--version` can never
|
|
3
|
+
* drift from the published build. From `dist/util/version.js` (or
|
|
4
|
+
* `src/util/version.ts` under Vitest) the package root is two directories up.
|
|
5
|
+
* This is the CLI tool version — distinct from the artifact's `meta.ccVersion`.
|
|
6
|
+
*/
|
|
7
|
+
export declare function readVersion(): string;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { readFileSync } from "node:fs";
|
|
2
|
+
/**
|
|
3
|
+
* The CLI version, read from package.json at runtime so `--version` can never
|
|
4
|
+
* drift from the published build. From `dist/util/version.js` (or
|
|
5
|
+
* `src/util/version.ts` under Vitest) the package root is two directories up.
|
|
6
|
+
* This is the CLI tool version — distinct from the artifact's `meta.ccVersion`.
|
|
7
|
+
*/
|
|
8
|
+
export function readVersion() {
|
|
9
|
+
const pkgUrl = new URL("../../package.json", import.meta.url);
|
|
10
|
+
const parsed = JSON.parse(readFileSync(pkgUrl, "utf8"));
|
|
11
|
+
return parsed.version ?? "0.0.0";
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/util/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAyB,CAAC;IAChF,OAAO,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC;AACnC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@component-compass/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.5",
|
|
4
4
|
"description": "Open-source CLI for measuring design-system component usage across multi-framework consumer repos.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -35,13 +35,14 @@
|
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@babel/parser": "7.29.3",
|
|
37
37
|
"@babel/types": "7.29.0",
|
|
38
|
-
"@
|
|
39
|
-
"@component-compass/
|
|
40
|
-
"@component-compass/parser-
|
|
41
|
-
"@component-compass/parser-
|
|
42
|
-
"@component-compass/parser-
|
|
43
|
-
"@component-compass/
|
|
44
|
-
"@component-compass/
|
|
38
|
+
"@clack/prompts": "^1.5.1",
|
|
39
|
+
"@component-compass/ast-utils": "0.1.5",
|
|
40
|
+
"@component-compass/parser-html": "0.1.5",
|
|
41
|
+
"@component-compass/parser-lit": "0.1.5",
|
|
42
|
+
"@component-compass/parser-react": "0.1.5",
|
|
43
|
+
"@component-compass/parser-vue": "0.1.5",
|
|
44
|
+
"@component-compass/plugin-core": "0.1.5",
|
|
45
|
+
"@component-compass/reference-graph": "0.1.5",
|
|
45
46
|
"@vue/compiler-sfc": "3.5.33",
|
|
46
47
|
"ajv": "8.20.0",
|
|
47
48
|
"glob": "13.0.6",
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { OutputComponent } from "@component-compass/plugin-core";
|
|
2
|
-
import type { CemIndex } from "./cem-index.js";
|
|
3
|
-
/**
|
|
4
|
-
* Stamp `deprecated: true` onto each custom-element component whose CEM
|
|
5
|
-
* declaration carries `deprecated: true` (or a reason string). All other
|
|
6
|
-
* components keep the default `deprecated: false` set during rollup.
|
|
7
|
-
*
|
|
8
|
-
* Sources checked, in priority order:
|
|
9
|
-
* 1. Global CEM index (built from node_modules at scan startup) — covers
|
|
10
|
-
* custom-elements resolved via the HTML/Lit/Vue tag-name path.
|
|
11
|
-
* 2. component.manifest?.data?.lifecycle?.status — covers components whose
|
|
12
|
-
* manifest was loaded via the lazy-resolver path.
|
|
13
|
-
*
|
|
14
|
-
* A component is deprecated when EITHER source says so.
|
|
15
|
-
*/
|
|
16
|
-
export declare function stampDeprecated(components: OutputComponent[], cemIndex: CemIndex): void;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Stamp `deprecated: true` onto each custom-element component whose CEM
|
|
3
|
-
* declaration carries `deprecated: true` (or a reason string). All other
|
|
4
|
-
* components keep the default `deprecated: false` set during rollup.
|
|
5
|
-
*
|
|
6
|
-
* Sources checked, in priority order:
|
|
7
|
-
* 1. Global CEM index (built from node_modules at scan startup) — covers
|
|
8
|
-
* custom-elements resolved via the HTML/Lit/Vue tag-name path.
|
|
9
|
-
* 2. component.manifest?.data?.lifecycle?.status — covers components whose
|
|
10
|
-
* manifest was loaded via the lazy-resolver path.
|
|
11
|
-
*
|
|
12
|
-
* A component is deprecated when EITHER source says so.
|
|
13
|
-
*/
|
|
14
|
-
export function stampDeprecated(components, cemIndex) {
|
|
15
|
-
for (const c of components) {
|
|
16
|
-
// Manifest-lifecycle path: already captured via lazy-resolver enrichment.
|
|
17
|
-
if (c.manifest?.data?.lifecycle?.status === "deprecated") {
|
|
18
|
-
c.deprecated = true;
|
|
19
|
-
continue;
|
|
20
|
-
}
|
|
21
|
-
// CEM-index path: look up the tag name in the global CEM index.
|
|
22
|
-
if (c.identity.kind === "custom-element" && c.identity.tagName) {
|
|
23
|
-
const entry = cemIndex.byTag.get(c.identity.tagName);
|
|
24
|
-
if (entry) {
|
|
25
|
-
const rawDecl = entry.manifest;
|
|
26
|
-
if (rawDecl && rawDecl.deprecated !== undefined && rawDecl.deprecated !== false) {
|
|
27
|
-
c.deprecated = true;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
//# sourceMappingURL=stamp-deprecated.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stamp-deprecated.js","sourceRoot":"","sources":["../../src/scan/stamp-deprecated.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAC7B,UAA6B,EAC7B,QAAkB;IAElB,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,0EAA0E;QAC1E,IAAI,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,KAAK,YAAY,EAAE,CAAC;YACzD,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;YACpB,SAAS;QACX,CAAC;QAED,gEAAgE;QAChE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,gBAAgB,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC/D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,OAAO,GAAG,KAAK,CAAC,QAAoD,CAAC;gBAC3E,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;oBAChF,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
|