monaco-editor11 1.0.7 → 1.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/dist/assets/css.worker-C7FogG4G.js +93 -0
  2. package/dist/assets/editor.worker-iXcRX1Tq.js +26 -0
  3. package/dist/assets/html.worker-C8VxctEJ.js +470 -0
  4. package/dist/assets/json.worker-CMC9kgPL.js +58 -0
  5. package/dist/assets/ts.worker-CtTJ3hNN.js +67731 -0
  6. package/dist/index.d.ts +0 -6
  7. package/dist/monaco-editor11.es.js +49 -78
  8. package/dist/monaco-editor11.umd.js +1 -50
  9. package/dist/monaco.d.ts +8 -0
  10. package/dist/workers/common/initialize.js +16 -0
  11. package/dist/workers/common/workers.js +141 -0
  12. package/dist/workers/editor/common/abstractSyntaxTokenBackend.js +128 -0
  13. package/dist/workers/editor/common/abstractText.js +89 -0
  14. package/dist/workers/editor/common/ast.js +485 -0
  15. package/dist/workers/editor/common/autoIndent.js +390 -0
  16. package/dist/workers/editor/common/beforeEditPositionMapper.js +110 -0
  17. package/dist/workers/editor/common/bracketPairsImpl.js +717 -0
  18. package/dist/workers/editor/common/bracketPairsTree.js +343 -0
  19. package/dist/workers/editor/common/brackets.js +108 -0
  20. package/dist/workers/editor/common/characterClassifier.js +59 -0
  21. package/dist/workers/editor/common/characterPair.js +40 -0
  22. package/dist/workers/editor/common/colorizedBracketPairsDecorationProvider.js +97 -0
  23. package/dist/workers/editor/common/columnRange.js +35 -0
  24. package/dist/workers/editor/common/combineTextEditInfos.js +124 -0
  25. package/dist/workers/editor/common/common.js +20 -0
  26. package/dist/workers/editor/common/computeMovedLines.js +249 -0
  27. package/dist/workers/editor/common/concat23Trees.js +192 -0
  28. package/dist/workers/editor/common/contiguousMultilineTokens.js +32 -0
  29. package/dist/workers/editor/common/contiguousMultilineTokensBuilder.js +23 -0
  30. package/dist/workers/editor/common/contiguousTokensEditing.js +128 -0
  31. package/dist/workers/editor/common/contiguousTokensStore.js +207 -0
  32. package/dist/workers/editor/common/coordinatesConverter.js +51 -0
  33. package/dist/workers/editor/common/cursor.js +899 -0
  34. package/dist/workers/editor/common/cursorAtomicMoveOperations.js +145 -0
  35. package/dist/workers/editor/common/cursorCollection.js +194 -0
  36. package/dist/workers/editor/common/cursorColumnSelection.js +93 -0
  37. package/dist/workers/editor/common/cursorColumns.js +112 -0
  38. package/dist/workers/editor/common/cursorCommon.js +250 -0
  39. package/dist/workers/editor/common/cursorContext.js +15 -0
  40. package/dist/workers/editor/common/cursorDeleteOperations.js +231 -0
  41. package/dist/workers/editor/common/cursorMoveCommands.js +676 -0
  42. package/dist/workers/editor/common/cursorMoveOperations.js +290 -0
  43. package/dist/workers/editor/common/cursorTypeEditOperations.js +968 -0
  44. package/dist/workers/editor/common/cursorTypeOperations.js +173 -0
  45. package/dist/workers/editor/common/cursorUtils.js +75 -0
  46. package/dist/workers/editor/common/cursorWordOperations.js +720 -0
  47. package/dist/workers/editor/common/defaultDocumentColorsComputer.js +138 -0
  48. package/dist/workers/editor/common/defaultLinesDiffComputer.js +188 -0
  49. package/dist/workers/editor/common/diffAlgorithm.js +139 -0
  50. package/dist/workers/editor/common/diffEditor.js +38 -0
  51. package/dist/workers/editor/common/dynamicProgrammingDiffing.js +101 -0
  52. package/dist/workers/editor/common/edit.js +183 -0
  53. package/dist/workers/editor/common/editOperation.js +36 -0
  54. package/dist/workers/editor/common/editStack.js +363 -0
  55. package/dist/workers/editor/common/editorAction.js +26 -0
  56. package/dist/workers/editor/common/editorBaseApi.js +43 -0
  57. package/dist/workers/editor/common/editorColorRegistry.js +102 -0
  58. package/dist/workers/editor/common/editorCommon.js +13 -0
  59. package/dist/workers/editor/common/editorConfigurationSchema.js +338 -0
  60. package/dist/workers/editor/common/editorContextKeys.js +84 -0
  61. package/dist/workers/editor/common/editorFeatures.js +17 -0
  62. package/dist/workers/editor/common/editorOptions.js +3440 -0
  63. package/dist/workers/editor/common/editorTheme.js +23 -0
  64. package/dist/workers/editor/common/editorWebWorker.js +299 -0
  65. package/dist/workers/editor/common/editorWorker.js +9 -0
  66. package/dist/workers/editor/common/editorWorkerHost.js +15 -0
  67. package/dist/workers/editor/common/editorZoom.js +26 -0
  68. package/dist/workers/editor/common/electricCharacter.js +55 -0
  69. package/dist/workers/editor/common/encodedTokenAttributes.js +79 -0
  70. package/dist/workers/editor/common/enterAction.js +53 -0
  71. package/dist/workers/editor/common/eolCounter.js +44 -0
  72. package/dist/workers/editor/common/findSectionHeaders.js +128 -0
  73. package/dist/workers/editor/common/fixBrackets.js +67 -0
  74. package/dist/workers/editor/common/fixedArray.js +70 -0
  75. package/dist/workers/editor/common/fontInfo.js +172 -0
  76. package/dist/workers/editor/common/fontInfoFromSettings.js +29 -0
  77. package/dist/workers/editor/common/getIconClasses.js +106 -0
  78. package/dist/workers/editor/common/getPositionOffsetTransformerFromTextModel.js +24 -0
  79. package/dist/workers/editor/common/glyphLanesModel.js +61 -0
  80. package/dist/workers/editor/common/guidesTextModelPart.js +405 -0
  81. package/dist/workers/editor/common/heuristicSequenceOptimizations.js +374 -0
  82. package/dist/workers/editor/common/indentRules.js +63 -0
  83. package/dist/workers/editor/common/indentation.js +39 -0
  84. package/dist/workers/editor/common/indentationGuesser.js +178 -0
  85. package/dist/workers/editor/common/indentationLineProcessor.js +193 -0
  86. package/dist/workers/editor/common/inlineDecorations.js +26 -0
  87. package/dist/workers/editor/common/inplaceReplaceSupport.js +87 -0
  88. package/dist/workers/editor/common/inputMode.js +22 -0
  89. package/dist/workers/editor/common/intervalTree.js +1002 -0
  90. package/dist/workers/editor/common/language.js +9 -0
  91. package/dist/workers/editor/common/languageBracketsConfiguration.js +133 -0
  92. package/dist/workers/editor/common/languageConfiguration.js +138 -0
  93. package/dist/workers/editor/common/languageConfigurationRegistry.js +361 -0
  94. package/dist/workers/editor/common/languageFeatureDebounce.js +137 -0
  95. package/dist/workers/editor/common/languageFeatureRegistry.js +180 -0
  96. package/dist/workers/editor/common/languageFeatures.js +9 -0
  97. package/dist/workers/editor/common/languageFeaturesService.js +47 -0
  98. package/dist/workers/editor/common/languageSelector.js +112 -0
  99. package/dist/workers/editor/common/languageService.js +92 -0
  100. package/dist/workers/editor/common/languages.js +522 -0
  101. package/dist/workers/editor/common/languagesAssociations.js +193 -0
  102. package/dist/workers/editor/common/languagesRegistry.js +237 -0
  103. package/dist/workers/editor/common/legacyLinesDiffComputer.js +468 -0
  104. package/dist/workers/editor/common/length.js +129 -0
  105. package/dist/workers/editor/common/lineDecorations.js +208 -0
  106. package/dist/workers/editor/common/lineEdit.js +75 -0
  107. package/dist/workers/editor/common/lineHeights.js +370 -0
  108. package/dist/workers/editor/common/linePart.js +25 -0
  109. package/dist/workers/editor/common/lineRange.js +312 -0
  110. package/dist/workers/editor/common/lineSequence.js +36 -0
  111. package/dist/workers/editor/common/lineTokens.js +405 -0
  112. package/dist/workers/editor/common/linesDiffComputer.js +29 -0
  113. package/dist/workers/editor/common/linesDiffComputers.js +13 -0
  114. package/dist/workers/editor/common/linesLayout.js +765 -0
  115. package/dist/workers/editor/common/linesSliceCharSequence.js +205 -0
  116. package/dist/workers/editor/common/linkComputer.js +269 -0
  117. package/dist/workers/editor/common/markerDecorations.js +9 -0
  118. package/dist/workers/editor/common/markerDecorationsService.js +248 -0
  119. package/dist/workers/editor/common/minimapTokensColorTracker.js +58 -0
  120. package/dist/workers/editor/common/mirrorTextModel.js +117 -0
  121. package/dist/workers/editor/common/model.js +9 -0
  122. package/dist/workers/editor/common/modelLineProjection.js +350 -0
  123. package/dist/workers/editor/common/modelLineProjectionData.js +297 -0
  124. package/dist/workers/editor/common/modelService.js +413 -0
  125. package/dist/workers/editor/common/modesRegistry.js +75 -0
  126. package/dist/workers/editor/common/monospaceLineBreaksComputer.js +473 -0
  127. package/dist/workers/editor/common/myersDiffAlgorithm.js +159 -0
  128. package/dist/workers/editor/common/nodeReader.js +127 -0
  129. package/dist/workers/editor/common/nullTokenize.js +29 -0
  130. package/dist/workers/editor/common/offsetRange.js +225 -0
  131. package/dist/workers/editor/common/onEnter.js +109 -0
  132. package/dist/workers/editor/common/oneCursor.js +117 -0
  133. package/dist/workers/editor/common/overviewZoneManager.js +176 -0
  134. package/dist/workers/editor/common/parser.js +121 -0
  135. package/dist/workers/editor/common/pieceTreeBase.js +1473 -0
  136. package/dist/workers/editor/common/pieceTreeTextBuffer.js +461 -0
  137. package/dist/workers/editor/common/pieceTreeTextBufferBuilder.js +140 -0
  138. package/dist/workers/editor/common/point.js +50 -0
  139. package/dist/workers/editor/common/position.js +142 -0
  140. package/dist/workers/editor/common/positionToOffset.js +17 -0
  141. package/dist/workers/editor/common/positionToOffsetImpl.js +98 -0
  142. package/dist/workers/editor/common/prefixSumComputer.js +226 -0
  143. package/dist/workers/editor/common/range.js +421 -0
  144. package/dist/workers/editor/common/rangeMapping.js +229 -0
  145. package/dist/workers/editor/common/rangeSingleLine.js +17 -0
  146. package/dist/workers/editor/common/rbTreeBase.js +362 -0
  147. package/dist/workers/editor/common/rect.js +163 -0
  148. package/dist/workers/editor/common/replaceCommand.js +158 -0
  149. package/dist/workers/editor/common/resolverService.js +5 -0
  150. package/dist/workers/editor/common/rgba.js +35 -0
  151. package/dist/workers/editor/common/richEditBrackets.js +356 -0
  152. package/dist/workers/editor/common/selection.js +145 -0
  153. package/dist/workers/editor/common/semanticTokensDto.js +82 -0
  154. package/dist/workers/editor/common/semanticTokensProviderStyling.js +263 -0
  155. package/dist/workers/editor/common/semanticTokensStyling.js +9 -0
  156. package/dist/workers/editor/common/semanticTokensStylingService.js +47 -0
  157. package/dist/workers/editor/common/shiftCommand.js +241 -0
  158. package/dist/workers/editor/common/smallImmutableSet.js +108 -0
  159. package/dist/workers/editor/common/sparseMultilineTokens.js +548 -0
  160. package/dist/workers/editor/common/sparseTokensStore.js +210 -0
  161. package/dist/workers/editor/common/standaloneEnums.js +1017 -0
  162. package/dist/workers/editor/common/standaloneStrings.js +42 -0
  163. package/dist/workers/editor/common/stringBuilder.js +122 -0
  164. package/dist/workers/editor/common/stringEdit.js +165 -0
  165. package/dist/workers/editor/common/supports.js +58 -0
  166. package/dist/workers/editor/common/surroundSelectionCommand.js +44 -0
  167. package/dist/workers/editor/common/textChange.js +248 -0
  168. package/dist/workers/editor/common/textEdit.js +269 -0
  169. package/dist/workers/editor/common/textLength.js +87 -0
  170. package/dist/workers/editor/common/textModel.js +2031 -0
  171. package/dist/workers/editor/common/textModelBracketPairs.js +45 -0
  172. package/dist/workers/editor/common/textModelDefaults.js +18 -0
  173. package/dist/workers/editor/common/textModelEditSource.js +166 -0
  174. package/dist/workers/editor/common/textModelEvents.js +216 -0
  175. package/dist/workers/editor/common/textModelGuides.js +40 -0
  176. package/dist/workers/editor/common/textModelPart.js +23 -0
  177. package/dist/workers/editor/common/textModelSearch.js +455 -0
  178. package/dist/workers/editor/common/textModelStringEdit.js +11 -0
  179. package/dist/workers/editor/common/textModelSync.impl.js +307 -0
  180. package/dist/workers/editor/common/textModelText.js +26 -0
  181. package/dist/workers/editor/common/textModelTokens.js +436 -0
  182. package/dist/workers/editor/common/textResourceConfiguration.js +6 -0
  183. package/dist/workers/editor/common/textToHtmlTokenizer.js +139 -0
  184. package/dist/workers/editor/common/tokenStore.js +407 -0
  185. package/dist/workers/editor/common/tokenWithTextArray.js +73 -0
  186. package/dist/workers/editor/common/tokenization.js +287 -0
  187. package/dist/workers/editor/common/tokenizationRegistry.js +123 -0
  188. package/dist/workers/editor/common/tokenizationTextModelPart.js +275 -0
  189. package/dist/workers/editor/common/tokenizer.js +301 -0
  190. package/dist/workers/editor/common/tokenizerSyntaxTokenBackend.js +261 -0
  191. package/dist/workers/editor/common/treeSitterLibraryService.js +9 -0
  192. package/dist/workers/editor/common/treeSitterSyntaxTokenBackend.js +167 -0
  193. package/dist/workers/editor/common/treeSitterThemeService.js +9 -0
  194. package/dist/workers/editor/common/treeSitterTokenizationImpl.js +713 -0
  195. package/dist/workers/editor/common/treeSitterTree.js +395 -0
  196. package/dist/workers/editor/common/treeViewsDnd.js +24 -0
  197. package/dist/workers/editor/common/treeViewsDndService.js +12 -0
  198. package/dist/workers/editor/common/trimTrailingWhitespaceCommand.js +98 -0
  199. package/dist/workers/editor/common/unicodeTextModelHighlighter.js +188 -0
  200. package/dist/workers/editor/common/utils.js +62 -0
  201. package/dist/workers/editor/common/viewContext.js +22 -0
  202. package/dist/workers/editor/common/viewEventHandler.js +186 -0
  203. package/dist/workers/editor/common/viewEvents.js +180 -0
  204. package/dist/workers/editor/common/viewLayout.js +368 -0
  205. package/dist/workers/editor/common/viewLineRenderer.js +948 -0
  206. package/dist/workers/editor/common/viewLinesViewportData.js +30 -0
  207. package/dist/workers/editor/common/viewModel.js +98 -0
  208. package/dist/workers/editor/common/viewModelDecoration.js +55 -0
  209. package/dist/workers/editor/common/viewModelDecorations.js +132 -0
  210. package/dist/workers/editor/common/viewModelEventDispatcher.js +398 -0
  211. package/dist/workers/editor/common/viewModelImpl.js +1163 -0
  212. package/dist/workers/editor/common/viewModelLines.js +938 -0
  213. package/dist/workers/editor/common/wordCharacterClassifier.js +87 -0
  214. package/dist/workers/editor/common/wordHelper.js +127 -0
  215. package/dist/workers/editor/editor.worker.js +11 -0
  216. package/dist/workers/language/css.worker.js +8 -0
  217. package/dist/workers/language/cssMode.js +198 -0
  218. package/dist/workers/language/cssWorker.js +183 -0
  219. package/dist/workers/language/html.worker.js +8 -0
  220. package/dist/workers/language/htmlMode.js +213 -0
  221. package/dist/workers/language/htmlWorker.js +126 -0
  222. package/dist/workers/language/json.worker.js +8 -0
  223. package/dist/workers/language/jsonMode.js +224 -0
  224. package/dist/workers/language/jsonWorker.js +187 -0
  225. package/dist/workers/language/languageFeatures.js +1009 -0
  226. package/dist/workers/language/lib.index.js +103 -0
  227. package/dist/workers/language/lib.js +1107 -0
  228. package/dist/workers/language/lspLanguageFeatures.js +716 -0
  229. package/dist/workers/language/monaco.contribution.js +144 -0
  230. package/dist/workers/language/tokenization.js +189 -0
  231. package/dist/workers/language/ts.worker.js +14 -0
  232. package/dist/workers/language/tsMode.js +212 -0
  233. package/dist/workers/language/tsWorker.js +352 -0
  234. package/dist/workers/language/typescriptServices.js +210154 -0
  235. package/dist/workers/language/typescriptServicesMetadata.js +3 -0
  236. package/dist/workers/language/workerManager.js +65 -0
  237. package/package.json +3 -2
@@ -0,0 +1,213 @@
1
+ import { WorkerManager } from './workerManager.js';
2
+ import { HoverAdapter, DocumentHighlightAdapter, DocumentLinkAdapter, FoldingRangeAdapter, DocumentSymbolAdapter, SelectionRangeAdapter, RenameAdapter, DocumentFormattingEditProvider, DocumentRangeFormattingEditProvider, CompletionAdapter } from '../common/lspLanguageFeatures.js';
3
+ export { DefinitionAdapter, DiagnosticsAdapter, DocumentColorAdapter, ReferenceAdapter, fromPosition, fromRange, toRange, toTextEdit } from '../common/lspLanguageFeatures.js';
4
+ import '../../editor/browser/coreCommands.js';
5
+ import '../../editor/browser/widget/codeEditor/codeEditorWidget.js';
6
+ import '../../editor/browser/widget/diffEditor/diffEditor.contribution.js';
7
+ import '../../editor/contrib/anchorSelect/browser/anchorSelect.js';
8
+ import '../../editor/contrib/bracketMatching/browser/bracketMatching.js';
9
+ import '../../editor/contrib/caretOperations/browser/caretOperations.js';
10
+ import '../../editor/contrib/caretOperations/browser/transpose.js';
11
+ import '../../editor/contrib/clipboard/browser/clipboard.js';
12
+ import '../../editor/contrib/codeAction/browser/codeActionContributions.js';
13
+ import '../../editor/contrib/codelens/browser/codelensController.js';
14
+ import '../../editor/contrib/colorPicker/browser/colorPickerContribution.js';
15
+ import '../../editor/contrib/comment/browser/comment.js';
16
+ import '../../editor/contrib/contextmenu/browser/contextmenu.js';
17
+ import '../../editor/contrib/cursorUndo/browser/cursorUndo.js';
18
+ import '../../editor/contrib/dnd/browser/dnd.js';
19
+ import '../../editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js';
20
+ import '../../editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js';
21
+ import '../../editor/contrib/find/browser/findController.js';
22
+ import '../../editor/contrib/folding/browser/folding.js';
23
+ import '../../editor/contrib/fontZoom/browser/fontZoom.js';
24
+ import '../../editor/contrib/format/browser/formatActions.js';
25
+ import '../../editor/contrib/documentSymbols/browser/documentSymbols.js';
26
+ import '../../editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js';
27
+ import '../../editor/contrib/inlineProgress/browser/inlineProgress.js';
28
+ import '../../editor/contrib/gotoSymbol/browser/goToCommands.js';
29
+ import '../../editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js';
30
+ import '../../editor/contrib/gotoError/browser/gotoError.js';
31
+ import '../../editor/contrib/gpu/browser/gpuActions.js';
32
+ import '../../editor/contrib/hover/browser/hoverContribution.js';
33
+ import '../../editor/contrib/indentation/browser/indentation.js';
34
+ import '../../editor/contrib/inlayHints/browser/inlayHintsContribution.js';
35
+ import '../../editor/contrib/inPlaceReplace/browser/inPlaceReplace.js';
36
+ import '../../editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js';
37
+ import '../../editor/contrib/lineSelection/browser/lineSelection.js';
38
+ import '../../editor/contrib/linesOperations/browser/linesOperations.js';
39
+ import '../../editor/contrib/linkedEditing/browser/linkedEditing.js';
40
+ import '../../editor/contrib/links/browser/links.js';
41
+ import '../../editor/contrib/longLinesHelper/browser/longLinesHelper.js';
42
+ import '../../editor/contrib/middleScroll/browser/middleScroll.contribution.js';
43
+ import '../../editor/contrib/multicursor/browser/multicursor.js';
44
+ import '../../editor/contrib/parameterHints/browser/parameterHints.js';
45
+ import '../../editor/contrib/placeholderText/browser/placeholderText.contribution.js';
46
+ import '../../editor/contrib/rename/browser/rename.js';
47
+ import '../../editor/contrib/sectionHeaders/browser/sectionHeaders.js';
48
+ import '../../editor/contrib/semanticTokens/browser/documentSemanticTokens.js';
49
+ import '../../editor/contrib/semanticTokens/browser/viewportSemanticTokens.js';
50
+ import '../../editor/contrib/smartSelect/browser/smartSelect.js';
51
+ import '../../editor/contrib/snippet/browser/snippetController2.js';
52
+ import '../../editor/contrib/stickyScroll/browser/stickyScrollContribution.js';
53
+ import '../../editor/contrib/suggest/browser/suggestController.js';
54
+ import '../../editor/contrib/suggest/browser/suggestInlineCompletions.js';
55
+ import '../../editor/contrib/tokenization/browser/tokenization.js';
56
+ import '../../editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js';
57
+ import '../../editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js';
58
+ import '../../editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js';
59
+ import '../../editor/contrib/wordHighlighter/browser/wordHighlighter.js';
60
+ import '../../editor/contrib/wordOperations/browser/wordOperations.js';
61
+ import '../../editor/contrib/wordPartOperations/browser/wordPartOperations.js';
62
+ import '../../editor/contrib/readOnlyMessage/browser/contribution.js';
63
+ import '../../editor/contrib/diffEditorBreadcrumbs/browser/contribution.js';
64
+ import '../../editor/contrib/floatingMenu/browser/floatingMenu.contribution.js';
65
+ import '../../editor/common/standaloneStrings.js';
66
+ import '../../base/browser/ui/codicons/codicon/codicon.css';
67
+ import '../../base/browser/ui/codicons/codicon/codicon-modifiers.css';
68
+ import '../../editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js';
69
+ import '../../editor/standalone/browser/inspectTokens/inspectTokens.js';
70
+ import '../../editor/standalone/browser/quickAccess/standaloneHelpQuickAccess.js';
71
+ import '../../editor/standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js';
72
+ import '../../editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js';
73
+ import '../../editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess.js';
74
+ import '../../editor/standalone/browser/referenceSearch/standaloneReferenceSearch.js';
75
+ import '../../editor/standalone/browser/toggleHighContrast/toggleHighContrast.js';
76
+ import { languages } from '../../editor/editor.api2.js';
77
+
78
+ class HTMLCompletionAdapter extends CompletionAdapter {
79
+ constructor(worker) {
80
+ super(worker, [".", ":", "<", '"', "=", "/"]);
81
+ }
82
+ }
83
+ function setupMode1(defaults) {
84
+ const client = new WorkerManager(defaults);
85
+ const worker = (...uris) => {
86
+ return client.getLanguageServiceWorker(...uris);
87
+ };
88
+ let languageId = defaults.languageId;
89
+ languages.registerCompletionItemProvider(languageId, new HTMLCompletionAdapter(worker));
90
+ languages.registerHoverProvider(languageId, new HoverAdapter(worker));
91
+ languages.registerDocumentHighlightProvider(
92
+ languageId,
93
+ new DocumentHighlightAdapter(worker)
94
+ );
95
+ languages.registerLinkProvider(languageId, new DocumentLinkAdapter(worker));
96
+ languages.registerFoldingRangeProvider(
97
+ languageId,
98
+ new FoldingRangeAdapter(worker)
99
+ );
100
+ languages.registerDocumentSymbolProvider(
101
+ languageId,
102
+ new DocumentSymbolAdapter(worker)
103
+ );
104
+ languages.registerSelectionRangeProvider(
105
+ languageId,
106
+ new SelectionRangeAdapter(worker)
107
+ );
108
+ languages.registerRenameProvider(languageId, new RenameAdapter(worker));
109
+ if (languageId === "html") {
110
+ languages.registerDocumentFormattingEditProvider(
111
+ languageId,
112
+ new DocumentFormattingEditProvider(worker)
113
+ );
114
+ languages.registerDocumentRangeFormattingEditProvider(
115
+ languageId,
116
+ new DocumentRangeFormattingEditProvider(worker)
117
+ );
118
+ }
119
+ }
120
+ function setupMode(defaults) {
121
+ const disposables = [];
122
+ const providers = [];
123
+ const client = new WorkerManager(defaults);
124
+ disposables.push(client);
125
+ const worker = (...uris) => {
126
+ return client.getLanguageServiceWorker(...uris);
127
+ };
128
+ function registerProviders() {
129
+ const { languageId, modeConfiguration } = defaults;
130
+ disposeAll(providers);
131
+ if (modeConfiguration.completionItems) {
132
+ providers.push(
133
+ languages.registerCompletionItemProvider(languageId, new HTMLCompletionAdapter(worker))
134
+ );
135
+ }
136
+ if (modeConfiguration.hovers) {
137
+ providers.push(
138
+ languages.registerHoverProvider(languageId, new HoverAdapter(worker))
139
+ );
140
+ }
141
+ if (modeConfiguration.documentHighlights) {
142
+ providers.push(
143
+ languages.registerDocumentHighlightProvider(
144
+ languageId,
145
+ new DocumentHighlightAdapter(worker)
146
+ )
147
+ );
148
+ }
149
+ if (modeConfiguration.links) {
150
+ providers.push(
151
+ languages.registerLinkProvider(languageId, new DocumentLinkAdapter(worker))
152
+ );
153
+ }
154
+ if (modeConfiguration.documentSymbols) {
155
+ providers.push(
156
+ languages.registerDocumentSymbolProvider(
157
+ languageId,
158
+ new DocumentSymbolAdapter(worker)
159
+ )
160
+ );
161
+ }
162
+ if (modeConfiguration.rename) {
163
+ providers.push(
164
+ languages.registerRenameProvider(languageId, new RenameAdapter(worker))
165
+ );
166
+ }
167
+ if (modeConfiguration.foldingRanges) {
168
+ providers.push(
169
+ languages.registerFoldingRangeProvider(
170
+ languageId,
171
+ new FoldingRangeAdapter(worker)
172
+ )
173
+ );
174
+ }
175
+ if (modeConfiguration.selectionRanges) {
176
+ providers.push(
177
+ languages.registerSelectionRangeProvider(
178
+ languageId,
179
+ new SelectionRangeAdapter(worker)
180
+ )
181
+ );
182
+ }
183
+ if (modeConfiguration.documentFormattingEdits) {
184
+ providers.push(
185
+ languages.registerDocumentFormattingEditProvider(
186
+ languageId,
187
+ new DocumentFormattingEditProvider(worker)
188
+ )
189
+ );
190
+ }
191
+ if (modeConfiguration.documentRangeFormattingEdits) {
192
+ providers.push(
193
+ languages.registerDocumentRangeFormattingEditProvider(
194
+ languageId,
195
+ new DocumentRangeFormattingEditProvider(worker)
196
+ )
197
+ );
198
+ }
199
+ }
200
+ registerProviders();
201
+ disposables.push(asDisposable(providers));
202
+ return asDisposable(disposables);
203
+ }
204
+ function asDisposable(disposables) {
205
+ return { dispose: () => disposeAll(disposables) };
206
+ }
207
+ function disposeAll(disposables) {
208
+ while (disposables.length) {
209
+ disposables.pop().dispose();
210
+ }
211
+ }
212
+
213
+ export { CompletionAdapter, DocumentFormattingEditProvider, DocumentHighlightAdapter, DocumentLinkAdapter, DocumentRangeFormattingEditProvider, DocumentSymbolAdapter, FoldingRangeAdapter, HoverAdapter, RenameAdapter, SelectionRangeAdapter, WorkerManager, setupMode, setupMode1 };
@@ -0,0 +1,126 @@
1
+ import { newHTMLDataProvider, getLanguageService } from '../../../external/vscode-html-languageservice/lib/esm/htmlLanguageService.js';
2
+ import { TextDocument } from '../../../external/vscode-languageserver-textdocument/lib/esm/main.js';
3
+
4
+ class HTMLWorker {
5
+ constructor(ctx, createData) {
6
+ this._ctx = ctx;
7
+ this._languageSettings = createData.languageSettings;
8
+ this._languageId = createData.languageId;
9
+ const data = this._languageSettings.data;
10
+ const useDefaultDataProvider = data?.useDefaultDataProvider;
11
+ const customDataProviders = [];
12
+ if (data?.dataProviders) {
13
+ for (const id in data.dataProviders) {
14
+ customDataProviders.push(newHTMLDataProvider(id, data.dataProviders[id]));
15
+ }
16
+ }
17
+ this._languageService = getLanguageService({
18
+ useDefaultDataProvider,
19
+ customDataProviders
20
+ });
21
+ }
22
+ async doComplete(uri, position) {
23
+ let document = this._getTextDocument(uri);
24
+ if (!document) {
25
+ return null;
26
+ }
27
+ let htmlDocument = this._languageService.parseHTMLDocument(document);
28
+ return Promise.resolve(
29
+ this._languageService.doComplete(
30
+ document,
31
+ position,
32
+ htmlDocument,
33
+ this._languageSettings && this._languageSettings.suggest
34
+ )
35
+ );
36
+ }
37
+ async format(uri, range, options) {
38
+ let document = this._getTextDocument(uri);
39
+ if (!document) {
40
+ return [];
41
+ }
42
+ let formattingOptions = { ...this._languageSettings.format, ...options };
43
+ let textEdits = this._languageService.format(document, range, formattingOptions);
44
+ return Promise.resolve(textEdits);
45
+ }
46
+ async doHover(uri, position) {
47
+ let document = this._getTextDocument(uri);
48
+ if (!document) {
49
+ return null;
50
+ }
51
+ let htmlDocument = this._languageService.parseHTMLDocument(document);
52
+ let hover = this._languageService.doHover(document, position, htmlDocument);
53
+ return Promise.resolve(hover);
54
+ }
55
+ async findDocumentHighlights(uri, position) {
56
+ let document = this._getTextDocument(uri);
57
+ if (!document) {
58
+ return [];
59
+ }
60
+ let htmlDocument = this._languageService.parseHTMLDocument(document);
61
+ let highlights = this._languageService.findDocumentHighlights(document, position, htmlDocument);
62
+ return Promise.resolve(highlights);
63
+ }
64
+ async findDocumentLinks(uri) {
65
+ let document = this._getTextDocument(uri);
66
+ if (!document) {
67
+ return [];
68
+ }
69
+ let links = this._languageService.findDocumentLinks(
70
+ document,
71
+ null
72
+ /*TODO@aeschli*/
73
+ );
74
+ return Promise.resolve(links);
75
+ }
76
+ async findDocumentSymbols(uri) {
77
+ let document = this._getTextDocument(uri);
78
+ if (!document) {
79
+ return [];
80
+ }
81
+ let htmlDocument = this._languageService.parseHTMLDocument(document);
82
+ let symbols = this._languageService.findDocumentSymbols(document, htmlDocument);
83
+ return Promise.resolve(symbols);
84
+ }
85
+ async getFoldingRanges(uri, context) {
86
+ let document = this._getTextDocument(uri);
87
+ if (!document) {
88
+ return [];
89
+ }
90
+ let ranges = this._languageService.getFoldingRanges(document, context);
91
+ return Promise.resolve(ranges);
92
+ }
93
+ async getSelectionRanges(uri, positions) {
94
+ let document = this._getTextDocument(uri);
95
+ if (!document) {
96
+ return [];
97
+ }
98
+ let ranges = this._languageService.getSelectionRanges(document, positions);
99
+ return Promise.resolve(ranges);
100
+ }
101
+ async doRename(uri, position, newName) {
102
+ let document = this._getTextDocument(uri);
103
+ if (!document) {
104
+ return null;
105
+ }
106
+ let htmlDocument = this._languageService.parseHTMLDocument(document);
107
+ let renames = this._languageService.doRename(document, position, newName, htmlDocument);
108
+ return Promise.resolve(renames);
109
+ }
110
+ _getTextDocument(uri) {
111
+ let models = this._ctx.getMirrorModels();
112
+ for (let model of models) {
113
+ if (model.uri.toString() === uri) {
114
+ return TextDocument.create(
115
+ uri,
116
+ this._languageId,
117
+ model.version,
118
+ model.getValue()
119
+ );
120
+ }
121
+ }
122
+ return null;
123
+ }
124
+ }
125
+
126
+ export { HTMLWorker };
@@ -0,0 +1,8 @@
1
+ import { initialize } from '../../common/initialize.js';
2
+ import { JSONWorker } from './jsonWorker.js';
3
+
4
+ self.onmessage = () => {
5
+ initialize((ctx, createData) => {
6
+ return new JSONWorker(ctx, createData);
7
+ });
8
+ };
@@ -0,0 +1,224 @@
1
+ import { WorkerManager } from './workerManager.js';
2
+ import { DocumentFormattingEditProvider, DocumentRangeFormattingEditProvider, CompletionAdapter, HoverAdapter, DocumentSymbolAdapter, DocumentColorAdapter, FoldingRangeAdapter, SelectionRangeAdapter, DiagnosticsAdapter } from '../common/lspLanguageFeatures.js';
3
+ export { DefinitionAdapter, DocumentHighlightAdapter, DocumentLinkAdapter, ReferenceAdapter, RenameAdapter, fromPosition, fromRange, toRange, toTextEdit } from '../common/lspLanguageFeatures.js';
4
+ import { createTokenizationSupport } from './tokenization.js';
5
+ import '../../editor/browser/coreCommands.js';
6
+ import '../../editor/browser/widget/codeEditor/codeEditorWidget.js';
7
+ import '../../editor/browser/widget/diffEditor/diffEditor.contribution.js';
8
+ import '../../editor/contrib/anchorSelect/browser/anchorSelect.js';
9
+ import '../../editor/contrib/bracketMatching/browser/bracketMatching.js';
10
+ import '../../editor/contrib/caretOperations/browser/caretOperations.js';
11
+ import '../../editor/contrib/caretOperations/browser/transpose.js';
12
+ import '../../editor/contrib/clipboard/browser/clipboard.js';
13
+ import '../../editor/contrib/codeAction/browser/codeActionContributions.js';
14
+ import '../../editor/contrib/codelens/browser/codelensController.js';
15
+ import '../../editor/contrib/colorPicker/browser/colorPickerContribution.js';
16
+ import '../../editor/contrib/comment/browser/comment.js';
17
+ import '../../editor/contrib/contextmenu/browser/contextmenu.js';
18
+ import '../../editor/contrib/cursorUndo/browser/cursorUndo.js';
19
+ import '../../editor/contrib/dnd/browser/dnd.js';
20
+ import '../../editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js';
21
+ import '../../editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js';
22
+ import '../../editor/contrib/find/browser/findController.js';
23
+ import '../../editor/contrib/folding/browser/folding.js';
24
+ import '../../editor/contrib/fontZoom/browser/fontZoom.js';
25
+ import '../../editor/contrib/format/browser/formatActions.js';
26
+ import '../../editor/contrib/documentSymbols/browser/documentSymbols.js';
27
+ import '../../editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js';
28
+ import '../../editor/contrib/inlineProgress/browser/inlineProgress.js';
29
+ import '../../editor/contrib/gotoSymbol/browser/goToCommands.js';
30
+ import '../../editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js';
31
+ import '../../editor/contrib/gotoError/browser/gotoError.js';
32
+ import '../../editor/contrib/gpu/browser/gpuActions.js';
33
+ import '../../editor/contrib/hover/browser/hoverContribution.js';
34
+ import '../../editor/contrib/indentation/browser/indentation.js';
35
+ import '../../editor/contrib/inlayHints/browser/inlayHintsContribution.js';
36
+ import '../../editor/contrib/inPlaceReplace/browser/inPlaceReplace.js';
37
+ import '../../editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js';
38
+ import '../../editor/contrib/lineSelection/browser/lineSelection.js';
39
+ import '../../editor/contrib/linesOperations/browser/linesOperations.js';
40
+ import '../../editor/contrib/linkedEditing/browser/linkedEditing.js';
41
+ import '../../editor/contrib/links/browser/links.js';
42
+ import '../../editor/contrib/longLinesHelper/browser/longLinesHelper.js';
43
+ import '../../editor/contrib/middleScroll/browser/middleScroll.contribution.js';
44
+ import '../../editor/contrib/multicursor/browser/multicursor.js';
45
+ import '../../editor/contrib/parameterHints/browser/parameterHints.js';
46
+ import '../../editor/contrib/placeholderText/browser/placeholderText.contribution.js';
47
+ import '../../editor/contrib/rename/browser/rename.js';
48
+ import '../../editor/contrib/sectionHeaders/browser/sectionHeaders.js';
49
+ import '../../editor/contrib/semanticTokens/browser/documentSemanticTokens.js';
50
+ import '../../editor/contrib/semanticTokens/browser/viewportSemanticTokens.js';
51
+ import '../../editor/contrib/smartSelect/browser/smartSelect.js';
52
+ import '../../editor/contrib/snippet/browser/snippetController2.js';
53
+ import '../../editor/contrib/stickyScroll/browser/stickyScrollContribution.js';
54
+ import '../../editor/contrib/suggest/browser/suggestController.js';
55
+ import '../../editor/contrib/suggest/browser/suggestInlineCompletions.js';
56
+ import '../../editor/contrib/tokenization/browser/tokenization.js';
57
+ import '../../editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js';
58
+ import '../../editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js';
59
+ import '../../editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js';
60
+ import '../../editor/contrib/wordHighlighter/browser/wordHighlighter.js';
61
+ import '../../editor/contrib/wordOperations/browser/wordOperations.js';
62
+ import '../../editor/contrib/wordPartOperations/browser/wordPartOperations.js';
63
+ import '../../editor/contrib/readOnlyMessage/browser/contribution.js';
64
+ import '../../editor/contrib/diffEditorBreadcrumbs/browser/contribution.js';
65
+ import '../../editor/contrib/floatingMenu/browser/floatingMenu.contribution.js';
66
+ import '../../editor/common/standaloneStrings.js';
67
+ import '../../base/browser/ui/codicons/codicon/codicon.css';
68
+ import '../../base/browser/ui/codicons/codicon/codicon-modifiers.css';
69
+ import '../../editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js';
70
+ import '../../editor/standalone/browser/inspectTokens/inspectTokens.js';
71
+ import '../../editor/standalone/browser/quickAccess/standaloneHelpQuickAccess.js';
72
+ import '../../editor/standalone/browser/quickAccess/standaloneGotoLineQuickAccess.js';
73
+ import '../../editor/standalone/browser/quickAccess/standaloneGotoSymbolQuickAccess.js';
74
+ import '../../editor/standalone/browser/quickAccess/standaloneCommandsQuickAccess.js';
75
+ import '../../editor/standalone/browser/referenceSearch/standaloneReferenceSearch.js';
76
+ import '../../editor/standalone/browser/toggleHighContrast/toggleHighContrast.js';
77
+ import { languages, editor } from '../../editor/editor.api2.js';
78
+
79
+ let worker;
80
+ function getWorker() {
81
+ return new Promise((resolve, reject) => {
82
+ if (!worker) {
83
+ return reject("JSON not registered!");
84
+ }
85
+ resolve(worker);
86
+ });
87
+ }
88
+ class JSONDiagnosticsAdapter extends DiagnosticsAdapter {
89
+ constructor(languageId, worker2, defaults) {
90
+ super(languageId, worker2, defaults.onDidChange);
91
+ this._disposables.push(
92
+ editor.onWillDisposeModel((model) => {
93
+ this._resetSchema(model.uri);
94
+ })
95
+ );
96
+ this._disposables.push(
97
+ editor.onDidChangeModelLanguage((event) => {
98
+ this._resetSchema(event.model.uri);
99
+ })
100
+ );
101
+ }
102
+ _resetSchema(resource) {
103
+ this._worker().then((worker2) => {
104
+ worker2.resetSchema(resource.toString());
105
+ });
106
+ }
107
+ }
108
+ function setupMode(defaults) {
109
+ const disposables = [];
110
+ const providers = [];
111
+ const client = new WorkerManager(defaults);
112
+ disposables.push(client);
113
+ worker = (...uris) => {
114
+ return client.getLanguageServiceWorker(...uris);
115
+ };
116
+ function registerProviders() {
117
+ const { languageId, modeConfiguration: modeConfiguration2 } = defaults;
118
+ disposeAll(providers);
119
+ if (modeConfiguration2.documentFormattingEdits) {
120
+ providers.push(
121
+ languages.registerDocumentFormattingEditProvider(
122
+ languageId,
123
+ new DocumentFormattingEditProvider(worker)
124
+ )
125
+ );
126
+ }
127
+ if (modeConfiguration2.documentRangeFormattingEdits) {
128
+ providers.push(
129
+ languages.registerDocumentRangeFormattingEditProvider(
130
+ languageId,
131
+ new DocumentRangeFormattingEditProvider(worker)
132
+ )
133
+ );
134
+ }
135
+ if (modeConfiguration2.completionItems) {
136
+ providers.push(
137
+ languages.registerCompletionItemProvider(
138
+ languageId,
139
+ new CompletionAdapter(worker, [" ", ":", '"'])
140
+ )
141
+ );
142
+ }
143
+ if (modeConfiguration2.hovers) {
144
+ providers.push(
145
+ languages.registerHoverProvider(languageId, new HoverAdapter(worker))
146
+ );
147
+ }
148
+ if (modeConfiguration2.documentSymbols) {
149
+ providers.push(
150
+ languages.registerDocumentSymbolProvider(
151
+ languageId,
152
+ new DocumentSymbolAdapter(worker)
153
+ )
154
+ );
155
+ }
156
+ if (modeConfiguration2.tokens) {
157
+ providers.push(languages.setTokensProvider(languageId, createTokenizationSupport(true)));
158
+ }
159
+ if (modeConfiguration2.colors) {
160
+ providers.push(
161
+ languages.registerColorProvider(
162
+ languageId,
163
+ new DocumentColorAdapter(worker)
164
+ )
165
+ );
166
+ }
167
+ if (modeConfiguration2.foldingRanges) {
168
+ providers.push(
169
+ languages.registerFoldingRangeProvider(
170
+ languageId,
171
+ new FoldingRangeAdapter(worker)
172
+ )
173
+ );
174
+ }
175
+ if (modeConfiguration2.diagnostics) {
176
+ providers.push(new JSONDiagnosticsAdapter(languageId, worker, defaults));
177
+ }
178
+ if (modeConfiguration2.selectionRanges) {
179
+ providers.push(
180
+ languages.registerSelectionRangeProvider(
181
+ languageId,
182
+ new SelectionRangeAdapter(worker)
183
+ )
184
+ );
185
+ }
186
+ }
187
+ registerProviders();
188
+ disposables.push(languages.setLanguageConfiguration(defaults.languageId, richEditConfiguration));
189
+ let modeConfiguration = defaults.modeConfiguration;
190
+ defaults.onDidChange((newDefaults) => {
191
+ if (newDefaults.modeConfiguration !== modeConfiguration) {
192
+ modeConfiguration = newDefaults.modeConfiguration;
193
+ registerProviders();
194
+ }
195
+ });
196
+ disposables.push(asDisposable(providers));
197
+ return asDisposable(disposables);
198
+ }
199
+ function asDisposable(disposables) {
200
+ return { dispose: () => disposeAll(disposables) };
201
+ }
202
+ function disposeAll(disposables) {
203
+ while (disposables.length) {
204
+ disposables.pop().dispose();
205
+ }
206
+ }
207
+ const richEditConfiguration = {
208
+ wordPattern: /(-?\d*\.\d\w*)|([^\[\{\]\}\:\"\,\s]+)/g,
209
+ comments: {
210
+ lineComment: "//",
211
+ blockComment: ["/*", "*/"]
212
+ },
213
+ brackets: [
214
+ ["{", "}"],
215
+ ["[", "]"]
216
+ ],
217
+ autoClosingPairs: [
218
+ { open: "{", close: "}", notIn: ["string"] },
219
+ { open: "[", close: "]", notIn: ["string"] },
220
+ { open: '"', close: '"', notIn: ["string"] }
221
+ ]
222
+ };
223
+
224
+ export { CompletionAdapter, DiagnosticsAdapter, DocumentColorAdapter, DocumentFormattingEditProvider, DocumentRangeFormattingEditProvider, DocumentSymbolAdapter, FoldingRangeAdapter, HoverAdapter, SelectionRangeAdapter, WorkerManager, getWorker, setupMode };