@easyv/biz-components 0.0.52-beta.0 → 0.0.52-beta.1

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 (588) hide show
  1. package/dist/_virtual/index.es2.js +2 -2
  2. package/dist/_virtual/index.es3.js +2 -2
  3. package/dist/_virtual/index.es4.js +2 -2
  4. package/dist/components/easyv-monaco-editor/easyv-monaco-editor.d.ts +12 -0
  5. package/dist/components/easyv-monaco-editor/easyv-monaco-editor.es.js +15 -2
  6. package/dist/components/easyv-monaco-editor/easyv-monaco-editor.es.js.map +1 -1
  7. package/dist/components/easyv-monaco-editor/monaco-setup.es.js +82 -1
  8. package/dist/components/easyv-monaco-editor/monaco-setup.es.js.map +1 -1
  9. package/dist/index.css +1 -1
  10. package/dist/monaco/editor.worker.bundle.js +13517 -0
  11. package/dist/monaco/json.worker.bundle.js +21318 -0
  12. package/dist/monaco/ts.worker.bundle.js +256351 -0
  13. package/dist/node_modules/.pnpm/classnames@2.3.2/node_modules/classnames/index.es.js +1 -1
  14. package/dist/node_modules/.pnpm/co-web-worker@1.0.1/node_modules/co-web-worker/index.es.js +1 -1
  15. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/dnd.es.js +11 -1
  16. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/dnd.es.js.map +1 -1
  17. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/dom.es.js +156 -2
  18. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/dom.es.js.map +1 -1
  19. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/domObservable.es.js +18 -0
  20. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/domObservable.es.js.map +1 -0
  21. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/replaceInput.es.js +186 -0
  22. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/ui/findinput/replaceInput.es.js.map +1 -0
  23. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.es.js +9 -1
  24. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/ui/keybindingLabel/keybindingLabel.es.js.map +1 -1
  25. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/ui/resizable/resizable.es.js +153 -0
  26. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/browser/ui/resizable/resizable.es.js.map +1 -0
  27. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/arrays.es.js +75 -0
  28. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/arrays.es.js.map +1 -1
  29. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/arraysFind.es.js +11 -1
  30. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/arraysFind.es.js.map +1 -1
  31. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/async.es.js +65 -0
  32. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/async.es.js.map +1 -1
  33. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/cancellation.es.js +9 -1
  34. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/cancellation.es.js.map +1 -1
  35. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/dataTransfer.es.js +129 -0
  36. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/dataTransfer.es.js.map +1 -0
  37. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/equals.es.js +53 -4
  38. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/equals.es.js.map +1 -1
  39. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/errorMessage.es.js +60 -0
  40. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/errorMessage.es.js.map +1 -0
  41. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/extpath.es.js +8 -1
  42. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/extpath.es.js.map +1 -1
  43. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/filters.es.js +48 -0
  44. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/filters.es.js.map +1 -1
  45. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/hierarchicalKind.es.js +25 -0
  46. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/hierarchicalKind.es.js.map +1 -0
  47. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/htmlContent.es.js +10 -0
  48. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/htmlContent.es.js.map +1 -1
  49. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/labels.es.js +12 -0
  50. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/labels.es.js.map +1 -0
  51. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/lifecycle.es.js +17 -0
  52. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/lifecycle.es.js.map +1 -1
  53. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/objects.es.js +23 -1
  54. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/objects.es.js.map +1 -1
  55. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/autorun.es.js +19 -1
  56. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/autorun.es.js.map +1 -1
  57. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/base.es.js +9 -0
  58. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/base.es.js.map +1 -1
  59. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/derived.es.js +4 -0
  60. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/derived.es.js.map +1 -1
  61. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/promise.es.js +44 -2
  62. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/promise.es.js.map +1 -1
  63. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/utils.es.js +59 -1
  64. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/observableInternal/utils.es.js.map +1 -1
  65. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/platform.es.js +2 -0
  66. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/platform.es.js.map +1 -1
  67. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/resources.es.js +10 -6
  68. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/resources.es.js.map +1 -1
  69. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/search.es.js +42 -0
  70. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/search.es.js.map +1 -0
  71. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/strings.es.js +21 -0
  72. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/strings.es.js.map +1 -1
  73. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/types.es.js +1 -1
  74. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/types.es.js.map +1 -1
  75. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/uuid.es.js +53 -0
  76. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/base/common/uuid.es.js.map +1 -0
  77. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaHandler.es.js +2 -2
  78. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaHandler.es.js.map +1 -1
  79. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaInput.es.js +4 -0
  80. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/controller/textAreaInput.es.js.map +1 -1
  81. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/dnd.es.js +70 -0
  82. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/dnd.es.js.map +1 -0
  83. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/editorBrowser.es.js +20 -0
  84. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/editorBrowser.es.js.map +1 -0
  85. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.es.js +148 -8
  86. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/editorExtensions.es.js.map +1 -1
  87. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/observableCodeEditor.es.js +37 -2
  88. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/observableCodeEditor.es.js.map +1 -1
  89. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditor/embeddedCodeEditorWidget.es.js +57 -0
  90. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/widget/codeEditor/embeddedCodeEditorWidget.es.js.map +1 -0
  91. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/commands.es.js +254 -0
  92. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/commands.es.js.map +1 -0
  93. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.es.js +79 -0
  94. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.es.js.map +1 -0
  95. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.es.js +7 -1
  96. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/browser/widget/diffEditor/utils.es.js.map +1 -1
  97. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.es.js +19 -0
  98. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/commands/replaceCommand.es.js.map +1 -1
  99. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/commands/trimTrailingWhitespaceCommand.es.js +81 -0
  100. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/commands/trimTrailingWhitespaceCommand.es.js.map +1 -0
  101. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.es.js +23 -1
  102. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/core/characterClassifier.es.js.map +1 -1
  103. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.es.js +4 -2
  104. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/core/editorColorRegistry.es.js.map +1 -1
  105. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.es.js +71 -1
  106. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.es.js.map +1 -1
  107. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.es.js +5 -1
  108. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.es.js.map +1 -1
  109. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.es.js +74 -0
  110. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.es.js.map +1 -1
  111. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/languages.es.js +6 -3
  112. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/languages.es.js.map +1 -1
  113. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.es.js +61 -0
  114. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.es.js.map +1 -0
  115. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/getIconClasses.es.js +84 -0
  116. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/getIconClasses.es.js.map +1 -0
  117. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensDto.es.js +67 -0
  118. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensDto.es.js.map +1 -0
  119. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensProviderStyling.es.js +82 -1
  120. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/semanticTokensProviderStyling.es.js.map +1 -1
  121. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDnd.es.js +23 -0
  122. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDnd.es.js.map +1 -0
  123. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDndService.es.js +14 -0
  124. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/services/treeViewsDndService.es.js.map +1 -0
  125. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.es.js +13 -1
  126. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/tokens/lineTokens.es.js.map +1 -1
  127. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseMultilineTokens.es.js +389 -0
  128. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/tokens/sparseMultilineTokens.es.js.map +1 -0
  129. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.es.js +182 -0
  130. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.es.js.map +1 -0
  131. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.es.js +370 -0
  132. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.es.js.map +1 -0
  133. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/caretOperations.es.js +46 -0
  134. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/caretOperations.es.js.map +1 -0
  135. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/moveCaretCommand.es.js +44 -0
  136. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/moveCaretCommand.es.js.map +1 -0
  137. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/transpose.es.js +59 -0
  138. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/caretOperations/browser/transpose.es.js.map +1 -0
  139. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/clipboard/browser/clipboard.es.js +258 -0
  140. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/clipboard/browser/clipboard.es.js.map +1 -0
  141. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.es.js +271 -0
  142. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeAction.es.js.map +1 -0
  143. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionCommands.es.js +231 -0
  144. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionCommands.es.js.map +1 -0
  145. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.es.js +61 -0
  146. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.es.js.map +1 -0
  147. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionController.es.js +368 -0
  148. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionController.es.js.map +1 -0
  149. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.es.js +78 -0
  150. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.es.js.map +1 -0
  151. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionMenu.es.js +65 -0
  152. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionMenu.es.js.map +1 -0
  153. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionModel.es.js +317 -0
  154. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/codeActionModel.es.js.map +1 -0
  155. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.es.js +413 -0
  156. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.es.js.map +1 -0
  157. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.es.js +141 -0
  158. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codeAction/common/types.es.js.map +1 -0
  159. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codeLensCache.es.js +123 -0
  160. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codeLensCache.es.js.map +1 -0
  161. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelens.es.js +94 -0
  162. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelens.es.js.map +1 -0
  163. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensController.es.js +479 -0
  164. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensController.es.js.map +1 -0
  165. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.es.js +249 -0
  166. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/codelens/browser/codelensWidget.es.js.map +1 -0
  167. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/color.es.js +113 -0
  168. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/color.es.js.map +1 -0
  169. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorContributions.es.js +61 -0
  170. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorContributions.es.js.map +1 -0
  171. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorDetector.es.js +263 -0
  172. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorDetector.es.js.map +1 -0
  173. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.es.js +254 -0
  174. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.es.js.map +1 -0
  175. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerModel.es.js +72 -0
  176. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerModel.es.js.map +1 -0
  177. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerWidget.es.js +365 -0
  178. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/colorPickerWidget.es.js.map +1 -0
  179. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.es.js +56 -0
  180. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.es.js.map +1 -0
  181. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.es.js +89 -0
  182. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.es.js.map +1 -0
  183. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.es.js +265 -0
  184. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.es.js.map +1 -0
  185. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/blockCommentCommand.es.js +127 -0
  186. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/blockCommentCommand.es.js.map +1 -0
  187. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/comment.es.js +159 -0
  188. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/comment.es.js.map +1 -0
  189. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/lineCommentCommand.es.js +302 -0
  190. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/comment/browser/lineCommentCommand.es.js.map +1 -0
  191. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/contextmenu/browser/contextmenu.es.js +358 -0
  192. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/contextmenu/browser/contextmenu.es.js.map +1 -0
  193. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.es.js +142 -0
  194. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.es.js.map +1 -0
  195. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.es.js +60 -0
  196. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.es.js.map +1 -0
  197. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.es.js +207 -0
  198. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dnd.es.js.map +1 -0
  199. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dragAndDropCommand.es.js +45 -0
  200. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dnd/browser/dragAndDropCommand.es.js.map +1 -0
  201. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.es.js +19 -0
  202. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/documentSymbols.es.js.map +1 -0
  203. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.es.js +260 -0
  204. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/documentSymbols/browser/outlineModel.es.js.map +1 -0
  205. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.es.js +95 -0
  206. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.es.js.map +1 -0
  207. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.es.js +504 -0
  208. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.es.js.map +1 -0
  209. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.es.js +214 -0
  210. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.es.js.map +1 -0
  211. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.es.js +62 -0
  212. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.es.js.map +1 -0
  213. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.es.js +168 -0
  214. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.es.js.map +1 -0
  215. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.es.js +75 -0
  216. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/edit.es.js.map +1 -0
  217. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.es.js +211 -0
  218. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.es.js.map +1 -0
  219. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.es.js +102 -0
  220. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/editorState.es.js.map +1 -0
  221. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.es.js +15 -1
  222. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.es.js.map +1 -1
  223. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.es.js +1074 -0
  224. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findController.es.js.map +1 -0
  225. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findDecorations.es.js +301 -0
  226. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findDecorations.es.js.map +1 -0
  227. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.es.js +517 -0
  228. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findModel.es.js.map +1 -0
  229. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.es.js +155 -0
  230. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findOptionsWidget.es.js.map +1 -0
  231. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findState.es.js +273 -0
  232. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findState.es.js.map +1 -0
  233. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.es.js +1208 -0
  234. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/findWidget.es.js.map +1 -0
  235. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replaceAllCommand.es.js +46 -0
  236. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replaceAllCommand.es.js.map +1 -0
  237. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replacePattern.es.js +237 -0
  238. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/find/browser/replacePattern.es.js.map +1 -0
  239. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.es.js +1258 -0
  240. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/folding.es.js.map +1 -0
  241. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingDecorations.es.js +161 -0
  242. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingDecorations.es.js.map +1 -0
  243. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingModel.es.js +453 -0
  244. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingModel.es.js.map +1 -0
  245. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.es.js +347 -0
  246. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/foldingRanges.es.js.map +1 -0
  247. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/hiddenRangeModel.es.js +124 -0
  248. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/hiddenRangeModel.es.js.map +1 -0
  249. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/indentRangeProvider.es.js +152 -0
  250. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/indentRangeProvider.es.js.map +1 -0
  251. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/syntaxRangeProvider.es.js +169 -0
  252. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/folding/browser/syntaxRangeProvider.es.js.map +1 -0
  253. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/fontZoom/browser/fontZoom.es.js +46 -0
  254. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/fontZoom/browser/fontZoom.es.js.map +1 -0
  255. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/format.es.js +236 -8
  256. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/format.es.js.map +1 -1
  257. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formatActions.es.js +271 -0
  258. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formatActions.es.js.map +1 -0
  259. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formattingEdit.es.js +52 -0
  260. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/format/browser/formattingEdit.es.js.map +1 -0
  261. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.es.js +281 -0
  262. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoError.es.js.map +1 -0
  263. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoErrorWidget.es.js +350 -0
  264. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/gotoErrorWidget.es.js.map +1 -0
  265. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/markerNavigationService.es.js +194 -0
  266. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoError/browser/markerNavigationService.es.js.map +1 -0
  267. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.es.js +709 -0
  268. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.es.js.map +1 -0
  269. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToSymbol.es.js +126 -0
  270. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/goToSymbol.es.js.map +1 -0
  271. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.es.js +143 -0
  272. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.es.js.map +1 -0
  273. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.es.js +248 -0
  274. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.es.js.map +1 -0
  275. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.es.js +393 -0
  276. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.es.js.map +1 -0
  277. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.es.js +189 -0
  278. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.es.js.map +1 -0
  279. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.es.js +458 -0
  280. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.es.js.map +1 -0
  281. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.es.js +232 -0
  282. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.es.js.map +1 -0
  283. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.es.js +181 -0
  284. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.es.js.map +1 -0
  285. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverComputer.es.js +92 -0
  286. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverComputer.es.js.map +1 -0
  287. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverController2.es.js +298 -0
  288. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverController2.es.js.map +1 -0
  289. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverRendered.es.js +259 -0
  290. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverRendered.es.js.map +1 -0
  291. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverStatusBar.es.js +50 -0
  292. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverStatusBar.es.js.map +1 -0
  293. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverTypes.es.js +28 -0
  294. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverTypes.es.js.map +1 -0
  295. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverWidget.es.js +383 -0
  296. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverWidget.es.js.map +1 -0
  297. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverWidgetWrapper.es.js +340 -0
  298. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/contentHoverWidgetWrapper.es.js.map +1 -0
  299. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/getHover.es.js +46 -0
  300. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/getHover.es.js.map +1 -0
  301. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverAccessibleViews.es.js +12 -0
  302. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverAccessibleViews.es.js.map +1 -0
  303. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverActionIds.es.js +32 -0
  304. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverActionIds.es.js.map +1 -0
  305. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverActions.es.js +452 -0
  306. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverActions.es.js.map +1 -0
  307. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverContribution.es.js +60 -0
  308. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverContribution.es.js.map +1 -0
  309. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverOperation.es.js +152 -0
  310. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverOperation.es.js.map +1 -0
  311. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.es.js +60 -0
  312. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverTypes.es.js.map +1 -0
  313. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverUtils.es.js +12 -0
  314. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/hoverUtils.es.js.map +1 -0
  315. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHoverComputer.es.js +52 -0
  316. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHoverComputer.es.js.map +1 -0
  317. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHoverController.es.js +174 -0
  318. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHoverController.es.js.map +1 -0
  319. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHoverWidget.es.js +172 -0
  320. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/marginHoverWidget.es.js.map +1 -0
  321. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.es.js +386 -0
  322. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.es.js.map +1 -0
  323. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markerHoverParticipant.es.js +239 -0
  324. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/markerHoverParticipant.es.js.map +1 -0
  325. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/resizableContentWidget.es.js +91 -0
  326. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/hover/browser/resizableContentWidget.es.js.map +1 -0
  327. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.es.js +153 -0
  328. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.es.js.map +1 -0
  329. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplaceCommand.es.js +23 -0
  330. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplaceCommand.es.js.map +1 -0
  331. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentation.es.js +605 -0
  332. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/indentation/browser/indentation.es.js.map +1 -0
  333. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/indentation/common/indentUtils.es.js +31 -0
  334. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/indentation/common/indentUtils.es.js.map +1 -0
  335. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/indentation/common/indentation.es.js +83 -0
  336. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/indentation/common/indentation.es.js.map +1 -0
  337. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHints.es.js +142 -0
  338. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHints.es.js.map +1 -0
  339. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.es.js +12 -0
  340. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.es.js.map +1 -0
  341. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.es.js +566 -0
  342. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.es.js.map +1 -0
  343. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsHover.es.js +147 -0
  344. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsHover.es.js.map +1 -0
  345. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.es.js +94 -0
  346. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.es.js.map +1 -0
  347. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/controller/commandIds.es.js +9 -0
  348. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/controller/commandIds.es.js.map +1 -0
  349. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/controller/commands.es.js +212 -0
  350. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/controller/commands.es.js.map +1 -0
  351. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.es.js +62 -0
  352. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.es.js.map +1 -0
  353. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.es.js +286 -0
  354. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.es.js.map +1 -0
  355. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.es.js +153 -0
  356. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.es.js.map +1 -0
  357. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.es.js +323 -0
  358. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.es.js.map +1 -0
  359. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.es.js +25 -0
  360. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.es.js.map +1 -0
  361. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsAccessibleView.es.js +6 -0
  362. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsAccessibleView.es.js.map +1 -0
  363. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/ghostText.es.js +92 -0
  364. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/ghostText.es.js.map +1 -0
  365. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.es.js +484 -0
  366. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.es.js.map +1 -0
  367. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.es.js +268 -0
  368. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.es.js.map +1 -0
  369. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.es.js +224 -0
  370. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.es.js.map +1 -0
  371. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/singleTextEdit.es.js +166 -0
  372. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/singleTextEdit.es.js.map +1 -0
  373. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/suggestWidgetAdaptor.es.js +173 -0
  374. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/model/suggestWidgetAdaptor.es.js.map +1 -0
  375. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.es.js +55 -0
  376. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/utils.es.js.map +1 -0
  377. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/view/ghostTextView.es.js +311 -0
  378. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/view/ghostTextView.es.js.map +1 -0
  379. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commandIds.es.js +11 -0
  380. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commandIds.es.js.map +1 -0
  381. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commands.es.js +141 -0
  382. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/commands.es.js.map +1 -0
  383. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.es.js +198 -0
  384. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.es.js.map +1 -0
  385. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.es.js +15 -0
  386. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.es.js.map +1 -0
  387. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditController.es.js +327 -0
  388. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditController.es.js.map +1 -0
  389. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.es.js +208 -0
  390. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.es.js.map +1 -0
  391. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditSideBySideWidget.es.js +310 -0
  392. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdit/browser/inlineEditSideBySideWidget.es.js.map +1 -0
  393. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/commands.es.js +138 -0
  394. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/commands.es.js.map +1 -0
  395. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/consts.es.js +15 -0
  396. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/consts.es.js.map +1 -0
  397. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/inlineEdits.contribution.es.js +15 -0
  398. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/inlineEdits.contribution.es.js.map +1 -0
  399. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/inlineEditsController.es.js +105 -0
  400. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/inlineEditsController.es.js.map +1 -0
  401. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/inlineEditsModel.es.js +236 -0
  402. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/inlineEditsModel.es.js.map +1 -0
  403. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.es.js +322 -0
  404. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.es.js.map +1 -0
  405. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.es.js +149 -0
  406. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/inlineProgress/browser/inlineProgress.es.js.map +1 -0
  407. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/lineSelection/browser/lineSelection.es.js +35 -0
  408. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/lineSelection/browser/lineSelection.es.js.map +1 -0
  409. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/copyLinesCommand.es.js +67 -0
  410. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/copyLinesCommand.es.js.map +1 -0
  411. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/linesOperations.es.js +1114 -0
  412. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/linesOperations.es.js.map +1 -0
  413. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/moveLinesCommand.es.js +347 -0
  414. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/moveLinesCommand.es.js.map +1 -0
  415. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/sortLinesCommand.es.js +78 -0
  416. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linesOperations/browser/sortLinesCommand.es.js.map +1 -0
  417. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.es.js +382 -0
  418. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.es.js.map +1 -0
  419. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/getLinks.es.js +141 -0
  420. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/getLinks.es.js.map +1 -0
  421. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.es.js +374 -0
  422. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/links/browser/links.es.js.map +1 -0
  423. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.es.js +28 -0
  424. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.es.js.map +1 -0
  425. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.es.js +190 -0
  426. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/message/browser/messageController.es.js.map +1 -0
  427. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/multicursor/browser/multicursor.es.js +1088 -0
  428. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/multicursor/browser/multicursor.es.js.map +1 -0
  429. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.es.js +151 -0
  430. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHints.es.js.map +1 -0
  431. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsModel.es.js +262 -0
  432. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsModel.es.js.map +1 -0
  433. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.es.js +328 -0
  434. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.es.js.map +1 -0
  435. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.es.js +55 -0
  436. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.es.js.map +1 -0
  437. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.es.js +267 -0
  438. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/peekView/browser/peekView.es.js.map +1 -0
  439. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.es.js +15 -0
  440. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.es.js.map +1 -0
  441. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/placeholderText/browser/placeholderTextContribution.es.js +85 -0
  442. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/placeholderText/browser/placeholderTextContribution.es.js.map +1 -0
  443. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.es.js +41 -0
  444. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.es.js.map +1 -0
  445. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/rename.es.js +475 -0
  446. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/rename.es.js.map +1 -0
  447. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameWidget.es.js +756 -0
  448. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/rename/browser/renameWidget.es.js.map +1 -0
  449. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.es.js +195 -0
  450. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.es.js.map +1 -0
  451. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.es.js +334 -0
  452. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.es.js.map +1 -0
  453. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.es.js +137 -0
  454. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.es.js.map +1 -0
  455. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/getSemanticTokens.es.js +197 -0
  456. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/getSemanticTokens.es.js.map +1 -0
  457. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/semanticTokensConfig.es.js +14 -0
  458. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/semanticTokens/common/semanticTokensConfig.es.js.map +1 -0
  459. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/bracketSelections.es.js +134 -0
  460. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/bracketSelections.es.js.map +1 -0
  461. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/smartSelect.es.js +277 -0
  462. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/smartSelect.es.js.map +1 -0
  463. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/wordSelections.es.js +69 -0
  464. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/smartSelect/browser/wordSelections.es.js.map +1 -0
  465. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.es.js +281 -0
  466. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetController2.es.js.map +1 -0
  467. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.es.js +926 -0
  468. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetParser.es.js.map +1 -0
  469. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.es.js +547 -0
  470. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetSession.es.js.map +1 -0
  471. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetVariables.es.js +282 -0
  472. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/snippet/browser/snippetVariables.es.js.map +1 -0
  473. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.es.js +139 -0
  474. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.es.js.map +1 -0
  475. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.es.js +17 -0
  476. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.es.js.map +1 -0
  477. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.es.js +537 -0
  478. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.es.js.map +1 -0
  479. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollElement.es.js +27 -0
  480. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollElement.es.js.map +1 -0
  481. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.es.js +321 -0
  482. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.es.js.map +1 -0
  483. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.es.js +175 -0
  484. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.es.js.map +1 -0
  485. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.es.js +451 -0
  486. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.es.js.map +1 -0
  487. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/completionModel.es.js +176 -0
  488. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/completionModel.es.js.map +1 -0
  489. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.es.js +305 -0
  490. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggest.es.js.map +1 -0
  491. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestAlternatives.es.js +90 -0
  492. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestAlternatives.es.js.map +1 -0
  493. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestCommitCharacters.es.js +56 -0
  494. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestCommitCharacters.es.js.map +1 -0
  495. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.es.js +983 -0
  496. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestController.es.js.map +1 -0
  497. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.es.js +185 -0
  498. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.es.js.map +1 -0
  499. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestMemory.es.js +253 -0
  500. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestMemory.es.js.map +1 -0
  501. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestModel.es.js +724 -0
  502. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestModel.es.js.map +1 -0
  503. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestOvertypingCapturer.es.js +58 -0
  504. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestOvertypingCapturer.es.js.map +1 -0
  505. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidget.es.js +909 -0
  506. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidget.es.js.map +1 -0
  507. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.es.js +402 -0
  508. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.es.js.map +1 -0
  509. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.es.js +212 -0
  510. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.es.js.map +1 -0
  511. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetStatus.es.js +72 -0
  512. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/suggestWidgetStatus.es.js.map +1 -0
  513. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordContextKey.es.js +71 -0
  514. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordContextKey.es.js.map +1 -0
  515. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordDistance.es.js +66 -0
  516. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/suggest/browser/wordDistance.es.js.map +1 -0
  517. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.es.js +97 -0
  518. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.es.js.map +1 -0
  519. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.es.js +43 -0
  520. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.es.js.map +1 -0
  521. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/tokenization/browser/tokenization.es.js +26 -0
  522. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/tokenization/browser/tokenization.es.js.map +1 -0
  523. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.es.js +113 -0
  524. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.es.js.map +1 -0
  525. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.es.js +702 -0
  526. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.es.js.map +1 -0
  527. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.es.js +121 -0
  528. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.es.js.map +1 -0
  529. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.es.js +110 -0
  530. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.es.js.map +1 -0
  531. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.es.js +77 -0
  532. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.es.js.map +1 -0
  533. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.es.js +712 -0
  534. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.es.js.map +1 -0
  535. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.es.js +523 -0
  536. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordOperations/browser/wordOperations.es.js.map +1 -0
  537. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.es.js +171 -0
  538. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.es.js.map +1 -0
  539. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.es.js +401 -0
  540. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/contrib/zoneWidget/browser/zoneWidget.es.js.map +1 -0
  541. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/nls.es.js +15 -1
  542. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/nls.es.js.map +1 -1
  543. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/accessibility/browser/accessibleViewRegistry.es.js +23 -0
  544. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/accessibility/browser/accessibleViewRegistry.es.js.map +1 -0
  545. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/action/common/actionCommonCategories.es.js +13 -0
  546. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/action/common/actionCommonCategories.es.js.map +1 -0
  547. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionList.es.js +285 -0
  548. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionList.es.js.map +1 -0
  549. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.es.js +265 -0
  550. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/actionWidget/browser/actionWidget.es.js.map +1 -0
  551. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.es.js +30 -0
  552. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/actions/browser/menuEntryActionViewItem.es.js.map +1 -1
  553. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/actions/common/actions.es.js +56 -5
  554. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/actions/common/actions.es.js.map +1 -1
  555. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.es.js +5 -3
  556. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/contextkey/common/contextkeys.es.js.map +1 -1
  557. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/dnd/browser/dnd.es.js +35 -0
  558. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/dnd/browser/dnd.es.js.map +1 -0
  559. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/files/common/files.es.js +10 -0
  560. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/files/common/files.es.js.map +1 -0
  561. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/history/browser/contextScopedHistoryWidget.es.js +113 -0
  562. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/history/browser/contextScopedHistoryWidget.es.js.map +1 -0
  563. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/history/browser/historyWidgetKeybindingHint.es.js +8 -0
  564. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/history/browser/historyWidgetKeybindingHint.es.js.map +1 -0
  565. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/list/browser/listService.es.js +2 -1
  566. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/list/browser/listService.es.js.map +1 -1
  567. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/observable/common/platformObservableUtils.es.js +10 -2
  568. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/observable/common/platformObservableUtils.es.js.map +1 -1
  569. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/observable/common/wrapInReloadableClass.es.js +59 -0
  570. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/observable/common/wrapInReloadableClass.es.js.map +1 -0
  571. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/opener/browser/link.es.js +95 -0
  572. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/opener/browser/link.es.js.map +1 -0
  573. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/severityIcon.es.js +26 -0
  574. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/severityIcon/browser/severityIcon.es.js.map +1 -0
  575. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/theme/common/colors/editorColors.es.js +22 -11
  576. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/theme/common/colors/editorColors.es.js.map +1 -1
  577. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/theme/common/colors/listColors.es.js +2 -1
  578. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/theme/common/colors/listColors.es.js.map +1 -1
  579. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/theme/common/colors/minimapColors.es.js +2 -1
  580. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/theme/common/colors/minimapColors.es.js.map +1 -1
  581. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.es.js +3 -2
  582. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/theme/common/iconRegistry.es.js.map +1 -1
  583. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.es.js +51 -3
  584. package/dist/node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/platform/workspace/common/workspace.es.js.map +1 -1
  585. package/dist/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.es.js +1 -1
  586. package/dist/stats.html +4949 -0
  587. package/dist/style.css +1 -1
  588. package/package.json +3 -2
@@ -1 +1 @@
1
- {"version":3,"file":"cursorWordOperations.es.js","sources":["../../../../../../../../../../../../../node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport * as strings from '../../../base/common/strings.js';\nimport { SingleCursorState } from '../cursorCommon.js';\nimport { DeleteOperations } from './cursorDeleteOperations.js';\nimport { getMapForWordSeparators } from '../core/wordCharacterClassifier.js';\nimport { Position } from '../core/position.js';\nimport { Range } from '../core/range.js';\nexport class WordOperations {\n static _createWord(lineContent, wordType, nextCharClass, start, end) {\n // console.log('WORD ==> ' + start + ' => ' + end + ':::: <<<' + lineContent.substring(start, end) + '>>>');\n return { start: start, end: end, wordType: wordType, nextCharClass: nextCharClass };\n }\n static _createIntlWord(intlWord, nextCharClass) {\n // console.log('INTL WORD ==> ' + intlWord.index + ' => ' + intlWord.index + intlWord.segment.length + ':::: <<<' + intlWord.segment + '>>>');\n return { start: intlWord.index, end: intlWord.index + intlWord.segment.length, wordType: 1 /* WordType.Regular */, nextCharClass: nextCharClass };\n }\n static _findPreviousWordOnLine(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n return this._doFindPreviousWordOnLine(lineContent, wordSeparators, position);\n }\n static _doFindPreviousWordOnLine(lineContent, wordSeparators, position) {\n let wordType = 0 /* WordType.None */;\n const previousIntlWord = wordSeparators.findPrevIntlWordBeforeOrAtOffset(lineContent, position.column - 2);\n for (let chIndex = position.column - 2; chIndex >= 0; chIndex--) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (previousIntlWord && chIndex === previousIntlWord.index) {\n return this._createIntlWord(previousIntlWord, chClass);\n }\n if (chClass === 0 /* WordCharacterClass.Regular */) {\n if (wordType === 2 /* WordType.Separator */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n wordType = 1 /* WordType.Regular */;\n }\n else if (chClass === 2 /* WordCharacterClass.WordSeparator */) {\n if (wordType === 1 /* WordType.Regular */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n wordType = 2 /* WordType.Separator */;\n }\n else if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n }\n }\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, 1 /* WordCharacterClass.Whitespace */, 0, this._findEndOfWord(lineContent, wordSeparators, wordType, 0));\n }\n return null;\n }\n static _findEndOfWord(lineContent, wordSeparators, wordType, startIndex) {\n const nextIntlWord = wordSeparators.findNextIntlWordAtOrAfterOffset(lineContent, startIndex);\n const len = lineContent.length;\n for (let chIndex = startIndex; chIndex < len; chIndex++) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (nextIntlWord && chIndex === nextIntlWord.index + nextIntlWord.segment.length) {\n return chIndex;\n }\n if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n return chIndex;\n }\n if (wordType === 1 /* WordType.Regular */ && chClass === 2 /* WordCharacterClass.WordSeparator */) {\n return chIndex;\n }\n if (wordType === 2 /* WordType.Separator */ && chClass === 0 /* WordCharacterClass.Regular */) {\n return chIndex;\n }\n }\n return len;\n }\n static _findNextWordOnLine(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n return this._doFindNextWordOnLine(lineContent, wordSeparators, position);\n }\n static _doFindNextWordOnLine(lineContent, wordSeparators, position) {\n let wordType = 0 /* WordType.None */;\n const len = lineContent.length;\n const nextIntlWord = wordSeparators.findNextIntlWordAtOrAfterOffset(lineContent, position.column - 1);\n for (let chIndex = position.column - 1; chIndex < len; chIndex++) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (nextIntlWord && chIndex === nextIntlWord.index) {\n return this._createIntlWord(nextIntlWord, chClass);\n }\n if (chClass === 0 /* WordCharacterClass.Regular */) {\n if (wordType === 2 /* WordType.Separator */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n wordType = 1 /* WordType.Regular */;\n }\n else if (chClass === 2 /* WordCharacterClass.WordSeparator */) {\n if (wordType === 1 /* WordType.Regular */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n wordType = 2 /* WordType.Separator */;\n }\n else if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n }\n }\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, 1 /* WordCharacterClass.Whitespace */, this._findStartOfWord(lineContent, wordSeparators, wordType, len - 1), len);\n }\n return null;\n }\n static _findStartOfWord(lineContent, wordSeparators, wordType, startIndex) {\n const previousIntlWord = wordSeparators.findPrevIntlWordBeforeOrAtOffset(lineContent, startIndex);\n for (let chIndex = startIndex; chIndex >= 0; chIndex--) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (previousIntlWord && chIndex === previousIntlWord.index) {\n return chIndex;\n }\n if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n return chIndex + 1;\n }\n if (wordType === 1 /* WordType.Regular */ && chClass === 2 /* WordCharacterClass.WordSeparator */) {\n return chIndex + 1;\n }\n if (wordType === 2 /* WordType.Separator */ && chClass === 0 /* WordCharacterClass.Regular */) {\n return chIndex + 1;\n }\n }\n return 0;\n }\n static moveWordLeft(wordSeparators, model, position, wordNavigationType, hasMulticursor) {\n let lineNumber = position.lineNumber;\n let column = position.column;\n if (column === 1) {\n if (lineNumber > 1) {\n lineNumber = lineNumber - 1;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n let prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, column));\n if (wordNavigationType === 0 /* WordNavigationType.WordStart */) {\n return new Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n if (wordNavigationType === 1 /* WordNavigationType.WordStartFast */) {\n if (!hasMulticursor // avoid having multiple cursors stop at different locations when doing word start\n && prevWordOnLine\n && prevWordOnLine.wordType === 2 /* WordType.Separator */\n && prevWordOnLine.end - prevWordOnLine.start === 1\n && prevWordOnLine.nextCharClass === 0 /* WordCharacterClass.Regular */) {\n // Skip over a word made up of one single separator and followed by a regular character\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n if (wordNavigationType === 3 /* WordNavigationType.WordAccessibility */) {\n while (prevWordOnLine\n && prevWordOnLine.wordType === 2 /* WordType.Separator */) {\n // Skip over words made up of only separators\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n // We are stopping at the ending of words\n if (prevWordOnLine && column <= prevWordOnLine.end + 1) {\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new Position(lineNumber, prevWordOnLine ? prevWordOnLine.end + 1 : 1);\n }\n static _moveWordPartLeft(model, position) {\n const lineNumber = position.lineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (position.column === 1) {\n return (lineNumber > 1 ? new Position(lineNumber - 1, model.getLineMaxColumn(lineNumber - 1)) : position);\n }\n const lineContent = model.getLineContent(lineNumber);\n for (let column = position.column - 1; column > 1; column--) {\n const left = lineContent.charCodeAt(column - 2);\n const right = lineContent.charCodeAt(column - 1);\n if (left === 95 /* CharCode.Underline */ && right !== 95 /* CharCode.Underline */) {\n // snake_case_variables\n return new Position(lineNumber, column);\n }\n if (left === 45 /* CharCode.Dash */ && right !== 45 /* CharCode.Dash */) {\n // kebab-case-variables\n return new Position(lineNumber, column);\n }\n if ((strings.isLowerAsciiLetter(left) || strings.isAsciiDigit(left)) && strings.isUpperAsciiLetter(right)) {\n // camelCaseVariables\n return new Position(lineNumber, column);\n }\n if (strings.isUpperAsciiLetter(left) && strings.isUpperAsciiLetter(right)) {\n // thisIsACamelCaseWithOneLetterWords\n if (column + 1 < maxColumn) {\n const rightRight = lineContent.charCodeAt(column);\n if (strings.isLowerAsciiLetter(rightRight) || strings.isAsciiDigit(rightRight)) {\n return new Position(lineNumber, column);\n }\n }\n }\n }\n return new Position(lineNumber, 1);\n }\n static moveWordRight(wordSeparators, model, position, wordNavigationType) {\n let lineNumber = position.lineNumber;\n let column = position.column;\n let movedDown = false;\n if (column === model.getLineMaxColumn(lineNumber)) {\n if (lineNumber < model.getLineCount()) {\n movedDown = true;\n lineNumber = lineNumber + 1;\n column = 1;\n }\n }\n let nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, column));\n if (wordNavigationType === 2 /* WordNavigationType.WordEnd */) {\n if (nextWordOnLine && nextWordOnLine.wordType === 2 /* WordType.Separator */) {\n if (nextWordOnLine.end - nextWordOnLine.start === 1 && nextWordOnLine.nextCharClass === 0 /* WordCharacterClass.Regular */) {\n // Skip over a word made up of one single separator and followed by a regular character\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, nextWordOnLine.end + 1));\n }\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.end + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n else if (wordNavigationType === 3 /* WordNavigationType.WordAccessibility */) {\n if (movedDown) {\n // If we move to the next line, pretend that the cursor is right before the first character.\n // This is needed when the first word starts right at the first character - and in order not to miss it,\n // we need to start before.\n column = 0;\n }\n while (nextWordOnLine\n && (nextWordOnLine.wordType === 2 /* WordType.Separator */\n || nextWordOnLine.start + 1 <= column)) {\n // Skip over a word made up of one single separator\n // Also skip over word if it begins before current cursor position to ascertain we're moving forward at least 1 character.\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n else {\n if (nextWordOnLine && !movedDown && column >= nextWordOnLine.start + 1) {\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n return new Position(lineNumber, column);\n }\n static _moveWordPartRight(model, position) {\n const lineNumber = position.lineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (position.column === maxColumn) {\n return (lineNumber < model.getLineCount() ? new Position(lineNumber + 1, 1) : position);\n }\n const lineContent = model.getLineContent(lineNumber);\n for (let column = position.column + 1; column < maxColumn; column++) {\n const left = lineContent.charCodeAt(column - 2);\n const right = lineContent.charCodeAt(column - 1);\n if (left !== 95 /* CharCode.Underline */ && right === 95 /* CharCode.Underline */) {\n // snake_case_variables\n return new Position(lineNumber, column);\n }\n if (left !== 45 /* CharCode.Dash */ && right === 45 /* CharCode.Dash */) {\n // kebab-case-variables\n return new Position(lineNumber, column);\n }\n if ((strings.isLowerAsciiLetter(left) || strings.isAsciiDigit(left)) && strings.isUpperAsciiLetter(right)) {\n // camelCaseVariables\n return new Position(lineNumber, column);\n }\n if (strings.isUpperAsciiLetter(left) && strings.isUpperAsciiLetter(right)) {\n // thisIsACamelCaseWithOneLetterWords\n if (column + 1 < maxColumn) {\n const rightRight = lineContent.charCodeAt(column);\n if (strings.isLowerAsciiLetter(rightRight) || strings.isAsciiDigit(rightRight)) {\n return new Position(lineNumber, column);\n }\n }\n }\n }\n return new Position(lineNumber, maxColumn);\n }\n static _deleteWordLeftWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const startIndex = position.column - 2;\n const lastNonWhitespace = strings.lastNonWhitespaceIndex(lineContent, startIndex);\n if (lastNonWhitespace + 1 < startIndex) {\n return new Range(position.lineNumber, lastNonWhitespace + 2, position.lineNumber, position.column);\n }\n return null;\n }\n static deleteWordLeft(ctx, wordNavigationType) {\n const wordSeparators = ctx.wordSeparators;\n const model = ctx.model;\n const selection = ctx.selection;\n const whitespaceHeuristics = ctx.whitespaceHeuristics;\n if (!selection.isEmpty()) {\n return selection;\n }\n if (DeleteOperations.isAutoClosingPairDelete(ctx.autoClosingDelete, ctx.autoClosingBrackets, ctx.autoClosingQuotes, ctx.autoClosingPairs.autoClosingPairsOpenByEnd, ctx.model, [ctx.selection], ctx.autoClosedCharacters)) {\n const position = ctx.selection.getPosition();\n return new Range(position.lineNumber, position.column - 1, position.lineNumber, position.column + 1);\n }\n const position = new Position(selection.positionLineNumber, selection.positionColumn);\n let lineNumber = position.lineNumber;\n let column = position.column;\n if (lineNumber === 1 && column === 1) {\n // Ignore deleting at beginning of file\n return null;\n }\n if (whitespaceHeuristics) {\n const r = this._deleteWordLeftWhitespace(model, position);\n if (r) {\n return r;\n }\n }\n let prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (wordNavigationType === 0 /* WordNavigationType.WordStart */) {\n if (prevWordOnLine) {\n column = prevWordOnLine.start + 1;\n }\n else {\n if (column > 1) {\n column = 1;\n }\n else {\n lineNumber--;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n else {\n if (prevWordOnLine && column <= prevWordOnLine.end + 1) {\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, prevWordOnLine.start + 1));\n }\n if (prevWordOnLine) {\n column = prevWordOnLine.end + 1;\n }\n else {\n if (column > 1) {\n column = 1;\n }\n else {\n lineNumber--;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n return new Range(lineNumber, column, position.lineNumber, position.column);\n }\n static deleteInsideWord(wordSeparators, model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const position = new Position(selection.positionLineNumber, selection.positionColumn);\n const r = this._deleteInsideWordWhitespace(model, position);\n if (r) {\n return r;\n }\n return this._deleteInsideWordDetermineDeleteRange(wordSeparators, model, position);\n }\n static _charAtIsWhitespace(str, index) {\n const charCode = str.charCodeAt(index);\n return (charCode === 32 /* CharCode.Space */ || charCode === 9 /* CharCode.Tab */);\n }\n static _deleteInsideWordWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const lineContentLength = lineContent.length;\n if (lineContentLength === 0) {\n // empty line\n return null;\n }\n let leftIndex = Math.max(position.column - 2, 0);\n if (!this._charAtIsWhitespace(lineContent, leftIndex)) {\n // touches a non-whitespace character to the left\n return null;\n }\n let rightIndex = Math.min(position.column - 1, lineContentLength - 1);\n if (!this._charAtIsWhitespace(lineContent, rightIndex)) {\n // touches a non-whitespace character to the right\n return null;\n }\n // walk over whitespace to the left\n while (leftIndex > 0 && this._charAtIsWhitespace(lineContent, leftIndex - 1)) {\n leftIndex--;\n }\n // walk over whitespace to the right\n while (rightIndex + 1 < lineContentLength && this._charAtIsWhitespace(lineContent, rightIndex + 1)) {\n rightIndex++;\n }\n return new Range(position.lineNumber, leftIndex + 1, position.lineNumber, rightIndex + 2);\n }\n static _deleteInsideWordDetermineDeleteRange(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const lineLength = lineContent.length;\n if (lineLength === 0) {\n // empty line\n if (position.lineNumber > 1) {\n return new Range(position.lineNumber - 1, model.getLineMaxColumn(position.lineNumber - 1), position.lineNumber, 1);\n }\n else {\n if (position.lineNumber < model.getLineCount()) {\n return new Range(position.lineNumber, 1, position.lineNumber + 1, 1);\n }\n else {\n // empty model\n return new Range(position.lineNumber, 1, position.lineNumber, 1);\n }\n }\n }\n const touchesWord = (word) => {\n return (word.start + 1 <= position.column && position.column <= word.end + 1);\n };\n const createRangeWithPosition = (startColumn, endColumn) => {\n startColumn = Math.min(startColumn, position.column);\n endColumn = Math.max(endColumn, position.column);\n return new Range(position.lineNumber, startColumn, position.lineNumber, endColumn);\n };\n const deleteWordAndAdjacentWhitespace = (word) => {\n let startColumn = word.start + 1;\n let endColumn = word.end + 1;\n let expandedToTheRight = false;\n while (endColumn - 1 < lineLength && this._charAtIsWhitespace(lineContent, endColumn - 1)) {\n expandedToTheRight = true;\n endColumn++;\n }\n if (!expandedToTheRight) {\n while (startColumn > 1 && this._charAtIsWhitespace(lineContent, startColumn - 2)) {\n startColumn--;\n }\n }\n return createRangeWithPosition(startColumn, endColumn);\n };\n const prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (prevWordOnLine && touchesWord(prevWordOnLine)) {\n return deleteWordAndAdjacentWhitespace(prevWordOnLine);\n }\n const nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (nextWordOnLine && touchesWord(nextWordOnLine)) {\n return deleteWordAndAdjacentWhitespace(nextWordOnLine);\n }\n if (prevWordOnLine && nextWordOnLine) {\n return createRangeWithPosition(prevWordOnLine.end + 1, nextWordOnLine.start + 1);\n }\n if (prevWordOnLine) {\n return createRangeWithPosition(prevWordOnLine.start + 1, prevWordOnLine.end + 1);\n }\n if (nextWordOnLine) {\n return createRangeWithPosition(nextWordOnLine.start + 1, nextWordOnLine.end + 1);\n }\n return createRangeWithPosition(1, lineLength + 1);\n }\n static _deleteWordPartLeft(model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const pos = selection.getPosition();\n const toPosition = WordOperations._moveWordPartLeft(model, pos);\n return new Range(pos.lineNumber, pos.column, toPosition.lineNumber, toPosition.column);\n }\n static _findFirstNonWhitespaceChar(str, startIndex) {\n const len = str.length;\n for (let chIndex = startIndex; chIndex < len; chIndex++) {\n const ch = str.charAt(chIndex);\n if (ch !== ' ' && ch !== '\\t') {\n return chIndex;\n }\n }\n return len;\n }\n static _deleteWordRightWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const startIndex = position.column - 1;\n const firstNonWhitespace = this._findFirstNonWhitespaceChar(lineContent, startIndex);\n if (startIndex + 1 < firstNonWhitespace) {\n // bingo\n return new Range(position.lineNumber, position.column, position.lineNumber, firstNonWhitespace + 1);\n }\n return null;\n }\n static deleteWordRight(ctx, wordNavigationType) {\n const wordSeparators = ctx.wordSeparators;\n const model = ctx.model;\n const selection = ctx.selection;\n const whitespaceHeuristics = ctx.whitespaceHeuristics;\n if (!selection.isEmpty()) {\n return selection;\n }\n const position = new Position(selection.positionLineNumber, selection.positionColumn);\n let lineNumber = position.lineNumber;\n let column = position.column;\n const lineCount = model.getLineCount();\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (lineNumber === lineCount && column === maxColumn) {\n // Ignore deleting at end of file\n return null;\n }\n if (whitespaceHeuristics) {\n const r = this._deleteWordRightWhitespace(model, position);\n if (r) {\n return r;\n }\n }\n let nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (wordNavigationType === 2 /* WordNavigationType.WordEnd */) {\n if (nextWordOnLine) {\n column = nextWordOnLine.end + 1;\n }\n else {\n if (column < maxColumn || lineNumber === lineCount) {\n column = maxColumn;\n }\n else {\n lineNumber++;\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, 1));\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n }\n else {\n if (nextWordOnLine && column >= nextWordOnLine.start + 1) {\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n if (column < maxColumn || lineNumber === lineCount) {\n column = maxColumn;\n }\n else {\n lineNumber++;\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, 1));\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n }\n return new Range(lineNumber, column, position.lineNumber, position.column);\n }\n static _deleteWordPartRight(model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const pos = selection.getPosition();\n const toPosition = WordOperations._moveWordPartRight(model, pos);\n return new Range(pos.lineNumber, pos.column, toPosition.lineNumber, toPosition.column);\n }\n static _createWordAtPosition(model, lineNumber, word) {\n const range = new Range(lineNumber, word.start + 1, lineNumber, word.end + 1);\n return {\n word: model.getValueInRange(range),\n startColumn: range.startColumn,\n endColumn: range.endColumn\n };\n }\n static getWordAtPosition(model, _wordSeparators, _intlSegmenterLocales, position) {\n const wordSeparators = getMapForWordSeparators(_wordSeparators, _intlSegmenterLocales);\n const prevWord = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start <= position.column - 1 && position.column - 1 <= prevWord.end) {\n return WordOperations._createWordAtPosition(model, position.lineNumber, prevWord);\n }\n const nextWord = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start <= position.column - 1 && position.column - 1 <= nextWord.end) {\n return WordOperations._createWordAtPosition(model, position.lineNumber, nextWord);\n }\n return null;\n }\n static word(config, model, cursor, inSelectionMode, position) {\n const wordSeparators = getMapForWordSeparators(config.wordSeparators, config.wordSegmenterLocales);\n const prevWord = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n const nextWord = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (!inSelectionMode) {\n // Entering word selection for the first time\n let startColumn;\n let endColumn;\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start <= position.column - 1 && position.column - 1 <= prevWord.end) {\n // isTouchingPrevWord\n startColumn = prevWord.start + 1;\n endColumn = prevWord.end + 1;\n }\n else if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start <= position.column - 1 && position.column - 1 <= nextWord.end) {\n // isTouchingNextWord\n startColumn = nextWord.start + 1;\n endColumn = nextWord.end + 1;\n }\n else {\n if (prevWord) {\n startColumn = prevWord.end + 1;\n }\n else {\n startColumn = 1;\n }\n if (nextWord) {\n endColumn = nextWord.start + 1;\n }\n else {\n endColumn = model.getLineMaxColumn(position.lineNumber);\n }\n }\n return new SingleCursorState(new Range(position.lineNumber, startColumn, position.lineNumber, endColumn), 1 /* SelectionStartKind.Word */, 0, new Position(position.lineNumber, endColumn), 0);\n }\n let startColumn;\n let endColumn;\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start < position.column - 1 && position.column - 1 < prevWord.end) {\n // isInsidePrevWord\n startColumn = prevWord.start + 1;\n endColumn = prevWord.end + 1;\n }\n else if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start < position.column - 1 && position.column - 1 < nextWord.end) {\n // isInsideNextWord\n startColumn = nextWord.start + 1;\n endColumn = nextWord.end + 1;\n }\n else {\n startColumn = position.column;\n endColumn = position.column;\n }\n const lineNumber = position.lineNumber;\n let column;\n if (cursor.selectionStart.containsPosition(position)) {\n column = cursor.selectionStart.endColumn;\n }\n else if (position.isBeforeOrEqual(cursor.selectionStart.getStartPosition())) {\n column = startColumn;\n const possiblePosition = new Position(lineNumber, column);\n if (cursor.selectionStart.containsPosition(possiblePosition)) {\n column = cursor.selectionStart.endColumn;\n }\n }\n else {\n column = endColumn;\n const possiblePosition = new Position(lineNumber, column);\n if (cursor.selectionStart.containsPosition(possiblePosition)) {\n column = cursor.selectionStart.startColumn;\n }\n }\n return cursor.move(true, lineNumber, column, 0);\n }\n}\nexport class WordPartOperations extends WordOperations {\n static deleteWordPartLeft(ctx) {\n const candidates = enforceDefined([\n WordOperations.deleteWordLeft(ctx, 0 /* WordNavigationType.WordStart */),\n WordOperations.deleteWordLeft(ctx, 2 /* WordNavigationType.WordEnd */),\n WordOperations._deleteWordPartLeft(ctx.model, ctx.selection)\n ]);\n candidates.sort(Range.compareRangesUsingEnds);\n return candidates[2];\n }\n static deleteWordPartRight(ctx) {\n const candidates = enforceDefined([\n WordOperations.deleteWordRight(ctx, 0 /* WordNavigationType.WordStart */),\n WordOperations.deleteWordRight(ctx, 2 /* WordNavigationType.WordEnd */),\n WordOperations._deleteWordPartRight(ctx.model, ctx.selection)\n ]);\n candidates.sort(Range.compareRangesUsingStarts);\n return candidates[0];\n }\n static moveWordPartLeft(wordSeparators, model, position, hasMulticursor) {\n const candidates = enforceDefined([\n WordOperations.moveWordLeft(wordSeparators, model, position, 0 /* WordNavigationType.WordStart */, hasMulticursor),\n WordOperations.moveWordLeft(wordSeparators, model, position, 2 /* WordNavigationType.WordEnd */, hasMulticursor),\n WordOperations._moveWordPartLeft(model, position)\n ]);\n candidates.sort(Position.compare);\n return candidates[2];\n }\n static moveWordPartRight(wordSeparators, model, position) {\n const candidates = enforceDefined([\n WordOperations.moveWordRight(wordSeparators, model, position, 0 /* WordNavigationType.WordStart */),\n WordOperations.moveWordRight(wordSeparators, model, position, 2 /* WordNavigationType.WordEnd */),\n WordOperations._moveWordPartRight(model, position)\n ]);\n candidates.sort(Position.compare);\n return candidates[0];\n }\n}\nfunction enforceDefined(arr) {\n return arr.filter(el => Boolean(el));\n}\n"],"names":["strings.isLowerAsciiLetter","strings.isAsciiDigit","strings.isUpperAsciiLetter","strings.lastNonWhitespaceIndex","position","startColumn","endColumn"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"cursorWordOperations.es.js","sources":["../../../../../../../../../../../../../node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/cursor/cursorWordOperations.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport * as strings from '../../../base/common/strings.js';\nimport { SingleCursorState } from '../cursorCommon.js';\nimport { DeleteOperations } from './cursorDeleteOperations.js';\nimport { getMapForWordSeparators } from '../core/wordCharacterClassifier.js';\nimport { Position } from '../core/position.js';\nimport { Range } from '../core/range.js';\nexport class WordOperations {\n static _createWord(lineContent, wordType, nextCharClass, start, end) {\n // console.log('WORD ==> ' + start + ' => ' + end + ':::: <<<' + lineContent.substring(start, end) + '>>>');\n return { start: start, end: end, wordType: wordType, nextCharClass: nextCharClass };\n }\n static _createIntlWord(intlWord, nextCharClass) {\n // console.log('INTL WORD ==> ' + intlWord.index + ' => ' + intlWord.index + intlWord.segment.length + ':::: <<<' + intlWord.segment + '>>>');\n return { start: intlWord.index, end: intlWord.index + intlWord.segment.length, wordType: 1 /* WordType.Regular */, nextCharClass: nextCharClass };\n }\n static _findPreviousWordOnLine(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n return this._doFindPreviousWordOnLine(lineContent, wordSeparators, position);\n }\n static _doFindPreviousWordOnLine(lineContent, wordSeparators, position) {\n let wordType = 0 /* WordType.None */;\n const previousIntlWord = wordSeparators.findPrevIntlWordBeforeOrAtOffset(lineContent, position.column - 2);\n for (let chIndex = position.column - 2; chIndex >= 0; chIndex--) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (previousIntlWord && chIndex === previousIntlWord.index) {\n return this._createIntlWord(previousIntlWord, chClass);\n }\n if (chClass === 0 /* WordCharacterClass.Regular */) {\n if (wordType === 2 /* WordType.Separator */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n wordType = 1 /* WordType.Regular */;\n }\n else if (chClass === 2 /* WordCharacterClass.WordSeparator */) {\n if (wordType === 1 /* WordType.Regular */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n wordType = 2 /* WordType.Separator */;\n }\n else if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, chClass, chIndex + 1, this._findEndOfWord(lineContent, wordSeparators, wordType, chIndex + 1));\n }\n }\n }\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, 1 /* WordCharacterClass.Whitespace */, 0, this._findEndOfWord(lineContent, wordSeparators, wordType, 0));\n }\n return null;\n }\n static _findEndOfWord(lineContent, wordSeparators, wordType, startIndex) {\n const nextIntlWord = wordSeparators.findNextIntlWordAtOrAfterOffset(lineContent, startIndex);\n const len = lineContent.length;\n for (let chIndex = startIndex; chIndex < len; chIndex++) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (nextIntlWord && chIndex === nextIntlWord.index + nextIntlWord.segment.length) {\n return chIndex;\n }\n if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n return chIndex;\n }\n if (wordType === 1 /* WordType.Regular */ && chClass === 2 /* WordCharacterClass.WordSeparator */) {\n return chIndex;\n }\n if (wordType === 2 /* WordType.Separator */ && chClass === 0 /* WordCharacterClass.Regular */) {\n return chIndex;\n }\n }\n return len;\n }\n static _findNextWordOnLine(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n return this._doFindNextWordOnLine(lineContent, wordSeparators, position);\n }\n static _doFindNextWordOnLine(lineContent, wordSeparators, position) {\n let wordType = 0 /* WordType.None */;\n const len = lineContent.length;\n const nextIntlWord = wordSeparators.findNextIntlWordAtOrAfterOffset(lineContent, position.column - 1);\n for (let chIndex = position.column - 1; chIndex < len; chIndex++) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (nextIntlWord && chIndex === nextIntlWord.index) {\n return this._createIntlWord(nextIntlWord, chClass);\n }\n if (chClass === 0 /* WordCharacterClass.Regular */) {\n if (wordType === 2 /* WordType.Separator */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n wordType = 1 /* WordType.Regular */;\n }\n else if (chClass === 2 /* WordCharacterClass.WordSeparator */) {\n if (wordType === 1 /* WordType.Regular */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n wordType = 2 /* WordType.Separator */;\n }\n else if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, chClass, this._findStartOfWord(lineContent, wordSeparators, wordType, chIndex - 1), chIndex);\n }\n }\n }\n if (wordType !== 0 /* WordType.None */) {\n return this._createWord(lineContent, wordType, 1 /* WordCharacterClass.Whitespace */, this._findStartOfWord(lineContent, wordSeparators, wordType, len - 1), len);\n }\n return null;\n }\n static _findStartOfWord(lineContent, wordSeparators, wordType, startIndex) {\n const previousIntlWord = wordSeparators.findPrevIntlWordBeforeOrAtOffset(lineContent, startIndex);\n for (let chIndex = startIndex; chIndex >= 0; chIndex--) {\n const chCode = lineContent.charCodeAt(chIndex);\n const chClass = wordSeparators.get(chCode);\n if (previousIntlWord && chIndex === previousIntlWord.index) {\n return chIndex;\n }\n if (chClass === 1 /* WordCharacterClass.Whitespace */) {\n return chIndex + 1;\n }\n if (wordType === 1 /* WordType.Regular */ && chClass === 2 /* WordCharacterClass.WordSeparator */) {\n return chIndex + 1;\n }\n if (wordType === 2 /* WordType.Separator */ && chClass === 0 /* WordCharacterClass.Regular */) {\n return chIndex + 1;\n }\n }\n return 0;\n }\n static moveWordLeft(wordSeparators, model, position, wordNavigationType, hasMulticursor) {\n let lineNumber = position.lineNumber;\n let column = position.column;\n if (column === 1) {\n if (lineNumber > 1) {\n lineNumber = lineNumber - 1;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n let prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, column));\n if (wordNavigationType === 0 /* WordNavigationType.WordStart */) {\n return new Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n if (wordNavigationType === 1 /* WordNavigationType.WordStartFast */) {\n if (!hasMulticursor // avoid having multiple cursors stop at different locations when doing word start\n && prevWordOnLine\n && prevWordOnLine.wordType === 2 /* WordType.Separator */\n && prevWordOnLine.end - prevWordOnLine.start === 1\n && prevWordOnLine.nextCharClass === 0 /* WordCharacterClass.Regular */) {\n // Skip over a word made up of one single separator and followed by a regular character\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n if (wordNavigationType === 3 /* WordNavigationType.WordAccessibility */) {\n while (prevWordOnLine\n && prevWordOnLine.wordType === 2 /* WordType.Separator */) {\n // Skip over words made up of only separators\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new Position(lineNumber, prevWordOnLine ? prevWordOnLine.start + 1 : 1);\n }\n // We are stopping at the ending of words\n if (prevWordOnLine && column <= prevWordOnLine.end + 1) {\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, prevWordOnLine.start + 1));\n }\n return new Position(lineNumber, prevWordOnLine ? prevWordOnLine.end + 1 : 1);\n }\n static _moveWordPartLeft(model, position) {\n const lineNumber = position.lineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (position.column === 1) {\n return (lineNumber > 1 ? new Position(lineNumber - 1, model.getLineMaxColumn(lineNumber - 1)) : position);\n }\n const lineContent = model.getLineContent(lineNumber);\n for (let column = position.column - 1; column > 1; column--) {\n const left = lineContent.charCodeAt(column - 2);\n const right = lineContent.charCodeAt(column - 1);\n if (left === 95 /* CharCode.Underline */ && right !== 95 /* CharCode.Underline */) {\n // snake_case_variables\n return new Position(lineNumber, column);\n }\n if (left === 45 /* CharCode.Dash */ && right !== 45 /* CharCode.Dash */) {\n // kebab-case-variables\n return new Position(lineNumber, column);\n }\n if ((strings.isLowerAsciiLetter(left) || strings.isAsciiDigit(left)) && strings.isUpperAsciiLetter(right)) {\n // camelCaseVariables\n return new Position(lineNumber, column);\n }\n if (strings.isUpperAsciiLetter(left) && strings.isUpperAsciiLetter(right)) {\n // thisIsACamelCaseWithOneLetterWords\n if (column + 1 < maxColumn) {\n const rightRight = lineContent.charCodeAt(column);\n if (strings.isLowerAsciiLetter(rightRight) || strings.isAsciiDigit(rightRight)) {\n return new Position(lineNumber, column);\n }\n }\n }\n }\n return new Position(lineNumber, 1);\n }\n static moveWordRight(wordSeparators, model, position, wordNavigationType) {\n let lineNumber = position.lineNumber;\n let column = position.column;\n let movedDown = false;\n if (column === model.getLineMaxColumn(lineNumber)) {\n if (lineNumber < model.getLineCount()) {\n movedDown = true;\n lineNumber = lineNumber + 1;\n column = 1;\n }\n }\n let nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, column));\n if (wordNavigationType === 2 /* WordNavigationType.WordEnd */) {\n if (nextWordOnLine && nextWordOnLine.wordType === 2 /* WordType.Separator */) {\n if (nextWordOnLine.end - nextWordOnLine.start === 1 && nextWordOnLine.nextCharClass === 0 /* WordCharacterClass.Regular */) {\n // Skip over a word made up of one single separator and followed by a regular character\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, nextWordOnLine.end + 1));\n }\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.end + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n else if (wordNavigationType === 3 /* WordNavigationType.WordAccessibility */) {\n if (movedDown) {\n // If we move to the next line, pretend that the cursor is right before the first character.\n // This is needed when the first word starts right at the first character - and in order not to miss it,\n // we need to start before.\n column = 0;\n }\n while (nextWordOnLine\n && (nextWordOnLine.wordType === 2 /* WordType.Separator */\n || nextWordOnLine.start + 1 <= column)) {\n // Skip over a word made up of one single separator\n // Also skip over word if it begins before current cursor position to ascertain we're moving forward at least 1 character.\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n else {\n if (nextWordOnLine && !movedDown && column >= nextWordOnLine.start + 1) {\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n return new Position(lineNumber, column);\n }\n static _moveWordPartRight(model, position) {\n const lineNumber = position.lineNumber;\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (position.column === maxColumn) {\n return (lineNumber < model.getLineCount() ? new Position(lineNumber + 1, 1) : position);\n }\n const lineContent = model.getLineContent(lineNumber);\n for (let column = position.column + 1; column < maxColumn; column++) {\n const left = lineContent.charCodeAt(column - 2);\n const right = lineContent.charCodeAt(column - 1);\n if (left !== 95 /* CharCode.Underline */ && right === 95 /* CharCode.Underline */) {\n // snake_case_variables\n return new Position(lineNumber, column);\n }\n if (left !== 45 /* CharCode.Dash */ && right === 45 /* CharCode.Dash */) {\n // kebab-case-variables\n return new Position(lineNumber, column);\n }\n if ((strings.isLowerAsciiLetter(left) || strings.isAsciiDigit(left)) && strings.isUpperAsciiLetter(right)) {\n // camelCaseVariables\n return new Position(lineNumber, column);\n }\n if (strings.isUpperAsciiLetter(left) && strings.isUpperAsciiLetter(right)) {\n // thisIsACamelCaseWithOneLetterWords\n if (column + 1 < maxColumn) {\n const rightRight = lineContent.charCodeAt(column);\n if (strings.isLowerAsciiLetter(rightRight) || strings.isAsciiDigit(rightRight)) {\n return new Position(lineNumber, column);\n }\n }\n }\n }\n return new Position(lineNumber, maxColumn);\n }\n static _deleteWordLeftWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const startIndex = position.column - 2;\n const lastNonWhitespace = strings.lastNonWhitespaceIndex(lineContent, startIndex);\n if (lastNonWhitespace + 1 < startIndex) {\n return new Range(position.lineNumber, lastNonWhitespace + 2, position.lineNumber, position.column);\n }\n return null;\n }\n static deleteWordLeft(ctx, wordNavigationType) {\n const wordSeparators = ctx.wordSeparators;\n const model = ctx.model;\n const selection = ctx.selection;\n const whitespaceHeuristics = ctx.whitespaceHeuristics;\n if (!selection.isEmpty()) {\n return selection;\n }\n if (DeleteOperations.isAutoClosingPairDelete(ctx.autoClosingDelete, ctx.autoClosingBrackets, ctx.autoClosingQuotes, ctx.autoClosingPairs.autoClosingPairsOpenByEnd, ctx.model, [ctx.selection], ctx.autoClosedCharacters)) {\n const position = ctx.selection.getPosition();\n return new Range(position.lineNumber, position.column - 1, position.lineNumber, position.column + 1);\n }\n const position = new Position(selection.positionLineNumber, selection.positionColumn);\n let lineNumber = position.lineNumber;\n let column = position.column;\n if (lineNumber === 1 && column === 1) {\n // Ignore deleting at beginning of file\n return null;\n }\n if (whitespaceHeuristics) {\n const r = this._deleteWordLeftWhitespace(model, position);\n if (r) {\n return r;\n }\n }\n let prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (wordNavigationType === 0 /* WordNavigationType.WordStart */) {\n if (prevWordOnLine) {\n column = prevWordOnLine.start + 1;\n }\n else {\n if (column > 1) {\n column = 1;\n }\n else {\n lineNumber--;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n else {\n if (prevWordOnLine && column <= prevWordOnLine.end + 1) {\n prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, new Position(lineNumber, prevWordOnLine.start + 1));\n }\n if (prevWordOnLine) {\n column = prevWordOnLine.end + 1;\n }\n else {\n if (column > 1) {\n column = 1;\n }\n else {\n lineNumber--;\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n return new Range(lineNumber, column, position.lineNumber, position.column);\n }\n static deleteInsideWord(wordSeparators, model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const position = new Position(selection.positionLineNumber, selection.positionColumn);\n const r = this._deleteInsideWordWhitespace(model, position);\n if (r) {\n return r;\n }\n return this._deleteInsideWordDetermineDeleteRange(wordSeparators, model, position);\n }\n static _charAtIsWhitespace(str, index) {\n const charCode = str.charCodeAt(index);\n return (charCode === 32 /* CharCode.Space */ || charCode === 9 /* CharCode.Tab */);\n }\n static _deleteInsideWordWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const lineContentLength = lineContent.length;\n if (lineContentLength === 0) {\n // empty line\n return null;\n }\n let leftIndex = Math.max(position.column - 2, 0);\n if (!this._charAtIsWhitespace(lineContent, leftIndex)) {\n // touches a non-whitespace character to the left\n return null;\n }\n let rightIndex = Math.min(position.column - 1, lineContentLength - 1);\n if (!this._charAtIsWhitespace(lineContent, rightIndex)) {\n // touches a non-whitespace character to the right\n return null;\n }\n // walk over whitespace to the left\n while (leftIndex > 0 && this._charAtIsWhitespace(lineContent, leftIndex - 1)) {\n leftIndex--;\n }\n // walk over whitespace to the right\n while (rightIndex + 1 < lineContentLength && this._charAtIsWhitespace(lineContent, rightIndex + 1)) {\n rightIndex++;\n }\n return new Range(position.lineNumber, leftIndex + 1, position.lineNumber, rightIndex + 2);\n }\n static _deleteInsideWordDetermineDeleteRange(wordSeparators, model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const lineLength = lineContent.length;\n if (lineLength === 0) {\n // empty line\n if (position.lineNumber > 1) {\n return new Range(position.lineNumber - 1, model.getLineMaxColumn(position.lineNumber - 1), position.lineNumber, 1);\n }\n else {\n if (position.lineNumber < model.getLineCount()) {\n return new Range(position.lineNumber, 1, position.lineNumber + 1, 1);\n }\n else {\n // empty model\n return new Range(position.lineNumber, 1, position.lineNumber, 1);\n }\n }\n }\n const touchesWord = (word) => {\n return (word.start + 1 <= position.column && position.column <= word.end + 1);\n };\n const createRangeWithPosition = (startColumn, endColumn) => {\n startColumn = Math.min(startColumn, position.column);\n endColumn = Math.max(endColumn, position.column);\n return new Range(position.lineNumber, startColumn, position.lineNumber, endColumn);\n };\n const deleteWordAndAdjacentWhitespace = (word) => {\n let startColumn = word.start + 1;\n let endColumn = word.end + 1;\n let expandedToTheRight = false;\n while (endColumn - 1 < lineLength && this._charAtIsWhitespace(lineContent, endColumn - 1)) {\n expandedToTheRight = true;\n endColumn++;\n }\n if (!expandedToTheRight) {\n while (startColumn > 1 && this._charAtIsWhitespace(lineContent, startColumn - 2)) {\n startColumn--;\n }\n }\n return createRangeWithPosition(startColumn, endColumn);\n };\n const prevWordOnLine = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (prevWordOnLine && touchesWord(prevWordOnLine)) {\n return deleteWordAndAdjacentWhitespace(prevWordOnLine);\n }\n const nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (nextWordOnLine && touchesWord(nextWordOnLine)) {\n return deleteWordAndAdjacentWhitespace(nextWordOnLine);\n }\n if (prevWordOnLine && nextWordOnLine) {\n return createRangeWithPosition(prevWordOnLine.end + 1, nextWordOnLine.start + 1);\n }\n if (prevWordOnLine) {\n return createRangeWithPosition(prevWordOnLine.start + 1, prevWordOnLine.end + 1);\n }\n if (nextWordOnLine) {\n return createRangeWithPosition(nextWordOnLine.start + 1, nextWordOnLine.end + 1);\n }\n return createRangeWithPosition(1, lineLength + 1);\n }\n static _deleteWordPartLeft(model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const pos = selection.getPosition();\n const toPosition = WordOperations._moveWordPartLeft(model, pos);\n return new Range(pos.lineNumber, pos.column, toPosition.lineNumber, toPosition.column);\n }\n static _findFirstNonWhitespaceChar(str, startIndex) {\n const len = str.length;\n for (let chIndex = startIndex; chIndex < len; chIndex++) {\n const ch = str.charAt(chIndex);\n if (ch !== ' ' && ch !== '\\t') {\n return chIndex;\n }\n }\n return len;\n }\n static _deleteWordRightWhitespace(model, position) {\n const lineContent = model.getLineContent(position.lineNumber);\n const startIndex = position.column - 1;\n const firstNonWhitespace = this._findFirstNonWhitespaceChar(lineContent, startIndex);\n if (startIndex + 1 < firstNonWhitespace) {\n // bingo\n return new Range(position.lineNumber, position.column, position.lineNumber, firstNonWhitespace + 1);\n }\n return null;\n }\n static deleteWordRight(ctx, wordNavigationType) {\n const wordSeparators = ctx.wordSeparators;\n const model = ctx.model;\n const selection = ctx.selection;\n const whitespaceHeuristics = ctx.whitespaceHeuristics;\n if (!selection.isEmpty()) {\n return selection;\n }\n const position = new Position(selection.positionLineNumber, selection.positionColumn);\n let lineNumber = position.lineNumber;\n let column = position.column;\n const lineCount = model.getLineCount();\n const maxColumn = model.getLineMaxColumn(lineNumber);\n if (lineNumber === lineCount && column === maxColumn) {\n // Ignore deleting at end of file\n return null;\n }\n if (whitespaceHeuristics) {\n const r = this._deleteWordRightWhitespace(model, position);\n if (r) {\n return r;\n }\n }\n let nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (wordNavigationType === 2 /* WordNavigationType.WordEnd */) {\n if (nextWordOnLine) {\n column = nextWordOnLine.end + 1;\n }\n else {\n if (column < maxColumn || lineNumber === lineCount) {\n column = maxColumn;\n }\n else {\n lineNumber++;\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, 1));\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n }\n else {\n if (nextWordOnLine && column >= nextWordOnLine.start + 1) {\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, nextWordOnLine.end + 1));\n }\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n if (column < maxColumn || lineNumber === lineCount) {\n column = maxColumn;\n }\n else {\n lineNumber++;\n nextWordOnLine = WordOperations._findNextWordOnLine(wordSeparators, model, new Position(lineNumber, 1));\n if (nextWordOnLine) {\n column = nextWordOnLine.start + 1;\n }\n else {\n column = model.getLineMaxColumn(lineNumber);\n }\n }\n }\n }\n return new Range(lineNumber, column, position.lineNumber, position.column);\n }\n static _deleteWordPartRight(model, selection) {\n if (!selection.isEmpty()) {\n return selection;\n }\n const pos = selection.getPosition();\n const toPosition = WordOperations._moveWordPartRight(model, pos);\n return new Range(pos.lineNumber, pos.column, toPosition.lineNumber, toPosition.column);\n }\n static _createWordAtPosition(model, lineNumber, word) {\n const range = new Range(lineNumber, word.start + 1, lineNumber, word.end + 1);\n return {\n word: model.getValueInRange(range),\n startColumn: range.startColumn,\n endColumn: range.endColumn\n };\n }\n static getWordAtPosition(model, _wordSeparators, _intlSegmenterLocales, position) {\n const wordSeparators = getMapForWordSeparators(_wordSeparators, _intlSegmenterLocales);\n const prevWord = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start <= position.column - 1 && position.column - 1 <= prevWord.end) {\n return WordOperations._createWordAtPosition(model, position.lineNumber, prevWord);\n }\n const nextWord = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start <= position.column - 1 && position.column - 1 <= nextWord.end) {\n return WordOperations._createWordAtPosition(model, position.lineNumber, nextWord);\n }\n return null;\n }\n static word(config, model, cursor, inSelectionMode, position) {\n const wordSeparators = getMapForWordSeparators(config.wordSeparators, config.wordSegmenterLocales);\n const prevWord = WordOperations._findPreviousWordOnLine(wordSeparators, model, position);\n const nextWord = WordOperations._findNextWordOnLine(wordSeparators, model, position);\n if (!inSelectionMode) {\n // Entering word selection for the first time\n let startColumn;\n let endColumn;\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start <= position.column - 1 && position.column - 1 <= prevWord.end) {\n // isTouchingPrevWord\n startColumn = prevWord.start + 1;\n endColumn = prevWord.end + 1;\n }\n else if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start <= position.column - 1 && position.column - 1 <= nextWord.end) {\n // isTouchingNextWord\n startColumn = nextWord.start + 1;\n endColumn = nextWord.end + 1;\n }\n else {\n if (prevWord) {\n startColumn = prevWord.end + 1;\n }\n else {\n startColumn = 1;\n }\n if (nextWord) {\n endColumn = nextWord.start + 1;\n }\n else {\n endColumn = model.getLineMaxColumn(position.lineNumber);\n }\n }\n return new SingleCursorState(new Range(position.lineNumber, startColumn, position.lineNumber, endColumn), 1 /* SelectionStartKind.Word */, 0, new Position(position.lineNumber, endColumn), 0);\n }\n let startColumn;\n let endColumn;\n if (prevWord && prevWord.wordType === 1 /* WordType.Regular */ && prevWord.start < position.column - 1 && position.column - 1 < prevWord.end) {\n // isInsidePrevWord\n startColumn = prevWord.start + 1;\n endColumn = prevWord.end + 1;\n }\n else if (nextWord && nextWord.wordType === 1 /* WordType.Regular */ && nextWord.start < position.column - 1 && position.column - 1 < nextWord.end) {\n // isInsideNextWord\n startColumn = nextWord.start + 1;\n endColumn = nextWord.end + 1;\n }\n else {\n startColumn = position.column;\n endColumn = position.column;\n }\n const lineNumber = position.lineNumber;\n let column;\n if (cursor.selectionStart.containsPosition(position)) {\n column = cursor.selectionStart.endColumn;\n }\n else if (position.isBeforeOrEqual(cursor.selectionStart.getStartPosition())) {\n column = startColumn;\n const possiblePosition = new Position(lineNumber, column);\n if (cursor.selectionStart.containsPosition(possiblePosition)) {\n column = cursor.selectionStart.endColumn;\n }\n }\n else {\n column = endColumn;\n const possiblePosition = new Position(lineNumber, column);\n if (cursor.selectionStart.containsPosition(possiblePosition)) {\n column = cursor.selectionStart.startColumn;\n }\n }\n return cursor.move(true, lineNumber, column, 0);\n }\n}\nexport class WordPartOperations extends WordOperations {\n static deleteWordPartLeft(ctx) {\n const candidates = enforceDefined([\n WordOperations.deleteWordLeft(ctx, 0 /* WordNavigationType.WordStart */),\n WordOperations.deleteWordLeft(ctx, 2 /* WordNavigationType.WordEnd */),\n WordOperations._deleteWordPartLeft(ctx.model, ctx.selection)\n ]);\n candidates.sort(Range.compareRangesUsingEnds);\n return candidates[2];\n }\n static deleteWordPartRight(ctx) {\n const candidates = enforceDefined([\n WordOperations.deleteWordRight(ctx, 0 /* WordNavigationType.WordStart */),\n WordOperations.deleteWordRight(ctx, 2 /* WordNavigationType.WordEnd */),\n WordOperations._deleteWordPartRight(ctx.model, ctx.selection)\n ]);\n candidates.sort(Range.compareRangesUsingStarts);\n return candidates[0];\n }\n static moveWordPartLeft(wordSeparators, model, position, hasMulticursor) {\n const candidates = enforceDefined([\n WordOperations.moveWordLeft(wordSeparators, model, position, 0 /* WordNavigationType.WordStart */, hasMulticursor),\n WordOperations.moveWordLeft(wordSeparators, model, position, 2 /* WordNavigationType.WordEnd */, hasMulticursor),\n WordOperations._moveWordPartLeft(model, position)\n ]);\n candidates.sort(Position.compare);\n return candidates[2];\n }\n static moveWordPartRight(wordSeparators, model, position) {\n const candidates = enforceDefined([\n WordOperations.moveWordRight(wordSeparators, model, position, 0 /* WordNavigationType.WordStart */),\n WordOperations.moveWordRight(wordSeparators, model, position, 2 /* WordNavigationType.WordEnd */),\n WordOperations._moveWordPartRight(model, position)\n ]);\n candidates.sort(Position.compare);\n return candidates[0];\n }\n}\nfunction enforceDefined(arr) {\n return arr.filter(el => Boolean(el));\n}\n"],"names":["strings.isLowerAsciiLetter","strings.isAsciiDigit","strings.isUpperAsciiLetter","strings.lastNonWhitespaceIndex","position","startColumn","endColumn"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,8 +1,12 @@
1
1
  const editorFeatures = [];
2
+ function registerEditorFeature(ctor) {
3
+ editorFeatures.push(ctor);
4
+ }
2
5
  function getEditorFeatures() {
3
6
  return editorFeatures.slice(0);
4
7
  }
5
8
  export {
6
- getEditorFeatures
9
+ getEditorFeatures,
10
+ registerEditorFeature
7
11
  };
8
12
  //# sourceMappingURL=editorFeatures.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"editorFeatures.es.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst editorFeatures = [];\n/**\n * Registers an editor feature. Editor features will be instantiated only once, as soon as\n * the first code editor is instantiated.\n */\nexport function registerEditorFeature(ctor) {\n editorFeatures.push(ctor);\n}\nexport function getEditorFeatures() {\n return editorFeatures.slice(0);\n}\n"],"names":[],"mappings":"AAIA,MAAM,iBAAiB,CAAE;AAQlB,SAAS,oBAAoB;AAChC,SAAO,eAAe,MAAM,CAAC;AACjC;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"editorFeatures.es.js","sources":["../../../../../../../../../../../../node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/editorFeatures.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nconst editorFeatures = [];\n/**\n * Registers an editor feature. Editor features will be instantiated only once, as soon as\n * the first code editor is instantiated.\n */\nexport function registerEditorFeature(ctor) {\n editorFeatures.push(ctor);\n}\nexport function getEditorFeatures() {\n return editorFeatures.slice(0);\n}\n"],"names":[],"mappings":"AAIA,MAAM,iBAAiB,CAAE;AAKlB,SAAS,sBAAsB,MAAM;AACxC,iBAAe,KAAK,IAAI;AAC5B;AACO,SAAS,oBAAoB;AAChC,SAAO,eAAe,MAAM,CAAC;AACjC;","x_google_ignoreList":[0]}
@@ -138,6 +138,68 @@ function getInheritIndentForLine(autoIndent, model, lineNumber, honorIntentialIn
138
138
  }
139
139
  }
140
140
  }
141
+ function getGoodIndentForLine(autoIndent, virtualModel, languageId, lineNumber, indentConverter, languageConfigurationService) {
142
+ if (autoIndent < 4) {
143
+ return null;
144
+ }
145
+ const richEditSupport = languageConfigurationService.getLanguageConfiguration(languageId);
146
+ if (!richEditSupport) {
147
+ return null;
148
+ }
149
+ const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(languageId).indentRulesSupport;
150
+ if (!indentRulesSupport) {
151
+ return null;
152
+ }
153
+ const processedIndentRulesSupport = new ProcessedIndentRulesSupport(virtualModel, indentRulesSupport, languageConfigurationService);
154
+ const indent = getInheritIndentForLine(autoIndent, virtualModel, lineNumber, void 0, languageConfigurationService);
155
+ if (indent) {
156
+ const inheritLine = indent.line;
157
+ if (inheritLine !== void 0) {
158
+ let shouldApplyEnterRules = true;
159
+ for (let inBetweenLine = inheritLine; inBetweenLine < lineNumber - 1; inBetweenLine++) {
160
+ if (!/^\s*$/.test(virtualModel.getLineContent(inBetweenLine))) {
161
+ shouldApplyEnterRules = false;
162
+ break;
163
+ }
164
+ }
165
+ if (shouldApplyEnterRules) {
166
+ const enterResult = richEditSupport.onEnter(autoIndent, "", virtualModel.getLineContent(inheritLine), "");
167
+ if (enterResult) {
168
+ let indentation = getLeadingWhitespace(virtualModel.getLineContent(inheritLine));
169
+ if (enterResult.removeText) {
170
+ indentation = indentation.substring(0, indentation.length - enterResult.removeText);
171
+ }
172
+ if (enterResult.indentAction === IndentAction.Indent || enterResult.indentAction === IndentAction.IndentOutdent) {
173
+ indentation = indentConverter.shiftIndent(indentation);
174
+ } else if (enterResult.indentAction === IndentAction.Outdent) {
175
+ indentation = indentConverter.unshiftIndent(indentation);
176
+ }
177
+ if (processedIndentRulesSupport.shouldDecrease(lineNumber)) {
178
+ indentation = indentConverter.unshiftIndent(indentation);
179
+ }
180
+ if (enterResult.appendText) {
181
+ indentation += enterResult.appendText;
182
+ }
183
+ return getLeadingWhitespace(indentation);
184
+ }
185
+ }
186
+ }
187
+ if (processedIndentRulesSupport.shouldDecrease(lineNumber)) {
188
+ if (indent.action === IndentAction.Indent) {
189
+ return indent.indentation;
190
+ } else {
191
+ return indentConverter.unshiftIndent(indent.indentation);
192
+ }
193
+ } else {
194
+ if (indent.action === IndentAction.Indent) {
195
+ return indentConverter.shiftIndent(indent.indentation);
196
+ } else {
197
+ return indent.indentation;
198
+ }
199
+ }
200
+ }
201
+ return null;
202
+ }
141
203
  function getIndentForEnter(autoIndent, model, range, indentConverter, languageConfigurationService) {
142
204
  if (autoIndent < 4) {
143
205
  return null;
@@ -231,6 +293,16 @@ function getIndentActionForType(cursorConfig, model, range, ch, indentConverter,
231
293
  }
232
294
  return null;
233
295
  }
296
+ function getIndentMetadata(model, lineNumber, languageConfigurationService) {
297
+ const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(model.getLanguageId()).indentRulesSupport;
298
+ if (!indentRulesSupport) {
299
+ return null;
300
+ }
301
+ if (lineNumber < 1 || lineNumber > model.getLineCount()) {
302
+ return null;
303
+ }
304
+ return indentRulesSupport.getIndentMetadata(model.getLineContent(lineNumber));
305
+ }
234
306
  function createVirtualModelWithModifiedTokensAtLine(model, modifiedLineNumber, modifiedTokens) {
235
307
  const virtualModel = {
236
308
  tokenization: {
@@ -259,8 +331,10 @@ function createVirtualModelWithModifiedTokensAtLine(model, modifiedLineNumber, m
259
331
  return virtualModel;
260
332
  }
261
333
  export {
334
+ getGoodIndentForLine,
262
335
  getIndentActionForType,
263
336
  getIndentForEnter,
337
+ getIndentMetadata,
264
338
  getInheritIndentForLine
265
339
  };
266
340
  //# sourceMappingURL=autoIndent.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"autoIndent.es.js","sources":["../../../../../../../../../../../../../node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport * as strings from '../../../base/common/strings.js';\nimport { IndentAction } from './languageConfiguration.js';\nimport { IndentationContextProcessor, isLanguageDifferentFromLineStart, ProcessedIndentRulesSupport } from './supports/indentationLineProcessor.js';\n/**\n * Get nearest preceding line which doesn't match unIndentPattern or contains all whitespace.\n * Result:\n * -1: run into the boundary of embedded languages\n * 0: every line above are invalid\n * else: nearest preceding line of the same language\n */\nfunction getPrecedingValidLine(model, lineNumber, processedIndentRulesSupport) {\n const languageId = model.tokenization.getLanguageIdAtPosition(lineNumber, 0);\n if (lineNumber > 1) {\n let lastLineNumber;\n let resultLineNumber = -1;\n for (lastLineNumber = lineNumber - 1; lastLineNumber >= 1; lastLineNumber--) {\n if (model.tokenization.getLanguageIdAtPosition(lastLineNumber, 0) !== languageId) {\n return resultLineNumber;\n }\n const text = model.getLineContent(lastLineNumber);\n if (processedIndentRulesSupport.shouldIgnore(lastLineNumber) || /^\\s+$/.test(text) || text === '') {\n resultLineNumber = lastLineNumber;\n continue;\n }\n return lastLineNumber;\n }\n }\n return -1;\n}\n/**\n * Get inherited indentation from above lines.\n * 1. Find the nearest preceding line which doesn't match unIndentedLinePattern.\n * 2. If this line matches indentNextLinePattern or increaseIndentPattern, it means that the indent level of `lineNumber` should be 1 greater than this line.\n * 3. If this line doesn't match any indent rules\n * a. check whether the line above it matches indentNextLinePattern\n * b. If not, the indent level of this line is the result\n * c. If so, it means the indent of this line is *temporary*, go upward utill we find a line whose indent is not temporary (the same workflow a -> b -> c).\n * 4. Otherwise, we fail to get an inherited indent from aboves. Return null and we should not touch the indent of `lineNumber`\n *\n * This function only return the inherited indent based on above lines, it doesn't check whether current line should decrease or not.\n */\nexport function getInheritIndentForLine(autoIndent, model, lineNumber, honorIntentialIndent = true, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(model.tokenization.getLanguageId()).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const processedIndentRulesSupport = new ProcessedIndentRulesSupport(model, indentRulesSupport, languageConfigurationService);\n if (lineNumber <= 1) {\n return {\n indentation: '',\n action: null\n };\n }\n // Use no indent if this is the first non-blank line\n for (let priorLineNumber = lineNumber - 1; priorLineNumber > 0; priorLineNumber--) {\n if (model.getLineContent(priorLineNumber) !== '') {\n break;\n }\n if (priorLineNumber === 1) {\n return {\n indentation: '',\n action: null\n };\n }\n }\n const precedingUnIgnoredLine = getPrecedingValidLine(model, lineNumber, processedIndentRulesSupport);\n if (precedingUnIgnoredLine < 0) {\n return null;\n }\n else if (precedingUnIgnoredLine < 1) {\n return {\n indentation: '',\n action: null\n };\n }\n if (processedIndentRulesSupport.shouldIncrease(precedingUnIgnoredLine) || processedIndentRulesSupport.shouldIndentNextLine(precedingUnIgnoredLine)) {\n const precedingUnIgnoredLineContent = model.getLineContent(precedingUnIgnoredLine);\n return {\n indentation: strings.getLeadingWhitespace(precedingUnIgnoredLineContent),\n action: IndentAction.Indent,\n line: precedingUnIgnoredLine\n };\n }\n else if (processedIndentRulesSupport.shouldDecrease(precedingUnIgnoredLine)) {\n const precedingUnIgnoredLineContent = model.getLineContent(precedingUnIgnoredLine);\n return {\n indentation: strings.getLeadingWhitespace(precedingUnIgnoredLineContent),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n else {\n // precedingUnIgnoredLine can not be ignored.\n // it doesn't increase indent of following lines\n // it doesn't increase just next line\n // so current line is not affect by precedingUnIgnoredLine\n // and then we should get a correct inheritted indentation from above lines\n if (precedingUnIgnoredLine === 1) {\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(precedingUnIgnoredLine)),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n const previousLine = precedingUnIgnoredLine - 1;\n const previousLineIndentMetadata = indentRulesSupport.getIndentMetadata(model.getLineContent(previousLine));\n if (!(previousLineIndentMetadata & (1 /* IndentConsts.INCREASE_MASK */ | 2 /* IndentConsts.DECREASE_MASK */)) &&\n (previousLineIndentMetadata & 4 /* IndentConsts.INDENT_NEXTLINE_MASK */)) {\n let stopLine = 0;\n for (let i = previousLine - 1; i > 0; i--) {\n if (processedIndentRulesSupport.shouldIndentNextLine(i)) {\n continue;\n }\n stopLine = i;\n break;\n }\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(stopLine + 1)),\n action: null,\n line: stopLine + 1\n };\n }\n if (honorIntentialIndent) {\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(precedingUnIgnoredLine)),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n else {\n // search from precedingUnIgnoredLine until we find one whose indent is not temporary\n for (let i = precedingUnIgnoredLine; i > 0; i--) {\n if (processedIndentRulesSupport.shouldIncrease(i)) {\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(i)),\n action: IndentAction.Indent,\n line: i\n };\n }\n else if (processedIndentRulesSupport.shouldIndentNextLine(i)) {\n let stopLine = 0;\n for (let j = i - 1; j > 0; j--) {\n if (processedIndentRulesSupport.shouldIndentNextLine(i)) {\n continue;\n }\n stopLine = j;\n break;\n }\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(stopLine + 1)),\n action: null,\n line: stopLine + 1\n };\n }\n else if (processedIndentRulesSupport.shouldDecrease(i)) {\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(i)),\n action: null,\n line: i\n };\n }\n }\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(1)),\n action: null,\n line: 1\n };\n }\n }\n}\nexport function getGoodIndentForLine(autoIndent, virtualModel, languageId, lineNumber, indentConverter, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const richEditSupport = languageConfigurationService.getLanguageConfiguration(languageId);\n if (!richEditSupport) {\n return null;\n }\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const processedIndentRulesSupport = new ProcessedIndentRulesSupport(virtualModel, indentRulesSupport, languageConfigurationService);\n const indent = getInheritIndentForLine(autoIndent, virtualModel, lineNumber, undefined, languageConfigurationService);\n if (indent) {\n const inheritLine = indent.line;\n if (inheritLine !== undefined) {\n // Apply enter action as long as there are only whitespace lines between inherited line and this line.\n let shouldApplyEnterRules = true;\n for (let inBetweenLine = inheritLine; inBetweenLine < lineNumber - 1; inBetweenLine++) {\n if (!/^\\s*$/.test(virtualModel.getLineContent(inBetweenLine))) {\n shouldApplyEnterRules = false;\n break;\n }\n }\n if (shouldApplyEnterRules) {\n const enterResult = richEditSupport.onEnter(autoIndent, '', virtualModel.getLineContent(inheritLine), '');\n if (enterResult) {\n let indentation = strings.getLeadingWhitespace(virtualModel.getLineContent(inheritLine));\n if (enterResult.removeText) {\n indentation = indentation.substring(0, indentation.length - enterResult.removeText);\n }\n if ((enterResult.indentAction === IndentAction.Indent) ||\n (enterResult.indentAction === IndentAction.IndentOutdent)) {\n indentation = indentConverter.shiftIndent(indentation);\n }\n else if (enterResult.indentAction === IndentAction.Outdent) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n if (processedIndentRulesSupport.shouldDecrease(lineNumber)) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n if (enterResult.appendText) {\n indentation += enterResult.appendText;\n }\n return strings.getLeadingWhitespace(indentation);\n }\n }\n }\n if (processedIndentRulesSupport.shouldDecrease(lineNumber)) {\n if (indent.action === IndentAction.Indent) {\n return indent.indentation;\n }\n else {\n return indentConverter.unshiftIndent(indent.indentation);\n }\n }\n else {\n if (indent.action === IndentAction.Indent) {\n return indentConverter.shiftIndent(indent.indentation);\n }\n else {\n return indent.indentation;\n }\n }\n }\n return null;\n}\nexport function getIndentForEnter(autoIndent, model, range, indentConverter, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const languageId = model.getLanguageIdAtPosition(range.startLineNumber, range.startColumn);\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n model.tokenization.forceTokenization(range.startLineNumber);\n const indentationContextProcessor = new IndentationContextProcessor(model, languageConfigurationService);\n const processedContextTokens = indentationContextProcessor.getProcessedTokenContextAroundRange(range);\n const afterEnterProcessedTokens = processedContextTokens.afterRangeProcessedTokens;\n const beforeEnterProcessedTokens = processedContextTokens.beforeRangeProcessedTokens;\n const beforeEnterIndent = strings.getLeadingWhitespace(beforeEnterProcessedTokens.getLineContent());\n const virtualModel = createVirtualModelWithModifiedTokensAtLine(model, range.startLineNumber, beforeEnterProcessedTokens);\n const languageIsDifferentFromLineStart = isLanguageDifferentFromLineStart(model, range.getStartPosition());\n const currentLine = model.getLineContent(range.startLineNumber);\n const currentLineIndent = strings.getLeadingWhitespace(currentLine);\n const afterEnterAction = getInheritIndentForLine(autoIndent, virtualModel, range.startLineNumber + 1, undefined, languageConfigurationService);\n if (!afterEnterAction) {\n const beforeEnter = languageIsDifferentFromLineStart ? currentLineIndent : beforeEnterIndent;\n return {\n beforeEnter: beforeEnter,\n afterEnter: beforeEnter\n };\n }\n let afterEnterIndent = languageIsDifferentFromLineStart ? currentLineIndent : afterEnterAction.indentation;\n if (afterEnterAction.action === IndentAction.Indent) {\n afterEnterIndent = indentConverter.shiftIndent(afterEnterIndent);\n }\n if (indentRulesSupport.shouldDecrease(afterEnterProcessedTokens.getLineContent())) {\n afterEnterIndent = indentConverter.unshiftIndent(afterEnterIndent);\n }\n return {\n beforeEnter: languageIsDifferentFromLineStart ? currentLineIndent : beforeEnterIndent,\n afterEnter: afterEnterIndent\n };\n}\n/**\n * We should always allow intentional indentation. It means, if users change the indentation of `lineNumber` and the content of\n * this line doesn't match decreaseIndentPattern, we should not adjust the indentation.\n */\nexport function getIndentActionForType(cursorConfig, model, range, ch, indentConverter, languageConfigurationService) {\n const autoIndent = cursorConfig.autoIndent;\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const languageIsDifferentFromLineStart = isLanguageDifferentFromLineStart(model, range.getStartPosition());\n if (languageIsDifferentFromLineStart) {\n // this line has mixed languages and indentation rules will not work\n return null;\n }\n const languageId = model.getLanguageIdAtPosition(range.startLineNumber, range.startColumn);\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const indentationContextProcessor = new IndentationContextProcessor(model, languageConfigurationService);\n const processedContextTokens = indentationContextProcessor.getProcessedTokenContextAroundRange(range);\n const beforeRangeText = processedContextTokens.beforeRangeProcessedTokens.getLineContent();\n const afterRangeText = processedContextTokens.afterRangeProcessedTokens.getLineContent();\n const textAroundRange = beforeRangeText + afterRangeText;\n const textAroundRangeWithCharacter = beforeRangeText + ch + afterRangeText;\n // If previous content already matches decreaseIndentPattern, it means indentation of this line should already be adjusted\n // Users might change the indentation by purpose and we should honor that instead of readjusting.\n if (!indentRulesSupport.shouldDecrease(textAroundRange) && indentRulesSupport.shouldDecrease(textAroundRangeWithCharacter)) {\n // after typing `ch`, the content matches decreaseIndentPattern, we should adjust the indent to a good manner.\n // 1. Get inherited indent action\n const r = getInheritIndentForLine(autoIndent, model, range.startLineNumber, false, languageConfigurationService);\n if (!r) {\n return null;\n }\n let indentation = r.indentation;\n if (r.action !== IndentAction.Indent) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n return indentation;\n }\n const previousLineNumber = range.startLineNumber - 1;\n if (previousLineNumber > 0) {\n const previousLine = model.getLineContent(previousLineNumber);\n if (indentRulesSupport.shouldIndentNextLine(previousLine) && indentRulesSupport.shouldIncrease(textAroundRangeWithCharacter)) {\n const inheritedIndentationData = getInheritIndentForLine(autoIndent, model, range.startLineNumber, false, languageConfigurationService);\n const inheritedIndentation = inheritedIndentationData?.indentation;\n if (inheritedIndentation !== undefined) {\n const currentLine = model.getLineContent(range.startLineNumber);\n const actualCurrentIndentation = strings.getLeadingWhitespace(currentLine);\n const inferredCurrentIndentation = indentConverter.shiftIndent(inheritedIndentation);\n // If the inferred current indentation is not equal to the actual current indentation, then the indentation has been intentionally changed, in that case keep it\n const inferredIndentationEqualsActual = inferredCurrentIndentation === actualCurrentIndentation;\n const textAroundRangeContainsOnlyWhitespace = /^\\s*$/.test(textAroundRange);\n const autoClosingPairs = cursorConfig.autoClosingPairs.autoClosingPairsOpenByEnd.get(ch);\n const autoClosingPairExists = autoClosingPairs && autoClosingPairs.length > 0;\n const isChFirstNonWhitespaceCharacterAndInAutoClosingPair = autoClosingPairExists && textAroundRangeContainsOnlyWhitespace;\n if (inferredIndentationEqualsActual && isChFirstNonWhitespaceCharacterAndInAutoClosingPair) {\n return inheritedIndentation;\n }\n }\n }\n }\n return null;\n}\nexport function getIndentMetadata(model, lineNumber, languageConfigurationService) {\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(model.getLanguageId()).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n if (lineNumber < 1 || lineNumber > model.getLineCount()) {\n return null;\n }\n return indentRulesSupport.getIndentMetadata(model.getLineContent(lineNumber));\n}\nfunction createVirtualModelWithModifiedTokensAtLine(model, modifiedLineNumber, modifiedTokens) {\n const virtualModel = {\n tokenization: {\n getLineTokens: (lineNumber) => {\n if (lineNumber === modifiedLineNumber) {\n return modifiedTokens;\n }\n else {\n return model.tokenization.getLineTokens(lineNumber);\n }\n },\n getLanguageId: () => {\n return model.getLanguageId();\n },\n getLanguageIdAtPosition: (lineNumber, column) => {\n return model.getLanguageIdAtPosition(lineNumber, column);\n },\n },\n getLineContent: (lineNumber) => {\n if (lineNumber === modifiedLineNumber) {\n return modifiedTokens.getLineContent();\n }\n else {\n return model.getLineContent(lineNumber);\n }\n }\n };\n return virtualModel;\n}\n"],"names":["strings.getLeadingWhitespace"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"autoIndent.es.js","sources":["../../../../../../../../../../../../../node_modules/.pnpm/monaco-editor@0.52.2/node_modules/monaco-editor/esm/vs/editor/common/languages/autoIndent.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport * as strings from '../../../base/common/strings.js';\nimport { IndentAction } from './languageConfiguration.js';\nimport { IndentationContextProcessor, isLanguageDifferentFromLineStart, ProcessedIndentRulesSupport } from './supports/indentationLineProcessor.js';\n/**\n * Get nearest preceding line which doesn't match unIndentPattern or contains all whitespace.\n * Result:\n * -1: run into the boundary of embedded languages\n * 0: every line above are invalid\n * else: nearest preceding line of the same language\n */\nfunction getPrecedingValidLine(model, lineNumber, processedIndentRulesSupport) {\n const languageId = model.tokenization.getLanguageIdAtPosition(lineNumber, 0);\n if (lineNumber > 1) {\n let lastLineNumber;\n let resultLineNumber = -1;\n for (lastLineNumber = lineNumber - 1; lastLineNumber >= 1; lastLineNumber--) {\n if (model.tokenization.getLanguageIdAtPosition(lastLineNumber, 0) !== languageId) {\n return resultLineNumber;\n }\n const text = model.getLineContent(lastLineNumber);\n if (processedIndentRulesSupport.shouldIgnore(lastLineNumber) || /^\\s+$/.test(text) || text === '') {\n resultLineNumber = lastLineNumber;\n continue;\n }\n return lastLineNumber;\n }\n }\n return -1;\n}\n/**\n * Get inherited indentation from above lines.\n * 1. Find the nearest preceding line which doesn't match unIndentedLinePattern.\n * 2. If this line matches indentNextLinePattern or increaseIndentPattern, it means that the indent level of `lineNumber` should be 1 greater than this line.\n * 3. If this line doesn't match any indent rules\n * a. check whether the line above it matches indentNextLinePattern\n * b. If not, the indent level of this line is the result\n * c. If so, it means the indent of this line is *temporary*, go upward utill we find a line whose indent is not temporary (the same workflow a -> b -> c).\n * 4. Otherwise, we fail to get an inherited indent from aboves. Return null and we should not touch the indent of `lineNumber`\n *\n * This function only return the inherited indent based on above lines, it doesn't check whether current line should decrease or not.\n */\nexport function getInheritIndentForLine(autoIndent, model, lineNumber, honorIntentialIndent = true, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(model.tokenization.getLanguageId()).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const processedIndentRulesSupport = new ProcessedIndentRulesSupport(model, indentRulesSupport, languageConfigurationService);\n if (lineNumber <= 1) {\n return {\n indentation: '',\n action: null\n };\n }\n // Use no indent if this is the first non-blank line\n for (let priorLineNumber = lineNumber - 1; priorLineNumber > 0; priorLineNumber--) {\n if (model.getLineContent(priorLineNumber) !== '') {\n break;\n }\n if (priorLineNumber === 1) {\n return {\n indentation: '',\n action: null\n };\n }\n }\n const precedingUnIgnoredLine = getPrecedingValidLine(model, lineNumber, processedIndentRulesSupport);\n if (precedingUnIgnoredLine < 0) {\n return null;\n }\n else if (precedingUnIgnoredLine < 1) {\n return {\n indentation: '',\n action: null\n };\n }\n if (processedIndentRulesSupport.shouldIncrease(precedingUnIgnoredLine) || processedIndentRulesSupport.shouldIndentNextLine(precedingUnIgnoredLine)) {\n const precedingUnIgnoredLineContent = model.getLineContent(precedingUnIgnoredLine);\n return {\n indentation: strings.getLeadingWhitespace(precedingUnIgnoredLineContent),\n action: IndentAction.Indent,\n line: precedingUnIgnoredLine\n };\n }\n else if (processedIndentRulesSupport.shouldDecrease(precedingUnIgnoredLine)) {\n const precedingUnIgnoredLineContent = model.getLineContent(precedingUnIgnoredLine);\n return {\n indentation: strings.getLeadingWhitespace(precedingUnIgnoredLineContent),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n else {\n // precedingUnIgnoredLine can not be ignored.\n // it doesn't increase indent of following lines\n // it doesn't increase just next line\n // so current line is not affect by precedingUnIgnoredLine\n // and then we should get a correct inheritted indentation from above lines\n if (precedingUnIgnoredLine === 1) {\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(precedingUnIgnoredLine)),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n const previousLine = precedingUnIgnoredLine - 1;\n const previousLineIndentMetadata = indentRulesSupport.getIndentMetadata(model.getLineContent(previousLine));\n if (!(previousLineIndentMetadata & (1 /* IndentConsts.INCREASE_MASK */ | 2 /* IndentConsts.DECREASE_MASK */)) &&\n (previousLineIndentMetadata & 4 /* IndentConsts.INDENT_NEXTLINE_MASK */)) {\n let stopLine = 0;\n for (let i = previousLine - 1; i > 0; i--) {\n if (processedIndentRulesSupport.shouldIndentNextLine(i)) {\n continue;\n }\n stopLine = i;\n break;\n }\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(stopLine + 1)),\n action: null,\n line: stopLine + 1\n };\n }\n if (honorIntentialIndent) {\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(precedingUnIgnoredLine)),\n action: null,\n line: precedingUnIgnoredLine\n };\n }\n else {\n // search from precedingUnIgnoredLine until we find one whose indent is not temporary\n for (let i = precedingUnIgnoredLine; i > 0; i--) {\n if (processedIndentRulesSupport.shouldIncrease(i)) {\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(i)),\n action: IndentAction.Indent,\n line: i\n };\n }\n else if (processedIndentRulesSupport.shouldIndentNextLine(i)) {\n let stopLine = 0;\n for (let j = i - 1; j > 0; j--) {\n if (processedIndentRulesSupport.shouldIndentNextLine(i)) {\n continue;\n }\n stopLine = j;\n break;\n }\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(stopLine + 1)),\n action: null,\n line: stopLine + 1\n };\n }\n else if (processedIndentRulesSupport.shouldDecrease(i)) {\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(i)),\n action: null,\n line: i\n };\n }\n }\n return {\n indentation: strings.getLeadingWhitespace(model.getLineContent(1)),\n action: null,\n line: 1\n };\n }\n }\n}\nexport function getGoodIndentForLine(autoIndent, virtualModel, languageId, lineNumber, indentConverter, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const richEditSupport = languageConfigurationService.getLanguageConfiguration(languageId);\n if (!richEditSupport) {\n return null;\n }\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const processedIndentRulesSupport = new ProcessedIndentRulesSupport(virtualModel, indentRulesSupport, languageConfigurationService);\n const indent = getInheritIndentForLine(autoIndent, virtualModel, lineNumber, undefined, languageConfigurationService);\n if (indent) {\n const inheritLine = indent.line;\n if (inheritLine !== undefined) {\n // Apply enter action as long as there are only whitespace lines between inherited line and this line.\n let shouldApplyEnterRules = true;\n for (let inBetweenLine = inheritLine; inBetweenLine < lineNumber - 1; inBetweenLine++) {\n if (!/^\\s*$/.test(virtualModel.getLineContent(inBetweenLine))) {\n shouldApplyEnterRules = false;\n break;\n }\n }\n if (shouldApplyEnterRules) {\n const enterResult = richEditSupport.onEnter(autoIndent, '', virtualModel.getLineContent(inheritLine), '');\n if (enterResult) {\n let indentation = strings.getLeadingWhitespace(virtualModel.getLineContent(inheritLine));\n if (enterResult.removeText) {\n indentation = indentation.substring(0, indentation.length - enterResult.removeText);\n }\n if ((enterResult.indentAction === IndentAction.Indent) ||\n (enterResult.indentAction === IndentAction.IndentOutdent)) {\n indentation = indentConverter.shiftIndent(indentation);\n }\n else if (enterResult.indentAction === IndentAction.Outdent) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n if (processedIndentRulesSupport.shouldDecrease(lineNumber)) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n if (enterResult.appendText) {\n indentation += enterResult.appendText;\n }\n return strings.getLeadingWhitespace(indentation);\n }\n }\n }\n if (processedIndentRulesSupport.shouldDecrease(lineNumber)) {\n if (indent.action === IndentAction.Indent) {\n return indent.indentation;\n }\n else {\n return indentConverter.unshiftIndent(indent.indentation);\n }\n }\n else {\n if (indent.action === IndentAction.Indent) {\n return indentConverter.shiftIndent(indent.indentation);\n }\n else {\n return indent.indentation;\n }\n }\n }\n return null;\n}\nexport function getIndentForEnter(autoIndent, model, range, indentConverter, languageConfigurationService) {\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const languageId = model.getLanguageIdAtPosition(range.startLineNumber, range.startColumn);\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n model.tokenization.forceTokenization(range.startLineNumber);\n const indentationContextProcessor = new IndentationContextProcessor(model, languageConfigurationService);\n const processedContextTokens = indentationContextProcessor.getProcessedTokenContextAroundRange(range);\n const afterEnterProcessedTokens = processedContextTokens.afterRangeProcessedTokens;\n const beforeEnterProcessedTokens = processedContextTokens.beforeRangeProcessedTokens;\n const beforeEnterIndent = strings.getLeadingWhitespace(beforeEnterProcessedTokens.getLineContent());\n const virtualModel = createVirtualModelWithModifiedTokensAtLine(model, range.startLineNumber, beforeEnterProcessedTokens);\n const languageIsDifferentFromLineStart = isLanguageDifferentFromLineStart(model, range.getStartPosition());\n const currentLine = model.getLineContent(range.startLineNumber);\n const currentLineIndent = strings.getLeadingWhitespace(currentLine);\n const afterEnterAction = getInheritIndentForLine(autoIndent, virtualModel, range.startLineNumber + 1, undefined, languageConfigurationService);\n if (!afterEnterAction) {\n const beforeEnter = languageIsDifferentFromLineStart ? currentLineIndent : beforeEnterIndent;\n return {\n beforeEnter: beforeEnter,\n afterEnter: beforeEnter\n };\n }\n let afterEnterIndent = languageIsDifferentFromLineStart ? currentLineIndent : afterEnterAction.indentation;\n if (afterEnterAction.action === IndentAction.Indent) {\n afterEnterIndent = indentConverter.shiftIndent(afterEnterIndent);\n }\n if (indentRulesSupport.shouldDecrease(afterEnterProcessedTokens.getLineContent())) {\n afterEnterIndent = indentConverter.unshiftIndent(afterEnterIndent);\n }\n return {\n beforeEnter: languageIsDifferentFromLineStart ? currentLineIndent : beforeEnterIndent,\n afterEnter: afterEnterIndent\n };\n}\n/**\n * We should always allow intentional indentation. It means, if users change the indentation of `lineNumber` and the content of\n * this line doesn't match decreaseIndentPattern, we should not adjust the indentation.\n */\nexport function getIndentActionForType(cursorConfig, model, range, ch, indentConverter, languageConfigurationService) {\n const autoIndent = cursorConfig.autoIndent;\n if (autoIndent < 4 /* EditorAutoIndentStrategy.Full */) {\n return null;\n }\n const languageIsDifferentFromLineStart = isLanguageDifferentFromLineStart(model, range.getStartPosition());\n if (languageIsDifferentFromLineStart) {\n // this line has mixed languages and indentation rules will not work\n return null;\n }\n const languageId = model.getLanguageIdAtPosition(range.startLineNumber, range.startColumn);\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(languageId).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n const indentationContextProcessor = new IndentationContextProcessor(model, languageConfigurationService);\n const processedContextTokens = indentationContextProcessor.getProcessedTokenContextAroundRange(range);\n const beforeRangeText = processedContextTokens.beforeRangeProcessedTokens.getLineContent();\n const afterRangeText = processedContextTokens.afterRangeProcessedTokens.getLineContent();\n const textAroundRange = beforeRangeText + afterRangeText;\n const textAroundRangeWithCharacter = beforeRangeText + ch + afterRangeText;\n // If previous content already matches decreaseIndentPattern, it means indentation of this line should already be adjusted\n // Users might change the indentation by purpose and we should honor that instead of readjusting.\n if (!indentRulesSupport.shouldDecrease(textAroundRange) && indentRulesSupport.shouldDecrease(textAroundRangeWithCharacter)) {\n // after typing `ch`, the content matches decreaseIndentPattern, we should adjust the indent to a good manner.\n // 1. Get inherited indent action\n const r = getInheritIndentForLine(autoIndent, model, range.startLineNumber, false, languageConfigurationService);\n if (!r) {\n return null;\n }\n let indentation = r.indentation;\n if (r.action !== IndentAction.Indent) {\n indentation = indentConverter.unshiftIndent(indentation);\n }\n return indentation;\n }\n const previousLineNumber = range.startLineNumber - 1;\n if (previousLineNumber > 0) {\n const previousLine = model.getLineContent(previousLineNumber);\n if (indentRulesSupport.shouldIndentNextLine(previousLine) && indentRulesSupport.shouldIncrease(textAroundRangeWithCharacter)) {\n const inheritedIndentationData = getInheritIndentForLine(autoIndent, model, range.startLineNumber, false, languageConfigurationService);\n const inheritedIndentation = inheritedIndentationData?.indentation;\n if (inheritedIndentation !== undefined) {\n const currentLine = model.getLineContent(range.startLineNumber);\n const actualCurrentIndentation = strings.getLeadingWhitespace(currentLine);\n const inferredCurrentIndentation = indentConverter.shiftIndent(inheritedIndentation);\n // If the inferred current indentation is not equal to the actual current indentation, then the indentation has been intentionally changed, in that case keep it\n const inferredIndentationEqualsActual = inferredCurrentIndentation === actualCurrentIndentation;\n const textAroundRangeContainsOnlyWhitespace = /^\\s*$/.test(textAroundRange);\n const autoClosingPairs = cursorConfig.autoClosingPairs.autoClosingPairsOpenByEnd.get(ch);\n const autoClosingPairExists = autoClosingPairs && autoClosingPairs.length > 0;\n const isChFirstNonWhitespaceCharacterAndInAutoClosingPair = autoClosingPairExists && textAroundRangeContainsOnlyWhitespace;\n if (inferredIndentationEqualsActual && isChFirstNonWhitespaceCharacterAndInAutoClosingPair) {\n return inheritedIndentation;\n }\n }\n }\n }\n return null;\n}\nexport function getIndentMetadata(model, lineNumber, languageConfigurationService) {\n const indentRulesSupport = languageConfigurationService.getLanguageConfiguration(model.getLanguageId()).indentRulesSupport;\n if (!indentRulesSupport) {\n return null;\n }\n if (lineNumber < 1 || lineNumber > model.getLineCount()) {\n return null;\n }\n return indentRulesSupport.getIndentMetadata(model.getLineContent(lineNumber));\n}\nfunction createVirtualModelWithModifiedTokensAtLine(model, modifiedLineNumber, modifiedTokens) {\n const virtualModel = {\n tokenization: {\n getLineTokens: (lineNumber) => {\n if (lineNumber === modifiedLineNumber) {\n return modifiedTokens;\n }\n else {\n return model.tokenization.getLineTokens(lineNumber);\n }\n },\n getLanguageId: () => {\n return model.getLanguageId();\n },\n getLanguageIdAtPosition: (lineNumber, column) => {\n return model.getLanguageIdAtPosition(lineNumber, column);\n },\n },\n getLineContent: (lineNumber) => {\n if (lineNumber === modifiedLineNumber) {\n return modifiedTokens.getLineContent();\n }\n else {\n return model.getLineContent(lineNumber);\n }\n }\n };\n return virtualModel;\n}\n"],"names":["strings.getLeadingWhitespace"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,6 +1,5 @@
1
1
  import { Codicon } from "../../base/common/codicons.es.js";
2
- import "../../base/common/path.es.js";
3
- import "../../base/common/platform.es.js";
2
+ import { URI } from "../../base/common/uri.es.js";
4
3
  import { Range } from "./core/range.es.js";
5
4
  import { TokenizationRegistry as TokenizationRegistry$1 } from "./tokenizationRegistry.es.js";
6
5
  import { localize } from "../../nls.es.js";
@@ -268,6 +267,9 @@ var DocumentHighlightKind;
268
267
  DocumentHighlightKind2[DocumentHighlightKind2["Read"] = 1] = "Read";
269
268
  DocumentHighlightKind2[DocumentHighlightKind2["Write"] = 2] = "Write";
270
269
  })(DocumentHighlightKind || (DocumentHighlightKind = {}));
270
+ function isLocationLink(thing) {
271
+ return thing && URI.isUri(thing.uri) && Range.isIRange(thing.range) && (Range.isIRange(thing.originSelectionRange) || Range.isIRange(thing.targetSelectionRange));
272
+ }
271
273
  ({
272
274
  [
273
275
  17
@@ -515,6 +517,7 @@ export {
515
517
  Token,
516
518
  TokenizationRegistry,
517
519
  TokenizationResult,
518
- TreeSitterTokenizationRegistry
520
+ TreeSitterTokenizationRegistry,
521
+ isLocationLink
519
522
  };
520
523
  //# sourceMappingURL=languages.es.js.map