hatchkit 0.1.40 → 0.1.42

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 (127) hide show
  1. package/dist/adopt.d.ts.map +1 -1
  2. package/dist/adopt.js +663 -82
  3. package/dist/adopt.js.map +1 -1
  4. package/dist/config.d.ts +32 -10
  5. package/dist/config.d.ts.map +1 -1
  6. package/dist/config.js +91 -38
  7. package/dist/config.js.map +1 -1
  8. package/dist/deploy/coolify-app.d.ts.map +1 -1
  9. package/dist/deploy/coolify-app.js +0 -7
  10. package/dist/deploy/coolify-app.js.map +1 -1
  11. package/dist/deploy/coolify.d.ts.map +1 -1
  12. package/dist/deploy/coolify.js +20 -1
  13. package/dist/deploy/coolify.js.map +1 -1
  14. package/dist/deploy/ghcr.d.ts +4 -2
  15. package/dist/deploy/ghcr.d.ts.map +1 -1
  16. package/dist/deploy/ghcr.js +1 -1
  17. package/dist/deploy/ghcr.js.map +1 -1
  18. package/dist/deploy/github.d.ts +4 -3
  19. package/dist/deploy/github.d.ts.map +1 -1
  20. package/dist/deploy/github.js +5 -2
  21. package/dist/deploy/github.js.map +1 -1
  22. package/dist/deploy/pages.d.ts +41 -0
  23. package/dist/deploy/pages.d.ts.map +1 -1
  24. package/dist/deploy/pages.js +363 -22
  25. package/dist/deploy/pages.js.map +1 -1
  26. package/dist/deploy/regen-infra.d.ts.map +1 -1
  27. package/dist/deploy/regen-infra.js +5 -11
  28. package/dist/deploy/regen-infra.js.map +1 -1
  29. package/dist/deploy/rollback.d.ts.map +1 -1
  30. package/dist/deploy/rollback.js +44 -6
  31. package/dist/deploy/rollback.js.map +1 -1
  32. package/dist/deploy/terraform.d.ts.map +1 -1
  33. package/dist/deploy/terraform.js +20 -37
  34. package/dist/deploy/terraform.js.map +1 -1
  35. package/dist/dns.d.ts.map +1 -1
  36. package/dist/dns.js +4 -5
  37. package/dist/dns.js.map +1 -1
  38. package/dist/doctor.d.ts +15 -0
  39. package/dist/doctor.d.ts.map +1 -1
  40. package/dist/doctor.js +110 -36
  41. package/dist/doctor.js.map +1 -1
  42. package/dist/email/index.d.ts +31 -0
  43. package/dist/email/index.d.ts.map +1 -0
  44. package/dist/email/index.js +251 -0
  45. package/dist/email/index.js.map +1 -0
  46. package/dist/email/presets.d.ts +14 -0
  47. package/dist/email/presets.d.ts.map +1 -0
  48. package/dist/email/presets.js +33 -0
  49. package/dist/email/presets.js.map +1 -0
  50. package/dist/email/setup.d.ts +93 -0
  51. package/dist/email/setup.d.ts.map +1 -0
  52. package/dist/email/setup.js +263 -0
  53. package/dist/email/setup.js.map +1 -0
  54. package/dist/email/spf.d.ts +56 -0
  55. package/dist/email/spf.d.ts.map +1 -0
  56. package/dist/email/spf.js +102 -0
  57. package/dist/email/spf.js.map +1 -0
  58. package/dist/index.js +306 -22
  59. package/dist/index.js.map +1 -1
  60. package/dist/inventory.d.ts +37 -0
  61. package/dist/inventory.d.ts.map +1 -1
  62. package/dist/inventory.js +536 -55
  63. package/dist/inventory.js.map +1 -1
  64. package/dist/overview.d.ts +101 -0
  65. package/dist/overview.d.ts.map +1 -0
  66. package/dist/overview.js +880 -0
  67. package/dist/overview.js.map +1 -0
  68. package/dist/prompts.d.ts +27 -0
  69. package/dist/prompts.d.ts.map +1 -1
  70. package/dist/prompts.js +262 -34
  71. package/dist/prompts.js.map +1 -1
  72. package/dist/provision/index.d.ts +20 -1
  73. package/dist/provision/index.d.ts.map +1 -1
  74. package/dist/provision/index.js +115 -0
  75. package/dist/provision/index.js.map +1 -1
  76. package/dist/provision/s3-buckets.js +1 -1
  77. package/dist/provision/s3-buckets.js.map +1 -1
  78. package/dist/scaffold/app.d.ts.map +1 -1
  79. package/dist/scaffold/app.js +15 -7
  80. package/dist/scaffold/app.js.map +1 -1
  81. package/dist/scaffold/build-pipeline.d.ts +16 -0
  82. package/dist/scaffold/build-pipeline.d.ts.map +1 -1
  83. package/dist/scaffold/build-pipeline.js +47 -4
  84. package/dist/scaffold/build-pipeline.js.map +1 -1
  85. package/dist/scaffold/infra.d.ts +4 -5
  86. package/dist/scaffold/infra.d.ts.map +1 -1
  87. package/dist/scaffold/infra.js +18 -57
  88. package/dist/scaffold/infra.js.map +1 -1
  89. package/dist/scaffold/manifest.d.ts +6 -0
  90. package/dist/scaffold/manifest.d.ts.map +1 -1
  91. package/dist/scaffold/manifest.js +2 -0
  92. package/dist/scaffold/manifest.js.map +1 -1
  93. package/dist/scaffold/pages-heuristics.d.ts +17 -0
  94. package/dist/scaffold/pages-heuristics.d.ts.map +1 -0
  95. package/dist/scaffold/pages-heuristics.js +344 -0
  96. package/dist/scaffold/pages-heuristics.js.map +1 -0
  97. package/dist/scaffold/pages-mode.d.ts +10 -0
  98. package/dist/scaffold/pages-mode.d.ts.map +1 -0
  99. package/dist/scaffold/pages-mode.js +107 -0
  100. package/dist/scaffold/pages-mode.js.map +1 -0
  101. package/dist/scaffold/pkg-json.d.ts +4 -0
  102. package/dist/scaffold/pkg-json.d.ts.map +1 -1
  103. package/dist/scaffold/pkg-json.js +17 -0
  104. package/dist/scaffold/pkg-json.js.map +1 -1
  105. package/dist/scaffold/surfaces.d.ts.map +1 -1
  106. package/dist/scaffold/surfaces.js +12 -1
  107. package/dist/scaffold/surfaces.js.map +1 -1
  108. package/dist/scaffold/update.js +1 -1
  109. package/dist/scaffold/update.js.map +1 -1
  110. package/dist/templates/build-pipeline/Dockerfile.nextjs.hbs +103 -0
  111. package/dist/templates/build-pipeline/docker-compose.yml.hbs +23 -6
  112. package/dist/utils/cloudflare-api.d.ts +158 -13
  113. package/dist/utils/cloudflare-api.d.ts.map +1 -1
  114. package/dist/utils/cloudflare-api.js +219 -11
  115. package/dist/utils/cloudflare-api.js.map +1 -1
  116. package/dist/utils/coolify-api.d.ts +9 -0
  117. package/dist/utils/coolify-api.d.ts.map +1 -1
  118. package/dist/utils/coolify-api.js +26 -0
  119. package/dist/utils/coolify-api.js.map +1 -1
  120. package/dist/utils/run-ledger.d.ts +42 -1
  121. package/dist/utils/run-ledger.d.ts.map +1 -1
  122. package/dist/utils/run-ledger.js.map +1 -1
  123. package/dist/utils/s3-admin.d.ts +9 -0
  124. package/dist/utils/s3-admin.d.ts.map +1 -0
  125. package/dist/utils/s3-admin.js +46 -0
  126. package/dist/utils/s3-admin.js.map +1 -0
  127. package/package.json +1 -1
@@ -0,0 +1,344 @@
1
+ // Static-site sanity checks for projects targeting GitHub Pages.
2
+ //
3
+ // Run BEFORE pushing a project at `hatchkit gh-pages` so users with
4
+ // a Next.js server, a docker-compose backend, or a `packages/server`
5
+ // don't end up with a successful CI run and a 404 in production.
6
+ //
7
+ // Surfaces three severity levels:
8
+ // · block — almost certainly won't work; refuse to proceed unless
9
+ // the user explicitly overrides.
10
+ // · warn — likely won't function as designed; show + confirm.
11
+ // · info — nothing's broken but the user should know (e.g.
12
+ // `next/image` needs `unoptimized: true` on static export).
13
+ import { existsSync, readFileSync, readdirSync, statSync } from "node:fs";
14
+ import { basename, join } from "node:path";
15
+ const EXCLUDED_DIRS = new Set([
16
+ "node_modules",
17
+ ".git",
18
+ "dist",
19
+ "build",
20
+ ".next",
21
+ "out",
22
+ ".turbo",
23
+ ".cache",
24
+ "coverage",
25
+ ".vercel",
26
+ ]);
27
+ // How deep we walk. Most repos that fit a Pages deploy are shallow
28
+ // (<= 4 levels); deeper than that is almost always vendored code we
29
+ // don't want to surface heuristics about.
30
+ const MAX_DEPTH = 5;
31
+ /** Walk a project directory and collect the inputs the per-rule
32
+ * checks need. One disk pass per repo — every rule reads from the
33
+ * same {@link ScanFiles} struct. */
34
+ function scan(projectDir) {
35
+ const packageJsons = [];
36
+ const matches = new Map();
37
+ const probeDirNames = new Set(["packages", "apps", "services", "api"]);
38
+ // File names + suffixes we want to record sightings of.
39
+ const fileProbes = [
40
+ { key: "nextConfig", match: (n) => /^next\.config\.(?:ts|js|mjs|cjs)$/.test(n) },
41
+ { key: "middleware", match: (n) => /^middleware\.(?:ts|js)$/.test(n) },
42
+ { key: "dockerfile", match: (n) => n === "Dockerfile" },
43
+ { key: "dockerCompose", match: (n) => /^docker-compose(\..+)?\.ya?ml$/.test(n) },
44
+ ];
45
+ const visit = (dir, depth) => {
46
+ if (depth > MAX_DEPTH)
47
+ return;
48
+ let names;
49
+ try {
50
+ names = readdirSync(dir);
51
+ }
52
+ catch {
53
+ return;
54
+ }
55
+ for (const name of names) {
56
+ if (EXCLUDED_DIRS.has(name))
57
+ continue;
58
+ const fullPath = join(dir, name);
59
+ let s;
60
+ try {
61
+ s = statSync(fullPath);
62
+ }
63
+ catch {
64
+ continue;
65
+ }
66
+ if (s.isDirectory()) {
67
+ if (probeDirNames.has(name)) {
68
+ const arr = matches.get(`dir:${name}`) ?? [];
69
+ arr.push(relative(fullPath, projectDir));
70
+ matches.set(`dir:${name}`, arr);
71
+ }
72
+ if (name === "api") {
73
+ const parent = basename(dir);
74
+ if (parent === "app" || parent === "pages") {
75
+ const arr = matches.get(`nextApiRoutes`) ?? [];
76
+ arr.push(relative(fullPath, projectDir));
77
+ matches.set("nextApiRoutes", arr);
78
+ }
79
+ }
80
+ visit(fullPath, depth + 1);
81
+ continue;
82
+ }
83
+ if (!s.isFile())
84
+ continue;
85
+ if (name === "package.json") {
86
+ try {
87
+ const content = JSON.parse(readFileSync(fullPath, "utf8"));
88
+ packageJsons.push({ path: fullPath, content });
89
+ }
90
+ catch {
91
+ // unreadable / invalid — skip
92
+ }
93
+ continue;
94
+ }
95
+ for (const probe of fileProbes) {
96
+ if (probe.match(name)) {
97
+ const arr = matches.get(probe.key) ?? [];
98
+ arr.push(relative(fullPath, projectDir));
99
+ matches.set(probe.key, arr);
100
+ }
101
+ }
102
+ }
103
+ };
104
+ if (existsSync(projectDir) && statSync(projectDir).isDirectory()) {
105
+ visit(projectDir, 0);
106
+ }
107
+ return { packageJsons, matches };
108
+ }
109
+ function relative(p, root) {
110
+ if (p.startsWith(root))
111
+ return p.slice(root.length + 1);
112
+ return p;
113
+ }
114
+ // ---------------------------------------------------------------------------
115
+ // Individual checks
116
+ // ---------------------------------------------------------------------------
117
+ /** Detect a Next.js project. Returns the paths of every `next.config.*`
118
+ * found AND a flag for whether each one declares `output: "export"`.
119
+ * Anything else (`output: "standalone"`, missing key, etc.) blocks
120
+ * Pages — Next without static export produces a Node server bundle,
121
+ * not the flat `out/` Pages can serve. */
122
+ function checkNextStaticExport(files, projectDir) {
123
+ const configs = files.matches.get("nextConfig") ?? [];
124
+ if (configs.length === 0)
125
+ return null;
126
+ const bad = [];
127
+ for (const rel of configs) {
128
+ let content;
129
+ try {
130
+ content = readFileSync(join(projectDir, rel), "utf8");
131
+ }
132
+ catch {
133
+ continue;
134
+ }
135
+ // `output: "export"` — accept both single and double quotes,
136
+ // and the `output:'export'` (no space) form. We don't try to
137
+ // statically evaluate the file — a simple regex is right 99% of
138
+ // the time and false-positives are user-fixable.
139
+ const hasExport = /output\s*:\s*['"]export['"]/.test(content);
140
+ if (!hasExport)
141
+ bad.push(rel);
142
+ }
143
+ if (bad.length === 0)
144
+ return null;
145
+ return {
146
+ level: "block",
147
+ title: 'Next.js without `output: "export"`',
148
+ detail: 'GitHub Pages serves static files only. Without `output: "export"` in your next.config, Next builds a Node server bundle that Pages can\'t host. Either set `output: "export"` (and remove any server-only features) or deploy somewhere with a runtime (Vercel / Coolify).',
149
+ evidence: bad,
150
+ };
151
+ }
152
+ /** Next's `middleware.ts` runs server-side per request — incompatible
153
+ * with static export. Different from regular page rendering. */
154
+ function checkNextMiddleware(files) {
155
+ const middleware = files.matches.get("middleware") ?? [];
156
+ // Only treat as a problem when there's also a Next config — `middleware.ts`
157
+ // in a non-Next project is just a file.
158
+ if (middleware.length === 0)
159
+ return null;
160
+ const hasNext = (files.matches.get("nextConfig") ?? []).length > 0;
161
+ if (!hasNext)
162
+ return null;
163
+ return {
164
+ level: "block",
165
+ title: "Next.js middleware present",
166
+ detail: "Next's `middleware.ts` runs per request and isn't available on static export. Pages can't execute it. Remove the middleware or deploy to a runtime that supports it.",
167
+ evidence: middleware,
168
+ };
169
+ }
170
+ /** API routes (`app/api/*` or `pages/api/*`) are server-only on Next.
171
+ * Static export drops them silently — the user gets a successful
172
+ * build and broken endpoints in prod. */
173
+ function checkNextApiRoutes(files) {
174
+ const routes = files.matches.get("nextApiRoutes") ?? [];
175
+ if (routes.length === 0)
176
+ return null;
177
+ return {
178
+ level: "warn",
179
+ title: "Next.js API routes present",
180
+ detail: "`app/api/*` and `pages/api/*` are server-only — static export silently drops them. Anything that fetches `/api/...` from the client will 404 on Pages. Move the API to a separate backend (Coolify / a different host) or remove these routes.",
181
+ evidence: routes,
182
+ };
183
+ }
184
+ /** A second package or workspace dir that looks like a backend
185
+ * (packages/server, apps/server, apps/api, services/*). Static
186
+ * Pages can't run these. */
187
+ function checkServerPackages(files) {
188
+ const evidence = [];
189
+ const packagesDirs = files.matches.get("dir:packages") ?? [];
190
+ const appsDirs = files.matches.get("dir:apps") ?? [];
191
+ const servicesDirs = files.matches.get("dir:services") ?? [];
192
+ // Common backend folder names under packages/ or apps/. We can't
193
+ // walk into them again here (visit already did), so trust naming.
194
+ // Find package.jsons whose directory name screams "backend".
195
+ for (const pkg of files.packageJsons) {
196
+ const dirName = basename(pkg.path.replace(/\/package\.json$/, ""));
197
+ if (/^(server|api|backend|worker)$/i.test(dirName)) {
198
+ evidence.push(pkg.path.replace(/^.*\/packages\//, "packages/").replace(/^.*\/apps\//, "apps/"));
199
+ }
200
+ }
201
+ // services/<thing>/Dockerfile typically signals a deployable service.
202
+ const dockerfiles = files.matches.get("dockerfile") ?? [];
203
+ for (const df of dockerfiles) {
204
+ if (df.startsWith("services/") ||
205
+ df.startsWith("apps/server/") ||
206
+ df.startsWith("packages/server/")) {
207
+ evidence.push(df);
208
+ }
209
+ }
210
+ // Dedup against signal noise from packagesDirs / appsDirs / servicesDirs.
211
+ if (evidence.length === 0 &&
212
+ servicesDirs.length === 0 &&
213
+ packagesDirs.length === 0 &&
214
+ appsDirs.length === 0) {
215
+ return null;
216
+ }
217
+ if (evidence.length === 0)
218
+ return null;
219
+ const unique = Array.from(new Set(evidence));
220
+ return {
221
+ level: "warn",
222
+ title: "Backend / server packages detected",
223
+ detail: "These directories look like they ship a server (Dockerfile, server/api/worker package). GitHub Pages can't host them. If your client calls these from the browser, the calls will fail in production unless the backend lives somewhere else. Consider Coolify for the full-stack deploy.",
224
+ evidence: unique,
225
+ };
226
+ }
227
+ /** Server-only deps in any package.json (mongodb, postgres, redis,
228
+ * prisma, etc.). Catches projects where someone imported a DB driver
229
+ * intending to use it server-side. */
230
+ function checkServerDeps(files) {
231
+ const serverDeps = new Map([
232
+ ["mongoose", "MongoDB driver"],
233
+ ["mongodb", "MongoDB driver"],
234
+ ["pg", "Postgres driver"],
235
+ ["postgres", "Postgres driver"],
236
+ ["mysql2", "MySQL driver"],
237
+ ["redis", "Redis client"],
238
+ ["ioredis", "Redis client"],
239
+ ["@prisma/client", "Prisma ORM"],
240
+ ["prisma", "Prisma ORM"],
241
+ ["drizzle-orm", "Drizzle ORM"],
242
+ ["better-auth", "server-side auth"],
243
+ ["next-auth", "server-side auth"],
244
+ ["socket.io", "WebSocket server"],
245
+ ["ws", "WebSocket server"],
246
+ ["express", "HTTP server framework"],
247
+ ["hono", "HTTP server framework"],
248
+ ["fastify", "HTTP server framework"],
249
+ ["koa", "HTTP server framework"],
250
+ ["@trpc/server", "tRPC server"],
251
+ ]);
252
+ const findings = [];
253
+ for (const pkg of files.packageJsons) {
254
+ const allDeps = { ...(pkg.content.dependencies ?? {}), ...(pkg.content.devDependencies ?? {}) };
255
+ for (const dep of Object.keys(allDeps)) {
256
+ const reason = serverDeps.get(dep);
257
+ if (reason) {
258
+ const rel = pkg.path.replace(/.*\//, "");
259
+ const dirHint = pkg.path
260
+ .replace(/\/package\.json$/, "")
261
+ .split("/")
262
+ .slice(-2)
263
+ .join("/");
264
+ findings.push(`${dep} (${reason}) — ${dirHint}/${rel}`);
265
+ }
266
+ }
267
+ }
268
+ if (findings.length === 0)
269
+ return null;
270
+ return {
271
+ level: "warn",
272
+ title: "Server-side dependencies in package.json",
273
+ detail: "These packages only do useful work on a server. On Pages they'll either be dead weight in the client bundle or import-fail at build. Make sure they're tree-shaken out of any client entrypoint, or migrate to a deploy target that runs Node.",
274
+ evidence: findings,
275
+ };
276
+ }
277
+ /** docker-compose typically describes a multi-service runtime —
278
+ * Pages can't host that. Soft warn rather than block: some projects
279
+ * keep compose around for local dev only. */
280
+ function checkDockerCompose(files) {
281
+ const composes = files.matches.get("dockerCompose") ?? [];
282
+ if (composes.length === 0)
283
+ return null;
284
+ return {
285
+ level: "info",
286
+ title: "docker-compose.yml present",
287
+ detail: "Compose describes services hatchkit can't deploy to Pages. If it's local-dev-only, you can leave it; otherwise, anything it spins up won't exist in production.",
288
+ evidence: composes,
289
+ };
290
+ }
291
+ /** Static export drops `next/image` optimization — needs `unoptimized:
292
+ * true` or use a third-party loader. Info-level: the build won't fail,
293
+ * but images will be unoptimized at runtime. */
294
+ function checkNextImageUnoptimized(files, projectDir) {
295
+ const configs = files.matches.get("nextConfig") ?? [];
296
+ if (configs.length === 0)
297
+ return null;
298
+ const missing = [];
299
+ for (const rel of configs) {
300
+ try {
301
+ const content = readFileSync(join(projectDir, rel), "utf8");
302
+ if (!/images\s*:\s*\{[^}]*unoptimized\s*:\s*true/s.test(content)) {
303
+ missing.push(rel);
304
+ }
305
+ }
306
+ catch {
307
+ // skip
308
+ }
309
+ }
310
+ if (missing.length === 0)
311
+ return null;
312
+ return {
313
+ level: "info",
314
+ title: "`images.unoptimized: true` not set",
315
+ detail: "Static export can't run the Next image optimizer. Set `images: { unoptimized: true }` in next.config or images will fail to load (especially with `<Image>`). hatchkit's scaffold path can apply this automatically.",
316
+ evidence: missing,
317
+ };
318
+ }
319
+ // ---------------------------------------------------------------------------
320
+ // Public entrypoint
321
+ // ---------------------------------------------------------------------------
322
+ /** Run every check against `projectDir` and return the union of
323
+ * findings, ordered block > warn > info. Returns an empty array
324
+ * when nothing's wrong. */
325
+ export function detectPagesIncompatibilities(projectDir) {
326
+ const files = scan(projectDir);
327
+ const checks = [
328
+ checkNextStaticExport(files, projectDir),
329
+ checkNextMiddleware(files),
330
+ checkNextApiRoutes(files),
331
+ checkServerPackages(files),
332
+ checkServerDeps(files),
333
+ checkDockerCompose(files),
334
+ checkNextImageUnoptimized(files, projectDir),
335
+ ];
336
+ const order = { block: 0, warn: 1, info: 2 };
337
+ return checks
338
+ .filter((w) => w !== null)
339
+ .sort((a, b) => order[a.level] - order[b.level]);
340
+ }
341
+ export function hasBlockingFinding(warnings) {
342
+ return warnings.some((w) => w.level === "block");
343
+ }
344
+ //# sourceMappingURL=pages-heuristics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages-heuristics.js","sourceRoot":"","sources":["../../src/scaffold/pages-heuristics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /** Apply all gh-pages-specific changes to a scaffolded project that
2
+ * has already gone through `pruneToClientOnly`. Idempotent: safe to
3
+ * call against a project that's already had these tweaks applied
4
+ * (each step checks for the desired end state first). */
5
+ export declare function applyPagesMode(outputDir: string, modifications: string[]): void;
6
+ /** Read the patched next.config back as a string. Useful for tests
7
+ * and for the adopt flow's heuristics-driven warning ("we WOULD
8
+ * patch your next.config to look like X"). */
9
+ export declare function previewPatchedNextConfig(outputDir: string): string | null;
10
+ //# sourceMappingURL=pages-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages-mode.d.ts","sourceRoot":"","sources":["../../src/scaffold/pages-mode.ts"],"names":[],"mappings":"AAcA;;;0DAG0D;AAC1D,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,IAAI,CAG/E;AAoFD;;+CAE+C;AAC/C,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOzE"}
@@ -0,0 +1,107 @@
1
+ // Pages-specific tweaks applied AFTER `pruneToClientOnly`.
2
+ //
3
+ // The client-only prune strips the server package + tRPC/auth glue,
4
+ // but leaves the Next config configured for a standalone server +
5
+ // `/api/*` rewrites that assume a backend. Pages serves flat static
6
+ // files; nothing of that wiring makes sense here.
7
+ //
8
+ // This module patches what's left so `pnpm build` in the pruned
9
+ // package produces an `out/` directory ready for `actions/upload-pages-artifact`.
10
+ import { existsSync, readFileSync, writeFileSync } from "node:fs";
11
+ import { join } from "node:path";
12
+ import { rewriteFile } from "./starter-files.js";
13
+ /** Apply all gh-pages-specific changes to a scaffolded project that
14
+ * has already gone through `pruneToClientOnly`. Idempotent: safe to
15
+ * call against a project that's already had these tweaks applied
16
+ * (each step checks for the desired end state first). */
17
+ export function applyPagesMode(outputDir, modifications) {
18
+ patchNextConfig(outputDir, modifications);
19
+ ensureCnameDirExists(outputDir, modifications);
20
+ }
21
+ /** Rewrite `packages/client/next.config.ts` (or .js/.mjs) so it
22
+ * static-exports cleanly:
23
+ * · `output: "export"` — produces a flat `out/` Pages can host
24
+ * · drop the `rewrites()` block — Pages can't run server rewrites
25
+ * · `images: { unoptimized: true }` — static export has no image server
26
+ *
27
+ * No-ops when there's no Next config (e.g. someone's swapped the
28
+ * client for plain Vite — they'll have their own build pipeline).
29
+ * Failures here aren't fatal because hatchkit-create can warn the
30
+ * user before the first push.
31
+ */
32
+ function patchNextConfig(outputDir, modifications) {
33
+ const candidates = ["next.config.ts", "next.config.js", "next.config.mjs", "next.config.cjs"];
34
+ const clientDir = join(outputDir, "packages/client");
35
+ const found = candidates.map((c) => join(clientDir, c)).find((p) => existsSync(p));
36
+ if (!found)
37
+ return;
38
+ rewriteFile(found, (raw) => {
39
+ let out = raw;
40
+ // 1. Switch `output: "standalone"` → `output: "export"`. The
41
+ // starter writes "standalone"; users on different configs
42
+ // may have something else. Accept any quoted value or no
43
+ // `output` key at all.
44
+ if (/output\s*:\s*['"][^'"]*['"]/.test(out)) {
45
+ out = out.replace(/output\s*:\s*['"][^'"]*['"]/, 'output: "export"');
46
+ }
47
+ else {
48
+ // Inject into the config object. Match the opening of the
49
+ // typed `: NextConfig = {` declaration (or a bare `= {` for
50
+ // .js configs). Insert as the first property.
51
+ out = out.replace(/(NextConfig\s*=\s*\{|=\s*\{)/, '$1\n output: "export",');
52
+ }
53
+ // 2. Drop the `rewrites()` block. It's an async function inside
54
+ // the config object. Match `async rewrites() { ... },` —
55
+ // JS doesn't have multi-line regex without `s` flag; use it.
56
+ out = out.replace(/async\s+rewrites\s*\(\s*\)\s*\{[\s\S]*?\n\s*\},?\s*\n/, "");
57
+ // 3. Ensure `images.unoptimized: true`. Without this, `<Image>`
58
+ // fails at runtime on a static export.
59
+ if (!/images\s*:\s*\{[^}]*unoptimized\s*:\s*true/s.test(out)) {
60
+ // No images block at all? Inject right after `output: "export"`.
61
+ if (!/images\s*:\s*\{/.test(out)) {
62
+ out = out.replace(/(output\s*:\s*['"]export['"]\s*,)/, "$1\n images: { unoptimized: true },");
63
+ }
64
+ else {
65
+ // images block exists but missing the flag. Add unoptimized.
66
+ out = out.replace(/(images\s*:\s*\{)/, "$1 unoptimized: true,");
67
+ }
68
+ }
69
+ return out;
70
+ });
71
+ modifications.push("gh-pages: patched next.config (output=export, dropped rewrites, images.unoptimized=true)");
72
+ }
73
+ /** Make sure the publish folder hatchkit's gh-pages flow writes
74
+ * CNAME into actually exists. For Next.js client-only that's
75
+ * `packages/client/public/`. The starter ships this folder, but if
76
+ * someone's stripped it bare we recreate it (and drop a `.gitkeep`)
77
+ * so the CNAME write doesn't fail.
78
+ *
79
+ * Mirrors the safety net in `writeCnameFile` in pages.ts — duplicated
80
+ * here because applyPagesMode runs at scaffold time, before the
81
+ * pages-setup step that writes CNAME.
82
+ */
83
+ function ensureCnameDirExists(outputDir, modifications) {
84
+ const publicDir = join(outputDir, "packages/client/public");
85
+ if (existsSync(publicDir))
86
+ return;
87
+ // Create with a placeholder so git tracks the directory. We don't
88
+ // import mkdirSync at the top to keep imports tight; pull it lazily.
89
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
90
+ const { mkdirSync } = require("node:fs");
91
+ mkdirSync(publicDir, { recursive: true });
92
+ writeFileSync(join(publicDir, ".gitkeep"), "");
93
+ modifications.push("gh-pages: created packages/client/public/ for CNAME placement");
94
+ }
95
+ /** Read the patched next.config back as a string. Useful for tests
96
+ * and for the adopt flow's heuristics-driven warning ("we WOULD
97
+ * patch your next.config to look like X"). */
98
+ export function previewPatchedNextConfig(outputDir) {
99
+ const candidates = ["next.config.ts", "next.config.js", "next.config.mjs", "next.config.cjs"];
100
+ const found = candidates
101
+ .map((c) => join(outputDir, "packages/client", c))
102
+ .find((p) => existsSync(p));
103
+ if (!found)
104
+ return null;
105
+ return readFileSync(found, "utf8");
106
+ }
107
+ //# sourceMappingURL=pages-mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pages-mode.js","sourceRoot":"","sources":["../../src/scaffold/pages-mode.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,10 @@ export declare function stripPackageJsonBuildBlock(outputDir: string): void;
8
8
  * "pnpm typecheck:electron" → <script deleted entirely>
9
9
  */
10
10
  export declare function unchainTypecheckScript(outputDir: string): void;
11
+ /** Set (or clear) the `description` field on the root `package.json`.
12
+ * Passing an empty string deletes the field so we don't ship an empty
13
+ * description through to npm metadata. */
14
+ export declare function setPackageJsonDescription(outputDir: string, description: string): void;
11
15
  /** Set a specific script entry in the root `package.json`. Creates
12
16
  * `scripts` if missing. */
13
17
  export declare function setPackageJsonScript(outputDir: string, name: string, value: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"pkg-json.d.ts","sourceRoot":"","sources":["../../src/scaffold/pkg-json.ts"],"names":[],"mappings":"AAaA,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAOhF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAU7E;AAED,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAMlE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAkB9D;AAED;4BAC4B;AAC5B,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAOzF;AAED,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASlE;AAED;;qCAEqC;AACrC,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CASrE"}
1
+ {"version":3,"file":"pkg-json.d.ts","sourceRoot":"","sources":["../../src/scaffold/pkg-json.ts"],"names":[],"mappings":"AAaA,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAOhF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAU7E;AAED,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAMlE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAkB9D;AAED;;2CAE2C;AAC3C,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAWtF;AAED;4BAC4B;AAC5B,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAOzF;AAED,qEAAqE;AACrE,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CASlE;AAED;;qCAEqC;AACrC,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CASrE"}
@@ -71,6 +71,23 @@ export function unchainTypecheckScript(outputDir) {
71
71
  }
72
72
  writeFileSync(path, JSON.stringify(pkg, null, 2) + "\n", "utf-8");
73
73
  }
74
+ /** Set (or clear) the `description` field on the root `package.json`.
75
+ * Passing an empty string deletes the field so we don't ship an empty
76
+ * description through to npm metadata. */
77
+ export function setPackageJsonDescription(outputDir, description) {
78
+ const path = join(outputDir, "package.json");
79
+ if (!existsSync(path))
80
+ return;
81
+ const pkg = JSON.parse(readFileSync(path, "utf-8"));
82
+ const trimmed = description.trim();
83
+ if (trimmed) {
84
+ pkg.description = trimmed;
85
+ }
86
+ else {
87
+ delete pkg.description;
88
+ }
89
+ writeFileSync(path, JSON.stringify(pkg, null, 2) + "\n", "utf-8");
90
+ }
74
91
  /** Set a specific script entry in the root `package.json`. Creates
75
92
  * `scripts` if missing. */
76
93
  export function setPackageJsonScript(outputDir, name, value) {
@@ -1 +1 @@
1
- {"version":3,"file":"pkg-json.js","sourceRoot":"","sources":["../../src/scaffold/pkg-json.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pkg-json.js","sourceRoot":"","sources":["../../src/scaffold/pkg-json.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,UAAU,uBAAuB,CAAC,SAAiB,EAAE,KAAe;IACxE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,IAAI,CAAC,GAAG,CAAC,OAAO;QAAE,OAAO;IACzB,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE,KAAe;IACrE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,GAAG,CAAC,YAAY;YAAE,OAAO,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,GAAG,CAAC,eAAe;YAAE,OAAO,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,GAAG,CAAC,oBAAoB;YAAE,OAAO,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IACD,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,SAAiB;IAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,OAAO,GAAG,CAAC,KAAK,CAAC;IACjB,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACtD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS;QAAE,OAAO;IACpC,MAAM,YAAY,GAAG,iCAAiC,CAAC;IACvD,IAAI,MAAM,GAAW,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC;IAC3C,MAAM,GAAG,MAAM;SACZ,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;SACnD,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,EAAE,EAAE,CAAC;SACnD,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;SACzB,IAAI,EAAE,CAAC;IACV,IAAI,MAAM,EAAE,CAAC;QACX,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,MAAM,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC;IAC/B,CAAC;IACD,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED;;2CAE2C;AAC3C,MAAM,UAAU,yBAAyB,CAAC,SAAiB,EAAE,WAAmB;IAC9E,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,OAAO,EAAE,CAAC;QACZ,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,CAAC,WAAW,CAAC;IACzB,CAAC;IACD,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED;4BAC4B;AAC5B,MAAM,UAAU,oBAAoB,CAAC,SAAiB,EAAE,IAAY,EAAE,KAAa;IACjF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO;IAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;IAChC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;IAC1B,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC1C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACpD,OAAO,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;qCAEqC;AACrC,MAAM,UAAU,yBAAyB,CAAC,SAAiB;IACzD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAChD,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;QACvD,IAAI,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"surfaces.d.ts","sourceRoot":"","sources":["../../src/scaffold/surfaces.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI5D;;6BAE6B;AAC7B,wBAAgB,cAAc,CAC5B,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EAAE,GACtB,IAAI,CAIN;AA2TD;yEACyE;AACzE,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAE1D;AAED,gCAAgC;AAChC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAE1D"}
1
+ {"version":3,"file":"surfaces.d.ts","sourceRoot":"","sources":["../../src/scaffold/surfaces.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI5D;;6BAE6B;AAC7B,wBAAgB,cAAc,CAC5B,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EAAE,GACtB,IAAI,CAgBN;AA2TD;yEACyE;AACzE,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAE1D;AAED,gCAAgC;AAChC,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAE1D"}
@@ -33,8 +33,19 @@ export function pruneToSurface(config, outputDir, modifications) {
33
33
  return;
34
34
  if (config.surfaces === "server-only")
35
35
  pruneToServerOnly(outputDir, modifications);
36
- else
36
+ else {
37
37
  pruneToClientOnly(outputDir, modifications);
38
+ // Pages needs additional config tweaks on top of the client-only
39
+ // prune — the prune leaves `output: "standalone"` + `/api/*`
40
+ // rewrites in place, both of which assume a running backend.
41
+ if (config.deploymentMode === "gh-pages") {
42
+ // Lazy import to avoid pulling node:fs deeper than needed for
43
+ // the non-pages paths. The dep graph here is already heavy.
44
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
45
+ const { applyPagesMode } = require("./pages-mode.js");
46
+ applyPagesMode(outputDir, modifications);
47
+ }
48
+ }
38
49
  }
39
50
  // ── server-only ────────────────────────────────────────────────────────
40
51
  function pruneToServerOnly(outputDir, modifications) {
@@ -1 +1 @@
1
- {"version":3,"file":"surfaces.js","sourceRoot":"","sources":["../../src/scaffold/surfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"surfaces.js","sourceRoot":"","sources":["../../src/scaffold/surfaces.ts"],"names":[],"mappings":"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"}
@@ -139,7 +139,7 @@ async function addDesktop(projectDir, resolvedStarter, manifest) {
139
139
  "itch:push:win",
140
140
  "itch:push:linux",
141
141
  ];
142
- const DESKTOP_DEPS = ["electron", "electron-builder", "electron-icon-builder", "wait-on"];
142
+ const DESKTOP_DEPS = ["electron", "electron-builder", "icon-gen", "wait-on"];
143
143
  projectPkg.scripts = projectPkg.scripts ?? {};
144
144
  for (const name of DESKTOP_SCRIPTS) {
145
145
  if (starterPkg.scripts?.[name])