Henning Dieterichs 2025-09-11 17:21:23 +02:00
parent 2a3d33900c
commit 0fb1b5ae89
No known key found for this signature in database
GPG key ID: 771381EFFDB9EC06
2 changed files with 34 additions and 0 deletions

View file

@ -46,8 +46,26 @@ async function prepareMonacoEditorRelease(monacoEditorCoreVersion: string) {
const packageJson = JSON.parse(
await readFile(monacoEditorPackageJsonPath, { encoding: 'utf-8' })
) as PackageJson;
packageJson.version = monacoEditorCoreVersion;
packageJson.devDependencies['monaco-editor-core'] = monacoEditorCoreVersion;
const monacoEditorCorePackageJson = JSON.parse(
await readFile(monacoEditorCorePackageJsonPath, { encoding: 'utf-8' })
) as PackageJson;
if (monacoEditorCorePackageJson.dependencies) {
if (!packageJson.dependencies) {
packageJson.dependencies = {};
}
objectMergeThrowIfSet(
packageJson.dependencies,
monacoEditorCorePackageJson.dependencies,
'dependencies'
);
}
await writeJsonFile(monacoEditorPackageJsonPath, packageJson);
});
@ -81,4 +99,19 @@ async function prepareMonacoEditorRelease(monacoEditorCoreVersion: string) {
});
}
function objectMergeThrowIfSet(
target: Record<string, any>,
source: Record<string, any>,
fieldName: string
): void {
for (const [key, value] of Object.entries(source)) {
if (key in target) {
throw new Error(
`Cannot merge ${fieldName}: property '${key}' already exists in target with value '${target[key]}', would be overridden with '${value}'`
);
}
target[key] = value;
}
}
prepareMonacoEditorReleaseStableOrNightly();

View file

@ -92,4 +92,5 @@ export interface PackageJson {
vscodeCommitId?: string;
monacoCommitId?: string;
devDependencies: Record<string, string>;
dependencies?: Record<string, string>;
}