Sfoglia il codice sorgente

Move html sources into `/src/`

Alex Dima 3 anni fa
parent
commit
a8df4018f1

+ 1 - 1
.github/workflows/ci.yml

@@ -17,7 +17,7 @@ jobs:
         id: cacheNodeModules
         uses: actions/cache@v2
         with:
-          path: "**/node_modules"
+          path: '**/node_modules'
           key: ${{ runner.os }}-cacheNodeModules-${{ hashFiles('**/package-lock.json') }}
           restore-keys: ${{ runner.os }}-cacheNodeModules-
 

+ 0 - 2
.prettierignore

@@ -11,8 +11,6 @@
 /monaco-editor/typedoc/theme/
 /monaco-editor/typedoc/monaco.d.ts
 /monaco-editor/website/lib/
-/monaco-html/out/
-/monaco-html/release/
 /monaco-editor-webpack-plugin/test/dist/*.js
 /monaco-json/out/
 /monaco-json/release/

+ 16 - 20
.vscode/launch.json

@@ -1,20 +1,16 @@
-{
-	// Use IntelliSense to learn about possible attributes.
-	// Hover to view descriptions of existing attributes.
-	// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
-	"version": "0.2.0",
-	"configurations": [
-		{
-			"type": "pwa-node",
-			"request": "launch",
-			"name": "Monaco Languages Unit Tests",
-			"skipFiles": [
-				"<node_internals>/**"
-			],
-			"program": "${workspaceFolder}\\monaco-languages\\test\\all.js",
-			"outFiles": [
-				"${workspaceFolder}/**/*.js"
-			]
-		}
-	]
-}
+{
+	// Use IntelliSense to learn about possible attributes.
+	// Hover to view descriptions of existing attributes.
+	// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
+	"version": "0.2.0",
+	"configurations": [
+		{
+			"type": "pwa-node",
+			"request": "launch",
+			"name": "Monaco Languages Unit Tests",
+			"skipFiles": ["<node_internals>/**"],
+			"program": "${workspaceFolder}\\monaco-languages\\test\\all.js",
+			"outFiles": ["${workspaceFolder}/**/*.js"]
+		}
+	]
+}

+ 30 - 3
build/build.js

@@ -11,10 +11,11 @@ removeDir(`out`);
 
 tsc(`src/tsconfig.json`);
 
+dts(`out/amd/css/monaco.contribution.d.ts`, `out/release/css/monaco.d.ts`, 'monaco.languages.css');
 dts(
-	`out/amd/css/monaco.contribution.d.ts`,
-	`out/release/css/monaco.d.ts`,
-	'monaco.languages.css'
+	`out/amd/html/monaco.contribution.d.ts`,
+	`out/release/html/monaco.d.ts`,
+	'monaco.languages.html'
 );
 
 buildESM2({
@@ -38,3 +39,29 @@ buildAMD2({
 	entryPoint: 'src/css/cssWorker.ts',
 	amdModuleId: 'vs/language/css/cssWorker'
 });
+
+buildESM2({
+	base: 'html',
+	entryPoints: [
+		'src/html/monaco.contribution.ts',
+		'src/html/htmlMode.ts',
+		'src/html/html.worker.ts'
+	],
+	external: ['monaco-editor-core', '*/htmlMode']
+});
+buildAMD2({
+	base: 'html',
+	entryPoint: 'src/html/monaco.contribution.ts',
+	amdModuleId: 'vs/language/html/monaco.contribution',
+	amdDependencies: ['vs/editor/editor.api']
+});
+buildAMD2({
+	base: 'html',
+	entryPoint: 'src/html/htmlMode.ts',
+	amdModuleId: 'vs/language/html/htmlMode'
+});
+buildAMD2({
+	base: 'html',
+	entryPoint: 'src/html/htmlWorker.ts',
+	amdModuleId: 'vs/language/html/htmlWorker'
+});

+ 7 - 3
build/utils.js

@@ -186,7 +186,7 @@ exports.build = build;
  */
 function buildESM(options) {
 	build({
-		entryPoints: options.entryPoints.map(e => (`${options.base}/${e}`)),
+		entryPoints: options.entryPoints.map((e) => `${options.base}/${e}`),
 		bundle: true,
 		target: 'esnext',
 		format: 'esm',
@@ -260,7 +260,9 @@ function buildOneAMD(type, options) {
 		},
 		globalName: 'moduleExports',
 		banner: {
-			js: `${bundledFileHeader}define("${options.amdModuleId}",[${(options.amdDependencies || []).map(dep => (`"${dep}"`)).join(',')}],()=>{`
+			js: `${bundledFileHeader}define("${options.amdModuleId}",[${(options.amdDependencies || [])
+				.map((dep) => `"${dep}"`)
+				.join(',')}],()=>{`
 		},
 		footer: {
 			js: 'return moduleExports;\n});'
@@ -315,7 +317,9 @@ function buildOneAMD2(type, options) {
 		},
 		globalName: 'moduleExports',
 		banner: {
-			js: `${bundledFileHeader}define("${options.amdModuleId}",[${(options.amdDependencies || []).map(dep => (`"${dep}"`)).join(',')}],()=>{`
+			js: `${bundledFileHeader}define("${options.amdModuleId}",[${(options.amdDependencies || [])
+				.map((dep) => `"${dep}"`)
+				.join(',')}],()=>{`
 		},
 		footer: {
 			js: 'return moduleExports;\n});'

+ 4 - 4
monaco-editor/metadata.js

@@ -51,12 +51,12 @@
 				name: 'monaco-html',
 				contrib: 'vs/language/html/monaco.contribution',
 				modulePrefix: 'vs/language/html',
-				rootPath: './monaco-html',
+				rootPath: './out/release/html',
 				paths: {
 					// use ./ to indicate it is relative to the `rootPath`
-					dev: './release/dev',
-					min: './release/min',
-					esm: './release/esm'
+					dev: './dev',
+					min: './min',
+					esm: './esm'
 				}
 			},
 			{

+ 1 - 8
monaco-editor/typedoc/monaco.d.ts

@@ -6910,7 +6910,6 @@ declare namespace monaco.worker {
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-
 declare namespace monaco.languages.typescript {
     export enum ModuleKind {
         None = 0,
@@ -7522,7 +7521,6 @@ declare namespace monaco.languages.css {
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-
 declare namespace monaco.languages.json {
     export interface DiagnosticsOptions {
         /**
@@ -7635,7 +7633,6 @@ declare namespace monaco.languages.json {
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-
 declare namespace monaco.languages.html {
     export interface HTMLFormatConfiguration {
         readonly tabSize: number;
@@ -7742,11 +7739,7 @@ declare namespace monaco.languages.html {
      * Use this method to register additional language ids with a HTML service.
      * The language server has to be registered before an editor model is opened.
      */
-    export function registerHTMLLanguageService(
-        languageId: string,
-        options?: Options,
-        modeConfiguration?: ModeConfiguration
-    ): LanguageServiceRegistration;
+    export function registerHTMLLanguageService(languageId: string, options?: Options, modeConfiguration?: ModeConfiguration): LanguageServiceRegistration;
     export interface HTMLDataConfiguration {
         /**
          * Defines whether the standard HTML tags and attributes are shown

+ 1 - 8
monaco-editor/website/playground/monaco.d.ts.txt

@@ -6910,7 +6910,6 @@ declare namespace monaco.worker {
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-
 declare namespace monaco.languages.typescript {
     export enum ModuleKind {
         None = 0,
@@ -7522,7 +7521,6 @@ declare namespace monaco.languages.css {
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-
 declare namespace monaco.languages.json {
     export interface DiagnosticsOptions {
         /**
@@ -7635,7 +7633,6 @@ declare namespace monaco.languages.json {
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-
 declare namespace monaco.languages.html {
     export interface HTMLFormatConfiguration {
         readonly tabSize: number;
@@ -7742,11 +7739,7 @@ declare namespace monaco.languages.html {
      * Use this method to register additional language ids with a HTML service.
      * The language server has to be registered before an editor model is opened.
      */
-    export function registerHTMLLanguageService(
-        languageId: string,
-        options?: Options,
-        modeConfiguration?: ModeConfiguration
-    ): LanguageServiceRegistration;
+    export function registerHTMLLanguageService(languageId: string, options?: Options, modeConfiguration?: ModeConfiguration): LanguageServiceRegistration;
     export interface HTMLDataConfiguration {
         /**
          * Defines whether the standard HTML tags and attributes are shown

+ 0 - 41
monaco-html/build.js

@@ -1,41 +0,0 @@
-/*---------------------------------------------------------------------------------------------
- *  Copyright (c) Microsoft Corporation. All rights reserved.
- *  Licensed under the MIT License. See License.txt in the project root for license information.
- *--------------------------------------------------------------------------------------------*/
-
-//@ts-check
-
-const { removeDir, tsc, dts, buildESM, buildAMD } = require('../build/utils');
-
-removeDir(`monaco-html/release`);
-removeDir(`monaco-html/out`);
-
-tsc(`monaco-html/src/tsconfig.json`);
-
-dts(
-	`monaco-html/out/amd/monaco.contribution.d.ts`,
-	`monaco-html/monaco.d.ts`,
-	'monaco.languages.html'
-);
-
-buildESM({
-	base: 'monaco-html',
-	entryPoints: ['src/monaco.contribution.ts', 'src/htmlMode.ts', 'src/html.worker.ts'],
-	external: ['monaco-editor-core', '*/htmlMode']
-});
-buildAMD({
-	base: 'monaco-html',
-	entryPoint: 'src/monaco.contribution.ts',
-	amdModuleId: 'vs/language/html/monaco.contribution',
-	amdDependencies: ['vs/editor/editor.api']
-});
-buildAMD({
-	base: 'monaco-html',
-	entryPoint: 'src/htmlMode.ts',
-	amdModuleId: 'vs/language/html/htmlMode'
-});
-buildAMD({
-	base: 'monaco-html',
-	entryPoint: 'src/htmlWorker.ts',
-	amdModuleId: 'vs/language/html/htmlWorker'
-});

+ 0 - 172
monaco-html/monaco.d.ts

@@ -1,172 +0,0 @@
-/*---------------------------------------------------------------------------------------------
- *  Copyright (c) Microsoft Corporation. All rights reserved.
- *  Licensed under the MIT License. See License.txt in the project root for license information.
- *--------------------------------------------------------------------------------------------*/
-
-/// <reference path="../node_modules/monaco-editor-core/monaco.d.ts" />
-
-declare namespace monaco.languages.html {
-	export interface HTMLFormatConfiguration {
-		readonly tabSize: number;
-		readonly insertSpaces: boolean;
-		readonly wrapLineLength: number;
-		readonly unformatted: string;
-		readonly contentUnformatted: string;
-		readonly indentInnerHtml: boolean;
-		readonly preserveNewLines: boolean;
-		readonly maxPreserveNewLines: number;
-		readonly indentHandlebars: boolean;
-		readonly endWithNewline: boolean;
-		readonly extraLiners: string;
-		readonly wrapAttributes: 'auto' | 'force' | 'force-aligned' | 'force-expand-multiline';
-	}
-	export interface CompletionConfiguration {
-		readonly [providerId: string]: boolean;
-	}
-	export interface Options {
-		/**
-		 * If set, comments are tolerated. If set to false, syntax errors will be emitted for comments.
-		 */
-		readonly format?: HTMLFormatConfiguration;
-		/**
-		 * A list of known schemas and/or associations of schemas to file names.
-		 */
-		readonly suggest?: CompletionConfiguration;
-		/**
-		 * Configures the HTML data types known by the HTML langauge service.
-		 */
-		readonly data?: HTMLDataConfiguration;
-	}
-	export interface ModeConfiguration {
-		/**
-		 * Defines whether the built-in completionItemProvider is enabled.
-		 */
-		readonly completionItems?: boolean;
-		/**
-		 * Defines whether the built-in hoverProvider is enabled.
-		 */
-		readonly hovers?: boolean;
-		/**
-		 * Defines whether the built-in documentSymbolProvider is enabled.
-		 */
-		readonly documentSymbols?: boolean;
-		/**
-		 * Defines whether the built-in definitions provider is enabled.
-		 */
-		readonly links?: boolean;
-		/**
-		 * Defines whether the built-in references provider is enabled.
-		 */
-		readonly documentHighlights?: boolean;
-		/**
-		 * Defines whether the built-in rename provider is enabled.
-		 */
-		readonly rename?: boolean;
-		/**
-		 * Defines whether the built-in color provider is enabled.
-		 */
-		readonly colors?: boolean;
-		/**
-		 * Defines whether the built-in foldingRange provider is enabled.
-		 */
-		readonly foldingRanges?: boolean;
-		/**
-		 * Defines whether the built-in diagnostic provider is enabled.
-		 */
-		readonly diagnostics?: boolean;
-		/**
-		 * Defines whether the built-in selection range provider is enabled.
-		 */
-		readonly selectionRanges?: boolean;
-		/**
-		 * Defines whether the built-in documentFormattingEdit provider is enabled.
-		 */
-		readonly documentFormattingEdits?: boolean;
-		/**
-		 * Defines whether the built-in documentRangeFormattingEdit provider is enabled.
-		 */
-		readonly documentRangeFormattingEdits?: boolean;
-	}
-	export interface LanguageServiceDefaults {
-		readonly languageId: string;
-		readonly modeConfiguration: ModeConfiguration;
-		readonly onDidChange: IEvent<LanguageServiceDefaults>;
-		readonly options: Options;
-		setOptions(options: Options): void;
-		setModeConfiguration(modeConfiguration: ModeConfiguration): void;
-	}
-	export const htmlLanguageService: LanguageServiceRegistration;
-	export const htmlDefaults: LanguageServiceDefaults;
-	export const handlebarLanguageService: LanguageServiceRegistration;
-	export const handlebarDefaults: LanguageServiceDefaults;
-	export const razorLanguageService: LanguageServiceRegistration;
-	export const razorDefaults: LanguageServiceDefaults;
-	export interface LanguageServiceRegistration extends IDisposable {
-		readonly defaults: LanguageServiceDefaults;
-	}
-	/**
-	 * Registers a new HTML language service for the languageId.
-	 * Note: 'html', 'handlebar' and 'razor' are registered by default.
-	 *
-	 * Use this method to register additional language ids with a HTML service.
-	 * The language server has to be registered before an editor model is opened.
-	 */
-	export function registerHTMLLanguageService(
-		languageId: string,
-		options?: Options,
-		modeConfiguration?: ModeConfiguration
-	): LanguageServiceRegistration;
-	export interface HTMLDataConfiguration {
-		/**
-		 * Defines whether the standard HTML tags and attributes are shown
-		 */
-		readonly useDefaultDataProvider?: boolean;
-		/**
-		 * Provides a set of custom data providers.
-		 */
-		readonly dataProviders?: {
-			[providerId: string]: HTMLDataV1;
-		};
-	}
-	/**
-	 * Custom HTML tags attributes and attribute values
-	 * https://github.com/microsoft/vscode-html-languageservice/blob/main/docs/customData.md
-	 */
-	export interface HTMLDataV1 {
-		readonly version: 1 | 1.1;
-		readonly tags?: ITagData[];
-		readonly globalAttributes?: IAttributeData[];
-		readonly valueSets?: IValueSet[];
-	}
-	export interface IReference {
-		readonly name: string;
-		readonly url: string;
-	}
-	export interface ITagData {
-		readonly name: string;
-		readonly description?: string | MarkupContent;
-		readonly attributes: IAttributeData[];
-		readonly references?: IReference[];
-	}
-	export interface IAttributeData {
-		readonly name: string;
-		readonly description?: string | MarkupContent;
-		readonly valueSet?: string;
-		readonly values?: IValueData[];
-		readonly references?: IReference[];
-	}
-	export interface IValueData {
-		readonly name: string;
-		readonly description?: string | MarkupContent;
-		readonly references?: IReference[];
-	}
-	export interface IValueSet {
-		readonly name: string;
-		readonly values: IValueData[];
-	}
-	export interface MarkupContent {
-		readonly kind: MarkupKind;
-		readonly value: string;
-	}
-	export type MarkupKind = 'plaintext' | 'markdown';
-}

+ 0 - 6
monaco-html/src/fillers/monaco-editor-core.ts

@@ -1,6 +0,0 @@
-/*---------------------------------------------------------------------------------------------
- *  Copyright (c) Microsoft Corporation. All rights reserved.
- *  Licensed under the MIT License. See License.txt in the project root for license information.
- *--------------------------------------------------------------------------------------------*/
-
-export * from 'monaco-editor-core';

+ 0 - 10
monaco-html/src/tsconfig.json

@@ -1,10 +0,0 @@
-{
-	"compilerOptions": {
-		"module": "amd",
-		"moduleResolution": "node",
-		"outDir": "../out/amd",
-		"declaration": true,
-		"target": "es5",
-		"lib": ["dom", "es5", "es2015.collection", "es2015.promise", "es2015.iterable"]
-	}
-}

+ 0 - 2
monaco-json/monaco.d.ts

@@ -3,8 +3,6 @@
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-/// <reference path="../node_modules/monaco-editor-core/monaco.d.ts" />
-
 declare namespace monaco.languages.json {
 	export interface DiagnosticsOptions {
 		/**

+ 12 - 12
monaco-languages/src/fillers/monaco-editor-core-amd.ts

@@ -1,12 +1,12 @@
-/*---------------------------------------------------------------------------------------------
- *  Copyright (c) Microsoft Corporation. All rights reserved.
- *  Licensed under the MIT License. See License.txt in the project root for license information.
- *--------------------------------------------------------------------------------------------*/
-
-// Resolves with the global monaco API
-
-declare var define: any;
-
-define([], function () {
-	return (<any>self).monaco;
-});
+/*---------------------------------------------------------------------------------------------
+ *  Copyright (c) Microsoft Corporation. All rights reserved.
+ *  Licensed under the MIT License. See License.txt in the project root for license information.
+ *--------------------------------------------------------------------------------------------*/
+
+// Resolves with the global monaco API
+
+declare var define: any;
+
+define([], function () {
+	return (<any>self).monaco;
+});

+ 1 - 1
monaco-typescript/importTypescript.js

@@ -116,7 +116,7 @@ define("vs/language/typescript/lib/typescriptServices", [], function() { return
 	//    ╵                      ~~~~
 	//
 
-	tsServices = tsServices.replace(/\nvar ([^ ]+) = \(this && this\.([^)]+)\) \|\|/gm, '\nvar $1 =')
+	tsServices = tsServices.replace(/\nvar ([^ ]+) = \(this && this\.([^)]+)\) \|\|/gm, '\nvar $1 =');
 
 	const tsServices_esm =
 		generatedNote +

+ 0 - 2
monaco-typescript/monaco.d.ts

@@ -3,8 +3,6 @@
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-/// <reference path="../node_modules/monaco-editor-core/monaco.d.ts" />
-
 declare namespace monaco.languages.typescript {
 	export enum ModuleKind {
 		None = 0,

+ 2 - 4
package.json

@@ -9,17 +9,15 @@
 		"simpleserver": "gulp simpleserver",
 		"import-typescript": "node ./monaco-typescript/importTypescript",
 		"watch-src": "tsc -w -p ./src",
-		"watch-html": "tsc -w -p ./monaco-html/src",
 		"watch-json": "tsc -w -p ./monaco-json/src",
 		"watch-languages": "tsc -w -p ./monaco-languages/src",
 		"watch-typescript": "tsc -w -p ./monaco-typescript/src",
-		"watch": "npm-run-all -lp watch-src watch-html watch-json watch-languages watch-typescript",
+		"watch": "npm-run-all -lp watch-src watch-json watch-languages watch-typescript",
 		"release-src": "node ./build/build",
-		"release-html": "node ./monaco-html/build",
 		"release-json": "node ./monaco-json/build",
 		"release-languages": "node ./monaco-languages/build",
 		"release-typescript": "node ./monaco-typescript/build",
-		"release-plugins": "npm-run-all -lp release-src release-html release-json release-languages release-typescript",
+		"release-plugins": "npm-run-all -lp release-src release-json release-languages release-typescript",
 		"test": "node ./monaco-languages/test/all.js",
 		"gulp-release": "gulp release",
 		"release": "npm-run-all -ls release-plugins gulp-release",

+ 0 - 0
monaco-html/src/html.worker.ts → src/html/html.worker.ts


+ 1 - 1
monaco-html/src/htmlMode.ts → src/html/htmlMode.ts

@@ -7,7 +7,7 @@ import { WorkerManager } from './workerManager';
 import type { HTMLWorker } from './htmlWorker';
 import { LanguageServiceDefaults } from './monaco.contribution';
 import * as languageFeatures from './languageFeatures';
-import { Uri, IDisposable, languages } from './fillers/monaco-editor-core';
+import { Uri, IDisposable, languages } from '../fillers/monaco-editor-core';
 
 export function setupMode1(defaults: LanguageServiceDefaults): void {
 	const client = new WorkerManager(defaults);

+ 1 - 1
monaco-html/src/htmlWorker.ts → src/html/htmlWorker.ts

@@ -3,7 +3,7 @@
  *  Licensed under the MIT License. See License.txt in the project root for license information.
  *--------------------------------------------------------------------------------------------*/
 
-import { worker } from './fillers/monaco-editor-core';
+import { worker } from '../fillers/monaco-editor-core';
 import * as htmlService from 'vscode-html-languageservice';
 import type { Options } from './monaco.contribution';
 import { IHTMLDataProvider } from 'vscode-html-languageservice';

+ 1 - 1
monaco-html/src/languageFeatures.ts → src/html/languageFeatures.ts

@@ -13,7 +13,7 @@ import {
 	Range,
 	CancellationToken,
 	IMarkdownString
-} from './fillers/monaco-editor-core';
+} from '../fillers/monaco-editor-core';
 
 export interface WorkerAccessor {
 	(...more: Uri[]): Promise<HTMLWorker>;

+ 1 - 1
monaco-html/src/monaco.contribution.ts → src/html/monaco.contribution.ts

@@ -4,7 +4,7 @@
  *--------------------------------------------------------------------------------------------*/
 
 import * as mode from './htmlMode';
-import { languages, Emitter, IEvent, IDisposable } from './fillers/monaco-editor-core';
+import { languages, Emitter, IEvent, IDisposable } from '../fillers/monaco-editor-core';
 
 export interface HTMLFormatConfiguration {
 	readonly tabSize: number;

+ 1 - 1
monaco-html/src/workerManager.ts → src/html/workerManager.ts

@@ -5,7 +5,7 @@
 
 import { LanguageServiceDefaults } from './monaco.contribution';
 import type { HTMLWorker } from './htmlWorker';
-import { Uri, IDisposable, editor } from './fillers/monaco-editor-core';
+import { Uri, IDisposable, editor } from '../fillers/monaco-editor-core';
 
 const STOP_WHEN_IDLE_FOR = 2 * 60 * 1000; // 2min