@baseplate-dev/project-builder-server 0.5.3 → 0.6.0
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/CHANGELOG.md +55 -0
- package/dist/actions/__tests__/action-test-utils.d.ts +24 -0
- package/dist/actions/__tests__/action-test-utils.d.ts.map +1 -0
- package/dist/actions/__tests__/action-test-utils.js +33 -0
- package/dist/actions/__tests__/action-test-utils.js.map +1 -0
- package/dist/actions/definition/commit-draft.action.d.ts +16 -0
- package/dist/actions/definition/commit-draft.action.d.ts.map +1 -0
- package/dist/actions/definition/commit-draft.action.js +65 -0
- package/dist/actions/definition/commit-draft.action.js.map +1 -0
- package/dist/actions/definition/discard-draft.action.d.ts +7 -0
- package/dist/actions/definition/discard-draft.action.d.ts.map +1 -0
- package/dist/actions/definition/discard-draft.action.js +30 -0
- package/dist/actions/definition/discard-draft.action.js.map +1 -0
- package/dist/actions/definition/draft-session.d.ts +41 -0
- package/dist/actions/definition/draft-session.d.ts.map +1 -0
- package/dist/actions/definition/draft-session.js +117 -0
- package/dist/actions/definition/draft-session.js.map +1 -0
- package/dist/actions/definition/get-entity-schema.action.d.ts +10 -0
- package/dist/actions/definition/get-entity-schema.action.d.ts.map +1 -0
- package/dist/actions/definition/get-entity-schema.action.js +48 -0
- package/dist/actions/definition/get-entity-schema.action.js.map +1 -0
- package/dist/actions/definition/get-entity.action.d.ts +8 -0
- package/dist/actions/definition/get-entity.action.d.ts.map +1 -0
- package/dist/actions/definition/get-entity.action.js +37 -0
- package/dist/actions/definition/get-entity.action.js.map +1 -0
- package/dist/actions/definition/index.d.ts +11 -0
- package/dist/actions/definition/index.d.ts.map +1 -0
- package/dist/actions/definition/index.js +11 -0
- package/dist/actions/definition/index.js.map +1 -0
- package/dist/actions/definition/list-entities.action.d.ts +13 -0
- package/dist/actions/definition/list-entities.action.d.ts.map +1 -0
- package/dist/actions/definition/list-entities.action.js +43 -0
- package/dist/actions/definition/list-entities.action.js.map +1 -0
- package/dist/actions/definition/list-entity-types.action.d.ts +10 -0
- package/dist/actions/definition/list-entity-types.action.d.ts.map +1 -0
- package/dist/actions/definition/list-entity-types.action.js +42 -0
- package/dist/actions/definition/list-entity-types.action.js.map +1 -0
- package/dist/actions/definition/load-entity-service-context.d.ts +14 -0
- package/dist/actions/definition/load-entity-service-context.d.ts.map +1 -0
- package/dist/actions/definition/load-entity-service-context.js +18 -0
- package/dist/actions/definition/load-entity-service-context.js.map +1 -0
- package/dist/actions/definition/show-draft.action.d.ts +18 -0
- package/dist/actions/definition/show-draft.action.d.ts.map +1 -0
- package/dist/actions/definition/show-draft.action.js +117 -0
- package/dist/actions/definition/show-draft.action.js.map +1 -0
- package/dist/actions/definition/stage-create-entity.action.d.ts +19 -0
- package/dist/actions/definition/stage-create-entity.action.d.ts.map +1 -0
- package/dist/actions/definition/stage-create-entity.action.js +60 -0
- package/dist/actions/definition/stage-create-entity.action.js.map +1 -0
- package/dist/actions/definition/stage-delete-entity.action.d.ts +18 -0
- package/dist/actions/definition/stage-delete-entity.action.d.ts.map +1 -0
- package/dist/actions/definition/stage-delete-entity.action.js +55 -0
- package/dist/actions/definition/stage-delete-entity.action.js.map +1 -0
- package/dist/actions/definition/stage-update-entity.action.d.ts +19 -0
- package/dist/actions/definition/stage-update-entity.action.d.ts.map +1 -0
- package/dist/actions/definition/stage-update-entity.action.js +59 -0
- package/dist/actions/definition/stage-update-entity.action.js.map +1 -0
- package/dist/actions/definition/validate-draft.d.ts +17 -0
- package/dist/actions/definition/validate-draft.d.ts.map +1 -0
- package/dist/actions/definition/validate-draft.js +25 -0
- package/dist/actions/definition/validate-draft.js.map +1 -0
- package/dist/actions/index.d.ts +3 -0
- package/dist/actions/index.d.ts.map +1 -1
- package/dist/actions/index.js +3 -0
- package/dist/actions/index.js.map +1 -1
- package/dist/actions/registry.d.ts +169 -92
- package/dist/actions/registry.d.ts.map +1 -1
- package/dist/actions/registry.js +17 -1
- package/dist/actions/registry.js.map +1 -1
- package/dist/actions/snapshot/snapshot-add.action.d.ts +0 -1
- package/dist/actions/snapshot/snapshot-add.action.d.ts.map +1 -1
- package/dist/actions/snapshot/snapshot-add.action.js +3 -7
- package/dist/actions/snapshot/snapshot-add.action.js.map +1 -1
- package/dist/actions/snapshot/snapshot-remove.action.d.ts +0 -1
- package/dist/actions/snapshot/snapshot-remove.action.d.ts.map +1 -1
- package/dist/actions/snapshot/snapshot-remove.action.js +3 -7
- package/dist/actions/snapshot/snapshot-remove.action.js.map +1 -1
- package/dist/actions/snapshot/snapshot-save.action.d.ts +2 -2
- package/dist/actions/snapshot/snapshot-save.action.d.ts.map +1 -1
- package/dist/actions/snapshot/snapshot-save.action.js +23 -11
- package/dist/actions/snapshot/snapshot-save.action.js.map +1 -1
- package/dist/actions/snapshot/snapshot-show.action.d.ts +5 -2
- package/dist/actions/snapshot/snapshot-show.action.d.ts.map +1 -1
- package/dist/actions/snapshot/snapshot-show.action.js +17 -19
- package/dist/actions/snapshot/snapshot-show.action.js.map +1 -1
- package/dist/actions/sync/sync-all-projects.action.d.ts.map +1 -1
- package/dist/actions/sync/sync-all-projects.action.js +3 -2
- package/dist/actions/sync/sync-all-projects.action.js.map +1 -1
- package/dist/actions/sync/sync-file.action.js +1 -1
- package/dist/actions/sync/sync-file.action.js.map +1 -1
- package/dist/actions/sync/sync-project.action.d.ts +1 -1
- package/dist/actions/sync/sync-project.action.d.ts.map +1 -1
- package/dist/actions/sync/sync-project.action.js +20 -6
- package/dist/actions/sync/sync-project.action.js.map +1 -1
- package/dist/actions/test-project/index.d.ts +2 -0
- package/dist/actions/test-project/index.d.ts.map +1 -0
- package/dist/actions/test-project/index.js +2 -0
- package/dist/actions/test-project/index.js.map +1 -0
- package/dist/actions/test-project/test-project-init.action.d.ts +17 -0
- package/dist/actions/test-project/test-project-init.action.d.ts.map +1 -0
- package/dist/actions/test-project/test-project-init.action.js +97 -0
- package/dist/actions/test-project/test-project-init.action.js.map +1 -0
- package/dist/actions/types.d.ts +2 -0
- package/dist/actions/types.d.ts.map +1 -1
- package/dist/actions/types.js.map +1 -1
- package/dist/actions/utils/generation-manifest.d.ts +12 -0
- package/dist/actions/utils/generation-manifest.d.ts.map +1 -0
- package/dist/actions/utils/generation-manifest.js +142 -0
- package/dist/actions/utils/generation-manifest.js.map +1 -0
- package/dist/actions/utils/index.d.ts +1 -1
- package/dist/actions/utils/index.d.ts.map +1 -1
- package/dist/actions/utils/index.js +1 -1
- package/dist/actions/utils/index.js.map +1 -1
- package/dist/actions/utils/project-discovery.d.ts +23 -9
- package/dist/actions/utils/project-discovery.d.ts.map +1 -1
- package/dist/actions/utils/project-discovery.js +57 -31
- package/dist/actions/utils/project-discovery.js.map +1 -1
- package/dist/actions/utils/projects.d.ts.map +1 -1
- package/dist/actions/utils/projects.js +2 -1
- package/dist/actions/utils/projects.js.map +1 -1
- package/dist/compiler/backend/{authorizers.d.ts → authorizer-compiler.d.ts} +22 -2
- package/dist/compiler/backend/authorizer-compiler.d.ts.map +1 -0
- package/dist/compiler/backend/authorizer-compiler.js +165 -0
- package/dist/compiler/backend/authorizer-compiler.js.map +1 -0
- package/dist/compiler/backend/feature.d.ts.map +1 -1
- package/dist/compiler/backend/feature.js +3 -1
- package/dist/compiler/backend/feature.js.map +1 -1
- package/dist/compiler/backend/graphql.d.ts.map +1 -1
- package/dist/compiler/backend/graphql.js +108 -49
- package/dist/compiler/backend/graphql.js.map +1 -1
- package/dist/compiler/backend/models.d.ts.map +1 -1
- package/dist/compiler/backend/models.js +13 -13
- package/dist/compiler/backend/models.js.map +1 -1
- package/dist/compiler/backend/query-filter-compiler.d.ts +40 -0
- package/dist/compiler/backend/query-filter-compiler.d.ts.map +1 -0
- package/dist/compiler/backend/query-filter-compiler.js +168 -0
- package/dist/compiler/backend/query-filter-compiler.js.map +1 -0
- package/dist/compiler/backend/services.d.ts.map +1 -1
- package/dist/compiler/backend/services.js +24 -1
- package/dist/compiler/backend/services.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.map +1 -1
- package/dist/compiler/root/root-package-compiler.js +6 -6
- package/dist/compiler/root/root-package-compiler.js.map +1 -1
- package/dist/compiler/web/admin/crud/index.js +1 -1
- package/dist/compiler/web/admin/crud/index.js.map +1 -1
- package/dist/compiler/web/admin/index.js +1 -1
- package/dist/compiler/web/admin/index.js.map +1 -1
- package/dist/compiler/web/admin/sections.d.ts.map +1 -1
- package/dist/compiler/web/admin/sections.js +2 -2
- package/dist/compiler/web/admin/sections.js.map +1 -1
- package/dist/compiler/web/web-compiler.d.ts.map +1 -1
- package/dist/compiler/web/web-compiler.js +4 -4
- package/dist/compiler/web/web-compiler.js.map +1 -1
- package/dist/core-modules/admin-crud-column-compiler.js +1 -1
- package/dist/core-modules/admin-crud-column-compiler.js.map +1 -1
- package/dist/core-modules/admin-crud-input-compiler.d.ts.map +1 -1
- package/dist/core-modules/admin-crud-input-compiler.js +13 -3
- package/dist/core-modules/admin-crud-input-compiler.js.map +1 -1
- package/dist/dev-server/api/router.d.ts +8 -7
- package/dist/dev-server/api/router.d.ts.map +1 -1
- package/dist/dev-server/mcp/stdio.d.ts +2 -2
- package/dist/dev-server/mcp/stdio.d.ts.map +1 -1
- package/dist/dev-server/mcp/stdio.js +2 -2
- package/dist/dev-server/mcp/stdio.js.map +1 -1
- package/dist/diff/diff-project.d.ts.map +1 -1
- package/dist/diff/diff-project.js +4 -4
- package/dist/diff/diff-project.js.map +1 -1
- package/dist/diff/snapshot/apply-diff-to-generator-output.d.ts.map +1 -1
- package/dist/diff/snapshot/apply-diff-to-generator-output.js +17 -2
- package/dist/diff/snapshot/apply-diff-to-generator-output.js.map +1 -1
- package/dist/diff/snapshot/create-snapshot-for-project.d.ts +12 -6
- package/dist/diff/snapshot/create-snapshot-for-project.d.ts.map +1 -1
- package/dist/diff/snapshot/create-snapshot-for-project.js +58 -26
- package/dist/diff/snapshot/create-snapshot-for-project.js.map +1 -1
- package/dist/diff/snapshot/index.d.ts +4 -1
- package/dist/diff/snapshot/index.d.ts.map +1 -1
- package/dist/diff/snapshot/index.js +4 -0
- package/dist/diff/snapshot/index.js.map +1 -1
- package/dist/diff/snapshot/save-snapshot.d.ts +11 -3
- package/dist/diff/snapshot/save-snapshot.d.ts.map +1 -1
- package/dist/diff/snapshot/save-snapshot.js +29 -10
- package/dist/diff/snapshot/save-snapshot.js.map +1 -1
- package/dist/diff/snapshot/snapshot-management.d.ts +7 -6
- package/dist/diff/snapshot/snapshot-management.d.ts.map +1 -1
- package/dist/diff/snapshot/snapshot-management.js +18 -22
- package/dist/diff/snapshot/snapshot-management.js.map +1 -1
- package/dist/diff/snapshot/snapshot-manifest.d.ts +1 -1
- package/dist/diff/snapshot/snapshot-manifest.d.ts.map +1 -1
- package/dist/diff/snapshot/snapshot-manifest.js +7 -7
- package/dist/diff/snapshot/snapshot-manifest.js.map +1 -1
- package/dist/diff/snapshot/snapshot-types.d.ts +22 -8
- package/dist/diff/snapshot/snapshot-types.d.ts.map +1 -1
- package/dist/diff/snapshot/snapshot-types.js +6 -2
- package/dist/diff/snapshot/snapshot-types.js.map +1 -1
- package/dist/diff/snapshot/snapshot-utils.d.ts +14 -5
- package/dist/diff/snapshot/snapshot-utils.d.ts.map +1 -1
- package/dist/diff/snapshot/snapshot-utils.js +25 -8
- package/dist/diff/snapshot/snapshot-utils.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/plugins/node-plugin-store.d.ts +1 -1
- package/dist/plugins/node-plugin-store.d.ts.map +1 -1
- package/dist/plugins/node-plugin-store.js +2 -2
- package/dist/plugins/node-plugin-store.js.map +1 -1
- package/dist/project-definition/load-project-definition.d.ts +2 -2
- package/dist/project-definition/load-project-definition.d.ts.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/generate-for-directory.d.ts +3 -2
- package/dist/sync/generate-for-directory.d.ts.map +1 -1
- package/dist/sync/generate-for-directory.js +24 -11
- package/dist/sync/generate-for-directory.js.map +1 -1
- package/dist/sync/sync-project.d.ts +3 -3
- package/dist/sync/sync-project.d.ts.map +1 -1
- package/dist/sync/sync-project.js +9 -3
- package/dist/sync/sync-project.js.map +1 -1
- package/dist/templates/create/create-generator.d.ts.map +1 -1
- package/dist/templates/create/create-generator.js +3 -3
- package/dist/templates/create/create-generator.js.map +1 -1
- package/dist/user-config/user-config-schema.d.ts +12 -0
- package/dist/user-config/user-config-schema.d.ts.map +1 -1
- package/dist/user-config/user-config-schema.js +29 -0
- package/dist/user-config/user-config-schema.js.map +1 -1
- package/package.json +17 -14
- package/dist/actions/utils/is-example-project.d.ts +0 -7
- package/dist/actions/utils/is-example-project.d.ts.map +0 -1
- package/dist/actions/utils/is-example-project.js +0 -22
- package/dist/actions/utils/is-example-project.js.map +0 -1
- package/dist/compiler/backend/authorizers.d.ts.map +0 -1
- package/dist/compiler/backend/authorizers.js +0 -75
- package/dist/compiler/backend/authorizers.js.map +0 -1
- package/dist/project-definition/get-single-app-directory-for-project.d.ts +0 -11
- package/dist/project-definition/get-single-app-directory-for-project.d.ts.map +0 -1
- package/dist/project-definition/get-single-app-directory-for-project.js +0 -19
- package/dist/project-definition/get-single-app-directory-for-project.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-manifest.js","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EACL,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAE/E;;GAEG;AACH,MAAM,UAAU,0BAA0B;IACxC,OAAO;QACL,OAAO,EAAE,gBAAgB;QACzB,KAAK,EAAE;YACL,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,EAAE;SACZ;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,iBAAoC,EACpC,QAA0B;IAE1B,MAAM,cAAc,GAAG;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,KAAK,EAAE;YACL,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"file":"snapshot-manifest.js","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,9 +12,9 @@ export interface SnapshotManifest {
|
|
|
12
12
|
export interface SnapshotFiles {
|
|
13
13
|
/** Files that were modified (have diffs stored) */
|
|
14
14
|
modified: ModifiedFileEntry[];
|
|
15
|
-
/** Files that were added (
|
|
16
|
-
added:
|
|
17
|
-
/** Files that
|
|
15
|
+
/** Files that were added by the user (not produced by generator, content stored) */
|
|
16
|
+
added: AddedFileEntry[];
|
|
17
|
+
/** Files that exist in generator output but were intentionally removed from working directory */
|
|
18
18
|
deleted: string[];
|
|
19
19
|
}
|
|
20
20
|
export interface ModifiedFileEntry {
|
|
@@ -23,6 +23,12 @@ export interface ModifiedFileEntry {
|
|
|
23
23
|
/** Name of the diff file in the diffs/ directory */
|
|
24
24
|
diffFile: string;
|
|
25
25
|
}
|
|
26
|
+
export interface AddedFileEntry {
|
|
27
|
+
/** Relative path to the file */
|
|
28
|
+
path: string;
|
|
29
|
+
/** Name of the content file in the diffs/ directory. Only present when content is stored. */
|
|
30
|
+
contentFile?: string;
|
|
31
|
+
}
|
|
26
32
|
export interface SnapshotDirectory {
|
|
27
33
|
/** Path to the snapshot directory */
|
|
28
34
|
path: string;
|
|
@@ -32,8 +38,6 @@ export interface SnapshotDirectory {
|
|
|
32
38
|
diffsPath: string;
|
|
33
39
|
}
|
|
34
40
|
export interface SnapshotOptions {
|
|
35
|
-
/** Custom name for the snapshot directory (default: .baseplate-snapshot) */
|
|
36
|
-
snapshotDir?: string;
|
|
37
41
|
/** Whether to use strict comparison mode */
|
|
38
42
|
strict?: boolean;
|
|
39
43
|
}
|
|
@@ -70,19 +74,26 @@ export interface PatchFailure {
|
|
|
70
74
|
diffContent: string;
|
|
71
75
|
}
|
|
72
76
|
export declare const SNAPSHOT_VERSION = "1";
|
|
73
|
-
export declare const
|
|
77
|
+
export declare const SNAPSHOTS_DIRNAME = "snapshots";
|
|
74
78
|
export declare const MANIFEST_FILENAME = "manifest.json";
|
|
75
79
|
export declare const DIFFS_DIRNAME = "diffs";
|
|
76
80
|
export declare const modifiedFileEntrySchema: z.ZodObject<{
|
|
77
81
|
path: z.ZodString;
|
|
78
82
|
diffFile: z.ZodString;
|
|
79
83
|
}, z.core.$strip>;
|
|
84
|
+
export declare const addedFileEntrySchema: z.ZodObject<{
|
|
85
|
+
path: z.ZodString;
|
|
86
|
+
contentFile: z.ZodOptional<z.ZodString>;
|
|
87
|
+
}, z.core.$strip>;
|
|
80
88
|
export declare const snapshotFilesSchema: z.ZodObject<{
|
|
81
89
|
modified: z.ZodArray<z.ZodObject<{
|
|
82
90
|
path: z.ZodString;
|
|
83
91
|
diffFile: z.ZodString;
|
|
84
92
|
}, z.core.$strip>>;
|
|
85
|
-
added: z.ZodArray<z.
|
|
93
|
+
added: z.ZodArray<z.ZodObject<{
|
|
94
|
+
path: z.ZodString;
|
|
95
|
+
contentFile: z.ZodOptional<z.ZodString>;
|
|
96
|
+
}, z.core.$strip>>;
|
|
86
97
|
deleted: z.ZodArray<z.ZodString>;
|
|
87
98
|
}, z.core.$strip>;
|
|
88
99
|
export declare const snapshotManifestSchema: z.ZodObject<{
|
|
@@ -92,7 +103,10 @@ export declare const snapshotManifestSchema: z.ZodObject<{
|
|
|
92
103
|
path: z.ZodString;
|
|
93
104
|
diffFile: z.ZodString;
|
|
94
105
|
}, z.core.$strip>>;
|
|
95
|
-
added: z.ZodArray<z.
|
|
106
|
+
added: z.ZodArray<z.ZodObject<{
|
|
107
|
+
path: z.ZodString;
|
|
108
|
+
contentFile: z.ZodOptional<z.ZodString>;
|
|
109
|
+
}, z.core.$strip>>;
|
|
96
110
|
deleted: z.ZodArray<z.ZodString>;
|
|
97
111
|
}, z.core.$strip>;
|
|
98
112
|
}, z.core.$strip>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-types.d.ts","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,KAAK,EAAE,aAAa,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,
|
|
1
|
+
{"version":3,"file":"snapshot-types.d.ts","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,KAAK,EAAE,aAAa,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,oFAAoF;IACpF,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,iGAAiG;IACjG,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,6FAA6F;IAC7F,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,4CAA4C;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,0DAA0D;IAC1D,cAAc,EAAE,QAAQ,EAAE,CAAC;IAC3B,6CAA6C;IAC7C,mBAAmB,EAAE,QAAQ,EAAE,CAAC;IAChC,2DAA2D;IAC3D,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,yBAAyB;IACzB,UAAU,EAAE,kBAAkB,CAAC;IAC/B,yDAAyD;IACzD,MAAM,EAAE,OAAO,CAAC;IAChB,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,6CAA6C;IAC7C,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAC7C,eAAO,MAAM,iBAAiB,kBAAkB,CAAC;AACjD,eAAO,MAAM,aAAa,UAAU,CAAC;AAGrC,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;iBAG/B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;iBAI9B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;iBAGjC,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
export const SNAPSHOT_VERSION = '1';
|
|
6
|
-
export const
|
|
6
|
+
export const SNAPSHOTS_DIRNAME = 'snapshots';
|
|
7
7
|
export const MANIFEST_FILENAME = 'manifest.json';
|
|
8
8
|
export const DIFFS_DIRNAME = 'diffs';
|
|
9
9
|
// Zod schemas for validation
|
|
@@ -11,9 +11,13 @@ export const modifiedFileEntrySchema = z.object({
|
|
|
11
11
|
path: z.string(),
|
|
12
12
|
diffFile: z.string(),
|
|
13
13
|
});
|
|
14
|
+
export const addedFileEntrySchema = z.object({
|
|
15
|
+
path: z.string(),
|
|
16
|
+
contentFile: z.string().optional(),
|
|
17
|
+
});
|
|
14
18
|
export const snapshotFilesSchema = z.object({
|
|
15
19
|
modified: z.array(modifiedFileEntrySchema),
|
|
16
|
-
added: z.array(
|
|
20
|
+
added: z.array(addedFileEntrySchema),
|
|
17
21
|
deleted: z.array(z.string()),
|
|
18
22
|
});
|
|
19
23
|
export const snapshotManifestSchema = z.object({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-types.js","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"snapshot-types.js","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAoFxB,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC;AAC7C,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAe,CAAC;AACjD,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC;AAErC,6BAA6B;AAC7B,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC;IAC1C,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC;IACpC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CAC7B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,mBAAmB;CAC3B,CAAC,CAAC"}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import type { SnapshotDirectory
|
|
1
|
+
import type { SnapshotDirectory } from './snapshot-types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Resolves the baseplate directory for a project.
|
|
4
|
+
* Defaults to `<projectDirectory>/baseplate` when no explicit override is provided.
|
|
5
|
+
*/
|
|
6
|
+
export declare function resolveBaseplateDir(projectDirectory: string, baseplateDirectory?: string): string;
|
|
2
7
|
/**
|
|
3
8
|
* Converts a file path to a safe filename for storing diffs
|
|
4
9
|
* Example: "src/components/button.tsx" -> "src_components_button.tsx.diff"
|
|
@@ -10,11 +15,15 @@ export declare function pathToSafeDiffFilename(filePath: string): string;
|
|
|
10
15
|
*/
|
|
11
16
|
export declare function safeDiffFilenameToPath(diffFilename: string): string;
|
|
12
17
|
/**
|
|
13
|
-
* Creates the snapshot directory structure
|
|
18
|
+
* Creates the snapshot directory structure.
|
|
19
|
+
* @param baseplateDirectory - The baseplate directory (e.g. `<projectDir>/baseplate`)
|
|
20
|
+
* @param appName - The app name within the project
|
|
14
21
|
*/
|
|
15
|
-
export declare function createSnapshotDirectory(
|
|
22
|
+
export declare function createSnapshotDirectory(baseplateDirectory: string, appName: string): Promise<SnapshotDirectory>;
|
|
16
23
|
/**
|
|
17
|
-
* Resolves the snapshot directory paths without creating them
|
|
24
|
+
* Resolves the snapshot directory paths without creating them.
|
|
25
|
+
* @param baseplateDirectory - The baseplate directory (e.g. `<projectDir>/baseplate`)
|
|
26
|
+
* @param appName - The app name within the project
|
|
18
27
|
*/
|
|
19
|
-
export declare function resolveSnapshotDirectory(
|
|
28
|
+
export declare function resolveSnapshotDirectory(baseplateDirectory: string, appName: string): SnapshotDirectory;
|
|
20
29
|
//# sourceMappingURL=snapshot-utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-utils.d.ts","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,
|
|
1
|
+
{"version":3,"file":"snapshot-utils.d.ts","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-utils.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAQ7D;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,CAAC,EAAE,MAAM,GAC1B,MAAM,CAER;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAKnE;AAaD;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,kBAAkB,EAAE,MAAM,EAC1B,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,CAAC,CAc5B;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,kBAAkB,EAAE,MAAM,EAC1B,OAAO,EAAE,MAAM,GACd,iBAAiB,CAUnB"}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { mkdir } from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
|
-
import {
|
|
3
|
+
import { DIFFS_DIRNAME, MANIFEST_FILENAME, SNAPSHOTS_DIRNAME, } from './snapshot-types.js';
|
|
4
|
+
/**
|
|
5
|
+
* Resolves the baseplate directory for a project.
|
|
6
|
+
* Defaults to `<projectDirectory>/baseplate` when no explicit override is provided.
|
|
7
|
+
*/
|
|
8
|
+
export function resolveBaseplateDir(projectDirectory, baseplateDirectory) {
|
|
9
|
+
return baseplateDirectory ?? path.join(projectDirectory, 'baseplate');
|
|
10
|
+
}
|
|
4
11
|
/**
|
|
5
12
|
* Converts a file path to a safe filename for storing diffs
|
|
6
13
|
* Example: "src/components/button.tsx" -> "src_components_button.tsx.diff"
|
|
@@ -19,10 +26,19 @@ export function safeDiffFilenameToPath(diffFilename) {
|
|
|
19
26
|
return diffFilename.slice(0, -5).replaceAll('_', '/');
|
|
20
27
|
}
|
|
21
28
|
/**
|
|
22
|
-
*
|
|
29
|
+
* Resolves the snapshot path for a given baseplate directory and app name.
|
|
30
|
+
* Computes `<baseplateDirectory>/snapshots/<appName>/`.
|
|
31
|
+
*/
|
|
32
|
+
function resolveSnapshotPath(baseplateDirectory, appName) {
|
|
33
|
+
return path.join(baseplateDirectory, SNAPSHOTS_DIRNAME, appName);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Creates the snapshot directory structure.
|
|
37
|
+
* @param baseplateDirectory - The baseplate directory (e.g. `<projectDir>/baseplate`)
|
|
38
|
+
* @param appName - The app name within the project
|
|
23
39
|
*/
|
|
24
|
-
export async function createSnapshotDirectory(
|
|
25
|
-
const snapshotPath =
|
|
40
|
+
export async function createSnapshotDirectory(baseplateDirectory, appName) {
|
|
41
|
+
const snapshotPath = resolveSnapshotPath(baseplateDirectory, appName);
|
|
26
42
|
const manifestPath = path.join(snapshotPath, MANIFEST_FILENAME);
|
|
27
43
|
const diffsPath = path.join(snapshotPath, DIFFS_DIRNAME);
|
|
28
44
|
// Create the directories
|
|
@@ -35,11 +51,12 @@ export async function createSnapshotDirectory(baseDirectory, snapshotDir = DEFAU
|
|
|
35
51
|
};
|
|
36
52
|
}
|
|
37
53
|
/**
|
|
38
|
-
* Resolves the snapshot directory paths without creating them
|
|
54
|
+
* Resolves the snapshot directory paths without creating them.
|
|
55
|
+
* @param baseplateDirectory - The baseplate directory (e.g. `<projectDir>/baseplate`)
|
|
56
|
+
* @param appName - The app name within the project
|
|
39
57
|
*/
|
|
40
|
-
export function resolveSnapshotDirectory(
|
|
41
|
-
const
|
|
42
|
-
const snapshotPath = path.resolve(baseDirectory, snapshotDirName);
|
|
58
|
+
export function resolveSnapshotDirectory(baseplateDirectory, appName) {
|
|
59
|
+
const snapshotPath = resolveSnapshotPath(baseplateDirectory, appName);
|
|
43
60
|
const manifestPath = path.join(snapshotPath, MANIFEST_FILENAME);
|
|
44
61
|
const diffsPath = path.join(snapshotPath, DIFFS_DIRNAME);
|
|
45
62
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-utils.js","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"snapshot-utils.js","sourceRoot":"","sources":["../../../src/diff/snapshot/snapshot-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAE7B;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,gBAAwB,EACxB,kBAA2B;IAE3B,OAAO,kBAAkB,IAAI,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;AACxE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC;AACtD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,YAAoB;IACzD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,kBAA0B,EAC1B,OAAe;IAEf,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,kBAA0B,EAC1B,OAAe;IAEf,MAAM,YAAY,GAAG,mBAAmB,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAEzD,yBAAyB;IACzB,MAAM,KAAK,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE5C,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,YAAY;QACZ,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,kBAA0B,EAC1B,OAAe;IAEf,MAAM,YAAY,GAAG,mBAAmB,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAEzD,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,YAAY;QACZ,SAAS;KACV,CAAC;AACJ,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export * from './constants/index.js';
|
|
|
5
5
|
export * from './core-modules/index.js';
|
|
6
6
|
export * from './diff/index.js';
|
|
7
7
|
export * from './plugins/index.js';
|
|
8
|
+
export * from './project-definition/index.js';
|
|
8
9
|
export * from './server/index.js';
|
|
9
10
|
export * from './service/builder-service.js';
|
|
10
11
|
export * from './sync/index.js';
|
package/dist/index.js
CHANGED
|
@@ -5,6 +5,7 @@ export * from './constants/index.js';
|
|
|
5
5
|
export * from './core-modules/index.js';
|
|
6
6
|
export * from './diff/index.js';
|
|
7
7
|
export * from './plugins/index.js';
|
|
8
|
+
export * from './project-definition/index.js';
|
|
8
9
|
export * from './server/index.js';
|
|
9
10
|
export * from './service/builder-service.js';
|
|
10
11
|
export * from './sync/index.js';
|
|
@@ -2,5 +2,5 @@ import type { PluginMetadataWithPaths, PluginStore, ProjectInfo, SchemaParserCon
|
|
|
2
2
|
import type { Logger } from '@baseplate-dev/sync';
|
|
3
3
|
export declare function createNodePluginStore(plugins: PluginMetadataWithPaths[]): Promise<PluginStore>;
|
|
4
4
|
export declare function createNodePluginStoreFromDirectory(projectDirectory: string, logger: Logger, builtinPlugins: PluginMetadataWithPaths[]): Promise<PluginStore>;
|
|
5
|
-
export declare function createNodeSchemaParserContext(project: ProjectInfo, logger: Logger, builtinPlugins: PluginMetadataWithPaths[], cliVersion: string): Promise<SchemaParserContext>;
|
|
5
|
+
export declare function createNodeSchemaParserContext(project: ProjectInfo, logger: Logger, builtinPlugins: PluginMetadataWithPaths[], cliVersion: string, pluginDiscoveryDirectory?: string): Promise<SchemaParserContext>;
|
|
6
6
|
//# sourceMappingURL=node-plugin-store.d.ts.map
|
|
@@ -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;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,
|
|
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,EAClB,wBAAwB,CAAC,EAAE,MAAM,GAChC,OAAO,CAAC,mBAAmB,CAAC,CAU9B"}
|
|
@@ -27,10 +27,10 @@ export async function createNodePluginStoreFromDirectory(projectDirectory, logge
|
|
|
27
27
|
];
|
|
28
28
|
return createNodePluginStore(allPlugins);
|
|
29
29
|
}
|
|
30
|
-
export async function createNodeSchemaParserContext(project, logger, builtinPlugins, cliVersion) {
|
|
30
|
+
export async function createNodeSchemaParserContext(project, logger, builtinPlugins, cliVersion, pluginDiscoveryDirectory) {
|
|
31
31
|
return {
|
|
32
32
|
project,
|
|
33
|
-
pluginStore: await createNodePluginStoreFromDirectory(project.directory, logger, builtinPlugins),
|
|
33
|
+
pluginStore: await createNodePluginStoreFromDirectory(pluginDiscoveryDirectory ?? project.directory, logger, builtinPlugins),
|
|
34
34
|
cliVersion,
|
|
35
35
|
};
|
|
36
36
|
}
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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,EAClB,wBAAiC;IAEjC,OAAO;QACL,OAAO;QACP,WAAW,EAAE,MAAM,kCAAkC,CACnD,wBAAwB,IAAI,OAAO,CAAC,SAAS,EAC7C,MAAM,EACN,cAAc,CACf;QACD,UAAU;KACX,CAAC;AACJ,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { ProjectDefinition, SchemaParserContext } from '@baseplate-dev/project-builder-lib';
|
|
2
2
|
/**
|
|
3
3
|
* Loads the project definition from the given directory and runs migrations on it.
|
|
4
|
-
* @param
|
|
4
|
+
* @param baseplateDirectory - The baseplate directory containing project-definition.json.
|
|
5
5
|
* @param context - The context to use for parsing the project.
|
|
6
6
|
* @returns The project definition and the hash of the project definition.
|
|
7
7
|
*/
|
|
8
|
-
export declare function loadProjectDefinition(
|
|
8
|
+
export declare function loadProjectDefinition(baseplateDirectory: string, context: SchemaParserContext): Promise<{
|
|
9
9
|
definition: ProjectDefinition;
|
|
10
10
|
hash: string;
|
|
11
11
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-project-definition.d.ts","sourceRoot":"","sources":["../../src/project-definition/load-project-definition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,oCAAoC,CAAC;AAgB5C;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,
|
|
1
|
+
{"version":3,"file":"load-project-definition.d.ts","sourceRoot":"","sources":["../../src/project-definition/load-project-definition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,oCAAoC,CAAC;AAgB5C;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,kBAAkB,EAAE,MAAM,EAC1B,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC;IAAE,UAAU,EAAE,iBAAiB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA6C1D"}
|
|
@@ -5,12 +5,12 @@ import { readFile, writeFile } from 'node:fs/promises';
|
|
|
5
5
|
import path from 'node:path';
|
|
6
6
|
/**
|
|
7
7
|
* Loads the project definition from the given directory and runs migrations on it.
|
|
8
|
-
* @param
|
|
8
|
+
* @param baseplateDirectory - The baseplate directory containing project-definition.json.
|
|
9
9
|
* @param context - The context to use for parsing the project.
|
|
10
10
|
* @returns The project definition and the hash of the project definition.
|
|
11
11
|
*/
|
|
12
|
-
export async function loadProjectDefinition(
|
|
13
|
-
const projectJsonPath = path.join(
|
|
12
|
+
export async function loadProjectDefinition(baseplateDirectory, context) {
|
|
13
|
+
const projectJsonPath = path.join(baseplateDirectory, 'project-definition.json');
|
|
14
14
|
const projectJsonExists = await fileExists(projectJsonPath);
|
|
15
15
|
if (!projectJsonExists) {
|
|
16
16
|
throw new Error(`Could not find definition file at ${projectJsonPath}`);
|
|
@@ -1 +1 @@
|
|
|
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,
|
|
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,kBAA0B,EAC1B,OAA4B;IAE5B,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAC/B,kBAAkB,EAClB,yBAAyB,CAC1B,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"}
|
|
@@ -14,8 +14,9 @@ interface GenerateForDirectoryOptions {
|
|
|
14
14
|
abortSignal?: AbortSignal;
|
|
15
15
|
skipCommands?: boolean;
|
|
16
16
|
overwrite?: boolean;
|
|
17
|
-
|
|
17
|
+
/** Custom baseplate directory. Defaults to `path.join(baseDirectory, 'baseplate')`. */
|
|
18
|
+
baseplateDirectory?: string;
|
|
18
19
|
}
|
|
19
|
-
export declare function generateForDirectory({ baseDirectory, appEntry, logger, writeTemplateMetadataOptions, userConfig, previousPackageSyncResult, operations, abortSignal, skipCommands, overwrite,
|
|
20
|
+
export declare function generateForDirectory({ baseDirectory, appEntry, logger, writeTemplateMetadataOptions, userConfig, previousPackageSyncResult, operations, abortSignal, skipCommands, overwrite, baseplateDirectory, }: GenerateForDirectoryOptions): Promise<PackageSyncResult>;
|
|
20
21
|
export {};
|
|
21
22
|
//# sourceMappingURL=generate-for-directory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-for-directory.d.ts","sourceRoot":"","sources":["../../src/sync/generate-for-directory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,MAAM,EAEN,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAQ7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAIlF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-for-directory.d.ts","sourceRoot":"","sources":["../../src/sync/generate-for-directory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,MAAM,EAEN,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAQ7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAIlF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAWtD,UAAU,2BAA2B;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,4BAA4B,CAAC,EAAE,uBAAuB,CAAC;IACvD,UAAU,EAAE,mBAAmB,CAAC;IAChC,yBAAyB,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACzD,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAsB,oBAAoB,CAAC,EACzC,aAAa,EACb,QAAQ,EACR,MAAM,EACN,4BAA4B,EAC5B,UAAU,EACV,yBAAyB,EACzB,UAAyC,EACzC,WAAW,EACX,YAAY,EACZ,SAAS,EACT,kBAAkB,GACnB,EAAE,2BAA2B,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA8L1D"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { CancelledSyncError, loadIgnorePatterns } from '@baseplate-dev/sync';
|
|
2
2
|
import { randomKey } from '@baseplate-dev/utils';
|
|
3
3
|
import chalk from 'chalk';
|
|
4
|
-
import { mkdir, rename, rm } from 'node:fs/promises';
|
|
4
|
+
import { mkdir, readFile, rename, rm, writeFile } from 'node:fs/promises';
|
|
5
5
|
import path from 'node:path';
|
|
6
6
|
import { applySnapshotToFileContents } from '#src/diff/index.js';
|
|
7
7
|
import { loadSnapshotManifest } from '../diff/snapshot/snapshot-manifest.js';
|
|
8
|
-
import { resolveSnapshotDirectory } from '../diff/snapshot/snapshot-utils.js';
|
|
8
|
+
import { resolveBaseplateDir, resolveSnapshotDirectory, } from '../diff/snapshot/snapshot-utils.js';
|
|
9
9
|
import { writeGeneratedFileIdMap } from './file-id-map.js';
|
|
10
10
|
import { GENERATED_DIRECTORY } from './get-previous-generated-payload.js';
|
|
11
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,
|
|
12
|
+
export async function generateForDirectory({ baseDirectory, appEntry, logger, writeTemplateMetadataOptions, userConfig, previousPackageSyncResult, operations = DEFAULT_GENERATOR_OPERATIONS, abortSignal, skipCommands, overwrite, baseplateDirectory, }) {
|
|
13
13
|
const { packageDirectory, name, generatorBundle } = appEntry;
|
|
14
14
|
const projectDirectory = path.join(baseDirectory, packageDirectory);
|
|
15
15
|
logger.info(`Generating project ${name} in ${projectDirectory}...`);
|
|
@@ -19,9 +19,8 @@ export async function generateForDirectory({ baseDirectory, appEntry, logger, wr
|
|
|
19
19
|
});
|
|
20
20
|
if (abortSignal?.aborted)
|
|
21
21
|
throw new CancelledSyncError();
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
});
|
|
22
|
+
const resolvedBaseplateDir = resolveBaseplateDir(baseDirectory, baseplateDirectory);
|
|
23
|
+
const resolvedSnapshotDirectory = resolveSnapshotDirectory(resolvedBaseplateDir, name);
|
|
25
24
|
const snapshot = await loadSnapshotManifest(resolvedSnapshotDirectory);
|
|
26
25
|
logger.info('Project built! Writing output....');
|
|
27
26
|
// load clean directory contents
|
|
@@ -35,19 +34,20 @@ export async function generateForDirectory({ baseDirectory, appEntry, logger, wr
|
|
|
35
34
|
logger.warn(`Failed to load .baseplateignore patterns, proceeding without ignore filtering: ${String(error)}`);
|
|
36
35
|
return undefined;
|
|
37
36
|
});
|
|
38
|
-
if (
|
|
39
|
-
logger.info(`
|
|
37
|
+
if (snapshot) {
|
|
38
|
+
logger.info(`Snapshot detected for ${name}.`);
|
|
40
39
|
}
|
|
41
40
|
const overwriteOptions = {
|
|
42
41
|
enabled: !!overwrite,
|
|
43
|
-
applyDiff: snapshot
|
|
44
|
-
|
|
42
|
+
applyDiff: snapshot
|
|
43
|
+
? async (relativePath, generatedContents) => {
|
|
45
44
|
const result = await applySnapshotToFileContents(relativePath, generatedContents, snapshot, resolvedSnapshotDirectory.diffsPath);
|
|
46
45
|
if (result === false) {
|
|
47
46
|
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
47
|
}
|
|
49
48
|
return result;
|
|
50
|
-
}
|
|
49
|
+
}
|
|
50
|
+
: undefined,
|
|
51
51
|
skipFile: (relativePath) => {
|
|
52
52
|
if (!ignorePatterns) {
|
|
53
53
|
return false;
|
|
@@ -81,6 +81,19 @@ export async function generateForDirectory({ baseDirectory, appEntry, logger, wr
|
|
|
81
81
|
await rm(generatedDirectory, { recursive: true });
|
|
82
82
|
}
|
|
83
83
|
await rename(generatedTemporaryDirectory, generatedDirectory);
|
|
84
|
+
// Write snapshot added files (user-created files not produced by generator)
|
|
85
|
+
if (overwrite && snapshot) {
|
|
86
|
+
for (const addedEntry of snapshot.files.added) {
|
|
87
|
+
if (!addedEntry.contentFile) {
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
const contentFilePath = path.join(resolvedSnapshotDirectory.diffsPath, addedEntry.contentFile);
|
|
91
|
+
const contents = await readFile(contentFilePath, 'utf-8');
|
|
92
|
+
const targetPath = path.join(projectDirectory, addedEntry.path);
|
|
93
|
+
await mkdir(path.dirname(targetPath), { recursive: true });
|
|
94
|
+
await writeFile(targetPath, contents);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
84
97
|
// Write file ID map
|
|
85
98
|
await writeGeneratedFileIdMap(projectDirectory, fileIdToRelativePathMap);
|
|
86
99
|
// Write generator steps
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-for-directory.js","sourceRoot":"","sources":["../../src/sync/generate-for-directory.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"generate-for-directory.js","sourceRoot":"","sources":["../../src/sync/generate-for-directory.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,9 +45,9 @@ export interface SyncProjectOptions {
|
|
|
45
45
|
*/
|
|
46
46
|
overwrite?: boolean;
|
|
47
47
|
/**
|
|
48
|
-
*
|
|
48
|
+
* Custom baseplate directory. Defaults to `path.join(directory, 'baseplate')`.
|
|
49
49
|
*/
|
|
50
|
-
|
|
50
|
+
baseplateDirectory?: string;
|
|
51
51
|
/**
|
|
52
52
|
* Only sync specific packages by name.
|
|
53
53
|
*/
|
|
@@ -71,5 +71,5 @@ export interface SyncProjectResult {
|
|
|
71
71
|
*
|
|
72
72
|
* @param options - The options for syncing the project.
|
|
73
73
|
*/
|
|
74
|
-
export declare function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite,
|
|
74
|
+
export declare function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite, baseplateDirectory, packageFilter, }: SyncProjectOptions): Promise<SyncProjectResult>;
|
|
75
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;
|
|
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;AASlD,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,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;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,kBAAkB,EAClB,aAAa,GACd,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA6KjD"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { CancelledSyncError } from '@baseplate-dev/sync';
|
|
2
|
+
import { dirExists } from '@baseplate-dev/utils/node';
|
|
2
3
|
import { mapValues } from 'es-toolkit';
|
|
4
|
+
import { mkdir } from 'node:fs/promises';
|
|
3
5
|
import path from 'node:path';
|
|
4
6
|
import { stripVTControlCharacters } from 'node:util';
|
|
5
7
|
import { compilePackages } from '#src/compiler/index.js';
|
|
@@ -12,7 +14,11 @@ import { getPackageSyncStatusFromResult } from './utils.js';
|
|
|
12
14
|
*
|
|
13
15
|
* @param options - The options for syncing the project.
|
|
14
16
|
*/
|
|
15
|
-
export async function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite,
|
|
17
|
+
export async function syncProject({ directory, logger, context, userConfig, syncMetadataController, abortSignal, skipCommands, cliFilePath, overwrite, baseplateDirectory, packageFilter, }) {
|
|
18
|
+
const outputDirExists = await dirExists(directory);
|
|
19
|
+
if (!outputDirExists) {
|
|
20
|
+
await mkdir(directory, { recursive: true });
|
|
21
|
+
}
|
|
16
22
|
await syncMetadataController?.updateMetadata((metadata) => ({
|
|
17
23
|
...metadata,
|
|
18
24
|
status: 'in-progress',
|
|
@@ -25,7 +31,7 @@ export async function syncProject({ directory, logger, context, userConfig, sync
|
|
|
25
31
|
})),
|
|
26
32
|
}));
|
|
27
33
|
try {
|
|
28
|
-
const { definition: projectJson } = await loadProjectDefinition(directory, context);
|
|
34
|
+
const { definition: projectJson } = await loadProjectDefinition(baseplateDirectory ?? path.join(directory, 'baseplate'), context);
|
|
29
35
|
const apps = compilePackages(projectJson, context);
|
|
30
36
|
// Filter apps if specified
|
|
31
37
|
const filteredApps = packageFilter?.length
|
|
@@ -84,7 +90,7 @@ export async function syncProject({ directory, logger, context, userConfig, sync
|
|
|
84
90
|
abortSignal,
|
|
85
91
|
skipCommands,
|
|
86
92
|
overwrite,
|
|
87
|
-
|
|
93
|
+
baseplateDirectory,
|
|
88
94
|
});
|
|
89
95
|
}
|
|
90
96
|
catch (err) {
|
|
@@ -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;AAmE5D;;;;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,
|
|
1
|
+
{"version":3,"file":"sync-project.js","sourceRoot":"","sources":["../../src/sync/sync-project.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-generator.d.ts","sourceRoot":"","sources":["../../../src/templates/create/create-generator.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAyHD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,oBAAoB,GAC1B,qBAAqB,
|
|
1
|
+
{"version":3,"file":"create-generator.d.ts","sourceRoot":"","sources":["../../../src/templates/create/create-generator.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAyHD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,oBAAoB,GAC1B,qBAAqB,CAsGvB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { camelCase, constantCase } from 'change-case';
|
|
2
|
-
import {
|
|
2
|
+
import { execFileSync } from 'node:child_process';
|
|
3
3
|
import fs from 'node:fs';
|
|
4
4
|
import path from 'node:path';
|
|
5
5
|
import { findMonorepoRoot } from '#src/utils/find-monorepo-root.js';
|
|
@@ -63,7 +63,7 @@ function generateIndexFileContent(kebabName) {
|
|
|
63
63
|
* Generate the placeholder generated/index.ts content
|
|
64
64
|
*/
|
|
65
65
|
function generatePlaceholderGeneratedContent(parsed) {
|
|
66
|
-
return `// This file is auto-generated by \`
|
|
66
|
+
return `// This file is auto-generated by the \`generate-templates\` command
|
|
67
67
|
// Do not edit manually - run the command after adding templates
|
|
68
68
|
export const ${parsed.screamingSnakeName}_GENERATED = undefined as never;
|
|
69
69
|
`;
|
|
@@ -157,7 +157,7 @@ export function createGenerator(input) {
|
|
|
157
157
|
}
|
|
158
158
|
// Format the generated files with Prettier
|
|
159
159
|
try {
|
|
160
|
-
|
|
160
|
+
execFileSync('pnpm', ['prettier', '--write', '--list-different', `${generatorDir}/**/*`], {
|
|
161
161
|
stdio: 'pipe',
|
|
162
162
|
cwd: process.cwd(),
|
|
163
163
|
});
|