@baseplate-dev/project-builder-server 0.1.3 → 0.2.1

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 (65) hide show
  1. package/dist/api/index.d.ts +1 -0
  2. package/dist/api/index.d.ts.map +1 -1
  3. package/dist/api/sync.d.ts +1 -0
  4. package/dist/api/sync.d.ts.map +1 -1
  5. package/dist/compiler/admin/crud/index.d.ts +1 -1
  6. package/dist/compiler/admin/crud/index.d.ts.map +1 -1
  7. package/dist/compiler/admin/crud/index.js.map +1 -1
  8. package/dist/compiler/admin/crud/inputs.d.ts +1 -1
  9. package/dist/compiler/admin/crud/inputs.d.ts.map +1 -1
  10. package/dist/compiler/admin/crud/inputs.js.map +1 -1
  11. package/dist/compiler/admin/index.d.ts.map +1 -1
  12. package/dist/compiler/admin/index.js +1 -3
  13. package/dist/compiler/admin/index.js.map +1 -1
  14. package/dist/index.d.ts +0 -1
  15. package/dist/index.js +0 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/server/builder-service-manager.d.ts +8 -0
  18. package/dist/server/builder-service-manager.d.ts.map +1 -1
  19. package/dist/server/builder-service-manager.js +1 -0
  20. package/dist/server/builder-service-manager.js.map +1 -1
  21. package/dist/server/index.d.ts.map +1 -1
  22. package/dist/server/index.js +8 -2
  23. package/dist/server/index.js.map +1 -1
  24. package/dist/server/plugin.d.ts.map +1 -1
  25. package/dist/server/plugin.js.map +1 -1
  26. package/dist/service/builder-service.d.ts +3 -1
  27. package/dist/service/builder-service.d.ts.map +1 -1
  28. package/dist/service/builder-service.js +4 -1
  29. package/dist/service/builder-service.js.map +1 -1
  30. package/dist/sync/build-project.d.ts +7 -2
  31. package/dist/sync/build-project.d.ts.map +1 -1
  32. package/dist/sync/build-project.js +8 -4
  33. package/dist/sync/build-project.js.map +1 -1
  34. package/dist/sync/file-id-map.d.ts +15 -0
  35. package/dist/sync/file-id-map.d.ts.map +1 -0
  36. package/dist/sync/file-id-map.js +36 -0
  37. package/dist/sync/file-id-map.js.map +1 -0
  38. package/dist/sync/generate-for-directory.d.ts.map +1 -1
  39. package/dist/sync/generate-for-directory.js +6 -43
  40. package/dist/sync/generate-for-directory.js.map +1 -1
  41. package/dist/sync/sync-metadata-controller.d.ts +1 -1
  42. package/dist/sync/sync-metadata-controller.d.ts.map +1 -1
  43. package/dist/sync/sync-metadata-controller.js +1 -1
  44. package/dist/sync/sync-metadata-controller.js.map +1 -1
  45. package/dist/sync/sync-metadata.d.ts +3 -0
  46. package/dist/sync/sync-metadata.d.ts.map +1 -1
  47. package/dist/sync/sync-metadata.js +1 -0
  48. package/dist/sync/sync-metadata.js.map +1 -1
  49. package/dist/template-extractor/delete-template.d.ts +25 -0
  50. package/dist/template-extractor/delete-template.d.ts.map +1 -0
  51. package/dist/template-extractor/delete-template.js +36 -0
  52. package/dist/template-extractor/delete-template.js.map +1 -0
  53. package/dist/template-extractor/discover-generators.d.ts +19 -0
  54. package/dist/template-extractor/discover-generators.d.ts.map +1 -0
  55. package/dist/template-extractor/discover-generators.js +63 -0
  56. package/dist/template-extractor/discover-generators.js.map +1 -0
  57. package/dist/template-extractor/index.d.ts +2 -0
  58. package/dist/template-extractor/index.d.ts.map +1 -1
  59. package/dist/template-extractor/index.js +2 -0
  60. package/dist/template-extractor/index.js.map +1 -1
  61. package/dist/template-extractor/run-template-extractor.d.ts +3 -3
  62. package/dist/template-extractor/run-template-extractor.d.ts.map +1 -1
  63. package/dist/template-extractor/run-template-extractor.js +29 -52
  64. package/dist/template-extractor/run-template-extractor.js.map +1 -1
  65. package/package.json +18 -10
@@ -1,10 +1,10 @@
1
- import { buildGeneratorEntry, CancelledSyncError, createCodebaseFileReaderFromDirectory, deleteMetadataFiles, executeGeneratorEntry, writeGeneratorOutput, writeGeneratorsMetadata, writeTemplateMetadata, } from '@baseplate-dev/sync';
2
- import { enhanceErrorWithContext, randomUid } from '@baseplate-dev/utils';
3
- import { dirExists, handleFileNotFoundError, readJsonWithSchema, writeJson, } from '@baseplate-dev/utils/node';
1
+ import { buildGeneratorEntry, CancelledSyncError, createCodebaseFileReaderFromDirectory, deleteMetadataFiles, executeGeneratorEntry, writeGeneratorOutput, writeTemplateMetadata, } from '@baseplate-dev/sync';
2
+ import { randomKey } from '@baseplate-dev/utils';
3
+ import { dirExists } from '@baseplate-dev/utils/node';
4
4
  import chalk from 'chalk';
5
5
  import { mkdir, rename, rm } from 'node:fs/promises';
6
6
  import path from 'node:path';
7
- import { z } from 'zod';
7
+ import { getPreviousGeneratedFileIdMap, writeGeneratedFileIdMap, } from './file-id-map.js';
8
8
  import { writeGeneratorSteps } from './generator-steps-writer.js';
9
9
  const defaultGeneratorOperations = {
10
10
  buildGeneratorEntry,
@@ -13,45 +13,11 @@ const defaultGeneratorOperations = {
13
13
  writeGeneratorOutput,
14
14
  writeMetadata: async (project, output, projectDirectory) => {
15
15
  await deleteMetadataFiles(projectDirectory);
16
- await writeGeneratorsMetadata(project, projectDirectory);
17
16
  await writeTemplateMetadata(output.files, projectDirectory);
18
17
  },
19
18
  writeGeneratorSteps,
20
19
  };
21
20
  const GENERATED_DIRECTORY = 'baseplate/generated';
22
- const FILE_ID_MAP_PATH = 'baseplate/file-id-map.json';
23
- async function getPreviousGeneratedFileIdMap(projectDirectory) {
24
- const generatedFileIdMapPath = path.join(projectDirectory, FILE_ID_MAP_PATH);
25
- try {
26
- const fileIdMap = await readJsonWithSchema(generatedFileIdMapPath, z.record(z.string(), z.string())).catch(handleFileNotFoundError);
27
- if (!fileIdMap) {
28
- return new Map();
29
- }
30
- return new Map(Object.entries(fileIdMap));
31
- }
32
- catch (err) {
33
- throw enhanceErrorWithContext(err, `Failed to get previous generated file id map (${generatedFileIdMapPath})`);
34
- }
35
- }
36
- // TODO [>=0.2.0] Remove this once we've released a new major version.
37
- async function migrateCleanDirectory(projectDirectory, logger) {
38
- const oldDirectory = path.join(projectDirectory, 'baseplate/.clean');
39
- const newDirectory = path.join(projectDirectory, GENERATED_DIRECTORY);
40
- const oldDirectoryExists = await dirExists(oldDirectory);
41
- const newDirectoryExists = await dirExists(newDirectory);
42
- if (oldDirectoryExists) {
43
- logger.info(`Migrating legacy .clean directory to ${newDirectory}...`);
44
- // Create parent directory if it doesn't exist
45
- await mkdir(path.dirname(newDirectory), { recursive: true });
46
- if (newDirectoryExists) {
47
- throw new Error(`New generated directory already exists: ${newDirectory}. Please remove either baseplate.clean or baseplate/generated.`);
48
- }
49
- // Rename directory
50
- await rename(oldDirectory, newDirectory).catch((err) => {
51
- throw new Error(`Failed to migrate .clean directory: ${err instanceof Error ? err.message : String(err)}`);
52
- });
53
- }
54
- }
55
21
  async function getPreviousGeneratedPayload(projectDirectory) {
56
22
  const generatedDirectory = path.join(projectDirectory, GENERATED_DIRECTORY);
57
23
  const generatedDirectoryExists = await dirExists(generatedDirectory);
@@ -67,8 +33,6 @@ async function getPreviousGeneratedPayload(projectDirectory) {
67
33
  export async function generateForDirectory({ baseDirectory, appEntry, logger, writeTemplateMetadataOptions, userConfig, previousPackageSyncResult, operations = defaultGeneratorOperations, abortSignal, skipCommands, }) {
68
34
  const { appDirectory, name, generatorBundle } = appEntry;
69
35
  const projectDirectory = path.join(baseDirectory, appDirectory);
70
- // Migrate .clean directory if it exists
71
- await migrateCleanDirectory(projectDirectory, logger);
72
36
  logger.info(`Generating project ${name} in ${projectDirectory}...`);
73
37
  const project = await operations.buildGeneratorEntry(generatorBundle);
74
38
  const output = await operations.executeGeneratorEntry(project, {
@@ -110,8 +74,7 @@ export async function generateForDirectory({ baseDirectory, appEntry, logger, wr
110
74
  }
111
75
  await rename(generatedTemporaryDirectory, generatedDirectory);
112
76
  // Write file ID map
113
- const fileIdMap = Object.fromEntries([...fileIdToRelativePathMap.entries()].sort(([a], [b]) => a.localeCompare(b)));
114
- await writeJson(path.join(projectDirectory, FILE_ID_MAP_PATH), fileIdMap);
77
+ await writeGeneratedFileIdMap(projectDirectory, fileIdToRelativePathMap);
115
78
  // Write generator steps
116
79
  if (userConfig.sync?.writeGeneratorStepsJson && output.metadata) {
117
80
  await operations.writeGeneratorSteps(output.metadata, projectDirectory);
@@ -135,7 +98,7 @@ export async function generateForDirectory({ baseDirectory, appEntry, logger, wr
135
98
  return {
136
99
  filesWithConflicts,
137
100
  failedCommands: failedCommands.map((c) => ({
138
- id: randomUid(),
101
+ id: randomKey(),
139
102
  command: c.command,
140
103
  workingDir: c.workingDir,
141
104
  output: c.output,
@@ -1 +1 @@
1
- {"version":3,"file":"generate-for-directory.js","sourceRoot":"","sources":["../../src/sync/generate-for-directory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-for-directory.js","sourceRoot":"","sources":["../../src/sync/generate-for-directory.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Logger } from '@baseplate-dev/sync';
2
2
  import { TypedEventEmitter } from '@baseplate-dev/utils';
3
- import { type PackageSyncInfo, type SyncMetadata } from './sync-metadata.js';
3
+ import type { PackageSyncInfo, SyncMetadata } from './sync-metadata.js';
4
4
  /**
5
5
  * Controller for getting updates about the latest sync metadata.
6
6
  * Uses throttling to coalesce multiple write calls into a single save.
@@ -1 +1 @@
1
- {"version":3,"file":"sync-metadata-controller.d.ts","sourceRoot":"","sources":["../../src/sync/sync-metadata-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAEL,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAU9B,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,iBAAiB,CAAC;IAC5D,CAAC,uBAAuB,CAAC,EAAE,YAAY,CAAC;CACzC,CAAC;IAME,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM;IAC3C,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,SAAS,CAAC,OAAO,EAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE;IAPpD,SAAS,CAAC,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;IAEjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmC;gBAG7C,gBAAgB,EAAE,MAAM,EACjC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAO;IAiBzD,OAAO,CAAC,eAAe;IAIjB,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC;IAgB/C,aAAa,IAAI,MAAM,IAAI;IAyBrB,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IAM1C,aAAa,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAKzC,wBAAwB,CAC5B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,eAAe,GACrD,OAAO,CAAC,IAAI,CAAC;IAiBV,cAAc,CAClB,MAAM,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,YAAY,GAC/C,OAAO,CAAC,IAAI,CAAC;CAKjB"}
1
+ {"version":3,"file":"sync-metadata-controller.d.ts","sourceRoot":"","sources":["../../src/sync/sync-metadata-controller.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAEL,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AASxE;;;GAGG;AACH,qBAAa,sBAAuB,SAAQ,iBAAiB,CAAC;IAC5D,CAAC,uBAAuB,CAAC,EAAE,YAAY,CAAC;CACzC,CAAC;IAME,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM;IAC3C,SAAS,CAAC,MAAM,EAAE,MAAM;IACxB,SAAS,CAAC,OAAO,EAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAE;IAPpD,SAAS,CAAC,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;IAEjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmC;gBAG7C,gBAAgB,EAAE,MAAM,EACjC,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAO;IAiBzD,OAAO,CAAC,eAAe;IAIjB,gBAAgB,IAAI,OAAO,CAAC,YAAY,CAAC;IAgB/C,aAAa,IAAI,MAAM,IAAI;IAyBrB,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IAM1C,aAAa,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI;IAKzC,wBAAwB,CAC5B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,CAAC,QAAQ,EAAE,eAAe,KAAK,eAAe,GACrD,OAAO,CAAC,IAAI,CAAC;IAiBV,cAAc,CAClB,MAAM,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,YAAY,GAC/C,OAAO,CAAC,IAAI,CAAC;CAKjB"}
@@ -3,7 +3,7 @@ import { watch } from 'chokidar';
3
3
  import { isEqual, throttle } from 'es-toolkit';
4
4
  import path from 'node:path';
5
5
  import { readSyncMetadata, SYNC_METADATA_PATH, writeSyncMetadata, } from './sync-metadata-service.js';
6
- import { INITIAL_SYNC_METADATA, } from './sync-metadata.js';
6
+ import { INITIAL_SYNC_METADATA } from './sync-metadata.js';
7
7
  /**
8
8
  * Controller for getting updates about the latest sync metadata.
9
9
  * Uses throttling to coalesce multiple write calls into a single save.
@@ -1 +1 @@
1
- {"version":3,"file":"sync-metadata-controller.js","sourceRoot":"","sources":["../../src/sync/sync-metadata-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-metadata-controller.js","sourceRoot":"","sources":["../../src/sync/sync-metadata-controller.ts"],"names":[],"mappings":"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"}
@@ -239,6 +239,7 @@ export declare const syncMetadataSchema: z.ZodObject<{
239
239
  globalErrors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
240
240
  startedAt: z.ZodOptional<z.ZodString>;
241
241
  completedAt: z.ZodOptional<z.ZodString>;
242
+ cliFilePath: z.ZodOptional<z.ZodString>;
242
243
  packages: z.ZodRecord<z.ZodString, z.ZodObject<{
243
244
  name: z.ZodString;
244
245
  path: z.ZodString;
@@ -406,6 +407,7 @@ export declare const syncMetadataSchema: z.ZodObject<{
406
407
  completedAt?: string | undefined;
407
408
  globalErrors?: string[] | undefined;
408
409
  startedAt?: string | undefined;
410
+ cliFilePath?: string | undefined;
409
411
  }, {
410
412
  status: "in-progress" | "success" | "cancelled" | "not-started" | "error";
411
413
  packages: Record<string, {
@@ -437,6 +439,7 @@ export declare const syncMetadataSchema: z.ZodObject<{
437
439
  completedAt?: string | undefined;
438
440
  globalErrors?: string[] | undefined;
439
441
  startedAt?: string | undefined;
442
+ cliFilePath?: string | undefined;
440
443
  }>;
441
444
  export type SyncMetadata = z.output<typeof syncMetadataSchema>;
442
445
  export declare const INITIAL_SYNC_METADATA: SyncMetadata;
@@ -1 +1 @@
1
- {"version":3,"file":"sync-metadata.d.ts","sourceRoot":"","sources":["../../src/sync/sync-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,uBAAuB,iHAe3B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,QAAA,MAAM,sBAAsB;;;;;;;;;;;;EAW1B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,gBAAgB,4EAW3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAM7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE/D,eAAO,MAAM,qBAAqB,EAAE,YAGnC,CAAC"}
1
+ {"version":3,"file":"sync-metadata.d.ts","sourceRoot":"","sources":["../../src/sync/sync-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,QAAA,MAAM,uBAAuB,iHAe3B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,QAAA,MAAM,sBAAsB;;;;;;;;;;;;EAW1B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE,eAAO,MAAM,gBAAgB,4EAW3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAO7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE/D,eAAO,MAAM,qBAAqB,EAAE,YAGnC,CAAC"}
@@ -71,6 +71,7 @@ export const syncMetadataSchema = z.object({
71
71
  globalErrors: z.array(z.string()).optional(),
72
72
  startedAt: z.string().optional(),
73
73
  completedAt: z.string().optional(),
74
+ cliFilePath: z.string().optional(),
74
75
  packages: z.record(z.string(), packageSyncInfoSchema),
75
76
  });
76
77
  export const INITIAL_SYNC_METADATA = {
@@ -1 +1 @@
1
- {"version":3,"file":"sync-metadata.js","sourceRoot":"","sources":["../../src/sync/sync-metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-metadata.js","sourceRoot":"","sources":["../../src/sync/sync-metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { PluginMetadataWithPaths } from '@baseplate-dev/project-builder-lib';
2
+ import type { Logger } from '@baseplate-dev/sync';
3
+ /**
4
+ * Options for the delete-template command
5
+ */
6
+ interface DeleteTemplateOptions {
7
+ /**
8
+ * The default plugins to use
9
+ */
10
+ defaultPlugins: PluginMetadataWithPaths[];
11
+ /**
12
+ * The directory to search for generators
13
+ */
14
+ directory?: string;
15
+ /**
16
+ * The logger to use
17
+ */
18
+ logger: Logger;
19
+ }
20
+ /**
21
+ * Deletes a template from a generator extractor.json file
22
+ */
23
+ export declare function deleteTemplate(generatorName: string, templateName: string, options: DeleteTemplateOptions): Promise<void>;
24
+ export {};
25
+ //# sourceMappingURL=delete-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-template.d.ts","sourceRoot":"","sources":["../../src/template-extractor/delete-template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAalD;;GAEG;AACH,UAAU,qBAAqB;IAC7B;;OAEG;IACH,cAAc,EAAE,uBAAuB,EAAE,CAAC;IAC1C;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CA0Df"}
@@ -0,0 +1,36 @@
1
+ import { extractorConfigSchema, parseGeneratorName } from '@baseplate-dev/sync';
2
+ import { stringifyPrettyCompact } from '@baseplate-dev/utils';
3
+ import { handleFileNotFoundError, readJsonWithSchema, } from '@baseplate-dev/utils/node';
4
+ import fs from 'node:fs/promises';
5
+ import path from 'node:path';
6
+ import { discoverGenerators } from './discover-generators.js';
7
+ /**
8
+ * Deletes a template from a generator extractor.json file
9
+ */
10
+ export async function deleteTemplate(generatorName, templateName, options) {
11
+ const generators = await discoverGenerators(options.directory, options.defaultPlugins, options.logger);
12
+ // Pull the generator config
13
+ const generator = generators.find((g) => {
14
+ const parsedGeneratorName = parseGeneratorName(g.name);
15
+ return (g.name === generatorName ||
16
+ parsedGeneratorName.generatorPath === generatorName);
17
+ });
18
+ if (!generator) {
19
+ throw new Error(`Generator '${generatorName}' not found`);
20
+ }
21
+ const extractorJsonPath = path.join(generator.generatorDirectory, 'extractor.json');
22
+ const templateExtractorJson = await readJsonWithSchema(extractorJsonPath, extractorConfigSchema);
23
+ const templatePath = Object.keys(templateExtractorJson.templates).find((templatePath) => generator.templates[templatePath].name === templateName);
24
+ if (!templatePath) {
25
+ throw new Error(`Template '${templateName}' not found in generator '${generatorName}'`);
26
+ }
27
+ const updatedTemplates = templateExtractorJson.templates;
28
+ // eslint-disable-next-line @typescript-eslint/no-dynamic-delete -- easiest way of deleting without reordering the keys
29
+ delete updatedTemplates[templatePath];
30
+ // Write the updated configuration back to the extractor.json file
31
+ await fs.writeFile(extractorJsonPath, stringifyPrettyCompact(templateExtractorJson), 'utf8');
32
+ // Clean up the actual template file if it exists
33
+ const templateFilePath = path.join(generator.generatorDirectory, 'templates', templatePath);
34
+ await fs.unlink(templateFilePath).catch(handleFileNotFoundError);
35
+ }
36
+ //# sourceMappingURL=delete-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-template.js","sourceRoot":"","sources":["../../src/template-extractor/delete-template.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EACL,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAoB9D;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,aAAqB,EACrB,YAAoB,EACpB,OAA8B;IAE9B,MAAM,UAAU,GAAG,MAAM,kBAAkB,CACzC,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,MAAM,CACf,CAAC;IAEF,4BAA4B;IAC5B,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACtC,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACvD,OAAO,CACL,CAAC,CAAC,IAAI,KAAK,aAAa;YACxB,mBAAmB,CAAC,aAAa,KAAK,aAAa,CACpD,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,cAAc,aAAa,aAAa,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CACjC,SAAS,CAAC,kBAAkB,EAC5B,gBAAgB,CACjB,CAAC;IAEF,MAAM,qBAAqB,GAAG,MAAM,kBAAkB,CACpD,iBAAiB,EACjB,qBAAqB,CACtB,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,IAAI,CACpE,CAAC,YAAY,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,IAAI,KAAK,YAAY,CAC1E,CAAC;IAEF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CACb,aAAa,YAAY,6BAA6B,aAAa,GAAG,CACvE,CAAC;IACJ,CAAC;IAED,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,SAAS,CAAC;IACzD,uHAAuH;IACvH,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAEtC,kEAAkE;IAElE,MAAM,EAAE,CAAC,SAAS,CAChB,iBAAiB,EACjB,sBAAsB,CAAC,qBAAqB,CAAC,EAC7C,MAAM,CACP,CAAC;IAEF,iDAAiD;IACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAChC,SAAS,CAAC,kBAAkB,EAC5B,WAAW,EACX,YAAY,CACb,CAAC;IACF,MAAM,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;AACnE,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { PluginMetadataWithPaths } from '@baseplate-dev/project-builder-lib';
2
+ import type { Logger, TemplateConfig } from '@baseplate-dev/sync';
3
+ export interface GeneratorInfo {
4
+ name: string;
5
+ packageName: string;
6
+ packagePath: string;
7
+ generatorDirectory: string;
8
+ templates: Record<string, TemplateConfig>;
9
+ templateCount: number;
10
+ }
11
+ /**
12
+ * Build a map of generator package names to their file system paths
13
+ */
14
+ export declare function buildGeneratorPackageMap(availablePlugins: PluginMetadataWithPaths[]): Promise<Map<string, string>>;
15
+ /**
16
+ * Discover all available generators with extractor.json files
17
+ */
18
+ export declare function discoverGenerators(directory: string | undefined, defaultPlugins: PluginMetadataWithPaths[], logger: Logger): Promise<GeneratorInfo[]>;
19
+ //# sourceMappingURL=discover-generators.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-generators.d.ts","sourceRoot":"","sources":["../../src/template-extractor/discover-generators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAelE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC1C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,gBAAgB,EAAE,uBAAuB,EAAE,GAC1C,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA8B9B;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,oBAAM,EACf,cAAc,EAAE,uBAAuB,EAAE,EACzC,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,EAAE,CAAC,CAyB1B"}
@@ -0,0 +1,63 @@
1
+ import { indexTemplateConfigs } from '@baseplate-dev/sync';
2
+ import { findNearestPackageJson } from '@baseplate-dev/utils/node';
3
+ import path from 'node:path';
4
+ import { fileURLToPath } from 'node:url';
5
+ import { discoverPlugins } from '#src/plugins/plugin-discovery.js';
6
+ const GENERATOR_PACKAGES = [
7
+ '@baseplate-dev/core-generators',
8
+ '@baseplate-dev/fastify-generators',
9
+ '@baseplate-dev/react-generators',
10
+ ];
11
+ /**
12
+ * Build a map of generator package names to their file system paths
13
+ */
14
+ export async function buildGeneratorPackageMap(availablePlugins) {
15
+ const generatorPackageMap = new Map();
16
+ for (const plugin of availablePlugins) {
17
+ const nearestPackageJsonPath = await findNearestPackageJson({
18
+ cwd: plugin.pluginDirectory,
19
+ stopAtNodeModules: true,
20
+ });
21
+ if (!nearestPackageJsonPath) {
22
+ throw new Error(`Could not find package.json for ${plugin.packageName}`);
23
+ }
24
+ generatorPackageMap.set(plugin.packageName, path.dirname(nearestPackageJsonPath));
25
+ }
26
+ // Attach built-in generator packages
27
+ for (const packageName of GENERATOR_PACKAGES) {
28
+ const nearestPackageJsonPath = await findNearestPackageJson({
29
+ cwd: path.dirname(fileURLToPath(import.meta.resolve(packageName))),
30
+ stopAtNodeModules: true,
31
+ });
32
+ if (!nearestPackageJsonPath) {
33
+ throw new Error(`Could not find package.json for ${packageName}`);
34
+ }
35
+ generatorPackageMap.set(packageName, path.dirname(nearestPackageJsonPath));
36
+ }
37
+ return generatorPackageMap;
38
+ }
39
+ /**
40
+ * Discover all available generators with extractor.json files
41
+ */
42
+ export async function discoverGenerators(directory = '.', defaultPlugins, logger) {
43
+ const availablePlugins = await discoverPlugins(directory, logger);
44
+ const generatorPackageMap = await buildGeneratorPackageMap([
45
+ ...defaultPlugins,
46
+ ...availablePlugins,
47
+ ]);
48
+ // Index all template configs using the unified utility
49
+ const { extractorEntries } = await indexTemplateConfigs(generatorPackageMap);
50
+ // Convert to GeneratorInfo format
51
+ const generators = extractorEntries.map((entry) => ({
52
+ name: entry.generatorName,
53
+ packageName: entry.packageName,
54
+ packagePath: entry.packagePath,
55
+ generatorDirectory: entry.generatorDirectory,
56
+ templates: entry.config.templates,
57
+ templateCount: Object.keys(entry.config.templates).length,
58
+ }));
59
+ // Sort generators by name for consistent output
60
+ generators.sort((a, b) => a.name.localeCompare(b.name));
61
+ return generators;
62
+ }
63
+ //# sourceMappingURL=discover-generators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-generators.js","sourceRoot":"","sources":["../../src/template-extractor/discover-generators.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,MAAM,kBAAkB,GAAG;IACzB,gCAAgC;IAChC,mCAAmC;IACnC,iCAAiC;CAClC,CAAC;AAWF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,gBAA2C;IAE3C,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEtD,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,sBAAsB,GAAG,MAAM,sBAAsB,CAAC;YAC1D,GAAG,EAAE,MAAM,CAAC,eAAe;YAC3B,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,mBAAmB,CAAC,GAAG,CACrB,MAAM,CAAC,WAAW,EAClB,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CACrC,CAAC;IACJ,CAAC;IAED,qCAAqC;IACrC,KAAK,MAAM,WAAW,IAAI,kBAAkB,EAAE,CAAC;QAC7C,MAAM,sBAAsB,GAAG,MAAM,sBAAsB,CAAC;YAC1D,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;YAClE,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,mCAAmC,WAAW,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,mBAAmB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAS,GAAG,GAAG,EACf,cAAyC,EACzC,MAAc;IAEd,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAElE,MAAM,mBAAmB,GAAG,MAAM,wBAAwB,CAAC;QACzD,GAAG,cAAc;QACjB,GAAG,gBAAgB;KACpB,CAAC,CAAC;IAEH,uDAAuD;IACvD,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;IAE7E,kCAAkC;IAClC,MAAM,UAAU,GAAoB,gBAAgB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACnE,IAAI,EAAE,KAAK,CAAC,aAAa;QACzB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;QACjC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM;KAC1D,CAAC,CAAC,CAAC;IAEJ,gDAAgD;IAChD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAExD,OAAO,UAAU,CAAC;AACpB,CAAC"}
@@ -1,2 +1,4 @@
1
+ export * from './delete-template.js';
2
+ export * from './discover-generators.js';
1
3
  export * from './run-template-extractor.js';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/template-extractor/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/template-extractor/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC"}
@@ -1,2 +1,4 @@
1
+ export * from './delete-template.js';
2
+ export * from './discover-generators.js';
1
3
  export * from './run-template-extractor.js';
2
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/template-extractor/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/template-extractor/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,6BAA6B,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { SchemaParserContext } from '@baseplate-dev/project-builder-lib';
2
- import type { Logger } from '@baseplate-dev/sync';
3
- export declare function runTemplateExtractorsForProject(directory: string, app: string, context: SchemaParserContext, logger: Logger): Promise<void>;
1
+ import type { PluginMetadataWithPaths } from '@baseplate-dev/project-builder-lib';
2
+ import type { Logger, RunTemplateFileExtractorsOptions } from '@baseplate-dev/sync';
3
+ export declare function runTemplateExtractorsForProject(directory: string, app: string, defaultPlugins: PluginMetadataWithPaths[], logger: Logger, options?: RunTemplateFileExtractorsOptions): Promise<void>;
4
4
  //# sourceMappingURL=run-template-extractor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-template-extractor.d.ts","sourceRoot":"","sources":["../../src/template-extractor/run-template-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,KAAK,EAAE,MAAM,EAAgC,MAAM,qBAAqB,CAAC;AA0DhF,wBAAsB,+BAA+B,CACnD,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,EAC5B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CA+Bf"}
1
+ {"version":3,"file":"run-template-extractor.d.ts","sourceRoot":"","sources":["../../src/template-extractor/run-template-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EACV,MAAM,EACN,gCAAgC,EACjC,MAAM,qBAAqB,CAAC;AAqB7B,wBAAsB,+BAA+B,CACnD,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,uBAAuB,EAAE,EACzC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,IAAI,CAAC,CA2Cf"}
@@ -1,60 +1,37 @@
1
- import { TsTemplateFileExtractor } from '@baseplate-dev/core-generators';
2
- import { RawTemplateFileExtractor, runTemplateFileExtractors, TextTemplateFileExtractor, } from '@baseplate-dev/sync';
3
- import { findNearestPackageJson } from '@baseplate-dev/utils/node';
4
- import { globby } from 'globby';
5
- import path from 'node:path';
6
- import { fileURLToPath } from 'node:url';
7
- const GENERATOR_PACKAGES = [
8
- '@baseplate-dev/core-generators',
9
- '@baseplate-dev/fastify-generators',
10
- '@baseplate-dev/react-generators',
1
+ import { RawTemplateFileExtractor, TextTemplateFileExtractor, TsTemplateFileExtractor, } from '@baseplate-dev/core-generators/extractors';
2
+ import { runTemplateFileExtractors } from '@baseplate-dev/sync';
3
+ import { discoverPlugins } from '#src/plugins/plugin-discovery.js';
4
+ import { getPreviousGeneratedFileIdMap } from '#src/sync/file-id-map.js';
5
+ import { readSyncMetadata } from '#src/sync/sync-metadata-service.js';
6
+ import { buildGeneratorPackageMap } from './discover-generators.js';
7
+ const TEMPLATE_EXTRACTORS = [
8
+ RawTemplateFileExtractor,
9
+ TextTemplateFileExtractor,
10
+ TsTemplateFileExtractor,
11
11
  ];
12
- const TEMPLATE_FILE_EXTRACTOR_CREATORS = [
13
- (context) => new TextTemplateFileExtractor(context),
14
- (context) => new RawTemplateFileExtractor(context),
15
- (context) => new TsTemplateFileExtractor(context),
16
- ];
17
- async function buildGeneratorPackageMap(context) {
18
- const generatorPackageMap = new Map();
19
- for (const plugin of context.pluginStore.availablePlugins) {
20
- const nearestPackageJsonPath = await findNearestPackageJson({
21
- cwd: plugin.metadata.pluginDirectory,
22
- stopAtNodeModules: true,
23
- });
24
- if (!nearestPackageJsonPath) {
25
- throw new Error(`Could not find package.json for ${plugin.metadata.packageName}`);
26
- }
27
- generatorPackageMap.set(plugin.metadata.packageName, path.dirname(nearestPackageJsonPath));
28
- }
29
- // attach generator packages
30
- for (const packageName of GENERATOR_PACKAGES) {
31
- const nearestPackageJsonPath = await findNearestPackageJson({
32
- cwd: path.dirname(fileURLToPath(import.meta.resolve(packageName))),
33
- stopAtNodeModules: true,
34
- });
35
- if (!nearestPackageJsonPath) {
36
- throw new Error(`Could not find package.json for ${packageName}`);
37
- }
38
- generatorPackageMap.set(packageName, path.dirname(nearestPackageJsonPath));
12
+ export async function runTemplateExtractorsForProject(directory, app, defaultPlugins, logger, options) {
13
+ const availablePlugins = await discoverPlugins(directory, logger);
14
+ const syncMetadata = await readSyncMetadata(directory);
15
+ if (syncMetadata.status === 'not-started' ||
16
+ Object.keys(syncMetadata.packages).length === 0) {
17
+ throw new Error(`No sync metadata found for ${directory}. Please run the sync command first.`);
39
18
  }
40
- return generatorPackageMap;
41
- }
42
- export async function runTemplateExtractorsForProject(directory, app, context, logger) {
43
- // find all .generator-info.json files in the project
44
- const generatorInfoFiles = await globby(path.join(directory, '**', '.generator-info.json'), { onlyFiles: true, absolute: true });
45
- const generatorPackageMap = await buildGeneratorPackageMap(context);
19
+ const generatorPackageMap = await buildGeneratorPackageMap([
20
+ ...defaultPlugins,
21
+ ...availablePlugins,
22
+ ]);
46
23
  logger.info(`Running template extractors for ${directory}${app ? ` for app ${app}` : ''}...`);
47
- const appDirectories = generatorInfoFiles
48
- .map((generatorInfoPath) => path.dirname(generatorInfoPath))
49
- .filter((appDirectory) => {
50
- if (app) {
51
- return path.basename(appDirectory).includes(app);
52
- }
53
- return true;
54
- });
24
+ const appDirectories = Object.values(syncMetadata.packages)
25
+ .filter((packageInfo) => packageInfo.name.includes(app))
26
+ .map((packageInfo) => packageInfo.path);
27
+ if (appDirectories.length === 0) {
28
+ throw new Error(`No app directories found for ${app}`);
29
+ }
55
30
  if (appDirectories.length > 1) {
56
31
  throw new Error(`Found multiple app directories for ${app}: ${appDirectories.join(', ')}`);
57
32
  }
58
- await runTemplateFileExtractors(TEMPLATE_FILE_EXTRACTOR_CREATORS, appDirectories[0], generatorPackageMap, logger);
33
+ const fileIdMap = await getPreviousGeneratedFileIdMap(appDirectories[0]);
34
+ await runTemplateFileExtractors(TEMPLATE_EXTRACTORS, appDirectories[0], generatorPackageMap, logger, fileIdMap, options);
35
+ logger.info('Template extraction complete!');
59
36
  }
60
37
  //# sourceMappingURL=run-template-extractor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"run-template-extractor.js","sourceRoot":"","sources":["../../src/template-extractor/run-template-extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-template-extractor.js","sourceRoot":"","sources":["../../src/template-extractor/run-template-extractor.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,GACxB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,mBAAmB,GAAG;IAC1B,wBAAwB;IACxB,yBAAyB;IACzB,uBAAuB;CACxB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,SAAiB,EACjB,GAAW,EACX,cAAyC,EACzC,MAAc,EACd,OAA0C;IAE1C,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAClE,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAEvD,IACE,YAAY,CAAC,MAAM,KAAK,aAAa;QACrC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,EAC/C,CAAC;QACD,MAAM,IAAI,KAAK,CACb,8BAA8B,SAAS,sCAAsC,CAC9E,CAAC;IACJ,CAAC;IAED,MAAM,mBAAmB,GAAG,MAAM,wBAAwB,CAAC;QACzD,GAAG,cAAc;QACjB,GAAG,gBAAgB;KACpB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CACT,mCAAmC,SAAS,GAC1C,GAAG,CAAC,CAAC,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC,CAAC,EAC5B,KAAK,CACN,CAAC;IACF,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC;SACxD,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;SACvD,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,gCAAgC,GAAG,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,sCAAsC,GAAG,KAAK,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC1E,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,6BAA6B,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,MAAM,yBAAyB,CAC7B,mBAAmB,EACnB,cAAc,CAAC,CAAC,CAAC,EACjB,mBAAmB,EACnB,MAAM,EACN,SAAS,EACT,OAAO,CACR,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;AAC/C,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,14 @@
1
1
  {
2
2
  "name": "@baseplate-dev/project-builder-server",
3
- "version": "0.1.3",
3
+ "version": "0.2.1",
4
4
  "description": "Server for Project Builder using Baseplate generators",
5
+ "keywords": [
6
+ "backend",
7
+ "baseplate",
8
+ "full-stack",
9
+ "typescript",
10
+ "code-generation"
11
+ ],
5
12
  "homepage": "https://www.baseplate.dev",
6
13
  "repository": {
7
14
  "type": "git",
@@ -16,7 +23,9 @@
16
23
  "#src/*": "./dist/*"
17
24
  },
18
25
  "exports": {
19
- ".": "./dist/index.js"
26
+ ".": "./dist/index.js",
27
+ "./template-extractor": "./dist/template-extractor/index.js",
28
+ "./plugins": "./dist/plugins/index.js"
20
29
  },
21
30
  "main": "dist/index.js",
22
31
  "files": [
@@ -40,19 +49,18 @@
40
49
  "fastify": "5.3.2",
41
50
  "fastify-plugin": "5.0.1",
42
51
  "fastify-type-provider-zod": "4.0.1",
43
- "globby": "^14.0.2",
44
52
  "immer": "10.1.1",
45
53
  "inflection": "3.0.0",
46
54
  "mime": "^4.0.3",
47
55
  "open": "10.1.0",
48
56
  "pino": "9.5.0",
49
57
  "zod": "3.24.1",
50
- "@baseplate-dev/core-generators": "0.1.3",
51
- "@baseplate-dev/fastify-generators": "0.1.3",
52
- "@baseplate-dev/project-builder-lib": "0.1.3",
53
- "@baseplate-dev/react-generators": "0.1.3",
54
- "@baseplate-dev/sync": "0.1.3",
55
- "@baseplate-dev/utils": "0.1.3"
58
+ "@baseplate-dev/core-generators": "0.2.1",
59
+ "@baseplate-dev/fastify-generators": "0.2.1",
60
+ "@baseplate-dev/project-builder-lib": "0.2.1",
61
+ "@baseplate-dev/react-generators": "0.2.1",
62
+ "@baseplate-dev/sync": "0.2.1",
63
+ "@baseplate-dev/utils": "0.2.1"
56
64
  },
57
65
  "devDependencies": {
58
66
  "@types/node": "^22.0.0",
@@ -61,7 +69,7 @@
61
69
  "prettier": "3.5.3",
62
70
  "typescript": "5.7.3",
63
71
  "vitest": "3.0.7",
64
- "@baseplate-dev/tools": "0.1.3"
72
+ "@baseplate-dev/tools": "0.2.1"
65
73
  },
66
74
  "engines": {
67
75
  "node": "^22.0.0"