@baseplate-dev/project-builder-server 0.2.6 → 0.3.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.
- package/dist/api/index.d.ts +3 -3
- package/dist/api/sync.d.ts +3 -3
- package/dist/compiler/app-entry-builder.d.ts.map +1 -1
- package/dist/compiler/app-entry-builder.js +3 -5
- package/dist/compiler/app-entry-builder.js.map +1 -1
- package/dist/compiler/web/index.d.ts.map +1 -1
- package/dist/compiler/web/index.js +2 -1
- package/dist/compiler/web/index.js.map +1 -1
- package/dist/diff/diff-project.d.ts.map +1 -1
- package/dist/diff/diff-project.js +22 -5
- package/dist/diff/diff-project.js.map +1 -1
- package/dist/diff/diff-utils.d.ts +7 -3
- package/dist/diff/diff-utils.d.ts.map +1 -1
- package/dist/diff/diff-utils.js +80 -22
- package/dist/diff/diff-utils.js.map +1 -1
- package/dist/diff/index.d.ts +1 -0
- package/dist/diff/index.d.ts.map +1 -1
- package/dist/diff/index.js +1 -0
- package/dist/diff/index.js.map +1 -1
- package/dist/diff/snapshot/apply-diff-to-file-contents.d.ts +3 -0
- package/dist/diff/snapshot/apply-diff-to-file-contents.d.ts.map +1 -0
- package/dist/diff/snapshot/apply-diff-to-file-contents.js +26 -0
- package/dist/diff/snapshot/apply-diff-to-file-contents.js.map +1 -0
- package/dist/diff/snapshot/apply-diff-to-generator-output.d.ts +4 -0
- package/dist/diff/snapshot/apply-diff-to-generator-output.d.ts.map +1 -0
- package/dist/diff/snapshot/apply-diff-to-generator-output.js +28 -0
- package/dist/diff/snapshot/apply-diff-to-generator-output.js.map +1 -0
- package/dist/diff/snapshot/create-snapshot-for-project.d.ts +41 -0
- package/dist/diff/snapshot/create-snapshot-for-project.d.ts.map +1 -0
- package/dist/diff/snapshot/create-snapshot-for-project.js +48 -0
- package/dist/diff/snapshot/create-snapshot-for-project.js.map +1 -0
- package/dist/diff/snapshot/index.d.ts +6 -0
- package/dist/diff/snapshot/index.d.ts.map +1 -0
- package/dist/diff/snapshot/index.js +5 -0
- package/dist/diff/snapshot/index.js.map +1 -0
- package/dist/diff/snapshot/save-snapshot.d.ts +25 -0
- package/dist/diff/snapshot/save-snapshot.d.ts.map +1 -0
- package/dist/diff/snapshot/save-snapshot.js +55 -0
- package/dist/diff/snapshot/save-snapshot.js.map +1 -0
- package/dist/diff/snapshot/snapshot-diff-utils.d.ts +7 -0
- package/dist/diff/snapshot/snapshot-diff-utils.d.ts.map +1 -0
- package/dist/diff/snapshot/snapshot-diff-utils.js +20 -0
- package/dist/diff/snapshot/snapshot-diff-utils.js.map +1 -0
- package/dist/diff/snapshot/snapshot-management.d.ts +31 -0
- package/dist/diff/snapshot/snapshot-management.d.ts.map +1 -0
- package/dist/diff/snapshot/snapshot-management.js +154 -0
- package/dist/diff/snapshot/snapshot-management.js.map +1 -0
- package/dist/diff/snapshot/snapshot-manifest.d.ts +40 -0
- package/dist/diff/snapshot/snapshot-manifest.d.ts.map +1 -0
- package/dist/diff/snapshot/snapshot-manifest.js +113 -0
- package/dist/diff/snapshot/snapshot-manifest.js.map +1 -0
- package/dist/diff/snapshot/snapshot-types.d.ts +165 -0
- package/dist/diff/snapshot/snapshot-types.d.ts.map +1 -0
- package/dist/diff/snapshot/snapshot-types.js +23 -0
- package/dist/diff/snapshot/snapshot-types.js.map +1 -0
- package/dist/diff/snapshot/snapshot-utils.d.ts +20 -0
- package/dist/diff/snapshot/snapshot-utils.d.ts.map +1 -0
- package/dist/diff/snapshot/snapshot-utils.js +51 -0
- package/dist/diff/snapshot/snapshot-utils.js.map +1 -0
- package/dist/diff/types.d.ts +38 -6
- package/dist/diff/types.d.ts.map +1 -1
- package/dist/project-definition/get-single-app-directory-for-project.d.ts +11 -0
- package/dist/project-definition/get-single-app-directory-for-project.d.ts.map +1 -0
- package/dist/project-definition/get-single-app-directory-for-project.js +18 -0
- package/dist/project-definition/get-single-app-directory-for-project.js.map +1 -0
- package/dist/project-definition/index.d.ts +2 -0
- package/dist/project-definition/index.d.ts.map +1 -0
- package/dist/project-definition/index.js +2 -0
- package/dist/project-definition/index.js.map +1 -0
- package/dist/project-definition/load-project-definition.d.ts +12 -0
- package/dist/project-definition/load-project-definition.d.ts.map +1 -0
- package/dist/project-definition/load-project-definition.js +34 -0
- package/dist/project-definition/load-project-definition.js.map +1 -0
- package/dist/server/plugin.js +6 -6
- package/dist/server/plugin.js.map +1 -1
- package/dist/sync/generate-for-directory.d.ts +5 -14
- package/dist/sync/generate-for-directory.d.ts.map +1 -1
- package/dist/sync/generate-for-directory.js +37 -30
- package/dist/sync/generate-for-directory.js.map +1 -1
- package/dist/sync/get-previous-generated-payload.d.ts +9 -0
- package/dist/sync/get-previous-generated-payload.d.ts.map +1 -0
- package/dist/sync/get-previous-generated-payload.js +23 -0
- package/dist/sync/get-previous-generated-payload.js.map +1 -0
- package/dist/sync/sync-project.d.ts +7 -3
- package/dist/sync/sync-project.d.ts.map +1 -1
- package/dist/sync/sync-project.js +5 -29
- package/dist/sync/sync-project.js.map +1 -1
- package/dist/sync/types.d.ts +14 -0
- package/dist/sync/types.d.ts.map +1 -0
- package/dist/sync/types.js +15 -0
- package/dist/sync/types.js.map +1 -0
- package/package.json +12 -11
|
@@ -1,36 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CancelledSyncError, loadIgnorePatterns } from '@baseplate-dev/sync';
|
|
2
2
|
import { randomKey } from '@baseplate-dev/utils';
|
|
3
|
-
import { dirExists } from '@baseplate-dev/utils/node';
|
|
4
3
|
import chalk from 'chalk';
|
|
5
4
|
import { mkdir, rename, rm } from 'node:fs/promises';
|
|
6
5
|
import path from 'node:path';
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
writeMetadata: async (_project, output, projectDirectory) => {
|
|
15
|
-
await deleteMetadataFiles(projectDirectory);
|
|
16
|
-
await writeTemplateInfoFiles(output.files, projectDirectory);
|
|
17
|
-
},
|
|
18
|
-
writeGeneratorSteps,
|
|
19
|
-
};
|
|
20
|
-
const GENERATED_DIRECTORY = 'baseplate/generated';
|
|
21
|
-
async function getPreviousGeneratedPayload(projectDirectory) {
|
|
22
|
-
const generatedDirectory = path.join(projectDirectory, GENERATED_DIRECTORY);
|
|
23
|
-
const generatedDirectoryExists = await dirExists(generatedDirectory);
|
|
24
|
-
if (!generatedDirectoryExists) {
|
|
25
|
-
return undefined;
|
|
26
|
-
}
|
|
27
|
-
const fileIdMap = await getPreviousGeneratedFileIdMap(projectDirectory);
|
|
28
|
-
return {
|
|
29
|
-
fileReader: createCodebaseFileReaderFromDirectory(generatedDirectory),
|
|
30
|
-
fileIdToRelativePathMap: fileIdMap,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
export async function generateForDirectory({ baseDirectory, appEntry, logger, writeTemplateMetadataOptions, userConfig, previousPackageSyncResult, operations = defaultGeneratorOperations, abortSignal, skipCommands, forceOverwrite, }) {
|
|
6
|
+
import { applySnapshotToFileContents } from '#src/diff/index.js';
|
|
7
|
+
import { loadSnapshotManifest } from '../diff/snapshot/snapshot-manifest.js';
|
|
8
|
+
import { resolveSnapshotDirectory } from '../diff/snapshot/snapshot-utils.js';
|
|
9
|
+
import { writeGeneratedFileIdMap } from './file-id-map.js';
|
|
10
|
+
import { GENERATED_DIRECTORY } from './get-previous-generated-payload.js';
|
|
11
|
+
import { DEFAULT_GENERATOR_OPERATIONS } from './types.js';
|
|
12
|
+
export async function generateForDirectory({ baseDirectory, appEntry, logger, writeTemplateMetadataOptions, userConfig, previousPackageSyncResult, operations = DEFAULT_GENERATOR_OPERATIONS, abortSignal, skipCommands, overwrite, snapshotDirectory, }) {
|
|
34
13
|
const { appDirectory, name, generatorBundle } = appEntry;
|
|
35
14
|
const projectDirectory = path.join(baseDirectory, appDirectory);
|
|
36
15
|
logger.info(`Generating project ${name} in ${projectDirectory}...`);
|
|
@@ -40,6 +19,10 @@ export async function generateForDirectory({ baseDirectory, appEntry, logger, wr
|
|
|
40
19
|
});
|
|
41
20
|
if (abortSignal?.aborted)
|
|
42
21
|
throw new CancelledSyncError();
|
|
22
|
+
const resolvedSnapshotDirectory = resolveSnapshotDirectory(projectDirectory, {
|
|
23
|
+
snapshotDir: snapshotDirectory,
|
|
24
|
+
});
|
|
25
|
+
const snapshot = await loadSnapshotManifest(resolvedSnapshotDirectory);
|
|
43
26
|
logger.info('Project built! Writing output....');
|
|
44
27
|
// load clean directory contents
|
|
45
28
|
const previousGeneratedPayload = await operations.getPreviousGeneratedPayload(projectDirectory);
|
|
@@ -48,6 +31,30 @@ export async function generateForDirectory({ baseDirectory, appEntry, logger, wr
|
|
|
48
31
|
}
|
|
49
32
|
const generatedTemporaryDirectory = path.join(projectDirectory, 'baseplate/build/generated_tmp');
|
|
50
33
|
await mkdir(generatedTemporaryDirectory, { recursive: true });
|
|
34
|
+
const ignorePatterns = await loadIgnorePatterns(projectDirectory).catch((error) => {
|
|
35
|
+
logger.warn(`Failed to load .baseplateignore patterns, proceeding without ignore filtering: ${String(error)}`);
|
|
36
|
+
return undefined;
|
|
37
|
+
});
|
|
38
|
+
if (overwrite && snapshot) {
|
|
39
|
+
logger.info(`Applying snapshot to generator output for ${name}...`);
|
|
40
|
+
}
|
|
41
|
+
const overwriteOptions = {
|
|
42
|
+
enabled: !!overwrite,
|
|
43
|
+
applyDiff: snapshot &&
|
|
44
|
+
(async (relativePath, generatedContents) => {
|
|
45
|
+
const result = await applySnapshotToFileContents(relativePath, generatedContents, snapshot, resolvedSnapshotDirectory.diffsPath);
|
|
46
|
+
if (result === false) {
|
|
47
|
+
logger.warn(`Snapshot for ${relativePath} was not applied because the patch was invalid. Please verify the new output and run snapshot add once the changes have been verified.`);
|
|
48
|
+
}
|
|
49
|
+
return result;
|
|
50
|
+
}),
|
|
51
|
+
skipFile: (relativePath) => {
|
|
52
|
+
if (!ignorePatterns) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
return ignorePatterns.ignores(relativePath);
|
|
56
|
+
},
|
|
57
|
+
};
|
|
51
58
|
try {
|
|
52
59
|
const { failedCommands, filesWithConflicts, fileIdToRelativePathMap } = await operations.writeGeneratorOutput(output, projectDirectory, {
|
|
53
60
|
previousGeneratedPayload,
|
|
@@ -62,7 +69,7 @@ export async function generateForDirectory({ baseDirectory, appEntry, logger, wr
|
|
|
62
69
|
: undefined,
|
|
63
70
|
abortSignal,
|
|
64
71
|
skipCommands,
|
|
65
|
-
|
|
72
|
+
overwriteOptions,
|
|
66
73
|
});
|
|
67
74
|
// write metadata to the generated directory
|
|
68
75
|
if (writeTemplateMetadataOptions?.includeTemplateMetadata) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-for-directory.js","sourceRoot":"","sources":["../../src/sync/generate-for-directory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"generate-for-directory.js","sourceRoot":"","sources":["../../src/sync/generate-for-directory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { PreviousGeneratedPayload } from '@baseplate-dev/sync';
|
|
2
|
+
export declare const GENERATED_DIRECTORY = "baseplate/generated";
|
|
3
|
+
/**
|
|
4
|
+
* Gets the previous generated payload for a project
|
|
5
|
+
* @param projectDirectory - The directory of the project
|
|
6
|
+
* @returns The previous generated payload
|
|
7
|
+
*/
|
|
8
|
+
export declare function getPreviousGeneratedPayload(projectDirectory: string): Promise<PreviousGeneratedPayload | undefined>;
|
|
9
|
+
//# sourceMappingURL=get-previous-generated-payload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-previous-generated-payload.d.ts","sourceRoot":"","sources":["../../src/sync/get-previous-generated-payload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAQpE,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AAEzD;;;;GAIG;AACH,wBAAsB,2BAA2B,CAC/C,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC,CAe/C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { createCodebaseFileReaderFromDirectory } from '@baseplate-dev/sync';
|
|
2
|
+
import { dirExists } from '@baseplate-dev/utils/node';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
import { getPreviousGeneratedFileIdMap } from './file-id-map.js';
|
|
5
|
+
export const GENERATED_DIRECTORY = 'baseplate/generated';
|
|
6
|
+
/**
|
|
7
|
+
* Gets the previous generated payload for a project
|
|
8
|
+
* @param projectDirectory - The directory of the project
|
|
9
|
+
* @returns The previous generated payload
|
|
10
|
+
*/
|
|
11
|
+
export async function getPreviousGeneratedPayload(projectDirectory) {
|
|
12
|
+
const generatedDirectory = path.join(projectDirectory, GENERATED_DIRECTORY);
|
|
13
|
+
const generatedDirectoryExists = await dirExists(generatedDirectory);
|
|
14
|
+
if (!generatedDirectoryExists) {
|
|
15
|
+
return undefined;
|
|
16
|
+
}
|
|
17
|
+
const fileIdMap = await getPreviousGeneratedFileIdMap(projectDirectory);
|
|
18
|
+
return {
|
|
19
|
+
fileReader: createCodebaseFileReaderFromDirectory(generatedDirectory),
|
|
20
|
+
fileIdToRelativePathMap: fileIdMap,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=get-previous-generated-payload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-previous-generated-payload.js","sourceRoot":"","sources":["../../src/sync/get-previous-generated-payload.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qCAAqC,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AAEjE,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,gBAAwB;IAExB,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;IAE5E,MAAM,wBAAwB,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAErE,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,6BAA6B,CAAC,gBAAgB,CAAC,CAAC;IAExE,OAAO;QACL,UAAU,EAAE,qCAAqC,CAAC,kBAAkB,CAAC;QACrE,uBAAuB,EAAE,SAAS;KACnC,CAAC;AACJ,CAAC"}
|
|
@@ -41,9 +41,13 @@ export interface SyncProjectOptions {
|
|
|
41
41
|
*/
|
|
42
42
|
cliFilePath?: string;
|
|
43
43
|
/**
|
|
44
|
-
* Whether to force overwrite existing files
|
|
44
|
+
* Whether to force overwrite existing files and apply snapshot.
|
|
45
45
|
*/
|
|
46
|
-
|
|
46
|
+
overwrite?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Directory containing snapshot to use when generating.
|
|
49
|
+
*/
|
|
50
|
+
snapshotDirectory?: string;
|
|
47
51
|
}
|
|
48
52
|
/**
|
|
49
53
|
* The result of syncing the project.
|
|
@@ -59,5 +63,5 @@ export interface SyncProjectResult {
|
|
|
59
63
|
*
|
|
60
64
|
* @param options - The options for syncing the project.
|
|
61
65
|
*/
|
|
62
|
-
export declare function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath,
|
|
66
|
+
export declare function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite, snapshotDirectory, }: SyncProjectOptions): Promise<SyncProjectResult>;
|
|
63
67
|
//# sourceMappingURL=sync-project.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-project.d.ts","sourceRoot":"","sources":["../../src/sync/sync-project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"sync-project.d.ts","sourceRoot":"","sources":["../../src/sync/sync-project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAOlD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAKlF,OAAO,KAAK,EAAqB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAM5E;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,OAAO,EAAE,mBAAmB,CAAC;IAC7B;;OAEG;IACH,UAAU,EAAE,mBAAmB,CAAC;IAChC;;OAEG;IACH,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;IAChD;;OAEG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,EAChC,SAAS,EACT,MAAM,EACN,OAAO,EACP,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,SAAS,EACT,iBAAiB,GAClB,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAiJjD"}
|
|
@@ -1,43 +1,18 @@
|
|
|
1
|
-
import { createPluginImplementationStore, runPluginMigrations, runSchemaMigrations, } from '@baseplate-dev/project-builder-lib';
|
|
2
1
|
import { CancelledSyncError } from '@baseplate-dev/sync';
|
|
3
|
-
import { enhanceErrorWithContext, hashWithSHA256, stringifyPrettyStable, } from '@baseplate-dev/utils';
|
|
4
|
-
import { fileExists } from '@baseplate-dev/utils/node';
|
|
5
2
|
import { mapValues } from 'es-toolkit';
|
|
6
|
-
import { readFile, writeFile } from 'node:fs/promises';
|
|
7
3
|
import path from 'node:path';
|
|
8
4
|
import { stripVTControlCharacters } from 'node:util';
|
|
9
5
|
import { compileApplications } from '#src/compiler/index.js';
|
|
6
|
+
import { loadProjectDefinition } from '#src/project-definition/load-project-definition.js';
|
|
10
7
|
import { generateForDirectory } from '../sync/generate-for-directory.js';
|
|
11
8
|
import { createTemplateMetadataOptions } from './template-metadata-utils.js';
|
|
12
9
|
import { getPackageSyncStatusFromResult } from './utils.js';
|
|
13
|
-
async function loadProjectJson(directory, context) {
|
|
14
|
-
const projectJsonPath = path.join(directory, 'baseplate/project-definition.json');
|
|
15
|
-
const projectJsonExists = await fileExists(projectJsonPath);
|
|
16
|
-
if (!projectJsonExists) {
|
|
17
|
-
throw new Error(`Could not find definition file at ${projectJsonPath}`);
|
|
18
|
-
}
|
|
19
|
-
try {
|
|
20
|
-
const projectJsonContents = await readFile(projectJsonPath, 'utf8');
|
|
21
|
-
const hash = await hashWithSHA256(projectJsonContents);
|
|
22
|
-
const projectJson = JSON.parse(projectJsonContents);
|
|
23
|
-
const { migratedDefinition, appliedMigrations } = runSchemaMigrations(projectJson);
|
|
24
|
-
if (appliedMigrations.length > 0) {
|
|
25
|
-
await writeFile(projectJsonPath, stringifyPrettyStable(migratedDefinition));
|
|
26
|
-
}
|
|
27
|
-
const pluginImplementationStore = createPluginImplementationStore(context.pluginStore, migratedDefinition);
|
|
28
|
-
const definitionWithPluginMigrations = runPluginMigrations(migratedDefinition, pluginImplementationStore);
|
|
29
|
-
return { definition: definitionWithPluginMigrations, hash };
|
|
30
|
-
}
|
|
31
|
-
catch (err) {
|
|
32
|
-
throw enhanceErrorWithContext(err, `Error parsing project definition at ${projectJsonPath}`);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
10
|
/**
|
|
36
11
|
* Syncs the project in the given directory.
|
|
37
12
|
*
|
|
38
13
|
* @param options - The options for syncing the project.
|
|
39
14
|
*/
|
|
40
|
-
export async function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath,
|
|
15
|
+
export async function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite, snapshotDirectory, }) {
|
|
41
16
|
await syncMetadataController?.updateMetadata((metadata) => ({
|
|
42
17
|
...metadata,
|
|
43
18
|
status: 'in-progress',
|
|
@@ -50,7 +25,7 @@ export async function syncProject({ directory, logger, context, userConfig, sync
|
|
|
50
25
|
})),
|
|
51
26
|
}));
|
|
52
27
|
try {
|
|
53
|
-
const { definition: projectJson } = await
|
|
28
|
+
const { definition: projectJson } = await loadProjectDefinition(directory, context);
|
|
54
29
|
const apps = compileApplications(projectJson, context);
|
|
55
30
|
await syncMetadataController?.updateMetadata((metadata) => ({
|
|
56
31
|
...metadata,
|
|
@@ -96,7 +71,8 @@ export async function syncProject({ directory, logger, context, userConfig, sync
|
|
|
96
71
|
previousPackageSyncResult: packageInfo?.result,
|
|
97
72
|
abortSignal,
|
|
98
73
|
skipCommands,
|
|
99
|
-
|
|
74
|
+
overwrite,
|
|
75
|
+
snapshotDirectory,
|
|
100
76
|
});
|
|
101
77
|
}
|
|
102
78
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-project.js","sourceRoot":"","sources":["../../src/sync/sync-project.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sync-project.js","sourceRoot":"","sources":["../../src/sync/sync-project.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAIrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oDAAoD,CAAC;AAK3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,8BAA8B,EAAE,MAAM,YAAY,CAAC;AA2D5D;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,EAChC,SAAS,EACT,MAAM,EACN,OAAO,EACP,UAAU,EACV,sBAAsB,EACtB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,SAAS,EACT,iBAAiB,GACE;IACnB,MAAM,sBAAsB,EAAE,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC1D,GAAG,QAAQ;QACX,MAAM,EAAE,aAAa;QACrB,YAAY,EAAE,SAAS;QACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,qDAAqD;QACrD,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACvD,GAAG,WAAW;YACd,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;KACJ,CAAC,CAAC,CAAC;IAEJ,IAAI,CAAC;QACH,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,MAAM,qBAAqB,CAC7D,SAAS,EACT,OAAO,CACR,CAAC;QACF,MAAM,IAAI,GAAG,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAEvD,MAAM,sBAAsB,EAAE,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC1D,GAAG,QAAQ;YACX,MAAM,EAAE,aAAa;YACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,yDAAyD;YACzD,WAAW,EACT,WAAW,CAAC,QAAQ,CAAC,iBAAiB,EAAE,aAAa,IAAI,WAAW;gBAClE,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,SAAS;YACf,QAAQ,EAAE,MAAM,CAAC,WAAW,CAC1B,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC;gBACvB,GAAG,CAAC,EAAE;gBACN;oBACE,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC;oBAC5C,MAAM,EAAE,YAAY;oBACpB,aAAa,EAAE,SAAS;oBACxB,KAAK,EAAE,KAAK;oBACZ,gEAAgE;oBAChE,oDAAoD;oBACpD,MAAM,EACJ,GAAG,CAAC,EAAE,IAAI,QAAQ,CAAC,QAAQ;wBACzB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM;wBAClC,CAAC,CAAC,SAAS;iBAChB;aACF,CAAC,CACH;SACF,CAAC,CAAC,CAAC;QAEJ,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,YAAY,GAAG,KAAK,CAAC;QAEzB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,SAA4B,CAAC;YACjC,IAAI,CAAC;gBACH,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;oBACzB,MAAM;gBACR,CAAC;gBAED,MAAM,sBAAsB,EAAE,wBAAwB,CACpD,GAAG,CAAC,EAAE,EACN,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CACvD,CAAC;gBACF,MAAM,QAAQ,GAAG,MAAM,sBAAsB,EAAE,WAAW,EAAE,CAAC;gBAC7D,MAAM,WAAW,GAAG,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAE/C,SAAS,GAAG,MAAM,oBAAoB,CAAC;oBACrC,aAAa,EAAE,SAAS;oBACxB,QAAQ,EAAE,GAAG;oBACb,MAAM;oBACN,4BAA4B,EAC1B,6BAA6B,CAAC,WAAW,CAAC;oBAC5C,UAAU;oBACV,yBAAyB,EAAE,WAAW,EAAE,MAAM;oBAC9C,WAAW;oBACX,YAAY;oBACZ,SAAS;oBACT,iBAAiB;iBAClB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,kBAAkB,EAAE,CAAC;oBACtC,SAAS,GAAG;wBACV,YAAY,EAAE,IAAI;wBAClB,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qBACtC,CAAC;oBACF,YAAY,GAAG,IAAI,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,0CAA0C,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;oBACpE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAElB,SAAS,GAAG;wBACV,MAAM,EAAE;4BACN;gCACE,2FAA2F;gCAC3F,sDAAsD;gCACtD,OAAO,EAAE,wBAAwB,CAC/B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CACjD;gCACD,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;6BACpD;yBACF;wBACD,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qBACtC,CAAC;oBAEF,SAAS,GAAG,IAAI,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,MAAM,sBAAsB,EAAE,wBAAwB,CACpD,GAAG,CAAC,EAAE,EACN,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBACb,GAAG,QAAQ;gBACX,MAAM,EAAE,8BAA8B,CAAC,SAAS,CAAC;gBACjD,aAAa,EAAE,SAAS;gBACxB,MAAM,EAAE,SAAS;aAClB,CAAC,CACH,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAE5E,MAAM,sBAAsB,EAAE,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC1D,GAAG,QAAQ;YACX,MAAM;YACN,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACtC,CAAC,CAAC,CAAC;QAEJ,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACzC,CAAC;aAAM,IAAI,SAAS,EAAE,CAAC;YACrB,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,sBAAsB,SAAS,GAAG,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,sBAAsB,EAAE,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC1D,GAAG,QAAQ;YACX,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SAC5B,CAAC,CAAC,CAAC;QACJ,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACrC,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { GeneratorEntry, GeneratorOutput } from '@baseplate-dev/sync';
|
|
2
|
+
import { buildGeneratorEntry, executeGeneratorEntry, writeGeneratorOutput } from '@baseplate-dev/sync';
|
|
3
|
+
import { writeGeneratorSteps } from './generator-steps-writer.js';
|
|
4
|
+
import { getPreviousGeneratedPayload } from './get-previous-generated-payload.js';
|
|
5
|
+
export interface GeneratorOperations {
|
|
6
|
+
buildGeneratorEntry: typeof buildGeneratorEntry;
|
|
7
|
+
executeGeneratorEntry: typeof executeGeneratorEntry;
|
|
8
|
+
getPreviousGeneratedPayload: typeof getPreviousGeneratedPayload;
|
|
9
|
+
writeGeneratorOutput: typeof writeGeneratorOutput;
|
|
10
|
+
writeMetadata: (project: GeneratorEntry, output: GeneratorOutput, projectDirectory: string) => Promise<void>;
|
|
11
|
+
writeGeneratorSteps: typeof writeGeneratorSteps;
|
|
12
|
+
}
|
|
13
|
+
export declare const DEFAULT_GENERATOR_OPERATIONS: GeneratorOperations;
|
|
14
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EACL,mBAAmB,EAEnB,qBAAqB,EACrB,oBAAoB,EAErB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAElF,MAAM,WAAW,mBAAmB;IAClC,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAChD,qBAAqB,EAAE,OAAO,qBAAqB,CAAC;IACpD,2BAA2B,EAAE,OAAO,2BAA2B,CAAC;IAChE,oBAAoB,EAAE,OAAO,oBAAoB,CAAC;IAClD,aAAa,EAAE,CACb,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,eAAe,EACvB,gBAAgB,EAAE,MAAM,KACrB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;CACjD;AAED,eAAO,MAAM,4BAA4B,EAAE,mBAU1C,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { buildGeneratorEntry, deleteMetadataFiles, executeGeneratorEntry, writeGeneratorOutput, writeTemplateInfoFiles, } from '@baseplate-dev/sync';
|
|
2
|
+
import { writeGeneratorSteps } from './generator-steps-writer.js';
|
|
3
|
+
import { getPreviousGeneratedPayload } from './get-previous-generated-payload.js';
|
|
4
|
+
export const DEFAULT_GENERATOR_OPERATIONS = {
|
|
5
|
+
buildGeneratorEntry,
|
|
6
|
+
executeGeneratorEntry,
|
|
7
|
+
getPreviousGeneratedPayload,
|
|
8
|
+
writeGeneratorOutput,
|
|
9
|
+
writeMetadata: async (_project, output, projectDirectory) => {
|
|
10
|
+
await deleteMetadataFiles(projectDirectory);
|
|
11
|
+
await writeTemplateInfoFiles(output.files, projectDirectory);
|
|
12
|
+
},
|
|
13
|
+
writeGeneratorSteps,
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/sync/types.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAelF,MAAM,CAAC,MAAM,4BAA4B,GAAwB;IAC/D,mBAAmB;IACnB,qBAAqB;IACrB,2BAA2B;IAC3B,oBAAoB;IACpB,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE;QAC1D,MAAM,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAC5C,MAAM,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;IAC/D,CAAC;IACD,mBAAmB;CACpB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@baseplate-dev/project-builder-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "Server for Project Builder using Baseplate generators",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"backend",
|
|
@@ -50,6 +50,7 @@
|
|
|
50
50
|
"fastify": "5.3.2",
|
|
51
51
|
"fastify-plugin": "5.0.1",
|
|
52
52
|
"fastify-type-provider-zod": "4.0.1",
|
|
53
|
+
"globby": "^14.0.2",
|
|
53
54
|
"ignore": "^7.0.5",
|
|
54
55
|
"immer": "10.1.1",
|
|
55
56
|
"inflection": "3.0.0",
|
|
@@ -59,22 +60,22 @@
|
|
|
59
60
|
"open": "10.1.0",
|
|
60
61
|
"pino": "9.5.0",
|
|
61
62
|
"zod": "3.24.1",
|
|
62
|
-
"@baseplate-dev/core-generators": "0.
|
|
63
|
-
"@baseplate-dev/fastify-generators": "0.
|
|
64
|
-
"@baseplate-dev/project-builder-lib": "0.
|
|
65
|
-
"@baseplate-dev/react-generators": "0.
|
|
66
|
-
"@baseplate-dev/sync": "0.
|
|
67
|
-
"@baseplate-dev/utils": "0.
|
|
63
|
+
"@baseplate-dev/core-generators": "0.3.1",
|
|
64
|
+
"@baseplate-dev/fastify-generators": "0.3.1",
|
|
65
|
+
"@baseplate-dev/project-builder-lib": "0.3.1",
|
|
66
|
+
"@baseplate-dev/react-generators": "0.3.1",
|
|
67
|
+
"@baseplate-dev/sync": "0.3.1",
|
|
68
|
+
"@baseplate-dev/utils": "0.3.1"
|
|
68
69
|
},
|
|
69
70
|
"devDependencies": {
|
|
70
71
|
"@types/micromatch": "^4.0.9",
|
|
71
72
|
"@types/node": "^22.0.0",
|
|
72
|
-
"eslint": "9.
|
|
73
|
+
"eslint": "9.32.0",
|
|
73
74
|
"memfs": "4.15.1",
|
|
74
|
-
"prettier": "3.
|
|
75
|
+
"prettier": "3.6.2",
|
|
75
76
|
"typescript": "5.7.3",
|
|
76
|
-
"vitest": "3.
|
|
77
|
-
"@baseplate-dev/tools": "0.
|
|
77
|
+
"vitest": "3.2.4",
|
|
78
|
+
"@baseplate-dev/tools": "0.3.1"
|
|
78
79
|
},
|
|
79
80
|
"engines": {
|
|
80
81
|
"node": "^22.0.0"
|