123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- /*---------------------------------------------------------------------------------------------
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License. See License.txt in the project root for license information.
- *--------------------------------------------------------------------------------------------*/
- const esbuild = require('esbuild');
- const alias = require('esbuild-plugin-alias');
- const path = require('path');
- const cp = require('child_process');
- const { removeDir, tsc, dts } = require('../../build/utils');
- removeDir(`monaco-css/release`);
- removeDir(`monaco-css/out`);
- tsc(`monaco-css/src/tsconfig.json`);
- dts(
- `monaco-css/out/amd/monaco.contribution.d.ts`,
- `monaco-css/monaco.d.ts`,
- 'monaco.languages.css'
- );
- /**
- * @param {import('esbuild').BuildOptions} options
- */
- function build(options) {
- esbuild.build(options).then((result) => {
- if (result.errors.length > 0) {
- console.error(result.errors);
- }
- if (result.warnings.length > 0) {
- console.error(result.warnings);
- }
- });
- }
- build({
- entryPoints: ['src/monaco.contribution.ts', 'src/cssMode.ts', 'src/css.worker.ts'],
- bundle: true,
- target: 'esnext',
- format: 'esm',
- define: {
- AMD: false
- },
- external: ['monaco-editor-core', '*/cssMode'],
- outdir: 'release/esm/',
- plugins: [
- alias({
- 'vscode-nls': path.join(__dirname, '../src/fillers/vscode-nls.ts')
- })
- ]
- });
- /**
- * @param {'dev'|'min'} type
- * @param {string} entryPoint
- * @param {string} banner
- */
- function buildOneAMD(type, entryPoint, banner) {
- /** @type {import('esbuild').BuildOptions} */
- const options = {
- entryPoints: [entryPoint],
- bundle: true,
- target: 'esnext',
- format: 'iife',
- define: {
- AMD: true
- },
- external: ['*/cssMode'],
- globalName: 'moduleExports',
- banner: {
- js: banner
- },
- footer: {
- js: 'return moduleExports;\n});'
- },
- outdir: `release/${type}/`,
- plugins: [
- alias({
- 'monaco-editor-core': path.join(__dirname, '../src/fillers/monaco-editor-core-amd.ts')
- })
- ]
- };
- if (type === 'min') {
- options.minify = true;
- }
- build(options);
- }
- /**
- * @param {string} entryPoint
- * @param {string} banner
- */
- function buildAMD(entryPoint, banner) {
- buildOneAMD('dev', entryPoint, banner);
- buildOneAMD('min', entryPoint, banner);
- }
- buildAMD('src/monaco.contribution.ts', 'define("vs/language/css/monaco.contribution",["vs/editor/editor.api"],()=>{');
- buildAMD('src/cssMode.ts', 'define("vs/language/css/cssMode",["vs/editor/editor.api"],()=>{');
- buildAMD('src/cssWorker.ts', 'define("vs/language/css/cssWorker",[],()=>{');
|