nx-factory-cli 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/README.md +244 -0
  2. package/dist/commands/add-app.d.ts +15 -0
  3. package/dist/commands/add-app.d.ts.map +1 -0
  4. package/dist/commands/add-app.js +365 -0
  5. package/dist/commands/add-app.js.map +1 -0
  6. package/dist/commands/add-component.d.ts +2 -0
  7. package/dist/commands/add-component.d.ts.map +1 -0
  8. package/dist/commands/add-component.js +110 -0
  9. package/dist/commands/add-component.js.map +1 -0
  10. package/dist/commands/add-lib.d.ts +9 -0
  11. package/dist/commands/add-lib.d.ts.map +1 -0
  12. package/dist/commands/add-lib.js +190 -0
  13. package/dist/commands/add-lib.js.map +1 -0
  14. package/dist/commands/add-storybook.d.ts +6 -0
  15. package/dist/commands/add-storybook.d.ts.map +1 -0
  16. package/dist/commands/add-storybook.js +181 -0
  17. package/dist/commands/add-storybook.js.map +1 -0
  18. package/dist/commands/doctor.d.ts +2 -0
  19. package/dist/commands/doctor.d.ts.map +1 -0
  20. package/dist/commands/doctor.js +230 -0
  21. package/dist/commands/doctor.js.map +1 -0
  22. package/dist/commands/init.d.ts +9 -0
  23. package/dist/commands/init.d.ts.map +1 -0
  24. package/dist/commands/init.js +505 -0
  25. package/dist/commands/init.js.map +1 -0
  26. package/dist/commands/list.d.ts +2 -0
  27. package/dist/commands/list.d.ts.map +1 -0
  28. package/dist/commands/list.js +130 -0
  29. package/dist/commands/list.js.map +1 -0
  30. package/dist/commands/publish.d.ts +8 -0
  31. package/dist/commands/publish.d.ts.map +1 -0
  32. package/dist/commands/publish.js +179 -0
  33. package/dist/commands/publish.js.map +1 -0
  34. package/dist/commands/remove-component.d.ts +5 -0
  35. package/dist/commands/remove-component.d.ts.map +1 -0
  36. package/dist/commands/remove-component.js +172 -0
  37. package/dist/commands/remove-component.js.map +1 -0
  38. package/dist/commands/update.d.ts +5 -0
  39. package/dist/commands/update.d.ts.map +1 -0
  40. package/dist/commands/update.js +126 -0
  41. package/dist/commands/update.js.map +1 -0
  42. package/dist/config.d.ts +14 -0
  43. package/dist/config.d.ts.map +1 -0
  44. package/dist/config.js +35 -0
  45. package/dist/config.js.map +1 -0
  46. package/dist/exec.d.ts +25 -0
  47. package/dist/exec.d.ts.map +1 -0
  48. package/dist/exec.js +80 -0
  49. package/dist/exec.js.map +1 -0
  50. package/dist/files.d.ts +7 -0
  51. package/dist/files.d.ts.map +1 -0
  52. package/dist/files.js +23 -0
  53. package/dist/files.js.map +1 -0
  54. package/dist/index.d.ts +3 -0
  55. package/dist/index.d.ts.map +1 -0
  56. package/dist/index.js +85 -0
  57. package/dist/index.js.map +1 -0
  58. package/dist/ui.d.ts +44 -0
  59. package/dist/ui.d.ts.map +1 -0
  60. package/dist/ui.js +149 -0
  61. package/dist/ui.js.map +1 -0
  62. package/package.json +39 -0
@@ -0,0 +1,230 @@
1
+ import path from "path";
2
+ import { pathExists, writeFile } from "../files.js";
3
+ import { loadConfig } from "../config.js";
4
+ import { c, printSuccess, printError, printWarn } from "../ui.js";
5
+ export async function doctorCommand() {
6
+ const cfg = await loadConfig();
7
+ console.log(`\n ${c.dim("─".repeat(44))}`);
8
+ console.log(` ${c.whiteBold("nx-shadcn doctor")} ${c.dim("workspace health check")}`);
9
+ console.log(` ${c.dim("─".repeat(44))}\n`);
10
+ const checks = [];
11
+ const { default: fs } = await import("fs-extra");
12
+ // ─── 1. Config file present ────────────────────────────────────────────────
13
+ if (cfg) {
14
+ checks.push({ name: "Config file", status: "pass", detail: "nx-shadcn.config.json found" });
15
+ checks.push({ name: "Package manager", status: "pass", detail: cfg.pkgManager });
16
+ checks.push({ name: "UI package", status: "pass", detail: `packages/${cfg.uiPackage}` });
17
+ }
18
+ else {
19
+ checks.push({
20
+ name: "Config file",
21
+ status: "warn",
22
+ detail: "nx-shadcn.config.json not found — run `nx-shadcn init` or create manually",
23
+ });
24
+ }
25
+ // ─── 2. Resolve UI package dir ────────────────────────────────────────────
26
+ const uiPkgName = cfg?.uiPackage ?? "ui";
27
+ const uiPkgDir = path.join(process.cwd(), "packages", uiPkgName);
28
+ const hasUiPkg = await pathExists(uiPkgDir);
29
+ if (!hasUiPkg) {
30
+ checks.push({ name: "UI package dir", status: "fail", detail: `packages/${uiPkgName} not found` });
31
+ renderChecks(checks);
32
+ printError({
33
+ title: "Critical: UI package directory missing",
34
+ recovery: [{ label: "Re-initialise:", cmd: "nx-shadcn init" }],
35
+ });
36
+ return;
37
+ }
38
+ checks.push({ name: "UI package dir", status: "pass", detail: `packages/${uiPkgName} exists` });
39
+ // ─── 3. components.json ───────────────────────────────────────────────────
40
+ const compJsonPath = path.join(uiPkgDir, "components.json");
41
+ if (await pathExists(compJsonPath)) {
42
+ try {
43
+ const compJson = await fs.readJson(compJsonPath);
44
+ const style = compJson?.style ?? "unknown";
45
+ const aliases = compJson?.aliases ?? {};
46
+ // Auto-fix: if aliases use relative paths (./src/...) swap them to @/ style
47
+ const hasRelativePaths = Object.values(aliases).some((v) => typeof v === "string" && v.startsWith("./"));
48
+ if (hasRelativePaths) {
49
+ const fixed = {
50
+ ...compJson,
51
+ aliases: {
52
+ components: "@/components",
53
+ utils: "@/lib/utils",
54
+ ui: "@/components/ui",
55
+ lib: "@/lib",
56
+ hooks: "@/hooks",
57
+ },
58
+ };
59
+ await fs.writeJson(compJsonPath, fixed, { spaces: 2 });
60
+ checks.push({
61
+ name: "components.json",
62
+ status: "fix",
63
+ detail: `aliases rewritten from ./src/... to @/... (shadcn requires path aliases)`,
64
+ });
65
+ }
66
+ else {
67
+ checks.push({ name: "components.json", status: "pass", detail: `style: ${style}` });
68
+ }
69
+ }
70
+ catch {
71
+ checks.push({ name: "components.json", status: "fail", detail: "invalid JSON" });
72
+ }
73
+ }
74
+ else {
75
+ checks.push({ name: "components.json", status: "fail", detail: "missing — shadcn commands will not work" });
76
+ }
77
+ // ─── 4. tsup entry point ──────────────────────────────────────────────────
78
+ const tsupCfgPath = path.join(uiPkgDir, "tsup.config.ts");
79
+ const barrelPath = path.join(uiPkgDir, "src/index.ts");
80
+ if (await pathExists(tsupCfgPath)) {
81
+ checks.push({ name: "tsup.config.ts", status: "pass", detail: "build config present" });
82
+ }
83
+ else {
84
+ checks.push({ name: "tsup.config.ts", status: "warn", detail: "missing — `pnpm build` will not work" });
85
+ }
86
+ // ─── 4b. tsconfig paths (@/* alias required by shadcn) ────────────────────
87
+ const tsconfigPath = path.join(uiPkgDir, "tsconfig.json");
88
+ if (await pathExists(tsconfigPath)) {
89
+ try {
90
+ const tsconfig = await fs.readJson(tsconfigPath);
91
+ const paths = tsconfig?.compilerOptions?.paths ?? {};
92
+ const hasAlias = "@/*" in paths || "@/components" in paths;
93
+ if (!hasAlias) {
94
+ // Auto-fix: inject baseUrl + paths
95
+ tsconfig.compilerOptions = {
96
+ ...tsconfig.compilerOptions,
97
+ baseUrl: ".",
98
+ paths: { "@/*": ["./src/*"] },
99
+ };
100
+ await fs.writeJson(tsconfigPath, tsconfig, { spaces: 2 });
101
+ checks.push({
102
+ name: "tsconfig paths",
103
+ status: "fix",
104
+ detail: `added baseUrl + paths: { "@/*": ["./src/*"] }`,
105
+ });
106
+ }
107
+ else {
108
+ checks.push({ name: "tsconfig paths", status: "pass", detail: `@/* alias present` });
109
+ }
110
+ }
111
+ catch {
112
+ checks.push({ name: "tsconfig paths", status: "warn", detail: "could not parse tsconfig.json" });
113
+ }
114
+ }
115
+ else {
116
+ checks.push({ name: "tsconfig paths", status: "warn", detail: "tsconfig.json missing in UI package" });
117
+ }
118
+ // ─── 5. Barrel export sync ────────────────────────────────────────────────
119
+ const uiComponentsDir = path.join(uiPkgDir, "src/components/ui");
120
+ let installed = [];
121
+ if (await pathExists(uiComponentsDir)) {
122
+ const files = await fs.readdir(uiComponentsDir);
123
+ installed = files
124
+ .filter((f) => f.endsWith(".tsx") || f.endsWith(".ts"))
125
+ .map((f) => f.replace(/\.tsx?$/, ""))
126
+ .sort();
127
+ }
128
+ let barrelContent = "";
129
+ if (await pathExists(barrelPath)) {
130
+ barrelContent = await fs.readFile(barrelPath, "utf-8");
131
+ }
132
+ const exported = new Set([...barrelContent.matchAll(/\.\/components\/ui\/([^"']+)/g)].map((m) => m[1]));
133
+ const missing = installed.filter((comp) => !exported.has(comp));
134
+ if (missing.length === 0) {
135
+ checks.push({
136
+ name: "Barrel exports",
137
+ status: "pass",
138
+ detail: `${installed.length} component${installed.length !== 1 ? "s" : ""} all exported`,
139
+ });
140
+ }
141
+ else {
142
+ // Auto-fix: append missing exports
143
+ const newLines = missing.map((c) => `export * from "./components/ui/${c}";`).join("\n");
144
+ const updated = barrelContent.endsWith("\n")
145
+ ? barrelContent + newLines + "\n"
146
+ : barrelContent + "\n" + newLines + "\n";
147
+ await writeFile(barrelPath, updated);
148
+ checks.push({
149
+ name: "Barrel exports",
150
+ status: "fix",
151
+ detail: `added ${missing.length} missing export${missing.length > 1 ? "s" : ""}: ${missing.join(", ")}`,
152
+ });
153
+ }
154
+ // ─── 6. Workspace protocol ────────────────────────────────────────────────
155
+ if (cfg) {
156
+ const appsDir = path.join(process.cwd(), "apps");
157
+ if (await pathExists(appsDir)) {
158
+ const apps = await fs.readdir(appsDir);
159
+ const wrongProtocol = [];
160
+ const expected = cfg.pkgManager === "npm" ? `"*"` : `"workspace:*"`;
161
+ for (const app of apps) {
162
+ const pkgPath = path.join(appsDir, app, "package.json");
163
+ if (!(await pathExists(pkgPath)))
164
+ continue;
165
+ try {
166
+ const pkgJson = await fs.readJson(pkgPath);
167
+ const dep = pkgJson?.dependencies?.[`@workspace/${uiPkgName}`];
168
+ if (dep !== undefined) {
169
+ const isCorrect = cfg.pkgManager === "npm"
170
+ ? dep === "*"
171
+ : dep === "workspace:*";
172
+ if (!isCorrect)
173
+ wrongProtocol.push(`${app} (has "${dep}", expected ${expected})`);
174
+ }
175
+ }
176
+ catch { /* skip */ }
177
+ }
178
+ if (wrongProtocol.length === 0) {
179
+ checks.push({ name: "Workspace protocol", status: "pass", detail: `${expected} used correctly` });
180
+ }
181
+ else {
182
+ checks.push({
183
+ name: "Workspace protocol",
184
+ status: "warn",
185
+ detail: `wrong protocol in: ${wrongProtocol.join("; ")}`,
186
+ });
187
+ }
188
+ }
189
+ }
190
+ // ─── Render all checks ────────────────────────────────────────────────────
191
+ renderChecks(checks);
192
+ const failures = checks.filter((ch) => ch.status === "fail");
193
+ const warnings = checks.filter((ch) => ch.status === "warn");
194
+ const fixes = checks.filter((ch) => ch.status === "fix");
195
+ if (failures.length === 0 && warnings.length === 0) {
196
+ printSuccess({
197
+ title: "All checks passed",
198
+ commands: fixes.length > 0
199
+ ? [{ cmd: "src/index.ts updated", comment: "barrel exports were fixed automatically" }]
200
+ : [{ cmd: "nx-shadcn list", comment: "view installed components" }],
201
+ });
202
+ }
203
+ else {
204
+ if (fixes.length > 0) {
205
+ console.log(` ${c.green("✓")} ${c.green(`Auto-fixed ${fixes.length} issue${fixes.length > 1 ? "s" : ""}`)}\n`);
206
+ }
207
+ if (warnings.length > 0 || failures.length > 0) {
208
+ printWarn(`${warnings.length + failures.length} issue${warnings.length + failures.length > 1 ? "s" : ""} need attention`, "See details above");
209
+ }
210
+ }
211
+ }
212
+ function renderChecks(checks) {
213
+ for (const ch of checks) {
214
+ const icon = ch.status === "pass" ? c.green("✓") :
215
+ ch.status === "fix" ? c.cyan("↻") :
216
+ ch.status === "warn" ? c.yellow("⚠") :
217
+ c.red("✗");
218
+ const label = c.white(ch.name.padEnd(22));
219
+ const detail = ch.status === "fix"
220
+ ? c.cyan(ch.detail)
221
+ : ch.status === "fail"
222
+ ? c.red(ch.detail)
223
+ : ch.status === "warn"
224
+ ? c.yellow(ch.detail)
225
+ : c.dim(ch.detail);
226
+ console.log(` ${icon} ${label} ${detail}`);
227
+ }
228
+ console.log();
229
+ }
230
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ interface InitOptions {
2
+ name?: string;
3
+ pkgManager?: string;
4
+ yes?: boolean;
5
+ dryRun?: boolean;
6
+ }
7
+ export declare function initCommand(options: InitOptions): Promise<void>;
8
+ export {};
9
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../commands/init.ts"],"names":[],"mappings":"AAgBA,UAAU,WAAW;IACpB,IAAI,CAAC,EAAQ,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAS,OAAO,CAAC;IACrB,MAAM,CAAC,EAAM,OAAO,CAAC;CACrB;AAID,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAiLrE"}