diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f97f681..8a049cb4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,18 @@ # Monaco Editor Change log +## [0.12.0] (11.04.2018) +* Special thanks to [Tim Kendrick](https://github.com/timkendrick) for contributing a webpack plugin - `monaco-editor-webpack-plugin` - now available on [npm](https://www.npmjs.com/package/monaco-editor-webpack-plugin). + +### Breaking changes +* Introduced `MarkerSeverity` instead of `Severity` for markers serverity. +* Replaced `RenameProvider.resolveInitialRenameValue` with `RenameProvider.resolveRenameLocation`. +* Fixed typo in `monaco-typescript`, renamed `setMaximunWorkerIdleTime` to `setMaximumWorkerIdleTime`. + +### Thank you +* [Remy Suen @rcjsuen](https://github.com/rcjsuen): Fix conversion code from MarkedString to IMarkdownString in hovers [PR monaco-css#5](https://github.com/Microsoft/monaco-css/pull/5) +* [Peng Xiao @pengx17](https://github.com/pengx17): fix an issue of `fromMarkdownString` [PR monaco-json#4](https://github.com/Microsoft/monaco-json/pull/4) +* [TJ Kells @systemsoverload](https://github.com/systemsoverload): Add rust colorization support [PR monaco-languages#31](https://github.com/Microsoft/monaco-languages/pull/31) + ## [0.11.1] (15.03.2018) - Fixes [issue #756](https://github.com/Microsoft/monaco-editor/issues/756): Can't use "Enter" key to accept an IntelliSense item - Fixes [issue #757](https://github.com/Microsoft/monaco-editor/issues/757): TypeScript errors in `editor.api.d.ts` typings diff --git a/monaco.d.ts b/monaco.d.ts index 522c1ea1..8f0871dd 100644 --- a/monaco.d.ts +++ b/monaco.d.ts @@ -37,6 +37,14 @@ declare namespace monaco { Error = 3, } + export enum MarkerSeverity { + Hint = 1, + Info = 2, + Warning = 4, + Error = 8, + } + + export type TValueCallback = (value: T | PromiseLike) => void; @@ -1073,7 +1081,7 @@ declare namespace monaco.editor { export interface IMarker { owner: string; resource: Uri; - severity: Severity; + severity: MarkerSeverity; code?: string; message: string; source?: string; @@ -1081,6 +1089,7 @@ declare namespace monaco.editor { startColumn: number; endLineNumber: number; endColumn: number; + relatedInformation?: IRelatedInformation[]; } /** @@ -1088,13 +1097,26 @@ declare namespace monaco.editor { */ export interface IMarkerData { code?: string; - severity: Severity; + severity: MarkerSeverity; message: string; source?: string; startLineNumber: number; startColumn: number; endLineNumber: number; endColumn: number; + relatedInformation?: IRelatedInformation[]; + } + + /** + * + */ + export interface IRelatedInformation { + resource: Uri; + message: string; + startLineNumber: number; + startColumn: number; + endLineNumber: number; + endColumn: number; } export interface IColorizerOptions { @@ -1910,9 +1932,13 @@ declare namespace monaco.editor { * A (serializable) state of the view. */ export interface IViewState { - scrollTop: number; - scrollTopWithoutViewZones: number; + /** written by previous versions */ + scrollTop?: number; + /** written by previous versions */ + scrollTopWithoutViewZones?: number; scrollLeft: number; + firstPosition: IPosition; + firstPositionDeltaTop: number; } /** @@ -2750,7 +2776,7 @@ declare namespace monaco.editor { /** * The history mode for suggestions. */ - suggestSelection?: string; + suggestSelection?: 'first' | 'recentlyUsed' | 'recentlyUsedByPrefix'; /** * The font size for the suggest widget. * Defaults to the editor font size. @@ -2785,6 +2811,11 @@ declare namespace monaco.editor { * Defaults to true. */ folding?: boolean; + /** + * Selects the folding strategy. 'auto' uses the strategies contributed for the current document, 'indentation' uses the indentation based folding strategy. + * Defaults to 'auto'. + */ + foldingStrategy?: 'auto' | 'indentation'; /** * Controls whether the fold actions in the gutter stay always visible or hide unless the mouse is over the gutter. * Defaults to 'mouseover'. @@ -3064,6 +3095,7 @@ declare namespace monaco.editor { readonly occurrencesHighlight: boolean; readonly codeLens: boolean; readonly folding: boolean; + readonly foldingStrategy: 'auto' | 'indentation'; readonly showFoldingControls: 'always' | 'mouseover'; readonly matchBrackets: boolean; readonly find: InternalEditorFindOptions; @@ -4969,14 +5001,9 @@ declare namespace monaco.languages { rejectReason?: string; } - export interface RenameInitialValue { - range: IRange; - text?: string; - } - export interface RenameProvider { provideRenameEdits(model: editor.ITextModel, position: Position, newName: string, token: CancellationToken): WorkspaceEdit | Thenable; - resolveInitialRenameValue?(model: editor.ITextModel, position: Position, token: CancellationToken): RenameInitialValue | Thenable; + resolveRenameLocation?(model: editor.ITextModel, position: Position, token: CancellationToken): IRange | Thenable; } export interface Command { @@ -5276,10 +5303,10 @@ declare namespace monaco.languages.typescript { /** * Configure when the worker shuts down. By default that is 2mins. * - * @param value The maximun idle time in milliseconds. Values less than one + * @param value The maximum idle time in milliseconds. Values less than one * mean never shut down. */ - setMaximunWorkerIdleTime(value: number): void; + setMaximumWorkerIdleTime(value: number): void; /** * Configure if all existing models should be eagerly sync'd diff --git a/package-lock.json b/package-lock.json index 0cc882ad..74865b1f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2371,39 +2371,39 @@ } }, "monaco-css": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/monaco-css/-/monaco-css-2.0.1.tgz", - "integrity": "sha512-xlrT4CzSxuj4wx5c6aw/j2FFZy8pYiowK+6+kaCk2ov/SiedA5lVh1X9RVhMS0ORDGQ5wdKQftnE6eRkJlYq8g==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/monaco-css/-/monaco-css-2.1.0.tgz", + "integrity": "sha512-zJhj2ny5MZ81n1Pcuv6OhujIbZkbciuckjJ1aBFB8rgmIRSSJIMgih4jpX+N+L9Fhr+z7v6HxhbaGHOK7Ll1rA==", "dev": true }, "monaco-editor-core": { - "version": "0.11.7", - "resolved": "https://registry.npmjs.org/monaco-editor-core/-/monaco-editor-core-0.11.7.tgz", - "integrity": "sha512-dWg+HmIAIl0LPSeyzN6CAtM//k9isMOrVsbg6ffwWOT7V8z7tDG50KW7F22i4N4vPu+KQdGF9BY/Ui0EFFRUkw==", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/monaco-editor-core/-/monaco-editor-core-0.12.0.tgz", + "integrity": "sha512-wOoEVAoZtrarDRcQC32Fp0ocacpQd6/Nb0FmUZOHeD3swZuPZhDLOxTyoNLjKq3d+h/6g+IARBLnDaLT5OQD4g==", "dev": true }, "monaco-html": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/monaco-html/-/monaco-html-2.0.2.tgz", - "integrity": "sha512-SRtZKYdLnRAFkctak1wjS+rpn+i4CxIpXD3AJg1SKksgqObXN6cVJad658xLZ/YU/D3qvgXvn1mwWVd9kK6yug==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/monaco-html/-/monaco-html-2.1.0.tgz", + "integrity": "sha512-bx28P9DTEEZ714OYGjZsRSbX0mHmsKXApnDB1LddHCLcH7q+svW/ikeJ15p3qeGhxHNAsArtj+Z5C5qlXKvKyA==", "dev": true }, "monaco-json": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/monaco-json/-/monaco-json-2.0.1.tgz", - "integrity": "sha512-mmQS1PVRQ9I3B3f1gRjtWp2F/HjSXal1O6k+XWhEwfXqd5YPsz1fmz4oRuCg8QbauO97VkNKaaygsPV+NZ3pzA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/monaco-json/-/monaco-json-2.1.0.tgz", + "integrity": "sha512-ZEGoMLmMSo/3EstFpd1m8ggWdsNauurqnondiJj471Pmuke/sJISThKg+6i8yzFGgPSIgeA9xe229WkgXk6xyQ==", "dev": true }, "monaco-languages": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/monaco-languages/-/monaco-languages-1.0.4.tgz", - "integrity": "sha512-Msjb/6EbMMvyvUT587cMg59sCIQnJTNoY8NaAyb/E5uIvi82LIcMfmZRHyChFAm+mlBVKSvvHoWoOZdP5NP9DA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/monaco-languages/-/monaco-languages-1.2.0.tgz", + "integrity": "sha512-lbFxMOF2F02VGMfyD6dhoPjzYu3H4jTu2o2PDo08JjYgB3Z2lKpDiq1Ri06MjP9A59/YTnvZ3dNC7j7TqDXbQw==", "dev": true }, "monaco-typescript": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/monaco-typescript/-/monaco-typescript-3.0.2.tgz", - "integrity": "sha512-zgclGwwI8FAwwC78UMOHDAgvlocfHNdzDkbVWCWSwnvIm2AI/7yQegzRasiLCKH3Eb2CI1Mh9IYf06NdbQ823g==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/monaco-typescript/-/monaco-typescript-3.1.0.tgz", + "integrity": "sha512-GQWDKoXVrh4r0TpjJuRTpGEDeyN0/bqel4Op08CV0bpFL4xifFDfLPAyGeDPJiSlapaY5i+shC6VK0JELfE1OQ==", "dev": true }, "ms": { diff --git a/package.json b/package.json index 9f1fe8ac..249829b1 100644 --- a/package.json +++ b/package.json @@ -22,12 +22,12 @@ "gulp": "^3.9.1", "gulp-typedoc": "^2.0.0", "http-server": "^0.11.1", - "monaco-css": "2.0.1", - "monaco-editor-core": "0.11.7", - "monaco-html": "2.0.2", - "monaco-json": "2.0.1", - "monaco-languages": "1.0.4", - "monaco-typescript": "3.0.2", + "monaco-css": "2.1.0", + "monaco-editor-core": "0.12.0", + "monaco-html": "2.1.0", + "monaco-json": "2.1.0", + "monaco-languages": "1.2.0", + "monaco-typescript": "3.1.0", "rimraf": "^2.5.2", "typedoc": "^0.8.0", "typescript": "^2.7.2", diff --git a/website/playground/monaco.d.ts.txt b/website/playground/monaco.d.ts.txt index 522c1ea1..8f0871dd 100644 --- a/website/playground/monaco.d.ts.txt +++ b/website/playground/monaco.d.ts.txt @@ -37,6 +37,14 @@ declare namespace monaco { Error = 3, } + export enum MarkerSeverity { + Hint = 1, + Info = 2, + Warning = 4, + Error = 8, + } + + export type TValueCallback = (value: T | PromiseLike) => void; @@ -1073,7 +1081,7 @@ declare namespace monaco.editor { export interface IMarker { owner: string; resource: Uri; - severity: Severity; + severity: MarkerSeverity; code?: string; message: string; source?: string; @@ -1081,6 +1089,7 @@ declare namespace monaco.editor { startColumn: number; endLineNumber: number; endColumn: number; + relatedInformation?: IRelatedInformation[]; } /** @@ -1088,13 +1097,26 @@ declare namespace monaco.editor { */ export interface IMarkerData { code?: string; - severity: Severity; + severity: MarkerSeverity; message: string; source?: string; startLineNumber: number; startColumn: number; endLineNumber: number; endColumn: number; + relatedInformation?: IRelatedInformation[]; + } + + /** + * + */ + export interface IRelatedInformation { + resource: Uri; + message: string; + startLineNumber: number; + startColumn: number; + endLineNumber: number; + endColumn: number; } export interface IColorizerOptions { @@ -1910,9 +1932,13 @@ declare namespace monaco.editor { * A (serializable) state of the view. */ export interface IViewState { - scrollTop: number; - scrollTopWithoutViewZones: number; + /** written by previous versions */ + scrollTop?: number; + /** written by previous versions */ + scrollTopWithoutViewZones?: number; scrollLeft: number; + firstPosition: IPosition; + firstPositionDeltaTop: number; } /** @@ -2750,7 +2776,7 @@ declare namespace monaco.editor { /** * The history mode for suggestions. */ - suggestSelection?: string; + suggestSelection?: 'first' | 'recentlyUsed' | 'recentlyUsedByPrefix'; /** * The font size for the suggest widget. * Defaults to the editor font size. @@ -2785,6 +2811,11 @@ declare namespace monaco.editor { * Defaults to true. */ folding?: boolean; + /** + * Selects the folding strategy. 'auto' uses the strategies contributed for the current document, 'indentation' uses the indentation based folding strategy. + * Defaults to 'auto'. + */ + foldingStrategy?: 'auto' | 'indentation'; /** * Controls whether the fold actions in the gutter stay always visible or hide unless the mouse is over the gutter. * Defaults to 'mouseover'. @@ -3064,6 +3095,7 @@ declare namespace monaco.editor { readonly occurrencesHighlight: boolean; readonly codeLens: boolean; readonly folding: boolean; + readonly foldingStrategy: 'auto' | 'indentation'; readonly showFoldingControls: 'always' | 'mouseover'; readonly matchBrackets: boolean; readonly find: InternalEditorFindOptions; @@ -4969,14 +5001,9 @@ declare namespace monaco.languages { rejectReason?: string; } - export interface RenameInitialValue { - range: IRange; - text?: string; - } - export interface RenameProvider { provideRenameEdits(model: editor.ITextModel, position: Position, newName: string, token: CancellationToken): WorkspaceEdit | Thenable; - resolveInitialRenameValue?(model: editor.ITextModel, position: Position, token: CancellationToken): RenameInitialValue | Thenable; + resolveRenameLocation?(model: editor.ITextModel, position: Position, token: CancellationToken): IRange | Thenable; } export interface Command { @@ -5276,10 +5303,10 @@ declare namespace monaco.languages.typescript { /** * Configure when the worker shuts down. By default that is 2mins. * - * @param value The maximun idle time in milliseconds. Values less than one + * @param value The maximum idle time in milliseconds. Values less than one * mean never shut down. */ - setMaximunWorkerIdleTime(value: number): void; + setMaximumWorkerIdleTime(value: number): void; /** * Configure if all existing models should be eagerly sync'd