UNPKG

monaco-editor

Version:
537 lines (534 loc) • 4.23 MB
/*!----------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Version: 0.8.2(59c417515cc4385a81ab1755611263b94d0071e2) * Released under the MIT license * https://github.com/Microsoft/vscode/blob/master/LICENSE.txt *-----------------------------------------------------------*/ (function() { var __m = ["require","exports","vs/editor/common/editorCommon","vs/editor/common/core/range","vs/base/common/lifecycle","vs/css!vs/editor/editor.main","vs/base/common/winjs.base","vs/nls!vs/editor/editor.main","vs/nls","vs/base/common/strings","vs/base/common/errors","vs/base/browser/dom","vs/base/common/event","vs/editor/common/editorCommonExtensions","vs/platform/instantiation/common/instantiation","vs/editor/common/core/position","vs/editor/common/modes","vs/base/common/async","vs/base/common/platform","vs/platform/contextkey/common/contextkey","vs/editor/common/core/selection","vs/editor/browser/editorBrowser","vs/base/common/types","vs/platform/commands/common/commands","vs/base/browser/browser","vs/base/common/eventEmitter","vs/base/common/arrays","vs/base/common/uri","vs/base/browser/styleMutator","vs/editor/browser/editorBrowserExtensions","vs/base/common/severity","vs/base/common/keyCodes","vs/editor/browser/view/viewPart","vs/platform/platform","vs/base/browser/builder","vs/base/common/objects","vs/base/browser/mouseEvent","vs/base/browser/ui/widget","vs/editor/common/modes/languageConfigurationRegistry","vs/base/common/paths","vs/base/common/scrollable","vs/editor/common/controller/cursorCommon","vs/editor/common/config/defaultConfig","vs/platform/keybinding/common/keybinding","vs/editor/common/services/modelService","vs/editor/common/services/codeEditorService","vs/editor/common/core/editOperation","vs/platform/telemetry/common/telemetry","vs/editor/common/services/editorWorkerService","vs/base/common/actions","vs/editor/browser/view/dynamicViewOverlay","vs/editor/common/viewModel/viewEventHandler","vs/platform/message/common/message","vs/base/browser/keyboardEvent","vs/editor/common/commands/replaceCommand","vs/base/common/assert","vs/platform/configuration/common/configuration","vs/platform/actions/common/actions","vs/editor/browser/config/configuration","vs/base/browser/touch","vs/base/browser/ui/scrollbar/scrollableElement","vs/platform/contextview/browser/contextView","vs/platform/editor/common/editor","vs/editor/common/modes/nullMode","vs/base/common/network","vs/editor/common/modes/languageConfiguration","vs/platform/opener/common/opener","vs/base/common/events","vs/editor/common/services/resolverService","vs/editor/common/core/characterClassifier","vs/platform/keybinding/common/keybindingsRegistry","vs/base/browser/ui/actionbar/actionbar","vs/editor/common/model/modelLine","vs/editor/common/model/wordHelper","vs/editor/common/modes/supports/richEditBrackets","vs/base/parts/tree/browser/treeDefaults","vs/base/parts/quickopen/common/quickOpen","vs/base/common/iterator","vs/editor/common/modes/supports","vs/platform/instantiation/common/serviceCollection","vs/editor/common/services/modeService","vs/platform/markers/common/markers","vs/editor/common/core/token","vs/editor/common/core/uint","vs/editor/common/services/standaloneColorService","vs/editor/common/view/renderingContext","vs/editor/common/viewModel/prefixSumComputer","vs/base/common/filters","vs/editor/common/core/viewLineToken","vs/editor/common/core/lineTokens","vs/editor/contrib/zoneWidget/browser/peekViewWidget","vs/base/common/collections","vs/editor/contrib/referenceSearch/browser/referencesModel","vs/editor/contrib/snippet/common/snippet","vs/editor/common/model/textModel","vs/base/common/diff/diff","vs/editor/common/controller/cursorMoveOperations","vs/platform/workspace/common/workspace","vs/base/browser/ui/sash/sash","vs/base/browser/ui/aria/aria","vs/base/browser/ui/inputbox/inputBox","vs/editor/browser/viewParts/glyphMargin/glyphMargin","vs/editor/contrib/find/common/findModel","vs/base/browser/globalMouseMoveMonitor","vs/base/browser/htmlContentRenderer","vs/editor/browser/editorDom","vs/base/parts/quickopen/browser/quickOpenModel","vs/platform/keybinding/common/keybindingResolver","vs/editor/common/config/editorZoom","vs/editor/common/config/fontInfo","vs/base/common/map","vs/base/common/htmlContent","vs/base/browser/ui/highlightedlabel/highlightedLabel","vs/editor/common/modes/modesRegistry","vs/platform/configuration/common/configurationRegistry","vs/editor/common/config/commonEditorConfig","vs/base/common/idGenerator","vs/base/browser/ui/scrollbar/scrollbarArrow","vs/editor/browser/standalone/simpleServices","vs/editor/common/viewLayout/viewLineParts","vs/editor/common/viewLayout/viewLineRenderer","vs/editor/contrib/quickOpen/browser/editorQuickOpen","vs/editor/contrib/suggest/common/suggest","vs/editor/browser/codeEditor","vs/base/browser/event","vs/editor/contrib/diffNavigator/common/diffNavigator","vs/editor/common/controller/oneCursor","vs/editor/common/model/model","vs/base/browser/ui/contextview/contextview","vs/editor/common/services/editorWorkerServiceImpl","vs/editor/browser/viewParts/overviewRuler/overviewRulerImpl","vs/editor/common/viewModel/splitLinesCollection","vs/base/browser/ui/findinput/findInputCheckboxes","vs/base/browser/ui/iconLabel/iconLabel","vs/css!vs/base/browser/ui/progressbar/progressbar","vs/editor/browser/controller/mouseTarget","vs/editor/browser/view/viewLayer","vs/base/common/keybinding","vs/base/browser/ui/scrollbar/scrollbarState","vs/editor/common/modes/textToHtmlTokenizer","vs/editor/common/standalone/standaloneBase","vs/base/parts/tree/browser/treeImpl","vs/base/common/cancellation","vs/base/browser/ui/scrollbar/abstractScrollbar","vs/platform/instantiation/common/descriptors","vs/editor/common/editorAction","vs/editor/browser/standalone/colorizer","vs/editor/common/model/tokensBinaryEncoding","vs/editor/common/viewModel/viewModel","vs/editor/contrib/comment/common/blockCommentCommand","vs/editor/common/modes/snippetsRegistry","vs/platform/jsonschemas/common/jsonContributionRegistry","vs/platform/extensions/common/extensionsRegistry","vs/base/common/marshalling","vs/editor/contrib/hover/browser/hoverOperation","vs/editor/contrib/hover/browser/hoverWidgets","vs/base/common/worker/simpleWorker","vs/base/browser/iframe","vs/editor/common/config/config","vs/platform/progress/common/progress","vs/platform/storage/common/storage","vs/editor/contrib/zoneWidget/browser/zoneWidget","vs/editor/common/controller/textAreaState","vs/editor/contrib/find/common/findController","vs/editor/contrib/parameterHints/common/parameterHints","vs/base/common/labels","vs/editor/contrib/snippet/common/snippetController","vs/base/common/glob","vs/editor/browser/widget/codeEditorWidget","vs/editor/common/modes/monarch/monarchCommon","vs/editor/browser/widget/diffEditorWidget","vs/editor/browser/widget/embeddedCodeEditorWidget","vs/editor/common/controller/cursorDeleteOperations","vs/editor/common/controller/cursorWordOperations","vs/editor/browser/standalone/standaloneServices","vs/editor/contrib/referenceSearch/browser/referencesController","vs/base/common/comparers","vs/base/parts/quickopen/browser/quickOpenViewer","vs/base/common/json","vs/base/parts/tree/browser/tree","vs/editor/common/modes/abstractMode","vs/base/parts/tree/browser/treeDnd","vs/editor/common/modes/languageSelector","vs/editor/common/modes/languageFeatureRegistry","vs/base/parts/tree/browser/treeModel","vs/editor/common/modes/linkComputer","vs/base/parts/tree/browser/treeViewModel","vs/editor/common/modes/monarch/monarchCompile","vs/base/worker/defaultWorkerFactory","vs/editor/common/modes/monarch/monarchLexer","vs/css!vs/base/browser/builder","vs/editor/common/modes/supports/characterPair","vs/editor/common/modes/supports/inplaceReplaceSupport","vs/editor/common/modes/supports/onEnter","vs/base/browser/ui/list/rangeMap","vs/editor/common/modes/supports/electricCharacter","vs/base/common/functional","vs/editor/common/modes/supports/tokenization","vs/css!vs/base/browser/ui/actionbar/actionbar","vs/editor/common/services/abstractCodeEditorService","vs/css!vs/base/browser/ui/aria/aria","vs/editor/common/standalone/themes","vs/editor/browser/services/standaloneColorServiceImpl","vs/css!vs/base/browser/ui/checkbox/checkbox","vs/editor/browser/viewParts/lines/rangeUtil","vs/editor/common/view/viewContext","vs/base/browser/ui/checkbox/checkbox","vs/css!vs/base/browser/ui/contextview/contextview","vs/base/common/hash","vs/editor/browser/viewParts/lines/viewLine","vs/editor/common/viewLayout/viewLinesViewportData","vs/editor/common/viewLayout/whitespaceComputer","vs/editor/common/viewLayout/verticalObjects","vs/editor/common/viewLayout/linesLayout","vs/css!vs/base/browser/ui/countBadge/countBadge","vs/editor/common/model/mirrorModel2","vs/editor/common/services/editorSimpleWorker","vs/base/browser/ui/countBadge/countBadge","vs/editor/contrib/caretOperations/common/moveCaretCommand","vs/css!vs/base/browser/ui/findinput/findInput","vs/editor/contrib/comment/common/lineCommentCommand","vs/css!vs/base/browser/ui/findinput/findInputCheckboxes","vs/editor/contrib/find/common/findState","vs/editor/contrib/find/common/replaceAllCommand","vs/editor/contrib/find/common/replacePattern","vs/editor/contrib/folding/common/folding","vs/editor/contrib/folding/common/indentFoldStrategy","vs/editor/contrib/format/common/formatCommand","vs/css!vs/base/browser/ui/iconLabel/iconlabel","vs/editor/contrib/referenceSearch/browser/referenceSearch","vs/editor/contrib/inPlaceReplace/common/inPlaceReplaceCommand","vs/editor/contrib/linesOperations/common/copyLinesCommand","vs/editor/contrib/linesOperations/common/deleteLinesCommand","vs/editor/contrib/linesOperations/common/moveLinesCommand","vs/editor/contrib/linesOperations/common/sortLinesCommand","vs/editor/contrib/quickFix/browser/quickFixWidget","vs/css!vs/base/browser/ui/inputbox/inputBox","vs/editor/contrib/smartSelect/common/tokenTree","vs/editor/contrib/snippet/browser/snippet","vs/editor/contrib/snippet/common/snippetParser","vs/css!vs/base/browser/ui/leftRightWidget/leftRightWidget","vs/editor/contrib/snippet/common/snippetVariables","vs/editor/contrib/suggest/common/completionModel","vs/base/browser/ui/leftRightWidget/leftRightWidget","vs/nls!vs/base/browser/ui/actionbar/actionbar","vs/css!vs/base/browser/ui/list/list","vs/css!vs/base/browser/ui/menu/menu","vs/base/common/marked/marked","vs/base/browser/ui/menu/menu","vs/nls!vs/base/browser/ui/aria/aria","vs/base/browser/ui/progressbar/progressbar","vs/nls!vs/base/browser/ui/findinput/findInput","vs/nls!vs/base/browser/ui/findinput/findInputCheckboxes","vs/css!vs/base/browser/ui/sash/sash","vs/nls!vs/base/browser/ui/inputbox/inputBox","vs/base/common/callbackList","vs/base/browser/ui/findinput/findInput","vs/nls!vs/base/common/json","vs/css!vs/base/browser/ui/scrollbar/media/scrollbars","vs/nls!vs/base/common/keybinding","vs/editor/browser/editor.all","vs/nls!vs/base/common/severity","vs/base/browser/ui/list/listView","vs/editor/contrib/quickFix/browser/lightBulbWidget","vs/nls!vs/base/parts/quickopen/browser/quickOpenModel","vs/nls!vs/base/parts/quickopen/browser/quickOpenWidget","vs/nls!vs/base/parts/tree/browser/treeDefaults","vs/base/browser/ui/list/listWidget","vs/base/parts/tree/browser/treeView","vs/css!vs/base/browser/ui/selectBox/selectBox","vs/base/parts/quickopen/browser/quickOpenWidget","vs/editor/contrib/quickOpen/browser/quickOpenEditorWidget","vs/nls!vs/editor/common/config/commonEditorConfig","vs/nls!vs/editor/common/config/defaultConfig","vs/base/browser/ui/selectBox/selectBox","vs/css!vs/base/parts/quickopen/browser/quickopen","vs/nls!vs/editor/common/controller/cursor","vs/nls!vs/editor/common/model/textModelWithTokens","vs/nls!vs/editor/common/modes/modesRegistry","vs/nls!vs/editor/common/modes/snippetsRegistry","vs/nls!vs/editor/common/services/bulkEdit","vs/editor/common/services/bulkEdit","vs/nls!vs/editor/common/services/modeServiceImpl","vs/nls!vs/editor/common/services/modelServiceImpl","vs/nls!vs/editor/contrib/bracketMatching/common/bracketMatching","vs/nls!vs/editor/contrib/caretOperations/common/caretOperations","vs/nls!vs/editor/contrib/caretOperations/common/transpose","vs/nls!vs/editor/contrib/clipboard/browser/clipboard","vs/nls!vs/editor/contrib/comment/common/comment","vs/nls!vs/editor/contrib/contextmenu/browser/contextmenu","vs/nls!vs/editor/contrib/find/browser/findWidget","vs/nls!vs/editor/contrib/find/common/findController","vs/nls!vs/editor/contrib/folding/browser/folding","vs/nls!vs/editor/contrib/format/common/formatActions","vs/nls!vs/editor/contrib/goToDeclaration/browser/goToDeclaration","vs/nls!vs/editor/contrib/gotoError/browser/gotoError","vs/nls!vs/editor/contrib/hover/browser/hover","vs/nls!vs/editor/contrib/hover/browser/modesContentHover","vs/nls!vs/editor/contrib/inPlaceReplace/common/inPlaceReplace","vs/nls!vs/editor/contrib/inspectTokens/browser/inspectTokens","vs/nls!vs/editor/contrib/linesOperations/common/linesOperations","vs/nls!vs/editor/contrib/links/browser/links","vs/nls!vs/editor/contrib/multicursor/common/multicursor","vs/nls!vs/editor/contrib/parameterHints/browser/parameterHints","vs/nls!vs/editor/contrib/parameterHints/browser/parameterHintsWidget","vs/nls!vs/editor/contrib/quickFix/browser/quickFix","vs/nls!vs/editor/contrib/quickOpen/browser/gotoLine","vs/nls!vs/editor/contrib/quickOpen/browser/quickCommand","vs/nls!vs/editor/contrib/quickOpen/browser/quickOutline","vs/nls!vs/editor/contrib/referenceSearch/browser/referenceSearch","vs/nls!vs/editor/contrib/referenceSearch/browser/referencesController","vs/nls!vs/editor/contrib/referenceSearch/browser/referencesWidget","vs/nls!vs/editor/contrib/rename/browser/rename","vs/nls!vs/editor/contrib/rename/browser/renameInputField","vs/editor/contrib/rename/browser/renameInputField","vs/nls!vs/editor/contrib/rename/common/rename","vs/nls!vs/editor/contrib/smartSelect/common/smartSelect","vs/nls!vs/editor/contrib/suggest/browser/suggestController","vs/nls!vs/editor/contrib/suggest/browser/suggestWidget","vs/nls!vs/editor/contrib/toggleTabFocusMode/common/toggleTabFocusMode","vs/nls!vs/editor/contrib/zoneWidget/browser/peekViewWidget","vs/nls!vs/platform/configuration/common/configurationRegistry","vs/nls!vs/platform/extensions/common/extensionsRegistry","vs/nls!vs/platform/keybinding/common/abstractKeybindingService","vs/nls!vs/platform/message/common/message","vs/platform/contextview/browser/contextMenuHandler","vs/platform/contextview/browser/contextMenuService","vs/css!vs/base/parts/tree/browser/tree","vs/css!vs/editor/browser/standalone/media/standalone-tokens","vs/css!vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight","vs/css!vs/editor/browser/viewParts/currentLineMarginHighlight/currentLineMarginHighlight","vs/css!vs/editor/browser/viewParts/decorations/decorations","vs/css!vs/editor/browser/viewParts/glyphMargin/glyphMargin","vs/css!vs/editor/browser/viewParts/indentGuides/indentGuides","vs/editor/contrib/smartSelect/common/tokenSelectionSupport","vs/css!vs/editor/browser/viewParts/lineNumbers/lineNumbers","vs/editor/contrib/links/common/links","vs/css!vs/editor/browser/viewParts/lines/viewLines","vs/css!vs/editor/browser/viewParts/linesDecorations/linesDecorations","vs/css!vs/editor/browser/viewParts/marginDecorations/marginDecorations","vs/css!vs/editor/browser/viewParts/overlayWidgets/overlayWidgets","vs/editor/browser/services/codeEditorServiceImpl","vs/editor/browser/view/viewController","vs/css!vs/editor/browser/viewParts/rulers/rulers","vs/editor/common/controller/textAreaHandler","vs/editor/common/core/editorState","vs/editor/common/model/textModelSearch","vs/css!vs/editor/browser/viewParts/scrollDecoration/scrollDecoration","vs/css!vs/editor/browser/viewParts/selections/selections","vs/editor/common/commands/shiftCommand","vs/editor/common/controller/cursorColumnSelection","vs/css!vs/editor/browser/viewParts/viewCursors/viewCursors","vs/css!vs/editor/browser/widget/media/diffEditor","vs/editor/common/controller/cursorTypeOperations","vs/css!vs/editor/browser/widget/media/editor","vs/css!vs/editor/browser/widget/media/tokens","vs/editor/common/controller/cursorCollection","vs/editor/common/controller/cursor","vs/editor/common/model/textModelWithTokens","vs/editor/common/model/textModelWithMarkers","vs/editor/common/model/textModelWithDecorations","vs/editor/common/model/editableTextModel","vs/css!vs/editor/contrib/bracketMatching/browser/bracketMatching","vs/editor/common/modes/editorModeContext","vs/css!vs/editor/contrib/clipboard/browser/clipboard","vs/css!vs/editor/contrib/codelens/browser/codelens","vs/editor/common/services/webWorker","vs/editor/common/view/overviewZoneManager","vs/css!vs/editor/contrib/find/browser/findOptionsWidget","vs/editor/common/viewLayout/editorLayoutProvider","vs/css!vs/editor/contrib/find/browser/findWidget","vs/editor/common/viewModel/characterHardWrappingLineMapper","vs/css!vs/editor/contrib/folding/browser/folding","vs/css!vs/editor/contrib/goToDeclaration/browser/goToDeclaration","vs/css!vs/editor/contrib/gotoError/browser/gotoError","vs/css!vs/editor/contrib/hover/browser/hover","vs/editor/browser/controller/mouseHandler","vs/editor/browser/controller/pointerHandler","vs/css!vs/editor/contrib/iPadShowKeyboard/browser/iPadShowKeyboard","vs/editor/browser/view/viewOutgoingEvents","vs/editor/browser/viewLayout/scrollManager","vs/editor/browser/viewLayout/layoutProvider","vs/editor/browser/viewParts/contentWidgets/contentWidgets","vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight","vs/editor/browser/viewParts/currentLineMarginHighlight/currentLineMarginHighlight","vs/editor/browser/viewParts/decorations/decorations","vs/css!vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace","vs/editor/browser/viewParts/indentGuides/indentGuides","vs/editor/browser/viewParts/lineNumbers/lineNumbers","vs/editor/browser/viewParts/linesDecorations/linesDecorations","vs/editor/browser/viewParts/margin/margin","vs/editor/browser/viewParts/marginDecorations/marginDecorations","vs/editor/browser/viewParts/overlayWidgets/overlayWidgets","vs/editor/browser/viewParts/overviewRuler/overviewRuler","vs/editor/browser/viewParts/rulers/rulers","vs/editor/browser/viewParts/scrollDecoration/scrollDecoration","vs/editor/browser/viewParts/selections/selections","vs/editor/browser/viewParts/viewZones/viewZones","vs/editor/common/viewModel/viewModelCursors","vs/editor/common/viewModel/viewModelDecorations","vs/editor/common/viewModel/viewModelImpl","vs/editor/contrib/find/common/findDecorations","vs/css!vs/editor/contrib/inspectTokens/browser/inspectTokens","vs/editor/contrib/find/browser/findOptionsWidget","vs/editor/contrib/folding/common/foldingModel","vs/platform/actions/common/menu","vs/css!vs/editor/contrib/links/browser/links","vs/css!vs/editor/contrib/parameterHints/browser/parameterHints","vs/platform/files/common/files","vs/css!vs/editor/contrib/quickFix/browser/lightBulbWidget","vs/editor/common/commonCodeEditor","vs/platform/instantiation/common/instantiationService","vs/platform/keybinding/common/abstractKeybindingService","vs/css!vs/editor/contrib/quickOpen/browser/gotoLine","vs/css!vs/editor/contrib/quickOpen/browser/quickOutline","vs/platform/contextkey/browser/contextKeyService","vs/platform/markers/common/markerService","vs/css!vs/editor/contrib/referenceSearch/browser/referencesWidget","vs/css!vs/editor/contrib/rename/browser/renameInputField","vs/platform/opener/browser/openerService","vs/css!vs/editor/contrib/snippet/browser/snippet","vs/editor/contrib/hover/browser/modesGlyphHover","vs/css!vs/editor/contrib/suggest/browser/suggest","vs/css!vs/editor/contrib/wordHighlighter/browser/wordHighlighter","vs/css!vs/editor/contrib/zoneWidget/browser/peekViewWidget","vs/css!vs/editor/contrib/zoneWidget/browser/zoneWidget","vs/editor/common/services/modelServiceImpl","vs/editor/contrib/iPadShowKeyboard/browser/iPadShowKeyboard","vs/editor/contrib/multicursor/browser/menuPreventer","vs/css!vs/platform/contextview/browser/contextMenuHandler","vs/editor/browser/config/charWidthReader","vs/editor/browser/config/elementSizeObserver","vs/editor/browser/controller/input/textAreaWrapper","vs/base/common/decorators","vs/editor/browser/controller/keyboardHandler","vs/editor/browser/view/viewOverlays","vs/editor/browser/viewParts/lines/viewLines","vs/editor/browser/viewParts/viewCursors/viewCursor","vs/editor/browser/viewParts/viewCursors/viewCursors","vs/editor/common/services/languagesRegistry","vs/editor/common/services/modeServiceImpl","vs/platform/configuration/common/model","vs/base/common/scorer","vs/editor/browser/view/viewEventDispatcher","vs/base/common/set","vs/base/common/history","vs/base/common/stopwatch","vs/base/browser/ui/list/rowCache","vs/editor/common/commands/trimTrailingWhitespaceCommand","vs/editor/contrib/bracketMatching/common/bracketMatching","vs/editor/contrib/caretOperations/common/caretOperations","vs/editor/contrib/caretOperations/common/transpose","vs/editor/contrib/clipboard/browser/clipboard","vs/editor/contrib/codelens/common/codelens","vs/editor/contrib/codelens/browser/codelens","vs/editor/contrib/comment/common/comment","vs/editor/contrib/contextmenu/browser/contextmenu","vs/base/browser/ui/scrollbar/scrollbarVisibilityController","vs/editor/contrib/find/browser/findWidget","vs/editor/contrib/find/browser/find","vs/editor/contrib/folding/browser/folding","vs/editor/contrib/format/common/format","vs/editor/contrib/format/common/formatActions","vs/editor/contrib/goToDeclaration/common/goToDeclaration","vs/editor/contrib/gotoError/browser/gotoError","vs/editor/contrib/hover/common/hover","vs/editor/contrib/hover/browser/modesContentHover","vs/editor/contrib/hover/browser/hover","vs/editor/contrib/inPlaceReplace/common/inPlaceReplace","vs/editor/contrib/inspectTokens/browser/inspectTokens","vs/editor/contrib/linesOperations/common/linesOperations","vs/editor/contrib/links/browser/links","vs/editor/contrib/multicursor/common/multicursor","vs/base/common/diff/diffChange","vs/editor/contrib/parameterHints/browser/parameterHintsWidget","vs/editor/contrib/parameterHints/browser/parameterHints","vs/editor/contrib/quickFix/common/quickFix","vs/editor/contrib/quickFix/common/quickFixModel","vs/editor/contrib/quickFix/browser/quickFix","vs/editor/common/commands/surroundSelectionCommand","vs/editor/contrib/quickOpen/browser/gotoLine","vs/editor/contrib/quickOpen/browser/quickCommand","vs/editor/contrib/quickOpen/common/quickOpen","vs/editor/contrib/quickOpen/browser/quickOutline","vs/editor/contrib/referenceSearch/common/referenceSearch","vs/editor/contrib/rename/common/rename","vs/editor/contrib/rename/browser/rename","vs/editor/contrib/smartSelect/common/smartSelect","vs/base/common/graph","vs/editor/contrib/suggest/browser/tabCompletion","vs/base/browser/ui/octiconLabel/octiconLabel","vs/editor/contrib/suggest/browser/suggestWidget","vs/editor/contrib/suggest/common/suggestModel","vs/editor/contrib/suggest/browser/suggestController","vs/editor/contrib/toggleTabFocusMode/common/toggleTabFocusMode","vs/editor/contrib/wordHighlighter/common/wordHighlighter","vs/platform/contextview/browser/contextViewService","vs/platform/theme/common/themes","vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler","vs/editor/browser/view/viewImpl","vs/base/browser/ui/scrollbar/horizontalScrollbar","vs/base/browser/ui/scrollbar/verticalScrollbar","vs/editor/common/diff/diffComputer","vs/editor/browser/standalone/standaloneCodeEditor","vs/base/common/mime","vs/editor/common/model/editStack","vs/editor/common/model/indentRanges","vs/editor/common/model/indentationGuesser","vs/editor/browser/standalone/standaloneEditor","vs/editor/browser/standalone/standaloneLanguages","vs/editor/contrib/referenceSearch/browser/referencesWidget","vs/editor/common/model/tokenIterator","vs/editor/contrib/goToDeclaration/browser/goToDeclaration","vs/base/common/winjs.base.raw","vs/base/common/marked/raw.marked","vs/editor/edcore.main"]; var __M = function(deps) { var result = []; for (var i = 0, len = deps.length; i < len; i++) { result[i] = __m[deps[i]]; } return result; }; /*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- * Please make sure to make edits in the .ts file at https://github.com/Microsoft/vscode-loader/ *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------*/ 'use strict'; var _cssPluginGlobal = this; var CSSLoaderPlugin; (function (CSSLoaderPlugin) { var global = _cssPluginGlobal || {}; /** * Known issue: * - In IE there is no way to know if the CSS file loaded successfully or not. */ var BrowserCSSLoader = (function () { function BrowserCSSLoader() { this._pendingLoads = 0; } BrowserCSSLoader.prototype.attachListeners = function (name, linkNode, callback, errorback) { var unbind = function () { linkNode.removeEventListener('load', loadEventListener); linkNode.removeEventListener('error', errorEventListener); }; var loadEventListener = function (e) { unbind(); callback(); }; var errorEventListener = function (e) { unbind(); errorback(e); }; linkNode.addEventListener('load', loadEventListener); linkNode.addEventListener('error', errorEventListener); }; BrowserCSSLoader.prototype._onLoad = function (name, callback) { this._pendingLoads--; callback(); }; BrowserCSSLoader.prototype._onLoadError = function (name, errorback, err) { this._pendingLoads--; errorback(err); }; BrowserCSSLoader.prototype._insertLinkNode = function (linkNode) { this._pendingLoads++; var head = document.head || document.getElementsByTagName('head')[0]; var other = head.getElementsByTagName('link') || document.head.getElementsByTagName('script'); if (other.length > 0) { head.insertBefore(linkNode, other[other.length - 1]); } else { head.appendChild(linkNode); } }; BrowserCSSLoader.prototype.createLinkTag = function (name, cssUrl, externalCallback, externalErrorback) { var _this = this; var linkNode = document.createElement('link'); linkNode.setAttribute('rel', 'stylesheet'); linkNode.setAttribute('type', 'text/css'); linkNode.setAttribute('data-name', name); var callback = function () { return _this._onLoad(name, externalCallback); }; var errorback = function (err) { return _this._onLoadError(name, externalErrorback, err); }; this.attachListeners(name, linkNode, callback, errorback); linkNode.setAttribute('href', cssUrl); return linkNode; }; BrowserCSSLoader.prototype._linkTagExists = function (name, cssUrl) { var i, len, nameAttr, hrefAttr, links = document.getElementsByTagName('link'); for (i = 0, len = links.length; i < len; i++) { nameAttr = links[i].getAttribute('data-name'); hrefAttr = links[i].getAttribute('href'); if (nameAttr === name || hrefAttr === cssUrl) { return true; } } return false; }; BrowserCSSLoader.prototype.load = function (name, cssUrl, externalCallback, externalErrorback) { if (this._linkTagExists(name, cssUrl)) { externalCallback(); return; } var linkNode = this.createLinkTag(name, cssUrl, externalCallback, externalErrorback); this._insertLinkNode(linkNode); }; return BrowserCSSLoader; }()); var NodeCSSLoader = (function () { function NodeCSSLoader() { this.fs = require.nodeRequire('fs'); } NodeCSSLoader.prototype.load = function (name, cssUrl, externalCallback, externalErrorback) { var contents = this.fs.readFileSync(cssUrl, 'utf8'); // Remove BOM if (contents.charCodeAt(0) === NodeCSSLoader.BOM_CHAR_CODE) { contents = contents.substring(1); } externalCallback(contents); }; return NodeCSSLoader; }()); NodeCSSLoader.BOM_CHAR_CODE = 65279; // ------------------------------ Finally, the plugin var CSSPlugin = (function () { function CSSPlugin(cssLoader) { this.cssLoader = cssLoader; } CSSPlugin.prototype.load = function (name, req, load, config) { config = config || {}; var myConfig = config['vs/css'] || {}; global.inlineResources = myConfig.inlineResources; global.inlineResourcesLimit = myConfig.inlineResourcesLimit || 5000; var cssUrl = req.toUrl(name + '.css'); this.cssLoader.load(name, cssUrl, function (contents) { // Contents has the CSS file contents if we are in a build if (config.isBuild) { CSSPlugin.BUILD_MAP[name] = contents; CSSPlugin.BUILD_PATH_MAP[name] = cssUrl; } load({}); }, function (err) { if (typeof load.error === 'function') { load.error('Could not find ' + cssUrl + ' or it was empty'); } }); }; CSSPlugin.prototype.write = function (pluginName, moduleName, write) { // getEntryPoint is a Monaco extension to r.js var entryPoint = write.getEntryPoint(); // r.js destroys the context of this plugin between calling 'write' and 'writeFile' // so the only option at this point is to leak the data to a global global.cssPluginEntryPoints = global.cssPluginEntryPoints || {}; global.cssPluginEntryPoints[entryPoint] = global.cssPluginEntryPoints[entryPoint] || []; global.cssPluginEntryPoints[entryPoint].push({ moduleName: moduleName, contents: CSSPlugin.BUILD_MAP[moduleName], fsPath: CSSPlugin.BUILD_PATH_MAP[moduleName], }); write.asModule(pluginName + '!' + moduleName, 'define([\'vs/css!' + entryPoint + '\'], {});'); }; CSSPlugin.prototype.writeFile = function (pluginName, moduleName, req, write, config) { if (global.cssPluginEntryPoints && global.cssPluginEntryPoints.hasOwnProperty(moduleName)) { var fileName = req.toUrl(moduleName + '.css'); var contents = [ '/*---------------------------------------------------------', ' * Copyright (c) Microsoft Corporation. All rights reserved.', ' *--------------------------------------------------------*/' ], entries = global.cssPluginEntryPoints[moduleName]; for (var i = 0; i < entries.length; i++) { if (global.inlineResources) { contents.push(Utilities.rewriteOrInlineUrls(entries[i].fsPath, entries[i].moduleName, moduleName, entries[i].contents, global.inlineResources === 'base64', global.inlineResourcesLimit)); } else { contents.push(Utilities.rewriteUrls(entries[i].moduleName, moduleName, entries[i].contents)); } } write(fileName, contents.join('\r\n')); } }; CSSPlugin.prototype.getInlinedResources = function () { return global.cssInlinedResources || []; }; return CSSPlugin; }()); CSSPlugin.BUILD_MAP = {}; CSSPlugin.BUILD_PATH_MAP = {}; CSSLoaderPlugin.CSSPlugin = CSSPlugin; var Utilities = (function () { function Utilities() { } Utilities.startsWith = function (haystack, needle) { return haystack.length >= needle.length && haystack.substr(0, needle.length) === needle; }; /** * Find the path of a file. */ Utilities.pathOf = function (filename) { var lastSlash = filename.lastIndexOf('/'); if (lastSlash !== -1) { return filename.substr(0, lastSlash + 1); } else { return ''; } }; /** * A conceptual a + b for paths. * Takes into account if `a` contains a protocol. * Also normalizes the result: e.g.: a/b/ + ../c => a/c */ Utilities.joinPaths = function (a, b) { function findSlashIndexAfterPrefix(haystack, prefix) { if (Utilities.startsWith(haystack, prefix)) { return Math.max(prefix.length, haystack.indexOf('/', prefix.length)); } return 0; } var aPathStartIndex = 0; aPathStartIndex = aPathStartIndex || findSlashIndexAfterPrefix(a, '//'); aPathStartIndex = aPathStartIndex || findSlashIndexAfterPrefix(a, 'http://'); aPathStartIndex = aPathStartIndex || findSlashIndexAfterPrefix(a, 'https://'); function pushPiece(pieces, piece) { if (piece === './') { // Ignore return; } if (piece === '../') { var prevPiece = (pieces.length > 0 ? pieces[pieces.length - 1] : null); if (prevPiece && prevPiece === '/') { // Ignore return; } if (prevPiece && prevPiece !== '../') { // Pop pieces.pop(); return; } } // Push pieces.push(piece); } function push(pieces, path) { while (path.length > 0) { var slashIndex = path.indexOf('/'); var piece = (slashIndex >= 0 ? path.substring(0, slashIndex + 1) : path); path = (slashIndex >= 0 ? path.substring(slashIndex + 1) : ''); pushPiece(pieces, piece); } } var pieces = []; push(pieces, a.substr(aPathStartIndex)); if (b.length > 0 && b.charAt(0) === '/') { pieces = []; } push(pieces, b); return a.substring(0, aPathStartIndex) + pieces.join(''); }; Utilities.commonPrefix = function (str1, str2) { var len = Math.min(str1.length, str2.length); for (var i = 0; i < len; i++) { if (str1.charCodeAt(i) !== str2.charCodeAt(i)) { break; } } return str1.substring(0, i); }; Utilities.commonFolderPrefix = function (fromPath, toPath) { var prefix = Utilities.commonPrefix(fromPath, toPath); var slashIndex = prefix.lastIndexOf('/'); if (slashIndex === -1) { return ''; } return prefix.substring(0, slashIndex + 1); }; Utilities.relativePath = function (fromPath, toPath) { if (Utilities.startsWith(toPath, '/') || Utilities.startsWith(toPath, 'http://') || Utilities.startsWith(toPath, 'https://')) { return toPath; } // Ignore common folder prefix var prefix = Utilities.commonFolderPrefix(fromPath, toPath); fromPath = fromPath.substr(prefix.length); toPath = toPath.substr(prefix.length); var upCount = fromPath.split('/').length; var result = ''; for (var i = 1; i < upCount; i++) { result += '../'; } return result + toPath; }; Utilities._replaceURL = function (contents, replacer) { // Use ")" as the terminator as quotes are oftentimes not used at all return contents.replace(/url\(\s*([^\)]+)\s*\)?/g, function (_) { var matches = []; for (var _i = 1; _i < arguments.length; _i++) { matches[_i - 1] = arguments[_i]; } var url = matches[0]; // Eliminate starting quotes (the initial whitespace is not captured) if (url.charAt(0) === '"' || url.charAt(0) === '\'') { url = url.substring(1); } // The ending whitespace is captured while (url.length > 0 && (url.charAt(url.length - 1) === ' ' || url.charAt(url.length - 1) === '\t')) { url = url.substring(0, url.length - 1); } // Eliminate ending quotes if (url.charAt(url.length - 1) === '"' || url.charAt(url.length - 1) === '\'') { url = url.substring(0, url.length - 1); } if (!Utilities.startsWith(url, 'data:') && !Utilities.startsWith(url, 'http://') && !Utilities.startsWith(url, 'https://')) { url = replacer(url); } return 'url(' + url + ')'; }); }; Utilities.rewriteUrls = function (originalFile, newFile, contents) { return this._replaceURL(contents, function (url) { var absoluteUrl = Utilities.joinPaths(Utilities.pathOf(originalFile), url); return Utilities.relativePath(newFile, absoluteUrl); }); }; Utilities.rewriteOrInlineUrls = function (originalFileFSPath, originalFile, newFile, contents, forceBase64, inlineByteLimit) { var fs = require.nodeRequire('fs'); var path = require.nodeRequire('path'); return this._replaceURL(contents, function (url) { if (/\.(svg|png)$/.test(url)) { var fsPath = path.join(path.dirname(originalFileFSPath), url); var fileContents = fs.readFileSync(fsPath); if (fileContents.length < inlineByteLimit) { global.cssInlinedResources = global.cssInlinedResources || []; var normalizedFSPath = fsPath.replace(/\\/g, '/'); if (global.cssInlinedResources.indexOf(normalizedFSPath) >= 0) { console.warn('CSS INLINING IMAGE AT ' + fsPath + ' MORE THAN ONCE. CONSIDER CONSOLIDATING CSS RULES'); } global.cssInlinedResources.push(normalizedFSPath); var MIME = /\.svg$/.test(url) ? 'image/svg+xml' : 'image/png'; var DATA = ';base64,' + fileContents.toString('base64'); if (!forceBase64 && /\.svg$/.test(url)) { // .svg => url encode as explained at https://codepen.io/tigt/post/optimizing-svgs-in-data-uris var newText = fileContents.toString() .replace(/"/g, '\'') .replace(/</g, '%3C') .replace(/>/g, '%3E') .replace(/&/g, '%26') .replace(/#/g, '%23') .replace(/\s+/g, ' '); var encodedData = ',' + newText; if (encodedData.length < DATA.length) { DATA = encodedData; } } return '"data:' + MIME + DATA + '"'; } } var absoluteUrl = Utilities.joinPaths(Utilities.pathOf(originalFile), url); return Utilities.relativePath(newFile, absoluteUrl); }); }; return Utilities; }()); CSSLoaderPlugin.Utilities = Utilities; (function () { var cssLoader = null; var isElectron = (typeof process !== 'undefined' && typeof process.versions !== 'undefined' && typeof process.versions['electron'] !== 'undefined'); if (typeof process !== 'undefined' && process.versions && !!process.versions.node && !isElectron) { cssLoader = new NodeCSSLoader(); } else { cssLoader = new BrowserCSSLoader(); } define('vs/css', new CSSPlugin(cssLoader)); })(); })(CSSLoaderPlugin || (CSSLoaderPlugin = {})); /*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ /*--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- * Please make sure to make edits in the .ts file at https://github.com/Microsoft/vscode-loader/ *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------*/ 'use strict'; var _nlsPluginGlobal = this; var NLSLoaderPlugin; (function (NLSLoaderPlugin) { var global = _nlsPluginGlobal || {}; var Resources = global.Plugin && global.Plugin.Resources ? global.Plugin.Resources : undefined; var DEFAULT_TAG = 'i-default'; var IS_PSEUDO = (global && global.document && global.document.location && global.document.location.hash.indexOf('pseudo=true') >= 0); var slice = Array.prototype.slice; function _format(message, args) { var result; if (args.length === 0) { result = message; } else { result = message.replace(/\{(\d+)\}/g, function (match, rest) { var index = rest[0]; return typeof args[index] !== 'undefined' ? args[index] : match; }); } if (IS_PSEUDO) { // FF3B and FF3D is the Unicode zenkaku representation for [ and ] result = '\uFF3B' + result.replace(/[aouei]/g, '$&$&') + '\uFF3D'; } return result; } function findLanguageForModule(config, name) { var result = config[name]; if (result) return result; result = config['*']; if (result) return result; return null; } function localize(data, message) { var args = []; for (var _i = 0; _i < (arguments.length - 2); _i++) { args[_i] = arguments[_i + 2]; } return _format(message, args); } function createScopedLocalize(scope) { return function (idx, defaultValue) { var restArgs = slice.call(arguments, 2); return _format(scope[idx], restArgs); }; } var NLSPlugin = (function () { function NLSPlugin() { this.localize = localize; } NLSPlugin.prototype.setPseudoTranslation = function (value) { IS_PSEUDO = value; }; NLSPlugin.prototype.create = function (key, data) { return { localize: createScopedLocalize(data[key]) }; }; NLSPlugin.prototype.load = function (name, req, load, config) { config = config || {}; if (!name || name.length === 0) { load({ localize: localize }); } else { var suffix = void 0; if (Resources && Resources.getString) { suffix = '.nls.keys'; req([name + suffix], function (keyMap) { load({ localize: function (moduleKey, index) { if (!keyMap[moduleKey]) return 'NLS error: unknown key ' + moduleKey; var mk = keyMap[moduleKey].keys; if (index >= mk.length) return 'NLS error unknow index ' + index; var subKey = mk[index]; var args = []; args[0] = moduleKey + '_' + subKey; for (var _i = 0; _i < (arguments.length - 2); _i++) { args[_i + 1] = arguments[_i + 2]; } return Resources.getString.apply(Resources, args); } }); }); } else { if (config.isBuild) { req([name + '.nls', name + '.nls.keys'], function (messages, keys) { NLSPlugin.BUILD_MAP[name] = messages; NLSPlugin.BUILD_MAP_KEYS[name] = keys; load(messages); }); } else { var pluginConfig = config['vs/nls'] || {}; var language = pluginConfig.availableLanguages ? findLanguageForModule(pluginConfig.availableLanguages, name) : null; suffix = '.nls'; if (language !== null && language !== DEFAULT_TAG) { suffix = suffix + '.' + language; } req([name + suffix], function (messages) { if (Array.isArray(messages)) { messages.localize = createScopedLocalize(messages); } else { messages.localize = createScopedLocalize(messages[name]); } load(messages); }); } } } }; NLSPlugin.prototype._getEntryPointsMap = function () { global.nlsPluginEntryPoints = global.nlsPluginEntryPoints || {}; return global.nlsPluginEntryPoints; }; NLSPlugin.prototype.write = function (pluginName, moduleName, write) { // getEntryPoint is a Monaco extension to r.js var entryPoint = write.getEntryPoint(); // r.js destroys the context of this plugin between calling 'write' and 'writeFile' // so the only option at this point is to leak the data to a global var entryPointsMap = this._getEntryPointsMap(); entryPointsMap[entryPoint] = entryPointsMap[entryPoint] || []; entryPointsMap[entryPoint].push(moduleName); if (moduleName !== entryPoint) { write.asModule(pluginName + '!' + moduleName, 'define([\'vs/nls\', \'vs/nls!' + entryPoint + '\'], function(nls, data) { return nls.create("' + moduleName + '", data); });'); } }; NLSPlugin.prototype.writeFile = function (pluginName, moduleName, req, write, config) { var entryPointsMap = this._getEntryPointsMap(); if (entryPointsMap.hasOwnProperty(moduleName)) { var fileName = req.toUrl(moduleName + '.nls.js'); var contents = [ '/*---------------------------------------------------------', ' * Copyright (c) Microsoft Corporation. All rights reserved.', ' *--------------------------------------------------------*/'