mirror of
https://github.com/microsoft/monaco-editor.git
synced 2025-12-22 12:45:39 +01:00
Avoid going through separate package.json files
This commit is contained in:
parent
d2e1d5104f
commit
aa5bb2cfa7
13 changed files with 38 additions and 30 deletions
|
|
@ -55,11 +55,7 @@ You need to have all the build setup of VS Code to be able to build the Monaco E
|
||||||
/src/monaco-editor> npm install .
|
/src/monaco-editor> npm install .
|
||||||
|
|
||||||
# compile all plugins
|
# compile all plugins
|
||||||
/src/monaco-editor> npm run prepublishOnly --prefix monaco-css
|
/src/monaco-editor> npm run release
|
||||||
/src/monaco-editor> npm run prepublishOnly --prefix monaco-languages
|
|
||||||
/src/monaco-editor> npm run prepublishOnly --prefix monaco-typescript
|
|
||||||
/src/monaco-editor> npm run prepublishOnly --prefix monaco-json
|
|
||||||
/src/monaco-editor> npm run prepublishOnly --prefix monaco-html
|
|
||||||
|
|
||||||
# start a local http server in the background
|
# start a local http server in the background
|
||||||
/src/monaco-editor> npm run simpleserver
|
/src/monaco-editor> npm run simpleserver
|
||||||
|
|
|
||||||
|
|
@ -178,13 +178,14 @@ exports.build = build;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {{
|
* @param {{
|
||||||
|
* base: string;
|
||||||
* entryPoints: string[];
|
* entryPoints: string[];
|
||||||
* external: string[];
|
* external: string[];
|
||||||
* }} options
|
* }} options
|
||||||
*/
|
*/
|
||||||
function buildESM(options) {
|
function buildESM(options) {
|
||||||
build({
|
build({
|
||||||
entryPoints: options.entryPoints,
|
entryPoints: options.entryPoints.map(e => (`${options.base}/${e}`)),
|
||||||
bundle: true,
|
bundle: true,
|
||||||
target: 'esnext',
|
target: 'esnext',
|
||||||
format: 'esm',
|
format: 'esm',
|
||||||
|
|
@ -192,8 +193,8 @@ function buildESM(options) {
|
||||||
AMD: 'false'
|
AMD: 'false'
|
||||||
},
|
},
|
||||||
external: options.external,
|
external: options.external,
|
||||||
outbase: 'src',
|
outbase: `${options.base}/src`,
|
||||||
outdir: 'release/esm/',
|
outdir: `${options.base}/release/esm/`,
|
||||||
plugins: [
|
plugins: [
|
||||||
alias({
|
alias({
|
||||||
'vscode-nls': path.join(__dirname, 'fillers/vscode-nls.ts')
|
'vscode-nls': path.join(__dirname, 'fillers/vscode-nls.ts')
|
||||||
|
|
@ -206,6 +207,7 @@ exports.buildESM = buildESM;
|
||||||
/**
|
/**
|
||||||
* @param {'dev'|'min'} type
|
* @param {'dev'|'min'} type
|
||||||
* @param {{
|
* @param {{
|
||||||
|
* base: string;
|
||||||
* entryPoint: string;
|
* entryPoint: string;
|
||||||
* banner: string;
|
* banner: string;
|
||||||
* }} options
|
* }} options
|
||||||
|
|
@ -213,7 +215,7 @@ exports.buildESM = buildESM;
|
||||||
function buildOneAMD(type, options) {
|
function buildOneAMD(type, options) {
|
||||||
/** @type {import('esbuild').BuildOptions} */
|
/** @type {import('esbuild').BuildOptions} */
|
||||||
const opts = {
|
const opts = {
|
||||||
entryPoints: [options.entryPoint],
|
entryPoints: [`${options.base}/${options.entryPoint}`],
|
||||||
bundle: true,
|
bundle: true,
|
||||||
target: 'esnext',
|
target: 'esnext',
|
||||||
format: 'iife',
|
format: 'iife',
|
||||||
|
|
@ -227,8 +229,8 @@ function buildOneAMD(type, options) {
|
||||||
footer: {
|
footer: {
|
||||||
js: 'return moduleExports;\n});'
|
js: 'return moduleExports;\n});'
|
||||||
},
|
},
|
||||||
outbase: 'src',
|
outbase: `${options.base}/src`,
|
||||||
outdir: `release/${type}/`,
|
outdir: `${options.base}/release/${type}/`,
|
||||||
plugins: [
|
plugins: [
|
||||||
alias({
|
alias({
|
||||||
'vscode-nls': path.join(__dirname, '../build/fillers/vscode-nls.ts'),
|
'vscode-nls': path.join(__dirname, '../build/fillers/vscode-nls.ts'),
|
||||||
|
|
@ -244,6 +246,7 @@ function buildOneAMD(type, options) {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param {{
|
* @param {{
|
||||||
|
* base: string;
|
||||||
* entryPoint: string;
|
* entryPoint: string;
|
||||||
* banner: string;
|
* banner: string;
|
||||||
* }} options
|
* }} options
|
||||||
|
|
|
||||||
|
|
@ -19,18 +19,22 @@ dts(
|
||||||
);
|
);
|
||||||
|
|
||||||
buildESM({
|
buildESM({
|
||||||
|
base: 'monaco-css',
|
||||||
entryPoints: ['src/monaco.contribution.ts', 'src/cssMode.ts', 'src/css.worker.ts'],
|
entryPoints: ['src/monaco.contribution.ts', 'src/cssMode.ts', 'src/css.worker.ts'],
|
||||||
external: ['monaco-editor-core', '*/cssMode']
|
external: ['monaco-editor-core', '*/cssMode']
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-css',
|
||||||
entryPoint: 'src/monaco.contribution.ts',
|
entryPoint: 'src/monaco.contribution.ts',
|
||||||
banner: 'define("vs/language/css/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/language/css/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-css',
|
||||||
entryPoint: 'src/cssMode.ts',
|
entryPoint: 'src/cssMode.ts',
|
||||||
banner: 'define("vs/language/css/cssMode",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/language/css/cssMode",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-css',
|
||||||
entryPoint: 'src/cssWorker.ts',
|
entryPoint: 'src/cssWorker.ts',
|
||||||
banner: 'define("vs/language/css/cssWorker",[],()=>{'
|
banner: 'define("vs/language/css/cssWorker",[],()=>{'
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
{
|
{
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"watch": "../node_modules/.bin/tsc -p ./src --watch",
|
"watch": "../node_modules/.bin/tsc -p ./src --watch"
|
||||||
"prepublishOnly": "node ./build"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,18 +19,22 @@ dts(
|
||||||
);
|
);
|
||||||
|
|
||||||
buildESM({
|
buildESM({
|
||||||
|
base: 'monaco-html',
|
||||||
entryPoints: ['src/monaco.contribution.ts', 'src/htmlMode.ts', 'src/html.worker.ts'],
|
entryPoints: ['src/monaco.contribution.ts', 'src/htmlMode.ts', 'src/html.worker.ts'],
|
||||||
external: ['monaco-editor-core', '*/htmlMode']
|
external: ['monaco-editor-core', '*/htmlMode']
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-html',
|
||||||
entryPoint: 'src/monaco.contribution.ts',
|
entryPoint: 'src/monaco.contribution.ts',
|
||||||
banner: 'define("vs/language/html/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/language/html/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-html',
|
||||||
entryPoint: 'src/htmlMode.ts',
|
entryPoint: 'src/htmlMode.ts',
|
||||||
banner: 'define("vs/language/html/htmlMode",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/language/html/htmlMode",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-html',
|
||||||
entryPoint: 'src/htmlWorker.ts',
|
entryPoint: 'src/htmlWorker.ts',
|
||||||
banner: 'define("vs/language/html/htmlWorker",[],()=>{'
|
banner: 'define("vs/language/html/htmlWorker",[],()=>{'
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
{
|
{
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"watch": "../node_modules/.bin/tsc -p ./src --watch",
|
"watch": "../node_modules/.bin/tsc -p ./src --watch"
|
||||||
"prepublishOnly": "node ./build"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,18 +19,22 @@ dts(
|
||||||
);
|
);
|
||||||
|
|
||||||
buildESM({
|
buildESM({
|
||||||
|
base: 'monaco-json',
|
||||||
entryPoints: ['src/monaco.contribution.ts', 'src/jsonMode.ts', 'src/json.worker.ts'],
|
entryPoints: ['src/monaco.contribution.ts', 'src/jsonMode.ts', 'src/json.worker.ts'],
|
||||||
external: ['monaco-editor-core', '*/jsonMode']
|
external: ['monaco-editor-core', '*/jsonMode']
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-json',
|
||||||
entryPoint: 'src/monaco.contribution.ts',
|
entryPoint: 'src/monaco.contribution.ts',
|
||||||
banner: 'define("vs/language/json/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/language/json/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-json',
|
||||||
entryPoint: 'src/jsonMode.ts',
|
entryPoint: 'src/jsonMode.ts',
|
||||||
banner: 'define("vs/language/json/jsonMode",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/language/json/jsonMode",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-json',
|
||||||
entryPoint: 'src/jsonWorker.ts',
|
entryPoint: 'src/jsonWorker.ts',
|
||||||
banner: 'define("vs/language/json/jsonWorker",[],()=>{'
|
banner: 'define("vs/language/json/jsonWorker",[],()=>{'
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,5 @@
|
||||||
{
|
{
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"watch": "../node_modules/.bin/tsc -p ./src --watch",
|
"watch": "../node_modules/.bin/tsc -p ./src --watch"
|
||||||
"prepublishOnly": "node ./build"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -33,6 +33,7 @@ glob('src/*/*.contribution.ts', { cwd: __dirname }, function (err, files) {
|
||||||
external.push(`*/${language}`);
|
external.push(`*/${language}`);
|
||||||
}
|
}
|
||||||
buildESM({
|
buildESM({
|
||||||
|
base: 'monaco-languages',
|
||||||
entryPoints,
|
entryPoints,
|
||||||
external
|
external
|
||||||
});
|
});
|
||||||
|
|
@ -41,11 +42,13 @@ glob('src/*/*.contribution.ts', { cwd: __dirname }, function (err, files) {
|
||||||
// AMD
|
// AMD
|
||||||
{
|
{
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-languages',
|
||||||
entryPoint: 'src/monaco.contribution.ts',
|
entryPoint: 'src/monaco.contribution.ts',
|
||||||
banner: 'define("vs/basic-languages/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/basic-languages/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
for (const language of languages) {
|
for (const language of languages) {
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-languages',
|
||||||
entryPoint: `src/${language}/${language}.ts`,
|
entryPoint: `src/${language}/${language}.ts`,
|
||||||
banner: `define("vs/basic-languages/${language}/${language}",[],()=>{`
|
banner: `define("vs/basic-languages/${language}/${language}",[],()=>{`
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
{
|
{
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"watch": "../node_modules/.bin/tsc -p ./src --watch",
|
"watch": "../node_modules/.bin/tsc -p ./src --watch",
|
||||||
"test": "node ./test/all.js",
|
"test": "node ./test/all.js"
|
||||||
"prepublishOnly": "node ./build"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,11 +15,6 @@ copyFile(
|
||||||
`monaco-typescript/out/amd/lib/typescriptServices.js`
|
`monaco-typescript/out/amd/lib/typescriptServices.js`
|
||||||
);
|
);
|
||||||
|
|
||||||
copyFile(
|
|
||||||
`monaco-typescript/src/lib/typescriptServices.js`,
|
|
||||||
`monaco-typescript/out/esm/lib/typescriptServices.js`
|
|
||||||
);
|
|
||||||
|
|
||||||
tsc(`monaco-typescript/src/tsconfig.json`);
|
tsc(`monaco-typescript/src/tsconfig.json`);
|
||||||
|
|
||||||
dts(
|
dts(
|
||||||
|
|
@ -29,18 +24,22 @@ dts(
|
||||||
);
|
);
|
||||||
|
|
||||||
buildESM({
|
buildESM({
|
||||||
|
base: 'monaco-typescript',
|
||||||
entryPoints: ['src/monaco.contribution.ts', 'src/tsMode.ts', 'src/ts.worker.ts'],
|
entryPoints: ['src/monaco.contribution.ts', 'src/tsMode.ts', 'src/ts.worker.ts'],
|
||||||
external: ['monaco-editor-core', '*/tsMode']
|
external: ['monaco-editor-core', '*/tsMode']
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-typescript',
|
||||||
entryPoint: 'src/monaco.contribution.ts',
|
entryPoint: 'src/monaco.contribution.ts',
|
||||||
banner: 'define("vs/language/typescript/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/language/typescript/monaco.contribution",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-typescript',
|
||||||
entryPoint: 'src/tsMode.ts',
|
entryPoint: 'src/tsMode.ts',
|
||||||
banner: 'define("vs/language/typescript/tsMode",["vs/editor/editor.api"],()=>{'
|
banner: 'define("vs/language/typescript/tsMode",["vs/editor/editor.api"],()=>{'
|
||||||
});
|
});
|
||||||
buildAMD({
|
buildAMD({
|
||||||
|
base: 'monaco-typescript',
|
||||||
entryPoint: 'src/tsWorker.ts',
|
entryPoint: 'src/tsWorker.ts',
|
||||||
banner: 'define("vs/language/typescript/tsWorker",[],()=>{'
|
banner: 'define("vs/language/typescript/tsWorker",[],()=>{'
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
{
|
{
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"watch": "../node_modules/.bin/tsc -p ./src --watch",
|
"watch": "../node_modules/.bin/tsc -p ./src --watch",
|
||||||
"prepublishOnly": "node ./build",
|
|
||||||
"import-typescript": "node ./scripts/importTypescript"
|
"import-typescript": "node ./scripts/importTypescript"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
10
package.json
10
package.json
|
|
@ -7,11 +7,11 @@
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"simpleserver": "gulp simpleserver",
|
"simpleserver": "gulp simpleserver",
|
||||||
"release-css": "npm run prepublishOnly --prefix monaco-css",
|
"release-css": "node ./monaco-css/build",
|
||||||
"release-html": "npm run prepublishOnly --prefix monaco-html",
|
"release-html": "node ./monaco-html/build",
|
||||||
"release-json": "npm run prepublishOnly --prefix monaco-json",
|
"release-json": "node ./monaco-json/build",
|
||||||
"release-languages": "npm run prepublishOnly --prefix monaco-languages",
|
"release-languages": "node ./monaco-languages/build",
|
||||||
"release-typescript": "npm run prepublishOnly --prefix monaco-typescript",
|
"release-typescript": "node ./monaco-typescript/build",
|
||||||
"release": "npm run release-css && npm run release-html && npm run release-json && npm run release-languages && npm run release-typescript && gulp release",
|
"release": "npm run release-css && npm run release-html && npm run release-json && npm run release-languages && npm run release-typescript && gulp release",
|
||||||
"website": "gulp build-website && npm run typedoc && gulp prepare-website-branch",
|
"website": "gulp build-website && npm run typedoc && gulp prepare-website-branch",
|
||||||
"build-website": "gulp build-website && npm run typedoc",
|
"build-website": "gulp build-website && npm run typedoc",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue