create-next-hydra 0.3.0 → 0.4.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.
Files changed (207) hide show
  1. package/README.md +126 -27
  2. package/dist/add-command.d.ts +11 -0
  3. package/dist/add-command.d.ts.map +1 -0
  4. package/dist/add-command.js +75 -0
  5. package/dist/addition.d.ts +67 -0
  6. package/dist/addition.d.ts.map +1 -0
  7. package/dist/addition.js +422 -0
  8. package/dist/application-git.d.ts +20 -0
  9. package/dist/application-git.d.ts.map +1 -0
  10. package/dist/application-git.js +57 -0
  11. package/dist/baseline.d.ts +22 -0
  12. package/dist/baseline.d.ts.map +1 -0
  13. package/dist/baseline.js +90 -0
  14. package/dist/cli.js +5 -18
  15. package/dist/commands.d.ts +22 -0
  16. package/dist/commands.d.ts.map +1 -0
  17. package/dist/commands.js +197 -0
  18. package/dist/composition-lint.d.ts +20 -0
  19. package/dist/composition-lint.d.ts.map +1 -0
  20. package/dist/composition-lint.js +288 -0
  21. package/dist/composition.d.ts +24 -0
  22. package/dist/composition.d.ts.map +1 -0
  23. package/dist/composition.js +420 -0
  24. package/dist/create-command.d.ts +21 -0
  25. package/dist/create-command.d.ts.map +1 -0
  26. package/dist/create-command.js +128 -0
  27. package/dist/demo-instrumentation.d.ts +5 -0
  28. package/dist/demo-instrumentation.d.ts.map +1 -0
  29. package/dist/demo-instrumentation.js +300 -0
  30. package/dist/environment.d.ts +7 -0
  31. package/dist/environment.d.ts.map +1 -0
  32. package/dist/environment.js +81 -0
  33. package/dist/errors.d.ts +156 -0
  34. package/dist/errors.d.ts.map +1 -0
  35. package/dist/errors.js +140 -0
  36. package/dist/file-policy.d.ts +6 -0
  37. package/dist/file-policy.d.ts.map +1 -0
  38. package/dist/file-policy.js +38 -0
  39. package/dist/files.d.ts +7 -0
  40. package/dist/files.d.ts.map +1 -0
  41. package/dist/files.js +66 -0
  42. package/dist/hosting.d.ts +5 -0
  43. package/dist/hosting.d.ts.map +1 -0
  44. package/dist/hosting.js +107 -0
  45. package/dist/index.d.ts +4 -6
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +17 -89
  48. package/dist/initialization.d.ts +14 -0
  49. package/dist/initialization.d.ts.map +1 -0
  50. package/dist/initialization.js +266 -0
  51. package/dist/lint-workspaces.d.ts +2 -0
  52. package/dist/lint-workspaces.d.ts.map +1 -0
  53. package/dist/lint-workspaces.js +62 -0
  54. package/dist/model.d.ts +143 -0
  55. package/dist/model.d.ts.map +1 -0
  56. package/dist/model.js +61 -0
  57. package/dist/package-catalog.d.ts +8 -0
  58. package/dist/package-catalog.d.ts.map +1 -0
  59. package/dist/package-catalog.js +61 -0
  60. package/dist/packages.d.ts +57 -0
  61. package/dist/packages.d.ts.map +1 -0
  62. package/dist/packages.js +237 -0
  63. package/dist/process-group.d.ts +5 -0
  64. package/dist/process-group.d.ts.map +1 -0
  65. package/dist/process-group.js +23 -0
  66. package/dist/reference-workspace-bindings.d.ts +38 -0
  67. package/dist/reference-workspace-bindings.d.ts.map +1 -0
  68. package/dist/reference-workspace-bindings.js +41 -0
  69. package/dist/reference-workspace.d.ts +6 -0
  70. package/dist/reference-workspace.d.ts.map +1 -0
  71. package/dist/reference-workspace.js +62 -0
  72. package/dist/registry.d.ts +187 -0
  73. package/dist/registry.d.ts.map +1 -0
  74. package/dist/registry.js +107 -0
  75. package/dist/runtime.d.ts +9 -0
  76. package/dist/runtime.d.ts.map +1 -0
  77. package/dist/runtime.js +22 -0
  78. package/dist/selection.d.ts +704 -0
  79. package/dist/selection.d.ts.map +1 -0
  80. package/dist/selection.js +424 -0
  81. package/dist/shadcn-protocol.d.ts +22 -0
  82. package/dist/shadcn-protocol.d.ts.map +1 -0
  83. package/dist/shadcn-protocol.js +13 -0
  84. package/dist/shadcn-worker.d.ts +2 -0
  85. package/dist/shadcn-worker.d.ts.map +1 -0
  86. package/dist/shadcn-worker.js +43 -0
  87. package/dist/shadcn.d.ts +22 -0
  88. package/dist/shadcn.d.ts.map +1 -0
  89. package/dist/shadcn.js +101 -0
  90. package/dist/source-changes.d.ts +55 -0
  91. package/dist/source-changes.d.ts.map +1 -0
  92. package/dist/source-changes.js +225 -0
  93. package/dist/source-inventory.d.ts +25 -0
  94. package/dist/source-inventory.d.ts.map +1 -0
  95. package/dist/source-inventory.js +212 -0
  96. package/dist/source-root.d.ts +4 -0
  97. package/dist/source-root.d.ts.map +1 -0
  98. package/dist/source-root.js +20 -0
  99. package/dist/staging.d.ts +19 -0
  100. package/dist/staging.d.ts.map +1 -0
  101. package/dist/staging.js +42 -0
  102. package/dist/tasks.d.ts +44 -0
  103. package/dist/tasks.d.ts.map +1 -0
  104. package/dist/tasks.js +137 -0
  105. package/dist/templates.d.ts +217 -0
  106. package/dist/templates.d.ts.map +1 -0
  107. package/dist/templates.js +161 -0
  108. package/dist/test-reference-workspace.d.ts +2 -0
  109. package/dist/test-reference-workspace.d.ts.map +1 -0
  110. package/dist/test-reference-workspace.js +6 -0
  111. package/dist/types.d.ts +2 -9
  112. package/dist/types.d.ts.map +1 -1
  113. package/dist/typescript-paths.d.ts +10 -0
  114. package/dist/typescript-paths.d.ts.map +1 -0
  115. package/dist/typescript-paths.js +52 -0
  116. package/dist/workspace-dependencies.d.ts +26 -0
  117. package/dist/workspace-dependencies.d.ts.map +1 -0
  118. package/dist/workspace-dependencies.js +478 -0
  119. package/dist/workspace-files.d.ts +24 -0
  120. package/dist/workspace-files.d.ts.map +1 -0
  121. package/dist/workspace-files.js +395 -0
  122. package/dist/workspace-lock.d.ts +12 -0
  123. package/dist/workspace-lock.d.ts.map +1 -0
  124. package/dist/workspace-lock.js +104 -0
  125. package/dist/workspace-snapshots.d.ts +24 -0
  126. package/dist/workspace-snapshots.d.ts.map +1 -0
  127. package/dist/workspace-snapshots.js +218 -0
  128. package/dist/workspace-sources.d.ts +27 -0
  129. package/dist/workspace-sources.d.ts.map +1 -0
  130. package/dist/workspace-sources.js +88 -0
  131. package/dist/workspace-state.d.ts +325 -0
  132. package/dist/workspace-state.d.ts.map +1 -0
  133. package/dist/workspace-state.js +571 -0
  134. package/dist/workspaces.d.ts +73 -0
  135. package/dist/workspaces.d.ts.map +1 -0
  136. package/dist/workspaces.js +396 -0
  137. package/package.json +27 -20
  138. package/schema/selection-definition.json +143 -4
  139. package/dist/clone.d.ts +0 -9
  140. package/dist/clone.d.ts.map +0 -1
  141. package/dist/clone.js +0 -19
  142. package/dist/composition/add.d.ts +0 -14
  143. package/dist/composition/add.d.ts.map +0 -1
  144. package/dist/composition/add.js +0 -484
  145. package/dist/composition/catalog.d.ts +0 -26
  146. package/dist/composition/catalog.d.ts.map +0 -1
  147. package/dist/composition/catalog.js +0 -317
  148. package/dist/composition/errors.d.ts +0 -5
  149. package/dist/composition/errors.d.ts.map +0 -1
  150. package/dist/composition/errors.js +0 -8
  151. package/dist/composition/format.d.ts +0 -6
  152. package/dist/composition/format.d.ts.map +0 -1
  153. package/dist/composition/format.js +0 -65
  154. package/dist/composition/install.d.ts +0 -16
  155. package/dist/composition/install.d.ts.map +0 -1
  156. package/dist/composition/install.js +0 -175
  157. package/dist/composition/packages.d.ts +0 -6
  158. package/dist/composition/packages.d.ts.map +0 -1
  159. package/dist/composition/packages.js +0 -55
  160. package/dist/composition/paths.d.ts +0 -4
  161. package/dist/composition/paths.d.ts.map +0 -1
  162. package/dist/composition/paths.js +0 -47
  163. package/dist/composition/planner.d.ts +0 -4
  164. package/dist/composition/planner.d.ts.map +0 -1
  165. package/dist/composition/planner.js +0 -366
  166. package/dist/composition/schema.d.ts +0 -294
  167. package/dist/composition/schema.d.ts.map +0 -1
  168. package/dist/composition/schema.js +0 -166
  169. package/dist/composition/types.d.ts +0 -111
  170. package/dist/composition/types.d.ts.map +0 -1
  171. package/dist/composition/types.js +0 -6
  172. package/dist/composition/typescript-paths.d.ts +0 -6
  173. package/dist/composition/typescript-paths.d.ts.map +0 -1
  174. package/dist/composition/typescript-paths.js +0 -157
  175. package/dist/composition/use.d.ts +0 -23
  176. package/dist/composition/use.d.ts.map +0 -1
  177. package/dist/composition/use.js +0 -187
  178. package/dist/composition/workspace.d.ts +0 -10
  179. package/dist/composition/workspace.d.ts.map +0 -1
  180. package/dist/composition/workspace.js +0 -210
  181. package/dist/constants.d.ts +0 -11
  182. package/dist/constants.d.ts.map +0 -1
  183. package/dist/constants.js +0 -39
  184. package/dist/fs-utils.d.ts +0 -9
  185. package/dist/fs-utils.d.ts.map +0 -1
  186. package/dist/fs-utils.js +0 -64
  187. package/dist/git.d.ts +0 -28
  188. package/dist/git.d.ts.map +0 -1
  189. package/dist/git.js +0 -107
  190. package/dist/instruction-renderer.d.ts +0 -17
  191. package/dist/instruction-renderer.d.ts.map +0 -1
  192. package/dist/instruction-renderer.js +0 -132
  193. package/dist/logger.d.ts +0 -13
  194. package/dist/logger.d.ts.map +0 -1
  195. package/dist/logger.js +0 -26
  196. package/dist/prompts.d.ts +0 -7
  197. package/dist/prompts.d.ts.map +0 -1
  198. package/dist/prompts.js +0 -54
  199. package/dist/sanitize.d.ts +0 -10
  200. package/dist/sanitize.d.ts.map +0 -1
  201. package/dist/sanitize.js +0 -110
  202. package/dist/scaffold.d.ts +0 -7
  203. package/dist/scaffold.d.ts.map +0 -1
  204. package/dist/scaffold.js +0 -330
  205. package/dist/version.d.ts +0 -2
  206. package/dist/version.d.ts.map +0 -1
  207. package/dist/version.js +0 -2
package/dist/scaffold.js DELETED
@@ -1,330 +0,0 @@
1
- import { stat } from "node:fs/promises";
2
- import path from "node:path";
3
- import { fileURLToPath } from "node:url";
4
- import { intro } from "@clack/prompts";
5
- import { cloneStarter } from "./clone.js";
6
- import { addCatalogReferences, loadGitHubSourceRegistryCatalog, loadSourceRegistryCatalog, } from "./composition/catalog.js";
7
- import { formatCompositionPlan } from "./composition/format.js";
8
- import { installPreparedComposition, prepareComposition, validatePackageRequirementTargets, } from "./composition/install.js";
9
- import { planComposition, selectionFromPreset } from "./composition/planner.js";
10
- import { applyTypeScriptPathAliases } from "./composition/typescript-paths.js";
11
- import { applyPackageRequirements, applyPnpmPatches, removeWorkspaceTargets, } from "./composition/workspace.js";
12
- import { DEFAULT_PACKAGE_MANAGER } from "./constants.js";
13
- import { ensureParentDirectory, isDirectoryEmpty, pathExists, toDisplayPath, } from "./fs-utils.js";
14
- import { CommandExecutionError, ensureGitInstalled, initializeGitRepository, runCommand, } from "./git.js";
15
- import { createSpinner, finish, info, printInstructions, success, warn, } from "./logger.js";
16
- import { promptForProvider } from "./prompts.js";
17
- import { sanitizeStarter } from "./sanitize.js";
18
- const SHELL_NEEDS_QUOTING_REGEX = /[\s"'\\]/;
19
- const GITHUB_SCP_REPOSITORY = /^(?:git@|ssh:\/\/git@)github\.com[:/]([^/]+)\/([^/]+?)(?:\.git)?$/;
20
- const LEADING_SLASH = /^\//;
21
- const GIT_SUFFIX = /\.git$/;
22
- function quotePathForShell(value) {
23
- if (!SHELL_NEEDS_QUOTING_REGEX.test(value)) {
24
- return value;
25
- }
26
- return `'${value.replaceAll("'", `'"'"'`)}'`;
27
- }
28
- async function resolveAndValidateTarget(inputTargetDir) {
29
- const targetDir = inputTargetDir.trim();
30
- const targetPath = path.resolve(process.cwd(), targetDir);
31
- const targetName = path.basename(targetPath);
32
- if (!targetName) {
33
- throw new Error("Please provide a valid target folder.");
34
- }
35
- if (await pathExists(targetPath)) {
36
- const isEmpty = await isDirectoryEmpty(targetPath);
37
- if (!isEmpty) {
38
- throw new Error(`Target directory is not empty: ${toDisplayPath(targetPath)}`);
39
- }
40
- }
41
- else {
42
- await ensureParentDirectory(targetPath);
43
- }
44
- return { targetDir, targetName, targetPath };
45
- }
46
- function formatGitError(error) {
47
- const stderr = error.stderr.trim();
48
- const stdout = error.stdout.trim();
49
- const detail = stderr || stdout || error.message;
50
- const hint = error.command.startsWith("git clone ")
51
- ? [
52
- "",
53
- "Hint: If the starter repo is private or you are testing locally, use `--repo-url`.",
54
- "Example: create-next-hydra my-app --repo-url /path/to/next-hydra",
55
- ]
56
- : [];
57
- return [error.command, "", detail, ...hint].join("\n");
58
- }
59
- async function localRepositoryPath(repoUrl) {
60
- let candidate;
61
- if (repoUrl.startsWith("file:")) {
62
- candidate = fileURLToPath(repoUrl);
63
- }
64
- else if (path.isAbsolute(repoUrl) ||
65
- repoUrl.startsWith(".") ||
66
- !repoUrl.includes(":")) {
67
- candidate = path.resolve(repoUrl);
68
- }
69
- else {
70
- return null;
71
- }
72
- try {
73
- return (await stat(candidate)).isDirectory() ? candidate : null;
74
- }
75
- catch {
76
- return null;
77
- }
78
- }
79
- function githubRepository(repoUrl) {
80
- const scpMatch = GITHUB_SCP_REPOSITORY.exec(repoUrl);
81
- if (scpMatch?.[1] && scpMatch[2]) {
82
- return `${scpMatch[1]}/${scpMatch[2]}`;
83
- }
84
- try {
85
- const url = new URL(repoUrl);
86
- if (url.hostname !== "github.com") {
87
- return null;
88
- }
89
- const parts = url.pathname
90
- .replace(LEADING_SLASH, "")
91
- .replace(GIT_SUFFIX, "")
92
- .split("/");
93
- return parts.length === 2 && parts[0] && parts[1]
94
- ? `${parts[0]}/${parts[1]}`
95
- : null;
96
- }
97
- catch {
98
- return null;
99
- }
100
- }
101
- async function requestedSelection(options, catalog) {
102
- if (options.preset && (options.auth || options.cms || options.commerce)) {
103
- throw new Error("`--preset` cannot be combined with provider flags.");
104
- }
105
- if (options.preset) {
106
- const preset = selectionFromPreset(catalog, options.preset);
107
- return {
108
- ...preset,
109
- addOns: [...new Set([...preset.addOns, ...(options.addOns ?? [])])],
110
- };
111
- }
112
- if (options.yes && !(options.auth && options.cms && options.commerce)) {
113
- throw new Error("`--yes` requires `--auth`, `--cms`, and `--commerce`, or one `--preset`.");
114
- }
115
- const auth = options.auth ?? (await promptForProvider("auth", "workos"));
116
- const cms = options.cms ?? (await promptForProvider("cms", "drupal"));
117
- const commerce = options.commerce ?? (await promptForProvider("commerce", "commercetools"));
118
- return {
119
- addOns: options.addOns ?? [],
120
- providers: { auth, cms, commerce },
121
- };
122
- }
123
- function explicitSelectionReferences(options) {
124
- return [
125
- options.auth,
126
- options.cms,
127
- options.commerce,
128
- options.preset,
129
- ...(options.addOns ?? []),
130
- ].filter((value) => Boolean(value));
131
- }
132
- function scaffoldFailure(error, targetPath, failedStep, completed, pending) {
133
- let cause = String(error);
134
- if (error instanceof Error) {
135
- cause = error.message;
136
- }
137
- if (error instanceof CommandExecutionError) {
138
- cause = formatGitError(error);
139
- }
140
- return new Error([
141
- `Scaffolding stopped while ${failedStep}.`,
142
- `Target: ${targetPath}`,
143
- `Completed: ${completed.length > 0 ? completed.join(", ") : "none"}.`,
144
- `Not attempted: ${pending.length > 0 ? pending.join(", ") : "none"}.`,
145
- "The partial project has been left exactly as it stands for inspection or repair.",
146
- "",
147
- cause,
148
- ].join("\n"), { cause: error });
149
- }
150
- export async function scaffoldProject(options, dependencies = {}) {
151
- intro("create-next-hydra");
152
- const spin = createSpinner();
153
- const { repoUrl, ref, skipGit, commit, verbose } = options;
154
- if (!options.targetDir) {
155
- throw new Error("Missing target directory.");
156
- }
157
- spin.start("Checking git availability");
158
- try {
159
- await ensureGitInstalled(verbose);
160
- spin.stop("Git detected");
161
- }
162
- catch (error) {
163
- spin.stop("Git not available");
164
- throw new Error("Git is required to scaffold a project. Please install git and try again.", { cause: error });
165
- }
166
- const sourcePath = await localRepositoryPath(repoUrl);
167
- const remoteRepository = sourcePath ? null : githubRepository(repoUrl);
168
- let sourceCatalog;
169
- if (sourcePath) {
170
- sourceCatalog = await loadSourceRegistryCatalog(sourcePath);
171
- }
172
- else if (remoteRepository) {
173
- sourceCatalog = await loadGitHubSourceRegistryCatalog(remoteRepository, ref);
174
- }
175
- else {
176
- throw new Error("Composition preflight supports a local starter path or a public GitHub repository. Use one of those forms with `--repo-url`.");
177
- }
178
- sourceCatalog = await addCatalogReferences(sourceCatalog, explicitSelectionReferences(options), process.cwd());
179
- const selection = await requestedSelection(options, sourceCatalog);
180
- sourceCatalog = await addCatalogReferences(sourceCatalog, [...Object.values(selection.providers), ...selection.addOns], process.cwd());
181
- planComposition(sourceCatalog, selection);
182
- const { targetPath, targetName } = await resolveAndValidateTarget(options.targetDir);
183
- const completed = [];
184
- const pending = [
185
- "clone the starter",
186
- "resolve the composition",
187
- "remove variable provider source",
188
- "install selected source",
189
- "update package aliases",
190
- "update TypeScript paths",
191
- "update pnpm patches",
192
- "remove maintainer-only files",
193
- "install dependencies",
194
- "initialize Git",
195
- ];
196
- let currentStep = "clone the starter";
197
- const runStep = async (label, operation) => {
198
- currentStep = label;
199
- pending.shift();
200
- const result = await operation();
201
- completed.push(label);
202
- return result;
203
- };
204
- try {
205
- spin.start("Cloning next-hydra starter");
206
- await runStep("clone the starter", async () => {
207
- await cloneStarter({ ref, repoUrl, targetPath, verbose });
208
- });
209
- spin.stop("Starter cloned");
210
- spin.start("Resolving workspace composition");
211
- const { catalog, plan, prepared } = await runStep("resolve the composition", async () => {
212
- let targetCatalog = await loadSourceRegistryCatalog(targetPath);
213
- targetCatalog = await addCatalogReferences(targetCatalog, [
214
- ...explicitSelectionReferences(options),
215
- ...Object.values(selection.providers),
216
- ...selection.addOns,
217
- ], process.cwd());
218
- const targetPlan = planComposition(targetCatalog, selection);
219
- const targetPrepared = await prepareComposition(targetCatalog, targetPlan);
220
- await validatePackageRequirementTargets(targetPath, targetPlan, targetPrepared, targetPlan.variableTargets);
221
- return {
222
- catalog: targetCatalog,
223
- plan: targetPlan,
224
- prepared: targetPrepared,
225
- };
226
- });
227
- spin.stop("Composition resolved");
228
- info(formatCompositionPlan(plan));
229
- spin.start("Removing unselected provider source");
230
- await runStep("remove variable provider source", async () => {
231
- await removeWorkspaceTargets(targetPath, plan.variableTargets);
232
- });
233
- spin.stop("Variable provider source removed");
234
- spin.start("Installing selected provider source");
235
- await runStep("install selected source", async () => {
236
- await installPreparedComposition(targetPath, prepared);
237
- });
238
- spin.stop("Selected provider source installed");
239
- await runStep("update package aliases", async () => {
240
- await applyPackageRequirements(targetPath, plan);
241
- });
242
- await runStep("update TypeScript paths", async () => {
243
- await applyTypeScriptPathAliases(targetPath, plan);
244
- });
245
- await runStep("update pnpm patches", async () => {
246
- await applyPnpmPatches(targetPath, plan);
247
- });
248
- spin.start("Removing maintainer-only files");
249
- const { packageName } = await runStep("remove maintainer-only files", async () => {
250
- const result = await sanitizeStarter({
251
- registryAuthoringPaths: catalog.authoringPaths,
252
- targetName,
253
- targetPath,
254
- });
255
- await removeWorkspaceTargets(targetPath, catalog.authoringPaths);
256
- return result;
257
- });
258
- spin.stop("Maintainer-only files removed");
259
- spin.start("Installing dependencies");
260
- await runStep("install dependencies", async () => {
261
- if (dependencies.install) {
262
- await dependencies.install(targetPath, verbose);
263
- return;
264
- }
265
- await runCommand(DEFAULT_PACKAGE_MANAGER, ["install"], {
266
- cwd: targetPath,
267
- verbose,
268
- });
269
- });
270
- spin.stop("Dependencies installed");
271
- let gitInitialized = false;
272
- let committed = false;
273
- if (skipGit) {
274
- pending.shift();
275
- completed.push("skip Git initialization");
276
- info("Skipped git initialization (--skip-git).");
277
- }
278
- else {
279
- spin.start(commit
280
- ? "Initializing git repo and creating initial commit"
281
- : "Initializing git repo");
282
- const gitResult = await runStep("initialize Git", async () => await initializeGitRepository(targetPath, { commit, verbose }));
283
- ({ committed, gitInitialized } = gitResult);
284
- spin.stop(committed
285
- ? "Git repo initialized with initial commit"
286
- : "Git repo initialized");
287
- if (gitResult.commitError) {
288
- warn(`Project was scaffolded, but the initial commit failed. You can commit manually.\n${gitResult.commitError}`);
289
- }
290
- }
291
- const displayTarget = toDisplayPath(targetPath);
292
- printInstructions([
293
- ...(plan.instructions.length > 0
294
- ? [
295
- {
296
- entries: plan.instructions.map((text) => ({
297
- kind: "text",
298
- text,
299
- })),
300
- title: "Provider setup",
301
- },
302
- ]
303
- : []),
304
- {
305
- entries: [
306
- {
307
- command: `cd ${quotePathForShell(displayTarget)}`,
308
- kind: "command",
309
- },
310
- {
311
- command: `${DEFAULT_PACKAGE_MANAGER} dev`,
312
- kind: "command",
313
- },
314
- ],
315
- title: "Next steps",
316
- },
317
- ]);
318
- success(`Created project in ${displayTarget}`);
319
- finish("Scaffold complete.");
320
- return {
321
- committed,
322
- gitInitialized,
323
- packageName,
324
- projectPath: targetPath,
325
- };
326
- }
327
- catch (error) {
328
- throw scaffoldFailure(error, targetPath, currentStep, completed, pending);
329
- }
330
- }
package/dist/version.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare const CLI_VERSION: string;
2
- //# sourceMappingURL=version.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,QAA0B,CAAC"}
package/dist/version.js DELETED
@@ -1,2 +0,0 @@
1
- import packageManifest from "../package.json" with { type: "json" };
2
- export const CLI_VERSION = packageManifest.version;