@theia/plugin-ext 1.34.2 → 1.34.3

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 (843) hide show
  1. package/LICENSE +641 -641
  2. package/README.md +54 -54
  3. package/lib/common/arrays.d.ts +19 -19
  4. package/lib/common/arrays.js +46 -46
  5. package/lib/common/assert.d.ts +1 -1
  6. package/lib/common/assert.js +25 -25
  7. package/lib/common/cache.d.ts +11 -11
  8. package/lib/common/cache.js +47 -47
  9. package/lib/common/character-classifier.d.ts +18 -18
  10. package/lib/common/character-classifier.js +60 -60
  11. package/lib/common/collections.d.ts +4 -4
  12. package/lib/common/collections.js +39 -39
  13. package/lib/common/connection.d.ts +54 -54
  14. package/lib/common/connection.js +107 -107
  15. package/lib/common/disposable-util.d.ts +6 -6
  16. package/lib/common/disposable-util.js +37 -37
  17. package/lib/common/editor-options.d.ts +30 -30
  18. package/lib/common/editor-options.js +72 -72
  19. package/lib/common/env.d.ts +3 -3
  20. package/lib/common/env.js +17 -17
  21. package/lib/common/errors.d.ts +3 -3
  22. package/lib/common/errors.js +42 -42
  23. package/lib/common/id-generator.d.ts +6 -6
  24. package/lib/common/id-generator.js +28 -28
  25. package/lib/common/index.d.ts +3 -3
  26. package/lib/common/index.js +33 -33
  27. package/lib/common/link-computer.d.ts +41 -41
  28. package/lib/common/link-computer.js +275 -275
  29. package/lib/common/object-identifier.d.ts +8 -8
  30. package/lib/common/object-identifier.js +32 -32
  31. package/lib/common/objects.d.ts +1 -1
  32. package/lib/common/objects.js +46 -46
  33. package/lib/common/paths-util.d.ts +3 -3
  34. package/lib/common/paths-util.js +144 -144
  35. package/lib/common/plugin-api-rpc-model.d.ts +728 -728
  36. package/lib/common/plugin-api-rpc-model.js +173 -173
  37. package/lib/common/plugin-api-rpc.d.ts +1710 -1710
  38. package/lib/common/plugin-api-rpc.js +279 -279
  39. package/lib/common/plugin-ext-api-contribution.d.ts +58 -58
  40. package/lib/common/plugin-ext-api-contribution.js +5 -5
  41. package/lib/common/plugin-identifiers.d.ts +40 -40
  42. package/lib/common/plugin-identifiers.js +80 -80
  43. package/lib/common/plugin-protocol.d.ts +840 -840
  44. package/lib/common/plugin-protocol.js +67 -67
  45. package/lib/common/proxy-handler.d.ts +65 -65
  46. package/lib/common/proxy-handler.js +97 -97
  47. package/lib/common/reference-map.d.ts +7 -7
  48. package/lib/common/reference-map.js +39 -39
  49. package/lib/common/rpc-protocol.d.ts +65 -65
  50. package/lib/common/rpc-protocol.js +229 -229
  51. package/lib/common/semantic-tokens-dto.d.ts +18 -18
  52. package/lib/common/semantic-tokens-dto.js +162 -162
  53. package/lib/common/types.d.ts +37 -37
  54. package/lib/common/types.js +121 -121
  55. package/lib/common/uint.d.ts +7 -7
  56. package/lib/common/uint.js +33 -33
  57. package/lib/common/uri-components.d.ts +39 -39
  58. package/lib/common/uri-components.js +66 -66
  59. package/lib/hosted/browser/hosted-plugin-watcher.d.ts +15 -15
  60. package/lib/hosted/browser/hosted-plugin-watcher.js +59 -59
  61. package/lib/hosted/browser/hosted-plugin.d.ts +145 -145
  62. package/lib/hosted/browser/hosted-plugin.js +787 -787
  63. package/lib/hosted/browser/plugin-worker.d.ts +6 -6
  64. package/lib/hosted/browser/plugin-worker.js +57 -57
  65. package/lib/hosted/browser/worker/debug-stub.d.ts +3 -3
  66. package/lib/hosted/browser/worker/debug-stub.js +29 -29
  67. package/lib/hosted/browser/worker/plugin-manifest-loader.d.ts +2 -2
  68. package/lib/hosted/browser/worker/plugin-manifest-loader.js +107 -107
  69. package/lib/hosted/browser/worker/worker-env-ext.d.ts +14 -14
  70. package/lib/hosted/browser/worker/worker-env-ext.js +38 -38
  71. package/lib/hosted/browser/worker/worker-main.d.ts +1 -1
  72. package/lib/hosted/browser/worker/worker-main.js +192 -192
  73. package/lib/hosted/node/hosted-plugin-cli-contribution.d.ts +16 -16
  74. package/lib/hosted/node/hosted-plugin-cli-contribution.js +76 -76
  75. package/lib/hosted/node/hosted-plugin-deployer-handler.d.ts +42 -42
  76. package/lib/hosted/node/hosted-plugin-deployer-handler.js +264 -264
  77. package/lib/hosted/node/hosted-plugin-localization-service.d.ts +34 -34
  78. package/lib/hosted/node/hosted-plugin-localization-service.js +239 -239
  79. package/lib/hosted/node/hosted-plugin-process.d.ts +47 -47
  80. package/lib/hosted/node/hosted-plugin-process.js +224 -224
  81. package/lib/hosted/node/hosted-plugin-protocol.d.ts +21 -21
  82. package/lib/hosted/node/hosted-plugin-protocol.js +36 -36
  83. package/lib/hosted/node/hosted-plugin.d.ts +36 -36
  84. package/lib/hosted/node/hosted-plugin.js +118 -118
  85. package/lib/hosted/node/metadata-scanner.d.ts +17 -17
  86. package/lib/hosted/node/metadata-scanner.js +82 -82
  87. package/lib/hosted/node/plugin-ext-hosted-backend-module.d.ts +3 -3
  88. package/lib/hosted/node/plugin-ext-hosted-backend-module.js +73 -73
  89. package/lib/hosted/node/plugin-host-proxy.d.ts +17 -17
  90. package/lib/hosted/node/plugin-host-proxy.js +69 -69
  91. package/lib/hosted/node/plugin-host-rpc.d.ts +21 -21
  92. package/lib/hosted/node/plugin-host-rpc.js +216 -216
  93. package/lib/hosted/node/plugin-host.d.ts +1 -1
  94. package/lib/hosted/node/plugin-host.js +101 -101
  95. package/lib/hosted/node/plugin-manifest-loader.d.ts +1 -1
  96. package/lib/hosted/node/plugin-manifest-loader.js +34 -34
  97. package/lib/hosted/node/plugin-reader.d.ts +25 -25
  98. package/lib/hosted/node/plugin-reader.js +141 -141
  99. package/lib/hosted/node/plugin-service.d.ts +39 -39
  100. package/lib/hosted/node/plugin-service.js +193 -193
  101. package/lib/hosted/node/scanners/backend-init-theia.d.ts +2 -2
  102. package/lib/hosted/node/scanners/backend-init-theia.js +60 -60
  103. package/lib/hosted/node/scanners/file-plugin-uri-factory.d.ts +10 -10
  104. package/lib/hosted/node/scanners/file-plugin-uri-factory.js +40 -40
  105. package/lib/hosted/node/scanners/grammars-reader.d.ts +5 -5
  106. package/lib/hosted/node/scanners/grammars-reader.js +63 -63
  107. package/lib/hosted/node/scanners/plugin-uri-factory.d.ts +16 -16
  108. package/lib/hosted/node/scanners/plugin-uri-factory.js +19 -19
  109. package/lib/hosted/node/scanners/scanner-theia.d.ts +56 -56
  110. package/lib/hosted/node/scanners/scanner-theia.js +842 -842
  111. package/lib/hosted/node-electron/plugin-ext-hosted-electron-backend-module.d.ts +2 -2
  112. package/lib/hosted/node-electron/plugin-ext-hosted-electron-backend-module.js +26 -26
  113. package/lib/hosted/node-electron/scanner-theia-electron.d.ts +5 -5
  114. package/lib/hosted/node-electron/scanner-theia-electron.js +40 -40
  115. package/lib/main/browser/authentication-main.d.ts +51 -51
  116. package/lib/main/browser/authentication-main.js +299 -299
  117. package/lib/main/browser/clipboard-main.d.ts +9 -9
  118. package/lib/main/browser/clipboard-main.js +32 -32
  119. package/lib/main/browser/command-registry-main.d.ts +23 -23
  120. package/lib/main/browser/command-registry-main.js +97 -97
  121. package/lib/main/browser/commands.d.ts +12 -12
  122. package/lib/main/browser/commands.js +102 -102
  123. package/lib/main/browser/comments/comment-glyph-widget.d.ts +12 -12
  124. package/lib/main/browser/comments/comment-glyph-widget.js +42 -42
  125. package/lib/main/browser/comments/comment-thread-widget.d.ts +153 -153
  126. package/lib/main/browser/comments/comment-thread-widget.js +466 -466
  127. package/lib/main/browser/comments/comments-context-key-service.d.ts +17 -17
  128. package/lib/main/browser/comments/comments-context-key-service.js +80 -80
  129. package/lib/main/browser/comments/comments-contribution.d.ts +31 -31
  130. package/lib/main/browser/comments/comments-contribution.js +264 -264
  131. package/lib/main/browser/comments/comments-decorator.d.ts +15 -15
  132. package/lib/main/browser/comments/comments-decorator.js +107 -107
  133. package/lib/main/browser/comments/comments-main.d.ts +106 -106
  134. package/lib/main/browser/comments/comments-main.js +341 -341
  135. package/lib/main/browser/comments/comments-service.d.ts +75 -75
  136. package/lib/main/browser/comments/comments-service.js +120 -120
  137. package/lib/main/browser/custom-editors/custom-editor-contribution.d.ts +6 -6
  138. package/lib/main/browser/custom-editors/custom-editor-contribution.js +50 -50
  139. package/lib/main/browser/custom-editors/custom-editor-opener.d.ts +21 -21
  140. package/lib/main/browser/custom-editors/custom-editor-opener.js +111 -111
  141. package/lib/main/browser/custom-editors/custom-editor-service.d.ts +16 -16
  142. package/lib/main/browser/custom-editors/custom-editor-service.js +102 -102
  143. package/lib/main/browser/custom-editors/custom-editor-widget-factory.d.ts +9 -9
  144. package/lib/main/browser/custom-editors/custom-editor-widget-factory.js +39 -39
  145. package/lib/main/browser/custom-editors/custom-editor-widget.d.ts +36 -36
  146. package/lib/main/browser/custom-editors/custom-editor-widget.js +115 -115
  147. package/lib/main/browser/custom-editors/custom-editors-main.d.ts +120 -120
  148. package/lib/main/browser/custom-editors/custom-editors-main.js +447 -447
  149. package/lib/main/browser/custom-editors/plugin-custom-editor-registry.d.ts +23 -23
  150. package/lib/main/browser/custom-editors/plugin-custom-editor-registry.js +142 -142
  151. package/lib/main/browser/custom-editors/undo-redo-service.d.ts +23 -23
  152. package/lib/main/browser/custom-editors/undo-redo-service.js +110 -110
  153. package/lib/main/browser/debug/debug-main.d.ts +48 -48
  154. package/lib/main/browser/debug/debug-main.js +295 -295
  155. package/lib/main/browser/debug/plugin-debug-adapter-contribution.d.ts +18 -18
  156. package/lib/main/browser/debug/plugin-debug-adapter-contribution.js +42 -42
  157. package/lib/main/browser/debug/plugin-debug-configuration-provider.d.ts +12 -12
  158. package/lib/main/browser/debug/plugin-debug-configuration-provider.js +38 -38
  159. package/lib/main/browser/debug/plugin-debug-service.d.ts +52 -52
  160. package/lib/main/browser/debug/plugin-debug-service.js +283 -283
  161. package/lib/main/browser/debug/plugin-debug-session-contribution-registry.d.ts +30 -30
  162. package/lib/main/browser/debug/plugin-debug-session-contribution-registry.js +75 -75
  163. package/lib/main/browser/debug/plugin-debug-session-factory.d.ts +55 -55
  164. package/lib/main/browser/debug/plugin-debug-session-factory.js +70 -70
  165. package/lib/main/browser/decorations/decorations-main.d.ts +15 -15
  166. package/lib/main/browser/decorations/decorations-main.js +119 -119
  167. package/lib/main/browser/dialogs/modal-notification.d.ts +18 -18
  168. package/lib/main/browser/dialogs/modal-notification.js +107 -107
  169. package/lib/main/browser/dialogs-main.d.ts +16 -16
  170. package/lib/main/browser/dialogs-main.js +162 -162
  171. package/lib/main/browser/documents-main.d.ts +50 -50
  172. package/lib/main/browser/documents-main.js +249 -249
  173. package/lib/main/browser/editors-and-documents-main.d.ts +32 -32
  174. package/lib/main/browser/editors-and-documents-main.js +301 -301
  175. package/lib/main/browser/env-main.d.ts +15 -15
  176. package/lib/main/browser/env-main.js +82 -82
  177. package/lib/main/browser/file-system-main-impl.d.ts +27 -27
  178. package/lib/main/browser/file-system-main-impl.js +199 -199
  179. package/lib/main/browser/hierarchy/hierarchy-types-converters.d.ts +24 -24
  180. package/lib/main/browser/hierarchy/hierarchy-types-converters.js +174 -174
  181. package/lib/main/browser/keybindings/keybindings-contribution-handler.d.ts +9 -9
  182. package/lib/main/browser/keybindings/keybindings-contribution-handler.js +77 -77
  183. package/lib/main/browser/label-service-main.d.ts +10 -10
  184. package/lib/main/browser/label-service-main.js +46 -46
  185. package/lib/main/browser/languages-main.d.ts +136 -136
  186. package/lib/main/browser/languages-main.js +1116 -1116
  187. package/lib/main/browser/main-context.d.ts +3 -3
  188. package/lib/main/browser/main-context.js +137 -137
  189. package/lib/main/browser/main-file-system-event-service.d.ts +7 -7
  190. package/lib/main/browser/main-file-system-event-service.d.ts.map +1 -1
  191. package/lib/main/browser/main-file-system-event-service.js +65 -68
  192. package/lib/main/browser/main-file-system-event-service.js.map +1 -1
  193. package/lib/main/browser/menus/menus-contribution-handler.d.ts +29 -29
  194. package/lib/main/browser/menus/menus-contribution-handler.js +194 -194
  195. package/lib/main/browser/menus/plugin-menu-command-adapter.d.ts +43 -43
  196. package/lib/main/browser/menus/plugin-menu-command-adapter.js +279 -279
  197. package/lib/main/browser/menus/vscode-theia-menu-mappings.d.ts +17 -17
  198. package/lib/main/browser/menus/vscode-theia-menu-mappings.js +93 -93
  199. package/lib/main/browser/message-registry-main.d.ts +8 -8
  200. package/lib/main/browser/message-registry-main.js +52 -52
  201. package/lib/main/browser/notification-main.d.ts +18 -18
  202. package/lib/main/browser/notification-main.js +75 -75
  203. package/lib/main/browser/output-channel-registry-main.d.ts +10 -10
  204. package/lib/main/browser/output-channel-registry-main.js +60 -60
  205. package/lib/main/browser/plugin-authentication-service.d.ts +13 -13
  206. package/lib/main/browser/plugin-authentication-service.js +80 -80
  207. package/lib/main/browser/plugin-contribution-handler.d.ts +66 -66
  208. package/lib/main/browser/plugin-contribution-handler.js +580 -580
  209. package/lib/main/browser/plugin-ext-frontend-module.d.ts +7 -7
  210. package/lib/main/browser/plugin-ext-frontend-module.js +216 -216
  211. package/lib/main/browser/plugin-ext-widget.d.ts +28 -28
  212. package/lib/main/browser/plugin-ext-widget.js +129 -129
  213. package/lib/main/browser/plugin-frontend-contribution.d.ts +6 -6
  214. package/lib/main/browser/plugin-frontend-contribution.js +45 -45
  215. package/lib/main/browser/plugin-frontend-view-contribution.d.ts +6 -6
  216. package/lib/main/browser/plugin-frontend-view-contribution.js +50 -50
  217. package/lib/main/browser/plugin-icon-theme-service.d.ts +135 -135
  218. package/lib/main/browser/plugin-icon-theme-service.js +519 -519
  219. package/lib/main/browser/plugin-shared-style.d.ts +36 -36
  220. package/lib/main/browser/plugin-shared-style.js +126 -126
  221. package/lib/main/browser/plugin-storage.d.ts +13 -13
  222. package/lib/main/browser/plugin-storage.js +46 -46
  223. package/lib/main/browser/plugin-terminal-registry.d.ts +4 -4
  224. package/lib/main/browser/plugin-terminal-registry.js +34 -34
  225. package/lib/main/browser/preference-registry-main.d.ts +19 -19
  226. package/lib/main/browser/preference-registry-main.js +104 -104
  227. package/lib/main/browser/quick-open-main.d.ts +31 -31
  228. package/lib/main/browser/quick-open-main.js +274 -274
  229. package/lib/main/browser/scm-main.d.ts +100 -100
  230. package/lib/main/browser/scm-main.js +330 -330
  231. package/lib/main/browser/secrets-main.d.ts +12 -12
  232. package/lib/main/browser/secrets-main.js +67 -67
  233. package/lib/main/browser/selection-provider-command.d.ts +12 -12
  234. package/lib/main/browser/selection-provider-command.js +57 -57
  235. package/lib/main/browser/status-bar-message-registry-main.d.ts +16 -16
  236. package/lib/main/browser/status-bar-message-registry-main.js +55 -55
  237. package/lib/main/browser/tabs/tabs-main.d.ts +40 -40
  238. package/lib/main/browser/tabs/tabs-main.js +282 -282
  239. package/lib/main/browser/tasks-main.d.ts +33 -33
  240. package/lib/main/browser/tasks-main.js +205 -205
  241. package/lib/main/browser/terminal-main.d.ts +49 -49
  242. package/lib/main/browser/terminal-main.js +268 -268
  243. package/lib/main/browser/text-editor-main.d.ts +47 -47
  244. package/lib/main/browser/text-editor-main.js +374 -374
  245. package/lib/main/browser/text-editor-model-service.d.ts +28 -28
  246. package/lib/main/browser/text-editor-model-service.js +108 -108
  247. package/lib/main/browser/text-editors-main.d.ts +38 -38
  248. package/lib/main/browser/text-editors-main.js +158 -158
  249. package/lib/main/browser/theme-icon-override.d.ts +1 -1
  250. package/lib/main/browser/theme-icon-override.js +247 -247
  251. package/lib/main/browser/theming-main.d.ts +9 -9
  252. package/lib/main/browser/theming-main.js +35 -35
  253. package/lib/main/browser/timeline-main.d.ts +13 -13
  254. package/lib/main/browser/timeline-main.js +46 -46
  255. package/lib/main/browser/view/dnd-file-content-store.d.ts +7 -7
  256. package/lib/main/browser/view/dnd-file-content-store.js +51 -51
  257. package/lib/main/browser/view/plugin-tree-view-node-label-provider.d.ts +11 -11
  258. package/lib/main/browser/view/plugin-tree-view-node-label-provider.js +90 -90
  259. package/lib/main/browser/view/plugin-view-registry.d.ts +106 -106
  260. package/lib/main/browser/view/plugin-view-registry.js +836 -836
  261. package/lib/main/browser/view/plugin-view-widget.d.ts +50 -50
  262. package/lib/main/browser/view/plugin-view-widget.js +166 -166
  263. package/lib/main/browser/view/tree-view-decorator-service.d.ts +30 -30
  264. package/lib/main/browser/view/tree-view-decorator-service.js +68 -68
  265. package/lib/main/browser/view/tree-view-widget.d.ts +160 -160
  266. package/lib/main/browser/view/tree-view-widget.js +761 -761
  267. package/lib/main/browser/view/tree-views-main.d.ts +31 -31
  268. package/lib/main/browser/view/tree-views-main.js +163 -163
  269. package/lib/main/browser/view/view-context-key-service.d.ts +30 -30
  270. package/lib/main/browser/view/view-context-key-service.js +84 -84
  271. package/lib/main/browser/view-column-service.d.ts +23 -23
  272. package/lib/main/browser/view-column-service.js +129 -129
  273. package/lib/main/browser/webview/webview-environment.d.ts +15 -15
  274. package/lib/main/browser/webview/webview-environment.js +93 -93
  275. package/lib/main/browser/webview/webview-frontend-security-warnings.d.ts +11 -11
  276. package/lib/main/browser/webview/webview-frontend-security-warnings.js +73 -73
  277. package/lib/main/browser/webview/webview-preferences.d.ts +12 -12
  278. package/lib/main/browser/webview/webview-preferences.js +57 -57
  279. package/lib/main/browser/webview/webview-resource-cache.d.ts +17 -17
  280. package/lib/main/browser/webview/webview-resource-cache.js +90 -90
  281. package/lib/main/browser/webview/webview-theme-data-provider.d.ts +30 -30
  282. package/lib/main/browser/webview/webview-theme-data-provider.js +132 -132
  283. package/lib/main/browser/webview/webview-widget-factory.d.ts +8 -8
  284. package/lib/main/browser/webview/webview-widget-factory.js +38 -38
  285. package/lib/main/browser/webview/webview.d.ts +130 -130
  286. package/lib/main/browser/webview/webview.js +549 -549
  287. package/lib/main/browser/webview-views/webview-views-main.d.ts +30 -30
  288. package/lib/main/browser/webview-views/webview-views-main.js +126 -126
  289. package/lib/main/browser/webview-views/webview-views.d.ts +14 -14
  290. package/lib/main/browser/webview-views/webview-views.js +22 -22
  291. package/lib/main/browser/webviews-main.d.ts +39 -39
  292. package/lib/main/browser/webviews-main.js +231 -231
  293. package/lib/main/browser/window-state-main.d.ts +16 -16
  294. package/lib/main/browser/window-state-main.js +61 -61
  295. package/lib/main/browser/workspace-main.d.ts +69 -69
  296. package/lib/main/browser/workspace-main.js +316 -316
  297. package/lib/main/common/plugin-paths-protocol.d.ts +8 -8
  298. package/lib/main/common/plugin-paths-protocol.js +21 -21
  299. package/lib/main/common/plugin-theia-environment.d.ts +7 -7
  300. package/lib/main/common/plugin-theia-environment.js +47 -47
  301. package/lib/main/common/webview-protocol.d.ts +12 -12
  302. package/lib/main/common/webview-protocol.js +31 -31
  303. package/lib/main/electron-browser/plugin-ext-frontend-electron-module.d.ts +3 -3
  304. package/lib/main/electron-browser/plugin-ext-frontend-electron-module.js +25 -25
  305. package/lib/main/electron-browser/webview/electron-webview-widget-factory.d.ts +22 -22
  306. package/lib/main/electron-browser/webview/electron-webview-widget-factory.js +64 -64
  307. package/lib/main/node/handlers/plugin-theia-directory-handler.d.ts +10 -10
  308. package/lib/main/node/handlers/plugin-theia-directory-handler.js +113 -113
  309. package/lib/main/node/handlers/plugin-theia-file-handler.d.ts +9 -9
  310. package/lib/main/node/handlers/plugin-theia-file-handler.js +66 -66
  311. package/lib/main/node/paths/const.d.ts +5 -5
  312. package/lib/main/node/paths/const.js +24 -24
  313. package/lib/main/node/paths/plugin-paths-service.d.ts +23 -23
  314. package/lib/main/node/paths/plugin-paths-service.js +169 -169
  315. package/lib/main/node/plugin-cli-contribution.d.ts +21 -21
  316. package/lib/main/node/plugin-cli-contribution.js +84 -84
  317. package/lib/main/node/plugin-deployer-contribution.d.ts +8 -8
  318. package/lib/main/node/plugin-deployer-contribution.js +47 -47
  319. package/lib/main/node/plugin-deployer-directory-handler-context-impl.d.ts +7 -7
  320. package/lib/main/node/plugin-deployer-directory-handler-context-impl.js +44 -44
  321. package/lib/main/node/plugin-deployer-entry-impl.d.ts +34 -34
  322. package/lib/main/node/plugin-deployer-entry-impl.js +109 -109
  323. package/lib/main/node/plugin-deployer-file-handler-context-impl.d.ts +7 -7
  324. package/lib/main/node/plugin-deployer-file-handler-context-impl.js +31 -31
  325. package/lib/main/node/plugin-deployer-impl.d.ts +61 -61
  326. package/lib/main/node/plugin-deployer-impl.js +341 -341
  327. package/lib/main/node/plugin-deployer-proxy-entry-impl.d.ts +29 -29
  328. package/lib/main/node/plugin-deployer-proxy-entry-impl.js +98 -98
  329. package/lib/main/node/plugin-deployer-resolver-context-impl.d.ts +15 -15
  330. package/lib/main/node/plugin-deployer-resolver-context-impl.js +42 -42
  331. package/lib/main/node/plugin-ext-backend-module.d.ts +2 -2
  332. package/lib/main/node/plugin-ext-backend-module.js +70 -70
  333. package/lib/main/node/plugin-github-resolver.d.ts +21 -21
  334. package/lib/main/node/plugin-github-resolver.js +142 -142
  335. package/lib/main/node/plugin-http-resolver.d.ts +18 -18
  336. package/lib/main/node/plugin-http-resolver.js +91 -91
  337. package/lib/main/node/plugin-localization-backend-contribution.d.ts +9 -9
  338. package/lib/main/node/plugin-localization-backend-contribution.js +58 -58
  339. package/lib/main/node/plugin-server-handler.d.ts +16 -16
  340. package/lib/main/node/plugin-server-handler.js +74 -74
  341. package/lib/main/node/plugin-service.d.ts +19 -19
  342. package/lib/main/node/plugin-service.js +91 -91
  343. package/lib/main/node/plugin-theia-deployer-participant.d.ts +6 -6
  344. package/lib/main/node/plugin-theia-deployer-participant.js +43 -43
  345. package/lib/main/node/plugin-uninstallation-manager.d.ts +14 -14
  346. package/lib/main/node/plugin-uninstallation-manager.js +84 -84
  347. package/lib/main/node/plugins-key-value-storage.d.ts +15 -15
  348. package/lib/main/node/plugins-key-value-storage.js +128 -128
  349. package/lib/main/node/resolvers/local-directory-plugin-deployer-resolver.d.ts +7 -7
  350. package/lib/main/node/resolvers/local-directory-plugin-deployer-resolver.js +43 -43
  351. package/lib/main/node/resolvers/local-plugin-deployer-resolver.d.ts +8 -8
  352. package/lib/main/node/resolvers/local-plugin-deployer-resolver.js +59 -59
  353. package/lib/main/node/temp-dir-util.d.ts +1 -1
  354. package/lib/main/node/temp-dir-util.js +30 -30
  355. package/lib/main/node/webview-backend-security-warnings.d.ts +5 -5
  356. package/lib/main/node/webview-backend-security-warnings.js +51 -51
  357. package/lib/plugin/authentication-ext.d.ts +34 -34
  358. package/lib/plugin/authentication-ext.js +94 -94
  359. package/lib/plugin/clipboard-ext.d.ts +9 -9
  360. package/lib/plugin/clipboard-ext.js +31 -31
  361. package/lib/plugin/command-registry.d.ts +43 -43
  362. package/lib/plugin/command-registry.js +176 -176
  363. package/lib/plugin/comments.d.ts +89 -89
  364. package/lib/plugin/comments.js +368 -368
  365. package/lib/plugin/custom-editors.d.ts +47 -47
  366. package/lib/plugin/custom-editors.js +255 -255
  367. package/lib/plugin/debug/debug-ext.d.ts +86 -86
  368. package/lib/plugin/debug/debug-ext.js +391 -391
  369. package/lib/plugin/debug/plugin-debug-adapter-creator.d.ts +10 -10
  370. package/lib/plugin/debug/plugin-debug-adapter-creator.js +41 -41
  371. package/lib/plugin/debug/plugin-debug-adapter-session.d.ts +26 -26
  372. package/lib/plugin/debug/plugin-debug-adapter-session.js +96 -96
  373. package/lib/plugin/debug/plugin-debug-adapter-tracker.d.ts +12 -12
  374. package/lib/plugin/debug/plugin-debug-adapter-tracker.js +77 -77
  375. package/lib/plugin/decorations.d.ts +14 -14
  376. package/lib/plugin/decorations.js +112 -112
  377. package/lib/plugin/dialogs.d.ts +10 -10
  378. package/lib/plugin/dialogs.js +91 -91
  379. package/lib/plugin/document-data.d.ts +38 -38
  380. package/lib/plugin/document-data.js +309 -309
  381. package/lib/plugin/documents.d.ts +56 -56
  382. package/lib/plugin/documents.js +253 -253
  383. package/lib/plugin/editors-and-documents.d.ts +26 -26
  384. package/lib/plugin/editors-and-documents.js +137 -137
  385. package/lib/plugin/env.d.ts +42 -42
  386. package/lib/plugin/env.js +101 -101
  387. package/lib/plugin/file-system-event-service-ext-impl.d.ts +40 -40
  388. package/lib/plugin/file-system-event-service-ext-impl.js +203 -203
  389. package/lib/plugin/file-system-ext-impl.d.ts +50 -50
  390. package/lib/plugin/file-system-ext-impl.js +354 -354
  391. package/lib/plugin/known-commands.d.ts +5 -5
  392. package/lib/plugin/known-commands.js +386 -386
  393. package/lib/plugin/known-commands.spec.d.ts +1 -1
  394. package/lib/plugin/known-commands.spec.js +42 -42
  395. package/lib/plugin/label-service.d.ts +11 -11
  396. package/lib/plugin/label-service.js +35 -35
  397. package/lib/plugin/languages/call-hierarchy.d.ts +20 -20
  398. package/lib/plugin/languages/call-hierarchy.js +101 -101
  399. package/lib/plugin/languages/code-action.d.ts +24 -24
  400. package/lib/plugin/languages/code-action.js +137 -137
  401. package/lib/plugin/languages/color.d.ts +12 -12
  402. package/lib/plugin/languages/color.js +58 -58
  403. package/lib/plugin/languages/completion.d.ts +20 -20
  404. package/lib/plugin/languages/completion.js +161 -161
  405. package/lib/plugin/languages/declaration.d.ts +11 -11
  406. package/lib/plugin/languages/declaration.js +58 -58
  407. package/lib/plugin/languages/definition.d.ts +11 -11
  408. package/lib/plugin/languages/definition.js +58 -58
  409. package/lib/plugin/languages/diagnostics.d.ts +49 -49
  410. package/lib/plugin/languages/diagnostics.js +281 -281
  411. package/lib/plugin/languages/document-formatting.d.ts +10 -10
  412. package/lib/plugin/languages/document-formatting.js +40 -40
  413. package/lib/plugin/languages/document-highlight.d.ts +12 -12
  414. package/lib/plugin/languages/document-highlight.js +50 -50
  415. package/lib/plugin/languages/evaluatable-expression.d.ts +11 -11
  416. package/lib/plugin/languages/evaluatable-expression.js +40 -40
  417. package/lib/plugin/languages/folding.d.ts +10 -10
  418. package/lib/plugin/languages/folding.js +39 -39
  419. package/lib/plugin/languages/hover.d.ts +11 -11
  420. package/lib/plugin/languages/hover.js +48 -48
  421. package/lib/plugin/languages/implementation.d.ts +11 -11
  422. package/lib/plugin/languages/implementation.js +58 -58
  423. package/lib/plugin/languages/inlay-hints.d.ts +19 -19
  424. package/lib/plugin/languages/inlay-hints.js +127 -127
  425. package/lib/plugin/languages/inline-completion.d.ts +20 -20
  426. package/lib/plugin/languages/inline-completion.js +93 -93
  427. package/lib/plugin/languages/inline-values.d.ts +10 -10
  428. package/lib/plugin/languages/inline-values.js +44 -44
  429. package/lib/plugin/languages/lens.d.ts +19 -19
  430. package/lib/plugin/languages/lens.js +89 -89
  431. package/lib/plugin/languages/link-provider.d.ts +14 -14
  432. package/lib/plugin/languages/link-provider.js +71 -71
  433. package/lib/plugin/languages/linked-editing-range.d.ts +11 -11
  434. package/lib/plugin/languages/linked-editing-range.js +40 -40
  435. package/lib/plugin/languages/on-type-formatting.d.ts +11 -11
  436. package/lib/plugin/languages/on-type-formatting.js +41 -41
  437. package/lib/plugin/languages/outline.d.ts +20 -20
  438. package/lib/plugin/languages/outline.js +115 -115
  439. package/lib/plugin/languages/range-formatting.d.ts +10 -10
  440. package/lib/plugin/languages/range-formatting.js +41 -41
  441. package/lib/plugin/languages/reference.d.ts +11 -11
  442. package/lib/plugin/languages/reference.js +47 -47
  443. package/lib/plugin/languages/rename.d.ts +14 -14
  444. package/lib/plugin/languages/rename.js +114 -114
  445. package/lib/plugin/languages/selection-range.d.ts +11 -11
  446. package/lib/plugin/languages/selection-range.js +65 -65
  447. package/lib/plugin/languages/semantic-highlighting.d.ts +28 -28
  448. package/lib/plugin/languages/semantic-highlighting.js +175 -175
  449. package/lib/plugin/languages/signature.d.ts +15 -15
  450. package/lib/plugin/languages/signature.js +71 -71
  451. package/lib/plugin/languages/type-definition.d.ts +11 -11
  452. package/lib/plugin/languages/type-definition.js +58 -58
  453. package/lib/plugin/languages/type-hierarchy.d.ts +18 -18
  454. package/lib/plugin/languages/type-hierarchy.js +95 -95
  455. package/lib/plugin/languages/util.d.ts +4 -4
  456. package/lib/plugin/languages/util.js +27 -27
  457. package/lib/plugin/languages/workspace-symbol.d.ts +8 -8
  458. package/lib/plugin/languages/workspace-symbol.js +61 -61
  459. package/lib/plugin/languages-utils.d.ts +5 -5
  460. package/lib/plugin/languages-utils.js +52 -52
  461. package/lib/plugin/languages.d.ts +118 -118
  462. package/lib/plugin/languages.js +679 -679
  463. package/lib/plugin/markdown-string.d.ts +24 -24
  464. package/lib/plugin/markdown-string.js +124 -124
  465. package/lib/plugin/message-registry.d.ts +8 -8
  466. package/lib/plugin/message-registry.js +60 -60
  467. package/lib/plugin/node/debug/debug.spec.d.ts +1 -1
  468. package/lib/plugin/node/debug/debug.spec.js +67 -67
  469. package/lib/plugin/node/debug/plugin-node-debug-adapter-creator.d.ts +17 -17
  470. package/lib/plugin/node/debug/plugin-node-debug-adapter-creator.js +154 -154
  471. package/lib/plugin/node/env-node-ext.d.ts +21 -21
  472. package/lib/plugin/node/env-node-ext.js +63 -63
  473. package/lib/plugin/notification.d.ts +17 -17
  474. package/lib/plugin/notification.js +67 -67
  475. package/lib/plugin/output-channel/output-channel-item.d.ts +17 -17
  476. package/lib/plugin/output-channel/output-channel-item.js +51 -51
  477. package/lib/plugin/output-channel-registry.d.ts +8 -8
  478. package/lib/plugin/output-channel-registry.js +35 -35
  479. package/lib/plugin/path.d.ts +2 -2
  480. package/lib/plugin/path.js +59 -59
  481. package/lib/plugin/path.spec.d.ts +1 -1
  482. package/lib/plugin/path.spec.js +34 -34
  483. package/lib/plugin/plugin-context.d.ts +56 -56
  484. package/lib/plugin/plugin-context.js +1072 -1072
  485. package/lib/plugin/plugin-icon-path.d.ts +11 -11
  486. package/lib/plugin/plugin-icon-path.js +49 -49
  487. package/lib/plugin/plugin-manager.d.ts +80 -80
  488. package/lib/plugin/plugin-manager.js +366 -366
  489. package/lib/plugin/plugin-storage.d.ts +36 -36
  490. package/lib/plugin/plugin-storage.js +99 -99
  491. package/lib/plugin/preference-registry.d.ts +36 -36
  492. package/lib/plugin/preference-registry.js +295 -295
  493. package/lib/plugin/preference-registry.spec.d.ts +1 -1
  494. package/lib/plugin/preference-registry.spec.js +251 -251
  495. package/lib/plugin/prefix-sum-computer.d.ts +30 -30
  496. package/lib/plugin/prefix-sum-computer.js +172 -172
  497. package/lib/plugin/quick-open.d.ts +202 -202
  498. package/lib/plugin/quick-open.js +637 -637
  499. package/lib/plugin/scm.d.ts +53 -53
  500. package/lib/plugin/scm.js +713 -713
  501. package/lib/plugin/secrets-ext.d.ts +30 -30
  502. package/lib/plugin/secrets-ext.js +68 -68
  503. package/lib/plugin/status-bar/status-bar-item.d.ts +44 -44
  504. package/lib/plugin/status-bar/status-bar-item.js +122 -122
  505. package/lib/plugin/status-bar-message-registry.d.ts +20 -20
  506. package/lib/plugin/status-bar-message-registry.js +84 -84
  507. package/lib/plugin/stubs/tests-api.d.ts +22 -22
  508. package/lib/plugin/stubs/tests-api.js +66 -66
  509. package/lib/plugin/tabs.d.ts +22 -22
  510. package/lib/plugin/tabs.js +358 -358
  511. package/lib/plugin/tasks/task-provider.d.ts +8 -8
  512. package/lib/plugin/tasks/task-provider.js +56 -56
  513. package/lib/plugin/tasks/tasks.d.ts +45 -45
  514. package/lib/plugin/tasks/tasks.js +210 -210
  515. package/lib/plugin/terminal-ext.d.ts +101 -101
  516. package/lib/plugin/terminal-ext.js +422 -422
  517. package/lib/plugin/text-editor.d.ts +100 -100
  518. package/lib/plugin/text-editor.js +409 -409
  519. package/lib/plugin/text-editors.d.ts +37 -37
  520. package/lib/plugin/text-editors.js +126 -126
  521. package/lib/plugin/theming.d.ts +15 -15
  522. package/lib/plugin/theming.js +61 -61
  523. package/lib/plugin/timeline.d.ts +20 -20
  524. package/lib/plugin/timeline.js +152 -152
  525. package/lib/plugin/tree/tree-views.d.ts +93 -93
  526. package/lib/plugin/tree/tree-views.js +523 -523
  527. package/lib/plugin/type-converters.d.ts +131 -131
  528. package/lib/plugin/type-converters.js +1292 -1292
  529. package/lib/plugin/type-converters.spec.d.ts +1 -1
  530. package/lib/plugin/type-converters.spec.js +391 -391
  531. package/lib/plugin/types-impl.d.ts +1464 -1464
  532. package/lib/plugin/types-impl.d.ts.map +1 -1
  533. package/lib/plugin/types-impl.js +2956 -2953
  534. package/lib/plugin/types-impl.js.map +1 -1
  535. package/lib/plugin/types-impl.spec.d.ts +1 -1
  536. package/lib/plugin/types-impl.spec.js +78 -78
  537. package/lib/plugin/webview-views.d.ts +52 -52
  538. package/lib/plugin/webview-views.js +144 -144
  539. package/lib/plugin/webviews.d.ts +95 -95
  540. package/lib/plugin/webviews.js +340 -340
  541. package/lib/plugin/window-state.d.ts +16 -16
  542. package/lib/plugin/window-state.js +55 -55
  543. package/lib/plugin/word-helper.d.ts +21 -21
  544. package/lib/plugin/word-helper.js +125 -125
  545. package/lib/plugin/workspace.d.ts +53 -53
  546. package/lib/plugin/workspace.js +371 -371
  547. package/lib/plugin-ext-backend-electron-module.d.ts +3 -3
  548. package/lib/plugin-ext-backend-electron-module.js +24 -24
  549. package/lib/plugin-ext-backend-module.d.ts +3 -3
  550. package/lib/plugin-ext-backend-module.js +24 -24
  551. package/lib/plugin-ext-frontend-electron-module.d.ts +2 -2
  552. package/lib/plugin-ext-frontend-electron-module.js +19 -19
  553. package/lib/plugin-ext-frontend-module.d.ts +2 -2
  554. package/lib/plugin-ext-frontend-module.js +19 -19
  555. package/package.json +27 -27
  556. package/src/common/arrays.ts +54 -54
  557. package/src/common/assert.ts +23 -23
  558. package/src/common/cache.ts +51 -51
  559. package/src/common/character-classifier.ts +73 -73
  560. package/src/common/collections.ts +37 -37
  561. package/src/common/connection.ts +137 -137
  562. package/src/common/disposable-util.ts +39 -39
  563. package/src/common/editor-options.ts +74 -74
  564. package/src/common/env.ts +19 -19
  565. package/src/common/errors.ts +37 -37
  566. package/src/common/id-generator.ts +26 -26
  567. package/src/common/index.ts +24 -24
  568. package/src/common/link-computer.ts +354 -354
  569. package/src/common/object-identifier.ts +33 -33
  570. package/src/common/objects.ts +50 -50
  571. package/src/common/paths-util.ts +158 -158
  572. package/src/common/plugin-api-rpc-model.ts +864 -864
  573. package/src/common/plugin-api-rpc.ts +2202 -2202
  574. package/src/common/plugin-ext-api-contribution.ts +82 -82
  575. package/src/common/plugin-identifiers.ts +84 -84
  576. package/src/common/plugin-protocol.ts +987 -987
  577. package/src/common/proxy-handler.ts +126 -126
  578. package/src/common/reference-map.ts +38 -38
  579. package/src/common/rpc-protocol.ts +272 -272
  580. package/src/common/semantic-tokens-dto.ts +182 -182
  581. package/src/common/types.ts +129 -129
  582. package/src/common/uint.ts +37 -37
  583. package/src/common/uri-components.ts +85 -85
  584. package/src/hosted/browser/hosted-plugin-watcher.ts +54 -54
  585. package/src/hosted/browser/hosted-plugin.ts +830 -830
  586. package/src/hosted/browser/plugin-worker.ts +52 -52
  587. package/src/hosted/browser/worker/debug-stub.ts +28 -28
  588. package/src/hosted/browser/worker/plugin-manifest-loader.ts +114 -114
  589. package/src/hosted/browser/worker/worker-env-ext.ts +41 -41
  590. package/src/hosted/browser/worker/worker-main.ts +221 -221
  591. package/src/hosted/node/hosted-plugin-cli-contribution.ts +75 -75
  592. package/src/hosted/node/hosted-plugin-deployer-handler.ts +261 -261
  593. package/src/hosted/node/hosted-plugin-localization-service.ts +254 -254
  594. package/src/hosted/node/hosted-plugin-process.ts +248 -248
  595. package/src/hosted/node/hosted-plugin-protocol.ts +49 -49
  596. package/src/hosted/node/hosted-plugin.ts +116 -116
  597. package/src/hosted/node/metadata-scanner.ts +64 -64
  598. package/src/hosted/node/plugin-ext-hosted-backend-module.ts +80 -80
  599. package/src/hosted/node/plugin-host-proxy.ts +80 -80
  600. package/src/hosted/node/plugin-host-rpc.ts +245 -245
  601. package/src/hosted/node/plugin-host.ts +108 -108
  602. package/src/hosted/node/plugin-manifest-loader.ts +31 -31
  603. package/src/hosted/node/plugin-reader.ts +131 -131
  604. package/src/hosted/node/plugin-service.ts +175 -175
  605. package/src/hosted/node/scanners/backend-init-theia.ts +71 -71
  606. package/src/hosted/node/scanners/file-plugin-uri-factory.ts +32 -32
  607. package/src/hosted/node/scanners/grammars-reader.ts +56 -56
  608. package/src/hosted/node/scanners/plugin-uri-factory.ts +33 -33
  609. package/src/hosted/node/scanners/scanner-theia.ts +938 -938
  610. package/src/hosted/node-electron/plugin-ext-hosted-electron-backend-module.ts +26 -26
  611. package/src/hosted/node-electron/scanner-theia-electron.ts +32 -32
  612. package/src/main/browser/authentication-main.ts +369 -369
  613. package/src/main/browser/clipboard-main.ts +38 -38
  614. package/src/main/browser/command-registry-main.ts +110 -110
  615. package/src/main/browser/commands.ts +104 -104
  616. package/src/main/browser/comments/comment-glyph-widget.ts +66 -66
  617. package/src/main/browser/comments/comment-thread-widget.tsx +691 -691
  618. package/src/main/browser/comments/comments-context-key-service.ts +68 -68
  619. package/src/main/browser/comments/comments-contribution.ts +264 -264
  620. package/src/main/browser/comments/comments-decorator.ts +110 -110
  621. package/src/main/browser/comments/comments-main.ts +465 -465
  622. package/src/main/browser/comments/comments-service.ts +205 -205
  623. package/src/main/browser/custom-editors/custom-editor-contribution.ts +38 -38
  624. package/src/main/browser/custom-editors/custom-editor-opener.tsx +105 -105
  625. package/src/main/browser/custom-editors/custom-editor-service.ts +108 -108
  626. package/src/main/browser/custom-editors/custom-editor-widget-factory.ts +44 -44
  627. package/src/main/browser/custom-editors/custom-editor-widget.ts +127 -127
  628. package/src/main/browser/custom-editors/custom-editors-main.ts +606 -606
  629. package/src/main/browser/custom-editors/plugin-custom-editor-registry.ts +142 -142
  630. package/src/main/browser/custom-editors/undo-redo-service.ts +120 -120
  631. package/src/main/browser/debug/debug-main.ts +373 -373
  632. package/src/main/browser/debug/plugin-debug-adapter-contribution.ts +48 -48
  633. package/src/main/browser/debug/plugin-debug-configuration-provider.ts +63 -63
  634. package/src/main/browser/debug/plugin-debug-service.ts +338 -338
  635. package/src/main/browser/debug/plugin-debug-session-contribution-registry.ts +76 -76
  636. package/src/main/browser/debug/plugin-debug-session-factory.ts +105 -105
  637. package/src/main/browser/decorations/decorations-main.ts +146 -146
  638. package/src/main/browser/dialogs/modal-notification.ts +110 -110
  639. package/src/main/browser/dialogs/style/modal-notification.css +123 -123
  640. package/src/main/browser/dialogs-main.ts +185 -185
  641. package/src/main/browser/documents-main.ts +289 -289
  642. package/src/main/browser/editors-and-documents-main.ts +394 -394
  643. package/src/main/browser/env-main.ts +87 -87
  644. package/src/main/browser/file-system-main-impl.ts +263 -263
  645. package/src/main/browser/hierarchy/hierarchy-types-converters.ts +189 -189
  646. package/src/main/browser/keybindings/keybindings-contribution-handler.ts +66 -66
  647. package/src/main/browser/label-service-main.ts +51 -51
  648. package/src/main/browser/languages-main.ts +1387 -1387
  649. package/src/main/browser/main-context.ts +187 -187
  650. package/src/main/browser/main-file-system-event-service.ts +76 -79
  651. package/src/main/browser/menus/menus-contribution-handler.ts +162 -162
  652. package/src/main/browser/menus/plugin-menu-command-adapter.ts +264 -264
  653. package/src/main/browser/menus/vscode-theia-menu-mappings.ts +91 -91
  654. package/src/main/browser/message-registry-main.ts +56 -56
  655. package/src/main/browser/notification-main.ts +86 -86
  656. package/src/main/browser/output-channel-registry-main.ts +53 -53
  657. package/src/main/browser/plugin-authentication-service.ts +71 -71
  658. package/src/main/browser/plugin-contribution-handler.ts +609 -609
  659. package/src/main/browser/plugin-ext-frontend-module.ts +249 -249
  660. package/src/main/browser/plugin-ext-widget.tsx +132 -132
  661. package/src/main/browser/plugin-frontend-contribution.ts +35 -35
  662. package/src/main/browser/plugin-frontend-view-contribution.ts +38 -38
  663. package/src/main/browser/plugin-icon-theme-service.ts +585 -585
  664. package/src/main/browser/plugin-shared-style.ts +133 -133
  665. package/src/main/browser/plugin-storage.ts +55 -55
  666. package/src/main/browser/plugin-terminal-registry.ts +27 -27
  667. package/src/main/browser/preference-registry-main.ts +123 -123
  668. package/src/main/browser/quick-open-main.ts +324 -324
  669. package/src/main/browser/scm-main.ts +453 -453
  670. package/src/main/browser/secrets-main.ts +82 -82
  671. package/src/main/browser/selection-provider-command.ts +46 -46
  672. package/src/main/browser/status-bar-message-registry-main.ts +90 -90
  673. package/src/main/browser/style/comments.css +345 -345
  674. package/src/main/browser/style/index.css +85 -85
  675. package/src/main/browser/style/plugin-sidebar.css +73 -73
  676. package/src/main/browser/style/test.svg +13 -13
  677. package/src/main/browser/style/tree.css +52 -52
  678. package/src/main/browser/style/webview.css +53 -53
  679. package/src/main/browser/tabs/tabs-main.ts +323 -323
  680. package/src/main/browser/tasks-main.ts +268 -268
  681. package/src/main/browser/terminal-main.ts +301 -301
  682. package/src/main/browser/text-editor-main.ts +463 -463
  683. package/src/main/browser/text-editor-model-service.ts +102 -102
  684. package/src/main/browser/text-editors-main.ts +206 -206
  685. package/src/main/browser/theme-icon-override.ts +252 -252
  686. package/src/main/browser/theming-main.ts +42 -42
  687. package/src/main/browser/timeline-main.ts +80 -80
  688. package/src/main/browser/view/dnd-file-content-store.ts +42 -42
  689. package/src/main/browser/view/plugin-tree-view-node-label-provider.ts +81 -81
  690. package/src/main/browser/view/plugin-view-registry.ts +885 -885
  691. package/src/main/browser/view/plugin-view-widget.ts +173 -173
  692. package/src/main/browser/view/tree-view-decorator-service.ts +51 -51
  693. package/src/main/browser/view/tree-view-widget.tsx +859 -859
  694. package/src/main/browser/view/tree-views-main.ts +191 -191
  695. package/src/main/browser/view/view-context-key-service.ts +77 -77
  696. package/src/main/browser/view-column-service.ts +125 -125
  697. package/src/main/browser/webview/pre/fake.html +14 -14
  698. package/src/main/browser/webview/pre/host.js +130 -130
  699. package/src/main/browser/webview/pre/index.html +17 -17
  700. package/src/main/browser/webview/pre/main.js +632 -632
  701. package/src/main/browser/webview/pre/service-worker.js +295 -295
  702. package/src/main/browser/webview/webview-environment.ts +83 -83
  703. package/src/main/browser/webview/webview-frontend-security-warnings.ts +59 -59
  704. package/src/main/browser/webview/webview-preferences.ts +72 -72
  705. package/src/main/browser/webview/webview-resource-cache.ts +88 -88
  706. package/src/main/browser/webview/webview-theme-data-provider.ts +124 -124
  707. package/src/main/browser/webview/webview-widget-factory.ts +43 -43
  708. package/src/main/browser/webview/webview.ts +629 -629
  709. package/src/main/browser/webview-views/webview-views-main.ts +142 -142
  710. package/src/main/browser/webview-views/webview-views.ts +38 -38
  711. package/src/main/browser/webviews-main.ts +269 -269
  712. package/src/main/browser/window-state-main.ts +76 -76
  713. package/src/main/browser/workspace-main.ts +383 -383
  714. package/src/main/common/plugin-paths-protocol.ts +26 -26
  715. package/src/main/common/plugin-theia-environment.ts +36 -36
  716. package/src/main/common/webview-protocol.ts +28 -28
  717. package/src/main/electron-browser/plugin-ext-frontend-electron-module.ts +25 -25
  718. package/src/main/electron-browser/webview/electron-webview-widget-factory.ts +70 -70
  719. package/src/main/node/handlers/plugin-theia-directory-handler.ts +105 -105
  720. package/src/main/node/handlers/plugin-theia-file-handler.ts +54 -54
  721. package/src/main/node/paths/const.ts +21 -21
  722. package/src/main/node/paths/plugin-paths-service.ts +170 -170
  723. package/src/main/node/plugin-cli-contribution.ts +85 -85
  724. package/src/main/node/plugin-deployer-contribution.ts +34 -34
  725. package/src/main/node/plugin-deployer-directory-handler-context-impl.ts +45 -45
  726. package/src/main/node/plugin-deployer-entry-impl.ts +130 -130
  727. package/src/main/node/plugin-deployer-file-handler-context-impl.ts +33 -33
  728. package/src/main/node/plugin-deployer-impl.ts +367 -367
  729. package/src/main/node/plugin-deployer-proxy-entry-impl.ts +96 -96
  730. package/src/main/node/plugin-deployer-resolver-context-impl.ts +55 -55
  731. package/src/main/node/plugin-ext-backend-module.ts +93 -93
  732. package/src/main/node/plugin-github-resolver.ts +148 -148
  733. package/src/main/node/plugin-http-resolver.ts +91 -91
  734. package/src/main/node/plugin-localization-backend-contribution.ts +42 -42
  735. package/src/main/node/plugin-server-handler.ts +69 -69
  736. package/src/main/node/plugin-service.ts +82 -82
  737. package/src/main/node/plugin-theia-deployer-participant.ts +32 -32
  738. package/src/main/node/plugin-uninstallation-manager.ts +74 -74
  739. package/src/main/node/plugins-key-value-storage.ts +117 -117
  740. package/src/main/node/resolvers/local-directory-plugin-deployer-resolver.ts +37 -37
  741. package/src/main/node/resolvers/local-plugin-deployer-resolver.ts +56 -56
  742. package/src/main/node/temp-dir-util.ts +27 -27
  743. package/src/main/node/webview-backend-security-warnings.ts +45 -45
  744. package/src/main/style/status-bar.css +35 -35
  745. package/src/plugin/authentication-ext.ts +125 -125
  746. package/src/plugin/clipboard-ext.ts +37 -37
  747. package/src/plugin/command-registry.ts +218 -218
  748. package/src/plugin/comments.ts +518 -518
  749. package/src/plugin/custom-editors.ts +336 -336
  750. package/src/plugin/debug/debug-ext.ts +487 -487
  751. package/src/plugin/debug/plugin-debug-adapter-creator.ts +50 -50
  752. package/src/plugin/debug/plugin-debug-adapter-session.ts +106 -106
  753. package/src/plugin/debug/plugin-debug-adapter-tracker.ts +85 -85
  754. package/src/plugin/decorations.ts +140 -140
  755. package/src/plugin/dialogs.ts +96 -96
  756. package/src/plugin/document-data.ts +366 -366
  757. package/src/plugin/documents.ts +283 -283
  758. package/src/plugin/editors-and-documents.ts +170 -170
  759. package/src/plugin/env.ts +134 -134
  760. package/src/plugin/file-system-event-service-ext-impl.ts +256 -256
  761. package/src/plugin/file-system-ext-impl.ts +412 -412
  762. package/src/plugin/known-commands.spec.ts +50 -50
  763. package/src/plugin/known-commands.ts +412 -412
  764. package/src/plugin/label-service.ts +36 -36
  765. package/src/plugin/languages/call-hierarchy.ts +124 -124
  766. package/src/plugin/languages/code-action.ts +162 -162
  767. package/src/plugin/languages/color.ts +75 -75
  768. package/src/plugin/languages/completion.ts +179 -179
  769. package/src/plugin/languages/declaration.ts +72 -72
  770. package/src/plugin/languages/definition.ts +73 -73
  771. package/src/plugin/languages/diagnostics.ts +325 -325
  772. package/src/plugin/languages/document-formatting.ts +47 -47
  773. package/src/plugin/languages/document-highlight.ts +61 -61
  774. package/src/plugin/languages/evaluatable-expression.ts +47 -47
  775. package/src/plugin/languages/folding.ts +46 -46
  776. package/src/plugin/languages/hover.ts +58 -58
  777. package/src/plugin/languages/implementation.ts +73 -73
  778. package/src/plugin/languages/inlay-hints.ts +149 -149
  779. package/src/plugin/languages/inline-completion.ts +126 -126
  780. package/src/plugin/languages/inline-values.ts +50 -50
  781. package/src/plugin/languages/lens.ts +102 -102
  782. package/src/plugin/languages/link-provider.ts +79 -79
  783. package/src/plugin/languages/linked-editing-range.ts +48 -48
  784. package/src/plugin/languages/on-type-formatting.ts +50 -50
  785. package/src/plugin/languages/outline.ts +126 -126
  786. package/src/plugin/languages/range-formatting.ts +48 -48
  787. package/src/plugin/languages/reference.ts +58 -58
  788. package/src/plugin/languages/rename.ts +130 -130
  789. package/src/plugin/languages/selection-range.ts +80 -80
  790. package/src/plugin/languages/semantic-highlighting.ts +211 -211
  791. package/src/plugin/languages/signature.ts +82 -82
  792. package/src/plugin/languages/type-definition.ts +73 -73
  793. package/src/plugin/languages/type-hierarchy.ts +117 -117
  794. package/src/plugin/languages/util.ts +26 -26
  795. package/src/plugin/languages/workspace-symbol.ts +66 -66
  796. package/src/plugin/languages-utils.ts +56 -56
  797. package/src/plugin/languages.ts +969 -969
  798. package/src/plugin/markdown-string.ts +115 -115
  799. package/src/plugin/message-registry.ts +65 -65
  800. package/src/plugin/node/debug/debug.spec.ts +94 -94
  801. package/src/plugin/node/debug/plugin-node-debug-adapter-creator.ts +167 -167
  802. package/src/plugin/node/env-node-ext.ts +69 -69
  803. package/src/plugin/notification.ts +80 -80
  804. package/src/plugin/output-channel/output-channel-item.ts +73 -73
  805. package/src/plugin/output-channel-registry.ts +39 -39
  806. package/src/plugin/path.spec.ts +40 -40
  807. package/src/plugin/path.ts +68 -68
  808. package/src/plugin/plugin-context.ts +1387 -1387
  809. package/src/plugin/plugin-icon-path.ts +50 -50
  810. package/src/plugin/plugin-manager.ts +446 -446
  811. package/src/plugin/plugin-storage.ts +120 -120
  812. package/src/plugin/preference-registry.spec.ts +299 -299
  813. package/src/plugin/preference-registry.ts +337 -337
  814. package/src/plugin/prefix-sum-computer.ts +218 -218
  815. package/src/plugin/quick-open.ts +772 -772
  816. package/src/plugin/scm.ts +910 -910
  817. package/src/plugin/secrets-ext.ts +84 -84
  818. package/src/plugin/status-bar/status-bar-item.ts +193 -193
  819. package/src/plugin/status-bar-message-registry.ts +103 -103
  820. package/src/plugin/stubs/tests-api.ts +96 -96
  821. package/src/plugin/tabs.ts +426 -426
  822. package/src/plugin/tasks/task-provider.ts +60 -60
  823. package/src/plugin/tasks/tasks.ts +247 -247
  824. package/src/plugin/terminal-ext.ts +494 -494
  825. package/src/plugin/text-editor.ts +522 -522
  826. package/src/plugin/text-editors.ts +150 -150
  827. package/src/plugin/theming.ts +73 -73
  828. package/src/plugin/timeline.ts +186 -186
  829. package/src/plugin/tree/tree-views.ts +612 -612
  830. package/src/plugin/type-converters.spec.ts +476 -476
  831. package/src/plugin/type-converters.ts +1350 -1350
  832. package/src/plugin/types-impl.spec.ts +85 -85
  833. package/src/plugin/types-impl.ts +3407 -3404
  834. package/src/plugin/webview-views.ts +213 -213
  835. package/src/plugin/webviews.ts +433 -433
  836. package/src/plugin/window-state.ts +68 -68
  837. package/src/plugin/word-helper.ts +162 -162
  838. package/src/plugin/workspace.ts +448 -448
  839. package/src/plugin-ext-backend-electron-module.ts +24 -24
  840. package/src/plugin-ext-backend-module.ts +24 -24
  841. package/src/plugin-ext-frontend-electron-module.ts +19 -19
  842. package/src/plugin-ext-frontend-module.ts +19 -19
  843. package/src/typings/index.d.ts +25 -25
@@ -1,412 +1,412 @@
1
- // *****************************************************************************
2
- // Copyright (C) 2019 Red Hat, Inc. and others.
3
- //
4
- // This program and the accompanying materials are made available under the
5
- // terms of the Eclipse Public License v. 2.0 which is available at
6
- // http://www.eclipse.org/legal/epl-2.0.
7
- //
8
- // This Source Code may also be made available under the following Secondary
9
- // Licenses when the conditions for such availability set forth in the Eclipse
10
- // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- // with the GNU Classpath Exception which is available at
12
- // https://www.gnu.org/software/classpath/license.html.
13
- //
14
- // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
- // *****************************************************************************
16
-
17
- import { Range as R, Position as P, Location as L } from '@theia/core/shared/vscode-languageserver-protocol';
18
- import * as theia from '@theia/plugin';
19
- import { cloneAndChange } from '../common/objects';
20
- import { Position, Range, Location, CallHierarchyItem, TypeHierarchyItem, URI, TextDocumentShowOptions } from './types-impl';
21
- import {
22
- fromPosition, fromRange, fromLocation,
23
- isModelLocation, toLocation,
24
- isModelCallHierarchyItem, fromCallHierarchyItem, toCallHierarchyItem,
25
- isModelTypeHierarchyItem, fromTypeHierarchyItem, toTypeHierarchyItem,
26
- isModelCallHierarchyIncomingCall, toCallHierarchyIncomingCall,
27
- isModelCallHierarchyOutgoingCall, toCallHierarchyOutgoingCall, fromTextDocumentShowOptions
28
- } from './type-converters';
29
-
30
- // Here is a mapping of VSCode commands to monaco commands with their conversions
31
- export namespace KnownCommands {
32
-
33
- /**
34
- * Commands that you want to apply custom conversions to rather than pass through the automatic args converter.
35
- * Would be useful in the case where theia provides some command and you need to provide custom conversions
36
- */
37
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
38
- const mappings: { [id: string]: [string, (args: any[] | undefined) => any[] | undefined, ((results: any[] | undefined) => any[] | undefined)?] } = {};
39
- mappings['editor.action.showReferences'] = ['textEditor.commands.showReferences', createConversionFunction(
40
- (uri: URI) => uri.toString(),
41
- fromPositionToP,
42
- toArrayConversion(fromLocationToL)),
43
- createConversionFunction()];
44
-
45
- /**
46
- * Mapping of all editor.action commands to their conversion function.
47
- * executeCommand<T> inside of the plugin command registry will automatically convert
48
- * incoming arguments from vscode api types to monaco types
49
- */
50
-
51
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
52
- const CONVERT_VSCODE_TO_MONACO = (args: any[] | undefined) => {
53
- if (!args) {
54
- return args;
55
- }
56
- const argStack: ConversionFunction[] = [];
57
- args.forEach(_ => {
58
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
59
- argStack.push((arg: any) => vscodeToMonacoArgsConverter(arg));
60
- });
61
- if (args) {
62
- return createConversionFunction(...argStack)(args);
63
- }
64
- };
65
-
66
- mappings['editor.action.select.all'] = ['editor.action.select.all', CONVERT_VSCODE_TO_MONACO];
67
- mappings['editor.action.toggleHighContrast'] = ['editor.action.toggleHighContrast', CONVERT_VSCODE_TO_MONACO];
68
- mappings['editor.action.moveCarretLeftAction'] = ['editor.action.moveCarretLeftAction', CONVERT_VSCODE_TO_MONACO];
69
- mappings['editor.action.moveCarretRightAction'] = ['editor.action.moveCarretRightAction', CONVERT_VSCODE_TO_MONACO];
70
- mappings['editor.action.transposeLetters'] = ['editor.action.transposeLetters', CONVERT_VSCODE_TO_MONACO];
71
- mappings['editor.action.clipboardCopyWithSyntaxHighlightingAction'] = ['editor.action.clipboardCopyWithSyntaxHighlightingAction', CONVERT_VSCODE_TO_MONACO];
72
- mappings['editor.action.commentLine'] = ['editor.action.commentLine', CONVERT_VSCODE_TO_MONACO];
73
- mappings['editor.action.addCommentLine'] = ['editor.action.addCommentLine', CONVERT_VSCODE_TO_MONACO];
74
- mappings['editor.action.removeCommentLine'] = ['editor.action.removeCommentLine', CONVERT_VSCODE_TO_MONACO];
75
- mappings['editor.action.blockComment'] = ['editor.action.blockComment', CONVERT_VSCODE_TO_MONACO];
76
- mappings['editor.action.showContextMenu'] = ['editor.action.showContextMenu', CONVERT_VSCODE_TO_MONACO];
77
- mappings['cursorUndo'] = ['cursorUndo', CONVERT_VSCODE_TO_MONACO];
78
- mappings['editor.unfold'] = ['editor.unfold', CONVERT_VSCODE_TO_MONACO];
79
- mappings['editor.unfoldRecursively'] = ['editor.unfoldRecursively', CONVERT_VSCODE_TO_MONACO];
80
- mappings['editor.fold'] = ['editor.fold', CONVERT_VSCODE_TO_MONACO];
81
- mappings['editor.foldRecursively'] = ['editor.foldRecursively', CONVERT_VSCODE_TO_MONACO];
82
- mappings['editor.foldAll'] = ['editor.foldAll', CONVERT_VSCODE_TO_MONACO];
83
- mappings['editor.unfoldAll'] = ['editor.unfoldAll', CONVERT_VSCODE_TO_MONACO];
84
- mappings['editor.foldAllBlockComments'] = ['editor.foldAllBlockComments', CONVERT_VSCODE_TO_MONACO];
85
- mappings['editor.foldAllMarkerRegions'] = ['editor.foldAllMarkerRegions', CONVERT_VSCODE_TO_MONACO];
86
- mappings['editor.unfoldAllMarkerRegions'] = ['editor.unfoldAllMarkerRegions', CONVERT_VSCODE_TO_MONACO];
87
- mappings['editor.foldLevel1'] = ['editor.foldLevel1', CONVERT_VSCODE_TO_MONACO];
88
- mappings['editor.foldLevel2'] = ['editor.foldLevel2', CONVERT_VSCODE_TO_MONACO];
89
- mappings['editor.foldLevel3'] = ['editor.foldLevel3', CONVERT_VSCODE_TO_MONACO];
90
- mappings['editor.foldLevel4'] = ['editor.foldLevel4', CONVERT_VSCODE_TO_MONACO];
91
- mappings['editor.foldLevel5'] = ['editor.foldLevel5', CONVERT_VSCODE_TO_MONACO];
92
- mappings['editor.foldLevel6'] = ['editor.foldLevel6', CONVERT_VSCODE_TO_MONACO];
93
- mappings['editor.foldLevel7'] = ['editor.foldLevel7', CONVERT_VSCODE_TO_MONACO];
94
- mappings['editor.action.fontZoomIn'] = ['editor.action.fontZoomIn', CONVERT_VSCODE_TO_MONACO];
95
- mappings['editor.action.fontZoomOut'] = ['editor.action.fontZoomOut', CONVERT_VSCODE_TO_MONACO];
96
- mappings['editor.action.fontZoomReset'] = ['editor.action.fontZoomReset', CONVERT_VSCODE_TO_MONACO];
97
- mappings['editor.action.formatDocument'] = ['editor.action.formatDocument', CONVERT_VSCODE_TO_MONACO];
98
- mappings['editor.action.formatSelection'] = ['editor.action.formatSelection', CONVERT_VSCODE_TO_MONACO];
99
- mappings['editor.action.copyLinesUpAction'] = ['editor.action.copyLinesUpAction', CONVERT_VSCODE_TO_MONACO];
100
- mappings['editor.action.copyLinesDownAction'] = ['editor.action.copyLinesDownAction', CONVERT_VSCODE_TO_MONACO];
101
- mappings['editor.action.moveLinesUpAction'] = ['editor.action.moveLinesUpAction', CONVERT_VSCODE_TO_MONACO];
102
- mappings['editor.action.moveLinesDownAction'] = ['editor.action.moveLinesDownAction', CONVERT_VSCODE_TO_MONACO];
103
- mappings['editor.action.sortLinesAscending'] = ['editor.action.sortLinesAscending', CONVERT_VSCODE_TO_MONACO];
104
- mappings['editor.action.sortLinesDescending'] = ['editor.action.sortLinesDescending', CONVERT_VSCODE_TO_MONACO];
105
- mappings['editor.action.trimTrailingWhitespace'] = ['editor.action.trimTrailingWhitespace', CONVERT_VSCODE_TO_MONACO];
106
- mappings['editor.action.deleteLines'] = ['editor.action.deleteLines', CONVERT_VSCODE_TO_MONACO];
107
- mappings['editor.action.indentLines'] = ['editor.action.indentLines', CONVERT_VSCODE_TO_MONACO];
108
- mappings['editor.action.outdentLines'] = ['editor.action.outdentLines', CONVERT_VSCODE_TO_MONACO];
109
- mappings['editor.action.insertLineBefore'] = ['editor.action.insertLineBefore', CONVERT_VSCODE_TO_MONACO];
110
- mappings['editor.action.insertLineAfter'] = ['editor.action.insertLineAfter', CONVERT_VSCODE_TO_MONACO];
111
- mappings['deleteAllLeft'] = ['deleteAllLeft', CONVERT_VSCODE_TO_MONACO];
112
- mappings['deleteAllRight'] = ['deleteAllRight', CONVERT_VSCODE_TO_MONACO];
113
- mappings['editor.action.joinLines'] = ['editor.action.joinLines', CONVERT_VSCODE_TO_MONACO];
114
- mappings['editor.action.transpose'] = ['editor.action.transpose', CONVERT_VSCODE_TO_MONACO];
115
- mappings['editor.action.transformToUppercase'] = ['editor.action.transformToUppercase', CONVERT_VSCODE_TO_MONACO];
116
- mappings['editor.action.transformToLowercase'] = ['editor.action.transformToLowercase', CONVERT_VSCODE_TO_MONACO];
117
- mappings['editor.action.transformToTitlecase'] = ['editor.action.transformToTitlecase', CONVERT_VSCODE_TO_MONACO];
118
- mappings['editor.action.smartSelect.expand'] = ['editor.action.smartSelect.expand', CONVERT_VSCODE_TO_MONACO];
119
- mappings['editor.action.smartSelect.shrink'] = ['editor.action.smartSelect.shrink', CONVERT_VSCODE_TO_MONACO];
120
- mappings['editor.action.forceRetokenize'] = ['editor.action.forceRetokenize', CONVERT_VSCODE_TO_MONACO];
121
- mappings['editor.action.toggleTabFocusMode'] = ['editor.action.toggleTabFocusMode', CONVERT_VSCODE_TO_MONACO];
122
- mappings['editor.action.gotoLine'] = ['editor.action.gotoLine', CONVERT_VSCODE_TO_MONACO];
123
- mappings['editor.action.quickOutline'] = ['editor.action.quickOutline', CONVERT_VSCODE_TO_MONACO];
124
- mappings['editor.action.inPlaceReplace.up'] = ['editor.action.inPlaceReplace.up', CONVERT_VSCODE_TO_MONACO];
125
- mappings['editor.action.inPlaceReplace.down'] = ['editor.action.inPlaceReplace.down', CONVERT_VSCODE_TO_MONACO];
126
- mappings['editor.action.diffReview.next'] = ['editor.action.diffReview.next', CONVERT_VSCODE_TO_MONACO];
127
- mappings['editor.action.diffReview.prev'] = ['editor.action.diffReview.prev', CONVERT_VSCODE_TO_MONACO];
128
- mappings['editor.action.selectToBracket'] = ['editor.action.selectToBracket', CONVERT_VSCODE_TO_MONACO];
129
- mappings['editor.action.jumpToBracket'] = ['editor.action.jumpToBracket', CONVERT_VSCODE_TO_MONACO];
130
- mappings['actions.findWithSelection'] = ['actions.findWithSelection', CONVERT_VSCODE_TO_MONACO];
131
- mappings['editor.action.nextMatchFindAction'] = ['editor.action.nextMatchFindAction', CONVERT_VSCODE_TO_MONACO];
132
- mappings['editor.action.previousMatchFindAction'] = ['editor.action.previousMatchFindAction', CONVERT_VSCODE_TO_MONACO];
133
- mappings['editor.action.nextSelectionMatchFindAction'] = ['editor.action.nextSelectionMatchFindAction', CONVERT_VSCODE_TO_MONACO];
134
- mappings['editor.action.previousSelectionMatchFindAction'] = ['editor.action.previousSelectionMatchFindAction', CONVERT_VSCODE_TO_MONACO];
135
- mappings['editor.action.openLink'] = ['editor.action.openLink', CONVERT_VSCODE_TO_MONACO];
136
- mappings['editor.action.quickFix'] = ['editor.action.quickFix', CONVERT_VSCODE_TO_MONACO];
137
- mappings['editor.action.refactor'] = ['editor.action.refactor', CONVERT_VSCODE_TO_MONACO];
138
- mappings['editor.action.sourceAction'] = ['editor.action.sourceAction', CONVERT_VSCODE_TO_MONACO];
139
- mappings['editor.action.organizeImports'] = ['editor.action.organizeImports', CONVERT_VSCODE_TO_MONACO];
140
- mappings['editor.action.autoFix'] = ['editor.action.autoFix', CONVERT_VSCODE_TO_MONACO];
141
- mappings['editor.action.fixAll'] = ['editor.action.fixAll', CONVERT_VSCODE_TO_MONACO];
142
- mappings['editor.action.rename'] = ['editor.action.rename', CONVERT_VSCODE_TO_MONACO];
143
- mappings['editor.action.insertCursorAbove'] = ['editor.action.insertCursorAbove', CONVERT_VSCODE_TO_MONACO];
144
- mappings['editor.action.insertCursorBelow'] = ['editor.action.insertCursorBelow', CONVERT_VSCODE_TO_MONACO];
145
- mappings['editor.action.insertCursorAtEndOfEachLineSelected'] = ['editor.action.insertCursorAtEndOfEachLineSelected', CONVERT_VSCODE_TO_MONACO];
146
- mappings['editor.action.addSelectionToNextFindMatch'] = ['editor.action.addSelectionToNextFindMatch', CONVERT_VSCODE_TO_MONACO];
147
- mappings['editor.action.addSelectionToPreviousFindMatch'] = ['editor.action.addSelectionToPreviousFindMatch', CONVERT_VSCODE_TO_MONACO];
148
- mappings['editor.action.moveSelectionToNextFindMatch'] = ['editor.action.moveSelectionToNextFindMatch', CONVERT_VSCODE_TO_MONACO];
149
- mappings['editor.action.moveSelectionToPreviousFindMatch'] = ['editor.action.moveSelectionToPreviousFindMatch', CONVERT_VSCODE_TO_MONACO];
150
- mappings['editor.action.selectHighlights'] = ['editor.action.selectHighlights', CONVERT_VSCODE_TO_MONACO];
151
- mappings['editor.action.changeAll'] = ['editor.action.changeAll', CONVERT_VSCODE_TO_MONACO];
152
- mappings['editor.action.addCursorsToBottom'] = ['editor.action.addCursorsToBottom', CONVERT_VSCODE_TO_MONACO];
153
- mappings['editor.action.addCursorsToTop'] = ['editor.action.addCursorsToTop', CONVERT_VSCODE_TO_MONACO];
154
- mappings['editor.action.triggerParameterHints'] = ['editor.action.triggerParameterHints', CONVERT_VSCODE_TO_MONACO];
155
- mappings['editor.action.wordHighlight.next'] = ['editor.action.wordHighlight.next', CONVERT_VSCODE_TO_MONACO];
156
- mappings['editor.action.wordHighlight.prev'] = ['editor.action.wordHighlight.prev', CONVERT_VSCODE_TO_MONACO];
157
- mappings['editor.action.wordHighlight.trigger'] = ['editor.action.wordHighlight.trigger', CONVERT_VSCODE_TO_MONACO];
158
- mappings['editor.action.showAccessibilityHelp'] = ['editor.action.showAccessibilityHelp', CONVERT_VSCODE_TO_MONACO];
159
- mappings['editor.action.inspectTokens'] = ['editor.action.inspectTokens', CONVERT_VSCODE_TO_MONACO];
160
- mappings['editor.action.marker.next'] = ['editor.action.marker.next', CONVERT_VSCODE_TO_MONACO];
161
- mappings['editor.action.marker.prev'] = ['editor.action.marker.prev', CONVERT_VSCODE_TO_MONACO];
162
- mappings['editor.action.marker.nextInFiles'] = ['editor.action.marker.nextInFiles', CONVERT_VSCODE_TO_MONACO];
163
- mappings['editor.action.marker.prevInFiles'] = ['editor.action.marker.prevInFiles', CONVERT_VSCODE_TO_MONACO];
164
- mappings['editor.action.showHover'] = ['editor.action.showHover', CONVERT_VSCODE_TO_MONACO];
165
- mappings['editor.action.revealDefinition'] = ['editor.action.revealDefinition', CONVERT_VSCODE_TO_MONACO];
166
- mappings['editor.action.revealDefinitionAside'] = ['editor.action.revealDefinitionAside', CONVERT_VSCODE_TO_MONACO];
167
- mappings['editor.action.peekDefinition'] = ['editor.action.peekDefinition', CONVERT_VSCODE_TO_MONACO];
168
- mappings['editor.action.revealDeclaration'] = ['editor.action.revealDeclaration', CONVERT_VSCODE_TO_MONACO];
169
- mappings['editor.action.peekDeclaration'] = ['editor.action.peekDeclaration', CONVERT_VSCODE_TO_MONACO];
170
- mappings['editor.action.goToImplementation'] = ['editor.action.goToImplementation', CONVERT_VSCODE_TO_MONACO];
171
- mappings['editor.action.peekImplementation'] = ['editor.action.peekImplementation', CONVERT_VSCODE_TO_MONACO];
172
- mappings['editor.action.goToTypeDefinition'] = ['editor.action.goToTypeDefinition', CONVERT_VSCODE_TO_MONACO];
173
- mappings['editor.action.peekTypeDefinition'] = ['editor.action.peekTypeDefinition', CONVERT_VSCODE_TO_MONACO];
174
- mappings['editor.action.referenceSearch.trigger'] = ['editor.action.referenceSearch.trigger', CONVERT_VSCODE_TO_MONACO];
175
- mappings['editor.action.triggerSuggest'] = ['editor.action.triggerSuggest', CONVERT_VSCODE_TO_MONACO];
176
- mappings['closeReferenceSearchEditor'] = ['closeReferenceSearchEditor', CONVERT_VSCODE_TO_MONACO];
177
- mappings['cancelSelection'] = ['cancelSelection', CONVERT_VSCODE_TO_MONACO];
178
- mappings['cursorBottom'] = ['cursorBottom', CONVERT_VSCODE_TO_MONACO];
179
- mappings['cursorBottomSelect'] = ['cursorBottomSelect', CONVERT_VSCODE_TO_MONACO];
180
- mappings['cursorDown'] = ['cursorDown', CONVERT_VSCODE_TO_MONACO];
181
- mappings['cursorDownSelect'] = ['cursorDownSelect', CONVERT_VSCODE_TO_MONACO];
182
- mappings['cursorEnd'] = ['cursorEnd', CONVERT_VSCODE_TO_MONACO];
183
- mappings['cursorEndSelect'] = ['cursorEndSelect', CONVERT_VSCODE_TO_MONACO];
184
- mappings['cursorHome'] = ['cursorHome', CONVERT_VSCODE_TO_MONACO];
185
- mappings['cursorHomeSelect'] = ['cursorHomeSelect', CONVERT_VSCODE_TO_MONACO];
186
- mappings['cursorLeft'] = ['cursorLeft', CONVERT_VSCODE_TO_MONACO];
187
- mappings['cursorLeftSelect'] = ['cursorLeftSelect', CONVERT_VSCODE_TO_MONACO];
188
- mappings['cursorPageDown'] = ['cursorPageDown', CONVERT_VSCODE_TO_MONACO];
189
- mappings['cursorPageDownSelect'] = ['cursorPageDownSelect', CONVERT_VSCODE_TO_MONACO];
190
- mappings['cursorPageUp'] = ['cursorPageUp', CONVERT_VSCODE_TO_MONACO];
191
- mappings['cursorPageUpSelect'] = ['cursorPageUpSelect', CONVERT_VSCODE_TO_MONACO];
192
- mappings['cursorRight'] = ['cursorRight', CONVERT_VSCODE_TO_MONACO];
193
- mappings['cursorRightSelect'] = ['cursorRightSelect', CONVERT_VSCODE_TO_MONACO];
194
- mappings['cursorTop'] = ['cursorTop', CONVERT_VSCODE_TO_MONACO];
195
- mappings['cursorTopSelect'] = ['cursorTopSelect', CONVERT_VSCODE_TO_MONACO];
196
- mappings['cursorUp'] = ['cursorUp', CONVERT_VSCODE_TO_MONACO];
197
- mappings['cursorUpSelect'] = ['cursorUpSelect', CONVERT_VSCODE_TO_MONACO];
198
- mappings['deleteLeft'] = ['deleteLeft', CONVERT_VSCODE_TO_MONACO];
199
- mappings['deleteRight'] = ['deleteRight', CONVERT_VSCODE_TO_MONACO];
200
- mappings['editor.action.selectAll'] = ['editor.action.selectAll', CONVERT_VSCODE_TO_MONACO];
201
- mappings['expandLineSelection'] = ['expandLineSelection', CONVERT_VSCODE_TO_MONACO];
202
- mappings['outdent'] = ['outdent', CONVERT_VSCODE_TO_MONACO];
203
- mappings['scrollLineDown'] = ['scrollLineDown', CONVERT_VSCODE_TO_MONACO];
204
- mappings['scrollLineUp'] = ['scrollLineUp', CONVERT_VSCODE_TO_MONACO];
205
- mappings['scrollPageDown'] = ['scrollPageDown', CONVERT_VSCODE_TO_MONACO];
206
- mappings['scrollPageUp'] = ['scrollPageUp', CONVERT_VSCODE_TO_MONACO];
207
- mappings['tab'] = ['tab', CONVERT_VSCODE_TO_MONACO];
208
- mappings['removeSecondaryCursors'] = ['removeSecondaryCursors', CONVERT_VSCODE_TO_MONACO];
209
- mappings['cursorWordRight'] = ['cursorWordEndRight', CONVERT_VSCODE_TO_MONACO];
210
- mappings['cursorWordEndRight'] = ['cursorWordEndRight', CONVERT_VSCODE_TO_MONACO];
211
- mappings['cursorWordEndRightSelect'] = ['cursorWordEndRightSelect', CONVERT_VSCODE_TO_MONACO];
212
- mappings['cursorWordLeft'] = ['cursorWordStartLeft', CONVERT_VSCODE_TO_MONACO];
213
- mappings['cursorWordStartLeft'] = ['cursorWordStartLeft', CONVERT_VSCODE_TO_MONACO];
214
- mappings['cursorWordStartLeftSelect'] = ['cursorWordStartLeftSelect', CONVERT_VSCODE_TO_MONACO];
215
- mappings['deleteWordLeft'] = ['deleteWordLeft', CONVERT_VSCODE_TO_MONACO];
216
- mappings['deleteWordRight'] = ['deleteWordRight', CONVERT_VSCODE_TO_MONACO];
217
- mappings['editor.cancelOperation'] = ['editor.cancelOperation', CONVERT_VSCODE_TO_MONACO];
218
- mappings['editor.gotoNextSymbolFromResult'] = ['editor.gotoNextSymbolFromResult', CONVERT_VSCODE_TO_MONACO];
219
- mappings['editor.gotoNextSymbolFromResult.cancel'] = ['editor.gotoNextSymbolFromResult.cancel', CONVERT_VSCODE_TO_MONACO];
220
- mappings['openReferenceToSide'] = ['openReferenceToSide', CONVERT_VSCODE_TO_MONACO];
221
- mappings['toggleExplainMode'] = ['toggleExplainMode', CONVERT_VSCODE_TO_MONACO];
222
- mappings['closeFindWidget'] = ['closeFindWidget', CONVERT_VSCODE_TO_MONACO];
223
- mappings['editor.action.replaceAll'] = ['editor.action.replaceAll', CONVERT_VSCODE_TO_MONACO];
224
- mappings['editor.action.replaceOne'] = ['editor.action.replaceOne', CONVERT_VSCODE_TO_MONACO];
225
- mappings['editor.action.selectAllMatches'] = ['editor.action.selectAllMatches', CONVERT_VSCODE_TO_MONACO];
226
- mappings['toggleFindCaseSensitive'] = ['toggleFindCaseSensitive', CONVERT_VSCODE_TO_MONACO];
227
- mappings['toggleFindInSelection'] = ['toggleFindInSelection', CONVERT_VSCODE_TO_MONACO];
228
- mappings['toggleFindRegex'] = ['toggleFindRegex', CONVERT_VSCODE_TO_MONACO];
229
- mappings['toggleFindWholeWord'] = ['toggleFindWholeWord', CONVERT_VSCODE_TO_MONACO];
230
- mappings['jumpToNextSnippetPlaceholder'] = ['jumpToNextSnippetPlaceholder', CONVERT_VSCODE_TO_MONACO];
231
- mappings['jumpToPrevSnippetPlaceholder'] = ['jumpToPrevSnippetPlaceholder', CONVERT_VSCODE_TO_MONACO];
232
- mappings['leaveEditorMessage'] = ['leaveEditorMessage', CONVERT_VSCODE_TO_MONACO];
233
- mappings['leaveSnippet'] = ['leaveSnippet', CONVERT_VSCODE_TO_MONACO];
234
- mappings['closeMarkersNavigation'] = ['closeMarkersNavigation', CONVERT_VSCODE_TO_MONACO];
235
- mappings['goToNextReferenceFromEmbeddedEditor'] = ['goToNextReferenceFromEmbeddedEditor', CONVERT_VSCODE_TO_MONACO];
236
- mappings['goToPreviousReferenceFromEmbeddedEditor'] = ['goToPreviousReferenceFromEmbeddedEditor', CONVERT_VSCODE_TO_MONACO];
237
- mappings['closeParameterHints'] = ['closeParameterHints', CONVERT_VSCODE_TO_MONACO];
238
- mappings['showNextParameterHint'] = ['showNextParameterHint', CONVERT_VSCODE_TO_MONACO];
239
- mappings['showPrevParameterHint'] = ['showPrevParameterHint', CONVERT_VSCODE_TO_MONACO];
240
- mappings['acceptSelectedSuggestion'] = ['acceptSelectedSuggestion', CONVERT_VSCODE_TO_MONACO];
241
- mappings['acceptSelectedSuggestionOnEnter'] = ['acceptSelectedSuggestionOnEnter', CONVERT_VSCODE_TO_MONACO];
242
- mappings['hideSuggestWidget'] = ['hideSuggestWidget', CONVERT_VSCODE_TO_MONACO];
243
- mappings['insertBestCompletion'] = ['insertBestCompletion', CONVERT_VSCODE_TO_MONACO];
244
- mappings['insertNextSuggestion'] = ['insertNextSuggestion', CONVERT_VSCODE_TO_MONACO];
245
- mappings['insertPrevSuggestion'] = ['insertPrevSuggestion', CONVERT_VSCODE_TO_MONACO];
246
- mappings['selectNextPageSuggestion'] = ['selectNextPageSuggestion', CONVERT_VSCODE_TO_MONACO];
247
- mappings['selectNextSuggestion'] = ['selectNextSuggestion', CONVERT_VSCODE_TO_MONACO];
248
- mappings['selectPrevPageSuggestion'] = ['selectPrevPageSuggestion', CONVERT_VSCODE_TO_MONACO];
249
- mappings['selectPrevSuggestion'] = ['selectPrevSuggestion', CONVERT_VSCODE_TO_MONACO];
250
- mappings['toggleSuggestionDetails'] = ['toggleSuggestionDetails', CONVERT_VSCODE_TO_MONACO];
251
- mappings['toggleSuggestionFocus'] = ['toggleSuggestionFocus', CONVERT_VSCODE_TO_MONACO];
252
- mappings['acceptRenameInput'] = ['acceptRenameInput', CONVERT_VSCODE_TO_MONACO];
253
- mappings['cancelRenameInput'] = ['cancelRenameInput', CONVERT_VSCODE_TO_MONACO];
254
- mappings['closeAccessibilityHelp'] = ['closeAccessibilityHelp', CONVERT_VSCODE_TO_MONACO];
255
- mappings['history.showNext'] = ['history.showNext', CONVERT_VSCODE_TO_MONACO];
256
- mappings['history.showPrevious'] = ['history.showPrevious', CONVERT_VSCODE_TO_MONACO];
257
- mappings['closeReferenceSearch'] = ['closeReferenceSearch', CONVERT_VSCODE_TO_MONACO];
258
- mappings['goToNextReference'] = ['goToNextReference', CONVERT_VSCODE_TO_MONACO];
259
- mappings['goToPreviousReference'] = ['goToPreviousReference', CONVERT_VSCODE_TO_MONACO];
260
-
261
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
262
- const CONVERT_MONACO_TO_VSCODE = (args: any | undefined) => {
263
- if (!args) {
264
- return args;
265
- }
266
- if (!Array.isArray(args)) {
267
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
268
- return monacoToVscodeArgsConverter(args);
269
- }
270
-
271
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
272
- const argsArray: any[] = args;
273
- const argStack: ConversionFunction[] = [];
274
- argsArray.forEach(_ => {
275
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
276
- argStack.push((arg: any) => monacoToVscodeArgsConverter(arg));
277
- });
278
- if (argsArray) {
279
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
280
- return createConversionFunction(...argStack)(argsArray);
281
- }
282
- };
283
-
284
- // vscode-'executeXXX'-like commands
285
- mappings['vscode.executeReferenceProvider'] = ['vscode.executeReferenceProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
286
- mappings['vscode.executeImplementationProvider'] = ['vscode.executeImplementationProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
287
- mappings['vscode.executeDefinitionProvider'] = ['vscode.executeDefinitionProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
288
- mappings['vscode.executeDeclarationProvider'] = ['vscode.executeDeclarationProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
289
- mappings['vscode.executeTypeDefinitionProvider'] = ['vscode.executeTypeDefinitionProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
290
- mappings['vscode.executeHoverProvider'] = ['vscode.executeHoverProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
291
- mappings['vscode.executeDocumentHighlights'] = ['vscode.executeDocumentHighlights', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
292
- mappings['vscode.executeFormatDocumentProvider'] = ['vscode.executeFormatDocumentProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
293
- mappings['vscode.executeFormatRangeProvider'] = ['vscode.executeFormatRangeProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
294
- mappings['vscode.executeFormatOnTypeProvider'] = ['vscode.executeFormatOnTypeProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
295
- mappings['vscode.prepareCallHierarchy'] = ['vscode.prepareCallHierarchy', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
296
- mappings['vscode.provideIncomingCalls'] = ['vscode.provideIncomingCalls', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
297
- mappings['vscode.provideOutgoingCalls'] = ['vscode.provideOutgoingCalls', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
298
- mappings['vscode.prepareTypeHierarchy'] = ['vscode.prepareTypeHierarchy', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
299
- mappings['vscode.provideSupertypes'] = ['vscode.provideSupertypes', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
300
- mappings['vscode.provideSubtypes'] = ['vscode.provideSubtypes', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
301
-
302
- mappings['vscode.open'] = ['vscode.open', CONVERT_VSCODE_TO_MONACO];
303
- mappings['vscode.diff'] = ['vscode.diff', CONVERT_VSCODE_TO_MONACO];
304
-
305
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
306
- export function map<T>(id: string, args: any[] | undefined, toDo: (mappedId: string, mappedArgs: any[] | undefined, mappedResult: ConversionFunction | undefined) => T): T {
307
- if (mappings[id]) {
308
- return toDo(mappings[id][0], mappings[id][1](args), mappings[id][2] ? (result => mappings[id][2]!(result)) : undefined);
309
- } else {
310
- return toDo(id, args, undefined);
311
- }
312
- }
313
-
314
- export function mapped(id: string): boolean {
315
- return !!mappings[id];
316
- }
317
-
318
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
319
- export type ConversionFunction = ((parameter: any) => any) | undefined;
320
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
321
- function createConversionFunction(...conversions: ConversionFunction[]): (args: any[] | undefined) => any[] | undefined {
322
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
323
- return function (args: any[] | undefined): any[] | undefined {
324
- if (!args) {
325
- return args;
326
- }
327
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
328
- return args.map(function (arg: any, index: number): any {
329
- if (index < conversions.length) {
330
- const conversion = conversions[index];
331
- if (conversion) {
332
- return conversion(arg);
333
- }
334
- }
335
- return arg;
336
- });
337
- };
338
- }
339
-
340
- function fromPositionToP(p: theia.Position): P {
341
- return P.create(p.line, p.character);
342
- }
343
-
344
- function fromRangeToR(r: theia.Range): R {
345
- return R.create(fromPositionToP(r.start), fromPositionToP(r.end));
346
- }
347
-
348
- function fromLocationToL(l: theia.Location): L {
349
- return L.create(l.uri.toString(), fromRangeToR(l.range));
350
- }
351
-
352
- // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/tslint/config
353
- function vscodeToMonacoArgsConverter(args: any[]) {
354
- // tslint:disable-next-line:typedef
355
- return cloneAndChange(args, function (value) {
356
- if (CallHierarchyItem.isCallHierarchyItem(value)) {
357
- return fromCallHierarchyItem(value);
358
- }
359
- if (TypeHierarchyItem.isTypeHierarchyItem(value)) {
360
- return fromTypeHierarchyItem(value);
361
- }
362
- if (TextDocumentShowOptions.isTextDocumentShowOptions(value)) {
363
- return fromTextDocumentShowOptions(value);
364
- }
365
- if (Position.isPosition(value)) {
366
- return fromPosition(value);
367
- }
368
- if (Range.isRange(value)) {
369
- return fromRange(value);
370
- }
371
- if (Location.isLocation(value)) {
372
- return fromLocation(value);
373
- }
374
- if (!Array.isArray(value)) {
375
- return value;
376
- }
377
- });
378
- }
379
-
380
- // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/tslint/config
381
- function monacoToVscodeArgsConverter(args: any[]) {
382
- // tslint:disable-next-line:typedef
383
- return cloneAndChange(args, function (value) {
384
- if (isModelCallHierarchyItem(value)) {
385
- return toCallHierarchyItem(value);
386
- }
387
- if (isModelTypeHierarchyItem(value)) {
388
- return toTypeHierarchyItem(value);
389
- }
390
- if (isModelCallHierarchyIncomingCall(value)) {
391
- return toCallHierarchyIncomingCall(value);
392
- }
393
- if (isModelCallHierarchyOutgoingCall(value)) {
394
- return toCallHierarchyOutgoingCall(value);
395
- }
396
- if (isModelLocation(value)) {
397
- return toLocation(value);
398
- }
399
- if (!Array.isArray(value)) {
400
- return value;
401
- }
402
-
403
- });
404
- }
405
- }
406
-
407
- function toArrayConversion<T, U>(f: (a: T) => U): (a: T[]) => U[] {
408
- // tslint:disable-next-line:typedef
409
- return function (a: T[]) {
410
- return a.map(f);
411
- };
412
- }
1
+ // *****************************************************************************
2
+ // Copyright (C) 2019 Red Hat, Inc. and others.
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { Range as R, Position as P, Location as L } from '@theia/core/shared/vscode-languageserver-protocol';
18
+ import * as theia from '@theia/plugin';
19
+ import { cloneAndChange } from '../common/objects';
20
+ import { Position, Range, Location, CallHierarchyItem, TypeHierarchyItem, URI, TextDocumentShowOptions } from './types-impl';
21
+ import {
22
+ fromPosition, fromRange, fromLocation,
23
+ isModelLocation, toLocation,
24
+ isModelCallHierarchyItem, fromCallHierarchyItem, toCallHierarchyItem,
25
+ isModelTypeHierarchyItem, fromTypeHierarchyItem, toTypeHierarchyItem,
26
+ isModelCallHierarchyIncomingCall, toCallHierarchyIncomingCall,
27
+ isModelCallHierarchyOutgoingCall, toCallHierarchyOutgoingCall, fromTextDocumentShowOptions
28
+ } from './type-converters';
29
+
30
+ // Here is a mapping of VSCode commands to monaco commands with their conversions
31
+ export namespace KnownCommands {
32
+
33
+ /**
34
+ * Commands that you want to apply custom conversions to rather than pass through the automatic args converter.
35
+ * Would be useful in the case where theia provides some command and you need to provide custom conversions
36
+ */
37
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
38
+ const mappings: { [id: string]: [string, (args: any[] | undefined) => any[] | undefined, ((results: any[] | undefined) => any[] | undefined)?] } = {};
39
+ mappings['editor.action.showReferences'] = ['textEditor.commands.showReferences', createConversionFunction(
40
+ (uri: URI) => uri.toString(),
41
+ fromPositionToP,
42
+ toArrayConversion(fromLocationToL)),
43
+ createConversionFunction()];
44
+
45
+ /**
46
+ * Mapping of all editor.action commands to their conversion function.
47
+ * executeCommand<T> inside of the plugin command registry will automatically convert
48
+ * incoming arguments from vscode api types to monaco types
49
+ */
50
+
51
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
52
+ const CONVERT_VSCODE_TO_MONACO = (args: any[] | undefined) => {
53
+ if (!args) {
54
+ return args;
55
+ }
56
+ const argStack: ConversionFunction[] = [];
57
+ args.forEach(_ => {
58
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
59
+ argStack.push((arg: any) => vscodeToMonacoArgsConverter(arg));
60
+ });
61
+ if (args) {
62
+ return createConversionFunction(...argStack)(args);
63
+ }
64
+ };
65
+
66
+ mappings['editor.action.select.all'] = ['editor.action.select.all', CONVERT_VSCODE_TO_MONACO];
67
+ mappings['editor.action.toggleHighContrast'] = ['editor.action.toggleHighContrast', CONVERT_VSCODE_TO_MONACO];
68
+ mappings['editor.action.moveCarretLeftAction'] = ['editor.action.moveCarretLeftAction', CONVERT_VSCODE_TO_MONACO];
69
+ mappings['editor.action.moveCarretRightAction'] = ['editor.action.moveCarretRightAction', CONVERT_VSCODE_TO_MONACO];
70
+ mappings['editor.action.transposeLetters'] = ['editor.action.transposeLetters', CONVERT_VSCODE_TO_MONACO];
71
+ mappings['editor.action.clipboardCopyWithSyntaxHighlightingAction'] = ['editor.action.clipboardCopyWithSyntaxHighlightingAction', CONVERT_VSCODE_TO_MONACO];
72
+ mappings['editor.action.commentLine'] = ['editor.action.commentLine', CONVERT_VSCODE_TO_MONACO];
73
+ mappings['editor.action.addCommentLine'] = ['editor.action.addCommentLine', CONVERT_VSCODE_TO_MONACO];
74
+ mappings['editor.action.removeCommentLine'] = ['editor.action.removeCommentLine', CONVERT_VSCODE_TO_MONACO];
75
+ mappings['editor.action.blockComment'] = ['editor.action.blockComment', CONVERT_VSCODE_TO_MONACO];
76
+ mappings['editor.action.showContextMenu'] = ['editor.action.showContextMenu', CONVERT_VSCODE_TO_MONACO];
77
+ mappings['cursorUndo'] = ['cursorUndo', CONVERT_VSCODE_TO_MONACO];
78
+ mappings['editor.unfold'] = ['editor.unfold', CONVERT_VSCODE_TO_MONACO];
79
+ mappings['editor.unfoldRecursively'] = ['editor.unfoldRecursively', CONVERT_VSCODE_TO_MONACO];
80
+ mappings['editor.fold'] = ['editor.fold', CONVERT_VSCODE_TO_MONACO];
81
+ mappings['editor.foldRecursively'] = ['editor.foldRecursively', CONVERT_VSCODE_TO_MONACO];
82
+ mappings['editor.foldAll'] = ['editor.foldAll', CONVERT_VSCODE_TO_MONACO];
83
+ mappings['editor.unfoldAll'] = ['editor.unfoldAll', CONVERT_VSCODE_TO_MONACO];
84
+ mappings['editor.foldAllBlockComments'] = ['editor.foldAllBlockComments', CONVERT_VSCODE_TO_MONACO];
85
+ mappings['editor.foldAllMarkerRegions'] = ['editor.foldAllMarkerRegions', CONVERT_VSCODE_TO_MONACO];
86
+ mappings['editor.unfoldAllMarkerRegions'] = ['editor.unfoldAllMarkerRegions', CONVERT_VSCODE_TO_MONACO];
87
+ mappings['editor.foldLevel1'] = ['editor.foldLevel1', CONVERT_VSCODE_TO_MONACO];
88
+ mappings['editor.foldLevel2'] = ['editor.foldLevel2', CONVERT_VSCODE_TO_MONACO];
89
+ mappings['editor.foldLevel3'] = ['editor.foldLevel3', CONVERT_VSCODE_TO_MONACO];
90
+ mappings['editor.foldLevel4'] = ['editor.foldLevel4', CONVERT_VSCODE_TO_MONACO];
91
+ mappings['editor.foldLevel5'] = ['editor.foldLevel5', CONVERT_VSCODE_TO_MONACO];
92
+ mappings['editor.foldLevel6'] = ['editor.foldLevel6', CONVERT_VSCODE_TO_MONACO];
93
+ mappings['editor.foldLevel7'] = ['editor.foldLevel7', CONVERT_VSCODE_TO_MONACO];
94
+ mappings['editor.action.fontZoomIn'] = ['editor.action.fontZoomIn', CONVERT_VSCODE_TO_MONACO];
95
+ mappings['editor.action.fontZoomOut'] = ['editor.action.fontZoomOut', CONVERT_VSCODE_TO_MONACO];
96
+ mappings['editor.action.fontZoomReset'] = ['editor.action.fontZoomReset', CONVERT_VSCODE_TO_MONACO];
97
+ mappings['editor.action.formatDocument'] = ['editor.action.formatDocument', CONVERT_VSCODE_TO_MONACO];
98
+ mappings['editor.action.formatSelection'] = ['editor.action.formatSelection', CONVERT_VSCODE_TO_MONACO];
99
+ mappings['editor.action.copyLinesUpAction'] = ['editor.action.copyLinesUpAction', CONVERT_VSCODE_TO_MONACO];
100
+ mappings['editor.action.copyLinesDownAction'] = ['editor.action.copyLinesDownAction', CONVERT_VSCODE_TO_MONACO];
101
+ mappings['editor.action.moveLinesUpAction'] = ['editor.action.moveLinesUpAction', CONVERT_VSCODE_TO_MONACO];
102
+ mappings['editor.action.moveLinesDownAction'] = ['editor.action.moveLinesDownAction', CONVERT_VSCODE_TO_MONACO];
103
+ mappings['editor.action.sortLinesAscending'] = ['editor.action.sortLinesAscending', CONVERT_VSCODE_TO_MONACO];
104
+ mappings['editor.action.sortLinesDescending'] = ['editor.action.sortLinesDescending', CONVERT_VSCODE_TO_MONACO];
105
+ mappings['editor.action.trimTrailingWhitespace'] = ['editor.action.trimTrailingWhitespace', CONVERT_VSCODE_TO_MONACO];
106
+ mappings['editor.action.deleteLines'] = ['editor.action.deleteLines', CONVERT_VSCODE_TO_MONACO];
107
+ mappings['editor.action.indentLines'] = ['editor.action.indentLines', CONVERT_VSCODE_TO_MONACO];
108
+ mappings['editor.action.outdentLines'] = ['editor.action.outdentLines', CONVERT_VSCODE_TO_MONACO];
109
+ mappings['editor.action.insertLineBefore'] = ['editor.action.insertLineBefore', CONVERT_VSCODE_TO_MONACO];
110
+ mappings['editor.action.insertLineAfter'] = ['editor.action.insertLineAfter', CONVERT_VSCODE_TO_MONACO];
111
+ mappings['deleteAllLeft'] = ['deleteAllLeft', CONVERT_VSCODE_TO_MONACO];
112
+ mappings['deleteAllRight'] = ['deleteAllRight', CONVERT_VSCODE_TO_MONACO];
113
+ mappings['editor.action.joinLines'] = ['editor.action.joinLines', CONVERT_VSCODE_TO_MONACO];
114
+ mappings['editor.action.transpose'] = ['editor.action.transpose', CONVERT_VSCODE_TO_MONACO];
115
+ mappings['editor.action.transformToUppercase'] = ['editor.action.transformToUppercase', CONVERT_VSCODE_TO_MONACO];
116
+ mappings['editor.action.transformToLowercase'] = ['editor.action.transformToLowercase', CONVERT_VSCODE_TO_MONACO];
117
+ mappings['editor.action.transformToTitlecase'] = ['editor.action.transformToTitlecase', CONVERT_VSCODE_TO_MONACO];
118
+ mappings['editor.action.smartSelect.expand'] = ['editor.action.smartSelect.expand', CONVERT_VSCODE_TO_MONACO];
119
+ mappings['editor.action.smartSelect.shrink'] = ['editor.action.smartSelect.shrink', CONVERT_VSCODE_TO_MONACO];
120
+ mappings['editor.action.forceRetokenize'] = ['editor.action.forceRetokenize', CONVERT_VSCODE_TO_MONACO];
121
+ mappings['editor.action.toggleTabFocusMode'] = ['editor.action.toggleTabFocusMode', CONVERT_VSCODE_TO_MONACO];
122
+ mappings['editor.action.gotoLine'] = ['editor.action.gotoLine', CONVERT_VSCODE_TO_MONACO];
123
+ mappings['editor.action.quickOutline'] = ['editor.action.quickOutline', CONVERT_VSCODE_TO_MONACO];
124
+ mappings['editor.action.inPlaceReplace.up'] = ['editor.action.inPlaceReplace.up', CONVERT_VSCODE_TO_MONACO];
125
+ mappings['editor.action.inPlaceReplace.down'] = ['editor.action.inPlaceReplace.down', CONVERT_VSCODE_TO_MONACO];
126
+ mappings['editor.action.diffReview.next'] = ['editor.action.diffReview.next', CONVERT_VSCODE_TO_MONACO];
127
+ mappings['editor.action.diffReview.prev'] = ['editor.action.diffReview.prev', CONVERT_VSCODE_TO_MONACO];
128
+ mappings['editor.action.selectToBracket'] = ['editor.action.selectToBracket', CONVERT_VSCODE_TO_MONACO];
129
+ mappings['editor.action.jumpToBracket'] = ['editor.action.jumpToBracket', CONVERT_VSCODE_TO_MONACO];
130
+ mappings['actions.findWithSelection'] = ['actions.findWithSelection', CONVERT_VSCODE_TO_MONACO];
131
+ mappings['editor.action.nextMatchFindAction'] = ['editor.action.nextMatchFindAction', CONVERT_VSCODE_TO_MONACO];
132
+ mappings['editor.action.previousMatchFindAction'] = ['editor.action.previousMatchFindAction', CONVERT_VSCODE_TO_MONACO];
133
+ mappings['editor.action.nextSelectionMatchFindAction'] = ['editor.action.nextSelectionMatchFindAction', CONVERT_VSCODE_TO_MONACO];
134
+ mappings['editor.action.previousSelectionMatchFindAction'] = ['editor.action.previousSelectionMatchFindAction', CONVERT_VSCODE_TO_MONACO];
135
+ mappings['editor.action.openLink'] = ['editor.action.openLink', CONVERT_VSCODE_TO_MONACO];
136
+ mappings['editor.action.quickFix'] = ['editor.action.quickFix', CONVERT_VSCODE_TO_MONACO];
137
+ mappings['editor.action.refactor'] = ['editor.action.refactor', CONVERT_VSCODE_TO_MONACO];
138
+ mappings['editor.action.sourceAction'] = ['editor.action.sourceAction', CONVERT_VSCODE_TO_MONACO];
139
+ mappings['editor.action.organizeImports'] = ['editor.action.organizeImports', CONVERT_VSCODE_TO_MONACO];
140
+ mappings['editor.action.autoFix'] = ['editor.action.autoFix', CONVERT_VSCODE_TO_MONACO];
141
+ mappings['editor.action.fixAll'] = ['editor.action.fixAll', CONVERT_VSCODE_TO_MONACO];
142
+ mappings['editor.action.rename'] = ['editor.action.rename', CONVERT_VSCODE_TO_MONACO];
143
+ mappings['editor.action.insertCursorAbove'] = ['editor.action.insertCursorAbove', CONVERT_VSCODE_TO_MONACO];
144
+ mappings['editor.action.insertCursorBelow'] = ['editor.action.insertCursorBelow', CONVERT_VSCODE_TO_MONACO];
145
+ mappings['editor.action.insertCursorAtEndOfEachLineSelected'] = ['editor.action.insertCursorAtEndOfEachLineSelected', CONVERT_VSCODE_TO_MONACO];
146
+ mappings['editor.action.addSelectionToNextFindMatch'] = ['editor.action.addSelectionToNextFindMatch', CONVERT_VSCODE_TO_MONACO];
147
+ mappings['editor.action.addSelectionToPreviousFindMatch'] = ['editor.action.addSelectionToPreviousFindMatch', CONVERT_VSCODE_TO_MONACO];
148
+ mappings['editor.action.moveSelectionToNextFindMatch'] = ['editor.action.moveSelectionToNextFindMatch', CONVERT_VSCODE_TO_MONACO];
149
+ mappings['editor.action.moveSelectionToPreviousFindMatch'] = ['editor.action.moveSelectionToPreviousFindMatch', CONVERT_VSCODE_TO_MONACO];
150
+ mappings['editor.action.selectHighlights'] = ['editor.action.selectHighlights', CONVERT_VSCODE_TO_MONACO];
151
+ mappings['editor.action.changeAll'] = ['editor.action.changeAll', CONVERT_VSCODE_TO_MONACO];
152
+ mappings['editor.action.addCursorsToBottom'] = ['editor.action.addCursorsToBottom', CONVERT_VSCODE_TO_MONACO];
153
+ mappings['editor.action.addCursorsToTop'] = ['editor.action.addCursorsToTop', CONVERT_VSCODE_TO_MONACO];
154
+ mappings['editor.action.triggerParameterHints'] = ['editor.action.triggerParameterHints', CONVERT_VSCODE_TO_MONACO];
155
+ mappings['editor.action.wordHighlight.next'] = ['editor.action.wordHighlight.next', CONVERT_VSCODE_TO_MONACO];
156
+ mappings['editor.action.wordHighlight.prev'] = ['editor.action.wordHighlight.prev', CONVERT_VSCODE_TO_MONACO];
157
+ mappings['editor.action.wordHighlight.trigger'] = ['editor.action.wordHighlight.trigger', CONVERT_VSCODE_TO_MONACO];
158
+ mappings['editor.action.showAccessibilityHelp'] = ['editor.action.showAccessibilityHelp', CONVERT_VSCODE_TO_MONACO];
159
+ mappings['editor.action.inspectTokens'] = ['editor.action.inspectTokens', CONVERT_VSCODE_TO_MONACO];
160
+ mappings['editor.action.marker.next'] = ['editor.action.marker.next', CONVERT_VSCODE_TO_MONACO];
161
+ mappings['editor.action.marker.prev'] = ['editor.action.marker.prev', CONVERT_VSCODE_TO_MONACO];
162
+ mappings['editor.action.marker.nextInFiles'] = ['editor.action.marker.nextInFiles', CONVERT_VSCODE_TO_MONACO];
163
+ mappings['editor.action.marker.prevInFiles'] = ['editor.action.marker.prevInFiles', CONVERT_VSCODE_TO_MONACO];
164
+ mappings['editor.action.showHover'] = ['editor.action.showHover', CONVERT_VSCODE_TO_MONACO];
165
+ mappings['editor.action.revealDefinition'] = ['editor.action.revealDefinition', CONVERT_VSCODE_TO_MONACO];
166
+ mappings['editor.action.revealDefinitionAside'] = ['editor.action.revealDefinitionAside', CONVERT_VSCODE_TO_MONACO];
167
+ mappings['editor.action.peekDefinition'] = ['editor.action.peekDefinition', CONVERT_VSCODE_TO_MONACO];
168
+ mappings['editor.action.revealDeclaration'] = ['editor.action.revealDeclaration', CONVERT_VSCODE_TO_MONACO];
169
+ mappings['editor.action.peekDeclaration'] = ['editor.action.peekDeclaration', CONVERT_VSCODE_TO_MONACO];
170
+ mappings['editor.action.goToImplementation'] = ['editor.action.goToImplementation', CONVERT_VSCODE_TO_MONACO];
171
+ mappings['editor.action.peekImplementation'] = ['editor.action.peekImplementation', CONVERT_VSCODE_TO_MONACO];
172
+ mappings['editor.action.goToTypeDefinition'] = ['editor.action.goToTypeDefinition', CONVERT_VSCODE_TO_MONACO];
173
+ mappings['editor.action.peekTypeDefinition'] = ['editor.action.peekTypeDefinition', CONVERT_VSCODE_TO_MONACO];
174
+ mappings['editor.action.referenceSearch.trigger'] = ['editor.action.referenceSearch.trigger', CONVERT_VSCODE_TO_MONACO];
175
+ mappings['editor.action.triggerSuggest'] = ['editor.action.triggerSuggest', CONVERT_VSCODE_TO_MONACO];
176
+ mappings['closeReferenceSearchEditor'] = ['closeReferenceSearchEditor', CONVERT_VSCODE_TO_MONACO];
177
+ mappings['cancelSelection'] = ['cancelSelection', CONVERT_VSCODE_TO_MONACO];
178
+ mappings['cursorBottom'] = ['cursorBottom', CONVERT_VSCODE_TO_MONACO];
179
+ mappings['cursorBottomSelect'] = ['cursorBottomSelect', CONVERT_VSCODE_TO_MONACO];
180
+ mappings['cursorDown'] = ['cursorDown', CONVERT_VSCODE_TO_MONACO];
181
+ mappings['cursorDownSelect'] = ['cursorDownSelect', CONVERT_VSCODE_TO_MONACO];
182
+ mappings['cursorEnd'] = ['cursorEnd', CONVERT_VSCODE_TO_MONACO];
183
+ mappings['cursorEndSelect'] = ['cursorEndSelect', CONVERT_VSCODE_TO_MONACO];
184
+ mappings['cursorHome'] = ['cursorHome', CONVERT_VSCODE_TO_MONACO];
185
+ mappings['cursorHomeSelect'] = ['cursorHomeSelect', CONVERT_VSCODE_TO_MONACO];
186
+ mappings['cursorLeft'] = ['cursorLeft', CONVERT_VSCODE_TO_MONACO];
187
+ mappings['cursorLeftSelect'] = ['cursorLeftSelect', CONVERT_VSCODE_TO_MONACO];
188
+ mappings['cursorPageDown'] = ['cursorPageDown', CONVERT_VSCODE_TO_MONACO];
189
+ mappings['cursorPageDownSelect'] = ['cursorPageDownSelect', CONVERT_VSCODE_TO_MONACO];
190
+ mappings['cursorPageUp'] = ['cursorPageUp', CONVERT_VSCODE_TO_MONACO];
191
+ mappings['cursorPageUpSelect'] = ['cursorPageUpSelect', CONVERT_VSCODE_TO_MONACO];
192
+ mappings['cursorRight'] = ['cursorRight', CONVERT_VSCODE_TO_MONACO];
193
+ mappings['cursorRightSelect'] = ['cursorRightSelect', CONVERT_VSCODE_TO_MONACO];
194
+ mappings['cursorTop'] = ['cursorTop', CONVERT_VSCODE_TO_MONACO];
195
+ mappings['cursorTopSelect'] = ['cursorTopSelect', CONVERT_VSCODE_TO_MONACO];
196
+ mappings['cursorUp'] = ['cursorUp', CONVERT_VSCODE_TO_MONACO];
197
+ mappings['cursorUpSelect'] = ['cursorUpSelect', CONVERT_VSCODE_TO_MONACO];
198
+ mappings['deleteLeft'] = ['deleteLeft', CONVERT_VSCODE_TO_MONACO];
199
+ mappings['deleteRight'] = ['deleteRight', CONVERT_VSCODE_TO_MONACO];
200
+ mappings['editor.action.selectAll'] = ['editor.action.selectAll', CONVERT_VSCODE_TO_MONACO];
201
+ mappings['expandLineSelection'] = ['expandLineSelection', CONVERT_VSCODE_TO_MONACO];
202
+ mappings['outdent'] = ['outdent', CONVERT_VSCODE_TO_MONACO];
203
+ mappings['scrollLineDown'] = ['scrollLineDown', CONVERT_VSCODE_TO_MONACO];
204
+ mappings['scrollLineUp'] = ['scrollLineUp', CONVERT_VSCODE_TO_MONACO];
205
+ mappings['scrollPageDown'] = ['scrollPageDown', CONVERT_VSCODE_TO_MONACO];
206
+ mappings['scrollPageUp'] = ['scrollPageUp', CONVERT_VSCODE_TO_MONACO];
207
+ mappings['tab'] = ['tab', CONVERT_VSCODE_TO_MONACO];
208
+ mappings['removeSecondaryCursors'] = ['removeSecondaryCursors', CONVERT_VSCODE_TO_MONACO];
209
+ mappings['cursorWordRight'] = ['cursorWordEndRight', CONVERT_VSCODE_TO_MONACO];
210
+ mappings['cursorWordEndRight'] = ['cursorWordEndRight', CONVERT_VSCODE_TO_MONACO];
211
+ mappings['cursorWordEndRightSelect'] = ['cursorWordEndRightSelect', CONVERT_VSCODE_TO_MONACO];
212
+ mappings['cursorWordLeft'] = ['cursorWordStartLeft', CONVERT_VSCODE_TO_MONACO];
213
+ mappings['cursorWordStartLeft'] = ['cursorWordStartLeft', CONVERT_VSCODE_TO_MONACO];
214
+ mappings['cursorWordStartLeftSelect'] = ['cursorWordStartLeftSelect', CONVERT_VSCODE_TO_MONACO];
215
+ mappings['deleteWordLeft'] = ['deleteWordLeft', CONVERT_VSCODE_TO_MONACO];
216
+ mappings['deleteWordRight'] = ['deleteWordRight', CONVERT_VSCODE_TO_MONACO];
217
+ mappings['editor.cancelOperation'] = ['editor.cancelOperation', CONVERT_VSCODE_TO_MONACO];
218
+ mappings['editor.gotoNextSymbolFromResult'] = ['editor.gotoNextSymbolFromResult', CONVERT_VSCODE_TO_MONACO];
219
+ mappings['editor.gotoNextSymbolFromResult.cancel'] = ['editor.gotoNextSymbolFromResult.cancel', CONVERT_VSCODE_TO_MONACO];
220
+ mappings['openReferenceToSide'] = ['openReferenceToSide', CONVERT_VSCODE_TO_MONACO];
221
+ mappings['toggleExplainMode'] = ['toggleExplainMode', CONVERT_VSCODE_TO_MONACO];
222
+ mappings['closeFindWidget'] = ['closeFindWidget', CONVERT_VSCODE_TO_MONACO];
223
+ mappings['editor.action.replaceAll'] = ['editor.action.replaceAll', CONVERT_VSCODE_TO_MONACO];
224
+ mappings['editor.action.replaceOne'] = ['editor.action.replaceOne', CONVERT_VSCODE_TO_MONACO];
225
+ mappings['editor.action.selectAllMatches'] = ['editor.action.selectAllMatches', CONVERT_VSCODE_TO_MONACO];
226
+ mappings['toggleFindCaseSensitive'] = ['toggleFindCaseSensitive', CONVERT_VSCODE_TO_MONACO];
227
+ mappings['toggleFindInSelection'] = ['toggleFindInSelection', CONVERT_VSCODE_TO_MONACO];
228
+ mappings['toggleFindRegex'] = ['toggleFindRegex', CONVERT_VSCODE_TO_MONACO];
229
+ mappings['toggleFindWholeWord'] = ['toggleFindWholeWord', CONVERT_VSCODE_TO_MONACO];
230
+ mappings['jumpToNextSnippetPlaceholder'] = ['jumpToNextSnippetPlaceholder', CONVERT_VSCODE_TO_MONACO];
231
+ mappings['jumpToPrevSnippetPlaceholder'] = ['jumpToPrevSnippetPlaceholder', CONVERT_VSCODE_TO_MONACO];
232
+ mappings['leaveEditorMessage'] = ['leaveEditorMessage', CONVERT_VSCODE_TO_MONACO];
233
+ mappings['leaveSnippet'] = ['leaveSnippet', CONVERT_VSCODE_TO_MONACO];
234
+ mappings['closeMarkersNavigation'] = ['closeMarkersNavigation', CONVERT_VSCODE_TO_MONACO];
235
+ mappings['goToNextReferenceFromEmbeddedEditor'] = ['goToNextReferenceFromEmbeddedEditor', CONVERT_VSCODE_TO_MONACO];
236
+ mappings['goToPreviousReferenceFromEmbeddedEditor'] = ['goToPreviousReferenceFromEmbeddedEditor', CONVERT_VSCODE_TO_MONACO];
237
+ mappings['closeParameterHints'] = ['closeParameterHints', CONVERT_VSCODE_TO_MONACO];
238
+ mappings['showNextParameterHint'] = ['showNextParameterHint', CONVERT_VSCODE_TO_MONACO];
239
+ mappings['showPrevParameterHint'] = ['showPrevParameterHint', CONVERT_VSCODE_TO_MONACO];
240
+ mappings['acceptSelectedSuggestion'] = ['acceptSelectedSuggestion', CONVERT_VSCODE_TO_MONACO];
241
+ mappings['acceptSelectedSuggestionOnEnter'] = ['acceptSelectedSuggestionOnEnter', CONVERT_VSCODE_TO_MONACO];
242
+ mappings['hideSuggestWidget'] = ['hideSuggestWidget', CONVERT_VSCODE_TO_MONACO];
243
+ mappings['insertBestCompletion'] = ['insertBestCompletion', CONVERT_VSCODE_TO_MONACO];
244
+ mappings['insertNextSuggestion'] = ['insertNextSuggestion', CONVERT_VSCODE_TO_MONACO];
245
+ mappings['insertPrevSuggestion'] = ['insertPrevSuggestion', CONVERT_VSCODE_TO_MONACO];
246
+ mappings['selectNextPageSuggestion'] = ['selectNextPageSuggestion', CONVERT_VSCODE_TO_MONACO];
247
+ mappings['selectNextSuggestion'] = ['selectNextSuggestion', CONVERT_VSCODE_TO_MONACO];
248
+ mappings['selectPrevPageSuggestion'] = ['selectPrevPageSuggestion', CONVERT_VSCODE_TO_MONACO];
249
+ mappings['selectPrevSuggestion'] = ['selectPrevSuggestion', CONVERT_VSCODE_TO_MONACO];
250
+ mappings['toggleSuggestionDetails'] = ['toggleSuggestionDetails', CONVERT_VSCODE_TO_MONACO];
251
+ mappings['toggleSuggestionFocus'] = ['toggleSuggestionFocus', CONVERT_VSCODE_TO_MONACO];
252
+ mappings['acceptRenameInput'] = ['acceptRenameInput', CONVERT_VSCODE_TO_MONACO];
253
+ mappings['cancelRenameInput'] = ['cancelRenameInput', CONVERT_VSCODE_TO_MONACO];
254
+ mappings['closeAccessibilityHelp'] = ['closeAccessibilityHelp', CONVERT_VSCODE_TO_MONACO];
255
+ mappings['history.showNext'] = ['history.showNext', CONVERT_VSCODE_TO_MONACO];
256
+ mappings['history.showPrevious'] = ['history.showPrevious', CONVERT_VSCODE_TO_MONACO];
257
+ mappings['closeReferenceSearch'] = ['closeReferenceSearch', CONVERT_VSCODE_TO_MONACO];
258
+ mappings['goToNextReference'] = ['goToNextReference', CONVERT_VSCODE_TO_MONACO];
259
+ mappings['goToPreviousReference'] = ['goToPreviousReference', CONVERT_VSCODE_TO_MONACO];
260
+
261
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
262
+ const CONVERT_MONACO_TO_VSCODE = (args: any | undefined) => {
263
+ if (!args) {
264
+ return args;
265
+ }
266
+ if (!Array.isArray(args)) {
267
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
268
+ return monacoToVscodeArgsConverter(args);
269
+ }
270
+
271
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
272
+ const argsArray: any[] = args;
273
+ const argStack: ConversionFunction[] = [];
274
+ argsArray.forEach(_ => {
275
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
276
+ argStack.push((arg: any) => monacoToVscodeArgsConverter(arg));
277
+ });
278
+ if (argsArray) {
279
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
280
+ return createConversionFunction(...argStack)(argsArray);
281
+ }
282
+ };
283
+
284
+ // vscode-'executeXXX'-like commands
285
+ mappings['vscode.executeReferenceProvider'] = ['vscode.executeReferenceProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
286
+ mappings['vscode.executeImplementationProvider'] = ['vscode.executeImplementationProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
287
+ mappings['vscode.executeDefinitionProvider'] = ['vscode.executeDefinitionProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
288
+ mappings['vscode.executeDeclarationProvider'] = ['vscode.executeDeclarationProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
289
+ mappings['vscode.executeTypeDefinitionProvider'] = ['vscode.executeTypeDefinitionProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
290
+ mappings['vscode.executeHoverProvider'] = ['vscode.executeHoverProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
291
+ mappings['vscode.executeDocumentHighlights'] = ['vscode.executeDocumentHighlights', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
292
+ mappings['vscode.executeFormatDocumentProvider'] = ['vscode.executeFormatDocumentProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
293
+ mappings['vscode.executeFormatRangeProvider'] = ['vscode.executeFormatRangeProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
294
+ mappings['vscode.executeFormatOnTypeProvider'] = ['vscode.executeFormatOnTypeProvider', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
295
+ mappings['vscode.prepareCallHierarchy'] = ['vscode.prepareCallHierarchy', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
296
+ mappings['vscode.provideIncomingCalls'] = ['vscode.provideIncomingCalls', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
297
+ mappings['vscode.provideOutgoingCalls'] = ['vscode.provideOutgoingCalls', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
298
+ mappings['vscode.prepareTypeHierarchy'] = ['vscode.prepareTypeHierarchy', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
299
+ mappings['vscode.provideSupertypes'] = ['vscode.provideSupertypes', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
300
+ mappings['vscode.provideSubtypes'] = ['vscode.provideSubtypes', CONVERT_VSCODE_TO_MONACO, CONVERT_MONACO_TO_VSCODE];
301
+
302
+ mappings['vscode.open'] = ['vscode.open', CONVERT_VSCODE_TO_MONACO];
303
+ mappings['vscode.diff'] = ['vscode.diff', CONVERT_VSCODE_TO_MONACO];
304
+
305
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
306
+ export function map<T>(id: string, args: any[] | undefined, toDo: (mappedId: string, mappedArgs: any[] | undefined, mappedResult: ConversionFunction | undefined) => T): T {
307
+ if (mappings[id]) {
308
+ return toDo(mappings[id][0], mappings[id][1](args), mappings[id][2] ? (result => mappings[id][2]!(result)) : undefined);
309
+ } else {
310
+ return toDo(id, args, undefined);
311
+ }
312
+ }
313
+
314
+ export function mapped(id: string): boolean {
315
+ return !!mappings[id];
316
+ }
317
+
318
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
319
+ export type ConversionFunction = ((parameter: any) => any) | undefined;
320
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
321
+ function createConversionFunction(...conversions: ConversionFunction[]): (args: any[] | undefined) => any[] | undefined {
322
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
323
+ return function (args: any[] | undefined): any[] | undefined {
324
+ if (!args) {
325
+ return args;
326
+ }
327
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
328
+ return args.map(function (arg: any, index: number): any {
329
+ if (index < conversions.length) {
330
+ const conversion = conversions[index];
331
+ if (conversion) {
332
+ return conversion(arg);
333
+ }
334
+ }
335
+ return arg;
336
+ });
337
+ };
338
+ }
339
+
340
+ function fromPositionToP(p: theia.Position): P {
341
+ return P.create(p.line, p.character);
342
+ }
343
+
344
+ function fromRangeToR(r: theia.Range): R {
345
+ return R.create(fromPositionToP(r.start), fromPositionToP(r.end));
346
+ }
347
+
348
+ function fromLocationToL(l: theia.Location): L {
349
+ return L.create(l.uri.toString(), fromRangeToR(l.range));
350
+ }
351
+
352
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/tslint/config
353
+ function vscodeToMonacoArgsConverter(args: any[]) {
354
+ // tslint:disable-next-line:typedef
355
+ return cloneAndChange(args, function (value) {
356
+ if (CallHierarchyItem.isCallHierarchyItem(value)) {
357
+ return fromCallHierarchyItem(value);
358
+ }
359
+ if (TypeHierarchyItem.isTypeHierarchyItem(value)) {
360
+ return fromTypeHierarchyItem(value);
361
+ }
362
+ if (TextDocumentShowOptions.isTextDocumentShowOptions(value)) {
363
+ return fromTextDocumentShowOptions(value);
364
+ }
365
+ if (Position.isPosition(value)) {
366
+ return fromPosition(value);
367
+ }
368
+ if (Range.isRange(value)) {
369
+ return fromRange(value);
370
+ }
371
+ if (Location.isLocation(value)) {
372
+ return fromLocation(value);
373
+ }
374
+ if (!Array.isArray(value)) {
375
+ return value;
376
+ }
377
+ });
378
+ }
379
+
380
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/tslint/config
381
+ function monacoToVscodeArgsConverter(args: any[]) {
382
+ // tslint:disable-next-line:typedef
383
+ return cloneAndChange(args, function (value) {
384
+ if (isModelCallHierarchyItem(value)) {
385
+ return toCallHierarchyItem(value);
386
+ }
387
+ if (isModelTypeHierarchyItem(value)) {
388
+ return toTypeHierarchyItem(value);
389
+ }
390
+ if (isModelCallHierarchyIncomingCall(value)) {
391
+ return toCallHierarchyIncomingCall(value);
392
+ }
393
+ if (isModelCallHierarchyOutgoingCall(value)) {
394
+ return toCallHierarchyOutgoingCall(value);
395
+ }
396
+ if (isModelLocation(value)) {
397
+ return toLocation(value);
398
+ }
399
+ if (!Array.isArray(value)) {
400
+ return value;
401
+ }
402
+
403
+ });
404
+ }
405
+ }
406
+
407
+ function toArrayConversion<T, U>(f: (a: T) => U): (a: T[]) => U[] {
408
+ // tslint:disable-next-line:typedef
409
+ return function (a: T[]) {
410
+ return a.map(f);
411
+ };
412
+ }