@baseplate-dev/project-builder-server 0.4.4 → 0.5.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/actions/registry.d.ts +10 -0
- package/dist/actions/registry.d.ts.map +1 -1
- package/dist/actions/registry.js +2 -1
- package/dist/actions/registry.js.map +1 -1
- package/dist/actions/sync/index.d.ts +1 -0
- package/dist/actions/sync/index.d.ts.map +1 -1
- package/dist/actions/sync/index.js +1 -0
- package/dist/actions/sync/index.js.map +1 -1
- package/dist/actions/sync/sync-file.action.d.ts +21 -0
- package/dist/actions/sync/sync-file.action.d.ts.map +1 -0
- package/dist/actions/sync/sync-file.action.js +106 -0
- package/dist/actions/sync/sync-file.action.js.map +1 -0
- package/dist/actions/sync/sync-project.action.d.ts +1 -0
- package/dist/actions/sync/sync-project.action.d.ts.map +1 -1
- package/dist/actions/sync/sync-project.action.js +6 -1
- package/dist/actions/sync/sync-project.action.js.map +1 -1
- package/dist/compiler/app-compiler.d.ts +1 -1
- package/dist/compiler/app-compiler.d.ts.map +1 -1
- package/dist/compiler/app-compiler.js +2 -3
- package/dist/compiler/app-compiler.js.map +1 -1
- package/dist/compiler/app-entry-builder.d.ts +2 -2
- package/dist/compiler/app-entry-builder.d.ts.map +1 -1
- package/dist/compiler/app-entry-builder.js +1 -1
- package/dist/compiler/app-entry-builder.js.map +1 -1
- package/dist/compiler/backend/backend-compiler.d.ts +1 -2
- package/dist/compiler/backend/backend-compiler.d.ts.map +1 -1
- package/dist/compiler/backend/backend-compiler.js +2 -2
- package/dist/compiler/backend/backend-compiler.js.map +1 -1
- package/dist/compiler/backend/fastify.d.ts.map +1 -1
- package/dist/compiler/backend/fastify.js +1 -2
- package/dist/compiler/backend/fastify.js.map +1 -1
- package/dist/compiler/backend/graphql.js +4 -4
- package/dist/compiler/backend/graphql.js.map +1 -1
- package/dist/compiler/backend/services.d.ts.map +1 -1
- package/dist/compiler/backend/services.js +6 -20
- package/dist/compiler/backend/services.js.map +1 -1
- package/dist/compiler/compile-packages.d.ts +2 -2
- package/dist/compiler/compile-packages.d.ts.map +1 -1
- package/dist/compiler/compile-packages.js +8 -2
- package/dist/compiler/compile-packages.js.map +1 -1
- package/dist/compiler/index.d.ts +1 -0
- package/dist/compiler/index.d.ts.map +1 -1
- package/dist/compiler/index.js +1 -0
- package/dist/compiler/index.js.map +1 -1
- package/dist/compiler/library/index.d.ts +3 -0
- package/dist/compiler/library/index.d.ts.map +1 -0
- package/dist/compiler/library/index.js +3 -0
- package/dist/compiler/library/index.js.map +1 -0
- package/dist/compiler/library/library-compiler.d.ts +3 -0
- package/dist/compiler/library/library-compiler.d.ts.map +1 -0
- package/dist/compiler/library/library-compiler.js +10 -0
- package/dist/compiler/library/library-compiler.js.map +1 -0
- package/dist/compiler/library/node-library-package-compiler.d.ts +3 -0
- package/dist/compiler/library/node-library-package-compiler.d.ts.map +1 -0
- package/dist/compiler/library/node-library-package-compiler.js +32 -0
- package/dist/compiler/library/node-library-package-compiler.js.map +1 -0
- package/dist/compiler/package-compiler.d.ts +0 -69
- package/dist/compiler/package-compiler.d.ts.map +1 -1
- package/dist/compiler/package-compiler.js +0 -51
- package/dist/compiler/package-compiler.js.map +1 -1
- package/dist/compiler/root/root-package-compiler.d.ts +2 -2
- package/dist/compiler/root/root-package-compiler.d.ts.map +1 -1
- package/dist/compiler/root/root-package-compiler.js +17 -10
- package/dist/compiler/root/root-package-compiler.js.map +1 -1
- package/dist/compiler/web/admin/crud/actions.d.ts.map +1 -1
- package/dist/compiler/web/admin/crud/actions.js +5 -23
- package/dist/compiler/web/admin/crud/actions.js.map +1 -1
- package/dist/compiler/web/admin/crud/columns.d.ts.map +1 -1
- package/dist/compiler/web/admin/crud/columns.js +9 -45
- package/dist/compiler/web/admin/crud/columns.js.map +1 -1
- package/dist/compiler/web/admin/crud/index.d.ts.map +1 -1
- package/dist/compiler/web/admin/crud/index.js +13 -5
- package/dist/compiler/web/admin/crud/index.js.map +1 -1
- package/dist/compiler/web/admin/crud/inputs.d.ts.map +1 -1
- package/dist/compiler/web/admin/crud/inputs.js +6 -141
- package/dist/compiler/web/admin/crud/inputs.js.map +1 -1
- package/dist/compiler/web/web-compiler.d.ts +1 -2
- package/dist/compiler/web/web-compiler.d.ts.map +1 -1
- package/dist/compiler/web/web-compiler.js +2 -2
- package/dist/compiler/web/web-compiler.js.map +1 -1
- package/dist/core-modules/admin-crud-action-compiler.d.ts +4 -0
- package/dist/core-modules/admin-crud-action-compiler.d.ts.map +1 -0
- package/dist/core-modules/admin-crud-action-compiler.js +37 -0
- package/dist/core-modules/admin-crud-action-compiler.js.map +1 -0
- package/dist/core-modules/admin-crud-column-compiler.d.ts +4 -0
- package/dist/core-modules/admin-crud-column-compiler.d.ts.map +1 -0
- package/dist/core-modules/admin-crud-column-compiler.js +47 -0
- package/dist/core-modules/admin-crud-column-compiler.js.map +1 -0
- package/dist/core-modules/admin-crud-input-compiler.d.ts +4 -0
- package/dist/core-modules/admin-crud-input-compiler.d.ts.map +1 -0
- package/dist/core-modules/admin-crud-input-compiler.js +157 -0
- package/dist/core-modules/admin-crud-input-compiler.js.map +1 -0
- package/dist/core-modules/index.d.ts +3 -0
- package/dist/core-modules/index.d.ts.map +1 -0
- package/dist/core-modules/index.js +17 -0
- package/dist/core-modules/index.js.map +1 -0
- package/dist/core-modules/library-type-spec.d.ts +10 -0
- package/dist/core-modules/library-type-spec.d.ts.map +1 -0
- package/dist/core-modules/library-type-spec.js +18 -0
- package/dist/core-modules/library-type-spec.js.map +1 -0
- package/dist/core-modules/model-transformer-compiler.d.ts +4 -0
- package/dist/core-modules/model-transformer-compiler.d.ts.map +1 -0
- package/dist/core-modules/model-transformer-compiler.js +31 -0
- package/dist/core-modules/model-transformer-compiler.js.map +1 -0
- package/dist/dev-server/api/router.d.ts +1 -0
- package/dist/dev-server/api/router.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/plugins/node-plugin-store.d.ts.map +1 -1
- package/dist/plugins/node-plugin-store.js +3 -10
- package/dist/plugins/node-plugin-store.js.map +1 -1
- package/dist/project-definition/load-project-definition.js +3 -3
- package/dist/project-definition/load-project-definition.js.map +1 -1
- package/dist/sync/sync-file.d.ts +27 -0
- package/dist/sync/sync-file.d.ts.map +1 -0
- package/dist/sync/sync-file.js +78 -0
- package/dist/sync/sync-file.js.map +1 -0
- package/dist/sync/sync-project.d.ts +5 -1
- package/dist/sync/sync-project.d.ts.map +1 -1
- package/dist/sync/sync-project.js +16 -4
- package/dist/sync/sync-project.js.map +1 -1
- package/package.json +10 -10
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-transformer-compiler.js","sourceRoot":"","sources":["../../src/core-modules/model-transformer-compiler.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AACnF,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,UAAU,GACX,MAAM,oCAAoC,CAAC;AAE5C,MAAM,mCAAmC,GACvC;IACE,IAAI,EAAE,kBAAkB;IACxB,YAAY,CAAC,UAAU,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE;QACrD,wBAAwB;QACxB,MAAM,cAAc,GAAG,UAAU,CAAC,mBAAmB,CACnD,mBAAmB,CAAC,UAAU,EAC9B,KAAK,CAAC,EAAE,CACT,CAAC,IAAI,CACJ,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,KAAK,UAAU,CAAC,kBAAkB,CACvE,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,2BAA2B,UAAU,CAAC,kBAAkB,4BAA4B,CACrF,CAAC;QACJ,CAAC;QAED,OAAO,8BAA8B,CAAC;YACpC,SAAS,EAAE,KAAK,CAAC,IAAI;YACrB,YAAY,EAAE,mBAAmB,CAAC,UAAU,CAC1C,UAAU,CAAC,kBAAkB,CAC9B;YACD,eAAe,EAAE,cAAc,CAAC,KAAK,CAAC,IAAI;YAC1C,gBAAgB,EAAE,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACxD,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,CAClC;YACD,sBAAsB,EAAE,UAAU,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACrE,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC,CAClC;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEJ,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAAkB,CAAC;IAC3D,IAAI,EAAE,4BAA4B;IAClC,YAAY,EAAE;QACZ,wBAAwB,EAAE,4BAA4B;KACvD;IACD,UAAU,EAAE,CAAC,EAAE,wBAAwB,EAAE,EAAE,EAAE;QAC3C,wBAAwB,CAAC,YAAY,CAAC,OAAO,CAAC;YAC5C,mCAAmC;SACpC,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC"}
|
|
@@ -327,6 +327,7 @@ export declare const devServerRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
327
327
|
overwrite?: boolean | undefined;
|
|
328
328
|
skipCommands?: boolean | undefined;
|
|
329
329
|
snapshotDirectory?: string | undefined;
|
|
330
|
+
packages?: string[] | undefined;
|
|
330
331
|
};
|
|
331
332
|
output: {
|
|
332
333
|
status: "success" | "error" | "cancelled";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/dev-server/api/router.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,eAAe
|
|
1
|
+
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/dev-server/api/router.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+B1B,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,OAAO,eAAe,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export * from './actions/index.js';
|
|
|
2
2
|
export * from './api/index.js';
|
|
3
3
|
export * from './compiler/index.js';
|
|
4
4
|
export * from './constants/index.js';
|
|
5
|
+
export * from './core-modules/index.js';
|
|
5
6
|
export * from './diff/index.js';
|
|
6
7
|
export * from './plugins/index.js';
|
|
7
8
|
export * from './server/index.js';
|
package/dist/index.js
CHANGED
|
@@ -2,6 +2,7 @@ export * from './actions/index.js';
|
|
|
2
2
|
export * from './api/index.js';
|
|
3
3
|
export * from './compiler/index.js';
|
|
4
4
|
export * from './constants/index.js';
|
|
5
|
+
export * from './core-modules/index.js';
|
|
5
6
|
export * from './diff/index.js';
|
|
6
7
|
export * from './plugins/index.js';
|
|
7
8
|
export * from './server/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-plugin-store.d.ts","sourceRoot":"","sources":["../../src/plugins/node-plugin-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EAEvB,WAAW,EACX,WAAW,EACX,mBAAmB,EACpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"node-plugin-store.d.ts","sourceRoot":"","sources":["../../src/plugins/node-plugin-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EAEvB,WAAW,EACX,WAAW,EACX,mBAAmB,EACpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AASlD,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,uBAAuB,EAAE,GACjC,OAAO,CAAC,WAAW,CAAC,CAuBtB;AAED,wBAAsB,kCAAkC,CACtD,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,uBAAuB,EAAE,GACxC,OAAO,CAAC,WAAW,CAAC,CAStB;AAED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,uBAAuB,EAAE,EACzC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,CAAC,CAU9B"}
|
|
@@ -1,14 +1,7 @@
|
|
|
1
|
-
import { adminCrudActionCompilerSpec, adminCrudColumnCompilerSpec, adminCrudInputCompilerSpec, appCompilerSpec, modelTransformerCompilerSpec, } from '@baseplate-dev/project-builder-lib';
|
|
2
1
|
import path from 'node:path';
|
|
3
2
|
import { pathToFileURL } from 'node:url';
|
|
3
|
+
import { SERVER_CORE_MODULES } from '#src/core-modules/index.js';
|
|
4
4
|
import { discoverPlugins } from './plugin-discovery.js';
|
|
5
|
-
const NODE_SPEC_IMPLEMENTATIONS = [
|
|
6
|
-
modelTransformerCompilerSpec,
|
|
7
|
-
adminCrudInputCompilerSpec,
|
|
8
|
-
adminCrudActionCompilerSpec,
|
|
9
|
-
adminCrudColumnCompilerSpec,
|
|
10
|
-
appCompilerSpec,
|
|
11
|
-
];
|
|
12
5
|
export async function createNodePluginStore(plugins) {
|
|
13
6
|
const pluginsWithModules = await Promise.all(plugins.map(async (plugin) => ({
|
|
14
7
|
metadata: plugin,
|
|
@@ -16,14 +9,14 @@ export async function createNodePluginStore(plugins) {
|
|
|
16
9
|
const mod = (await import(pathToFileURL(modulePath).href));
|
|
17
10
|
const unwrappedModule = 'default' in mod ? mod.default : mod;
|
|
18
11
|
return {
|
|
19
|
-
|
|
12
|
+
directory: path.relative(plugin.pluginDirectory, modulePath),
|
|
20
13
|
module: unwrappedModule,
|
|
21
14
|
};
|
|
22
15
|
})),
|
|
23
16
|
})));
|
|
24
17
|
return {
|
|
25
18
|
availablePlugins: pluginsWithModules,
|
|
26
|
-
|
|
19
|
+
coreModules: SERVER_CORE_MODULES,
|
|
27
20
|
};
|
|
28
21
|
}
|
|
29
22
|
export async function createNodePluginStoreFromDirectory(projectDirectory, logger, builtinPlugins) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-plugin-store.js","sourceRoot":"","sources":["../../src/plugins/node-plugin-store.ts"],"names":[],"mappings":"AASA,OAAO,
|
|
1
|
+
{"version":3,"file":"node-plugin-store.js","sourceRoot":"","sources":["../../src/plugins/node-plugin-store.ts"],"names":[],"mappings":"AASA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAkC;IAElC,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7B,QAAQ,EAAE,MAAM;QAChB,OAAO,EAAE,MAAM,OAAO,CAAC,GAAG,CACxB,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC9C,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAEzC,CAAC;YACjB,MAAM,eAAe,GAAG,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;YAE7D,OAAO;gBACL,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,UAAU,CAAC;gBAC5D,MAAM,EAAE,eAAe;aACxB,CAAC;QACJ,CAAC,CAAC,CACH;KACF,CAAC,CAAC,CACJ,CAAC;IACF,OAAO;QACL,gBAAgB,EAAE,kBAAkB;QACpC,WAAW,EAAE,mBAAmB;KACjC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,gBAAwB,EACxB,MAAc,EACd,cAAyC;IAEzC,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG;QACjB,GAAG,OAAO;QACV,GAAG,cAAc,CAAC,MAAM,CACtB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,CAAC,CAC/D;KACF,CAAC;IACF,OAAO,qBAAqB,CAAC,UAAU,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,OAAoB,EACpB,MAAc,EACd,cAAyC,EACzC,UAAkB;IAElB,OAAO;QACL,OAAO;QACP,WAAW,EAAE,MAAM,kCAAkC,CACnD,OAAO,CAAC,SAAS,EACjB,MAAM,EACN,cAAc,CACf;QACD,UAAU;KACX,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createPluginSpecStore, runPluginMigrations, runSchemaMigrations, } from '@baseplate-dev/project-builder-lib';
|
|
2
2
|
import { enhanceErrorWithContext, hashWithSHA256, stringifyPrettyStable, } from '@baseplate-dev/utils';
|
|
3
3
|
import { fileExists } from '@baseplate-dev/utils/node';
|
|
4
4
|
import { readFile, writeFile } from 'node:fs/promises';
|
|
@@ -23,8 +23,8 @@ export async function loadProjectDefinition(directory, context) {
|
|
|
23
23
|
if (appliedMigrations.length > 0) {
|
|
24
24
|
await writeFile(projectJsonPath, stringifyPrettyStable(migratedDefinition));
|
|
25
25
|
}
|
|
26
|
-
const
|
|
27
|
-
const definitionWithPluginMigrations = runPluginMigrations(migratedDefinition,
|
|
26
|
+
const pluginSpecStore = createPluginSpecStore(context.pluginStore, migratedDefinition);
|
|
27
|
+
const definitionWithPluginMigrations = runPluginMigrations(migratedDefinition, pluginSpecStore);
|
|
28
28
|
return { definition: definitionWithPluginMigrations, hash };
|
|
29
29
|
}
|
|
30
30
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-project-definition.js","sourceRoot":"","sources":["../../src/project-definition/load-project-definition.ts"],"names":[],"mappings":"AAKA,OAAO,EACL
|
|
1
|
+
{"version":3,"file":"load-project-definition.js","sourceRoot":"","sources":["../../src/project-definition/load-project-definition.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,uBAAuB,EACvB,cAAc,EACd,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,SAAiB,EACjB,OAA4B;IAE5B,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAC/B,SAAS,EACT,mCAAmC,CACpC,CAAC;IAEF,MAAM,iBAAiB,GAAG,MAAM,UAAU,CAAC,eAAe,CAAC,CAAC;IAE5D,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,eAAe,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,CAAC;QACH,MAAM,mBAAmB,GAAG,MAAM,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACpE,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,mBAAmB,CAAC,CAAC;QAEvD,MAAM,WAAW,GAAY,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAE7D,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAAG,mBAAmB,CACnE,WAAgC,CACjC,CAAC;QACF,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,SAAS,CACb,eAAe,EACf,qBAAqB,CAAC,kBAAkB,CAAC,CAC1C,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAG,qBAAqB,CAC3C,OAAO,CAAC,WAAW,EACnB,kBAAkB,CACnB,CAAC;QAEF,MAAM,8BAA8B,GAAG,mBAAmB,CACxD,kBAAkB,EAClB,eAAe,CAChB,CAAC;QAEF,OAAO,EAAE,UAAU,EAAE,8BAA8B,EAAE,IAAI,EAAE,CAAC;IAC9D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,uBAAuB,CAC3B,GAAG,EACH,uCAAuC,eAAe,EAAE,CACzD,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Logger, TemplateMetadataOptions } from '@baseplate-dev/sync';
|
|
2
|
+
import type { PackageEntry } from '#src/compiler/package-entry.js';
|
|
3
|
+
import type { GeneratorOperations } from './types.js';
|
|
4
|
+
interface SyncFileOptions {
|
|
5
|
+
baseDirectory: string;
|
|
6
|
+
appEntry: PackageEntry;
|
|
7
|
+
logger: Logger;
|
|
8
|
+
fileGlobs: string[];
|
|
9
|
+
writeTemplateMetadataOptions?: TemplateMetadataOptions;
|
|
10
|
+
operations?: GeneratorOperations;
|
|
11
|
+
}
|
|
12
|
+
interface SyncFileResult {
|
|
13
|
+
filesApplied: string[];
|
|
14
|
+
errors: string[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Syncs specific files from generator output to the working directory.
|
|
18
|
+
*
|
|
19
|
+
* Unlike full sync, this command:
|
|
20
|
+
* - Runs generators and filters files by glob
|
|
21
|
+
* - Writes matching files directly to working directory AND generated folder
|
|
22
|
+
* - Does NOT perform the full generated folder swap
|
|
23
|
+
* - Allows incremental fixing of generators one file at a time
|
|
24
|
+
*/
|
|
25
|
+
export declare function syncFile({ baseDirectory, appEntry, logger, fileGlobs, writeTemplateMetadataOptions, operations, }: SyncFileOptions): Promise<SyncFileResult>;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=sync-file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-file.d.ts","sourceRoot":"","sources":["../../src/sync/sync-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAM3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAKtD,UAAU,eAAe;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,4BAA4B,CAAC,EAAE,uBAAuB,CAAC;IACvD,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAClC;AAED,UAAU,cAAc;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAsB,QAAQ,CAAC,EAC7B,aAAa,EACb,QAAQ,EACR,MAAM,EACN,SAAS,EACT,4BAA4B,EAC5B,UAAyC,GAC1C,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAsF3C"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { formatOutputFileContents } from '@baseplate-dev/sync';
|
|
2
|
+
import { mkdir, writeFile } from 'node:fs/promises';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
import { GENERATED_DIRECTORY } from './get-previous-generated-payload.js';
|
|
5
|
+
import { DEFAULT_GENERATOR_OPERATIONS } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Syncs specific files from generator output to the working directory.
|
|
8
|
+
*
|
|
9
|
+
* Unlike full sync, this command:
|
|
10
|
+
* - Runs generators and filters files by glob
|
|
11
|
+
* - Writes matching files directly to working directory AND generated folder
|
|
12
|
+
* - Does NOT perform the full generated folder swap
|
|
13
|
+
* - Allows incremental fixing of generators one file at a time
|
|
14
|
+
*/
|
|
15
|
+
export async function syncFile({ baseDirectory, appEntry, logger, fileGlobs, writeTemplateMetadataOptions, operations = DEFAULT_GENERATOR_OPERATIONS, }) {
|
|
16
|
+
const { packageDirectory, name, generatorBundle } = appEntry;
|
|
17
|
+
const projectDirectory = path.join(baseDirectory, packageDirectory);
|
|
18
|
+
logger.info(`Running generators for ${name}...`);
|
|
19
|
+
// Build and execute generators to get output files
|
|
20
|
+
const project = await operations.buildGeneratorEntry(generatorBundle);
|
|
21
|
+
const output = await operations.executeGeneratorEntry(project, {
|
|
22
|
+
templateMetadataOptions: writeTemplateMetadataOptions,
|
|
23
|
+
});
|
|
24
|
+
logger.info(`Generator output contains ${output.files.size} files`);
|
|
25
|
+
// Filter files by globs using dynamic import for micromatch
|
|
26
|
+
const { default: micromatch } = await import('micromatch');
|
|
27
|
+
const allFilePaths = [...output.files.keys()];
|
|
28
|
+
const matchingPaths = micromatch(allFilePaths, fileGlobs);
|
|
29
|
+
if (matchingPaths.length === 0) {
|
|
30
|
+
logger.warn(`No files matched the provided globs: ${fileGlobs.join(', ')}`);
|
|
31
|
+
return { filesApplied: [], errors: [] };
|
|
32
|
+
}
|
|
33
|
+
logger.info(`Found ${matchingPaths.length} files matching globs`);
|
|
34
|
+
const filesApplied = [];
|
|
35
|
+
const errors = [];
|
|
36
|
+
// Process each matching file
|
|
37
|
+
for (const relativePath of matchingPaths) {
|
|
38
|
+
const fileData = output.files.get(relativePath);
|
|
39
|
+
if (!fileData) {
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
try {
|
|
43
|
+
// Format the file contents
|
|
44
|
+
const formattedContents = await formatOutputFileContents(relativePath, fileData, {
|
|
45
|
+
outputDirectory: projectDirectory,
|
|
46
|
+
formatters: output.globalFormatters,
|
|
47
|
+
logger,
|
|
48
|
+
});
|
|
49
|
+
// Normalize to buffer for writing
|
|
50
|
+
const contentsBuffer = typeof formattedContents === 'string'
|
|
51
|
+
? Buffer.from(formattedContents, 'utf8')
|
|
52
|
+
: formattedContents;
|
|
53
|
+
// Write to working directory
|
|
54
|
+
const workingPath = path.join(projectDirectory, relativePath);
|
|
55
|
+
await mkdir(path.dirname(workingPath), { recursive: true });
|
|
56
|
+
await writeFile(workingPath, contentsBuffer);
|
|
57
|
+
// Write to generated directory
|
|
58
|
+
const generatedPath = path.join(projectDirectory, GENERATED_DIRECTORY, relativePath);
|
|
59
|
+
await mkdir(path.dirname(generatedPath), { recursive: true });
|
|
60
|
+
await writeFile(generatedPath, contentsBuffer);
|
|
61
|
+
filesApplied.push(relativePath);
|
|
62
|
+
logger.debug(`Applied: ${relativePath}`);
|
|
63
|
+
}
|
|
64
|
+
catch (err) {
|
|
65
|
+
const errorMessage = `Failed to apply ${relativePath}: ${err instanceof Error ? err.message : String(err)}`;
|
|
66
|
+
errors.push(errorMessage);
|
|
67
|
+
logger.error(errorMessage);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
if (filesApplied.length > 0) {
|
|
71
|
+
logger.info(`Successfully applied ${filesApplied.length} files`);
|
|
72
|
+
}
|
|
73
|
+
if (errors.length > 0) {
|
|
74
|
+
logger.error(`Encountered ${errors.length} errors`);
|
|
75
|
+
}
|
|
76
|
+
return { filesApplied, errors };
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=sync-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-file.js","sourceRoot":"","sources":["../../src/sync/sync-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,6 +48,10 @@ export interface SyncProjectOptions {
|
|
|
48
48
|
* Directory containing snapshot to use when generating.
|
|
49
49
|
*/
|
|
50
50
|
snapshotDirectory?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Only sync specific packages by name.
|
|
53
|
+
*/
|
|
54
|
+
packageFilter?: string[];
|
|
51
55
|
}
|
|
52
56
|
/**
|
|
53
57
|
* The result of syncing the project.
|
|
@@ -67,5 +71,5 @@ export interface SyncProjectResult {
|
|
|
67
71
|
*
|
|
68
72
|
* @param options - The options for syncing the project.
|
|
69
73
|
*/
|
|
70
|
-
export declare function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite, snapshotDirectory, }: SyncProjectOptions): Promise<SyncProjectResult>;
|
|
74
|
+
export declare function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite, snapshotDirectory, packageFilter, }: SyncProjectOptions): Promise<SyncProjectResult>;
|
|
71
75
|
//# 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,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,EAAE,iBAAiB,EAAE,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;
|
|
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,EAAE,iBAAiB,EAAE,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;IAC3B;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,MAAM,EAAE,UAAU,CAAC;IACnB;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;CAC/E;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,EACjB,aAAa,GACd,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAwKjD"}
|
|
@@ -12,7 +12,7 @@ import { getPackageSyncStatusFromResult } from './utils.js';
|
|
|
12
12
|
*
|
|
13
13
|
* @param options - The options for syncing the project.
|
|
14
14
|
*/
|
|
15
|
-
export async function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite, snapshotDirectory, }) {
|
|
15
|
+
export async function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite, snapshotDirectory, packageFilter, }) {
|
|
16
16
|
await syncMetadataController?.updateMetadata((metadata) => ({
|
|
17
17
|
...metadata,
|
|
18
18
|
status: 'in-progress',
|
|
@@ -27,6 +27,18 @@ export async function syncProject({ directory, logger, context, userConfig, sync
|
|
|
27
27
|
try {
|
|
28
28
|
const { definition: projectJson } = await loadProjectDefinition(directory, context);
|
|
29
29
|
const apps = compilePackages(projectJson, context);
|
|
30
|
+
// Filter apps if specified
|
|
31
|
+
const filteredApps = packageFilter?.length
|
|
32
|
+
? apps.filter((app) => packageFilter.includes(app.name))
|
|
33
|
+
: apps;
|
|
34
|
+
if (packageFilter?.length) {
|
|
35
|
+
if (filteredApps.length === 0) {
|
|
36
|
+
throw new Error(`No packages found to sync: ${packageFilter.join(', ')} (available packages: ${apps.map((app) => app.name).join(', ')})`);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
logger.info(`Syncing packages: ${filteredApps.map((app) => app.name).join(', ')}`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
30
42
|
await syncMetadataController?.updateMetadata((metadata) => ({
|
|
31
43
|
...metadata,
|
|
32
44
|
status: 'in-progress',
|
|
@@ -35,7 +47,7 @@ export async function syncProject({ directory, logger, context, userConfig, sync
|
|
|
35
47
|
cliFilePath: projectJson.settings.templateExtractor?.writeMetadata && cliFilePath
|
|
36
48
|
? cliFilePath
|
|
37
49
|
: undefined,
|
|
38
|
-
packages: Object.fromEntries(
|
|
50
|
+
packages: Object.fromEntries(filteredApps.map((app, index) => [
|
|
39
51
|
app.id,
|
|
40
52
|
{
|
|
41
53
|
name: app.name,
|
|
@@ -53,7 +65,7 @@ export async function syncProject({ directory, logger, context, userConfig, sync
|
|
|
53
65
|
}));
|
|
54
66
|
let hasErrors = false;
|
|
55
67
|
let wasCancelled = false;
|
|
56
|
-
for (const app of
|
|
68
|
+
for (const app of filteredApps) {
|
|
57
69
|
let newResult;
|
|
58
70
|
try {
|
|
59
71
|
if (abortSignal?.aborted) {
|
|
@@ -114,7 +126,7 @@ export async function syncProject({ directory, logger, context, userConfig, sync
|
|
|
114
126
|
completedAt: new Date().toISOString(),
|
|
115
127
|
}));
|
|
116
128
|
const metadata = await syncMetadataController?.getMetadata();
|
|
117
|
-
const packageSyncResults = Object.fromEntries(
|
|
129
|
+
const packageSyncResults = Object.fromEntries(filteredApps.map((app) => [app.id, metadata?.packages[app.id].result]));
|
|
118
130
|
if (wasCancelled) {
|
|
119
131
|
logger.info('Project sync cancelled.');
|
|
120
132
|
}
|
|
@@ -1 +1 @@
|
|
|
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,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,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;
|
|
1
|
+
{"version":3,"file":"sync-project.js","sourceRoot":"","sources":["../../src/sync/sync-project.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@baseplate-dev/project-builder-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.1",
|
|
4
4
|
"description": "Server for Project Builder using Baseplate generators",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"backend",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"@trpc/server": "^11.8.0",
|
|
48
48
|
"chalk": "5.3.0",
|
|
49
49
|
"change-case": "5.4.4",
|
|
50
|
-
"chokidar": "
|
|
50
|
+
"chokidar": "5.0.0",
|
|
51
51
|
"diff": "^8.0.2",
|
|
52
52
|
"es-toolkit": "1.31.0",
|
|
53
53
|
"execa": "9.3.0",
|
|
@@ -65,12 +65,12 @@
|
|
|
65
65
|
"pino": "9.5.0",
|
|
66
66
|
"ts-morph": "26.0.0",
|
|
67
67
|
"zod": "^4.1.13",
|
|
68
|
-
"@baseplate-dev/core-generators": "0.
|
|
69
|
-
"@baseplate-dev/fastify-generators": "0.
|
|
70
|
-
"@baseplate-dev/project-builder-lib": "0.
|
|
71
|
-
"@baseplate-dev/react-generators": "0.
|
|
72
|
-
"@baseplate-dev/sync": "0.
|
|
73
|
-
"@baseplate-dev/utils": "0.
|
|
68
|
+
"@baseplate-dev/core-generators": "0.5.1",
|
|
69
|
+
"@baseplate-dev/fastify-generators": "0.5.1",
|
|
70
|
+
"@baseplate-dev/project-builder-lib": "0.5.1",
|
|
71
|
+
"@baseplate-dev/react-generators": "0.5.1",
|
|
72
|
+
"@baseplate-dev/sync": "0.5.1",
|
|
73
|
+
"@baseplate-dev/utils": "0.5.1"
|
|
74
74
|
},
|
|
75
75
|
"devDependencies": {
|
|
76
76
|
"@types/micromatch": "^4.0.9",
|
|
@@ -80,8 +80,8 @@
|
|
|
80
80
|
"prettier": "3.6.2",
|
|
81
81
|
"tsx": "4.20.6",
|
|
82
82
|
"typescript": "5.8.3",
|
|
83
|
-
"vitest": "
|
|
84
|
-
"@baseplate-dev/tools": "0.
|
|
83
|
+
"vitest": "4.0.16",
|
|
84
|
+
"@baseplate-dev/tools": "0.5.1"
|
|
85
85
|
},
|
|
86
86
|
"engines": {
|
|
87
87
|
"node": "^22.0.0"
|