@vscode/chat-lib 0.3.1-2 → 0.3.1-20

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 (465) hide show
  1. package/dist/src/_internal/extension/byok/node/openAIEndpoint.d.ts +1 -6
  2. package/dist/src/_internal/extension/byok/node/openAIEndpoint.d.ts.map +1 -1
  3. package/dist/src/_internal/extension/byok/node/openAIEndpoint.js +9 -20
  4. package/dist/src/_internal/extension/byok/node/openAIEndpoint.js.map +1 -1
  5. package/dist/src/_internal/extension/common/constants.d.ts +0 -1
  6. package/dist/src/_internal/extension/common/constants.d.ts.map +1 -1
  7. package/dist/src/_internal/extension/common/constants.js +2 -1
  8. package/dist/src/_internal/extension/common/constants.js.map +1 -1
  9. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/experiments/defaultExpFilters.d.ts.map +1 -1
  10. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/experiments/defaultExpFilters.js +5 -4
  11. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/experiments/defaultExpFilters.js.map +1 -1
  12. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/ghostText/ghostText.d.ts +4 -4
  13. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/ghostText/ghostText.d.ts.map +1 -1
  14. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/ghostText/ghostText.js +56 -46
  15. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/ghostText/ghostText.js.map +1 -1
  16. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/inlineCompletion.d.ts +3 -1
  17. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/inlineCompletion.d.ts.map +1 -1
  18. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/inlineCompletion.js +5 -5
  19. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/inlineCompletion.js.map +1 -1
  20. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/openai/fetch.d.ts +1 -1
  21. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/openai/fetch.d.ts.map +1 -1
  22. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/openai/fetch.js +215 -125
  23. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/openai/fetch.js.map +1 -1
  24. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/prompt/completionsPromptFactory/componentsCompletionsPromptFactory.d.ts +4 -1
  25. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/prompt/completionsPromptFactory/componentsCompletionsPromptFactory.d.ts.map +1 -1
  26. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/prompt/completionsPromptFactory/componentsCompletionsPromptFactory.js +31 -18
  27. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/prompt/completionsPromptFactory/componentsCompletionsPromptFactory.js.map +1 -1
  28. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/prompt/contextProviders/diagnostics.js +4 -4
  29. package/dist/src/_internal/extension/completions-core/vscode-node/lib/src/prompt/contextProviders/diagnostics.js.map +1 -1
  30. package/dist/src/_internal/extension/inlineEdits/common/editRebase.d.ts +3 -3
  31. package/dist/src/_internal/extension/inlineEdits/common/editRebase.d.ts.map +1 -1
  32. package/dist/src/_internal/extension/inlineEdits/common/editRebase.js +9 -9
  33. package/dist/src/_internal/extension/inlineEdits/common/editRebase.js.map +1 -1
  34. package/dist/src/_internal/extension/inlineEdits/common/rejectionCollector.d.ts +3 -2
  35. package/dist/src/_internal/extension/inlineEdits/common/rejectionCollector.d.ts.map +1 -1
  36. package/dist/src/_internal/extension/inlineEdits/common/rejectionCollector.js +10 -11
  37. package/dist/src/_internal/extension/inlineEdits/common/rejectionCollector.js.map +1 -1
  38. package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.d.ts +52 -8
  39. package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.d.ts.map +1 -1
  40. package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.js +208 -41
  41. package/dist/src/_internal/extension/inlineEdits/common/userInteractionMonitor.js.map +1 -1
  42. package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.d.ts +14 -4
  43. package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.d.ts.map +1 -1
  44. package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.js +53 -39
  45. package/dist/src/_internal/extension/inlineEdits/node/nextEditCache.js.map +1 -1
  46. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts +25 -4
  47. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.d.ts.map +1 -1
  48. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js +473 -171
  49. package/dist/src/_internal/extension/inlineEdits/node/nextEditProvider.js.map +1 -1
  50. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.d.ts +16 -8
  51. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.d.ts.map +1 -1
  52. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.js +53 -27
  53. package/dist/src/_internal/extension/inlineEdits/node/nextEditProviderTelemetry.js.map +1 -1
  54. package/dist/src/_internal/extension/power/common/powerService.d.ts +22 -0
  55. package/dist/src/_internal/extension/power/common/powerService.d.ts.map +1 -0
  56. package/dist/src/_internal/extension/power/common/powerService.js +20 -0
  57. package/dist/src/_internal/extension/power/common/powerService.js.map +1 -0
  58. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts +4 -1
  59. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.d.ts.map +1 -1
  60. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js +55 -16
  61. package/dist/src/_internal/extension/prompt/node/chatMLFetcher.js.map +1 -1
  62. package/dist/src/_internal/extension/xtab/common/inlineSuggestion.d.ts +15 -0
  63. package/dist/src/_internal/extension/xtab/common/inlineSuggestion.d.ts.map +1 -0
  64. package/dist/src/_internal/extension/xtab/common/inlineSuggestion.js +43 -0
  65. package/dist/src/_internal/extension/xtab/common/inlineSuggestion.js.map +1 -0
  66. package/dist/src/_internal/extension/xtab/common/lintErrors.d.ts +4 -4
  67. package/dist/src/_internal/extension/xtab/common/lintErrors.d.ts.map +1 -1
  68. package/dist/src/_internal/extension/xtab/common/lintErrors.js +70 -26
  69. package/dist/src/_internal/extension/xtab/common/lintErrors.js.map +1 -1
  70. package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts +4 -4
  71. package/dist/src/_internal/extension/xtab/common/promptCrafting.d.ts.map +1 -1
  72. package/dist/src/_internal/extension/xtab/common/promptCrafting.js +84 -19
  73. package/dist/src/_internal/extension/xtab/common/promptCrafting.js.map +1 -1
  74. package/dist/src/_internal/extension/xtab/common/terminalOutput.d.ts +20 -0
  75. package/dist/src/_internal/extension/xtab/common/terminalOutput.d.ts.map +1 -0
  76. package/dist/src/_internal/extension/xtab/common/terminalOutput.js +105 -0
  77. package/dist/src/_internal/extension/xtab/common/terminalOutput.js.map +1 -0
  78. package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.d.ts +2 -3
  79. package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.d.ts.map +1 -1
  80. package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.js +2 -1
  81. package/dist/src/_internal/extension/xtab/node/xtabCustomDiffPatchResponseHandler.js.map +1 -1
  82. package/dist/src/_internal/extension/xtab/node/xtabEndpoint.d.ts.map +1 -1
  83. package/dist/src/_internal/extension/xtab/node/xtabEndpoint.js +1 -1
  84. package/dist/src/_internal/extension/xtab/node/xtabEndpoint.js.map +1 -1
  85. package/dist/src/_internal/extension/xtab/node/xtabNextCursorPredictor.d.ts +2 -2
  86. package/dist/src/_internal/extension/xtab/node/xtabNextCursorPredictor.d.ts.map +1 -1
  87. package/dist/src/_internal/extension/xtab/node/xtabNextCursorPredictor.js +50 -4
  88. package/dist/src/_internal/extension/xtab/node/xtabNextCursorPredictor.js.map +1 -1
  89. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts +53 -9
  90. package/dist/src/_internal/extension/xtab/node/xtabProvider.d.ts.map +1 -1
  91. package/dist/src/_internal/extension/xtab/node/xtabProvider.js +380 -166
  92. package/dist/src/_internal/extension/xtab/node/xtabProvider.js.map +1 -1
  93. package/dist/src/_internal/extension/xtab/node/xtabUtils.d.ts +1 -4
  94. package/dist/src/_internal/extension/xtab/node/xtabUtils.d.ts.map +1 -1
  95. package/dist/src/_internal/extension/xtab/node/xtabUtils.js +21 -39
  96. package/dist/src/_internal/extension/xtab/node/xtabUtils.js.map +1 -1
  97. package/dist/src/_internal/platform/authentication/common/copilotToken.d.ts +7 -2
  98. package/dist/src/_internal/platform/authentication/common/copilotToken.d.ts.map +1 -1
  99. package/dist/src/_internal/platform/authentication/common/copilotToken.js +11 -4
  100. package/dist/src/_internal/platform/authentication/common/copilotToken.js.map +1 -1
  101. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.d.ts.map +1 -1
  102. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.js +1 -0
  103. package/dist/src/_internal/platform/authentication/node/copilotTokenManager.js.map +1 -1
  104. package/dist/src/_internal/platform/chat/common/commonTypes.d.ts +2 -2
  105. package/dist/src/_internal/platform/chat/common/commonTypes.d.ts.map +1 -1
  106. package/dist/src/_internal/platform/chat/common/commonTypes.js +8 -8
  107. package/dist/src/_internal/platform/chat/common/commonTypes.js.map +1 -1
  108. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts +51 -9
  109. package/dist/src/_internal/platform/configuration/common/configurationService.d.ts.map +1 -1
  110. package/dist/src/_internal/platform/configuration/common/configurationService.js +53 -14
  111. package/dist/src/_internal/platform/configuration/common/configurationService.js.map +1 -1
  112. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.d.ts +3 -2
  113. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.d.ts.map +1 -1
  114. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js +26 -25
  115. package/dist/src/_internal/platform/endpoint/common/chatModelCapabilities.js.map +1 -1
  116. package/dist/src/_internal/platform/endpoint/common/endpointProvider.d.ts +9 -5
  117. package/dist/src/_internal/platform/endpoint/common/endpointProvider.d.ts.map +1 -1
  118. package/dist/src/_internal/platform/endpoint/common/endpointProvider.js.map +1 -1
  119. package/dist/src/_internal/platform/endpoint/common/endpointTypes.d.ts +1 -0
  120. package/dist/src/_internal/platform/endpoint/common/endpointTypes.d.ts.map +1 -1
  121. package/dist/src/_internal/platform/endpoint/common/endpointTypes.js +1 -0
  122. package/dist/src/_internal/platform/endpoint/common/endpointTypes.js.map +1 -1
  123. package/dist/src/_internal/platform/endpoint/common/phaseDataContainer.d.ts +16 -0
  124. package/dist/src/_internal/platform/endpoint/common/phaseDataContainer.d.ts.map +1 -0
  125. package/dist/src/_internal/platform/endpoint/common/phaseDataContainer.js +37 -0
  126. package/dist/src/_internal/platform/endpoint/common/phaseDataContainer.js.map +1 -0
  127. package/dist/src/_internal/platform/endpoint/node/autoChatEndpoint.js +1 -1
  128. package/dist/src/_internal/platform/endpoint/node/autoChatEndpoint.js.map +1 -1
  129. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts +6 -13
  130. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.d.ts.map +1 -1
  131. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js +18 -53
  132. package/dist/src/_internal/platform/endpoint/node/chatEndpoint.js.map +1 -1
  133. package/dist/src/_internal/platform/endpoint/node/copilotChatEndpoint.d.ts.map +1 -1
  134. package/dist/src/_internal/platform/endpoint/node/copilotChatEndpoint.js +1 -1
  135. package/dist/src/_internal/platform/endpoint/node/copilotChatEndpoint.js.map +1 -1
  136. package/dist/src/_internal/platform/endpoint/node/messagesApi.d.ts +22 -1
  137. package/dist/src/_internal/platform/endpoint/node/messagesApi.d.ts.map +1 -1
  138. package/dist/src/_internal/platform/endpoint/node/messagesApi.js +193 -59
  139. package/dist/src/_internal/platform/endpoint/node/messagesApi.js.map +1 -1
  140. package/dist/src/_internal/platform/endpoint/node/responsesApi.d.ts.map +1 -1
  141. package/dist/src/_internal/platform/endpoint/node/responsesApi.js +23 -2
  142. package/dist/src/_internal/platform/endpoint/node/responsesApi.js.map +1 -1
  143. package/dist/src/_internal/platform/env/common/envService.d.ts +6 -0
  144. package/dist/src/_internal/platform/env/common/envService.d.ts.map +1 -1
  145. package/dist/src/_internal/platform/env/common/envService.js.map +1 -1
  146. package/dist/src/_internal/platform/env/common/nullEnvService.d.ts +3 -0
  147. package/dist/src/_internal/platform/env/common/nullEnvService.d.ts.map +1 -1
  148. package/dist/src/_internal/platform/env/common/nullEnvService.js +4 -0
  149. package/dist/src/_internal/platform/env/common/nullEnvService.js.map +1 -1
  150. package/dist/src/_internal/platform/git/common/gitService.d.ts +4 -3
  151. package/dist/src/_internal/platform/git/common/gitService.d.ts.map +1 -1
  152. package/dist/src/_internal/platform/git/common/gitService.js.map +1 -1
  153. package/dist/src/_internal/platform/github/common/githubService.d.ts +41 -4
  154. package/dist/src/_internal/platform/github/common/githubService.d.ts.map +1 -1
  155. package/dist/src/_internal/platform/github/common/githubService.js +16 -4
  156. package/dist/src/_internal/platform/github/common/githubService.js.map +1 -1
  157. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.d.ts +100 -3
  158. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.d.ts.map +1 -1
  159. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.js +230 -2
  160. package/dist/src/_internal/platform/inlineEdits/common/dataTypes/xtabPromptOptions.js.map +1 -1
  161. package/dist/src/_internal/platform/inlineEdits/common/inlineEditLogContext.d.ts +11 -5
  162. package/dist/src/_internal/platform/inlineEdits/common/inlineEditLogContext.d.ts.map +1 -1
  163. package/dist/src/_internal/platform/inlineEdits/common/inlineEditLogContext.js +31 -16
  164. package/dist/src/_internal/platform/inlineEdits/common/inlineEditLogContext.js.map +1 -1
  165. package/dist/src/_internal/platform/inlineEdits/common/responseProcessor.d.ts +30 -5
  166. package/dist/src/_internal/platform/inlineEdits/common/responseProcessor.d.ts.map +1 -1
  167. package/dist/src/_internal/platform/inlineEdits/common/responseProcessor.js +69 -2
  168. package/dist/src/_internal/platform/inlineEdits/common/responseProcessor.js.map +1 -1
  169. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts +34 -2
  170. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.d.ts.map +1 -1
  171. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js +38 -1
  172. package/dist/src/_internal/platform/inlineEdits/common/statelessNextEditProvider.js.map +1 -1
  173. package/dist/src/_internal/platform/inlineEdits/node/inlineEditsModelService.d.ts +1 -1
  174. package/dist/src/_internal/platform/inlineEdits/node/inlineEditsModelService.d.ts.map +1 -1
  175. package/dist/src/_internal/platform/inlineEdits/node/inlineEditsModelService.js +23 -24
  176. package/dist/src/_internal/platform/inlineEdits/node/inlineEditsModelService.js.map +1 -1
  177. package/dist/src/_internal/platform/log/common/logService.d.ts +68 -0
  178. package/dist/src/_internal/platform/log/common/logService.d.ts.map +1 -1
  179. package/dist/src/_internal/platform/log/common/logService.js +227 -29
  180. package/dist/src/_internal/platform/log/common/logService.js.map +1 -1
  181. package/dist/src/_internal/platform/nesFetch/node/completionsFetchServiceImpl.d.ts +5 -1
  182. package/dist/src/_internal/platform/nesFetch/node/completionsFetchServiceImpl.d.ts.map +1 -1
  183. package/dist/src/_internal/platform/nesFetch/node/completionsFetchServiceImpl.js +121 -6
  184. package/dist/src/_internal/platform/nesFetch/node/completionsFetchServiceImpl.js.map +1 -1
  185. package/dist/src/_internal/platform/nesFetch/node/streamTransformer.d.ts +1 -4
  186. package/dist/src/_internal/platform/nesFetch/node/streamTransformer.d.ts.map +1 -1
  187. package/dist/src/_internal/platform/nesFetch/node/streamTransformer.js +1 -21
  188. package/dist/src/_internal/platform/nesFetch/node/streamTransformer.js.map +1 -1
  189. package/dist/src/_internal/platform/networking/common/anthropic.d.ts +18 -5
  190. package/dist/src/_internal/platform/networking/common/anthropic.d.ts.map +1 -1
  191. package/dist/src/_internal/platform/networking/common/anthropic.js +55 -27
  192. package/dist/src/_internal/platform/networking/common/anthropic.js.map +1 -1
  193. package/dist/src/_internal/platform/networking/common/fetch.d.ts +8 -1
  194. package/dist/src/_internal/platform/networking/common/fetch.d.ts.map +1 -1
  195. package/dist/src/_internal/platform/networking/common/fetch.js.map +1 -1
  196. package/dist/src/_internal/platform/networking/common/fetcherService.d.ts +2 -1
  197. package/dist/src/_internal/platform/networking/common/fetcherService.d.ts.map +1 -1
  198. package/dist/src/_internal/platform/networking/common/fetcherService.js.map +1 -1
  199. package/dist/src/_internal/platform/networking/common/networking.d.ts +19 -13
  200. package/dist/src/_internal/platform/networking/common/networking.d.ts.map +1 -1
  201. package/dist/src/_internal/platform/networking/common/networking.js +4 -4
  202. package/dist/src/_internal/platform/networking/common/networking.js.map +1 -1
  203. package/dist/src/_internal/platform/requestLogger/common/capturingToken.d.ts +35 -1
  204. package/dist/src/_internal/platform/requestLogger/common/capturingToken.d.ts.map +1 -1
  205. package/dist/src/_internal/platform/requestLogger/common/capturingToken.js +21 -1
  206. package/dist/src/_internal/platform/requestLogger/common/capturingToken.js.map +1 -1
  207. package/dist/src/_internal/platform/requestLogger/node/nullRequestLogger.d.ts +2 -2
  208. package/dist/src/_internal/platform/requestLogger/node/nullRequestLogger.d.ts.map +1 -1
  209. package/dist/src/_internal/platform/requestLogger/node/nullRequestLogger.js +1 -1
  210. package/dist/src/_internal/platform/requestLogger/node/nullRequestLogger.js.map +1 -1
  211. package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts +37 -2
  212. package/dist/src/_internal/platform/requestLogger/node/requestLogger.d.ts.map +1 -1
  213. package/dist/src/_internal/platform/requestLogger/node/requestLogger.js +54 -1
  214. package/dist/src/_internal/platform/requestLogger/node/requestLogger.js.map +1 -1
  215. package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts +2 -0
  216. package/dist/src/_internal/platform/telemetry/common/telemetry.d.ts.map +1 -1
  217. package/dist/src/_internal/platform/telemetry/common/telemetry.js +1 -0
  218. package/dist/src/_internal/platform/telemetry/common/telemetry.js.map +1 -1
  219. package/dist/src/_internal/platform/telemetry/common/telemetryData.d.ts.map +1 -1
  220. package/dist/src/_internal/platform/telemetry/common/telemetryData.js +3 -0
  221. package/dist/src/_internal/platform/telemetry/common/telemetryData.js.map +1 -1
  222. package/dist/src/_internal/platform/terminal/common/terminalService.d.ts +111 -0
  223. package/dist/src/_internal/platform/terminal/common/terminalService.d.ts.map +1 -0
  224. package/dist/src/_internal/platform/terminal/common/terminalService.js +83 -0
  225. package/dist/src/_internal/platform/terminal/common/terminalService.js.map +1 -0
  226. package/dist/src/_internal/platform/workspace/common/workspaceService.d.ts +9 -3
  227. package/dist/src/_internal/platform/workspace/common/workspaceService.d.ts.map +1 -1
  228. package/dist/src/_internal/platform/workspace/common/workspaceService.js +8 -2
  229. package/dist/src/_internal/platform/workspace/common/workspaceService.js.map +1 -1
  230. package/dist/src/_internal/util/common/asyncIterableUtils.d.ts +17 -0
  231. package/dist/src/_internal/util/common/asyncIterableUtils.d.ts.map +1 -0
  232. package/dist/src/_internal/util/common/asyncIterableUtils.js +94 -0
  233. package/dist/src/_internal/util/common/asyncIterableUtils.js.map +1 -0
  234. package/dist/src/_internal/util/common/backwardCompatSetting.d.ts +12 -0
  235. package/dist/src/_internal/util/common/backwardCompatSetting.d.ts.map +1 -0
  236. package/dist/src/_internal/util/common/backwardCompatSetting.js +21 -0
  237. package/dist/src/_internal/util/common/backwardCompatSetting.js.map +1 -0
  238. package/dist/src/_internal/util/common/test/shims/chatTypes.d.ts +44 -0
  239. package/dist/src/_internal/util/common/test/shims/chatTypes.d.ts.map +1 -1
  240. package/dist/src/_internal/util/common/test/shims/chatTypes.js +47 -2
  241. package/dist/src/_internal/util/common/test/shims/chatTypes.js.map +1 -1
  242. package/dist/src/_internal/util/common/test/shims/themes.d.ts +13 -0
  243. package/dist/src/_internal/util/common/test/shims/themes.d.ts.map +1 -0
  244. package/dist/src/_internal/util/common/test/shims/themes.js +27 -0
  245. package/dist/src/_internal/util/common/test/shims/themes.js.map +1 -0
  246. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.d.ts.map +1 -1
  247. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js +8 -1
  248. package/dist/src/_internal/util/common/test/shims/vscodeTypesShim.js.map +1 -1
  249. package/dist/src/_internal/util/vs/base/common/arrays.d.ts +13 -1
  250. package/dist/src/_internal/util/vs/base/common/arrays.d.ts.map +1 -1
  251. package/dist/src/_internal/util/vs/base/common/arrays.js +26 -0
  252. package/dist/src/_internal/util/vs/base/common/arrays.js.map +1 -1
  253. package/dist/src/_internal/util/vs/base/common/arraysFind.d.ts +6 -3
  254. package/dist/src/_internal/util/vs/base/common/arraysFind.d.ts.map +1 -1
  255. package/dist/src/_internal/util/vs/base/common/arraysFind.js +19 -1
  256. package/dist/src/_internal/util/vs/base/common/arraysFind.js.map +1 -1
  257. package/dist/src/_internal/util/vs/base/common/assert.d.ts +1 -0
  258. package/dist/src/_internal/util/vs/base/common/assert.d.ts.map +1 -1
  259. package/dist/src/_internal/util/vs/base/common/assert.js +4 -0
  260. package/dist/src/_internal/util/vs/base/common/assert.js.map +1 -1
  261. package/dist/src/_internal/util/vs/base/common/async.d.ts +7 -0
  262. package/dist/src/_internal/util/vs/base/common/async.d.ts.map +1 -1
  263. package/dist/src/_internal/util/vs/base/common/async.js +39 -2
  264. package/dist/src/_internal/util/vs/base/common/async.js.map +1 -1
  265. package/dist/src/_internal/util/vs/base/common/buffer.js +2 -2
  266. package/dist/src/_internal/util/vs/base/common/buffer.js.map +1 -1
  267. package/dist/src/_internal/util/vs/base/common/cancellation.d.ts +1 -1
  268. package/dist/src/_internal/util/vs/base/common/cancellation.d.ts.map +1 -1
  269. package/dist/src/_internal/util/vs/base/common/cancellation.js.map +1 -1
  270. package/dist/src/_internal/util/vs/base/common/codicons.d.ts +31 -5
  271. package/dist/src/_internal/util/vs/base/common/codicons.d.ts.map +1 -1
  272. package/dist/src/_internal/util/vs/base/common/codiconsLibrary.d.ts +31 -5
  273. package/dist/src/_internal/util/vs/base/common/codiconsLibrary.d.ts.map +1 -1
  274. package/dist/src/_internal/util/vs/base/common/codiconsLibrary.js +31 -5
  275. package/dist/src/_internal/util/vs/base/common/codiconsLibrary.js.map +1 -1
  276. package/dist/src/_internal/util/vs/base/common/collections.d.ts +2 -2
  277. package/dist/src/_internal/util/vs/base/common/collections.d.ts.map +1 -1
  278. package/dist/src/_internal/util/vs/base/common/collections.js.map +1 -1
  279. package/dist/src/_internal/util/vs/base/common/equals.d.ts +46 -14
  280. package/dist/src/_internal/util/vs/base/common/equals.d.ts.map +1 -1
  281. package/dist/src/_internal/util/vs/base/common/equals.js +84 -36
  282. package/dist/src/_internal/util/vs/base/common/equals.js.map +1 -1
  283. package/dist/src/_internal/util/vs/base/common/event.d.ts +30 -2
  284. package/dist/src/_internal/util/vs/base/common/event.d.ts.map +1 -1
  285. package/dist/src/_internal/util/vs/base/common/event.js +105 -19
  286. package/dist/src/_internal/util/vs/base/common/event.js.map +1 -1
  287. package/dist/src/_internal/util/vs/base/common/filters.d.ts +1 -0
  288. package/dist/src/_internal/util/vs/base/common/filters.d.ts.map +1 -1
  289. package/dist/src/_internal/util/vs/base/common/filters.js +23 -3
  290. package/dist/src/_internal/util/vs/base/common/filters.js.map +1 -1
  291. package/dist/src/_internal/util/vs/base/common/glob.d.ts +7 -3
  292. package/dist/src/_internal/util/vs/base/common/glob.d.ts.map +1 -1
  293. package/dist/src/_internal/util/vs/base/common/glob.js +42 -30
  294. package/dist/src/_internal/util/vs/base/common/glob.js.map +1 -1
  295. package/dist/src/_internal/util/vs/base/common/htmlContent.d.ts +6 -1
  296. package/dist/src/_internal/util/vs/base/common/htmlContent.d.ts.map +1 -1
  297. package/dist/src/_internal/util/vs/base/common/htmlContent.js +12 -4
  298. package/dist/src/_internal/util/vs/base/common/htmlContent.js.map +1 -1
  299. package/dist/src/_internal/util/vs/base/common/iterator.d.ts +2 -2
  300. package/dist/src/_internal/util/vs/base/common/iterator.d.ts.map +1 -1
  301. package/dist/src/_internal/util/vs/base/common/iterator.js +1 -1
  302. package/dist/src/_internal/util/vs/base/common/iterator.js.map +1 -1
  303. package/dist/src/_internal/util/vs/base/common/lifecycle.d.ts +6 -2
  304. package/dist/src/_internal/util/vs/base/common/lifecycle.d.ts.map +1 -1
  305. package/dist/src/_internal/util/vs/base/common/lifecycle.js +10 -5
  306. package/dist/src/_internal/util/vs/base/common/lifecycle.js.map +1 -1
  307. package/dist/src/_internal/util/vs/base/common/linkedList.d.ts +1 -0
  308. package/dist/src/_internal/util/vs/base/common/linkedList.d.ts.map +1 -1
  309. package/dist/src/_internal/util/vs/base/common/linkedList.js +9 -0
  310. package/dist/src/_internal/util/vs/base/common/linkedList.js.map +1 -1
  311. package/dist/src/_internal/util/vs/base/common/map.d.ts +4 -4
  312. package/dist/src/_internal/util/vs/base/common/map.d.ts.map +1 -1
  313. package/dist/src/_internal/util/vs/base/common/map.js +8 -5
  314. package/dist/src/_internal/util/vs/base/common/map.js.map +1 -1
  315. package/dist/src/_internal/util/vs/base/common/marshallingIds.d.ts +1 -1
  316. package/dist/src/_internal/util/vs/base/common/marshallingIds.d.ts.map +1 -1
  317. package/dist/src/_internal/util/vs/base/common/mime.d.ts.map +1 -1
  318. package/dist/src/_internal/util/vs/base/common/mime.js +7 -5
  319. package/dist/src/_internal/util/vs/base/common/mime.js.map +1 -1
  320. package/dist/src/_internal/util/vs/base/common/network.d.ts +10 -2
  321. package/dist/src/_internal/util/vs/base/common/network.d.ts.map +1 -1
  322. package/dist/src/_internal/util/vs/base/common/network.js +10 -3
  323. package/dist/src/_internal/util/vs/base/common/network.js.map +1 -1
  324. package/dist/src/_internal/util/vs/base/common/normalization.d.ts +11 -0
  325. package/dist/src/_internal/util/vs/base/common/normalization.d.ts.map +1 -0
  326. package/dist/src/_internal/util/vs/base/common/normalization.js +61 -0
  327. package/dist/src/_internal/util/vs/base/common/normalization.js.map +1 -0
  328. package/dist/src/_internal/util/vs/base/common/observableInternal/base.d.ts +4 -4
  329. package/dist/src/_internal/util/vs/base/common/observableInternal/base.d.ts.map +1 -1
  330. package/dist/src/_internal/util/vs/base/common/observableInternal/base.js.map +1 -1
  331. package/dist/src/_internal/util/vs/base/common/observableInternal/debugLocation.d.ts.map +1 -1
  332. package/dist/src/_internal/util/vs/base/common/observableInternal/debugLocation.js +1 -2
  333. package/dist/src/_internal/util/vs/base/common/observableInternal/debugLocation.js.map +1 -1
  334. package/dist/src/_internal/util/vs/base/common/observableInternal/debugName.d.ts.map +1 -1
  335. package/dist/src/_internal/util/vs/base/common/observableInternal/debugName.js +0 -1
  336. package/dist/src/_internal/util/vs/base/common/observableInternal/debugName.js.map +1 -1
  337. package/dist/src/_internal/util/vs/base/common/observableInternal/index.d.ts +1 -1
  338. package/dist/src/_internal/util/vs/base/common/observableInternal/index.d.ts.map +1 -1
  339. package/dist/src/_internal/util/vs/base/common/observableInternal/index.js +5 -4
  340. package/dist/src/_internal/util/vs/base/common/observableInternal/index.js.map +1 -1
  341. package/dist/src/_internal/util/vs/base/common/observableInternal/logging/debugGetDependencyGraph.d.ts +5 -2
  342. package/dist/src/_internal/util/vs/base/common/observableInternal/logging/debugGetDependencyGraph.d.ts.map +1 -1
  343. package/dist/src/_internal/util/vs/base/common/observableInternal/logging/debugGetDependencyGraph.js +39 -11
  344. package/dist/src/_internal/util/vs/base/common/observableInternal/logging/debugGetDependencyGraph.js.map +1 -1
  345. package/dist/src/_internal/util/vs/base/common/observableInternal/map.d.ts +1 -1
  346. package/dist/src/_internal/util/vs/base/common/observableInternal/map.d.ts.map +1 -1
  347. package/dist/src/_internal/util/vs/base/common/observableInternal/map.js.map +1 -1
  348. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/baseObservable.d.ts +10 -4
  349. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/baseObservable.d.ts.map +1 -1
  350. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/baseObservable.js +17 -6
  351. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/baseObservable.js.map +1 -1
  352. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/derived.d.ts +2 -2
  353. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/derived.d.ts.map +1 -1
  354. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/derivedImpl.d.ts.map +1 -1
  355. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/derivedImpl.js +11 -8
  356. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/derivedImpl.js.map +1 -1
  357. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/observableFromEvent.d.ts +1 -0
  358. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/observableFromEvent.d.ts.map +1 -1
  359. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/observableFromEvent.js +1 -1
  360. package/dist/src/_internal/util/vs/base/common/observableInternal/observables/observableFromEvent.js.map +1 -1
  361. package/dist/src/_internal/util/vs/base/common/observableInternal/reactions/autorunImpl.d.ts +2 -0
  362. package/dist/src/_internal/util/vs/base/common/observableInternal/reactions/autorunImpl.d.ts.map +1 -1
  363. package/dist/src/_internal/util/vs/base/common/observableInternal/reactions/autorunImpl.js +16 -0
  364. package/dist/src/_internal/util/vs/base/common/observableInternal/reactions/autorunImpl.js.map +1 -1
  365. package/dist/src/_internal/util/vs/base/common/observableInternal/utils/utils.d.ts +5 -3
  366. package/dist/src/_internal/util/vs/base/common/observableInternal/utils/utils.d.ts.map +1 -1
  367. package/dist/src/_internal/util/vs/base/common/observableInternal/utils/utils.js +51 -27
  368. package/dist/src/_internal/util/vs/base/common/observableInternal/utils/utils.js.map +1 -1
  369. package/dist/src/_internal/util/vs/base/common/platform.d.ts +0 -1
  370. package/dist/src/_internal/util/vs/base/common/platform.d.ts.map +1 -1
  371. package/dist/src/_internal/util/vs/base/common/platform.js +0 -4
  372. package/dist/src/_internal/util/vs/base/common/platform.js.map +1 -1
  373. package/dist/src/_internal/util/vs/base/common/strings.d.ts +10 -2
  374. package/dist/src/_internal/util/vs/base/common/strings.d.ts.map +1 -1
  375. package/dist/src/_internal/util/vs/base/common/strings.js +80 -26
  376. package/dist/src/_internal/util/vs/base/common/strings.js.map +1 -1
  377. package/dist/src/_internal/util/vs/base/common/types.d.ts +14 -0
  378. package/dist/src/_internal/util/vs/base/common/types.d.ts.map +1 -1
  379. package/dist/src/_internal/util/vs/base/common/types.js.map +1 -1
  380. package/dist/src/_internal/util/vs/editor/common/core/edits/edit.js.map +1 -1
  381. package/dist/src/_internal/util/vs/editor/common/core/edits/stringEdit.d.ts +5 -0
  382. package/dist/src/_internal/util/vs/editor/common/core/edits/stringEdit.d.ts.map +1 -1
  383. package/dist/src/_internal/util/vs/editor/common/core/edits/stringEdit.js +45 -7
  384. package/dist/src/_internal/util/vs/editor/common/core/edits/stringEdit.js.map +1 -1
  385. package/dist/src/_internal/util/vs/editor/common/core/edits/textEdit.d.ts +12 -1
  386. package/dist/src/_internal/util/vs/editor/common/core/edits/textEdit.d.ts.map +1 -1
  387. package/dist/src/_internal/util/vs/editor/common/core/edits/textEdit.js +355 -0
  388. package/dist/src/_internal/util/vs/editor/common/core/edits/textEdit.js.map +1 -1
  389. package/dist/src/_internal/util/vs/editor/common/core/range.d.ts +3 -0
  390. package/dist/src/_internal/util/vs/editor/common/core/range.d.ts.map +1 -1
  391. package/dist/src/_internal/util/vs/editor/common/core/range.js +3 -0
  392. package/dist/src/_internal/util/vs/editor/common/core/range.js.map +1 -1
  393. package/dist/src/_internal/util/vs/editor/common/core/ranges/offsetRange.d.ts +7 -0
  394. package/dist/src/_internal/util/vs/editor/common/core/ranges/offsetRange.d.ts.map +1 -1
  395. package/dist/src/_internal/util/vs/editor/common/core/ranges/offsetRange.js +13 -0
  396. package/dist/src/_internal/util/vs/editor/common/core/ranges/offsetRange.js.map +1 -1
  397. package/dist/src/_internal/util/vs/editor/common/core/text/positionToOffsetImpl.d.ts +5 -2
  398. package/dist/src/_internal/util/vs/editor/common/core/text/positionToOffsetImpl.d.ts.map +1 -1
  399. package/dist/src/_internal/util/vs/editor/common/core/text/positionToOffsetImpl.js +24 -10
  400. package/dist/src/_internal/util/vs/editor/common/core/text/positionToOffsetImpl.js.map +1 -1
  401. package/dist/src/_internal/util/vs/nls.d.ts +2 -1
  402. package/dist/src/_internal/util/vs/nls.d.ts.map +1 -1
  403. package/dist/src/_internal/util/vs/nls.js +10 -9
  404. package/dist/src/_internal/util/vs/nls.js.map +1 -1
  405. package/dist/src/_internal/util/vs/platform/instantiation/common/instantiation.d.ts +0 -1
  406. package/dist/src/_internal/util/vs/platform/instantiation/common/instantiation.d.ts.map +1 -1
  407. package/dist/src/_internal/util/vs/platform/instantiation/common/instantiation.js.map +1 -1
  408. package/dist/src/_internal/util/vs/platform/instantiation/common/instantiationService.d.ts.map +1 -1
  409. package/dist/src/_internal/util/vs/platform/instantiation/common/instantiationService.js +1 -8
  410. package/dist/src/_internal/util/vs/platform/instantiation/common/instantiationService.js.map +1 -1
  411. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/diagnostic.d.ts +8 -2
  412. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/diagnostic.d.ts.map +1 -1
  413. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/diagnostic.js.map +1 -1
  414. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/location.d.ts +1 -1
  415. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/location.d.ts.map +1 -1
  416. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/location.js.map +1 -1
  417. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/markdownString.d.ts +3 -1
  418. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/markdownString.d.ts.map +1 -1
  419. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/markdownString.js +10 -1
  420. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/markdownString.js.map +1 -1
  421. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/notebooks.d.ts +13 -13
  422. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/notebooks.d.ts.map +1 -1
  423. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/notebooks.js.map +1 -1
  424. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/position.d.ts +5 -2
  425. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/position.d.ts.map +1 -1
  426. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/position.js.map +1 -1
  427. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/range.d.ts +2 -2
  428. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/range.d.ts.map +1 -1
  429. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/range.js +1 -1
  430. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/range.js.map +1 -1
  431. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/selection.d.ts +1 -1
  432. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/selection.d.ts.map +1 -1
  433. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/selection.js +1 -1
  434. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/selection.js.map +1 -1
  435. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetString.d.ts +3 -3
  436. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetString.d.ts.map +1 -1
  437. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetString.js +1 -1
  438. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetString.js.map +1 -1
  439. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetTextEdit.d.ts +1 -1
  440. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetTextEdit.d.ts.map +1 -1
  441. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/snippetTextEdit.js.map +1 -1
  442. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/symbolInformation.d.ts +6 -1
  443. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/symbolInformation.d.ts.map +1 -1
  444. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/textEdit.d.ts +6 -2
  445. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/textEdit.d.ts.map +1 -1
  446. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/textEdit.js +1 -1
  447. package/dist/src/_internal/util/vs/workbench/api/common/extHostTypes/textEdit.js.map +1 -1
  448. package/dist/src/_internal/vscodeTypes.d.ts +7 -0
  449. package/dist/src/_internal/vscodeTypes.d.ts.map +1 -1
  450. package/dist/src/_internal/vscodeTypes.js +9 -2
  451. package/dist/src/_internal/vscodeTypes.js.map +1 -1
  452. package/dist/src/main.d.ts +4 -1
  453. package/dist/src/main.d.ts.map +1 -1
  454. package/dist/src/main.js +15 -3
  455. package/dist/src/main.js.map +1 -1
  456. package/dist/src/package.json +713 -228
  457. package/package.json +3 -3
  458. package/dist/src/_internal/util/common/tracing.d.ts +0 -51
  459. package/dist/src/_internal/util/common/tracing.d.ts.map +0 -1
  460. package/dist/src/_internal/util/common/tracing.js +0 -96
  461. package/dist/src/_internal/util/common/tracing.js.map +0 -1
  462. package/dist/src/_internal/util/vs/nls.messages.d.ts +0 -3
  463. package/dist/src/_internal/util/vs/nls.messages.d.ts.map +0 -1
  464. package/dist/src/_internal/util/vs/nls.messages.js +0 -22
  465. package/dist/src/_internal/util/vs/nls.messages.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"stringEdit.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/_internal/util/vs/editor/common/core/edits/stringEdit.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AAInD,8BAAsB,cAAc,CAAC,CAAC,SAAS,qBAAqB,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,GAAG,CAAC,EAAE,KAAK,SAAS,cAAc,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAE,SAAQ,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC;IAClM,IAAI,YAAY,IAAI,CAAC,CAEpB;WAEa,kBAAkB,CAAC,CAAC,SAAS,cAAc,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS;IAY9F;;;MAGE;WACY,OAAO,CAAC,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,cAAc,GAAG;QAAE,EAAE,EAAE,UAAU,CAAC;QAAC,EAAE,EAAE,UAAU,CAAA;KAAE,GAAG,SAAS;IAgBtG,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAalC;;OAEG;IACI,cAAc,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,UAAU;IAa7F;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAIrC,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU;IAInD,SAAS,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS;IAI1D,OAAO,CAAC,UAAU;IA2CX,MAAM,IAAI,qBAAqB;IAI/B,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIlC,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,UAAU;IAW1D,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,UAAU;IAInD;;MAEE;IACK,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IAW7C,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK;IAIlD,WAAW,CAAC,WAAW,EAAE,UAAU,GAAG,UAAU;IAIhD,OAAO,CAAC,KAAK,SAAS,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC;CASxG;AAGD,8BAAsB,qBAAqB,CAAC,CAAC,SAAS,qBAAqB,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAE,SAAQ,eAAe,CAAC,CAAC,CAAC;aAGrH,OAAO,EAAE,MAAM;gBAD/B,KAAK,EAAE,WAAW,EACF,OAAO,EAAE,MAAM;IAKhC,YAAY,IAAI,MAAM;IAEb,QAAQ,IAAI,MAAM;IAI3B,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI5B;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIlC,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,iBAAiB;IAmBjE,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,iBAAiB;IAK5C,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC;IAI9C,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC;IAWrC,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC;IAUrC,MAAM,IAAI,UAAU;IAIpB,MAAM,IAAI,4BAA4B;CAO7C;AAGD;;;EAGE;AACF,qBAAa,UAAW,SAAQ,cAAc,CAAC,iBAAiB,EAAE,UAAU,CAAC;IAC5E,gBAAuB,KAAK,aAAsB;WAEpC,MAAM,CAAC,YAAY,EAAE,SAAS,iBAAiB,EAAE,GAAG,UAAU;WAI9D,MAAM,CAAC,WAAW,EAAE,iBAAiB,GAAG,UAAU;WAIlD,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,GAAG,UAAU;WAI5D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,UAAU;WAIvD,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,UAAU;WAItC,QAAQ,CAAC,IAAI,EAAE,qBAAqB,GAAG,UAAU;WAIjD,OAAO,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,GAAG,UAAU;IAW/D;;;MAGE;WACY,6BAA6B,CAAC,YAAY,EAAE,SAAS,iBAAiB,EAAE,GAAG,UAAU;gBAoBvF,YAAY,EAAE,SAAS,iBAAiB,EAAE;cAInC,UAAU,CAAC,YAAY,EAAE,SAAS,iBAAiB,EAAE,GAAG,UAAU;CAGrF;AAED;;EAEE;AACF,MAAM,MAAM,qBAAqB,GAAG,4BAA4B,EAAE,CAAC;AAEnE;;EAEE;AACF,MAAM,WAAW,4BAA4B;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,qBAAa,iBAAkB,SAAQ,qBAAqB,CAAC,iBAAiB,CAAC;WAChE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,iBAAiB;WAIvD,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,iBAAiB;WAI5D,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,iBAAiB;WAI7C,QAAQ,CAAC,IAAI,EAAE,4BAA4B,GAAG,iBAAiB;IAIpE,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO;IAIzC,eAAe,CAAC,KAAK,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,SAAS;IAIxE,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,WAAW,GAAG,iBAAiB;CAGvF;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,UAAU,GAAG,WAAW,EAAE,CAiE/F;AAED;;EAEE;AACF,MAAM,WAAW,SAAS,CAAC,CAAC;IAC3B,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;CAC9B;AAED,qBAAa,YAAa,YAAW,SAAS,CAAC,YAAY,CAAC;IAC3D,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,GAAG,SAAS;CAGnD;AAED;;;EAGE;AACF,qBAAa,mBAAmB,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACrI,gBAAuB,KAAK,6BAAsC;WAEpD,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAAE,GAAG,mBAAmB,CAAC,CAAC,CAAC;WAI9G,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,0BAA0B,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC;WAIlG,OAAO,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC;WAIzG,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC;WAIpG,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC;WAInF,OAAO,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,mBAAmB,CAAC,CAAC,CAAC,EAAE,GAAG,mBAAmB,CAAC,CAAC,CAAC;gBAWnG,YAAY,EAAE,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAAE;cAI/C,UAAU,CAAC,YAAY,EAAE,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAAE,GAAG,mBAAmB,CAAC,CAAC,CAAC;IAItG,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,0BAA0B,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,UAAU;CASjG;AAED,qBAAa,0BAA0B,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,CAAE,SAAQ,qBAAqB,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC;aAgB1G,IAAI,EAAE,CAAC;WAfV,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,0BAA0B,CAAC,CAAC,CAAC;WAIpG,OAAO,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,0BAA0B,CAAC,CAAC,CAAC;WAIzG,MAAM,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,GAAG,0BAA0B,CAAC,CAAC,CAAC;gBAKvG,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,CAAC;IAKf,MAAM,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC,CAAC,GAAG,OAAO;IAI9D,eAAe,CAAC,KAAK,EAAE,0BAA0B,CAAC,CAAC,CAAC,GAAG,0BAA0B,CAAC,CAAC,CAAC,GAAG,SAAS;IAQhG,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,WAAW,GAAG,0BAA0B,CAAC,CAAC,CAAC;CAG1F"}
1
+ {"version":3,"file":"stringEdit.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/_internal/util/vs/editor/common/core/edits/stringEdit.ts"],"names":[],"mappings":"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"}
@@ -86,26 +86,33 @@ class BaseStringEdit extends edit_1.BaseEdit {
86
86
  let offset = 0;
87
87
  while (ourIdx < this.replacements.length || baseIdx < base.replacements.length) {
88
88
  // take the edit that starts first
89
- const baseEdit = base.replacements[baseIdx];
90
- const ourEdit = this.replacements[ourIdx];
89
+ const baseEdit = base.replacements.at(baseIdx);
90
+ const ourEdit = this.replacements.at(ourIdx);
91
91
  if (!ourEdit) {
92
92
  // We processed all our edits
93
93
  break;
94
94
  }
95
95
  else if (!baseEdit) {
96
96
  // no more edits from base
97
- newEdits.push(new StringReplacement(ourEdit.replaceRange.delta(offset), ourEdit.newText));
97
+ const transformedRange = ourEdit.replaceRange.delta(offset);
98
+ newEdits.push(new StringReplacement(transformedRange, ourEdit.newText));
98
99
  ourIdx++;
99
100
  }
100
- else if (ourEdit.replaceRange.intersectsOrTouches(baseEdit.replaceRange)) {
101
+ else if (ourEdit.replaceRange.intersects(baseEdit.replaceRange) ||
102
+ areConcurrentInserts(ourEdit.replaceRange, baseEdit.replaceRange) ||
103
+ isInsertStrictlyInsideRange(ourEdit.replaceRange, baseEdit.replaceRange) ||
104
+ isInsertStrictlyInsideRange(baseEdit.replaceRange, ourEdit.replaceRange)) {
101
105
  ourIdx++; // Don't take our edit, as it is conflicting -> skip
102
106
  if (noOverlap) {
103
107
  return undefined;
104
108
  }
105
109
  }
106
- else if (ourEdit.replaceRange.start < baseEdit.replaceRange.start) {
107
- // Our edit starts first
108
- newEdits.push(new StringReplacement(ourEdit.replaceRange.delta(offset), ourEdit.newText));
110
+ else if (ourEdit.replaceRange.start < baseEdit.replaceRange.start ||
111
+ (ourEdit.replaceRange.isEmpty && ourEdit.replaceRange.start === baseEdit.replaceRange.start)) {
112
+ // Our edit starts first, or is an insert at the start of base's range
113
+ const transformedRange = ourEdit.replaceRange.delta(offset);
114
+ // Check if the transformed edit would violate the sorted/disjoint invariant
115
+ newEdits.push(new StringReplacement(transformedRange, ourEdit.newText));
109
116
  ourIdx++;
110
117
  }
111
118
  else {
@@ -224,6 +231,22 @@ exports.BaseStringReplacement = BaseStringReplacement;
224
231
  * All these replacements are applied at once.
225
232
  */
226
233
  class StringEdit extends BaseStringEdit {
234
+ /**
235
+ * Parses an edit from its string representation.
236
+ * E.g. [[2, 12) -> "fgh", [14, 20) -> "qrst", [22, 22) -> "de\n"]
237
+ */
238
+ static parse(toStringValue) {
239
+ const replacements = [];
240
+ const regex = /\[(\d+),\s*(\d+)\)\s*->\s*"([^"]*)"/g;
241
+ let match;
242
+ while ((match = regex.exec(toStringValue)) !== null) {
243
+ const start = parseInt(match[1], 10);
244
+ const endEx = parseInt(match[2], 10);
245
+ const text = match[3].replace(/\\n/g, '\n').replace(/\\r/g, '\r').replace(/\\\\/g, '\\');
246
+ replacements.push(new StringReplacement(new offsetRange_1.OffsetRange(start, endEx), text));
247
+ }
248
+ return new StringEdit(replacements);
249
+ }
227
250
  static { this.empty = new StringEdit([]); }
228
251
  static create(replacements) {
229
252
  return new StringEdit(replacements);
@@ -443,4 +466,19 @@ class AnnotatedStringReplacement extends BaseStringReplacement {
443
466
  }
444
467
  }
445
468
  exports.AnnotatedStringReplacement = AnnotatedStringReplacement;
469
+ /**
470
+ * Returns true if both ranges are empty (inserts) at the exact same position.
471
+ * In this case, although they don't "intersect" in the traditional sense,
472
+ * they conflict because the order of insertion matters.
473
+ */
474
+ function areConcurrentInserts(r1, r2) {
475
+ return r1.isEmpty && r2.isEmpty && r1.start === r2.start;
476
+ }
477
+ /**
478
+ * Returns true if `insert` is an empty range (insert) strictly inside `range`.
479
+ * For example, insert at position 5 is inside [3, 7) but not inside [5, 7) or [3, 5).
480
+ */
481
+ function isInsertStrictlyInsideRange(insert, range) {
482
+ return insert.isEmpty && range.start < insert.start && insert.start < range.endExclusive;
483
+ }
446
484
  //# sourceMappingURL=stringEdit.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stringEdit.js","sourceRoot":"","sources":["../../../../../../../../../src/_internal/util/vs/editor/common/core/edits/stringEdit.ts"],"names":[],"mappings":";AAAA,iEAAiE;;;AAkZjE,gDAiEC;AAjdD;;;gGAGgG;AAEhG,6DAAyF;AACzF,uDAAoD;AACpD,uDAAkD;AAClD,iCAAmD;AAGnD,8DAA8D;AAC9D,MAAsB,cAAmJ,SAAQ,eAAkB;IAClM,IAAI,YAAY;QACf,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACnE,CAAC;IAEM,MAAM,CAAC,kBAAkB,CAA2B,KAAmB;QAC7E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,IAAI,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,uFAAuF;YACvF,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAQ,CAAC;QAC1C,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED;;;MAGE;IACK,MAAM,CAAC,OAAO,CAAC,EAAkB,EAAE,EAAkB;QAC3D,gCAAgC;QAChC,MAAM,KAAK,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC;QAE7E,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,IAAY;QACxB,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9D,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9B,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC;QACtC,CAAC;QACD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QACrC,OAAO,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAGD;;OAEG;IACI,cAAc,CAAC,gBAA0D;QAC/E,MAAM,KAAK,GAAwB,EAAE,CAAC;QACtC,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CACnC,yBAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAC7E,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,CACnE,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,QAAgB;QAC9B,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAChF,CAAC;IAEM,qBAAqB,CAAC,IAAgB;QAC5C,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAE,CAAC;IACtC,CAAC;IAEM,SAAS,CAAC,IAAgB;QAChC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAEO,UAAU,CAAC,IAAgB,EAAE,SAAkB;QACtD,MAAM,QAAQ,GAAwB,EAAE,CAAC;QAEzC,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,OAAO,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAChF,kCAAkC;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACd,6BAA6B;gBAC7B,MAAM;YACP,CAAC;iBAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACtB,0BAA0B;gBAC1B,QAAQ,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAClC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,EAClC,OAAO,CAAC,OAAO,CACf,CAAC,CAAC;gBACH,MAAM,EAAE,CAAC;YACV,CAAC;iBAAM,IAAI,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC5E,MAAM,EAAE,CAAC,CAAC,oDAAoD;gBAC9D,IAAI,SAAS,EAAE,CAAC;oBACf,OAAO,SAAS,CAAC;gBAClB,CAAC;YACF,CAAC;iBAAM,IAAI,OAAO,CAAC,YAAY,CAAC,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;gBACrE,wBAAwB;gBACxB,QAAQ,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAClC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,EAClC,OAAO,CAAC,OAAO,CACf,CAAC,CAAC;gBACH,MAAM,EAAE,CAAC;YACV,CAAC;iBAAM,CAAC;gBACP,OAAO,EAAE,CAAC;gBACV,MAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC;YAClE,CAAC;QACF,CAAC;QAED,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAEM,MAAM;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEM,WAAW,CAAC,IAAY;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC;IAEM,wBAAwB,CAAC,YAAoB;QACnD,MAAM,KAAK,GAAwB,EAAE,CAAC;QACtC,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,CAAC,CAAC,wBAAwB,CAAC,YAAY,CAAC,CAAC;YACtD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACnB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;QACF,CAAC;QACD,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAEM,YAAY,CAAC,GAAkB;QACrC,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED;;MAEE;IACK,iBAAiB,CAAC,MAAc;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAElC,MAAM,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,yBAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;QACpF,MAAM,CAAC,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,UAAU,CAAC,KAAK,CAAC;QACzB,CAAC;QACD,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;IACnB,CAAC;IAEM,2BAA2B,CAAC,MAAc;QAChD,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;IACvG,CAAC;IAEM,WAAW,CAAC,WAAuB;QACzC,OAAO,IAAI,yBAAU,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,CAAC;IAEM,OAAO,CAAiC,CAA4B;QAC1E,OAAO,IAAI,mBAAmB,CAC7B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,0BAA0B,CACxD,CAAC,CAAC,YAAY,EACd,CAAC,CAAC,OAAO,EACT,CAAC,CAAC,CAAC,CAAC,CACJ,CAAC,CACF,CAAC;IACH,CAAC;CACD;AAlLD,wCAkLC;AAED,8DAA8D;AAC9D,MAAsB,qBAAuF,SAAQ,sBAAkB;IACtI,YACC,KAAkB,EACF,OAAe;QAE/B,KAAK,CAAC,KAAK,CAAC,CAAC;QAFG,YAAO,GAAP,OAAO,CAAQ;IAGhC,CAAC;IAED,YAAY,KAAa,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAE7C,QAAQ;QAChB,OAAO,GAAG,IAAI,CAAC,YAAY,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;IAClE,CAAC;IAED,OAAO,CAAC,GAAW;QAClB,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IACjH,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IACjG,CAAC;IAED,wBAAwB,CAAC,YAAoB;QAC5C,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QAEhG,MAAM,SAAS,GAAG,IAAA,4BAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACzB,OAAO,CAAC,MAAM,GAAG,SAAS,EAC1B,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,SAAS,EAC/B,IAAA,4BAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CACzC,CAAC;QAEF,MAAM,YAAY,GAAG,IAAI,yBAAW,CACnC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,SAAS,EACnC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,SAAS,CAC1C,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;QAEnF,OAAO,IAAI,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,YAAY,CAAC,GAAkB;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;QACtD,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAEM,2BAA2B,CAAC,MAAc;QAChD,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAEM,kBAAkB,CAAC,MAAc;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAEpD,MAAM,SAAS,GAAG,IAAA,4BAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5D,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,IAAoB,CAAC;QAC7B,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,IAAI,yBAAW,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7G,CAAC;IAEM,kBAAkB,CAAC,MAAc;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAEpD,MAAM,SAAS,GAAG,IAAA,4BAAkB,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5D,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,IAAoB,CAAC;QAC7B,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,yBAAW,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAChH,CAAC;IAEM,MAAM;QACZ,OAAO,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/B,CAAC;IAEM,MAAM;QACZ,OAAO,CAAC;YACP,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK;YAC5B,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM;SAC7B,CAAC,CAAC;IACJ,CAAC;CACD;AArFD,sDAqFC;AAGD;;;EAGE;AACF,MAAa,UAAW,SAAQ,cAA6C;aACrD,UAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAE3C,MAAM,CAAC,MAAM,CAAC,YAA0C;QAC9D,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,WAA8B;QAClD,OAAO,IAAI,UAAU,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,KAAkB,EAAE,WAAmB;QAC5D,OAAO,IAAI,UAAU,CAAC,CAAC,IAAI,iBAAiB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,MAAc,EAAE,WAAmB;QACvD,OAAO,IAAI,UAAU,CAAC,CAAC,IAAI,iBAAiB,CAAC,yBAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAC1F,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,KAAkB;QACtC,OAAO,IAAI,UAAU,CAAC,CAAC,IAAI,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAA2B;QACjD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,KAA4B;QACjD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,UAAU,CAAC,KAAK,CAAC;QACzB,CAAC;QACD,IAAI,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED;;;MAGE;IACK,MAAM,CAAC,6BAA6B,CAAC,YAA0C;QACrF,IAAI,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC;QAC5B,IAAI,mBAAmB,GAAwB,EAAE,CAAC,CAAC,2BAA2B;QAE9E,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzD,qDAAqD;gBACrD,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACP,mGAAmG;gBACnG,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBACtE,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC;YAC3B,CAAC;QACF,CAAC;QAED,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,YAAY,YAA0C;QACrD,KAAK,CAAC,YAAY,CAAC,CAAC;IACrB,CAAC;IAEkB,UAAU,CAAC,YAA0C;QACvE,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;;AApEF,gCAqEC;AAgBD,MAAa,iBAAkB,SAAQ,qBAAwC;IACvE,MAAM,CAAC,MAAM,CAAC,MAAc,EAAE,IAAY;QAChD,OAAO,IAAI,iBAAiB,CAAC,yBAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,KAAkB,EAAE,IAAY;QACrD,OAAO,IAAI,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,KAAkB;QACtC,OAAO,IAAI,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACzC,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,IAAkC;QACxD,OAAO,IAAI,iBAAiB,CAAC,yBAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1F,CAAC;IAEQ,MAAM,CAAC,KAAwB;QACvC,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC;IACvF,CAAC;IAEQ,eAAe,CAAC,KAAwB;QAChD,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IACrH,CAAC;IAEQ,KAAK,CAAC,KAAkB,EAAE,kBAAgC;QAClE,OAAO,IAAI,iBAAiB,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrH,CAAC;CACD;AA5BD,8CA4BC;AAED,SAAgB,kBAAkB,CAAC,YAA2B,EAAE,IAAgB;IAC/E,YAAY,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC;IAEpC,kGAAkG;IAClG,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,OAAO,IAAI,EAAE,CAAC;YACb,iCAAiC;YACjC,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;gBAClD,MAAM;YACP,CAAC;YACD,YAAY,CAAC,KAAK,EAAE,CAAC;YACrB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,YAAY,GAAkB,EAAE,CAAC;QACvC,OAAO,IAAI,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClD,MAAM;YACP,CAAC;YACD,YAAY,CAAC,KAAK,EAAE,CAAC;YACrB,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAExB,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAE,CAAC,MAAM,CAAC;YACpD,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAE5D,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC;YAChE,IAAI,wBAAwB,GAAG,CAAC,EAAE,CAAC;gBAClC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,wBAAwB,CAAC,CAAC;YACxC,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACb,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;YAED,2CAA2C;YAC3C,qEAAqE;YACrE,6BAA6B;YAC7B,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;YAEzD,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;IACpD,CAAC;IAED,OAAO,IAAI,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC,EAAE,CAAC;YACR,MAAM;QACP,CAAC;QACD,YAAY,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AASD,MAAa,YAAY;IACxB,IAAI,CAAC,KAAmB;QACvB,OAAO,IAAI,CAAC;IACb,CAAC;CACD;AAJD,oCAIC;AAED;;;EAGE;AACF,MAAa,mBAA4C,SAAQ,cAAqE;aAC9G,UAAK,GAAG,IAAI,mBAAmB,CAAQ,EAAE,CAAC,CAAC;IAE3D,MAAM,CAAC,MAAM,CAAyB,YAAsD;QAClG,OAAO,IAAI,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;IAEM,MAAM,CAAC,MAAM,CAAyB,WAA0C;QACtF,OAAO,IAAI,mBAAmB,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAC/C,CAAC;IAEM,MAAM,CAAC,OAAO,CAAyB,KAAkB,EAAE,WAAmB,EAAE,IAAO;QAC7F,OAAO,IAAI,mBAAmB,CAAC,CAAC,IAAI,0BAA0B,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC;IAEM,MAAM,CAAC,MAAM,CAAyB,MAAc,EAAE,WAAmB,EAAE,IAAO;QACxF,OAAO,IAAI,mBAAmB,CAAC,CAAC,IAAI,0BAA0B,CAAC,yBAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAClH,CAAC;IAEM,MAAM,CAAC,MAAM,CAAyB,KAAkB,EAAE,IAAO;QACvE,OAAO,IAAI,mBAAmB,CAAC,CAAC,IAAI,0BAA0B,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;IAEM,MAAM,CAAC,OAAO,CAAyB,KAAwC;QACrF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,mBAAmB,CAAC,KAAK,CAAC;QAClC,CAAC;QACD,IAAI,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAED,YAAY,YAAsD;QACjE,KAAK,CAAC,YAAY,CAAC,CAAC;IACrB,CAAC;IAEkB,UAAU,CAAC,YAAsD;QACnF,OAAO,IAAI,mBAAmB,CAAI,YAAY,CAAC,CAAC;IACjD,CAAC;IAEM,YAAY,CAAC,MAAgE;QACnF,MAAM,eAAe,GAAwB,EAAE,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1B,eAAe,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACxE,CAAC;QACF,CAAC;QACD,OAAO,IAAI,UAAU,CAAC,eAAe,CAAC,CAAC;IACxC,CAAC;;AAlDF,kDAmDC;AAED,MAAa,0BAAmD,SAAQ,qBAAoD;IACpH,MAAM,CAAC,MAAM,CAAyB,MAAc,EAAE,IAAY,EAAE,IAAO;QACjF,OAAO,IAAI,0BAA0B,CAAI,yBAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACnF,CAAC;IAEM,MAAM,CAAC,OAAO,CAAyB,KAAkB,EAAE,IAAY,EAAE,IAAO;QACtF,OAAO,IAAI,0BAA0B,CAAI,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,MAAM,CAAyB,KAAkB,EAAE,IAAO;QACvE,OAAO,IAAI,0BAA0B,CAAI,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,YACC,KAAkB,EAClB,OAAe,EACC,IAAO;QAEvB,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAFN,SAAI,GAAJ,IAAI,CAAG;IAGxB,CAAC;IAEQ,MAAM,CAAC,KAAoC;QACnD,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC;IACnH,CAAC;IAED,eAAe,CAAC,KAAoC;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,0BAA0B,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtI,CAAC;IAED,KAAK,CAAC,KAAkB,EAAE,kBAAgC;QACzD,OAAO,IAAI,0BAA0B,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACzI,CAAC;CACD;AApCD,gEAoCC"}
1
+ {"version":3,"file":"stringEdit.js","sourceRoot":"","sources":["../../../../../../../../../src/_internal/util/vs/editor/common/core/edits/stringEdit.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { BaseStringEdit, StringReplacement } from './stringEdit';
3
3
  import { Position } from '../position';
4
4
  import { Range } from '../range';
5
5
  import { AbstractText } from '../text/abstractText';
6
+ import { IEquatable } from '../../../../base/common/equals';
6
7
  export declare class TextEdit {
7
8
  readonly replacements: readonly TextReplacement[];
8
9
  static fromStringEdit(edit: BaseStringEdit, initialState: AbstractText): TextEdit;
@@ -25,9 +26,19 @@ export declare class TextEdit {
25
26
  getNewRanges(): Range[];
26
27
  toReplacement(text: AbstractText): TextReplacement;
27
28
  equals(other: TextEdit): boolean;
29
+ /**
30
+ * Combines two edits into one with the same effect.
31
+ * WARNING: This is written by AI, but well tested. I do not understand the implementation myself.
32
+ *
33
+ * Invariant:
34
+ * ```
35
+ * other.applyToString(this.applyToString(s0)) = this.compose(other).applyToString(s0)
36
+ * ```
37
+ */
38
+ compose(other: TextEdit): TextEdit;
28
39
  toString(text: AbstractText | string | undefined): string;
29
40
  }
30
- export declare class TextReplacement {
41
+ export declare class TextReplacement implements IEquatable<TextReplacement> {
31
42
  readonly range: Range;
32
43
  readonly text: string;
33
44
  static joinReplacements(replacements: TextReplacement[], initialValue: AbstractText): TextReplacement;
@@ -1 +1 @@
1
- {"version":3,"file":"textEdit.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/_internal/util/vs/editor/common/core/edits/textEdit.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EAAE,YAAY,EAAc,MAAM,sBAAsB,CAAC;AAEhE,qBAAa,QAAQ;aAwBH,YAAY,EAAE,SAAS,eAAe,EAAE;WAvB3C,cAAc,CAAC,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,GAAG,QAAQ;WAK1E,OAAO,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ;WAIxD,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ;WAI9B,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,QAAQ;WAIrD,gCAAgC,CAAC,YAAY,EAAE,SAAS,eAAe,EAAE,GAAG,QAAQ;gBAMjF,YAAY,EAAE,SAAS,eAAe,EAAE;IAKzD;;OAEG;IACH,SAAS,IAAI,QAAQ;IAarB,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK;IAyCjD,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK;IAgB7B,kBAAkB,CAAC,iBAAiB,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,GAAG,QAAQ,GAAG,KAAK;IAKpF,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,GAAG,KAAK;IAKvD,KAAK,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM;IAsBjC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAKlC,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,QAAQ;IAKpC,YAAY,IAAI,KAAK,EAAE;IAoBvB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,eAAe;IAsBlD,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IAIhC,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM;CA6DzD;AAED,qBAAa,eAAe;aAgCV,KAAK,EAAE,KAAK;aACZ,IAAI,EAAE,MAAM;WAhCf,gBAAgB,CAAC,YAAY,EAAE,eAAe,EAAE,EAAE,YAAY,EAAE,YAAY,GAAG,eAAe;WAsB9F,qBAAqB,CAAC,WAAW,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,GAAG,eAAe;WAIlG,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,eAAe;gBAKlC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,MAAM;IAI7B,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe;IAItD,qBAAqB,IAAI,oBAAoB;IAO7C,MAAM,IAAI,QAAQ;IAIlB,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO;IAIvC,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,GAAG,eAAe;IAU7E,gBAAgB,CAAC,YAAY,EAAE,YAAY,GAAG,eAAe;IAU7D,2BAA2B,CAAC,IAAI,EAAE,YAAY,GAAG,eAAe;IAMhE,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,eAAe;IAavD,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,eAAe;IAavD,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO;IAahD,QAAQ,IAAI,MAAM;CAKzB"}
1
+ {"version":3,"file":"textEdit.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/_internal/util/vs/editor/common/core/edits/textEdit.ts"],"names":[],"mappings":"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"}
@@ -179,6 +179,361 @@ class TextEdit {
179
179
  equals(other) {
180
180
  return (0, arrays_1.equals)(this.replacements, other.replacements, (a, b) => a.equals(b));
181
181
  }
182
+ /**
183
+ * Combines two edits into one with the same effect.
184
+ * WARNING: This is written by AI, but well tested. I do not understand the implementation myself.
185
+ *
186
+ * Invariant:
187
+ * ```
188
+ * other.applyToString(this.applyToString(s0)) = this.compose(other).applyToString(s0)
189
+ * ```
190
+ */
191
+ compose(other) {
192
+ const edits1 = this.normalize();
193
+ const edits2 = other.normalize();
194
+ if (edits1.replacements.length === 0) {
195
+ return edits2;
196
+ }
197
+ if (edits2.replacements.length === 0) {
198
+ return edits1;
199
+ }
200
+ const resultReplacements = [];
201
+ let edit1Idx = 0;
202
+ let lastEdit1EndS0Line = 1;
203
+ let lastEdit1EndS0Col = 1;
204
+ let headSrcRangeStartLine = 0;
205
+ let headSrcRangeStartCol = 0;
206
+ let headSrcRangeEndLine = 0;
207
+ let headSrcRangeEndCol = 0;
208
+ let headText = null;
209
+ let headLengthLine = 0;
210
+ let headLengthCol = 0;
211
+ let headHasValue = false;
212
+ let headIsInfinite = false;
213
+ let currentPosInS1Line = 1;
214
+ let currentPosInS1Col = 1;
215
+ function ensureHead() {
216
+ if (headHasValue) {
217
+ return;
218
+ }
219
+ if (edit1Idx < edits1.replacements.length) {
220
+ const nextEdit = edits1.replacements[edit1Idx];
221
+ const nextEditStart = nextEdit.range.getStartPosition();
222
+ const gapIsEmpty = (lastEdit1EndS0Line === nextEditStart.lineNumber) && (lastEdit1EndS0Col === nextEditStart.column);
223
+ if (!gapIsEmpty) {
224
+ headSrcRangeStartLine = lastEdit1EndS0Line;
225
+ headSrcRangeStartCol = lastEdit1EndS0Col;
226
+ headSrcRangeEndLine = nextEditStart.lineNumber;
227
+ headSrcRangeEndCol = nextEditStart.column;
228
+ headText = null;
229
+ if (lastEdit1EndS0Line === nextEditStart.lineNumber) {
230
+ headLengthLine = 0;
231
+ headLengthCol = nextEditStart.column - lastEdit1EndS0Col;
232
+ }
233
+ else {
234
+ headLengthLine = nextEditStart.lineNumber - lastEdit1EndS0Line;
235
+ headLengthCol = nextEditStart.column - 1;
236
+ }
237
+ headHasValue = true;
238
+ lastEdit1EndS0Line = nextEditStart.lineNumber;
239
+ lastEdit1EndS0Col = nextEditStart.column;
240
+ }
241
+ else {
242
+ const nextEditEnd = nextEdit.range.getEndPosition();
243
+ headSrcRangeStartLine = nextEditStart.lineNumber;
244
+ headSrcRangeStartCol = nextEditStart.column;
245
+ headSrcRangeEndLine = nextEditEnd.lineNumber;
246
+ headSrcRangeEndCol = nextEditEnd.column;
247
+ headText = nextEdit.text;
248
+ let line = 0;
249
+ let column = 0;
250
+ const text = nextEdit.text;
251
+ for (let i = 0; i < text.length; i++) {
252
+ if (text.charCodeAt(i) === 10) {
253
+ line++;
254
+ column = 0;
255
+ }
256
+ else {
257
+ column++;
258
+ }
259
+ }
260
+ headLengthLine = line;
261
+ headLengthCol = column;
262
+ headHasValue = true;
263
+ lastEdit1EndS0Line = nextEditEnd.lineNumber;
264
+ lastEdit1EndS0Col = nextEditEnd.column;
265
+ edit1Idx++;
266
+ }
267
+ }
268
+ else {
269
+ headIsInfinite = true;
270
+ headSrcRangeStartLine = lastEdit1EndS0Line;
271
+ headSrcRangeStartCol = lastEdit1EndS0Col;
272
+ headHasValue = true;
273
+ }
274
+ }
275
+ function splitText(text, lenLine, lenCol) {
276
+ if (lenLine === 0 && lenCol === 0) {
277
+ return ['', text];
278
+ }
279
+ let line = 0;
280
+ let offset = 0;
281
+ while (line < lenLine) {
282
+ const idx = text.indexOf('\n', offset);
283
+ if (idx === -1) {
284
+ throw new errors_1.BugIndicatingError('Text length mismatch');
285
+ }
286
+ offset = idx + 1;
287
+ line++;
288
+ }
289
+ offset += lenCol;
290
+ return [text.substring(0, offset), text.substring(offset)];
291
+ }
292
+ for (const r2 of edits2.replacements) {
293
+ const r2Start = r2.range.getStartPosition();
294
+ const r2End = r2.range.getEndPosition();
295
+ while (true) {
296
+ if (currentPosInS1Line === r2Start.lineNumber && currentPosInS1Col === r2Start.column) {
297
+ break;
298
+ }
299
+ ensureHead();
300
+ if (headIsInfinite) {
301
+ let distLine, distCol;
302
+ if (currentPosInS1Line === r2Start.lineNumber) {
303
+ distLine = 0;
304
+ distCol = r2Start.column - currentPosInS1Col;
305
+ }
306
+ else {
307
+ distLine = r2Start.lineNumber - currentPosInS1Line;
308
+ distCol = r2Start.column - 1;
309
+ }
310
+ currentPosInS1Line = r2Start.lineNumber;
311
+ currentPosInS1Col = r2Start.column;
312
+ if (distLine === 0) {
313
+ headSrcRangeStartCol += distCol;
314
+ }
315
+ else {
316
+ headSrcRangeStartLine += distLine;
317
+ headSrcRangeStartCol = distCol + 1;
318
+ }
319
+ break;
320
+ }
321
+ let headEndInS1Line, headEndInS1Col;
322
+ if (headLengthLine === 0) {
323
+ headEndInS1Line = currentPosInS1Line;
324
+ headEndInS1Col = currentPosInS1Col + headLengthCol;
325
+ }
326
+ else {
327
+ headEndInS1Line = currentPosInS1Line + headLengthLine;
328
+ headEndInS1Col = headLengthCol + 1;
329
+ }
330
+ let r2StartIsBeforeHeadEnd = false;
331
+ if (r2Start.lineNumber < headEndInS1Line) {
332
+ r2StartIsBeforeHeadEnd = true;
333
+ }
334
+ else if (r2Start.lineNumber === headEndInS1Line) {
335
+ r2StartIsBeforeHeadEnd = r2Start.column < headEndInS1Col;
336
+ }
337
+ if (r2StartIsBeforeHeadEnd) {
338
+ let splitLenLine, splitLenCol;
339
+ if (currentPosInS1Line === r2Start.lineNumber) {
340
+ splitLenLine = 0;
341
+ splitLenCol = r2Start.column - currentPosInS1Col;
342
+ }
343
+ else {
344
+ splitLenLine = r2Start.lineNumber - currentPosInS1Line;
345
+ splitLenCol = r2Start.column - 1;
346
+ }
347
+ let remainingLenLine, remainingLenCol;
348
+ if (splitLenLine === headLengthLine) {
349
+ remainingLenLine = 0;
350
+ remainingLenCol = headLengthCol - splitLenCol;
351
+ }
352
+ else {
353
+ remainingLenLine = headLengthLine - splitLenLine;
354
+ remainingLenCol = headLengthCol;
355
+ }
356
+ if (headText !== null) {
357
+ const [t1, t2] = splitText(headText, splitLenLine, splitLenCol);
358
+ resultReplacements.push(new TextReplacement(new range_1.Range(headSrcRangeStartLine, headSrcRangeStartCol, headSrcRangeEndLine, headSrcRangeEndCol), t1));
359
+ headText = t2;
360
+ headLengthLine = remainingLenLine;
361
+ headLengthCol = remainingLenCol;
362
+ headSrcRangeStartLine = headSrcRangeEndLine;
363
+ headSrcRangeStartCol = headSrcRangeEndCol;
364
+ }
365
+ else {
366
+ let splitPosLine, splitPosCol;
367
+ if (splitLenLine === 0) {
368
+ splitPosLine = headSrcRangeStartLine;
369
+ splitPosCol = headSrcRangeStartCol + splitLenCol;
370
+ }
371
+ else {
372
+ splitPosLine = headSrcRangeStartLine + splitLenLine;
373
+ splitPosCol = splitLenCol + 1;
374
+ }
375
+ headSrcRangeStartLine = splitPosLine;
376
+ headSrcRangeStartCol = splitPosCol;
377
+ headLengthLine = remainingLenLine;
378
+ headLengthCol = remainingLenCol;
379
+ }
380
+ currentPosInS1Line = r2Start.lineNumber;
381
+ currentPosInS1Col = r2Start.column;
382
+ break;
383
+ }
384
+ if (headText !== null) {
385
+ resultReplacements.push(new TextReplacement(new range_1.Range(headSrcRangeStartLine, headSrcRangeStartCol, headSrcRangeEndLine, headSrcRangeEndCol), headText));
386
+ }
387
+ currentPosInS1Line = headEndInS1Line;
388
+ currentPosInS1Col = headEndInS1Col;
389
+ headHasValue = false;
390
+ }
391
+ let consumedStartS0Line = null;
392
+ let consumedStartS0Col = null;
393
+ let consumedEndS0Line = null;
394
+ let consumedEndS0Col = null;
395
+ while (true) {
396
+ if (currentPosInS1Line === r2End.lineNumber && currentPosInS1Col === r2End.column) {
397
+ break;
398
+ }
399
+ ensureHead();
400
+ if (headIsInfinite) {
401
+ let distLine, distCol;
402
+ if (currentPosInS1Line === r2End.lineNumber) {
403
+ distLine = 0;
404
+ distCol = r2End.column - currentPosInS1Col;
405
+ }
406
+ else {
407
+ distLine = r2End.lineNumber - currentPosInS1Line;
408
+ distCol = r2End.column - 1;
409
+ }
410
+ let rangeInS0EndLine, rangeInS0EndCol;
411
+ if (distLine === 0) {
412
+ rangeInS0EndLine = headSrcRangeStartLine;
413
+ rangeInS0EndCol = headSrcRangeStartCol + distCol;
414
+ }
415
+ else {
416
+ rangeInS0EndLine = headSrcRangeStartLine + distLine;
417
+ rangeInS0EndCol = distCol + 1;
418
+ }
419
+ if (consumedStartS0Line === null) {
420
+ consumedStartS0Line = headSrcRangeStartLine;
421
+ consumedStartS0Col = headSrcRangeStartCol;
422
+ }
423
+ consumedEndS0Line = rangeInS0EndLine;
424
+ consumedEndS0Col = rangeInS0EndCol;
425
+ currentPosInS1Line = r2End.lineNumber;
426
+ currentPosInS1Col = r2End.column;
427
+ headSrcRangeStartLine = rangeInS0EndLine;
428
+ headSrcRangeStartCol = rangeInS0EndCol;
429
+ break;
430
+ }
431
+ let headEndInS1Line, headEndInS1Col;
432
+ if (headLengthLine === 0) {
433
+ headEndInS1Line = currentPosInS1Line;
434
+ headEndInS1Col = currentPosInS1Col + headLengthCol;
435
+ }
436
+ else {
437
+ headEndInS1Line = currentPosInS1Line + headLengthLine;
438
+ headEndInS1Col = headLengthCol + 1;
439
+ }
440
+ let r2EndIsBeforeHeadEnd = false;
441
+ if (r2End.lineNumber < headEndInS1Line) {
442
+ r2EndIsBeforeHeadEnd = true;
443
+ }
444
+ else if (r2End.lineNumber === headEndInS1Line) {
445
+ r2EndIsBeforeHeadEnd = r2End.column < headEndInS1Col;
446
+ }
447
+ if (r2EndIsBeforeHeadEnd) {
448
+ let splitLenLine, splitLenCol;
449
+ if (currentPosInS1Line === r2End.lineNumber) {
450
+ splitLenLine = 0;
451
+ splitLenCol = r2End.column - currentPosInS1Col;
452
+ }
453
+ else {
454
+ splitLenLine = r2End.lineNumber - currentPosInS1Line;
455
+ splitLenCol = r2End.column - 1;
456
+ }
457
+ let remainingLenLine, remainingLenCol;
458
+ if (splitLenLine === headLengthLine) {
459
+ remainingLenLine = 0;
460
+ remainingLenCol = headLengthCol - splitLenCol;
461
+ }
462
+ else {
463
+ remainingLenLine = headLengthLine - splitLenLine;
464
+ remainingLenCol = headLengthCol;
465
+ }
466
+ if (headText !== null) {
467
+ if (consumedStartS0Line === null) {
468
+ consumedStartS0Line = headSrcRangeStartLine;
469
+ consumedStartS0Col = headSrcRangeStartCol;
470
+ }
471
+ consumedEndS0Line = headSrcRangeEndLine;
472
+ consumedEndS0Col = headSrcRangeEndCol;
473
+ const [, t2] = splitText(headText, splitLenLine, splitLenCol);
474
+ headText = t2;
475
+ headLengthLine = remainingLenLine;
476
+ headLengthCol = remainingLenCol;
477
+ headSrcRangeStartLine = headSrcRangeEndLine;
478
+ headSrcRangeStartCol = headSrcRangeEndCol;
479
+ }
480
+ else {
481
+ let splitPosLine, splitPosCol;
482
+ if (splitLenLine === 0) {
483
+ splitPosLine = headSrcRangeStartLine;
484
+ splitPosCol = headSrcRangeStartCol + splitLenCol;
485
+ }
486
+ else {
487
+ splitPosLine = headSrcRangeStartLine + splitLenLine;
488
+ splitPosCol = splitLenCol + 1;
489
+ }
490
+ if (consumedStartS0Line === null) {
491
+ consumedStartS0Line = headSrcRangeStartLine;
492
+ consumedStartS0Col = headSrcRangeStartCol;
493
+ }
494
+ consumedEndS0Line = splitPosLine;
495
+ consumedEndS0Col = splitPosCol;
496
+ headSrcRangeStartLine = splitPosLine;
497
+ headSrcRangeStartCol = splitPosCol;
498
+ headLengthLine = remainingLenLine;
499
+ headLengthCol = remainingLenCol;
500
+ }
501
+ currentPosInS1Line = r2End.lineNumber;
502
+ currentPosInS1Col = r2End.column;
503
+ break;
504
+ }
505
+ if (consumedStartS0Line === null) {
506
+ consumedStartS0Line = headSrcRangeStartLine;
507
+ consumedStartS0Col = headSrcRangeStartCol;
508
+ }
509
+ consumedEndS0Line = headSrcRangeEndLine;
510
+ consumedEndS0Col = headSrcRangeEndCol;
511
+ currentPosInS1Line = headEndInS1Line;
512
+ currentPosInS1Col = headEndInS1Col;
513
+ headHasValue = false;
514
+ }
515
+ if (consumedStartS0Line !== null) {
516
+ resultReplacements.push(new TextReplacement(new range_1.Range(consumedStartS0Line, consumedStartS0Col, consumedEndS0Line, consumedEndS0Col), r2.text));
517
+ }
518
+ else {
519
+ ensureHead();
520
+ const insertPosS0Line = headSrcRangeStartLine;
521
+ const insertPosS0Col = headSrcRangeStartCol;
522
+ resultReplacements.push(new TextReplacement(new range_1.Range(insertPosS0Line, insertPosS0Col, insertPosS0Line, insertPosS0Col), r2.text));
523
+ }
524
+ }
525
+ while (true) {
526
+ ensureHead();
527
+ if (headIsInfinite) {
528
+ break;
529
+ }
530
+ if (headText !== null) {
531
+ resultReplacements.push(new TextReplacement(new range_1.Range(headSrcRangeStartLine, headSrcRangeStartCol, headSrcRangeEndLine, headSrcRangeEndCol), headText));
532
+ }
533
+ headHasValue = false;
534
+ }
535
+ return new TextEdit(resultReplacements).normalize();
536
+ }
182
537
  toString(text) {
183
538
  if (text === undefined) {
184
539
  return this.replacements.map(edit => edit.toString()).join('\n');