nx-factory-cli 2.1.25 → 2.1.27

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/tsconfigs.js CHANGED
@@ -1,165 +1,296 @@
1
1
  /**
2
- * tsconfigs.ts — single source of truth for every tsconfig shape the CLI writes.
2
+ * tsconfigs.ts — single source of truth for every tsconfig file the CLI writes.
3
3
  *
4
- * Rules that govern the choices below:
4
+ * ── Architecture of the generated workspace ───────────────────────────────────
5
5
  *
6
- * ROOT tsconfig.base.json
7
- * "module": "NodeNext" / "moduleResolution": "NodeNext"
8
- * the CLI itself uses NodeNext, and apps compiled by Next.js / tsc directly
9
- * also use NodeNext. All relative imports in source must end with .js.
10
- * — baseUrl + paths live here so every package and app inherits them without
11
- * repeating the mapping.
6
+ * The CLI scaffolds a `packages/typescript` workspace package at init time.
7
+ * It is a private, never-built package whose only purpose is to own and
8
+ * distribute the shared tsconfig presets for the whole monorepo.
12
9
  *
13
- * PACKAGE tsconfig.json (internal or public)
14
- * Extends ../../tsconfig.base.json inherits paths, strict, target.
15
- * Overrides only what the package specifically needs (jsx, lib, outDir).
10
+ * my-monorepo/
11
+ * ├── tsconfig.base.json strict settings + global paths (no module/resolution)
12
+ * ├── tsconfig.json ← solution file: references all packages + apps
13
+ * └── packages/
14
+ * └── typescript/ ← workspace package: @scope/typescript
15
+ * ├── package.json ← private: true, exports all tsconfig files
16
+ * ├── tsconfig.base.json ← re-exports root base (one hop)
17
+ * ├── tsconfig.internal.json ← ESNext + Bundler, noEmit — for source-only packages
18
+ * ├── tsconfig.package.json ← NodeNext + NodeNext, composite — for published packages
19
+ * ├── tsconfig.nextjs.json ← ESNext + Bundler, jsx:preserve, Next.js plugin
20
+ * ├── tsconfig.vite.json ← ESNext + Bundler, jsx:react-jsx
21
+ * ├── tsconfig.remix.json ← ESNext + Bundler, jsx:react-jsx
22
+ * └── tsconfig.expo.json ← ESNext + Bundler, jsx:react-native
16
23
  *
17
- * Internal (private: true in package.json)
18
- * — no `declaration` / `declarationMap` needed in theory, but we keep them
19
- * so IDEs get go-to-definition inside the monorepo.
20
- * — composite: true + incremental for fast Nx caching.
24
+ * Packages and apps extend like this:
21
25
  *
22
- * Public (to be published to npm)
23
- * declaration + declarationMap required by consumers.
24
- * — composite: true for project references.
25
- * — stripInternal: true so @internal JSDoc strips from .d.ts.
26
- * — no `rootDir` override needed because extend covers it.
26
+ * packages/ui/tsconfig.json:
27
+ * { "extends": "@scope/typescript/tsconfig.internal.json" }
27
28
  *
28
- * APP tsconfig.json
29
- * Extends ../../tsconfig.base.json.
30
- * Each framework adds its own lib / jsx overrides.
31
- * No packages/**\/* in `include` paths handles resolution, and polluting
32
- * include causes duplicate type-checking and false errors.
29
+ * apps/dashboard/tsconfig.json:
30
+ * { "extends": "@scope/typescript/tsconfig.nextjs.json" }
31
+ *
32
+ * ── Two strategies for packages ───────────────────────────────────────────────
33
+ *
34
+ * INTERNAL (private: true, never published):
35
+ * - noEmit: true — no dist/, no build script, no build step ever
36
+ * - Consumed via path alias: @scope/pkg → packages/pkg/index.ts (source)
37
+ * - ESNext + Bundler: the bundler (Vite/Next.js/esbuild) handles resolution
38
+ * at app build time, so no .js extensions needed in source imports
39
+ *
40
+ * PUBLIC (published to npm):
41
+ * - Emits to dist/ via tsc
42
+ * - NodeNext + NodeNext: Node.js ESM requires .js extensions in source
43
+ * - composite + incremental for Nx project reference caching
44
+ *
45
+ * ── The root tsconfig.base.json ───────────────────────────────────────────────
46
+ * Only holds: target, strict flags, esModuleInterop, isolatedModules, and
47
+ * the global paths map. Does NOT set module or moduleResolution — those
48
+ * belong in the per-preset files inside packages/typescript/.
33
49
  */
34
- // ─── Root workspace tsconfig.base.json ────────────────────────────────────────
50
+ // ─── 1. Root tsconfig.base.json ───────────────────────────────────────────────
35
51
  export function rootTsConfigBase(scope) {
36
52
  return {
37
53
  $schema: "https://json.schemastore.org/tsconfig",
38
- display: "Base",
54
+ display: "Base — inherited by all presets in packages/typescript",
39
55
  compilerOptions: {
40
- // --- Language & output ---
41
56
  target: "ES2022",
42
- module: "NodeNext",
43
- moduleResolution: "NodeNext",
44
- lib: ["ES2022"],
45
- // --- Strictness ---
57
+ // Strict settings — inherited by all presets
46
58
  strict: true,
47
59
  noUncheckedIndexedAccess: true,
48
60
  noImplicitOverride: true,
49
61
  exactOptionalPropertyTypes: true,
50
- // --- Emit ---
51
- declaration: true,
52
- declarationMap: true,
53
- sourceMap: true,
62
+ // Interop
54
63
  esModuleInterop: true,
55
64
  skipLibCheck: true,
56
65
  isolatedModules: true,
57
- // --- Paths — inherited by every package and app ---
66
+ // Global path aliases.
67
+ // Every package and app imports @scope/anything and TypeScript resolves
68
+ // it directly to the source — no build step required for internal packages.
58
69
  baseUrl: ".",
59
70
  paths: {
60
- [`@${scope}/*`]: ["./packages/*/index.ts"],
71
+ [`@${scope}/*`]: ["./packages/*"],
61
72
  },
62
73
  },
63
74
  };
64
75
  }
65
- export function packageTsConfig(opts) {
66
- const rootRel = opts.rootRelative ?? "../..";
67
- const base = {
68
- $schema: "https://json.schemastore.org/tsconfig",
69
- extends: `${rootRel}/tsconfig.base.json`,
70
- compilerOptions: {
71
- // Packages always emit to dist/
72
- outDir: "dist",
73
- rootDir: ".",
74
- // Composite enables project references and Nx incremental builds
75
- composite: true,
76
- incremental: true,
77
- tsBuildInfoFile: "dist/.tsbuildinfo",
76
+ // ─── 2. packages/typescript/ workspace package ────────────────────────────────
77
+ /**
78
+ * Returns the package.json for the @scope/typescript workspace package.
79
+ * Private, never published. Its exports point at the tsconfig preset files
80
+ * so other packages can extend them by package name.
81
+ */
82
+ export function typescriptPackageJson(scope) {
83
+ return {
84
+ name: `@${scope}/typescript`,
85
+ version: "0.0.0",
86
+ private: true,
87
+ // Expose each tsconfig preset as a named export so packages can do:
88
+ // "extends": "@scope/typescript/tsconfig.internal.json"
89
+ exports: {
90
+ "./tsconfig.base.json": "./tsconfig.base.json",
91
+ "./tsconfig.internal.json": "./tsconfig.internal.json",
92
+ "./tsconfig.package.json": "./tsconfig.package.json",
93
+ "./tsconfig.nextjs.json": "./tsconfig.nextjs.json",
94
+ "./tsconfig.vite.json": "./tsconfig.vite.json",
95
+ "./tsconfig.remix.json": "./tsconfig.remix.json",
96
+ "./tsconfig.expo.json": "./tsconfig.expo.json",
97
+ },
98
+ };
99
+ }
100
+ /**
101
+ * Returns a map of filename → content for every file inside packages/typescript/.
102
+ * Written by `init` and regenerated by `migrate`.
103
+ */
104
+ export function typescriptPresets() {
105
+ return {
106
+ // ── tsconfig.base.json ───────────────────────────────────────────────
107
+ // One-hop re-export of the root base. Presets only need to extend this
108
+ // rather than navigating up to the root themselves.
109
+ "tsconfig.base.json": {
110
+ $schema: "https://json.schemastore.org/tsconfig",
111
+ display: "Re-exports workspace root tsconfig.base.json",
112
+ extends: "../../tsconfig.base.json",
113
+ },
114
+ // ── tsconfig.internal.json ───────────────────────────────────────────
115
+ // For packages that are NEVER built. Source only, consumed directly via
116
+ // path aliases. Bundler resolution so no .js extensions needed.
117
+ "tsconfig.internal.json": {
118
+ $schema: "https://json.schemastore.org/tsconfig",
119
+ display: "Internal package — source-only, no emit, no build step",
120
+ extends: "./tsconfig.base.json",
121
+ compilerOptions: {
122
+ module: "ESNext",
123
+ moduleResolution: "Bundler",
124
+ // No outDir, no rootDir — there is no output
125
+ noEmit: true,
126
+ // Keep declaration + declarationMap for IDE go-to-definition across the monorepo
127
+ declaration: true,
128
+ declarationMap: true,
129
+ sourceMap: true,
130
+ },
131
+ },
132
+ // ── tsconfig.package.json ────────────────────────────────────────────
133
+ // For packages that ARE built and published (consumed from dist/).
134
+ // NodeNext required for Node.js ESM. Packages override outDir/rootDir.
135
+ "tsconfig.package.json": {
136
+ $schema: "https://json.schemastore.org/tsconfig",
137
+ display: "Public package — built to dist/, NodeNext ESM",
138
+ extends: "./tsconfig.base.json",
139
+ compilerOptions: {
140
+ module: "NodeNext",
141
+ moduleResolution: "NodeNext",
142
+ declaration: true,
143
+ declarationMap: true,
144
+ sourceMap: true,
145
+ composite: true,
146
+ incremental: true,
147
+ stripInternal: true,
148
+ },
149
+ },
150
+ // ── tsconfig.nextjs.json ─────────────────────────────────────────────
151
+ "tsconfig.nextjs.json": {
152
+ $schema: "https://json.schemastore.org/tsconfig",
153
+ display: "Next.js app",
154
+ extends: "./tsconfig.base.json",
155
+ compilerOptions: {
156
+ module: "ESNext",
157
+ moduleResolution: "Bundler",
158
+ lib: ["ES2022", "DOM", "DOM.Iterable"],
159
+ jsx: "preserve",
160
+ allowJs: true,
161
+ noEmit: true,
162
+ incremental: true,
163
+ plugins: [{ name: "next" }],
164
+ },
165
+ },
166
+ // ── tsconfig.vite.json ───────────────────────────────────────────────
167
+ "tsconfig.vite.json": {
168
+ $schema: "https://json.schemastore.org/tsconfig",
169
+ display: "Vite + React app",
170
+ extends: "./tsconfig.base.json",
171
+ compilerOptions: {
172
+ module: "ESNext",
173
+ moduleResolution: "Bundler",
174
+ lib: ["ES2022", "DOM", "DOM.Iterable"],
175
+ jsx: "react-jsx",
176
+ noEmit: true,
177
+ useDefineForClassFields: true,
178
+ },
179
+ },
180
+ // ── tsconfig.remix.json ──────────────────────────────────────────────
181
+ "tsconfig.remix.json": {
182
+ $schema: "https://json.schemastore.org/tsconfig",
183
+ display: "Remix app (Vite-based)",
184
+ extends: "./tsconfig.base.json",
185
+ compilerOptions: {
186
+ module: "ESNext",
187
+ moduleResolution: "Bundler",
188
+ lib: ["ES2022", "DOM", "DOM.Iterable"],
189
+ jsx: "react-jsx",
190
+ noEmit: true,
191
+ },
192
+ },
193
+ // ── tsconfig.expo.json ───────────────────────────────────────────────
194
+ "tsconfig.expo.json": {
195
+ $schema: "https://json.schemastore.org/tsconfig",
196
+ display: "Expo / React Native app",
197
+ extends: "./tsconfig.base.json",
198
+ compilerOptions: {
199
+ module: "ESNext",
200
+ moduleResolution: "Bundler",
201
+ lib: ["ES2022"],
202
+ jsx: "react-native",
203
+ noEmit: true,
204
+ allowSyntheticDefaultImports: true,
205
+ },
78
206
  },
79
- include: ["**/*.ts", "**/*.tsx"],
80
- exclude: ["node_modules", "dist", "**/*.test.ts", "**/*.spec.ts"],
81
207
  };
82
- const co = base.compilerOptions;
83
- // React packages need jsx and DOM types
208
+ }
209
+ export function packageTsConfig(opts) {
210
+ const isInternal = opts.visibility === "internal";
211
+ const preset = isInternal
212
+ ? `@${opts.scope}/typescript/tsconfig.internal.json`
213
+ : `@${opts.scope}/typescript/tsconfig.package.json`;
214
+ const co = {};
84
215
  if (opts.react) {
85
- co["jsx"] = "react-jsx";
86
- co["lib"] = ["ES2022", "DOM", "DOM.Iterable"];
216
+ co.jsx = "react-jsx";
217
+ co.lib = ["ES2022", "DOM", "DOM.Iterable"];
87
218
  }
88
- // Public packages get extras for clean npm publishing
89
- if (opts.visibility === "public") {
90
- co["stripInternal"] = true; // strips @internal from .d.ts
91
- co["declarationDir"] = "dist"; // explicit — avoids surprises
219
+ if (isInternal) {
220
+ // Self-referencing alias: within-package imports can use @scope/name
221
+ co.paths = { [`@${opts.scope}/${opts.pkgName}`]: ["./index.ts"] };
222
+ co.baseUrl = ".";
92
223
  }
93
- // Internal packages get a self-referencing path so imports within the
94
- // package can use the scoped name instead of relative paths
95
- if (opts.visibility === "internal") {
96
- const existingPaths = co["paths"] ?? {};
97
- co["paths"] = {
98
- ...existingPaths,
99
- [`@${opts.scope}/${opts.pkgName}`]: ["./index.ts"],
100
- };
101
- co["baseUrl"] = ".";
224
+ else {
225
+ // Public packages need explicit output paths
226
+ co.outDir = "dist";
227
+ co.rootDir = ".";
228
+ co.tsBuildInfoFile = "dist/.tsbuildinfo";
229
+ co.declarationDir = "dist";
102
230
  }
103
- return base;
231
+ const hasCo = Object.keys(co).length > 0;
232
+ return {
233
+ $schema: "https://json.schemastore.org/tsconfig",
234
+ extends: preset,
235
+ ...(hasCo ? { compilerOptions: co } : {}),
236
+ include: ["**/*.ts", "**/*.tsx"],
237
+ exclude: [
238
+ "node_modules",
239
+ ...(isInternal ? [] : ["dist"]),
240
+ "**/*.test.ts",
241
+ "**/*.spec.ts",
242
+ ],
243
+ };
104
244
  }
105
245
  export function appTsConfig(opts) {
106
246
  const aliasBase = opts.hasSrcDir ? "./src/*" : "./*";
107
- // Framework-specific compiler option overrides
108
- const frameworkOverrides = frameworkCompilerOptions(opts.framework);
247
+ const hasPkg = opts.typescriptPkgExists !== false; // default true
248
+ const extendsPath = hasPkg
249
+ ? `@${opts.scope}/typescript/${frameworkPresetFile(opts.framework)}`
250
+ : "../../tsconfig.base.json";
251
+ const include = opts.hasSrcDir
252
+ ? ["src/**/*.ts", "src/**/*.tsx"]
253
+ : ["**/*.ts", "**/*.tsx"];
254
+ if (opts.framework === "nextjs") {
255
+ include.push("next-env.d.ts", ".next/types/**/*.ts");
256
+ }
109
257
  return {
110
258
  $schema: "https://json.schemastore.org/tsconfig",
111
- extends: "../../tsconfig.base.json",
259
+ extends: extendsPath,
112
260
  compilerOptions: {
113
- ...frameworkOverrides,
114
- // App-level alias: @/* → src/* or root
115
- paths: {
116
- "@/*": [aliasBase],
117
- // Workspace packages resolved via inherited baseUrl paths from base
118
- },
119
- // Apps don't emit — the framework build tool handles that
120
- noEmit: true,
261
+ paths: { "@/*": [aliasBase] },
121
262
  },
122
- // Only include the app's own source files
123
- include: [
124
- opts.hasSrcDir ? "src/**/*.ts" : "**/*.ts",
125
- opts.hasSrcDir ? "src/**/*.tsx" : "**/*.tsx",
126
- ...(opts.framework === "nextjs"
127
- ? ["next-env.d.ts", ".next/types/**/*.ts"]
128
- : []),
129
- ],
130
- exclude: ["node_modules", "dist"],
263
+ include,
264
+ exclude: ["node_modules"],
131
265
  };
132
266
  }
133
- function frameworkCompilerOptions(framework) {
267
+ function frameworkPresetFile(framework) {
134
268
  switch (framework) {
135
269
  case "nextjs":
136
- return {
137
- lib: ["ES2022", "DOM", "DOM.Iterable"],
138
- jsx: "preserve", // Next.js handles JSX transform
139
- plugins: [{ name: "next" }], // enables Next.js TS plugin
140
- allowJs: true,
141
- incremental: true,
142
- tsBuildInfoFile: ".next/cache/tsconfig.tsbuildinfo",
143
- };
270
+ return "tsconfig.nextjs.json";
144
271
  case "vite":
145
- return {
146
- lib: ["ES2022", "DOM", "DOM.Iterable"],
147
- jsx: "react-jsx",
148
- useDefineForClassFields: true,
149
- };
272
+ return "tsconfig.vite.json";
150
273
  case "remix":
151
- return {
152
- lib: ["ES2022", "DOM", "DOM.Iterable"],
153
- jsx: "react-jsx",
154
- moduleResolution: "Bundler", // Remix/Vite uses bundler resolution
155
- module: "ESNext",
156
- };
274
+ return "tsconfig.remix.json";
157
275
  case "expo":
158
- return {
159
- lib: ["ES2022"],
160
- jsx: "react-native",
161
- allowSyntheticDefaultImports: true,
162
- };
276
+ return "tsconfig.expo.json";
163
277
  }
164
278
  }
279
+ // ─── 5. Root solution tsconfig.json ───────────────────────────────────────────
280
+ export function rootTsConfigSolution(packages, apps) {
281
+ return {
282
+ $schema: "https://json.schemastore.org/tsconfig",
283
+ display: "Workspace solution — IDE and tsc --build entry point",
284
+ files: [],
285
+ references: [
286
+ ...packages.map((p) => ({ path: `./packages/${p}` })),
287
+ ...apps.map((a) => ({ path: `./apps/${a}` })),
288
+ ],
289
+ };
290
+ }
291
+ // ─── Backward-compat re-exports ───────────────────────────────────────────────
292
+ // toolingPresets was the old API name — kept so migrate.ts compiles without
293
+ // changes until the rename propagates through all call sites.
294
+ /** @deprecated Use typescriptPresets() instead */
295
+ export const toolingPresets = typescriptPresets;
165
296
  //# sourceMappingURL=tsconfigs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tsconfigs.js","sourceRoot":"","sources":["../src/tsconfigs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tsconfigs.js","sourceRoot":"","sources":["../src/tsconfigs.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nx-factory-cli",
3
- "version": "2.1.25",
3
+ "version": "2.1.27",
4
4
  "description": "CLI to initialize and manage an Nx monorepo with shared shadcn/ui components + Tailwind v4",
5
5
  "type": "module",
6
6
  "bin": {